:root{--bg:#070b16;--bg2:#0d1426;--ink:#e8eefc;--muted:#93a0bd;--teal:#3ee6c3;--amber:#ffb84d;--pink:#ff5f9e;--card:rgba(255,255,255,.04);--border:rgba(255,255,255,.09)}
*{box-sizing:border-box}html{scroll-behavior:smooth}
body{margin:0;background:var(--bg);color:var(--ink);font-family:"Inter",system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;line-height:1.7;overflow-x:hidden}
body::before{content:"";position:fixed;inset:-20vmax;z-index:-1;background:radial-gradient(40vmax 40vmax at 15% 10%,rgba(62,230,195,.16),transparent 60%),radial-gradient(35vmax 35vmax at 85% 20%,rgba(255,95,158,.13),transparent 60%),radial-gradient(40vmax 40vmax at 60% 95%,rgba(255,184,77,.10),transparent 60%);animation:drift 22s ease-in-out infinite alternate}
@keyframes drift{to{transform:translate3d(3vmax,-2vmax,0) rotate(6deg)}}
header{position:sticky;top:0;z-index:20;display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;padding:14px 20px;background:rgba(7,11,22,.72);backdrop-filter:blur(14px);border-bottom:1px solid var(--border)}
.brand{color:#fff;font-weight:800;font-size:1.2rem;text-decoration:none;letter-spacing:-.01em}.brand span{color:var(--teal)}
nav a{color:var(--muted);text-decoration:none;margin-left:18px;font-size:.95rem;font-weight:500}nav a:hover{color:#fff}
#prog{position:fixed;top:0;left:0;height:3px;width:0;z-index:30;background:linear-gradient(90deg,var(--teal),var(--amber),var(--pink))}
a{color:var(--teal)}
.study{max-width:900px;margin:0 auto;padding:28px 16px 64px}
.crumb{color:var(--muted);font-size:.9rem;margin:0 0 10px}.crumb a{color:var(--muted)}
.study h1{font-size:clamp(1.9rem,5vw,3rem);line-height:1.08;letter-spacing:-.025em;margin:0 0 14px;background:linear-gradient(100deg,#fff 30%,var(--teal) 70%,var(--amber));-webkit-background-clip:text;background-clip:text;color:transparent}
.lead{font-size:1.15rem;color:#c7d0e6;margin:0 0 10px}
.byline{color:var(--muted);font-size:.95rem;margin:0 0 22px}.byline a{color:var(--amber);font-weight:700;text-decoration:none}
.yt{position:relative;aspect-ratio:16/9;border-radius:20px;overflow:hidden;cursor:pointer;box-shadow:0 0 0 1px var(--border),0 30px 80px -30px rgba(62,230,195,.55);transform:translateZ(0);transition:transform .3s}
.yt:hover{transform:translateY(-4px) scale(1.01)}.yt img{width:100%;height:100%;object-fit:cover;display:block;filter:saturate(1.1)}
.yt .play{position:absolute;inset:0;margin:auto;width:92px;height:92px;border-radius:50%;background:linear-gradient(135deg,var(--teal),#19b394);color:#04110d;font-size:34px;display:flex;align-items:center;justify-content:center;box-shadow:0 0 0 0 rgba(62,230,195,.6);animation:pulse 2.2s infinite}
@keyframes pulse{70%{box-shadow:0 0 0 26px rgba(62,230,195,0)}100%{box-shadow:0 0 0 0 rgba(62,230,195,0)}}
.yt iframe{width:100%;height:100%;border:0}
.cta{display:flex;flex-wrap:wrap;gap:12px;margin:22px 0}
.btn{display:inline-block;background:linear-gradient(100deg,var(--teal),#20c7a6);color:#04110d;text-decoration:none;font-weight:800;padding:12px 20px;border-radius:999px;box-shadow:0 10px 30px -12px rgba(62,230,195,.8);transition:transform .2s}
.btn:hover{transform:translateY(-2px) scale(1.03)}.btn.ghost{background:transparent;color:#fff;border:1px solid var(--border);box-shadow:none}
.card{background:var(--card);border:1px solid var(--border);border-radius:20px;padding:24px;margin:22px 0}
.card h2,.study>h2{font-size:1.35rem;letter-spacing:-.01em;margin:26px 0 8px;color:#fff}.card h2:first-child{margin-top:0}
.card p{color:#cfd7ea}
.tldr{position:relative;border-radius:20px;padding:22px 24px;margin:26px 0;background:linear-gradient(135deg,rgba(255,184,77,.16),rgba(255,95,158,.10));border:1px solid rgba(255,184,77,.35)}
.tldr .tag{display:inline-block;background:var(--amber);color:#1a1205;font-weight:900;font-size:.75rem;letter-spacing:.12em;padding:4px 10px;border-radius:99px;margin-bottom:8px}
.tldr p{margin:0;font-size:1.08rem;color:#fff}
.terms dl{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:12px;margin:0}
.terms dt{font-weight:800;color:var(--teal)}.terms dd{margin:0 0 6px;color:#cfd7ea;font-size:.95rem}
.terms dt,.terms dd{background:rgba(62,230,195,.06);padding:0 12px}.terms dt{padding-top:10px;border-radius:12px 12px 0 0}.terms dd{padding-bottom:12px;border-radius:0 0 12px 12px}
.chapters,.related{padding-left:20px;margin:0}.chapters li,.related li{margin:4px 0}
.quiz{border:1px solid rgba(62,230,195,.4);background:linear-gradient(160deg,rgba(62,230,195,.10),rgba(13,20,38,.6))}
.q{margin:20px 0}.qt{margin:0 0 10px;font-weight:700;color:#fff}
.opts{display:grid;gap:10px}.opt{text-align:left;font:inherit;color:#e8eefc;padding:13px 16px;border-radius:14px;border:1px solid var(--border);background:rgba(255,255,255,.03);cursor:pointer;transition:all .18s}
.opt:hover:not(:disabled){border-color:var(--teal);transform:translateX(5px);background:rgba(62,230,195,.08)}
.opt.good{background:rgba(34,197,94,.18);border-color:#22c55e}.opt.bad{background:rgba(239,68,68,.18);border-color:#ef4444;animation:shake .35s}
@keyframes shake{25%{transform:translateX(-6px)}75%{transform:translateX(6px)}}
.fb{margin:8px 0 0;color:#cfd7ea}.score .big{font-size:1.4rem;font-weight:900;color:var(--amber)}
.muted{color:var(--muted)}.refs h3{font-size:1rem;margin:16px 0 4px;color:#fff}.refs li{margin:4px 0;font-size:.95rem;color:#cfd7ea}
/* home */
.hero{display:grid;grid-template-columns:1.2fr .8fr;gap:28px;align-items:center;max-width:1100px;margin:0 auto;padding:44px 16px 10px}
.hero h1{font-size:clamp(2.2rem,6vw,4rem);line-height:1.02;letter-spacing:-.035em;margin:0 0 16px;background:linear-gradient(100deg,#fff 20%,var(--teal) 60%,var(--amber));-webkit-background-clip:text;background-clip:text;color:transparent}
.hero .maya{position:relative;border-radius:28px;overflow:hidden;aspect-ratio:4/5;box-shadow:0 30px 90px -30px rgba(255,95,158,.5);border:1px solid var(--border);transform:rotate(2deg)}
.hero .maya img{width:100%;height:100%;object-fit:cover}
.hero .bubble{position:absolute;left:-10px;bottom:22px;background:#fff;color:#0b1020;font-weight:800;padding:10px 14px;border-radius:16px 16px 16px 4px;box-shadow:0 10px 30px -10px #000;animation:float 4s ease-in-out infinite}
@keyframes float{50%{transform:translateY(-8px)}}
.stats{display:flex;gap:22px;flex-wrap:wrap;margin:18px 0 0}.stats b{display:block;font-size:1.6rem;color:#fff}.stats span{color:var(--muted);font-size:.85rem}
.lib{max-width:1100px;margin:0 auto;padding:10px 16px 60px}
.tools{position:sticky;top:62px;z-index:10;padding:12px 0;background:linear-gradient(var(--bg) 70%,transparent)}
#q{width:100%;font:inherit;color:#fff;background:rgba(255,255,255,.05);border:1px solid var(--border);border-radius:999px;padding:14px 20px;outline:none}#q:focus{border-color:var(--teal);box-shadow:0 0 0 4px rgba(62,230,195,.15)}
.chips{display:flex;gap:8px;flex-wrap:wrap;margin-top:10px}.chip{font:inherit;font-size:.85rem;color:#cfd7ea;background:rgba(255,255,255,.04);border:1px solid var(--border);border-radius:999px;padding:6px 14px;cursor:pointer}.chip.on{background:var(--teal);color:#04110d;border-color:var(--teal);font-weight:800}
.meter{margin:14px 0 4px;display:flex;align-items:center;gap:12px;color:var(--muted);font-size:.9rem}.meter i{flex:1;height:8px;border-radius:99px;background:rgba(255,255,255,.07);overflow:hidden}.meter i b{display:block;height:100%;width:0;background:linear-gradient(90deg,var(--teal),var(--amber));transition:width .6s}
.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:16px;margin-top:14px}
.tile{position:relative;display:block;background:var(--card);border:1px solid var(--border);border-radius:18px;overflow:hidden;text-decoration:none;color:var(--ink);transition:transform .25s,box-shadow .25s,border-color .25s}
.tile:hover{transform:translateY(-6px) rotate(-.4deg);border-color:rgba(62,230,195,.5);box-shadow:0 24px 50px -24px rgba(62,230,195,.6)}
.tile img{width:100%;aspect-ratio:16/9;object-fit:cover;display:block}.tile span{display:block;padding:12px 14px 4px;font-weight:700}.tile small{display:block;padding:0 14px 14px;color:var(--muted)}
.tile .done{position:absolute;top:10px;right:10px;background:var(--amber);color:#1a1205;font-weight:900;font-size:.75rem;padding:4px 10px;border-radius:99px;display:none}.tile.mastered .done{display:block}
.confetti{position:fixed;top:-20px;font-size:22px;z-index:50;animation:fall 2.2s linear forwards;pointer-events:none}@keyframes fall{to{transform:translateY(105vh) rotate(540deg);opacity:.6}}
footer{text-align:center;color:var(--muted);font-size:.85rem;padding:30px 16px;border-top:1px solid var(--border)}footer a{color:var(--muted)}
@media(max-width:760px){body::before{animation:none}header{backdrop-filter:none;background:#070b16}.hero{grid-template-columns:1fr}.hero .maya{max-width:320px;margin:0 auto;transform:none}.tools{top:56px}}
@media (prefers-reduced-motion:reduce){*,body::before{animation:none!important;transition:none!important}}
