/* ============================================================
   Online Koçunuz — "TYT Puan Hesaplama" sayfası stilleri
   Kaynak: design_system/standalone/tyt-puan-hesaplama.html
   Tüm kurallar .okt-tyt-puan-hesaplama altına scope'landı.
   Token'lar globalde (style.css): var(--border), var(--ink-700),
   --primary-*, --accent-*, --fg-muted, --ink-10, --font-mono vb.
   @keyframes ve helper sınıflar (page-hero, hero-orbit, float-chip,
   grad-text, btn, btn-accent, btn-ghost-dark) globaldedir.
   Mobil öncelikli.
   ============================================================ */

/* ---- HERO ---- */
.okt-tyt-puan-hesaplama .okt-typ-hero{ overflow:hidden; }
.okt-tyt-puan-hesaplama .okt-typ-chip-1{ top:32%; left:2%; animation:float-up 8s ease-in-out infinite; }
.okt-tyt-puan-hesaplama .okt-typ-chip-2{ top:44%; right:2%; animation:float-up 9s ease-in-out infinite; animation-delay:.8s; }

.okt-tyt-puan-hesaplama .okt-typ-pill{
  display:inline-block; font-size:12px; font-weight:600; line-height:1;
  padding:7px 13px; border-radius:999px;
  color:var(--primary-700); background:var(--primary-50);
  border:1px solid var(--primary-200);
}
.okt-tyt-puan-hesaplama .okt-typ-h1{ margin:12px 0 10px; color:var(--ink-900); max-width:820px; }
.okt-tyt-puan-hesaplama .okt-typ-lead{ max-width:680px; color:var(--ink-700); }
.okt-tyt-puan-hesaplama .okt-typ-lead strong{ color:var(--ink-900); }

/* ---- GÖVDE GRID ---- */
.okt-tyt-puan-hesaplama .okt-typ-main{ padding:32px 24px 80px; background:#fff; }

.okt-tyt-puan-hesaplama .okt-typ-grid{
  display:grid;
  grid-template-columns:1fr;
  gap:24px;
  align-items:flex-start;
}
@media (min-width:980px){
  .okt-tyt-puan-hesaplama .okt-typ-grid{
    grid-template-columns:minmax(0,1fr) minmax(0,330px);
    gap:34px;
  }
}
.okt-tyt-puan-hesaplama .okt-typ-left{ min-width:0; }

/* ---- SAĞ YAN PANEL ---- */
.okt-tyt-puan-hesaplama .okt-typ-side{
  display:flex; flex-direction:column; gap:14px;
  position:relative; top:0;
}
@media (min-width:980px){
  .okt-tyt-puan-hesaplama .okt-typ-side{ position:sticky; top:88px; align-self:start; }
}

/* ============================================================
   HESAPLAMA ARACI
   ============================================================ */
.okt-tyt-puan-hesaplama .okt-typ-tool{
  background:#fff; border:1px solid var(--border); border-radius:14px;
  padding:22px; box-shadow:0 4px 18px -8px rgba(11,15,26,.08); margin-bottom:32px;
}

/* Mod sekmeleri */
.okt-tyt-puan-hesaplama .okt-typ-mode{
  display:flex; gap:4px; margin-bottom:14px;
  background:var(--ink-10); padding:4px; border-radius:9px;
}
.okt-tyt-puan-hesaplama .okt-typ-mode button{
  flex:1; padding:8px; border:0; background:transparent;
  color:var(--ink-700); font-size:12px; font-weight:700;
  border-radius:6px; cursor:pointer; font-family:inherit;
}
.okt-tyt-puan-hesaplama .okt-typ-mode button.is-active{
  background:#fff; color:var(--primary-700); box-shadow:0 1px 3px rgba(11,15,26,.06);
}

/* D/Y başlık satırı */
.okt-tyt-puan-hesaplama .okt-typ-head{
  display:grid; grid-template-columns:minmax(0,1fr) 60px 60px 56px; gap:6px;
  padding:6px 0; border-bottom:2px solid var(--ink-900);
}
.okt-tyt-puan-hesaplama .okt-typ-head > div{
  font-size:10.5px; font-weight:800; color:var(--fg-muted); text-transform:uppercase;
}
.okt-tyt-puan-hesaplama .okt-typ-head .d-c{ text-align:center; }
.okt-tyt-puan-hesaplama .okt-typ-head .d-net{ text-align:right; color:var(--primary-700); }

/* D/Y satırı */
.okt-tyt-puan-hesaplama .okt-typ-row{
  display:grid; grid-template-columns:minmax(0,1fr) 60px 60px 56px; gap:6px;
  align-items:center; padding:7px 0; border-bottom:1px solid var(--ink-10);
}
/* Direkt net satırı */
.okt-tyt-puan-hesaplama .okt-typ-row-net{
  display:grid; grid-template-columns:minmax(0,1fr) 100px; gap:8px;
  align-items:center; padding:9px 0; border-bottom:1px solid var(--ink-10);
}
.okt-tyt-puan-hesaplama .okt-typ-row label,
.okt-tyt-puan-hesaplama .okt-typ-row-net label{
  font-size:13px; font-weight:600; color:var(--ink-900); line-height:1.25;
}
.okt-tyt-puan-hesaplama .okt-typ-row .max,
.okt-tyt-puan-hesaplama .okt-typ-row-net .max{
  font-size:10.5px; color:var(--fg-muted); font-weight:500;
}

.okt-tyt-puan-hesaplama .okt-typ-input{
  width:100%; height:32px; padding:0 6px;
  border:1px solid var(--border); border-radius:6px;
  font-size:13px; font-family:var(--font-mono); text-align:center; outline:none;
}
.okt-tyt-puan-hesaplama .okt-typ-input-net{ height:36px; }
.okt-tyt-puan-hesaplama .okt-typ-input:focus{
  border-color:var(--primary-500); box-shadow:0 0 0 3px var(--primary-100);
}
.okt-tyt-puan-hesaplama .okt-typ-input::-webkit-outer-spin-button,
.okt-tyt-puan-hesaplama .okt-typ-input::-webkit-inner-spin-button{ -webkit-appearance:none; margin:0; }
.okt-tyt-puan-hesaplama .okt-typ-input[type=number]{ -moz-appearance:textfield; appearance:textfield; }

.okt-tyt-puan-hesaplama .okt-typ-net{
  font-size:13.5px; font-weight:800; color:var(--primary-700);
  text-align:right; font-family:var(--font-mono);
}

/* Sonuç kutusu */
.okt-tyt-puan-hesaplama .okt-typ-result{
  margin-top:18px; padding:18px;
  background:linear-gradient(135deg,var(--primary-50),#fff);
  border:1px solid var(--primary-200); border-radius:10px;
}
.okt-tyt-puan-hesaplama .okt-typ-result .l{
  font-size:11px; font-weight:800; color:var(--primary-700);
  text-transform:uppercase; letter-spacing:.08em;
}
.okt-tyt-puan-hesaplama .okt-typ-result .v{
  font-size:38px; font-weight:800; color:var(--ink-900);
  font-family:var(--font-mono); letter-spacing:-0.02em; margin-top:2px; line-height:1;
}
.okt-tyt-puan-hesaplama .okt-typ-result .b{ font-size:11.5px; color:var(--fg-muted); margin-top:4px; }

/* Baraj rozeti */
.okt-tyt-puan-hesaplama .okt-typ-baraj{
  margin-top:10px; padding:10px 12px; border-radius:8px; font-size:12.5px; line-height:1.5;
}
.okt-tyt-puan-hesaplama .okt-typ-baraj.ok{ background:#E6F6EC; color:#156E3C; border:1px solid #BCE0CC; }
.okt-tyt-puan-hesaplama .okt-typ-baraj.no{ background:#FCE9EC; color:#99213A; border:1px solid #F0BFC8; }

/* Paylaş / çapraz linkler */
.okt-tyt-puan-hesaplama .okt-typ-share{
  display:flex; flex-direction:column; gap:6px; margin-top:14px;
}
.okt-tyt-puan-hesaplama .okt-typ-share a{
  font-size:12.5px; color:var(--primary-700); font-weight:600; text-decoration:none;
  padding:9px 12px; background:#fff; border:1px solid var(--primary-200); border-radius:7px;
  display:flex; align-items:center; justify-content:space-between;
}
.okt-tyt-puan-hesaplama .okt-typ-share a:hover{ background:var(--primary-50); }
.okt-tyt-puan-hesaplama .okt-typ-share a.primary{
  background:var(--primary-700); color:#fff; border-color:var(--primary-700);
}

/* ============================================================
   SEO İÇERİK
   ============================================================ */
.okt-tyt-puan-hesaplama .okt-typ-content h2{
  color:var(--ink-900); font-size:24px; margin:0 0 12px; letter-spacing:-0.01em;
}
.okt-tyt-puan-hesaplama .okt-typ-content h2:not(:first-child){ margin-top:36px; }
.okt-tyt-puan-hesaplama .okt-typ-content p{
  font-size:15.5px; color:var(--ink-700); line-height:1.75; margin:0 0 12px;
}
.okt-tyt-puan-hesaplama .okt-typ-content ul{
  padding-left:18px; font-size:15px; color:var(--ink-700); line-height:1.8; margin:0 0 14px;
}
.okt-tyt-puan-hesaplama .okt-typ-content strong{ color:var(--ink-900); }
.okt-tyt-puan-hesaplama .okt-typ-content a{
  color:var(--primary-700); text-decoration:underline; font-weight:600;
}

/* Formül kutusu */
.okt-tyt-puan-hesaplama .okt-typ-formula{
  padding:16px 18px; background:var(--ink-10); border-left:3px solid var(--primary-700);
  border-radius:8px; margin:12px 0; font-family:var(--font-mono);
  font-size:13.5px; color:var(--ink-900); line-height:1.7;
}

/* Örnek kutusu */
.okt-tyt-puan-hesaplama .okt-typ-example{
  padding:14px 16px; background:#fff; border:1px dashed var(--border); border-radius:8px;
  font-size:14px; color:var(--ink-700); margin:10px 0; line-height:1.65;
  transition:transform 180ms var(--ease-out), box-shadow 180ms var(--ease-out);
}
.okt-tyt-puan-hesaplama .okt-typ-example:hover{
  transform:translateY(-3px); box-shadow:0 16px 34px -20px rgba(11,15,26,.2);
}
.okt-tyt-puan-hesaplama .okt-typ-example strong{ color:var(--ink-900); }

/* Katsayı tablosu */
.okt-tyt-puan-hesaplama .okt-typ-katsayilar{
  margin:14px 0; border:1px solid var(--border); border-radius:10px; overflow:hidden;
}
.okt-tyt-puan-hesaplama .okt-typ-katsayilar table{
  width:100%; border-collapse:collapse; font-size:14px;
}
.okt-tyt-puan-hesaplama .okt-typ-katsayilar th{
  background:var(--ink-10); text-align:left; padding:10px 14px;
  font-size:11px; font-weight:800; color:var(--fg-muted);
  text-transform:uppercase; letter-spacing:.06em;
}
.okt-tyt-puan-hesaplama .okt-typ-katsayilar td{
  padding:10px 14px; border-top:1px solid var(--border); color:var(--ink-700);
}
.okt-tyt-puan-hesaplama .okt-typ-katsayilar td:first-child{ font-weight:700; color:var(--ink-900); }
.okt-tyt-puan-hesaplama .okt-typ-katsayilar td.num{ font-family:var(--font-mono); text-align:right; }

/* SSS */
.okt-tyt-puan-hesaplama .okt-typ-faq details{ border-bottom:1px solid var(--border); padding:14px 0; }
.okt-tyt-puan-hesaplama .okt-typ-faq details[open] summary{ color:var(--primary-700); }
.okt-tyt-puan-hesaplama .okt-typ-faq summary{
  font-size:15.5px; font-weight:700; color:var(--ink-900); cursor:pointer;
  list-style:none; display:flex; justify-content:space-between; align-items:center; gap:14px;
}
.okt-tyt-puan-hesaplama .okt-typ-faq summary::-webkit-details-marker{ display:none; }
.okt-tyt-puan-hesaplama .okt-typ-faq summary::after{
  content:'+'; font-size:22px; font-weight:300; color:var(--fg-muted);
}
.okt-tyt-puan-hesaplama .okt-typ-faq details[open] summary::after{ content:'−'; }
.okt-tyt-puan-hesaplama .okt-typ-faq details p{
  margin:10px 0 0; font-size:14.5px; line-height:1.75; color:var(--ink-700);
}

/* Disclaimer */
.okt-tyt-puan-hesaplama .okt-typ-disclaimer{
  margin-top:16px; padding:14px 16px; background:var(--accent-100);
  border:1px solid var(--accent-300); border-radius:10px;
  font-size:13.5px; color:var(--accent-900); line-height:1.65;
}

/* İlgili araçlar */
.okt-tyt-puan-hesaplama .okt-typ-related-wrap{ margin-top:36px; }
.okt-tyt-puan-hesaplama .okt-typ-related-wrap h2{ margin-top:0; }
.okt-tyt-puan-hesaplama .okt-typ-related{
  margin-top:14px; display:grid;
  grid-template-columns:repeat(auto-fit,minmax(190px,1fr)); gap:10px;
}
.okt-tyt-puan-hesaplama .okt-typ-related a{
  display:block; padding:14px 16px; background:#fff; border:1px solid var(--border);
  border-radius:10px; text-decoration:none; color:var(--ink-900);
}
.okt-tyt-puan-hesaplama .okt-typ-related a:hover{
  border-color:var(--primary-500); background:var(--primary-50);
}
.okt-tyt-puan-hesaplama .okt-typ-related a .l{ display:block; font-size:14px; font-weight:700; margin-bottom:2px; }
.okt-tyt-puan-hesaplama .okt-typ-related a .d{ display:block; font-size:11.5px; color:var(--fg-muted); }

/* İçerik içi koyu CTA */
.okt-tyt-puan-hesaplama .okt-typ-inline-cta{
  margin-top:36px; padding:28px;
  background:linear-gradient(135deg,#0B0F1A,#1A1F2E);
  color:#fff; border-radius:14px;
}
.okt-tyt-puan-hesaplama .okt-typ-inline-cta h2{ color:#fff; margin-top:0; font-size:22px; }
.okt-tyt-puan-hesaplama .okt-typ-inline-cta p{ color:rgba(255,255,255,.78); font-size:14.5px; }
.okt-tyt-puan-hesaplama .okt-typ-inline-cta-btns{ display:flex; gap:10px; flex-wrap:wrap; margin-top:14px; }

/* ============================================================
   YAN PANEL — KOÇLUK PROMO
   ============================================================ */
.okt-tyt-puan-hesaplama .okt-typ-promo{
  background:linear-gradient(135deg,#3B5BFF,#1E3AE2);
  border-radius:14px; padding:20px; color:#fff; position:relative; overflow:hidden;
}
.okt-tyt-puan-hesaplama .okt-typ-promo::after{
  content:''; position:absolute; top:-50px; right:-50px; width:170px; height:170px;
  border-radius:50%; background:radial-gradient(circle, rgba(255,255,255,.18), transparent 65%);
  pointer-events:none;
}
.okt-tyt-puan-hesaplama .okt-typ-promo > *{ position:relative; }
.okt-tyt-puan-hesaplama .okt-typ-promo-eyebrow{
  font-size:10px; font-weight:800; letter-spacing:.12em; text-transform:uppercase;
  color:rgba(255,255,255,.85); margin-bottom:6px;
}
.okt-tyt-puan-hesaplama .okt-typ-promo-stat{ display:flex; align-items:baseline; gap:4px; }
.okt-tyt-puan-hesaplama .okt-typ-promo-stat .n{
  font-size:40px; font-weight:800; letter-spacing:-0.03em; color:#fff;
  line-height:1; font-family:var(--font-mono);
}
.okt-tyt-puan-hesaplama .okt-typ-promo-stat .p{ font-size:22px; font-weight:800; color:#C6F25A; }
.okt-tyt-puan-hesaplama .okt-typ-promo-sub{
  font-size:12.5px; color:rgba(255,255,255,.85); margin-top:5px; line-height:1.5;
}
.okt-tyt-puan-hesaplama .okt-typ-promo-list{ margin-top:16px; display:flex; flex-direction:column; gap:8px; }
.okt-tyt-puan-hesaplama .okt-typ-promo-list > div{
  display:flex; align-items:center; gap:9px;
  font-size:12.5px; color:rgba(255,255,255,.92); font-weight:600;
}
.okt-tyt-puan-hesaplama .okt-typ-promo-list .ck{
  flex:none; width:18px; height:18px; border-radius:50%;
  background:rgba(198,242,90,.18); color:#C6F25A;
  display:flex; align-items:center; justify-content:center; font-size:11px; font-weight:800;
}
.okt-tyt-puan-hesaplama .okt-typ-promo-foot{
  margin-top:16px; padding-top:14px; border-top:1px solid rgba(255,255,255,.18);
}
.okt-tyt-puan-hesaplama .okt-typ-promo-foot p{
  font-size:12.5px; color:rgba(255,255,255,.85); line-height:1.55; margin:0 0 12px;
}
.okt-tyt-puan-hesaplama .okt-typ-promo-btn{
  display:inline-block; padding:9px 14px; background:#C6F25A; color:#0B0F1A;
  border-radius:8px; font-size:13px; font-weight:700; text-decoration:none;
}

/* ============================================================
   ALT CTA BANDI
   ============================================================ */
.okt-tyt-puan-hesaplama .okt-typ-cta-band{
  position:relative; overflow:hidden; padding:76px 24px;
  background:linear-gradient(135deg,#0B0F1A 0%,#14233F 55%,#1B1030 100%);
  color:#fff; text-align:center;
}
.okt-tyt-puan-hesaplama .okt-typ-cta-band::before{
  content:''; position:absolute; top:-140px; left:50%; transform:translateX(-50%);
  width:620px; height:620px; border-radius:50%;
  background:radial-gradient(circle, rgba(59,91,255,.18), transparent 60%); pointer-events:none;
}
.okt-tyt-puan-hesaplama .okt-typ-cta-band::after{
  content:''; position:absolute; bottom:-180px; right:-90px; width:380px; height:380px;
  border-radius:50%; background:radial-gradient(circle, rgba(198,242,90,.12), transparent 60%);
  pointer-events:none;
}
.okt-tyt-puan-hesaplama .okt-typ-cta-band .container{ position:relative; }
.okt-tyt-puan-hesaplama .okt-typ-cta-pill{
  display:inline-block; font-size:11px; font-weight:800; letter-spacing:.14em;
  text-transform:uppercase; color:#C6F25A; margin-bottom:14px;
  padding:5px 12px; border:1px solid rgba(198,242,90,.3); border-radius:999px;
}
.okt-tyt-puan-hesaplama .okt-typ-cta-title{
  font-size:clamp(26px,4vw,40px); font-weight:800; letter-spacing:-0.02em; line-height:1.12;
  margin:0 auto 14px; max-width:760px; color:#fff;
}
.okt-tyt-puan-hesaplama .okt-typ-cta-title .grad{
  background:linear-gradient(90deg,#8FA5FF,#C6F25A);
  -webkit-background-clip:text; background-clip:text;
  -webkit-text-fill-color:transparent; color:transparent;
}
.okt-tyt-puan-hesaplama .okt-typ-cta-lead{
  font-size:16px; color:rgba(255,255,255,.75); line-height:1.6;
  max-width:620px; margin:0 auto 38px;
}

.okt-tyt-puan-hesaplama .okt-typ-steps{
  display:grid; grid-template-columns:1fr; gap:16px;
  max-width:840px; margin:0 auto 36px; text-align:left;
}
@media (min-width:760px){
  .okt-tyt-puan-hesaplama .okt-typ-steps{ grid-template-columns:repeat(3,1fr); }
}
.okt-tyt-puan-hesaplama .okt-typ-step{
  background:rgba(255,255,255,.04); border:1px solid rgba(255,255,255,.09);
  border-radius:14px; padding:22px 18px;
}
.okt-tyt-puan-hesaplama .okt-typ-step .n{
  width:34px; height:34px; border-radius:50%; background:#C6F25A; color:#0B0F1A;
  font-weight:800; font-size:15px; display:flex; align-items:center; justify-content:center;
  margin-bottom:14px; font-family:var(--font-mono);
}
.okt-tyt-puan-hesaplama .okt-typ-step .t{ font-size:16px; font-weight:700; color:#fff; margin-bottom:6px; }
.okt-tyt-puan-hesaplama .okt-typ-step .d{ font-size:13px; color:rgba(255,255,255,.66); line-height:1.55; }

.okt-tyt-puan-hesaplama .okt-typ-cta-btns{
  display:flex; gap:12px; justify-content:center; flex-wrap:wrap;
}
