/* Gelişim Vakti teması: Sindirim Platformu tasarım sistemi (krem zemin, lacivert + su yeşili, Fraunces + Poppins, 4px köşe).
   app.css'ten sonra yüklenir. Kaldırmak için layouts/main.php ve layouts/dashboard.php içindeki bağlantıyı silmek yeter;
   yeni ana sayfa ve kart bölümleri sp- önekli sınıflardır. */
:root {
  --navy-950: #101a28; --navy-900: #19283b; --navy-800: #1e2c3f; --navy-700: #273749; --navy-600: #35485c; --navy-500: #4a6076; --navy-400: #6e87a0; --navy-300: #9db0c2; --navy-200: #c3cfdb; --navy-100: #e3e9ef;
  --aqua-900: #294b4e; --aqua-800: #305c5f; --aqua-700: #387275; --aqua-600: #468f92; --aqua-400: #89c6c7; --aqua-300: #a4d3d4; --aqua-200: #c2e1e1; --aqua-100: #dfefef;
  --cream-50: #faf9f8; --cream-100: #f4f3f1; --cream-200: #e6e3de; --cream-300: #d6d1c9;
  --r: 4px;
  --font-sans: "Poppins", ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif;
  --font-display: "Fraunces", Georgia, "Times New Roman", serif;
  --shadow: 0 1px 2px rgba(16, 26, 40, .05), 0 8px 24px -12px rgba(16, 26, 40, .14);
  /* LMS değişkenleri */
  --color-bg: var(--cream-100); --color-bg-alt: var(--cream-50); --color-surface: #fff;
  --color-border: var(--cream-200); --color-border-strong: var(--cream-300);
  --color-text: var(--navy-700); --color-muted: var(--navy-500); --color-ink: var(--navy-900);
  --color-primary: var(--navy-900); --color-primary-dark: var(--navy-950);
  --color-accent: var(--aqua-700); --color-accent-dark: var(--aqua-900);
  --color-success: #2f7d5b; --color-success-bg: #e4f2ec; --color-danger: #a33a2c; --color-danger-bg: #f8e6e3; --color-warning: #8a5a12; --color-warning-bg: #f8eedb;
  --radius: 4px; --radius-lg: 4px;
}
html { scroll-behavior: smooth; scroll-padding-top: 96px; }
body { font-family: var(--font-sans); font-size: 15px; line-height: 1.7; color: var(--navy-700); background: var(--cream-100); }
.site-bg-shapes, .hero-shapes, .auth-visual-shape, .cdx-orb { display: none !important; }
a { color: var(--aqua-700); text-decoration: none; }
a:hover { color: var(--aqua-900); }
h1, h2, h3, h4 { font-family: var(--font-display); font-weight: 400; color: var(--navy-900); line-height: 1.16; letter-spacing: -.01em; }
.container { max-width: 1240px; padding: 0 20px; }
:focus-visible { outline: 2px solid var(--aqua-600); outline-offset: 2px; }

/* Üst şerit */
.topbar { background: var(--navy-950); color: rgba(244, 243, 241, .82); padding: 8px 0; }
.topbar-inner { justify-content: center; text-align: center; font-size: 10.5px; font-weight: 500; letter-spacing: .18em; text-transform: uppercase; line-height: 1.5; }
.topbar-links { display: none !important; }

/* Başlık */
.navbar { background: rgba(244, 243, 241, .93); border-bottom: 1px solid rgba(25, 40, 59, .08); box-shadow: none; padding: 0; }
.navbar.navbar-scrolled { padding: 0; box-shadow: none; background: rgba(244, 243, 241, .93); }
.navbar-inner { min-height: 76px; gap: 28px; }
.brand { font-family: var(--font-display); font-weight: 400; color: var(--navy-900); text-decoration: none; }
.brand-logo { mix-blend-mode: multiply; max-height: 52px; width: auto; }
.nav-links a, .nav-link-caret, .nav-link-ghost, .nav-panel-link { font: 600 11px/1 var(--font-sans) !important; letter-spacing: .16em; text-transform: uppercase; color: var(--navy-600) !important; text-decoration: none !important; }
.nav-links > a, .nav-link-caret, .nav-panel-link { position: relative; padding: 8px 0; }
.nav-links > a::after, .nav-link-caret::after, .nav-panel-link::after { content: ""; position: absolute; left: 0; bottom: 0; width: 100%; height: 1px; background: var(--aqua-600); transform: scaleX(0); transform-origin: left; transition: transform .25s; }
.nav-links > a:hover, .nav-link-caret:hover, .nav-panel-link:hover { color: var(--navy-950) !important; }
.nav-links > a:hover::after, .nav-link-caret:hover::after, .nav-panel-link:hover::after { transform: scaleX(1); }
.nav-link-ghost { display: inline-flex; align-items: center; min-height: 40px; padding: 8px 16px !important; border: 1px solid var(--navy-200); border-radius: var(--r); font: 500 13px/1.2 var(--font-sans) !important; letter-spacing: 0; text-transform: none; color: var(--navy-900) !important; }
.nav-link-ghost:hover { border-color: var(--navy-900); }
.nav-actions .btn { min-height: 40px; }
.mega-menu { background: #fff; border: 1px solid var(--cream-200); border-radius: var(--r); box-shadow: var(--shadow); }
.mega-menu-item { border-radius: var(--r); text-decoration: none !important; letter-spacing: 0; text-transform: none; }
.mega-menu-item:hover { background: var(--cream-100); }
.mega-menu-item-name { font: 500 14px var(--font-sans); color: var(--navy-700); letter-spacing: 0; text-transform: none; }
.mega-menu-item-count { font-size: 12px; color: var(--navy-500); letter-spacing: 0; text-transform: none; }
.mega-menu-viewall { color: var(--aqua-700) !important; font: 500 13px var(--font-sans) !important; text-transform: none; letter-spacing: 0; }
.nav-toggle { background: none; border: 1px solid var(--cream-300); border-radius: var(--r); }
.nav-toggle-bar { background: var(--navy-900); }

/* Düğmeler */
.btn { display: inline-flex; align-items: center; justify-content: center; gap: 8px; min-height: 44px; padding: 10px 22px; border: 1px solid var(--navy-900); border-radius: var(--r); background: var(--navy-900); color: var(--cream-50) !important; font: 500 14px/1.2 var(--font-sans); letter-spacing: 0; text-transform: none; text-decoration: none !important; box-shadow: none !important; transform: none !important; transition: background .2s, color .2s, border-color .2s; }
.btn:hover { background: var(--navy-700); border-color: var(--navy-700); color: #fff !important; }
.btn-outline { background: transparent; border-color: var(--navy-200); color: var(--navy-900) !important; }
.btn-outline:hover { background: transparent; border-color: var(--navy-900); color: var(--navy-900) !important; }
.btn-accent { background: var(--aqua-700); border-color: var(--aqua-700); }
.btn-accent:hover { background: var(--aqua-800); border-color: var(--aqua-800); }
.btn-danger { background: transparent; border-color: #e0b7b0; color: var(--color-danger) !important; }
.btn-danger:hover { background: var(--color-danger-bg); border-color: #e0b7b0; color: var(--color-danger) !important; }
.btn-white { background: var(--cream-50); border-color: var(--cream-50); color: var(--navy-900) !important; }
.btn-white:hover { background: #fff; border-color: #fff; color: var(--navy-900) !important; }
.btn-sm { min-height: 34px; padding: 6px 12px; font-size: 13px; }
.btn-block { display: flex; width: 100%; }
.sp-btn-aqua { background: var(--aqua-700); border-color: var(--aqua-700); }
.sp-btn-aqua:hover { background: var(--aqua-800); border-color: var(--aqua-800); }
.sp-arrow { display: inline-flex; align-items: center; gap: 8px; font-weight: 500; font-size: 14px; color: var(--aqua-700); text-decoration: none !important; }
.sp-arrow svg { width: 16px; height: 16px; flex: none; transition: transform .2s; }
.sp-arrow:hover svg, .btn:hover svg { transform: translateX(4px); }
.btn svg { width: 16px; height: 16px; flex: none; transition: transform .2s; }

/* Temel bileşenler */
.eyebrow { display: flex; align-items: center; gap: 14px; background: none; border: 0; padding: 0; font: 600 11px/1.4 var(--font-sans); letter-spacing: .18em; text-transform: uppercase; color: var(--aqua-700); margin-bottom: 18px; }
.eyebrow::before { content: ""; flex: none; width: 40px; height: 1px; background: var(--aqua-600); opacity: .6; }
.accent-underline { color: var(--aqua-700); font-style: italic; background: none; text-decoration: none; border: 0; padding: 0; }
.accent-underline::after, .accent-underline::before { display: none; }
.card { background: #fff; border: 1px solid var(--cream-200); border-radius: var(--r); box-shadow: none; }
.card h2, .card h3 { font-family: var(--font-display); font-weight: 400; }
.badge { border-radius: var(--r); font: 500 12px/1.7 var(--font-sans); padding: 2px 9px; }
.badge-muted { background: var(--cream-100); color: var(--navy-500); }
.badge-accent { background: var(--aqua-100); color: var(--aqua-800); }
.section-title { font-family: var(--font-display); font-weight: 400; font-size: clamp(1.75rem, 3.2vw, 2.6rem); letter-spacing: -.01em; }
.form-group label { font-size: 13px; font-weight: 500; color: var(--navy-700); }
input:not([type=checkbox]):not([type=radio]):not([type=file]):not([type=submit]):not([type=hidden]):not([type=color]), select, textarea { min-height: 44px; padding: 10px 12px; border: 1px solid var(--cream-300); border-radius: var(--r); background: #fff; color: var(--navy-900); font: 400 15px/1.5 var(--font-sans); box-shadow: none; }
input:focus, select:focus, textarea:focus { outline: 0; border-color: var(--aqua-600) !important; box-shadow: 0 0 0 3px rgba(70, 143, 146, .16) !important; }
input[type=checkbox], input[type=radio] { accent-color: var(--aqua-700); }
table th { font: 600 11px/1.4 var(--font-sans); letter-spacing: .1em; text-transform: uppercase; color: var(--navy-500); background: transparent; border-bottom: 1px solid var(--cream-200); }
table td { border-bottom: 1px solid var(--cream-100); }
table tbody tr:hover { background: var(--cream-50); }
.category-pill { padding: 7px 14px; border: 1px solid var(--cream-300); border-radius: var(--r); background: #fff; font: 400 13px var(--font-sans); color: var(--navy-700); text-decoration: none; }
.category-pill:hover { border-color: var(--navy-400); color: var(--navy-900); }
.category-pill.active { background: var(--navy-900); border-color: var(--navy-900); color: #fff; }
.course-search-form { border: 1px solid var(--cream-300); border-radius: var(--r); background: #fff; box-shadow: none; }
.course-search-input { border: 0 !important; box-shadow: none !important; background: transparent !important; }
.course-search-submit { border-radius: var(--r); background: var(--navy-900); font: 500 13px var(--font-sans); }
.modal-box { border-radius: var(--r); box-shadow: 0 16px 48px -12px rgba(16, 26, 40, .35); }
.modal-box h3 { font-family: var(--font-display); font-weight: 400; font-size: 1.4rem; }
.floating-card { background: #fff; border: 1px solid var(--cream-200); border-radius: var(--r); box-shadow: var(--shadow); transform: none; }
.avatar-preview { border-radius: var(--r); }
.avatar-preview-empty { background: var(--aqua-100); color: var(--aqua-800); font-family: var(--font-display); font-style: italic; }

/* İç sayfa başlıkları (.hero yapısını kullanan tüm sayfalar) */
.hero { position: relative; overflow: hidden; padding: 52px 0 124px !important; border-bottom: 1px solid rgba(25, 40, 59, .07); background: linear-gradient(180deg, var(--cream-50), var(--cream-100)); }
.hero h1 { font-size: clamp(2rem, 4.2vw, 3.2rem); font-weight: 400; line-height: 1.12; margin: 0 0 .25em; }
.hero p { max-width: 640px; color: var(--navy-600); margin: 0; font-size: 15px; }
.hero > .container { position: relative; z-index: 1; }
.hero::after, .sp-hero::after { content: ""; position: absolute; left: 0; right: 0; bottom: 0; height: 96px; background: url(../img/theme/ai-band-canli.svg) center bottom / auto 100% repeat-x; pointer-events: none; }
.live-hero { background: linear-gradient(180deg, var(--cream-50), var(--cream-100)) !important; color: var(--navy-700) !important; }
.live-hero h1 { color: var(--navy-900) !important; text-shadow: none !important; }
.live-hero p { color: var(--navy-600) !important; text-shadow: none !important; }
.live-hero .eyebrow { color: var(--aqua-700) !important; }
.live-hero .accent-underline { color: var(--aqua-700) !important; -webkit-text-fill-color: currentColor; background: none !important; }
.live-hero-stat-dot { background: var(--aqua-700) !important; }
.live-hero-stat { border-radius: var(--r); background: #fff; border: 1px solid var(--cream-200); color: var(--navy-700); }
.page-header { align-items: flex-end; margin-bottom: 18px; }
.course-results-count { font-size: 13px; color: var(--navy-500); }

/* Altbilgi */
.site-footer { position: relative; overflow: hidden; background: var(--navy-950); color: rgba(244, 243, 241, .72); font-size: 14px; }
.site-footer a { color: rgba(244, 243, 241, .82); text-decoration: none; }
.site-footer a:hover { color: #fff; }
.site-footer h4 { font: 600 11px/1 var(--font-sans); letter-spacing: .18em; text-transform: uppercase; color: var(--aqua-300); margin-bottom: 16px; }
.sp-footer-art { position: absolute; left: 50%; bottom: 0; width: max(2600px, 100%); transform: translateX(-50%); pointer-events: none; }
.sp-footer-art img { display: block; width: 100%; max-width: none; height: auto; }
.footer-grid, .footer-bottom { position: relative; z-index: 1; }
.footer-grid { grid-template-columns: 1.5fr 1fr 1fr 1.2fr; gap: 40px; padding-top: 64px; padding-bottom: 40px; }
.footer-brand .brand { font-family: var(--font-display); font-size: 23px; letter-spacing: -.01em; color: var(--cream-50) !important; }
.footer-brand .brand-dot { display: none; }
.footer-bottom { border-top: 1px solid rgba(244, 243, 241, .1); font-size: 12.5px; color: rgba(244, 243, 241, .72); padding-top: 18px; padding-bottom: 24px; }

/* Eğitim kartı */
.course-grid { grid-template-columns: repeat(auto-fill, minmax(290px, 1fr)); gap: 22px; }
.course-card-link { display: flex; height: 100%; text-decoration: none !important; color: inherit; }
.sp-card { display: flex; flex-direction: column; width: 100%; background: #fff; border: 1px solid var(--cream-200); border-radius: var(--r); overflow: hidden; transition: transform .25s, box-shadow .25s, border-color .25s; color: inherit; }
.course-card-link:hover .sp-card { transform: translateY(-3px); box-shadow: var(--shadow); border-color: var(--aqua-200); }
.sp-card__img { position: relative; aspect-ratio: 16 / 9; background: var(--navy-900); overflow: hidden; }
.sp-card__img img { display: block; width: 100%; height: 100%; object-fit: cover; }
.sp-card__ph { position: absolute; inset: 0; display: flex; align-items: center; padding: 24px; font-family: var(--font-display); font-size: 1.3rem; line-height: 1.2; color: var(--aqua-200); }
.sp-card__tags { position: absolute; left: 12px; top: 12px; display: flex; flex-wrap: wrap; gap: 6px; }
.sp-tag { display: inline-block; padding: 2px 9px; border-radius: var(--r); background: var(--cream-50); color: var(--navy-700); font: 500 12px/1.7 var(--font-sans); white-space: nowrap; }
.sp-tag--aqua { background: var(--aqua-100); color: var(--aqua-800); }
.sp-tag--live { background: linear-gradient(135deg, #e5383b, #a4161a); color: #fff; }
.sp-card__body { display: flex; flex-direction: column; flex: 1; padding: 20px; }
.sp-card__cat { font-size: 11px; letter-spacing: .14em; text-transform: uppercase; color: var(--aqua-700); font-weight: 600; margin-bottom: 8px; }
.sp-card__title { font-family: var(--font-display); font-size: 1.22rem; line-height: 1.16; color: var(--navy-900); margin: 0 0 8px; letter-spacing: -.01em; }
.sp-card__sum { font-size: 14px; color: var(--navy-500); margin: 0 0 14px; display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; }
.sp-card__meta { display: flex; flex-wrap: wrap; gap: 4px 14px; font-size: 12.5px; color: var(--navy-500); margin-bottom: 14px; }
.sp-card__meta span { display: inline-flex; gap: 5px; align-items: center; }
.sp-card__meta svg { width: 14px; height: 14px; flex: none; }
.sp-card__foot { margin-top: auto; padding-top: 14px; border-top: 1px solid var(--cream-100); display: flex; align-items: center; justify-content: space-between; gap: 12px; }
.sp-price { font-family: var(--font-display); font-size: 1.28rem; color: var(--navy-900); }
.sp-price--free { color: var(--aqua-700); }
.sp-card__go { display: inline-flex; align-items: center; gap: 8px; font-size: 13.5px; font-weight: 500; color: var(--navy-900); }
.sp-card__go svg { width: 16px; height: 16px; transition: transform .2s; }
.course-card-link:hover .sp-card__go svg { transform: translateX(4px); }
.manual-slider-item { width: 310px; }
.manual-slider-item .course-card-link { height: 100%; }
.slider-arrow { border: 1px solid var(--cream-300); border-radius: var(--r); background: #fff; color: var(--navy-900); box-shadow: none; }

/* Ana sayfa */
.sp-wrap { width: min(1200px, 100% - 40px); margin-inline: auto; }
.sp-eyebrow-plain::before { display: none; }
.sp-hero { position: relative; overflow: hidden; padding: 56px 0 72px; background: linear-gradient(170deg, var(--cream-50) 0%, var(--cream-100) 60%, #edf2f1 100%); }
.sp-hero::after { height: 76px; }
.sp-hero__grid { position: relative; z-index: 1; display: grid; grid-template-columns: minmax(0, 1.08fr) minmax(0, .92fr); gap: 56px; align-items: center; }
.sp-hero h1 { font-size: clamp(2.6rem, 5.8vw, 4.9rem); line-height: 1.05; margin: 0 0 22px; }
.sp-hero h1 em, .sp-section h2 em, .sp-lead h2 em, .sp-journey h2 em { color: var(--aqua-700); font-style: italic; }
.sp-hero__text { font-size: 1.05rem; max-width: 540px; color: var(--navy-600); margin: 0 0 30px; }
.sp-hero__cta { display: flex; flex-wrap: wrap; gap: 12px; margin-bottom: 36px; }
.sp-hero__facts { display: flex; flex-wrap: wrap; gap: 12px 30px; font-size: 13px; color: var(--navy-600); }
.sp-hero__facts span { display: inline-flex; align-items: center; gap: 8px; }
.sp-hero__facts svg { width: 18px; height: 18px; color: var(--aqua-700); flex: none; }
.sp-hero__figure { position: relative; justify-self: end; width: min(440px, 100%); }
.sp-arch { position: relative; aspect-ratio: 4 / 5; border-radius: 999px 999px 4px 4px; overflow: hidden; background: var(--navy-900); }
.sp-arch img { width: 100%; height: 100%; object-fit: cover; object-position: 50% 12%; }
.sp-hero__badge { position: absolute; left: -28px; bottom: 28px; max-width: 290px; padding: 14px 18px; background: #fff; border: 1px solid var(--cream-200); border-radius: var(--r); box-shadow: var(--shadow); text-decoration: none !important; display: block; }
.sp-hero__badge strong { display: block; font-family: var(--font-display); font-weight: 400; font-size: 1.15rem; color: var(--navy-900); line-height: 1.2; }
.sp-hero__badge span { display: block; font-size: 12px; color: var(--navy-500); line-height: 1.4; margin-top: 4px; }
.sp-net { position: absolute; inset: 0; width: 100%; height: 100%; pointer-events: none; }
.sp-net-edges path { stroke: var(--aqua-600); stroke-width: 1.2; opacity: .2; fill: none; }
.sp-net-pulses path { stroke: var(--aqua-700); stroke-width: 2.6; stroke-linecap: round; fill: none; opacity: .75; stroke-dasharray: .09 .91; animation: sp-signal 4.6s linear infinite; }
.sp-net-nodes circle { fill: var(--cream-50); stroke: var(--aqua-600); stroke-width: 1.8; animation: sp-node 4s ease-in-out infinite; }
@keyframes sp-signal { from { stroke-dashoffset: 1; } to { stroke-dashoffset: -.09; } }
@keyframes sp-node { 50% { fill: var(--aqua-300); } }
.sp-hero__code { position: absolute; right: -44px; top: 22px; z-index: 2; display: grid; gap: 3px; width: 232px; padding: 10px 14px 13px; background: var(--navy-950); border: 1px solid rgba(164, 211, 212, .3); border-radius: var(--r); box-shadow: var(--shadow); }
.sp-code-bar { display: flex; gap: 5px; margin-bottom: 6px; }
.sp-code-bar i { width: 6px; height: 6px; border-radius: 50%; background: var(--aqua-400); opacity: .5; }
.sp-hero__code code { display: block; width: 0; overflow: hidden; white-space: nowrap; font: 12px/1.5 ui-monospace, SFMono-Regular, Menlo, Consolas, monospace; color: var(--aqua-200); background: none; border: 0; padding: 0; animation: sp-type 11s steps(var(--n)) var(--d) infinite; }
.sp-code-last { color: var(--cream-50) !important; }
@keyframes sp-type { 0% { width: 0; } 13%, 90% { width: calc(var(--n) * 1ch + 2ch); } 100% { width: calc(var(--n) * 1ch + 2ch); } }

/* Açılı kayan şerit */
.sp-ticker { --tilt: 2.2vw; position: relative; z-index: 2; overflow: hidden; padding: calc(var(--tilt) + 6px) 0; margin: calc((var(--tilt) + 6px) * -1) 0; pointer-events: none; }
.sp-ticker__band { width: 110%; margin-left: -5%; background: var(--navy-900); border-block: 1px solid var(--aqua-700); transform: rotate(-2deg); overflow: hidden; pointer-events: auto; box-shadow: 0 10px 28px -14px rgba(16, 26, 40, .5); }
.sp-ticker__track { display: flex; width: max-content; animation: sp-ticker 70s linear infinite; }
.sp-ticker__band:hover .sp-ticker__track { animation-play-state: paused; }
.sp-ticker__group { display: flex; flex: none; margin: 0; padding: 0; list-style: none; }
.sp-ticker__group li { display: inline-flex; align-items: center; gap: 12px; padding: 17px 30px; font-family: var(--font-display); font-style: italic; font-size: 1.12rem; line-height: 1.2; color: var(--cream-50); white-space: nowrap; }
.sp-ticker__group svg { width: 20px; height: 20px; flex: none; color: var(--aqua-300); }
@keyframes sp-ticker { to { transform: translateX(-50%); } }

/* Güven bölümü */
.sp-lead { padding: 92px 0 84px; background: var(--cream-50); }
.sp-lead__grid { display: grid; grid-template-columns: minmax(0, 1.1fr) minmax(0, .9fr); gap: 72px; align-items: center; }
.sp-lead h2 { font-size: clamp(2.1rem, 4vw, 3.4rem); margin: 0 0 22px; }
.sp-lead__bio { font-size: 1.18rem; line-height: 1.65; color: var(--navy-600); max-width: 600px; margin: 0 0 28px; }
.sp-lead__cta { display: flex; flex-wrap: wrap; gap: 10px; }
.sp-bento-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
.sp-bento { padding: 22px; border-radius: var(--r); background: #fff; border: 1px solid var(--cream-200); }
.sp-bento--wide { grid-column: 1 / -1; }
.sp-bento strong { display: block; font-family: var(--font-display); font-weight: 400; font-size: 3rem; line-height: 1; }
.sp-bento > span { font-size: 13px; }
.sp-bento--dark { background: var(--navy-900); border-color: var(--navy-900); color: var(--cream-100); }
.sp-bento--dark strong { color: var(--cream-50); }
.sp-bento--aqua { background: var(--aqua-100); border-color: var(--aqua-200); color: var(--aqua-900); }
.sp-bento h3 { font: 600 11px/1 var(--font-sans); letter-spacing: .16em; text-transform: uppercase; color: var(--aqua-800); margin: 0 0 14px; }
.sp-tags { display: flex; flex-wrap: wrap; gap: 6px; margin: 0; padding: 0; list-style: none; }
.sp-tags li a, .sp-tags li { font-size: 13px; color: var(--navy-700); }
.sp-tags li { padding: 6px 12px; border: 1px solid var(--cream-300); border-radius: var(--r); }
.sp-points { display: grid; gap: 12px; margin: 0; padding: 0; list-style: none; font-size: 14px; color: var(--navy-700); }
.sp-points li { display: flex; gap: 12px; align-items: flex-start; line-height: 1.5; }
.sp-points svg { width: 18px; height: 18px; flex: none; color: var(--aqua-700); margin-top: 1px; }

/* Koyu etkileşimli bölüm */
.sp-journey { position: relative; overflow: hidden; padding: 92px 0; color: rgba(244, 243, 241, .78); background: radial-gradient(60% 80% at 22% 50%, #27505a 0%, transparent 72%), var(--navy-950); }
.sp-journey__grid { display: grid; grid-template-columns: minmax(0, 1.05fr) minmax(0, .95fr); gap: 64px; align-items: center; }
.sp-journey .eyebrow { color: var(--aqua-300); }
.sp-journey h2 { font-size: clamp(1.75rem, 3.2vw, 2.6rem); color: var(--cream-50); margin: 0 0 14px; }
.sp-journey h2 em { color: var(--aqua-300); }
.sp-journey__lead { max-width: 540px; margin: 0 0 28px; }
.sp-steps { list-style: none; margin: 0; padding: 0; border-top: 1px solid rgba(244, 243, 241, .14); }
.sp-step { position: relative; border-bottom: 1px solid rgba(244, 243, 241, .14); }
.sp-step__head { width: 100%; display: flex; align-items: center; gap: 16px; padding: 17px 0; background: none; border: 0; color: rgba(244, 243, 241, .72); font: inherit; text-align: left; cursor: pointer; transition: color .25s; }
.sp-step__head:hover, .sp-step.is-active .sp-step__head { color: var(--cream-50); }
.sp-step__no { flex: none; font-size: 12px; font-weight: 500; letter-spacing: .1em; color: var(--aqua-300); }
.sp-step__title { flex: 1; font-family: var(--font-display); font-size: 1.28rem; line-height: 1.2; }
.sp-step__mark { flex: none; position: relative; width: 14px; height: 14px; }
.sp-step__mark::before, .sp-step__mark::after { content: ""; position: absolute; left: 0; top: 6px; width: 14px; height: 1.5px; background: currentColor; transition: transform .3s; }
.sp-step__mark::after { transform: rotate(90deg); }
.sp-step.is-active .sp-step__mark::after { transform: rotate(0); }
.sp-step__bar { position: absolute; left: 0; right: 0; bottom: -1px; height: 1px; overflow: hidden; }
.sp-step__bar i { display: block; height: 100%; width: 100%; background: var(--aqua-300); transform: scaleX(0); transform-origin: left; }
.sp-step.is-active .sp-step__bar i { animation: sp-progress 8s linear forwards; }
.sp-journey.is-manual .sp-step__bar { display: none; }
.sp-journey:hover .sp-step__bar i { animation-play-state: paused; }
.sp-step__body { display: grid; grid-template-rows: 0fr; visibility: hidden; opacity: 0; transition: grid-template-rows .45s cubic-bezier(.3, .7, .2, 1), opacity .35s, visibility .45s; }
.sp-step.is-active .sp-step__body { grid-template-rows: 1fr; visibility: visible; opacity: 1; }
.sp-step__body > div { overflow: hidden; min-height: 0; padding-left: 36px; }
.sp-step__body p { margin: 0 0 14px; max-width: 540px; font-size: 14.5px; }
.sp-step__body .sp-arrow { margin-bottom: 20px; color: var(--aqua-300); }
.sp-step__body .sp-arrow:hover { color: #fff; }
@keyframes sp-progress { to { transform: scaleX(1); } }
/* Tanıtım oyunu çerçevesi */
.sp-journey .rmdg2h { margin: 0; border: 1px solid rgba(244, 243, 241, .16); border-radius: var(--r); box-shadow: 0 30px 70px -28px rgba(0, 0, 0, .65); line-height: 0; }
.sp-journey .rmdg2h-screen { height: auto; aspect-ratio: 16 / 11; }
.sp-journey .rmdg2h-cta { position: static; transform: none; display: flex; width: 100%; filter: none; justify-content: center; gap: 10px; padding: 14px 16px; background: var(--aqua-700); color: #fff; font: 500 14px/1.3 var(--font-sans); letter-spacing: 0; text-transform: none; white-space: normal; text-align: center; text-decoration: none; transition: background .2s; }
.sp-journey .rmdg2h-cta:hover { background: var(--aqua-800); transform: none; filter: none; }
.sp-journey .rmdg2h-cta::before, .sp-journey .rmdg2h-cta::after, .sp-journey .rmdg2h-cta-ico::before { display: none; }
.sp-journey .rmdg2h-cta-label { padding: 0; text-shadow: none; }
.sp-journey .rmdg2h-cta-ico { padding: 0; }

@media (min-width: 901px) { .sp-journey .rmdg2h-intro-s1, .sp-journey .rmdg2h-intro-s2 { zoom: .5; } }

/* Bölümler */
.sp-section { padding: 72px 0; }
.sp-section--white { background: var(--cream-50); }
.sp-head { display: flex; flex-wrap: wrap; align-items: flex-end; justify-content: space-between; gap: 16px 40px; margin-bottom: 36px; }
.sp-head h2 { font-size: clamp(1.75rem, 3.2vw, 2.6rem); margin: 0; max-width: 680px; }
.sp-row { margin-bottom: 44px; }
.sp-row:last-child { margin-bottom: 0; }
.sp-row-head { display: flex; flex-wrap: wrap; align-items: flex-end; justify-content: space-between; gap: 8px 24px; margin-bottom: 18px; padding-bottom: 12px; border-bottom: 1px solid var(--cream-200); }
.sp-row-head h3 { font-size: 1.5rem; margin: 0; }
.sp-row-head small { display: block; font-size: 11px; letter-spacing: .14em; text-transform: uppercase; font-weight: 600; color: var(--aqua-700); margin-bottom: 6px; }
.sp-promo { display: grid; grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr); gap: 56px; align-items: center; margin: 12px 0 44px; padding: 36px; background: #fff; border: 1px solid var(--cream-200); border-radius: var(--r); }
.sp-promo h3 { font-size: clamp(1.5rem, 2.6vw, 2.05rem); margin: 0 0 12px; }
.sp-promo p { color: var(--navy-600); margin: 0; }
.sp-promo__video { position: relative; aspect-ratio: 16 / 9; background: var(--navy-900); border-radius: var(--r); overflow: hidden; }
.sp-promo__video iframe { position: absolute; inset: 0; width: 100%; height: 100%; border: 0; }
.sp-howto { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 22px; counter-reset: s; }
.sp-howto > div { padding: 26px; background: #fff; border: 1px solid var(--cream-200); border-radius: var(--r); }
.sp-howto > div::before { counter-increment: s; content: counter(s, decimal-leading-zero); display: block; font-family: var(--font-display); font-style: italic; font-size: 1.9rem; color: var(--aqua-600); margin-bottom: 12px; line-height: 1; }
.sp-howto h3 { font-size: 1.3rem; margin: 0 0 .4em; }
.sp-howto p { margin: 0; font-size: 14px; color: var(--navy-500); }

/* Giriş ve kayıt: koyu zemin üzerinde cam kart */
.auth-page { min-height: calc(100vh - 110px); background: radial-gradient(70% 90% at 12% 40%, #27505a 0%, transparent 70%), radial-gradient(60% 80% at 92% 60%, #223f4d 0%, transparent 70%), var(--navy-950); }
.auth-visual { background: transparent !important; color: rgba(244, 243, 241, .84); box-shadow: none; }
.auth-visual-photo-frame { display: none; }
.auth-visual-text .eyebrow { color: var(--aqua-300); }
.auth-visual-text h2 { color: var(--cream-50); font-size: clamp(1.75rem, 3.2vw, 2.6rem); line-height: 1.16; font-weight: 400; }
.auth-visual-text .accent-underline { color: var(--aqua-300); }
.auth-benefits li { color: rgba(244, 243, 241, .84); }
.auth-form-panel { background: transparent; }
.auth-form-panel .auth-card { padding: 12px; background: rgba(250, 249, 248, .86); -webkit-backdrop-filter: blur(3px); backdrop-filter: blur(3px); border: 1px solid rgba(255, 255, 255, .55); border-radius: var(--r); box-shadow: 0 30px 70px -28px rgba(0, 0, 0, .65); }
.auth-card h1 { font-size: 2.1rem; margin: 0 0 .3em; }
.auth-form-sub { color: var(--navy-600); }
.auth-card input { background: rgba(255, 255, 255, .92) !important; border-color: rgba(39, 55, 73, .4) !important; }
.auth-card .btn-block { padding: 10px 22px; border-radius: var(--r); box-shadow: none; font: 500 14px var(--font-sans); }
.auth-card .btn-block:hover { box-shadow: none; transform: none; }
.auth-card a { color: var(--navy-900); text-decoration: underline; text-underline-offset: 2px; }

/* Eğitim detay sayfası */
.cd-page { --cd-ink: var(--navy-900); --cd-teal: var(--aqua-700); --cd-teal-soft: var(--aqua-100); --cd-orange: var(--aqua-700); --cd-line: var(--cream-200); }
.cd-hero-bg { background: linear-gradient(150deg, var(--navy-950), var(--navy-900) 55%, #20404a) !important; }
.cd-title { font-family: var(--font-display); font-weight: 400; font-size: clamp(2.1rem, 4.4vw, 3.5rem); letter-spacing: -.01em; color: var(--cream-50); }
.cd-lead { font-size: 15px; color: rgba(244, 243, 241, .84); }
.cd-tag, .cd-by, .cd-chips > * { border-radius: var(--r); }
.cd-avatar { background: var(--aqua-100); color: var(--aqua-800); font-family: var(--font-display); font-weight: 400; font-style: italic; }
.cd-buy, .cd-hl, .cd-sec, .cd-instructor, .cd-pill { border-radius: var(--r) !important; box-shadow: none; }
.cd-buy { box-shadow: 0 20px 50px -22px rgba(16, 26, 40, .45); }
.cd-section-head h2, .cd-sec-title, .cd-price-value { font-family: var(--font-display); font-weight: 400; letter-spacing: -.01em; color: var(--navy-900); }
.cd-cta, .cdx-cta { background: var(--navy-900) !important; border-radius: var(--r) !important; box-shadow: none !important; color: var(--cream-50) !important; font: 500 14px/1.2 var(--font-sans); transform: none !important; animation: none; }
.cd-cta:hover, .cdx-cta:hover { background: var(--navy-700) !important; }
.cd-buyband { background: linear-gradient(150deg, var(--navy-950), var(--navy-900) 55%, #20404a) !important; }
.cd-buyband h2 { font-family: var(--font-display); font-weight: 400; color: var(--cream-50); }
.cd-buyband-card { border-radius: var(--r); box-shadow: 0 20px 50px -22px rgba(0, 0, 0, .6); }
.cd-kicker { color: var(--aqua-300); font: 600 11px/1.4 var(--font-sans); letter-spacing: .18em; }
.cd-sticky-bar { background: #fff; }
.cdx-hero { background: linear-gradient(150deg, var(--navy-950), var(--navy-900) 55%, #20404a) !important; }
.cdx-title { font-family: var(--font-display); font-weight: 400; letter-spacing: -.01em; color: var(--cream-50); }
.cdx-lead { color: rgba(244, 243, 241, .84); }
.cdx-tag { border-radius: var(--r); }
.cdx-buy { border-radius: var(--r); box-shadow: 0 20px 50px -22px rgba(0, 0, 0, .6); }
.cdx-price strong { font-family: var(--font-display); font-weight: 400; color: var(--navy-900); letter-spacing: -.01em; }

/* app.css içindeki büyük köşeler: tüm kartlarda en fazla 4px */
.accredit-frame img,
.accredit-frame::before,
.admin-nav-badge,
.admin-stat-icon,
.auth-card .btn-block,
.auth-card input,
.auth-page,
.cd-bar,
.cd-bar i,
.cd-buy,
.cd-cta,
.cd-cta-sm,
.cd-embed,
.cd-empty,
.cd-hl,
.cd-includes svg,
.cd-instructor,
.cd-instructor-photo,
.cd-lesson,
.cd-live,
.cd-live-join,
.cd-rating-summary,
.cd-review,
.cd-review-form,
.cd-review-form textarea,
.cd-sec,
.cd-sec-no,
.cd-toggle-all,
.cdx-buy,
.cdx-cta,
.course-filters,
.course-live-card,
.course-payment-hint,
.hero-highlight-icon,
.hero-highlight-item,
.hero-visual::before,
.live-countdown-banner .live-countdown-unit,
.maintenance-countdown-unit,
.nav-toggle,
.navbar nav,
.promo-hero-video,
.sidebar a,
.sidebar-badge { border-radius: var(--r); }

.auth-page { max-width: none; margin: 0; border-radius: 0; }
.auth-benefits li > span:first-child { width: 8px; height: 8px; min-width: 8px; padding: 0; font-size: 0; background: var(--aqua-300); border-radius: 50%; }
.cd-preview { background: var(--aqua-100); color: var(--aqua-800); }

.feature-item::after { display: none; }
.course-filters { background: #fff; border: 1px solid var(--cream-200); box-shadow: none; }

/* Paneller: koyu üst menü, krem içerik */
.admin-nav-shell { position: sticky; top: 76px; background: rgba(16, 26, 40, .94); -webkit-backdrop-filter: blur(12px); backdrop-filter: blur(12px); border-bottom: 1px solid rgba(244, 243, 241, .12); }
.admin-nav-inner { max-width: 1240px; padding: 0 20px; }
.admin-nav-list { align-items: center; gap: 4px; min-height: 64px; }
.admin-nav-link { padding: 9px 13px; height: auto; margin: 0; border: 0; border-radius: var(--r); font: 400 13.5px var(--font-sans); color: rgba(244, 243, 241, .8); transition: background .2s, color .2s; }
.admin-nav-link:hover, .admin-nav-item.is-open > .admin-nav-link, .admin-nav-item.has-sub:hover > .admin-nav-link { background: rgba(255, 255, 255, .09); color: #fff; }
.admin-nav-link.is-active, .admin-nav-item.is-active > .admin-nav-link { background: var(--aqua-200); color: var(--navy-950); font-weight: 500; border: 0; }
.admin-subnav { margin-top: 0; border: 1px solid var(--cream-200); border-radius: var(--r); box-shadow: var(--shadow); }
.admin-subnav a { color: var(--navy-700); font: 400 14px var(--font-sans); }
.admin-subnav a:hover { background: var(--cream-100); color: var(--navy-950); }
.admin-subnav a.is-active { background: var(--navy-900); color: #fff; }
.admin-nav-badge { border-radius: var(--r); background: var(--aqua-700); }
.admin-nav-account .admin-nav-link { padding: 6px 10px; }
.admin-nav-avatar { border-radius: var(--r); }
.admin-nav-avatar-empty { background: var(--aqua-200); color: var(--navy-950); font-family: var(--font-display); font-style: italic; font-weight: 400; }
.admin-nav-account-name { color: var(--cream-50); font-size: 13.5px; font-weight: 500; }
.admin-nav-account-name small { color: var(--navy-200); font-weight: 400; }
.admin-nav-item.is-active .admin-nav-account-name { color: var(--navy-950); }
.admin-nav-item.is-active .admin-nav-account-name small { color: var(--navy-600); }
.admin-stat-card, .admin-stat-card--revenue, .admin-stat-card--users, .admin-stat-card--students, .admin-stat-card--instructors, .admin-stat-card--courses { --tone: var(--aqua-700); box-shadow: none; }
.admin-stat-card:hover { transform: none; box-shadow: var(--shadow); }
.admin-stat-value { font-family: var(--font-display); font-weight: 400; font-size: 1.6rem; }
.app-shell { max-width: 1240px; padding: 30px 20px 64px; }
.app-shell h1, .main-content > h1 { font-family: var(--font-display); font-weight: 400; }
.sidebar { border-radius: var(--r); box-shadow: none; }
.sidebar a { font: 400 14px var(--font-sans); border-radius: var(--r); }
.sidebar a.active { background: var(--navy-900); }
.stat-card .value { font-family: var(--font-display); font-weight: 400; font-size: 1.9rem; line-height: 1.1; color: var(--navy-900); }
.stat-card .label { font-size: 12px; }
.quick-action-card { border-radius: var(--r); box-shadow: none; }
.datatable-search { border-radius: var(--r); }

@media (max-width: 1120px) {
  .cd-buy { box-shadow: var(--shadow); }
}
@media (max-width: 900px) {
  .sp-hero__grid, .sp-lead__grid, .sp-journey__grid, .sp-promo { grid-template-columns: minmax(0, 1fr); gap: 36px; }
  .sp-hero__figure { justify-self: center; width: min(360px, 88%); }
  .sp-hero__badge { left: -12px; }
  .sp-net { display: none; }
  .sp-hero__code { right: -10px; top: 26px; width: 200px; }
  .sp-hero__code code { font-size: 10.5px; }
  .sp-howto { grid-template-columns: minmax(0, 1fr); }
  .sp-section { padding: 52px 0; }
  .footer-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 32px; }
}
@media (max-width: 860px) {
  .navbar-inner { min-height: 66px; }
  .brand-logo { max-height: 42px; }
  #mainNav { background: var(--cream-50); border-bottom: 1px solid var(--cream-200); box-shadow: var(--shadow); }
  .nav-links a, .nav-link-caret, .nav-panel-link { font-size: 12px !important; }
  .nav-links > a::after, .nav-link-caret::after, .nav-panel-link::after { display: none; }
  .admin-nav-shell { top: 66px; }
  .admin-nav-inner { padding: 10px 16px; }
  .admin-nav-list { min-height: 0; align-items: stretch; }
  .admin-nav-toggle { background: var(--aqua-200); color: var(--navy-950); border-radius: var(--r); font: 500 14px var(--font-sans); padding: 11px 14px; }
  .admin-nav-toggle-bars i { background: var(--navy-950); }
  .admin-nav { background: var(--navy-900); border-color: rgba(244, 243, 241, .16); border-radius: var(--r); }
  .admin-nav-item + .admin-nav-item { border-top-color: rgba(244, 243, 241, .1); }
  .admin-nav-link { padding: 13px 14px; border-radius: 0; }
  .admin-nav-link.is-active, .admin-nav-item.is-active > .admin-nav-link { box-shadow: none; }
  .admin-subnav { background: transparent; }
  .admin-subnav a { color: rgba(244, 243, 241, .84); }
  .admin-subnav a:hover { background: rgba(255, 255, 255, .09); color: #fff; }
  .admin-subnav a.is-active { background: var(--aqua-200); color: var(--navy-950); }
  .auth-visual { display: none; }
}
@media (max-width: 620px) {
  .sp-lead, .sp-journey { padding: 60px 0; }
  .sp-bento strong { font-size: 2.4rem; }
  .sp-hero { padding: 36px 0 52px; }
  .sp-hero h1 { font-size: clamp(2.3rem, 11vw, 3rem); }
  .course-grid { grid-template-columns: minmax(0, 1fr); }
  .footer-grid { grid-template-columns: minmax(0, 1fr); padding-top: 44px; }
  .topbar-inner { font-size: 9px; letter-spacing: .12em; }
  .sp-ticker__group li { padding: 13px 20px; font-size: 1rem; gap: 9px; }
  .sp-promo { padding: 22px; }
  .hero { padding: 36px 0 84px !important; }
}
@media (prefers-reduced-motion: reduce) {
  .sp-net-pulses { display: none; }
  .sp-net-nodes circle { animation: none; }
  .sp-hero__code code { animation: none; width: auto; }
  .sp-ticker__track { animation: none; width: 100%; }
  .sp-ticker__group { flex-wrap: wrap; justify-content: center; }
  .sp-ticker__group[aria-hidden] { display: none; }
  .sp-step.is-active .sp-step__bar i { animation: none; }
  .sp-step__bar { display: none; }
}

/* Başlıklar: tüm sitede h1 ve h2 Roboto, ince */
h1, h2, .section-title, .cd-title, .cdx-title, .category-row-title { font-family: "Roboto", "Helvetica Neue", Arial, sans-serif !important; font-weight: 300 !important; letter-spacing: -.015em; }
h1 em, h2 em, h1 .accent-underline, h2 .accent-underline { font-weight: 300; }
h1, h2, h1 *, h2 *, .section-title, .section-title *, .cd-title, .cd-title *, .cdx-title, .cdx-title * { font-style: normal !important; }

/* Kurs detay hero: yarı saydam sinir ağı */
.cd-hero-bg::after, .cdx-hero::after { content: ""; position: absolute; inset: 0; background: url(../img/theme/ai-hero-dark.svg) center / cover no-repeat; pointer-events: none; }
.cdx-hero::after { z-index: -1; }

/* Modern kart */
.sp-card { border-color: transparent; box-shadow: 0 1px 2px rgba(16, 26, 40, .04), 0 10px 28px -20px rgba(16, 26, 40, .28); transition: transform .3s cubic-bezier(.2, .7, .2, 1), box-shadow .3s; }
.course-card-link:hover .sp-card { transform: translateY(-5px); border-color: transparent; box-shadow: 0 2px 4px rgba(16, 26, 40, .05), 0 26px 44px -22px rgba(16, 26, 40, .42); }
.sp-card__img { aspect-ratio: 16 / 9; }
.sp-card__img img { transition: transform .6s cubic-bezier(.2, .7, .2, 1); }
.course-card-link:hover .sp-card__img img { transform: scale(1.05); }
.sp-card__img::after { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg, rgba(16, 26, 40, .28), transparent 42%); pointer-events: none; }
.sp-card__tags { z-index: 1; }
.sp-card__body { padding: 18px 20px 16px; }
.sp-card__sum { -webkit-line-clamp: 2; }
.sp-card__foot { border-top: 0; padding-top: 4px; }
.sp-card__go { font-size: 0; gap: 0; width: 38px; height: 38px; justify-content: center; background: var(--cream-100); border-radius: var(--r); transition: background .25s, color .25s; }
.sp-card__go svg { transition: none; }
.course-card-link:hover .sp-card__go { background: var(--navy-900); color: var(--cream-50); }
.course-card-link:hover .sp-card__go svg { transform: none; }

/* Görseli olmayan kurs: ad tekrar etmesin, soyut desen gösterilsin */
.sp-card__ph { font-size: 0; background: url(../img/theme/ai-hero-dark.svg) center / cover no-repeat; }

/* Dizilim: tek kart yatay vitrin, iki kart eşit, modüler ızgarada ilk kart geniş */
.course-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px; }
.course-grid:has(> .course-card-link:nth-child(2):last-child) { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.course-grid > .course-card-link:only-child { grid-column: 1 / -1; }
.course-grid > .course-card-link:only-child .sp-card, .sp-grid-bento > .course-card-link:first-child:nth-last-child(n+3) .sp-card { flex-direction: row; }
.course-grid > .course-card-link:only-child .sp-card__img, .sp-grid-bento > .course-card-link:first-child:nth-last-child(n+3) .sp-card__img { flex: 0 0 54%; aspect-ratio: auto; min-height: 320px; }
.course-grid > .course-card-link:only-child .sp-card__img img, .sp-grid-bento > .course-card-link:first-child:nth-last-child(n+3) .sp-card__img img { position: absolute; inset: 0; z-index: 1; object-fit: contain; }
/* Yatay vitrin kartinda gorsel kirpilmaz: tamami gorunur, bos alani ayni gorselin bulanik hali doldurur */
.course-grid > .course-card-link:only-child .sp-card__img::before, .sp-grid-bento > .course-card-link:first-child:nth-last-child(n+3) .sp-card__img::before { content: ""; position: absolute; inset: -24px; background: var(--card-bg, none) center / cover no-repeat; filter: blur(22px) brightness(.72) saturate(1.1); }
.course-grid > .course-card-link:only-child .sp-card__img::after, .sp-grid-bento > .course-card-link:first-child:nth-last-child(n+3) .sp-card__img::after { z-index: 2; }
.course-grid > .course-card-link:only-child .sp-card__tags, .sp-grid-bento > .course-card-link:first-child:nth-last-child(n+3) .sp-card__tags { z-index: 3; }
.course-grid > .course-card-link:only-child .sp-card__body, .sp-grid-bento > .course-card-link:first-child:nth-last-child(n+3) .sp-card__body { padding: 30px 32px 26px; justify-content: center; }
.course-grid > .course-card-link:only-child .sp-card__title, .sp-grid-bento > .course-card-link:first-child:nth-last-child(n+3) .sp-card__title { font-size: 1.7rem; margin-bottom: 12px; }
.course-grid > .course-card-link:only-child .sp-card__sum, .sp-grid-bento > .course-card-link:first-child:nth-last-child(n+3) .sp-card__sum { font-size: 15px; -webkit-line-clamp: 4; }
.course-grid > .course-card-link:only-child .sp-card__foot, .sp-grid-bento > .course-card-link:first-child:nth-last-child(n+3) .sp-card__foot { margin-top: 12px; }
.sp-grid-bento > .course-card-link:first-child:nth-last-child(n+3) { grid-column: 1 / -1; }
/* Tam satir vitrin karti: gorsel 16:9 alanda, metin yaninda */
.sp-grid-bento > .course-card-link:first-child:nth-last-child(n+3) .sp-card__img { flex: 0 0 58%; aspect-ratio: 16 / 9; min-height: 0; }
.sp-grid-bento > .course-card-link:first-child:nth-last-child(n+3) .sp-card__body { padding: 36px 40px 32px; }
.sp-grid-bento > .course-card-link:first-child:nth-last-child(n+3) .sp-card__title { font-size: clamp(1.6rem, 2.4vw, 2.2rem); }

/* Ana sayfa satırları: solda yapışkan başlık, sağda kartlar */
.sp-row { position: relative; display: grid; grid-template-columns: 228px minmax(0, 1fr); gap: 40px; align-items: start; margin-bottom: 64px; }
.sp-row-head { position: sticky; top: 104px; display: grid; gap: 14px; margin: 0; padding: 0; border: 0; }
.sp-row-head h3 { font-size: 1.7rem; line-height: 1.15; }
.sp-row-head small { margin-bottom: 10px; }
.sp-row .slider-row { position: static; margin: 0; min-width: 0; }
.sp-row .manual-slider { gap: 20px; padding: 6px 2px 26px; scroll-snap-type: x mandatory; scrollbar-width: none; -webkit-mask-image: linear-gradient(90deg, #000 90%, transparent); mask-image: linear-gradient(90deg, #000 90%, transparent); }
.sp-row .manual-slider::-webkit-scrollbar { display: none; }
.sp-row .manual-slider-item { width: 296px; }
.sp-row .slider-arrow { top: auto; bottom: 32px; width: 40px; height: 40px; transform: none; display: inline-flex; align-items: center; justify-content: center; font-size: 18px; }
.sp-row .slider-arrow-prev { left: 0; right: auto; }
.sp-row .slider-arrow-next { left: 46px; right: auto; }
.sp-row .slider-arrow:hover { background: var(--navy-900); border-color: var(--navy-900); color: #fff; }

@media (max-width: 1020px) {
  .course-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .sp-row { grid-template-columns: minmax(0, 1fr); gap: 18px; margin-bottom: 44px; }
  .sp-row-head { position: static; display: flex; flex-wrap: wrap; align-items: flex-end; justify-content: space-between; gap: 8px 20px; padding: 0 !important; }
  .sp-row .slider-arrow { display: none; }
  .sp-row .manual-slider { -webkit-mask-image: none; mask-image: none; }
}
@media (max-width: 720px) {
  .course-grid, .course-grid:has(> .course-card-link:nth-child(2):last-child) { grid-template-columns: minmax(0, 1fr); }
  .sp-grid-bento > .course-card-link:first-child:nth-last-child(n+3) { grid-column: auto; }
  .course-grid > .course-card-link:only-child .sp-card, .sp-grid-bento > .course-card-link:first-child:nth-last-child(n+3) .sp-card { flex-direction: column; }
  .course-grid > .course-card-link:only-child .sp-card__img, .sp-grid-bento > .course-card-link:first-child:nth-last-child(n+3) .sp-card__img { flex: none; min-height: 0; aspect-ratio: 16 / 9; }
  .course-grid > .course-card-link:only-child .sp-card__img img, .sp-grid-bento > .course-card-link:first-child:nth-last-child(n+3) .sp-card__img img { object-fit: cover; }
  .course-grid > .course-card-link:only-child .sp-card__body, .sp-grid-bento > .course-card-link:first-child:nth-last-child(n+3) .sp-card__body { padding: 18px 20px 16px; }
  .course-grid > .course-card-link:only-child .sp-card__title, .sp-grid-bento > .course-card-link:first-child:nth-last-child(n+3) .sp-card__title { font-size: 1.3rem; }
  .sp-row .manual-slider-item { width: min(82vw, 300px); }
}

/* Ana sayfa hero: asimetrik video çerçevesi (kesik köşeler + kaymış renkli katman) */
.sp-hero__grid { grid-template-columns: minmax(0, .94fr) minmax(0, 1.06fr); }
.sp-hero__figure { width: 100%; justify-self: stretch; }
.sp-hero__figure::before { content: ""; position: absolute; inset: 22px -18px -22px 26px; background: var(--aqua-200); clip-path: polygon(0 0, 92% 0, 100% 16%, 100% 100%, 12% 100%, 0 80%); }
.sp-frame { position: relative; aspect-ratio: 16 / 9; background: var(--navy-900); clip-path: polygon(9% 0, 100% 0, 100% 80%, 91% 100%, 0 100%, 0 20%); }
.sp-frame iframe, .sp-frame img { position: absolute; inset: 0; display: block; width: 100%; height: 100%; border: 0; object-fit: cover; }
.sp-hero__code { top: -62px; right: -14px; width: 214px; }
.sp-hero__badge { left: 30px; bottom: -66px; }
.sp-hero { padding-bottom: 118px; }
@media (max-width: 900px) {
  .sp-hero__grid { grid-template-columns: minmax(0, 1fr); gap: 76px; }
  .sp-hero__figure { width: min(560px, 100%); justify-self: center; margin-top: 26px; }
  .sp-hero__figure::before { inset: 12px -8px -12px 12px; }
  .sp-hero__code { top: -50px; right: -2px; width: 190px; }
  .sp-hero__badge { left: 12px; bottom: -58px; }
  .sp-hero { padding-bottom: 104px; }
}

/* Başlık boyutları: tüm sitede küçültülmüş h1 ve h2 */
h1, .cd-title, .cdx-title { font-size: clamp(1.7rem, 2.8vw, 2.25rem) !important; line-height: 1.2 !important; }
h2, .section-title { font-size: clamp(1.35rem, 2vw, 1.7rem) !important; line-height: 1.25 !important; }
.sp-hero h1 { font-size: clamp(2rem, 3.8vw, 3.1rem) !important; line-height: 1.12 !important; }
.sp-lead h2 { font-size: clamp(1.5rem, 2.4vw, 2.1rem) !important; }

/* Ana sayfa hero: asimetrik görsel yerleşimi */
.sp-frame { aspect-ratio: 5 / 4; clip-path: polygon(16% 0, 100% 0, 100% 74%, 84% 100%, 0 100%, 0 26%); }
.sp-frame img { object-position: 62% 40%; }
.sp-hero__figure::before { inset: 30px -24px -30px 44px; clip-path: polygon(0 0, 86% 0, 100% 20%, 100% 100%, 18% 100%, 0 76%); }
.sp-hero__figure::after { content: ""; position: absolute; left: -22px; top: 8%; width: 84px; height: 84px; background: var(--navy-900); clip-path: polygon(40% 0, 100% 0, 100% 60%, 60% 100%, 0 100%, 0 40%); }
.sp-promo { margin-top: 32px; }
.sp-hero__code { top: -22px; }
@media (max-width: 900px) {
  .sp-hero__figure::before { inset: 16px -8px -16px 18px; }
  .sp-hero__figure::after { left: -8px; width: 52px; height: 52px; }
  .sp-hero__code { top: -30px; }
}

/* Paneller: alt bilgi kısa sayfalarda da en altta kalsın */
.panel-body { display: flex; flex-direction: column; min-height: 100vh; }
.panel-body > .app-shell { flex: 1 0 auto; width: 100%; }
.panel-body > .site-footer { flex-shrink: 0; }
.sp-frame img { object-position: 50% 44%; }

/* Ana sayfa: üç adım + iMac içinde kod ve canlı önizleme (süre 22 sn; tüm katmanlar aynı döngüde) */
.sp-build { position: relative; overflow: hidden; padding: 96px 0; color: rgba(244, 243, 241, .78); background: radial-gradient(52% 70% at 78% 44%, #27505a 0%, transparent 72%), var(--navy-950); }
.sp-build::before { content: ""; position: absolute; inset: 0; background-image: linear-gradient(rgba(164, 211, 212, .05) 1px, transparent 1px), linear-gradient(90deg, rgba(164, 211, 212, .05) 1px, transparent 1px); background-size: 56px 56px; -webkit-mask-image: radial-gradient(70% 90% at 70% 50%, #000, transparent 80%); mask-image: radial-gradient(70% 90% at 70% 50%, #000, transparent 80%); pointer-events: none; }
.sp-build__grid { position: relative; display: grid; grid-template-columns: minmax(0, .8fr) minmax(0, 1.2fr); gap: 64px; align-items: center; }
.sp-build .eyebrow { color: var(--aqua-300); }
.sp-build h2 { color: var(--cream-50); margin: 0 0 14px; }
.sp-build h2 em { color: var(--aqua-300); }
.sp-build__lead { margin: 0 0 26px; max-width: 480px; }
.sp-build__steps { list-style: none; margin: 0 0 28px; padding: 0; display: grid; gap: 10px; }
.sp-build__steps li { display: flex; gap: 16px; padding: 15px 16px; border: 1px solid rgba(244, 243, 241, .13); border-radius: var(--r); animation-duration: 22s; animation-iteration-count: infinite; animation-timing-function: linear; }
.sp-build__steps span { flex: none; font: italic 400 1.4rem/1.2 var(--font-display); color: var(--aqua-300); }
.sp-build__steps h3 { font-size: 1.14rem; color: var(--cream-50); margin: 0 0 3px; }
.sp-build__steps p { margin: 0; font-size: 13.5px; line-height: 1.55; }
.sp-build__cta { display: flex; flex-wrap: wrap; gap: 10px; }
.sp-btn-line { background: transparent; border-color: rgba(244, 243, 241, .36); color: var(--cream-50) !important; }
.sp-btn-line:hover { background: transparent; border-color: rgba(244, 243, 241, .75); }

.sp-imac { width: 100%; max-width: 680px; justify-self: end; filter: drop-shadow(0 40px 50px rgba(0, 0, 0, .55)); }
.sp-imac__screen { padding: 2.2% 2.2% 0; background: #0b0f16; border-radius: 12px 12px 0 0; border: 1px solid #39424e; border-bottom: 0; }
.sp-imac__view { container-type: inline-size; display: grid; grid-template-columns: 54% 46%; aspect-ratio: 16 / 10; background: #101a28; overflow: hidden; }
.sp-imac__chin { height: 0; padding-bottom: 6%; background: linear-gradient(180deg, #e8ebee, #c4c9cf); border-radius: 0 0 12px 12px; }
.sp-imac__neck { width: 17%; height: 0; padding-bottom: 9%; margin: 0 auto; background: linear-gradient(180deg, #8f96a0, #c4c9cf 30%, #d3d7dc); clip-path: polygon(8% 0, 92% 0, 100% 100%, 0 100%); }
.sp-imac__base { width: 30%; height: 7px; margin: 0 auto; background: linear-gradient(180deg, #e0e3e7, #a9afb7); border-radius: 2px 2px 4px 4px; }

.sp-ed { display: flex; flex-direction: column; min-width: 0; font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace; font-size: 1.95cqw; line-height: 1.75; border-right: 1px solid rgba(244, 243, 241, .1); }
.sp-ed__bar, .sp-pv__bar { display: flex; align-items: center; gap: .5em; flex: none; height: 2.5em; padding: 0 1em; font-family: var(--font-sans); background: #19283b; color: var(--navy-200); }
.sp-ed__bar i { width: .65em; height: .65em; border-radius: 50%; background: var(--navy-400); }
.sp-ed__bar b { margin-left: .8em; font-weight: 500; color: var(--cream-50); }
.sp-ed__code { flex: 1; padding: 1em .4em; counter-reset: ln; color: #d9e3e5; }
.sp-cr { display: flex; min-height: 1.75em; counter-increment: ln; }
.sp-cr::before { content: counter(ln); flex: none; width: 2.2em; padding-right: .8em; text-align: right; color: var(--navy-400); }
.sp-cr code { display: block; width: 0; overflow: hidden; white-space: pre; font: inherit; color: inherit; background: none; border: 0; border-right: 2px solid transparent; border-radius: 0; padding: 0; animation-duration: 22s; animation-iteration-count: infinite; animation-timing-function: linear; }
.sp-cr i { font-style: normal; }
.sp-cr .k { color: #89c6c7; } .sp-cr .a { color: #e6c98f; } .sp-cr .s { color: #b8d4b0; } .sp-cr .f { color: #c7b8ea; }

.sp-pv { display: flex; flex-direction: column; min-width: 0; font-size: 1.95cqw; background: #f4f3f1; }
.sp-pv__bar b { margin-left: auto; font-weight: 500; font-size: .85em; color: #8fd6a8; white-space: nowrap; }
.sp-pv__bar span { padding: .15em .7em; background: rgba(244, 243, 241, .1); border-radius: 3px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.sp-pv__page { flex: 1; display: flex; align-items: center; justify-content: center; padding: 1.2em; font-family: var(--font-sans); }
.sp-pv__card, .sp-pv__card h4, .sp-pv__card p, .sp-pv__btn, .sp-pv__btn > u, .sp-pv__tint, .sp-pv__done { opacity: 0; animation-duration: 22s; animation-iteration-count: infinite; animation-timing-function: ease-out; }
.sp-pv__card { position: relative; width: 100%; padding: 1.5em 1.3em; background: #fff; border: 1px solid var(--cream-300); border-radius: 4px; overflow: hidden; box-shadow: 0 1em 2em -1.4em rgba(16, 26, 40, .5); }
.sp-pv__tint { position: absolute; inset: 0; background: #dfefef; text-decoration: none; }
.sp-pv__card h4 { position: relative; margin: 0 0 .35em; font: 400 1.7em/1.15 "Roboto", Arial, sans-serif; color: var(--navy-900); letter-spacing: -.01em; }
.sp-pv__card p { position: relative; margin: 0 0 1em; font-size: 1em; line-height: 1.4; color: var(--navy-600); }
.sp-pv__btn { position: relative; display: inline-block; padding: .55em 1.2em; overflow: hidden; background: #dcdde0; color: var(--navy-900); border-radius: 3px; font-weight: 500; }
.sp-pv__btn > u { position: absolute; inset: 0; display: flex; align-items: center; justify-content: center; background: #387275; color: #fff; text-decoration: none; }
.sp-pv__btn > s { position: absolute; left: 50%; top: 50%; width: 4em; height: 4em; border-radius: 50%; background: #fff; opacity: 0; text-decoration: none; animation: sppvclick 22s linear infinite; }
.sp-pv__bar2 { position: relative; height: .35em; margin-top: 1em; overflow: hidden; border-radius: 2px; }
.sp-pv__bar2 i { display: block; height: 100%; background: #387275; transform: scaleX(0); transform-origin: left; animation: sppvbar 22s linear infinite; }
.sp-pv__done { position: relative; margin-top: .6em; font-size: .95em; font-weight: 500; color: #2f7d5b; }
@keyframes spcl0{0%,2.27%{width:0;border-right-color:transparent;animation-timing-function:steps(18)}2.28%{border-right-color:#a4d3d4}8.41%{width:19ch;border-right-color:#a4d3d4}8.71%{border-right-color:transparent}94%{width:19ch;opacity:1;border-right-color:transparent}97%,100%{width:19ch;opacity:0;border-right-color:transparent}}
@keyframes spcl1{0%,10.00%{width:0;border-right-color:transparent;animation-timing-function:steps(26)}10.01%{border-right-color:#a4d3d4}18.86%{width:27ch;border-right-color:#a4d3d4}19.16%{border-right-color:transparent}94%{width:27ch;opacity:1;border-right-color:transparent}97%,100%{width:27ch;opacity:0;border-right-color:transparent}}
@keyframes spcl2{0%,20.45%{width:0;border-right-color:transparent;animation-timing-function:steps(26)}20.46%{border-right-color:#a4d3d4}29.32%{width:27ch;border-right-color:#a4d3d4}29.62%{border-right-color:transparent}94%{width:27ch;opacity:1;border-right-color:transparent}97%,100%{width:27ch;opacity:0;border-right-color:transparent}}
@keyframes spcl3{0%,30.91%{width:0;border-right-color:transparent;animation-timing-function:steps(26)}30.92%{border-right-color:#a4d3d4}39.77%{width:27ch;border-right-color:#a4d3d4}40.07%{border-right-color:transparent}94%{width:27ch;opacity:1;border-right-color:transparent}97%,100%{width:27ch;opacity:0;border-right-color:transparent}}
@keyframes spcl4{0%,41.36%{width:0;border-right-color:transparent;animation-timing-function:steps(6)}41.37%{border-right-color:#a4d3d4}43.41%{width:7ch;border-right-color:#a4d3d4}43.71%{border-right-color:transparent}94%{width:7ch;opacity:1;border-right-color:transparent}97%,100%{width:7ch;opacity:0;border-right-color:transparent}}
@keyframes spcl6{0%,46.36%{width:0;border-right-color:transparent;animation-timing-function:steps(30)}46.37%{border-right-color:#a4d3d4}56.59%{width:31ch;border-right-color:#a4d3d4}56.89%{border-right-color:transparent}94%{width:31ch;opacity:1;border-right-color:transparent}97%,100%{width:31ch;opacity:0;border-right-color:transparent}}
@keyframes spcl7{0%,58.18%{width:0;border-right-color:transparent;animation-timing-function:steps(31)}58.19%{border-right-color:#a4d3d4}68.75%{width:32ch;border-right-color:#a4d3d4}69.05%{border-right-color:transparent}94%{width:32ch;opacity:1;border-right-color:transparent}97%,100%{width:32ch;opacity:0;border-right-color:transparent}}
@keyframes spcl9{0%,71.70%{width:0;border-right-color:transparent;animation-timing-function:steps(25)}71.71%{border-right-color:#a4d3d4}80.23%{width:26ch;border-right-color:#a4d3d4}80.53%{border-right-color:transparent}94%{width:26ch;opacity:1;border-right-color:transparent}97%,100%{width:26ch;opacity:0;border-right-color:transparent}}
@keyframes sppv0{0%,8.41%{opacity:0;transform:translateY(5px)}10.01%{opacity:1;transform:none}94%{opacity:1}97%,100%{opacity:0}}
@keyframes sppv1{0%,18.86%{opacity:0;transform:translateY(5px)}20.46%{opacity:1;transform:none}94%{opacity:1}97%,100%{opacity:0}}
@keyframes sppv2{0%,29.32%{opacity:0;transform:translateY(5px)}30.92%{opacity:1;transform:none}94%{opacity:1}97%,100%{opacity:0}}
@keyframes sppv3{0%,39.77%{opacity:0;transform:translateY(5px)}41.37%{opacity:1;transform:none}94%{opacity:1}97%,100%{opacity:0}}
@keyframes sppv6{0%,56.59%{opacity:0;transform:translateY(5px)}58.19%{opacity:1;transform:none}94%{opacity:1}97%,100%{opacity:0}}
@keyframes sppv7{0%,68.75%{opacity:0;transform:translateY(5px)}70.35%{opacity:1;transform:none}94%{opacity:1}97%,100%{opacity:0}}
@keyframes sppvclick{0%,81.23%{opacity:0;transform:translate(-50%,-50%) scale(.2)}82.23%{opacity:.55}84.23%{opacity:0;transform:translate(-50%,-50%) scale(1.5)}100%{opacity:0}}
@keyframes sppvbar{0%,82.23%{transform:scaleX(0);opacity:1}89.23%{transform:scaleX(1)}94%{transform:scaleX(1);opacity:1}97%,100%{transform:scaleX(1);opacity:0}}
@keyframes sppvdone{0%,90.23%{opacity:0;transform:translateY(5px)}91.83%{opacity:1;transform:none}94%{opacity:1}97%,100%{opacity:0}}
@keyframes spst0{0%,2%{background:rgba(164,211,212,.11);border-color:rgba(164,211,212,.5)}30%{background:rgba(164,211,212,.11);border-color:rgba(164,211,212,.5)}33%,100%{background:transparent;border-color:rgba(244,243,241,.13)}}
@keyframes spst1{0%,31%{background:transparent;border-color:rgba(244,243,241,.13)}34%,63%{background:rgba(164,211,212,.11);border-color:rgba(164,211,212,.5)}66%,100%{background:transparent;border-color:rgba(244,243,241,.13)}}
@keyframes spst2{0%,64%{background:transparent;border-color:rgba(244,243,241,.13)}67%,96%{background:rgba(164,211,212,.11);border-color:rgba(164,211,212,.5)}100%{background:transparent;border-color:rgba(244,243,241,.13)}}

@media (max-width: 1020px) {
  .sp-build__grid { grid-template-columns: minmax(0, 1fr); gap: 44px; }
  .sp-imac { justify-self: center; }
  .sp-build { padding: 64px 0; }
}
@media (prefers-reduced-motion: reduce) {
  .sp-build__steps li { animation: none; }
  .sp-cr code { animation: none; width: auto; }
  .sp-pv__card, .sp-pv__card h4, .sp-pv__card p, .sp-pv__btn, .sp-pv__btn > u, .sp-pv__tint, .sp-pv__done { animation: none; opacity: 1; }
  .sp-pv__btn > s { display: none; }
  .sp-pv__bar2 i { animation: none; transform: scaleX(1); }
}

/* Yeni kurs formu: panel genişliğine yayılır */
.course-quickstart-steps { display: grid; grid-template-columns: 1fr auto 1fr auto 1fr auto 1fr; }
.course-quickstart-step { text-align: center; border-radius: var(--r); }
.sp-qs-form { width: 100%; }
.sp-qs-form .card-body { padding: 28px; }
.sp-qs-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(260px, 1fr)); gap: 0 20px; }
.sp-qs-lead { max-width: none; margin-bottom: 22px; }
@media (max-width: 720px) {
  .course-quickstart-steps { grid-template-columns: 1fr; }
  .course-quickstart-step-sep { display: none; }
}

/* Hakkımızda */
.ab-sec { padding: 72px 0; }
.ab-sec--white { background: var(--cream-50); }
.ab-sec--dark { color: rgba(244, 243, 241, .78); background: radial-gradient(60% 80% at 20% 50%, #27505a 0%, transparent 72%), var(--navy-950); }
.ab-sec--dark h2, .ab-sec--dark h3 { color: var(--cream-50); }
.ab-sec--dark .eyebrow { color: var(--aqua-300); }
.ab-sec--dark .accent-underline { color: var(--aqua-300); }
.ab-wrap { width: min(1200px, 100% - 40px); margin-inline: auto; }
.ab-head { max-width: 680px; margin-bottom: 36px; }
.ab-head h2 { margin: 0 0 10px; }
.ab-head p { margin: 0; color: var(--navy-600); }
.ab-sec--dark .ab-head p { color: inherit; }
.ab-split { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 64px; align-items: center; }
.ab-split--rev > :first-child { order: 2; }
.ab-split h2 { margin: 0 0 16px; }
.ab-split p { color: var(--navy-600); }
.ab-sec--dark .ab-split p { color: inherit; }
.ab-figure { position: relative; margin: 0; }
.ab-figure::before { content: ""; position: absolute; inset: 22px -18px -22px 26px; background: var(--aqua-200); clip-path: polygon(0 0, 88% 0, 100% 18%, 100% 100%, 14% 100%, 0 80%); }
.ab-figure img { position: relative; display: block; width: 100%; aspect-ratio: 5 / 4; object-fit: cover; clip-path: polygon(12% 0, 100% 0, 100% 78%, 88% 100%, 0 100%, 0 22%); }
.ab-chip { position: absolute; right: 8px; top: 18px; padding: 6px 12px; background: var(--navy-900); color: var(--cream-50); border-radius: var(--r); font-size: 12px; font-weight: 500; letter-spacing: .04em; }
.ab-ticks { list-style: none; margin: 20px 0 0; padding: 0; display: grid; gap: 11px; }
.ab-ticks li { display: flex; gap: 12px; font-size: 14.5px; line-height: 1.55; }
.ab-ticks svg { flex: none; width: 19px; height: 19px; margin-top: 2px; color: var(--aqua-700); }
.ab-sec--dark .ab-ticks svg { color: var(--aqua-300); }
.ab-cards { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 16px; }
.ab-card { padding: 24px; background: #fff; border: 1px solid var(--cream-200); border-radius: var(--r); }
.ab-card__ic { display: flex; align-items: center; justify-content: center; width: 42px; height: 42px; margin-bottom: 16px; background: var(--aqua-100); color: var(--aqua-800); border-radius: var(--r); }
.ab-card__ic svg { width: 22px; height: 22px; }
.ab-card h3 { font-size: 1.14rem; margin: 0 0 6px; }
.ab-card p { margin: 0; font-size: 14px; line-height: 1.55; color: var(--navy-500); }
.ab-flow { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 0; counter-reset: ab; border-top: 1px solid var(--cream-300); }
.ab-flow li { position: relative; padding: 24px 24px 0 0; counter-increment: ab; }
.ab-flow li::before { content: ""; position: absolute; left: 0; top: -5px; width: 9px; height: 9px; background: var(--aqua-700); border-radius: 50%; }
.ab-flow small { display: block; font: italic 400 1.6rem/1 var(--font-display); color: var(--aqua-600); margin-bottom: 10px; }
.ab-flow h3 { font-size: 1.14rem; margin: 0 0 6px; }
.ab-flow p { margin: 0; font-size: 14px; line-height: 1.55; color: var(--navy-500); }
.ab-stats { display: grid; grid-template-columns: repeat(auto-fit, minmax(190px, 1fr)); gap: 12px; }
.ab-stat { padding: 22px; background: var(--navy-900); color: var(--cream-100); border-radius: var(--r); }
.ab-stat:nth-child(2n) { background: var(--aqua-100); color: var(--aqua-900); }
.ab-stat strong { display: block; font: 400 2.6rem/1 var(--font-display); }
.ab-stat span { font-size: 13px; }
.ab-faq { border-top: 1px solid var(--cream-300); }
.ab-faq details { border-bottom: 1px solid var(--cream-300); }
.ab-faq summary { display: flex; justify-content: space-between; align-items: center; gap: 16px; padding: 17px 0; font: 400 1.12rem/1.3 var(--font-display); color: var(--navy-900); cursor: pointer; list-style: none; }
.ab-faq summary::-webkit-details-marker { display: none; }
.ab-faq summary::after { content: "+"; flex: none; font: 300 24px/1 var(--font-sans); color: var(--aqua-700); transition: transform .2s; }
.ab-faq details[open] summary::after { transform: rotate(45deg); }
.ab-faq p { margin: 0; padding: 0 32px 18px 0; color: var(--navy-600); font-size: 14.5px; }
.ab-cta { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 20px; padding: 36px 40px; color: rgba(244, 243, 241, .78); background: linear-gradient(120deg, var(--navy-950), #20404a); border-radius: var(--r); }
.ab-cta h2 { color: var(--cream-50); margin: 0 0 6px; }
.ab-cta p { margin: 0; }
.ab-cta__btns { display: flex; flex-wrap: wrap; gap: 10px; }
@media (max-width: 1020px) {
  .ab-cards { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .ab-flow { grid-template-columns: repeat(2, minmax(0, 1fr)); row-gap: 8px; border-top: 0; }
  .ab-flow li { border-top: 1px solid var(--cream-300); }
  .ab-split { grid-template-columns: minmax(0, 1fr); gap: 44px; }
  .ab-split--rev > :first-child { order: 0; }
}
@media (max-width: 620px) {
  .ab-sec { padding: 52px 0; }
  .ab-cards, .ab-flow { grid-template-columns: minmax(0, 1fr); }
  .ab-cta { padding: 26px 22px; }
  .ab-figure::before { inset: 14px -8px -14px 14px; }
}

main:has(> .sp-build:last-child) + .site-footer { margin-top: 0; }

/* Alt bilgi: animasyon tüm alana yayılır, daha şeffaf */
.sp-footer-art { inset: 0; left: 0; bottom: auto; width: 100%; height: 100%; transform: none; }
.sp-footer-art img { width: 100%; height: 100%; object-fit: cover; opacity: .7; }

/* Giriş ve kayıt: dönen veri halkaları ve akan kod sütunları */
.auth-page { position: relative; overflow: hidden; }
.auth-page::before { content: ""; position: absolute; inset: 0; background: url(../img/theme/ai-auth.svg) center / cover no-repeat; opacity: .85; pointer-events: none; }
.auth-visual, .auth-form-panel { position: relative; z-index: 1; }
.auth-page { box-shadow: none; }
main:has(> .auth-page:last-child) + .site-footer { margin-top: 0; }

/* Hero alt şeridi: daha belirgin ve hareketli */
.hero { padding-bottom: 156px !important; }
.hero::after { height: 128px; }
.sp-hero::after { height: 112px; }
@media (max-width: 620px) {
  .hero { padding-bottom: 112px !important; }
  .hero::after { height: 92px; }
  .sp-hero::after { height: 84px; }
}

/* Ana sayfa koyu bölüm: alt bilgiyle aynı sinir ağı arka planı */
.sp-journey::before { content: ""; position: absolute; inset: 0; background: url(../img/theme/ai-footer-full.svg) center / cover no-repeat; opacity: .7; pointer-events: none; }
.sp-journey .sp-wrap { position: relative; z-index: 1; }

/* Uyarı penceresi */
.flash-modal-overlay { background: rgba(16, 26, 40, .58); -webkit-backdrop-filter: blur(10px) saturate(1.1); backdrop-filter: blur(10px) saturate(1.1); }
.flash-modal-box { position: relative; max-width: 460px; padding: 0; overflow: hidden; text-align: left; border: 1px solid rgba(255, 255, 255, .5); box-shadow: 0 40px 80px -24px rgba(8, 16, 28, .65); animation: sp-modal .32s cubic-bezier(.2, .9, .3, 1.1); }
.flash-modal-box::before { content: ""; display: block; height: 4px; background: linear-gradient(90deg, var(--navy-900), var(--aqua-600), var(--aqua-300)); }
@keyframes sp-modal { from { opacity: 0; transform: translateY(18px) scale(.97); } to { opacity: 1; transform: none; } }
.flash-modal-close { position: absolute; right: 12px; top: 16px; display: flex; align-items: center; justify-content: center; width: 32px; height: 32px; padding: 0; background: none; border: 0; border-radius: var(--r); color: var(--navy-400); cursor: pointer; transition: background .2s, color .2s; }
.flash-modal-close:hover { background: var(--cream-100); color: var(--navy-900); }
.flash-modal-close svg { width: 18px; height: 18px; }
.flash-modal-item { flex-direction: row; align-items: flex-start; gap: 16px; padding: 28px 44px 22px 28px; }
.flash-modal-item + .flash-modal-item { padding-top: 22px; }
.flash-modal-icon { flex: none; width: 46px; height: 46px; border-radius: var(--r); }
.flash-modal-icon svg { width: 24px; height: 24px; }
.flash-modal-auth .flash-modal-icon { background: var(--navy-900); color: var(--aqua-200); }
.flash-modal-success .flash-modal-icon { background: var(--ok-bg, #e4f2ec); }
.flash-modal-copy strong { display: block; margin-bottom: 5px; font: 300 1.3rem/1.25 "Roboto", Arial, sans-serif; color: var(--navy-900); letter-spacing: -.01em; }
.flash-modal-box .flash-modal-text { margin: 0; font-size: 14.5px; line-height: 1.6; color: var(--navy-600); }
.flash-modal-actions { display: flex; flex-wrap: wrap; gap: 10px; justify-content: flex-start; margin: 0; padding: 16px 28px 24px 90px; }
@media (max-width: 480px) {
  .flash-modal-item { padding: 24px 40px 18px 20px; gap: 12px; }
  .flash-modal-actions { padding: 12px 20px 20px; }
  .flash-modal-actions .btn { flex: 1; }
}
@media (prefers-reduced-motion: reduce) { .flash-modal-box { animation: none; } }

/* Admin > Ayarlar: sekmeler ve tam genişlik içerik */
.st-tabs { display: flex; gap: 2px; margin: 0 0 24px; overflow-x: auto; scrollbar-width: none; border-bottom: 1px solid var(--cream-300); }
.st-tabs[hidden] { display: none; }
.st-tabs::-webkit-scrollbar { display: none; }
.st-tabs button { flex: none; display: inline-flex; align-items: center; gap: 8px; margin-bottom: -1px; padding: 12px 18px; background: none; border: 0; border-bottom: 2px solid transparent; font: 500 14px var(--font-sans); color: var(--navy-500); cursor: pointer; white-space: nowrap; transition: color .2s, border-color .2s; }
.st-tabs button:hover { color: var(--navy-900); }
.st-tabs button[aria-selected="true"] { color: var(--navy-900); border-bottom-color: var(--aqua-700); }
.st-tabs__dot { width: 8px; height: 8px; border-radius: 50%; background: var(--color-warning); }
.st-stack { display: block; max-width: none; width: 100%; }
.st-panel { display: grid; gap: 20px; }
.st-panel[hidden] { display: none; }
.st-panel + .st-panel { margin-top: 20px; }
.st-panel .card-body { padding: 26px 28px; }
.st-panel .card-body > strong { display: block; font: 300 1.3rem/1.3 "Roboto", Arial, sans-serif !important; color: var(--navy-900); }
.st-panel .card-body > .form-hint { display: block; max-width: 760px; margin: 4px 0 20px; }
.st-panel form { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0 24px; align-items: start; }
.st-panel form > .form-row, .st-panel form > .form-group:has(textarea), .st-panel form > .form-hint, .st-panel form > p, .st-panel form > h3, .st-panel form > hr, .st-panel form > strong, .st-panel form > div:not(.form-group) { grid-column: 1 / -1; }
.st-panel form > .btn { grid-column: 1 / -1; justify-self: start; margin-top: 4px; }
.st-panel .form-row { display: grid; grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); gap: 0 24px; }
@media (max-width: 720px) {
  .st-panel form { grid-template-columns: minmax(0, 1fr); }
  .st-panel .card-body { padding: 20px; }
  .st-tabs button { padding: 11px 13px; font-size: 13.5px; }
}

/* Ana sayfa hero: alt animasyon, kayan şeritle aynı eğimde ve ona paralel */
.sp-hero { padding-bottom: calc(118px + 2.2vw); }
.sp-hero::after { left: -5%; right: -5%; bottom: calc(2.2vw + 5px); transform: rotate(-2deg); transform-origin: 50% 100%; }
.sp-ticker { margin-top: calc((var(--tilt) + 6px) * -1 - 2.2vw); }
@media (max-width: 900px) { .sp-hero { padding-bottom: calc(104px + 2.2vw); } }

/* Üç adım bölümü: alt bilgiyle aynı sinir ağı arka planı */
.sp-build::before { background: url(../img/theme/ai-footer-full.svg) center / cover no-repeat; opacity: .7; -webkit-mask-image: none; mask-image: none; }

/* Canlı destek düğmesi ve penceresi */
.lc-launch { position: fixed; right: 22px; bottom: 22px; z-index: 90; display: flex; align-items: center; gap: 12px; padding: 8px 20px 8px 8px; border: 1px solid rgba(164, 211, 212, .35); border-radius: 999px; background: linear-gradient(135deg, #0f1a2a, #1b3f4a); color: var(--cream-50); cursor: pointer; font-family: var(--font-sans); text-align: left; box-shadow: 0 16px 36px -10px rgba(8, 16, 28, .65), 0 0 0 1px rgba(255, 255, 255, .04) inset; transition: transform .25s cubic-bezier(.2, .8, .2, 1.1), box-shadow .25s; }
.lc-launch:hover { transform: translateY(-3px); box-shadow: 0 22px 44px -10px rgba(8, 16, 28, .75); }
.lc-launch__ic { position: relative; flex: none; display: flex; align-items: center; justify-content: center; width: 46px; height: 46px; border-radius: 50%; background: linear-gradient(145deg, #5fd8da, #2c8f94); color: #06222a; }
.lc-launch__ic svg { width: 27px; height: 27px; }
.lc-launch__ic::before { content: ""; position: absolute; inset: 0; border-radius: 50%; border: 2px solid #5fd8da; animation: lc-ping 2.4s ease-out infinite; }
@keyframes lc-ping { 0% { transform: scale(1); opacity: .75; } 70%, 100% { transform: scale(1.55); opacity: 0; } }
.lc-launch__txt { display: grid; line-height: 1.25; }
.lc-launch__txt b { font-size: 14px; font-weight: 600; }
.lc-launch__txt small { display: inline-flex; align-items: center; gap: 6px; font-size: 11.5px; color: var(--aqua-200); }
.lc-launch__txt i { width: 7px; height: 7px; border-radius: 50%; background: #47d68a; box-shadow: 0 0 0 3px rgba(71, 214, 138, .22); }
.lc-launch__count { position: absolute; top: -5px; right: -3px; min-width: 22px; height: 22px; padding: 0 6px; display: inline-flex; align-items: center; justify-content: center; border-radius: 11px; border: 2px solid #fff; background: var(--color-danger); color: #fff; font-size: 11.5px; font-weight: 600; }
.lc-launch__count[hidden] { display: none; }
body:has(.cd-sticky-bar:not([hidden])) .lc-launch { bottom: 88px; }
body:has(.cd-sticky-bar:not([hidden])) .lc-box { bottom: 160px; max-height: calc(100vh - 180px); }
.lc-box { position: fixed; right: 22px; bottom: 96px; z-index: 91; display: flex; flex-direction: column; width: min(380px, calc(100vw - 28px)); max-height: min(580px, calc(100vh - 120px)); overflow: hidden; background: #fff; border: 1px solid var(--cream-200); border-radius: 10px; box-shadow: 0 30px 70px -16px rgba(8, 16, 28, .5); animation: sp-modal .28s cubic-bezier(.2, .9, .3, 1.1); }
.lc-box[hidden] { display: none; }
.lc-box__head { display: flex; align-items: center; gap: 12px; padding: 14px 14px 14px 16px; background: linear-gradient(135deg, #0f1a2a, #1b3f4a); color: var(--cream-50); }
.lc-box__ic { flex: none; display: flex; align-items: center; justify-content: center; width: 38px; height: 38px; border-radius: 50%; background: linear-gradient(145deg, #5fd8da, #2c8f94); color: #06222a; }
.lc-box__ic svg { width: 22px; height: 22px; }
.lc-box__head > div { flex: 1; min-width: 0; }
.lc-box__head strong { display: block; font: 400 1.05rem/1.2 "Roboto", Arial, sans-serif; }
.lc-box__head small { font-size: 11.5px; color: var(--navy-200); }
.lc-box__head button { display: flex; padding: 6px; background: none; border: 0; border-radius: var(--r); color: var(--cream-100); cursor: pointer; }
.lc-box__head button:hover { background: rgba(255, 255, 255, .1); }
.lc-box__head button svg { width: 20px; height: 20px; }
.lc-thread, .lv-chat__log { flex: 1; display: flex; flex-direction: column; gap: 9px; min-height: 240px; overflow-y: auto; padding: 16px; background: var(--cream-50); }
.lc-msg { align-self: flex-start; max-width: 84%; padding: 9px 13px; background: #fff; border: 1px solid var(--cream-200); border-radius: 12px 12px 12px 3px; color: var(--navy-700); font-size: 14px; line-height: 1.5; white-space: pre-wrap; word-break: break-word; }
.lc-msg small { display: block; margin-top: 3px; font-size: 10.5px; color: var(--navy-400); }
.lc-msg--me { align-self: flex-end; background: var(--navy-900); border-color: var(--navy-900); border-radius: 12px 12px 3px 12px; color: var(--cream-50); }
.lc-msg--me small { color: var(--navy-300); }
.lc-identity { display: grid; gap: 8px; padding: 12px; border-top: 1px solid var(--cream-200); }
.lc-identity[hidden] { display: none; }
.lc-identity input { min-height: 40px; font-size: 14px; }
.lc-error { padding: 8px 12px 0; font-size: 12.5px; color: var(--color-danger); }
.lc-error[hidden] { display: none; }
.lc-composer { display: flex; align-items: flex-end; gap: 8px; padding: 12px; border-top: 1px solid var(--cream-200); background: #fff; }
.lc-composer textarea { flex: 1; min-height: 44px; max-height: 120px; resize: none; font-size: 14px; }
.lc-composer button { flex: none; display: flex; align-items: center; justify-content: center; width: 44px; height: 44px; background: var(--aqua-700); border: 0; border-radius: var(--r); color: #fff; cursor: pointer; transition: background .2s; }
.lc-composer button:hover { background: var(--aqua-800); }
.lc-composer button svg { width: 20px; height: 20px; }
.lc-hp { position: absolute !important; left: -9999px; width: 1px; height: 1px; opacity: 0; }
@media (max-width: 620px) {
  .lc-launch { right: 14px; bottom: 14px; padding: 6px; }
  .lc-launch__txt { display: none; }
  .lc-box { right: 14px; bottom: 80px; max-height: calc(100vh - 100px); }
  body:has(.cd-sticky-bar:not([hidden])) .lc-launch { bottom: 80px; }
}
@media (prefers-reduced-motion: reduce) { .lc-launch__ic::before { animation: none; opacity: 0; } .lc-box { animation: none; } }

/* Yönetim: canlı destek ve ziyaretçiler */
.lv-dot { display: inline-block; width: 9px; height: 9px; margin-left: 6px; border-radius: 50%; background: #2fbf71; box-shadow: 0 0 0 3px rgba(47, 191, 113, .2); vertical-align: 1px; }
.lv-dot[hidden] { display: none; }
.lv-empty { padding: 28px 20px; margin: 0; text-align: center; color: var(--navy-500); }
.lv-empty[hidden] { display: none; }
.lv-threads { display: grid; gap: 10px; }
.lv-thread { display: flex; justify-content: space-between; gap: 18px; padding: 16px 18px; background: #fff; border: 1px solid var(--cream-200); border-radius: var(--r); color: inherit; text-decoration: none !important; transition: border-color .2s, box-shadow .2s; }
.lv-thread:hover { border-color: var(--aqua-300); box-shadow: var(--shadow); color: inherit; }
.lv-thread.is-unread { border-left: 3px solid var(--aqua-700); }
.lv-thread.is-closed { opacity: .65; }
.lv-thread > div:first-child { min-width: 0; }
.lv-thread strong { font-weight: 600; color: var(--navy-900); }
.lv-thread small { display: block; font-size: 12.5px; color: var(--navy-500); }
.lv-thread p { margin: 6px 0 0; font-size: 14px; color: var(--navy-600); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.lv-thread__side { flex: none; display: flex; flex-direction: column; align-items: flex-end; gap: 6px; }
.lv-chat { display: flex; flex-direction: column; overflow: hidden; }
.lv-chat__log { min-height: 380px; max-height: 58vh; }
.lv-stats { display: grid; grid-template-columns: repeat(auto-fit, minmax(150px, 1fr)); gap: 12px; margin-bottom: 18px; }
.lv-stat { padding: 18px; background: #fff; border: 1px solid var(--cream-200); border-radius: var(--r); }
.lv-stat strong { display: block; font: 400 2rem/1.1 var(--font-display); color: var(--navy-900); }
.lv-stat span { font-size: 12.5px; color: var(--navy-500); }
.lv-stat--dark { background: var(--navy-900); border-color: var(--navy-900); }
.lv-stat--dark strong { color: var(--cream-50); }
.lv-stat--dark span { color: var(--aqua-200); }
.lv-columns { display: grid; grid-template-columns: minmax(0, 1fr) 280px; gap: 16px; align-items: start; }
.lv-columns > .card { min-width: 0; }
.lv-pages ul { list-style: none; margin: 12px 0 0; padding: 0; display: grid; gap: 8px; font-size: 13.5px; }
.lv-pages li { display: flex; justify-content: space-between; gap: 12px; }
.lv-pages li span { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.st-check { display: flex !important; align-items: center; gap: 8px; margin-bottom: 6px; font-weight: 400 !important; cursor: pointer; }
.st-check input { width: auto; }
.st-panel form.st-test { display: block; margin-top: 12px; }
@media (max-width: 1020px) { .lv-columns { grid-template-columns: minmax(0, 1fr); } }

/* Ayarlar: reklam ve süsleme */
.st-tabs__dot--on { background: #2fbf71; }
.st-panel form > .st-span { grid-column: 1 / -1; }
.st-preview { display: block; max-width: 220px; max-height: 140px; margin-bottom: 8px; border: 1px solid var(--cream-200); border-radius: var(--r); }
.st-theme { display: flex; align-items: flex-start; gap: 12px; padding: 14px 16px; margin-bottom: 8px; border: 1px solid var(--cream-300); border-radius: var(--r); cursor: pointer; font-weight: 400 !important; }
.st-theme:has(input:checked) { border-color: var(--aqua-700); box-shadow: inset 0 0 0 1px var(--aqua-700); }
.st-theme input { width: auto; margin-top: 4px; }
.st-theme b { display: block; font-weight: 500; color: var(--navy-900); }
.st-theme small { color: var(--navy-500); }

/* Açılış reklamı */
.pm-overlay { position: fixed; inset: 0; z-index: 210; display: flex; align-items: center; justify-content: center; padding: 20px; background: rgba(16, 26, 40, .6); -webkit-backdrop-filter: blur(8px); backdrop-filter: blur(8px); }
.pm-overlay[hidden] { display: none; }
.pm-box { position: relative; width: min(520px, 100%); max-height: calc(100vh - 40px); overflow: auto; background: #fff; border-radius: 8px; box-shadow: 0 40px 80px -24px rgba(8, 16, 28, .65); animation: sp-modal .32s cubic-bezier(.2, .9, .3, 1.1); }
.pm-close { position: absolute; right: 10px; top: 10px; z-index: 1; display: flex; align-items: center; justify-content: center; width: 36px; height: 36px; padding: 0; background: rgba(16, 26, 40, .72); border: 0; border-radius: 50%; color: #fff; cursor: pointer; }
.pm-close:hover { background: var(--navy-950); }
.pm-close svg { width: 18px; height: 18px; }
.pm-img { display: block; width: 100%; height: auto; }
.pm-body { padding: 22px 26px 26px; }
.pm-body strong { display: block; margin-bottom: 8px; padding-right: 30px; font: 300 1.5rem/1.25 "Roboto", Arial, sans-serif; color: var(--navy-900); }
.pm-body p { margin: 0 0 16px; color: var(--navy-600); font-size: 14.5px; line-height: 1.6; }
.pm-body p:last-child { margin-bottom: 0; }

/* Mobil menü: ortalı içerik, ikonlu düğmeler */
.nav-ic { display: none; width: 18px; height: 18px; flex: none; }
@media (max-width: 860px) {
  .nav-ic { display: inline-block; }
  .nav-open nav { padding: 8px 16px 18px; border-radius: 0 0 var(--r) var(--r); text-align: center; }
  .navbar nav > .nav-links > a, .navbar nav > .nav-links > .nav-item-dropdown > .nav-link-caret { display: flex; justify-content: center; width: 100%; padding: 16px 4px; text-align: center; }
  .mega-menu-item { justify-content: center; text-align: center; }
  .nav-actions { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; align-items: stretch; margin-top: 10px; padding-top: 14px; }
  .nav-actions .nav-panel-link { grid-column: 1 / -1; display: flex; justify-content: center; padding: 12px 4px; text-align: center; }
  .nav-actions .nav-panel-link:hover { background: none !important; }
  .nav-actions form { grid-column: 1 / -1; padding: 0; }
  .nav-actions .nav-link-ghost, .nav-actions .nav-cta { display: flex !important; align-items: center; justify-content: center; gap: 9px; width: 100%; min-height: 52px; margin: 0; padding: 12px 10px !important; border-radius: 10px; font: 500 15px/1.2 var(--font-sans) !important; letter-spacing: 0; text-transform: none; transition: transform .15s, background .2s; }
  .nav-actions .nav-link-ghost { background: #fff; border: 1.5px solid var(--navy-200); color: var(--navy-900) !important; }
  .nav-actions .nav-cta { background: linear-gradient(135deg, var(--navy-900), #1f4a55); border: 0; color: #fff !important; box-shadow: 0 10px 22px -12px rgba(16, 26, 40, .7); }
  .nav-actions .nav-link-ghost:active, .nav-actions .nav-cta:active { transform: scale(.97); }
}

/* Profil tamamlama */
.pc-page { padding: 44px 0 72px; background: linear-gradient(180deg, var(--cream-50), var(--cream-100)); }
.pc-wrap { width: min(860px, 100% - 32px); margin-inline: auto; }
.pc-head { margin-bottom: 24px; }
.pc-head h1 { margin: 0 0 10px; }
.pc-head p { margin: 0; color: var(--navy-600); }
.pc-progress { height: 6px; margin-top: 20px; background: var(--cream-200); border-radius: var(--r); overflow: hidden; }
.pc-progress i { display: block; height: 100%; width: 0; background: linear-gradient(90deg, var(--aqua-700), var(--aqua-400)); transition: width .3s; }
.pc-progress__txt { display: block; margin-top: 6px; font-size: 12.5px; color: var(--navy-500); }
.pc-alert { margin-bottom: 16px; padding: 12px 16px; background: var(--color-danger-bg); border: 1px solid #edc5be; border-radius: var(--r); color: #7f2a1f; font-size: 14px; }
.pc-card { margin: 0 0 16px; padding: 24px 26px 10px; background: #fff; border: 1px solid var(--cream-200); border-radius: var(--r); min-width: 0; }
.pc-card legend { display: flex; align-items: center; gap: 10px; float: left; width: 100%; margin-bottom: 18px; padding: 0; font: 300 1.25rem/1.3 "Roboto", Arial, sans-serif; color: var(--navy-900); }
.pc-card legend span { display: inline-flex; align-items: center; justify-content: center; width: 28px; height: 28px; background: var(--navy-900); border-radius: 50%; color: var(--cream-50); font: 500 13px var(--font-sans); }
.pc-card legend + * { clear: both; }
.pc-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); gap: 0 18px; }
.pc-grid[hidden], .pc-field[hidden] { display: none; }
.pc-field { margin-bottom: 16px; min-width: 0; }
.pc-field > label { display: block; margin-bottom: 6px; font-size: 13.5px; font-weight: 500; color: var(--navy-700); }
.pc-field > label small { font-weight: 400; color: var(--navy-500); }
.pc-field select, .pc-field input[type=text], .pc-field textarea { width: 100%; }
.pc-err { display: block; margin-top: 5px; font-size: 12.5px; color: var(--color-danger); }
.pc-chips { display: flex; flex-wrap: wrap; gap: 8px; }
.pc-chip { position: relative; cursor: pointer; }
.pc-chip input { position: absolute; opacity: 0; width: 1px; height: 1px; }
.pc-chip span { display: inline-flex; align-items: center; min-height: 40px; padding: 8px 14px; background: #fff; border: 1px solid var(--cream-300); border-radius: 6px; font-size: 13.5px; color: var(--navy-700); transition: background .15s, border-color .15s, color .15s; }
.pc-chip:hover span { border-color: var(--navy-400); }
.pc-chip input:checked + span { background: var(--navy-900); border-color: var(--navy-900); color: var(--cream-50); }
.pc-chip input:focus-visible + span { outline: 2px solid var(--aqua-600); outline-offset: 2px; }
.pc-actions { margin-top: 20px; }
.pc-actions .btn { min-height: 50px; padding: 12px 30px; }
.pc-logout { margin-top: 14px; }
.pc-logout button { padding: 0; background: none; border: 0; color: var(--navy-500); font: inherit; font-size: 13.5px; text-decoration: underline; cursor: pointer; }
@media (max-width: 620px) {
  .pc-card { padding: 20px 18px 6px; }
  .pc-actions .btn { width: 100%; }
}

/* Metin boyutları: uzun gövde yazıları ve giriş paragrafları küçültüldü */
.sp-hero__text { font-size: 15.5px; line-height: 1.65; }
.sp-lead__bio { font-size: 15.5px; line-height: 1.7; }
.sp-journey__lead, .sp-build__lead { font-size: 14.5px; }
.cdx-lead, .cd-lead { font-size: 15.5px; }
.lead, .ab-head p { font-size: 15px; }
.ogk, .yzh { font-size: 15px !important; }
.ogk .ogk-intro, .yzh .yzh-intro { font-size: 15px; }
.ogk .ogk-checks li, .ogk .ogk-ol li, .ogk .ogk-dl div, .yzh .yzh-checks li, .yzh .yzh-ol li, .yzh .yzh-dl div { font-size: 14.5px; }
.ogk .ogk-fact dd, .yzh .yzh-fact dd { font-size: 15px; }
@media (max-width: 620px) {
  body { font-size: 14.5px; }
  .sp-hero__text, .sp-lead__bio, .cdx-lead, .cd-lead { font-size: 14.5px; }
  .ogk, .yzh { font-size: 14.5px !important; }
  .ogk .ogk-intro, .yzh .yzh-intro { font-size: 14.5px; }
  .ab-split p, .ab-ticks li { font-size: 14px; }
  .sp-card__sum, .ab-card p { font-size: 13.5px; }
}

/* Mobil menü: tüm ekranı kaplayan koyu menü */
@media (max-width: 860px) {
  html.nav-locked { overflow: hidden; }
  #siteNavbar.nav-open { z-index: 300; background: transparent; border-bottom-color: transparent; -webkit-backdrop-filter: none; backdrop-filter: none; }
  #siteNavbar.nav-open #mainNav {
    position: fixed; inset: 0; z-index: 1; display: flex; flex-flow: column nowrap; justify-content: flex-start; align-items: center;
    width: 100%; height: 100vh; height: 100dvh; max-height: none; padding: 104px 28px max(28px, env(safe-area-inset-bottom));
    overflow-y: auto; overscroll-behavior: contain; border: 0; border-radius: 0; box-shadow: none;
    -webkit-backdrop-filter: none; backdrop-filter: none;
    background: radial-gradient(70% 50% at 50% 30%, #27505a 0%, transparent 72%), var(--navy-950);
    animation: sp-nav-in .26s ease;
  }
  #siteNavbar.nav-open #mainNav::before { content: ""; position: fixed; inset: 0; z-index: -1; background: url(../img/theme/ai-footer-full.svg) center / cover no-repeat; opacity: .26; pointer-events: none; }
  @keyframes sp-nav-in { from { opacity: 0; } to { opacity: 1; } }
  #siteNavbar.nav-open .brand { position: fixed; top: 12px; left: 20px; z-index: 2; }
  #siteNavbar.nav-open .nav-toggle { position: fixed; top: 12px; right: 20px; z-index: 2; }
  #siteNavbar.nav-open .brand-logo { mix-blend-mode: normal; padding: 4px 8px; background: #fff; border-radius: var(--r); }
  #siteNavbar.nav-open .nav-toggle { border-color: rgba(244, 243, 241, .36); background: rgba(255, 255, 255, .06); }
  #siteNavbar.nav-open .nav-toggle-bar { background: var(--cream-50); }
  #siteNavbar.nav-open .nav-links { flex: none; width: 100%; max-width: 420px; margin: auto 0 0; }
  #siteNavbar.nav-open .nav-links > a, #siteNavbar.nav-open .nav-links > .nav-item-dropdown > .nav-link-caret {
    justify-content: center; padding: 15px 4px; border-bottom: 1px solid rgba(244, 243, 241, .12);
    font: 300 1.3rem/1.25 "Roboto", Arial, sans-serif !important; letter-spacing: 0; text-transform: none; color: var(--cream-50) !important;
  }
  #siteNavbar.nav-open .nav-links > a:active, #siteNavbar.nav-open .nav-links > a:hover { color: var(--aqua-300) !important; background: none; }
  #siteNavbar.nav-open .caret { color: var(--aqua-300); opacity: 1; }
  #siteNavbar.nav-open .mega-menu { background: rgba(255, 255, 255, .05); border: 1px solid rgba(244, 243, 241, .12); box-shadow: none; }
  #siteNavbar.nav-open .mega-menu-item:hover { background: rgba(255, 255, 255, .08); }
  #siteNavbar.nav-open .mega-menu-item-name { color: var(--cream-50); }
  #siteNavbar.nav-open .mega-menu-item-count { color: var(--navy-200); }
  #siteNavbar.nav-open .mega-menu-viewall { color: var(--aqua-300) !important; }
  #siteNavbar.nav-open .nav-actions { flex: none; width: 100%; max-width: 420px; margin: 22px 0 auto; padding-top: 0; border-top: 0; }
  #siteNavbar.nav-open .nav-actions .nav-panel-link { padding: 12px 4px; border-bottom: 1px solid rgba(244, 243, 241, .12); font: 400 15px/1.3 var(--font-sans) !important; letter-spacing: 0; text-transform: none; color: var(--cream-100) !important; }
  #siteNavbar.nav-open .nav-actions .nav-link-ghost { background: transparent; border-color: rgba(244, 243, 241, .42); color: var(--cream-50) !important; }
  #siteNavbar.nav-open .nav-actions .nav-cta { background: var(--cream-50); color: var(--navy-900) !important; box-shadow: none; }
  #siteNavbar.nav-open .nav-actions form .btn { background: transparent; border-color: rgba(244, 243, 241, .42); color: var(--cream-50) !important; min-height: 48px; }
}

/* Mobil: hamburger solunda üye girişi düğmesi */
.nav-user { display: none; }
@media (max-width: 860px) {
  .nav-user { display: inline-flex; align-items: center; justify-content: center; flex: none; width: 40px; height: 40px; margin-left: auto; background: #fff; border: 1px solid var(--cream-300); border-radius: var(--r); color: var(--navy-900); text-decoration: none; transition: background .2s, color .2s; }
  .nav-user svg { width: 20px; height: 20px; }
  .nav-user:active { background: var(--cream-100); }
  .nav-user.is-member { background: var(--navy-900); border-color: var(--navy-900); color: var(--cream-50); }
  .navbar-inner .nav-user + .nav-toggle { margin-left: 0; flex: none; }
  #siteNavbar.nav-open .nav-user { display: none; }
}

/* Mobil: koyu "Menü" düğmesi */
@media (max-width: 860px) {
  .navbar-inner { column-gap: 8px; }
  .nav-toggle { flex-direction: row; gap: 8px; width: auto; height: 40px; padding: 0 12px; background: var(--navy-900); border-color: var(--navy-900); }
  .nav-toggle:hover, .nav-toggle:active { background: var(--navy-800); border-color: var(--navy-800); }
  .nav-toggle-bars { display: flex; flex-direction: column; gap: 5px; }
  .nav-toggle-bar { background: var(--cream-50); }
  .nav-toggle-label { color: var(--cream-50); font: 500 13.5px/1 var(--font-sans); }
  #siteNavbar.nav-open .nav-toggle { width: 44px; padding: 0; justify-content: center; }
  #siteNavbar.nav-open .nav-toggle-label { display: none; }
}

/* Profilim: detaylı profil bilgileri */
.pc-section { margin-top: 28px; scroll-margin-top: 90px; }
.pc-section__title { margin: 0 0 6px; }
.pc-section__lead { margin: 0 0 18px; color: var(--navy-600); font-size: 14px; }

/* Hero başlıklarında vurgulu kelimeler */
h1 em, h1 .accent-underline { font-weight: 400; }

/* Saydam logo: boşluksuz dosya olduğu için görünür boyut buradan ayarlanır */
.brand-logo, .navbar-scrolled .brand-logo { height: 34px; max-height: 34px; max-width: none; mix-blend-mode: normal; }
@media (max-width: 860px) {
  .brand-logo, .navbar-scrolled .brand-logo { height: 26px; max-height: 26px; }
  #siteNavbar.nav-open .brand-logo { height: 34px; max-height: 34px; }
}

/* Ana sayfa hero, mobil: yukarıdan aşağı akan çok şeffaf kod satırları */
.sp-coderain { display: none; }
@media (max-width: 860px) {
  .sp-coderain { position: absolute; inset: 0; z-index: 0; display: flex; justify-content: space-between; gap: 6px; padding: 0 10px; overflow: hidden; opacity: .1; color: var(--navy-800); font: 400 10.5px/30px ui-monospace, SFMono-Regular, Menlo, Consolas, monospace; white-space: nowrap; pointer-events: none; -webkit-mask-image: linear-gradient(180deg, transparent, #000 12%, #000 84%, transparent); mask-image: linear-gradient(180deg, transparent, #000 12%, #000 84%, transparent); }
  .sp-coderain__col { flex: 1 1 0; min-width: 0; overflow: hidden; height: max-content; will-change: transform; animation: sp-coderain linear infinite; }
  .sp-coderain__col:nth-child(even) { color: var(--aqua-700); }
  .sp-coderain__col:nth-child(n+7) { display: none; }
  @keyframes sp-coderain { from { transform: translateY(-50%); } to { transform: translateY(0); } }
}
@media (max-width: 620px) {
  .sp-coderain__col:nth-child(n+4) { display: none; }
}
@media (prefers-reduced-motion: reduce) {
  .sp-coderain__col { animation: none; transform: translateY(-20%); }
}

/* Üst şerit mobilde de görünsün (app.css gizliyordu) */
@media (max-width: 860px) {
  .topbar { padding: 6px 0; }
  .topbar-inner { font-size: 9.5px; letter-spacing: .08em; line-height: 1.45; text-wrap: balance; }
  .topbar-inner span:first-child { display: inline; }
}

/* Canlı yayın etiketi: kartlarla aynı kırmızı */
.cd-tag-live, .cdx-tag-live, .live-countdown-banner-badge { background: linear-gradient(135deg, #e5383b, #a4161a) !important; border-color: transparent !important; color: #fff !important; }
.cd-tag-live i { background: #fff; }
.cdx-live { display: flex; flex-wrap: wrap; align-items: center; justify-content: center; gap: 8px 14px; margin-top: 22px; color: var(--cream-50); font-size: 14px; }
.cdx-live strong { font-weight: 500; }
.cdx-live-date { display: inline-flex; align-items: center; gap: 7px; padding: 4px 10px; background: rgba(255, 255, 255, .12); border-radius: var(--r); }
.cdx-live small { display: inline-flex; align-items: center; gap: 6px; flex-basis: 100%; justify-content: center; color: rgba(244, 243, 241, .72); font-size: 12.5px; }
.cdx-live-join { display: inline-flex; align-items: center; gap: 7px; padding: 8px 14px; background: linear-gradient(135deg, #e5383b, #a4161a); border-radius: var(--r); color: #fff !important; font-weight: 500; text-decoration: none; }

/* Canlı yayın üst bandı */
.live-countdown-banner { padding: 14px 0; background: var(--navy-950); border-bottom: 1px solid rgba(137, 198, 199, .18); color: var(--cream-50); }
.live-countdown-banner::before { content: none; }
.live-countdown-banner-inner { gap: 16px 32px; }
.live-countdown-banner-info { gap: 18px; min-width: 0; }
.live-countdown-banner-badge { display: inline-flex; align-items: center; gap: 8px; flex: none; margin: 0; padding: 5px 11px; border-radius: var(--r); font: 500 11px/1.3 var(--font-sans); letter-spacing: .1em; text-transform: uppercase; }
.live-countdown-banner-badge i { position: relative; width: 7px; height: 7px; background: #fff; border-radius: 50%; }
.live-countdown-banner-badge i::after { content: ""; position: absolute; inset: 0; background: #fff; border-radius: 50%; animation: live-ring 1.8s ease-out infinite; }
@keyframes live-ring { to { transform: scale(3); opacity: 0; } }
.live-countdown-banner-when { display: block; min-width: 0; }
.live-countdown-banner-when small { display: block; color: rgba(244, 243, 241, .6); font-size: 11px; line-height: 1.3; }
.live-countdown-banner-text { display: block; font: 300 1.08rem/1.35 "Roboto", Arial, sans-serif; }
.live-countdown-banner .live-countdown-timer { gap: 0; }
.live-countdown-banner .live-countdown-unit { min-width: 62px; padding: 0 14px; background: none; border: 0; border-left: 1px solid rgba(244, 243, 241, .16); border-radius: 0; }
.live-countdown-banner .live-countdown-unit:first-child { border-left: 0; }
.live-countdown-banner .live-countdown-unit span { font: 300 1.5rem/1.15 "Roboto", Arial, sans-serif; color: var(--cream-50); font-variant-numeric: tabular-nums; }
.live-countdown-banner .live-countdown-unit small { margin-top: 2px; color: rgba(244, 243, 241, .6); font-size: 10.5px; letter-spacing: .02em; text-transform: none; }
@media (max-width: 720px) {
  .live-countdown-banner { padding: 12px 0; }
  .live-countdown-banner-inner { align-items: stretch; gap: 12px; }
  .live-countdown-banner .live-countdown-timer { display: grid; grid-template-columns: repeat(4, 1fr); padding-top: 10px; border-top: 1px solid rgba(244, 243, 241, .12); }
  .live-countdown-banner .live-countdown-unit { min-width: 0; padding: 0 4px; }
  .live-countdown-banner .live-countdown-unit span { font-size: 1.35rem; }
}
@media (prefers-reduced-motion: reduce) {
  .live-countdown-banner-badge i::after { animation: none; }
}

/* Üst menü: üzerine gelince bağlantının çevresinde düğme biçiminde çerçeve */
@media (min-width: 861px) {
  .navbar nav > .nav-links > a::after,
  .navbar nav > .nav-links > .nav-item-dropdown > .nav-link-caret::after,
  .nav-actions .nav-panel-link::after { inset: 0; width: auto; height: auto; background: none; border: 1px solid var(--navy-900); border-radius: var(--r); transform: none; opacity: 0; transition: opacity .15s ease; }
  .navbar nav > .nav-links > a:hover::after,
  .navbar nav > .nav-links > a:focus-visible::after,
  .navbar nav > .nav-links > .nav-item-dropdown > .nav-link-caret:hover::after,
  .navbar nav > .nav-links > .nav-item-dropdown > .nav-link-caret:focus-visible::after,
  .navbar nav > .nav-links > .nav-item-dropdown.open > .nav-link-caret::after,
  .nav-actions .nav-panel-link:hover::after,
  .nav-actions .nav-panel-link:focus-visible::after { transform: none; opacity: 1; }
  /* Panel bağlantılarının yan boşluğu yok: çerçeve aradaki boşluğa taşar, menü yerleşimi değişmez */
  .nav-actions .nav-panel-link::after { inset: 0 -10px; }
}

/* Açılış reklamı: video */
.pm-box--video { width: min(820px, 100%); }
.pm-video-link { display: block; }
.pm-video { display: block; width: 100%; height: auto; aspect-ratio: 16 / 9; background: #000; }

/* Ana sayfa hero: fragman aynı asimetrik çerçevede, 16:9 */
.sp-frame--video { display: block; aspect-ratio: 16 / 9; }
.sp-frame video { position: absolute; inset: 0; display: block; width: 100%; height: 100%; object-fit: cover; }
@media (max-width: 860px) {
  .sp-frame--video ~ .sp-hero__badge { position: relative; left: auto; right: auto; bottom: auto; top: auto; display: block; max-width: none; margin: 14px 0 0; }
}

/* Yönetim özeti: büyüyen rakamlar kartın dışına taşmasın */
.admin-stat-grid { grid-template-columns: repeat(auto-fit, minmax(min(100%, 200px), 1fr)); }
.admin-stat-card { min-width: 0; container-type: inline-size; }
.admin-stat-card > div:last-child { min-width: 0; flex: 1; }
.admin-stat-value { --len: 14; font-size: 1.3rem; font-size: clamp(.95rem, calc((100cqi - 58px) / (max(var(--len), 7) * .53)), 1.6rem); line-height: 1.15; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; font-variant-numeric: tabular-nums; }
.admin-course-rank-revenue { white-space: nowrap; font-variant-numeric: tabular-nums; }
.admin-course-rank-body { min-width: 0; }
.admin-status-pill-num { font-variant-numeric: tabular-nums; }
.lv-stat { min-width: 0; container-type: inline-size; }
.lv-stat strong { font-size: clamp(1.15rem, 16cqi, 2rem); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
@media (max-width: 640px) {
  .admin-stat-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
  .admin-stat-card--revenue { grid-column: 1 / -1; }
  .admin-stat-card { padding: 14px; gap: 10px; }
  .admin-stat-icon { width: 36px; height: 36px; font-size: 17px; }
  .admin-stat-card .admin-stat-value { font-size: clamp(.95rem, calc((100cqi - 46px) / (max(var(--len), 7) * .53)), 1.5rem); }
}

/* Ziyaretçi istatistikleri */
.vs-head { flex-wrap: wrap; gap: 14px; align-items: flex-end; }
.vs-range { display: inline-flex; flex-wrap: wrap; border: 1px solid var(--cream-300); border-radius: var(--r); overflow: hidden; background: #fff; }
.vs-range a { padding: 8px 14px; font-size: 13.5px; color: var(--navy-600); text-decoration: none; border-left: 1px solid var(--cream-200); }
.vs-range a:first-child { border-left: 0; }
.vs-range a.is-active { background: var(--navy-900); color: var(--cream-50); }
@media (max-width: 640px) { .vs-head > div { width: 100%; } .vs-range { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); width: 100%; } .vs-range a { padding: 9px 4px; text-align: center; font-size: 12.5px; white-space: nowrap; } }
.vs-kpis { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 150px), 1fr)); gap: 12px; margin-bottom: 16px; }
.vs-kpi { display: block; min-width: 0; padding: 16px 18px; background: #fff; border: 1px solid var(--cream-200); border-radius: var(--r); color: inherit; text-decoration: none; container-type: inline-size; }
a.vs-kpi:hover { border-color: var(--aqua-600); }
.vs-kpi strong { display: flex; align-items: center; gap: 8px; font: 400 1.6rem/1.15 var(--font-display); font-size: clamp(1.1rem, 14cqi, 1.75rem); color: var(--navy-900); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; font-variant-numeric: tabular-nums; }
.vs-kpi strong .badge { font: 600 11px var(--font-sans); }
.vs-kpi span { display: block; margin-top: 4px; font-size: 12.5px; line-height: 1.35; color: var(--navy-500); }
.vs-kpi--dark { background: var(--navy-900); border-color: var(--navy-900); }
.vs-kpi--dark strong { color: var(--cream-50); }
.vs-kpi--dark span { color: var(--aqua-200); }
.vs-card { margin-bottom: 16px; min-width: 0; }
.vs-card__head { display: flex; justify-content: space-between; align-items: baseline; gap: 12px; flex-wrap: wrap; margin-bottom: 14px; }
.vs-card__head strong { font-weight: 600; color: var(--navy-900); }
.vs-grid { display: grid; gap: 16px; }
.vs-grid > .vs-card { margin-bottom: 0; }
.vs-grid { margin-bottom: 16px; }
.vs-grid--2 { grid-template-columns: repeat(auto-fit, minmax(min(100%, 340px), 1fr)); }
.vs-grid--4 { grid-template-columns: repeat(auto-fit, minmax(min(100%, 220px), 1fr)); }
.vs-bars { list-style: none; margin: 0; padding: 0; display: grid; gap: 10px; }
.vs-bars li { min-width: 0; }
.vs-bars__row { display: flex; justify-content: space-between; gap: 10px; font-size: 13.5px; color: var(--navy-700); }
.vs-bars__row span { min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.vs-bars__row b { flex: none; font-weight: 600; color: var(--navy-900); font-variant-numeric: tabular-nums; }
.vs-bars__row small { font-weight: 400; color: var(--navy-400); }
.vs-bars i { display: block; height: 5px; margin-top: 5px; background: var(--aqua-600); border-radius: 2px; min-width: 2px; }
.vs-table th.num, .vs-table td.num { text-align: right; font-variant-numeric: tabular-nums; white-space: nowrap; }
.vs-table .nowrap { white-space: nowrap; }
.vs-page { max-width: 340px; }
.vs-page a, .vs-page span { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.vs-page small { display: block; font-size: 12px; color: var(--navy-400); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.vs-row { cursor: pointer; }
.vs-row:hover td { background: var(--cream-50); }
.vs-actions { display: flex; gap: 8px; }
.vs-journey { list-style: none; margin: 0; padding: 0; display: grid; }
.vs-journey li { display: grid; grid-template-columns: 48px minmax(0, 1fr) auto; gap: 12px; align-items: baseline; padding: 10px 0; border-top: 1px solid var(--cream-200); }
.vs-journey li:first-child { border-top: 0; }
.vs-journey time { font-size: 12.5px; color: var(--navy-500); font-variant-numeric: tabular-nums; }
.vs-journey li > div a, .vs-journey li > div > span { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; color: var(--navy-900); }
.vs-journey small { display: block; font-size: 12px; color: var(--navy-400); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.vs-journey__dur { font-size: 12.5px; color: var(--navy-500); white-space: nowrap; }
.vs-journey--compact li { grid-template-columns: 40px minmax(0, 1fr) auto; gap: 8px; padding: 7px 0; font-size: 13px; }
.vs-hours { display: grid; grid-template-columns: repeat(24, minmax(0, 1fr)); gap: 3px; align-items: end; height: 170px; padding-bottom: 20px; position: relative; }
.vs-hours__col { position: relative; height: 100%; display: flex; align-items: flex-end; outline: none; }
.vs-hours__col > span:first-child { display: block; width: 100%; min-height: 2px; background: var(--aqua-400); border-radius: 2px 2px 0 0; }
.vs-hours__col:hover > span:first-child, .vs-hours__col:focus > span:first-child { background: var(--navy-800); }
.vs-hours__col em { position: absolute; top: 100%; left: 50%; transform: translateX(-50%); margin-top: 4px; font: 400 11px var(--font-sans); color: var(--navy-400); }

/* Günlük trafik grafiği */
.tc { margin: 0; }
.tc-legend { display: flex; flex-wrap: wrap; gap: 6px 18px; margin-bottom: 12px; font-size: 13px; color: var(--navy-600); }
.tc-legend b { color: var(--navy-900); font-weight: 600; font-variant-numeric: tabular-nums; }
.tc-key { display: inline-block; vertical-align: middle; margin-right: 4px; }
.tc-key--bar { width: 10px; height: 10px; background: var(--aqua-300); border-radius: 2px; }
.tc-key--line { width: 16px; height: 2px; background: var(--navy-800); position: relative; }
.tc-key--line::after { content: ""; position: absolute; left: 5px; top: -2px; width: 6px; height: 6px; border-radius: 50%; background: var(--navy-800); }
.tc-body { display: grid; grid-template-columns: auto minmax(0, 1fr); gap: 8px; }
.tc-y { display: flex; flex-direction: column; justify-content: space-between; height: 210px; font-size: 11px; color: var(--navy-400); text-align: right; font-variant-numeric: tabular-nums; }
.tc-y span { transform: translateY(-50%); }
.tc-y span:last-child { transform: translateY(50%); }
.tc-plot { position: relative; height: 210px; margin-bottom: 24px; background: linear-gradient(var(--cream-200), var(--cream-200)) 0 0 / 100% 1px no-repeat, linear-gradient(var(--cream-200), var(--cream-200)) 0 50% / 100% 1px no-repeat, linear-gradient(var(--navy-200), var(--navy-200)) 0 100% / 100% 1px no-repeat; }
.tc-cols { position: absolute; inset: 0; display: grid; grid-template-columns: repeat(var(--tc-n), minmax(0, 1fr)); }
.tc-col { position: relative; height: 100%; display: flex; justify-content: center; align-items: flex-end; outline: none; }
.tc-bar { display: block; width: 62%; max-width: 26px; min-height: 1px; background: var(--aqua-300); border-radius: 2px 2px 0 0; transition: background .15s; }
.tc-col:hover .tc-bar, .tc-col:focus .tc-bar { background: var(--aqua-600); }
.tc-col:hover, .tc-col:focus { background: rgba(56, 114, 117, .06); }
.tc-dot { position: absolute; left: 50%; width: 7px; height: 7px; margin: 0 0 -3.5px -3.5px; border-radius: 50%; background: var(--navy-800); border: 1.5px solid #fff; z-index: 2; pointer-events: none; }
.tc-line { position: absolute; inset: 0; width: 100%; height: 100%; overflow: visible; pointer-events: none; z-index: 1; }
.tc-line polyline { fill: none; stroke: var(--navy-800); stroke-width: 2; stroke-linejoin: round; stroke-linecap: round; }
.tc-x { position: absolute; top: 100%; left: 50%; transform: translateX(-50%); margin-top: 6px; font-size: 11px; color: var(--navy-400); white-space: nowrap; }
.tc-tip { position: absolute; bottom: calc(100% + 6px); left: 50%; transform: translateX(-50%); z-index: 5; min-width: 128px; padding: 8px 10px; background: var(--navy-900); color: var(--cream-50); font-size: 12px; line-height: 1.45; border-radius: var(--r); white-space: nowrap; pointer-events: none; opacity: 0; visibility: hidden; transition: opacity .12s; }
.tc-tip b { display: block; font-weight: 600; color: var(--aqua-200); }
.tc-col .tc-tip { bottom: auto; top: -8px; transform: translate(-50%, -100%); }
.tc-col--l .tc-tip { left: 0; transform: translate(0, -100%); }
.tc-col--r .tc-tip { left: auto; right: 0; transform: translate(0, -100%); }
.vs-hours__col .tc-tip { left: 50%; transform: translate(-50%, -100%); top: -6px; bottom: auto; }
.vs-hours__col.tc-col--l .tc-tip { left: 0; transform: translate(0, -100%); }
.vs-hours__col.tc-col--r .tc-tip { left: auto; right: 0; transform: translate(0, -100%); }
.tc-col:hover .tc-tip, .tc-col:focus .tc-tip, .vs-hours__col:hover .tc-tip, .vs-hours__col:focus .tc-tip { opacity: 1; visibility: visible; }
@media (max-width: 640px) { .tc-y, .tc-plot { height: 170px; } .tc-bar { width: 72%; } }

/* Özet sayfası: ziyaretçi bölümü */
.ad-traffic { margin-bottom: 28px; }
.ad-traffic__head { display: flex; justify-content: space-between; align-items: baseline; gap: 12px; flex-wrap: wrap; margin-bottom: 12px; }
.ad-traffic__head .section-title { margin: 0; font-size: clamp(1.4rem, 2.4vw, 1.9rem); }
.ad-traffic__grid { display: grid; grid-template-columns: minmax(0, 1.65fr) minmax(0, 1fr); gap: 16px; align-items: start; }
.ad-traffic__grid > .vs-card { margin-bottom: 0; }
.ad-devices { display: flex; flex-wrap: wrap; gap: 8px 16px; margin-top: 16px; padding-top: 14px; border-top: 1px solid var(--cream-200); font-size: 13px; color: var(--navy-600); }
.ad-devices b { color: var(--navy-900); font-weight: 600; }
.vs-kpis--dash { grid-template-columns: repeat(auto-fit, minmax(min(100%, 140px), 1fr)); }
.vs-kpis:not(.vs-kpis--dash) { grid-template-columns: repeat(4, minmax(0, 1fr)); }
@media (max-width: 900px) { .vs-kpis:not(.vs-kpis--dash) { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
.vs-kpi .lv-dot { flex: none; }
@media (max-width: 1020px) { .ad-traffic__grid { grid-template-columns: minmax(0, 1fr); } }
@media (max-width: 640px) { .vs-kpis, .vs-kpis--dash { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; } .vs-kpi { padding: 13px 14px; } }

/* Canlı destek: ziyaretçi paneli ve ilk mesaj penceresi */
.lv-columns--chat { grid-template-columns: minmax(0, 1fr) 320px; }
.lv-visitor { min-width: 0; }
.lv-visitor > strong, .lv-visitor__sub { display: block; font-weight: 600; color: var(--navy-900); margin-bottom: 10px; }
.lv-visitor__sub { margin: 16px 0 4px; font-size: 13.5px; }
.lv-vlist { display: grid; grid-template-columns: auto minmax(0, 1fr); gap: 6px 12px; margin: 0; font-size: 13px; }
.lv-vlist dt { color: var(--navy-500); }
.lv-vlist dd { margin: 0; color: var(--navy-900); overflow-wrap: anywhere; }
.lv-acts { white-space: nowrap; }
.lv-acts > * + * { margin-left: 8px; }
.lv-start { width: min(92vw, 440px); padding: 22px; border: 1px solid var(--cream-300); border-radius: var(--r); box-shadow: 0 24px 60px rgba(16, 26, 40, .25); }
.lv-start::backdrop { background: rgba(16, 26, 40, .45); }
.lv-start strong { display: block; font: 400 1.3rem var(--font-display); color: var(--navy-900); }
.lv-start textarea { width: 100%; margin-top: 4px; }
.lv-start__actions { display: flex; justify-content: flex-end; gap: 8px; margin-top: 12px; }
@media (max-width: 1020px) { .lv-columns--chat { grid-template-columns: minmax(0, 1fr); } }

/* Üst şerit duyurusu */
.topbar-announce { color: var(--aqua-200); text-decoration: none; }
.topbar-announce:hover, .topbar-announce:focus-visible { color: #fff; text-decoration: underline; text-underline-offset: 3px; }

/* Seçenekli program: sınıf / seçenek seçimi */
.vp { margin: 0 0 16px; padding: 0; border: 0; min-width: 0; }
.vp__legend { padding: 0; margin-bottom: 10px; font-size: 13px; font-weight: 600; letter-spacing: .02em; color: var(--navy-700); }
.vp__opts { display: grid; grid-template-columns: repeat(auto-fit, minmax(96px, 1fr)); gap: 8px; }
.vp__opt { position: relative; display: block; margin: 0 !important; cursor: pointer; }
.vp__opt input { position: absolute; opacity: 0; inset: 0; width: 100%; height: 100%; margin: 0; cursor: pointer; }
.vp__opt span { display: flex; flex-direction: column; align-items: center; justify-content: center; min-height: 48px; padding: 8px 10px; text-align: center; font-weight: 600; font-size: 15px; color: var(--navy-900); background: #fff; border: 1.5px solid var(--cream-300); border-radius: var(--r); transition: border-color .15s, background .15s, color .15s; }
.vp__opt span small { font-size: 11px; font-weight: 500; color: var(--aqua-700); }
.vp__opt:hover span { border-color: var(--aqua-600); }
.vp__opt input:checked + span { background: var(--navy-900); border-color: var(--navy-900); color: var(--cream-50); }
.vp__opt input:checked + span small { color: var(--aqua-200); }
.vp__opt input:focus-visible + span { outline: 2px solid var(--aqua-600); outline-offset: 2px; }
.cdx-hero .vp { width: 100%; max-width: 560px; margin: 22px auto 18px; }
.cdx-hero .vp__legend { width: 100%; text-align: center; }
.cdx-hero .vp__legend { color: var(--aqua-200); }
.cdx-hero .vp__opt span { background: rgba(255, 255, 255, .06); border-color: rgba(194, 225, 225, .35); color: var(--cream-50); }
.cdx-hero .vp__opt:hover span { border-color: var(--aqua-300); }
.cdx-hero .vp__opt input:checked + span { background: var(--cream-50); border-color: var(--cream-50); color: var(--navy-900); }
.cdx-hero .vp__opt input:checked + span small { color: var(--aqua-700); }
@media (max-width: 480px) { .vp__opts { grid-template-columns: repeat(2, minmax(0, 1fr)); } }

/* Ana sayfa "Eğitimlerimiz": kurs sayısı ne olursa olsun satırlar boşluksuz hizalı.
   İlk kart ve tek kalan son kart tam satır (yatay), iki kalan son kart yarım yarım. */
@media (min-width: 721px) {
  .sp-grid-bento > .course-card-link.is-wide { grid-column: 1 / -1; }
  .sp-grid-bento > .course-card-link.is-wide .sp-card { flex-direction: row; }
  .sp-grid-bento > .course-card-link.is-wide .sp-card__img { flex: 0 0 58%; aspect-ratio: 16 / 9; min-height: 0; }
  .sp-grid-bento > .course-card-link.is-wide .sp-card__img img { position: absolute; inset: 0; z-index: 1; object-fit: contain; }
  .sp-grid-bento > .course-card-link.is-wide .sp-card__img::before { content: ""; position: absolute; inset: -24px; background: var(--card-bg, none) center / cover no-repeat; filter: blur(22px) brightness(.72) saturate(1.1); }
  .sp-grid-bento > .course-card-link.is-wide .sp-card__img::after { z-index: 2; }
  .sp-grid-bento > .course-card-link.is-wide .sp-card__tags { z-index: 3; }
  .sp-grid-bento > .course-card-link.is-wide .sp-card__body { padding: 36px 40px 32px; justify-content: center; }
  .sp-grid-bento > .course-card-link.is-wide .sp-card__title { font-size: clamp(1.6rem, 2.4vw, 2.2rem); margin-bottom: 12px; }
  .sp-grid-bento > .course-card-link.is-wide .sp-card__sum { font-size: 15px; -webkit-line-clamp: 4; }
}
@media (min-width: 1021px) {
  .sp-grid-bento { grid-template-columns: repeat(6, minmax(0, 1fr)); }
  .sp-grid-bento > .course-card-link { grid-column: span 2; }
  .sp-grid-bento > .course-card-link.is-half { grid-column: span 3; }
  .sp-grid-bento > .course-card-link.is-wide { grid-column: 1 / -1; }
}
