@font-face{font-family:Kalameh;src:url('kalameh.woff2') format('woff2');font-display:swap}*{box-sizing:border-box}:root{color-scheme:light;--bg:#f7faf9;--surface:#fff;--text:#142b32;--muted:#50686e;--line:#d9e5e1;--accent:#116c60;--button:#fff}:root[data-theme=dark]{color-scheme:dark;--bg:#0c1720;--surface:#13232c;--text:#eef5f4;--muted:#b2c7c6;--line:#2a4047;--accent:#76cebb;--button:#0c1720}body{margin:0;background:var(--bg);color:var(--text);font:16px/1.75 Kalameh,Tahoma,sans-serif}a{color:inherit;text-decoration:none}button,input{font:inherit}button,a,input{touch-action:manipulation}a:focus-visible,button:focus-visible,input:focus-visible,summary:focus-visible{outline:3px solid var(--accent);outline-offset:4px}header{display:flex;align-items:center;gap:16px;flex-wrap:wrap;max-width:1240px;margin:auto;padding:18px 24px;border-bottom:1px solid var(--line)}.brand{margin-inline-end:auto;display:flex;align-items:center;min-height:44px}.brand img{width:148px;height:auto}.logo-dark{display:none}[data-theme=dark] .logo-light{display:none}[data-theme=dark] .logo-dark{display:block}nav{display:flex;gap:14px;flex-wrap:wrap}nav a{min-height:44px;display:inline-flex;align-items:center;font-size:14px}nav [aria-current]{color:var(--accent);border-bottom:2px solid var(--accent)}button{cursor:pointer;min-height:44px;padding:7px 16px;border:1px solid var(--line);background:var(--surface);color:var(--text);border-radius:7px}button:hover,a:hover{color:var(--accent)}main{max-width:1180px;margin:auto;padding:32px 24px}.intro{padding:16px 0 24px;max-width:900px}.eyebrow{color:var(--accent);font-weight:bold;margin:0}h1{font-size:clamp(26px,4.4vw,42px);line-height:1.35;margin:10px 0 14px}h2{font-size:22px;margin:0 0 16px}h3{font-size:17px;line-height:1.5;margin:12px 0 6px}.intro>p:not(.eyebrow){color:var(--muted)}#progress{font-size:14px;margin:0}.toolbar{max-width:620px;display:grid;gap:8px}input{min-height:48px;background:var(--surface);color:var(--text);border:1px solid var(--line);border-radius:7px;padding:10px 14px;width:100%}.categories{display:flex;gap:10px;flex-wrap:wrap;margin:20px 0 32px}.categories button[aria-pressed=true]{background:var(--accent);color:var(--button);border-color:var(--accent)}.lesson-list{display:grid;grid-template-columns:minmax(0,1fr);gap:36px}.lesson{border-top:1px solid var(--line);padding-top:24px;min-width:0}.lesson .meta{font-size:13px;color:var(--muted);margin:0}.player{display:block;background:#0c1720;width:100%;max-height:70vh;aspect-ratio:9/16;object-fit:contain;border-radius:8px}.lesson-links{display:flex;flex-wrap:wrap;gap:20px;color:var(--accent);margin:12px 0}.lesson-links a{min-height:44px;display:flex;align-items:center;text-decoration:underline;text-underline-offset:5px}.lesson details{border-top:1px solid var(--line);padding-top:12px}.lesson summary{cursor:pointer;min-height:44px}.lesson ol{padding-inline-start:24px;color:var(--muted)}.lesson li{margin:9px 0}.roadmap{margin-top:64px;border-top:1px solid var(--line);padding-top:24px}.roadmap-head{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:6px 16px;margin-bottom:4px}.roadmap-head h2{margin:0}.roadmap-head p{margin:0;color:var(--muted);font-size:14px}.curriculum{list-style:none;margin:16px 0 0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.step{position:relative;display:grid;grid-template-columns:34px 1fr;grid-template-areas:"n name" "n cnt" "bar bar";align-items:center;column-gap:12px;row-gap:2px;width:100%;height:100%;min-height:76px;padding:12px 14px;text-align:start;border:1px solid var(--line);border-radius:10px;background:var(--surface);color:var(--muted)}.step.ready .name{color:var(--text)}.step.ready{opacity:1;cursor:pointer;border-color:color-mix(in srgb,var(--accent) 45%,var(--line))}.step.ready:hover{border-color:var(--accent);color:var(--text)}.step .num{grid-area:n;display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:var(--bg);border:1px solid var(--line);font-size:13px;color:var(--muted)}.step.ready .num{background:var(--accent);border-color:var(--accent);color:var(--button)}.step .name{grid-area:name;font-size:14.5px;font-weight:bold;line-height:1.5}.step .cnt{grid-area:cnt;font-size:12.5px;color:var(--muted)}.step .bar{grid-area:bar;display:block;height:4px;margin-top:8px;border-radius:4px;background:var(--line);overflow:hidden}.step .bar i{display:block;height:100%;background:var(--accent)}footer{max-width:1180px;margin:24px auto;padding:20px 24px;border-top:1px solid var(--line);color:var(--muted);font-size:13px}#message{color:var(--muted)}@media(min-width:760px){.lesson-list{grid-template-columns:repeat(2,minmax(0,1fr))}.curriculum{grid-template-columns:repeat(3,minmax(0,1fr))}.player{max-height:750px}.intro{padding-top:48px}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}
