/* AbOnlinEnglish — Kendin Öğren seviye & ünite sayfaları (ingilizce-a1 … ingilizce-c2) */
*,*::before,*::after{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
:root{
  --navy:#0f1e3c;--blue:#1a3a6b;--acc:#e8a020;--text:#1e293b;--muted:#64748b;--border:#e2e8f0;--bg:#f4f6fb;
  --ok:#16a34a;--err:#dc2626;--r:12px;--shd:0 1px 8px rgba(15,30,60,.08);--shd-md:0 6px 24px rgba(15,30,60,.12);
  --lv:#3b82f6;--lvd:#1d4ed8;--lvl:#dbeafe;--hero:linear-gradient(135deg,#1e3760,#0f254a);
}
h1,h2,h3,.g-main-title,.sc b{font-variant-numeric:lining-nums}
body{font-family:'DM Sans',system-ui,-apple-system,sans-serif;color:var(--text);background:var(--bg);line-height:1.6;overflow-x:hidden}
a{color:inherit;text-decoration:none}
button{font-family:inherit;cursor:pointer}
img{max-width:100%;display:block}

/* ── Top nav ── */
.ko-nav{position:sticky;top:0;z-index:900;background:rgba(15,30,60,.97);backdrop-filter:blur(12px);border-bottom:1px solid rgba(255,255,255,.08)}
.ko-nav-in{max-width:1180px;margin:0 auto;height:58px;display:flex;align-items:center;gap:14px;padding:0 16px}
.ko-logo{display:flex;align-items:center;gap:9px;flex-shrink:0}
.ko-logo img{width:36px;height:36px;border-radius:50%;background:#fff}
.ko-logo span{font-weight:800;color:#fff;font-size:.95rem;letter-spacing:-.3px}
.ko-logo span b{color:var(--acc);font-weight:800}
.ko-lv{display:flex;gap:4px;overflow-x:auto;scrollbar-width:none}
.ko-lv::-webkit-scrollbar{display:none}
.ko-lv a{padding:5px 11px;border-radius:7px;font-size:.72rem;font-weight:800;color:rgba(255,255,255,.75);border:1px solid rgba(255,255,255,.18);letter-spacing:.4px;white-space:nowrap;transition:all .15s}
.ko-lv a:hover{color:#fff;border-color:rgba(255,255,255,.5)}
.ko-lv a.on{color:#fff;background:var(--lv);border-color:var(--lv)}
.ko-nav-r{margin-left:auto;display:flex;align-items:center;gap:8px}
.ko-nav-r a{font-size:.74rem;font-weight:600;color:rgba(255,255,255,.7);padding:6px 10px;border-radius:7px;white-space:nowrap}
.ko-nav-r a:hover{color:#fff;background:rgba(255,255,255,.08)}
.ko-nav-r a.cta{background:var(--acc);color:var(--navy);font-weight:800}
.ko-xp{font-size:.74rem;font-weight:800;color:#f59e0b;white-space:nowrap}
@media(max-width:900px){.ko-nav-r a:not(.cta){display:none}}
@media(max-width:560px){.ko-logo span{display:none}.ko-nav-r a.cta{display:none}.ko-nav-in{gap:10px}}

/* ── Layout ── */
.wrap{max-width:1180px;margin:0 auto;padding:0 16px}
.crumb{font-size:.74rem;color:var(--muted);padding:14px 0 0;display:flex;flex-wrap:wrap;gap:4px}
.crumb a{color:var(--blue);font-weight:600}
.crumb a:hover{text-decoration:underline}
.crumb span.sep{opacity:.5}

/* ── Hero ── */
.hero{background:var(--hero);border-radius:18px;margin:14px 0 0;padding:30px 30px 26px;color:#fff;position:relative;overflow:hidden}
.hero::after{content:'';position:absolute;inset:0;background:radial-gradient(ellipse 60% 70% at 88% 12%,rgba(255,255,255,.08),transparent);pointer-events:none}
.hero>*{position:relative;z-index:1}
.badge{display:inline-flex;align-items:center;gap:6px;font-size:.66rem;font-weight:800;text-transform:uppercase;letter-spacing:1px;padding:4px 11px;border-radius:50px;background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.22);margin-bottom:12px}
.hero h1{font-family:'Playfair Display',Georgia,serif;font-weight:900;font-size:clamp(1.55rem,3.6vw,2.4rem);line-height:1.15;margin-bottom:8px}
.hero .sub{font-size:.95rem;color:rgba(255,255,255,.78);font-weight:600;margin-bottom:10px}
.hero .intro{font-size:.88rem;color:rgba(255,255,255,.66);max-width:720px;line-height:1.75}
.chips{display:flex;flex-wrap:wrap;gap:6px;margin-top:16px}
.chip{font-size:.7rem;font-weight:700;padding:4px 10px;border-radius:50px;background:rgba(255,255,255,.1);color:rgba(255,255,255,.85)}
.dl{display:flex;flex-wrap:wrap;gap:10px;margin-top:20px}
.dl a{display:inline-flex;align-items:center;gap:8px;padding:11px 18px;border-radius:10px;font-weight:800;font-size:.84rem;transition:transform .15s,box-shadow .15s}
.dl a:hover{transform:translateY(-2px);box-shadow:0 8px 20px rgba(0,0,0,.25)}
.dl .pdf{background:#fff;color:var(--navy)}
.dl .doc{background:rgba(255,255,255,.12);color:#fff;border:1px solid rgba(255,255,255,.3)}
.dl .ico{font-size:1.1rem}
.dl small{font-weight:600;opacity:.6;font-size:.7rem}

/* ── Unit progress strip ── */
.ustrip{display:flex;flex-wrap:wrap;gap:6px;margin:14px 0 0}
.ustrip span{font-size:.7rem;font-weight:700;color:var(--muted);padding:4px 10px;border-radius:50px;border:1px solid var(--border);background:#fff}
.ustrip span.done{color:var(--ok);border-color:#86efac;background:#f0fdf4}
.ustrip span.done::after{content:' ✓'}

/* ── Tabs ── */
.tabs{position:sticky;top:58px;z-index:50;background:var(--bg);padding:14px 0 0;margin-top:6px}
.tabs-in{display:flex;gap:4px;overflow-x:auto;border-bottom:2px solid var(--border);scrollbar-width:none}
.tabs-in::-webkit-scrollbar{display:none}
.tab{padding:11px 16px;font-size:.8rem;font-weight:800;color:var(--muted);background:none;border:none;border-bottom:4px solid transparent;margin-bottom:-2px;white-space:nowrap;border-radius:9px 9px 0 0;transition:all .15s}
.tab:hover{color:var(--navy);background:rgba(15,30,60,.04)}
.tab.on{color:#fff}
.tab[data-t=vocab].on{background:#0284c7;border-bottom-color:#7dd3fc}
.tab[data-t=grammar].on{background:#7c3aed;border-bottom-color:#c4b5fd}
.tab[data-t=reading].on{background:#d97706;border-bottom-color:#fcd34d}
.tab[data-t=ex].on{background:#db2777;border-bottom-color:#f9a8d4}
.tab[data-t=write].on{background:#16a34a;border-bottom-color:#86efac}
.tab.done::after{content:' ✓';color:var(--ok)}
.tab.on.done::after{color:#fff}
.tb{font-size:.62rem;padding:2px 6px;border-radius:50px;background:var(--navy);color:#fff;margin-left:3px}
.panel{display:none;background:#fff;border:1px solid var(--border);border-top:none;border-radius:0 0 var(--r) var(--r);padding:24px;box-shadow:var(--shd)}
.panel.on{display:block}
.panel>h2{font-family:'Playfair Display',Georgia,serif;font-size:1.3rem;color:var(--navy);margin-bottom:12px}
@media(max-width:600px){.hero{padding:22px 18px;border-radius:14px}.panel{padding:16px 12px}.tab{padding:10px 11px;font-size:.72rem}}

/* ── Vocabulary ── */
.note{border-radius:var(--r);padding:11px 14px;margin-bottom:14px;font-size:.82rem}
.note.green{background:linear-gradient(135deg,#f0fdf4,#f0fdfa);border:1px solid #bbf7d0;color:#166534}
.note.blue{background:linear-gradient(135deg,#eff6ff,#f0f9ff);border:1px solid #bae6fd;color:#0369a1}
.note.purple{background:#faf5ff;border:1px solid #e9d5ff;color:#6b21a8}
.vtbl,.gtable{width:100%;border-collapse:collapse}
.vtbl thead tr,.gtable thead{background:var(--navy)}
.vtbl th,.gtable th{padding:9px 12px;text-align:left;font-size:.68rem;font-weight:700;color:rgba(255,255,255,.8);text-transform:uppercase;letter-spacing:.4px}
.vtbl td{padding:10px 12px;border-bottom:1px solid var(--border);font-size:.88rem;vertical-align:top}
.vtbl tr:hover td{background:#f8fafc}
.vtbl td.en{font-weight:700;color:var(--navy);width:42%}
.vtbl td.tr{color:#475569}
.vtbl .n{color:var(--muted);font-size:.72rem;font-weight:800;width:34px}
.tscroll{overflow-x:auto;-webkit-overflow-scrolling:touch;border:1px solid var(--border);border-radius:10px}

/* ── Grammar (orijinal sayfa stilleri) ── */
.grammar-intro{margin-bottom:18px}
.g-main-title{font-family:'Playfair Display',Georgia,serif;font-size:1.3rem;font-weight:900;color:var(--navy);margin-bottom:8px}
.g-intro-text{font-size:.9rem;color:#374151;line-height:1.75;background:#f8fafc;border-radius:10px;padding:12px 15px;border-left:4px solid var(--acc)}
.g-section-title{font-size:.95rem;font-weight:800;letter-spacing:.06em;color:var(--navy);margin:20px 0 9px;display:flex;align-items:center;gap:6px}
.g-section-title::after{content:'';flex:1;height:1px;background:var(--border)}
.gtable{border-radius:10px;overflow:hidden;border:1px solid var(--border);margin-bottom:14px;box-shadow:0 1px 6px rgba(15,30,60,.06)}
.gtable tbody tr{border-bottom:1px solid var(--border)}
.gtable tbody tr:hover{background:#f0f4ff}
.gtable td{padding:10px 12px;font-size:.86rem;vertical-align:top}
.gtable td:first-child{font-weight:700;color:var(--navy);background:#f8fafc}
.g-examples-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:10px;margin-bottom:12px}
.g-example-card{background:#f8fafc;border:1px solid var(--border);border-radius:10px;padding:14px}
.g-ex-label{font-size:.74rem;font-weight:800;letter-spacing:.08em;color:var(--muted);margin-bottom:8px;padding-bottom:6px;border-bottom:1px solid var(--border)}
.g-ex-line{font-size:.86rem;margin-bottom:5px;line-height:1.55}
.g-hi{background:#fef08a;border-radius:3px;padding:1px 4px;font-weight:700;color:#78350f}
.g-tr{color:#64748b;font-size:.8rem;font-style:italic}
.g-practice-prompts{display:flex;flex-direction:column;gap:8px}
.g-prompt{background:#f0f4ff;border:1px solid #c7d7fd;border-radius:8px;padding:10px 14px;font-size:.88rem;color:var(--navy);display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.g-blank{display:inline-block;min-width:50px;border-bottom:2px solid var(--navy);text-align:center;padding:0 4px;color:transparent}
.g-answer{margin-left:auto;background:var(--navy);color:#fff;border-radius:6px;padding:3px 11px;font-size:.75rem;font-weight:700;cursor:pointer;user-select:none}
.g-answer.hid{background:#c7d2fe;color:var(--navy)}
.gbox,.rw,.rule-warning{border-radius:var(--r);padding:12px 15px;margin:12px 0;font-size:.84rem;line-height:1.65;display:flex;gap:10px;align-items:flex-start}
.gbox-ico,.rw-i,.rule-warning-ico{font-size:1rem;flex-shrink:0;margin-top:1px}
.gbox-body{flex:1}
.gbox-title{font-size:.76rem;font-weight:800;letter-spacing:.08em;margin-bottom:4px;opacity:.75}
.gbox.important{background:#fff0f0;border:1px solid #fca5a5;border-left:4px solid #ef4444;color:#7f1d1d}
.gbox.mistake{background:#fff8f0;border:1px solid #fdba74;border-left:4px solid #f97316;color:#7c2d12}
.gbox.tip{background:#f0fdf4;border:1px solid #86efac;border-left:4px solid #22c55e;color:#14532d}
.gbox.exception{background:#fdf4ff;border:1px solid #d8b4fe;border-left:4px solid #a855f7;color:#4a1d96}
.gbox.confuse{background:#eff6ff;border:1px solid #93c5fd;border-left:4px solid #3b82f6;color:#1e3a8a}
.gbox.real{background:#f0fdfa;border:1px solid #5eead4;border-left:4px solid #0d9488;color:#134e4a}
.rw,.rule-warning{background:#fffbeb;border:1px solid #fde68a;border-left:4px solid #f59e0b;color:#92400e}
.gex{display:inline-block;background:#f0f4ff;border-radius:5px;padding:1px 7px;font-family:Georgia,serif;font-style:italic;color:var(--navy)}
.glink{display:flex;align-items:center;gap:10px;margin-top:18px;padding:13px 16px;border-radius:var(--r);background:var(--lvl);color:var(--lvd);font-weight:700;font-size:.86rem;border:1px solid transparent;transition:border-color .15s}
.glink:hover{border-color:var(--lv)}

/* ── Reading ── */
.r-card{border:1px solid var(--border);border-radius:var(--r);overflow:hidden}
.r-hdr{padding:12px 16px;border-bottom:1px solid var(--border);background:#fafbfc;display:flex;align-items:center;gap:8px}
.r-hdr h3{font-size:1rem;color:var(--navy)}
.rtext{padding:18px;font-family:Georgia,serif;font-size:.96rem;line-height:1.9}
.rtext p{margin-bottom:13px}
.rtext mark{background:#fef08a;border-radius:3px;padding:1px 3px;color:#78350f}
.comp{padding:16px;border-top:1px solid var(--border);background:#fafbfc}
.comp h3{font-size:.7rem;font-weight:800;text-transform:uppercase;letter-spacing:1px;color:var(--muted);margin-bottom:10px}
.cq{margin-bottom:12px}
.cq p{font-size:.88rem;font-weight:600}
.cq p b{display:inline-grid;place-items:center;width:20px;height:20px;border-radius:50%;background:var(--navy);color:#fff;font-size:.64rem;margin-right:6px}
.reveal{font-size:.72rem;font-weight:700;padding:4px 10px;border-radius:6px;margin-top:5px;border:1px solid var(--lv);color:var(--lvd);background:var(--lvl)}
.reveal:hover{background:var(--lv);color:#fff}
.ans{display:none;margin-top:6px;font-size:.84rem;color:#166534;background:#dcfce7;padding:7px 10px;border-radius:6px;border-left:3px solid var(--ok)}
.ans.show{display:block}
.done-btn{display:block;width:100%;margin-top:16px;padding:12px;border-radius:var(--r);font-weight:800;font-size:.86rem;border:2px solid #86efac;background:#f0fdf4;color:#166534}
.done-btn.done{background:#dcfce7;border-color:var(--ok)}

/* ── Exercises ── */
.score{display:flex;align-items:center;gap:14px;flex-wrap:wrap;border:1px solid var(--border);border-radius:var(--r);padding:12px 15px;margin-bottom:14px;background:#fff;position:sticky;top:112px;z-index:5;box-shadow:var(--shd)}
.sc{text-align:center}
.sc b{display:block;font-family:'Playfair Display',serif;font-size:1.4rem;color:var(--navy);line-height:1}
.sc b.xp{color:#f59e0b}
.sc small{font-size:.58rem;text-transform:uppercase;letter-spacing:1px;color:var(--muted)}
.sbar{flex:1;min-width:100px;height:8px;background:var(--border);border-radius:4px;overflow:hidden}
.sbar i{display:block;height:100%;width:0;background:linear-gradient(90deg,var(--lvd),var(--lv));transition:width .6s}
.sbtn{display:flex;gap:6px;margin-left:auto}
.sbtn button{padding:8px 14px;border-radius:8px;font-size:.78rem;font-weight:800;border:none}
.b-reset{background:var(--border);color:var(--text)}
.b-check{background:var(--navy);color:#fff}
.b-retry{background:#2563eb;color:#fff;display:none}
.b-retry.on{display:inline-block}
.q{border:1px solid var(--border);border-radius:var(--r);margin-bottom:10px;padding:12px 14px;transition:border-color .2s,background .2s}
.q.ok{border-color:#86efac;background:#f0fdf4}
.q.bad{border-color:#fca5a5;background:#fff5f5}
.q.retry{border-color:#93c5fd;background:#eff6ff}
.q-t{font-size:.9rem;font-weight:500;margin-bottom:8px;display:flex;gap:8px}
.q-t b{flex-shrink:0;width:24px;height:24px;border-radius:50%;background:var(--border);color:var(--muted);font-size:.68rem;display:grid;place-items:center}
.q.ok .q-t b{background:var(--ok);color:#fff}.q.bad .q-t b{background:var(--err);color:#fff}
.opts{display:flex;flex-wrap:wrap;gap:6px}
.opt{padding:8px 14px;border-radius:8px;border:1.5px solid var(--border);background:#fff;font-size:.85rem;transition:all .12s}
.opt:hover{border-color:var(--navy)}
.opt.sel{border-color:var(--navy);background:#eef2ff;font-weight:700}
.opt.good{border-color:var(--ok);background:#dcfce7;color:#166534;font-weight:800}
.opt.wrong{border-color:var(--err);background:#fee2e2;color:var(--err);font-weight:800;text-decoration:line-through}
.opt:disabled{cursor:default}
.fb{display:none;margin-top:8px;font-size:.8rem;line-height:1.5}
.fb.on{display:block}
.fb .g{color:#166534;font-weight:700}.fb .r{color:var(--err);font-weight:700}
.fb .e{color:var(--muted);font-style:italic;display:block;margin-top:2px}

/* ── Writing ── */
.wt{border:1px solid var(--border);border-radius:var(--r);margin-bottom:14px;overflow:hidden}
.wt h3{padding:11px 14px;border-bottom:1px solid var(--border);font-size:.9rem;color:var(--navy);display:flex;gap:8px;align-items:center;background:#fafbfc}
.wt h3 b{width:24px;height:24px;border-radius:50%;background:var(--navy);color:#fff;font-size:.7rem;display:grid;place-items:center}
.wt-b{padding:12px 14px}
.wt-p{font-size:.86rem;white-space:pre-line;margin-bottom:10px;line-height:1.7}
.wt textarea{width:100%;min-height:110px;padding:10px 12px;border:1.5px solid var(--border);border-radius:8px;font:inherit;font-size:.86rem;resize:vertical;outline:none}
.wt textarea:focus{border-color:var(--navy)}
.wc{font-size:.68rem;color:var(--muted);text-align:right;margin-top:3px}
.smp-b{margin-top:8px;padding:6px 12px;border-radius:7px;border:1.5px solid #e9d5ff;background:#faf5ff;color:#6b21a8;font-size:.74rem;font-weight:700}
.smp{display:none;margin-top:8px;padding:10px 12px;background:#fdf4ff;border-left:3px solid #a855f7;border-radius:7px;font-size:.84rem;color:#4c1d95;white-space:pre-line;line-height:1.7}
.smp.show{display:block}

/* ── After-unit navigation ── */
.sec{margin:28px 0}
.sec>h2{font-family:'Playfair Display',Georgia,serif;font-size:1.25rem;color:var(--navy);margin-bottom:12px}
.pn{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:24px}
.pn a{background:#fff;border:1px solid var(--border);border-radius:var(--r);padding:14px 16px;box-shadow:var(--shd);transition:transform .15s}
.pn a:hover{transform:translateY(-2px);border-color:var(--lv)}
.pn small{font-size:.66rem;font-weight:800;color:var(--muted);text-transform:uppercase;letter-spacing:.6px}
.pn strong{display:block;color:var(--navy);font-size:.92rem;margin-top:2px}
.pn .nx{text-align:right}
@media(max-width:560px){.pn{grid-template-columns:1fr}.pn .nx{text-align:left}}

/* ── Unit cards (level page & related) ── */
.ugrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:12px}
.uc{background:#fff;border:1px solid var(--border);border-radius:14px;padding:16px;box-shadow:var(--shd);display:flex;flex-direction:column;gap:6px;transition:transform .18s,box-shadow .18s;position:relative}
.uc:hover{transform:translateY(-3px);box-shadow:var(--shd-md)}
.uc.cur{border-color:var(--lv);box-shadow:0 0 0 2px var(--lvl)}
.uc .un{font-size:.66rem;font-weight:800;color:var(--lvd);text-transform:uppercase;letter-spacing:.6px}
.uc h3{font-size:1rem;color:var(--navy);line-height:1.3}
.uc h3 a::after{content:'';position:absolute;inset:0}
.uc p{font-size:.78rem;color:var(--muted);line-height:1.5}
.uc .ufoot{display:flex;gap:6px;margin-top:auto;padding-top:8px;position:relative;z-index:2}
.uc .ufoot a{font-size:.68rem;font-weight:800;padding:4px 9px;border-radius:6px;background:#f1f5f9;color:var(--navy)}
.uc .ufoot a:hover{background:var(--lvl)}
.uc .st{position:absolute;top:12px;right:12px;font-size:.9rem;display:none}
.uc.done .st{display:block}
.ubar{height:4px;border-radius:2px;background:var(--border);overflow:hidden;margin-top:6px}
.ubar i{display:block;height:100%;width:0;background:var(--lv)}

/* ── Level page ── */
.lv-grid{display:grid;grid-template-columns:1.4fr 1fr;gap:18px;margin-top:18px}
.box{background:#fff;border:1px solid var(--border);border-radius:14px;padding:20px;box-shadow:var(--shd)}
.box h2{font-family:'Playfair Display',Georgia,serif;font-size:1.15rem;color:var(--navy);margin-bottom:10px}
.box ul{list-style:none;display:flex;flex-direction:column;gap:7px}
.box li{font-size:.86rem;padding-left:24px;position:relative}
.box li::before{content:'✓';position:absolute;left:0;color:var(--ok);font-weight:900}
.box p{font-size:.88rem;color:#374151;line-height:1.75}
@media(max-width:820px){.lv-grid{grid-template-columns:1fr}}
.extra{display:flex;flex-wrap:wrap;gap:10px}
.extra a{flex:1 1 220px;background:#fff;border:1px solid var(--border);border-radius:12px;padding:14px;box-shadow:var(--shd);font-size:.86rem;font-weight:700;color:var(--navy);display:flex;gap:10px;align-items:center}
.extra a:hover{border-color:var(--lv)}
.extra a span{font-size:1.4rem}
.extra-disabled{flex:1 1 220px;background:#f3f4f6;border:1px solid var(--border);border-radius:12px;padding:14px;font-size:.86rem;font-weight:700;color:#9ca3af;display:flex;gap:10px;align-items:center;cursor:default}
.extra-disabled span{font-size:1.4rem;opacity:.6}
.faq details{background:#fff;border:1px solid var(--border);border-radius:12px;margin-bottom:8px;padding:0 16px}
.faq summary{padding:14px 0;font-weight:700;color:var(--navy);cursor:pointer;font-size:.92rem;list-style:none}
.faq summary::-webkit-details-marker{display:none}
.faq summary::before{content:'+';display:inline-block;width:20px;color:var(--lv);font-weight:900}
.faq details[open] summary::before{content:'–'}
.faq details p{font-size:.86rem;color:#374151;padding:0 0 14px 20px;line-height:1.7}
.faq a{color:var(--lvd);font-weight:700;text-decoration:underline}
.levels{display:flex;flex-wrap:wrap;gap:8px}
.levels a{padding:10px 16px;border-radius:10px;background:#fff;border:1px solid var(--border);font-weight:800;font-size:.84rem;color:var(--navy)}
.levels a:hover{border-color:var(--navy)}

/* ── Footer ── */
.ko-foot{background:var(--navy);color:rgba(255,255,255,.6);text-align:center;padding:30px 16px;margin-top:40px;font-size:.8rem;line-height:1.9}
.ko-foot strong{color:#fff}
.ko-foot a{color:rgba(255,255,255,.85);text-decoration:underline}

/* ── Toast / popup ── */
.toast{position:fixed;bottom:20px;right:20px;background:var(--navy);color:#fff;padding:11px 16px;border-radius:10px;font-size:.84rem;font-weight:700;box-shadow:0 8px 24px rgba(15,30,60,.3);transform:translateY(90px);opacity:0;transition:all .35s cubic-bezier(.34,1.56,.64,1);z-index:2000}
.toast.on{transform:none;opacity:1}
.cov{position:fixed;inset:0;background:rgba(15,30,60,.85);backdrop-filter:blur(6px);z-index:3000;display:flex;align-items:center;justify-content:center;padding:20px}
.ccard{background:#fff;border-radius:20px;padding:30px 26px;max-width:380px;width:100%;text-align:center;animation:pop .4s cubic-bezier(.34,1.56,.64,1)}
@keyframes pop{from{opacity:0;transform:scale(.85)}to{opacity:1;transform:none}}
.ccard .e{font-size:2.6rem}
.ccard h3{font-family:'Playfair Display',serif;font-size:1.4rem;color:var(--navy);margin:6px 0}
.ccard p{font-size:.86rem;color:var(--muted);margin-bottom:14px}
.ccard .cbtns{display:flex;gap:8px}
.ccard .cbtns a,.ccard .cbtns button{flex:1;padding:11px;border-radius:10px;font-weight:800;font-size:.84rem;border:none;background:var(--border);color:var(--text)}
.ccard .cbtns a{background:var(--navy);color:#fff}
@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important;scroll-behavior:auto!important}}

/* ═════ v2: renkli & etkileşimli görünüm ═════ */
:focus-visible{outline:3px solid var(--acc);outline-offset:2px;border-radius:6px}
.hero::before{content:'';position:absolute;width:320px;height:320px;right:-80px;bottom:-140px;border-radius:50%;background:radial-gradient(circle,rgba(255,255,255,.12),transparent 65%);pointer-events:none}
.hero .badge{background:var(--lv);border-color:transparent}

/* Ünite hedefleri */
.goals{margin:16px 0 0;background:#fff;border:1px solid var(--border);border-radius:16px;padding:18px 18px 12px;box-shadow:var(--shd)}
.goals h2{font-family:'Playfair Display',Georgia,serif;font-size:1.12rem;color:var(--navy);margin-bottom:12px}
.goals ul{list-style:none;display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:10px}
.goals li{display:flex;gap:10px;align-items:flex-start;border-radius:12px;padding:11px 12px;border:1px solid transparent}
.goals .gi{font-size:1.2rem;width:36px;height:36px;border-radius:10px;display:grid;place-items:center;flex-shrink:0;background:#fff}
.goals b{font-size:.74rem;text-transform:uppercase;letter-spacing:.7px}
.goals p{font-size:.82rem;color:#334155;line-height:1.5;margin-top:1px}
.goals .g0{background:#f0f9ff;border-color:#bae6fd}.goals .g0 b{color:#0369a1}
.goals .g1{background:#f5f3ff;border-color:#ddd6fe}.goals .g1 b{color:#6d28d9}
.goals .g2{background:#fffbeb;border-color:#fde68a}.goals .g2 b{color:#b45309}
.goals .g3{background:#f0fdf4;border-color:#bbf7d0}.goals .g3 b{color:#15803d}

/* İlerleme şeridi */
.ustrip{align-items:center;background:#fff;border:1px solid var(--border);border-radius:14px;padding:10px 12px;box-shadow:var(--shd)}
.ustrip .up-l{font-size:.74rem;color:var(--navy);margin-right:4px}
.ustrip .up-l i{font-style:normal;color:var(--lvd);background:var(--lvl);border-radius:50px;padding:1px 8px;margin-left:4px}
.up-bar{flex-basis:100%;height:6px;border-radius:4px;background:var(--border);overflow:hidden;margin-top:4px}
.up-bar i{display:block;height:100%;width:0;background:linear-gradient(90deg,#0284c7,#7c3aed,#d97706,#db2777,#16a34a);transition:width .5s}

/* Panel üst şeritleri — her sekmenin kendi rengi */
.panel{border-top:4px solid var(--pc,var(--lv))}
#p-vocab{--pc:#0284c7}#p-grammar{--pc:#7c3aed}#p-reading{--pc:#d97706}#p-ex{--pc:#db2777}#p-write{--pc:#16a34a}
.tab:not(.on)[data-t=vocab]{color:#0369a1}.tab:not(.on)[data-t=grammar]{color:#6d28d9}.tab:not(.on)[data-t=reading]{color:#b45309}.tab:not(.on)[data-t=ex]{color:#be185d}.tab:not(.on)[data-t=write]{color:#15803d}
.next-b{display:block;margin:18px 0 0 auto;padding:10px 16px;border-radius:10px;border:none;background:var(--navy);color:#fff;font-weight:800;font-size:.82rem;transition:transform .15s}
.next-b:hover{transform:translateX(3px)}

/* Kelime tablosu */
.vtbl .n span{display:inline-grid;place-items:center;width:24px;height:24px;border-radius:50%;background:#e0f2fe;color:#0369a1;font-size:.7rem}
.vtbl tbody tr:nth-child(even) td{background:#fafcff}
.say{margin-left:8px;border:1px solid #bae6fd;background:#f0f9ff;border-radius:50%;width:28px;height:28px;font-size:.8rem;vertical-align:middle;line-height:1}
.say:hover{background:#0284c7;border-color:#0284c7}
.say-all{margin-left:auto;border:1px solid #fcd34d;background:#fffbeb;color:#92400e;border-radius:8px;padding:5px 11px;font-size:.74rem;font-weight:800}
.say-all:hover{background:#fde68a}

/* Okuma: açıklama + kaynaklar */
.r-hdr{background:linear-gradient(90deg,#fffbeb,#fff)}
.r-legend{padding:8px 18px;font-size:.76rem;color:#92400e;background:#fffdf5;border-bottom:1px dashed #fde68a}
.r-legend mark{background:#fef08a;border-radius:3px;padding:0 4px;color:#78350f;font-weight:700}
.src{margin:0 18px 16px;padding:11px 14px;border-radius:10px;background:#f8fafc;border:1px solid var(--border);font-size:.78rem;color:#475569}
.src-note{font-style:italic}
.src-h{font-weight:800;color:var(--navy);margin-top:6px}
.src ul{margin:4px 0 0 18px}
.src li{margin:2px 0}
.src a{color:#1d4ed8;text-decoration:underline;word-break:break-word}
.comp h3{color:#b45309}

/* Alıştırmalar */
.q{border-left:4px solid #f9a8d4}
.q-t b{background:#fce7f3;color:#be185d}
.opt:hover{border-color:#db2777;background:#fdf2f8}
.opt.sel{border-color:#db2777;background:#fce7f3;color:#831843}
.b-check{background:#db2777}

/* Kartlar */
.uc{border-top:4px solid var(--lv)}
.uc.done{background:linear-gradient(180deg,#f0fdf4,#fff 60%)}

/* Alt bilgi ve çerez bandı */
.ck-open{background:none;border:none;color:rgba(255,255,255,.85);text-decoration:underline;font:inherit;font-size:inherit;padding:0}
.ck{position:fixed;left:16px;right:16px;bottom:16px;z-index:2500;max-width:720px;margin:0 auto;background:#fff;border:1px solid var(--border);border-radius:14px;box-shadow:0 12px 40px rgba(15,30,60,.25);padding:14px 16px;display:flex;gap:12px;align-items:center;flex-wrap:wrap}
.ck p{flex:1 1 320px;font-size:.82rem;color:#334155;line-height:1.55}
.ck p a{color:#1d4ed8;text-decoration:underline}
.ck-b{display:flex;gap:8px}
.ck-b button{padding:9px 16px;border-radius:9px;font-weight:800;font-size:.8rem;border:1px solid var(--border);background:#fff;color:var(--navy)}
.ck-b .ck-ok{background:var(--navy);color:#fff;border-color:var(--navy)}
.ck[hidden]{display:none}

/* Gizlilik sayfası */
.doc-page{background:#fff;border:1px solid var(--border);border-radius:16px;padding:26px;margin-top:16px;box-shadow:var(--shd)}
.doc-page h1{font-family:'Playfair Display',Georgia,serif;color:var(--navy);font-size:1.7rem;margin-bottom:10px}
.doc-page h2{font-size:1.02rem;color:var(--navy);margin:18px 0 6px}
.doc-page p,.doc-page li{font-size:.9rem;color:#334155;line-height:1.75}
.doc-page ul{margin-left:20px}
.doc-page a{color:#1d4ed8;text-decoration:underline}

@media print{.ko-nav,.tabs,.ustrip,.goals,.pn,.sec,.ko-foot,.dl,.next-b,.ck,.say,.say-all{display:none!important}.panel{display:block!important;border:none;box-shadow:none}}
