:root{--bg:#070a12;--bg-2:#0f172a;--bg-3:#111827;--surface:#1e293b;--surface-2:#273449;--line:hsla(0,0%,100%,.08);--line-2:#334155;--fg:#f8fafc;--fg-2:#cbd5e1;--fg-3:#94a3b8;--fg-4:#64748b;--accent:#facc15;--accent-ink:#0b1020;--hot:#ef4444;--ai-grad:linear-gradient(135deg,#6366f1,#8b5cf6);--gold:#facc15;--hairline:hsla(0,0%,100%,.06);--shadow-lg:0 30px 80px rgba(0,0,0,.5),0 8px 24px rgba(0,0,0,.35);--shadow-card:0 12px 32px rgba(0,0,0,.35);--blur-bg:rgba(10,10,11,.72);--grad-fade:linear-gradient(180deg,rgba(10,10,11,0),rgba(10,10,11,.6) 55%,rgba(10,10,11,.98));--grad-fade-h:linear-gradient(90deg,rgba(10,10,11,.95),rgba(10,10,11,.65) 45%,rgba(10,10,11,0))}html[data-theme=light]{--bg:#f8fafc;--bg-2:#f1f5f9;--bg-3:#e2e8f0;--surface:#fff;--surface-2:#f1f5f9;--line:rgba(0,0,0,.08);--line-2:#cbd5e1;--fg:#0b1020;--fg-2:#334155;--fg-3:#64748b;--fg-4:#94a3b8;--accent:#eab308;--accent-ink:#0b1020;--hot:#dc2626;--gold:#b45309;--hairline:rgba(0,0,0,.06);--shadow-lg:0 30px 80px rgba(0,0,0,.12),0 8px 24px rgba(0,0,0,.08);--shadow-card:0 8px 28px rgba(0,0,0,.08);--blur-bg:hsla(48,22%,95%,.78);--grad-fade:linear-gradient(180deg,hsla(48,22%,95%,0),hsla(48,22%,95%,.6) 55%,hsla(48,22%,95%,.98));--grad-fade-h:linear-gradient(90deg,hsla(48,22%,95%,.95),hsla(48,22%,95%,.65) 45%,hsla(48,22%,95%,0))}*{box-sizing:border-box}body,html{margin:0;padding:0;background:var(--bg);color:var(--fg)}body{font-family:var(--font-sans-sc),"Noto Sans SC",-apple-system,BlinkMacSystemFont,sans-serif;font-feature-settings:"tnum" 1,"ss01" 1;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;overflow-x:hidden}.serif{font-family:var(--font-serif-sc),"Noto Serif SC",serif;letter-spacing:-.01em}.mono{font-family:var(--font-mono),"JetBrains Mono",ui-monospace,monospace;font-feature-settings:"tnum" 1}::selection{background:var(--accent);color:var(--accent-ink)}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-thumb{background:var(--line-2);border-radius:10px}::-webkit-scrollbar-track{background:transparent}.hover-lift{transition:transform .35s cubic-bezier(.2,.8,.2,1),box-shadow .35s}.hover-lift:hover{transform:translateY(-4px)}.hairline{border:1px solid var(--hairline)}.nowrap{white-space:nowrap}a{color:inherit;text-decoration:none}button{font-family:inherit;cursor:pointer}.no-scrollbar::-webkit-scrollbar{display:none}.no-scrollbar{scrollbar-width:none}@keyframes fadeUp{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.page-enter{animation:fadeUp .5s cubic-bezier(.2,.8,.2,1) both}@keyframes kenburns{0%{transform:scale(1.05) translate(0)}to{transform:scale(1.15) translate(-1.5%,-1%)}}@keyframes shimmer{0%{background-position:-400px 0}to{background-position:400px 0}}@keyframes indet{0%{transform:translateX(-100%)}to{transform:translateX(300%)}}.focus-ring:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.poster-card-wrap{box-shadow:0 2px 8px rgba(0,0,0,.2);transform:translateY(0);transition:all .4s cubic-bezier(.2,.8,.2,1)}a:hover .poster-card-wrap{box-shadow:0 20px 50px rgba(0,0,0,.5);transform:translateY(-4px)}.poster-card-overlay{opacity:0;transition:opacity .3s}a:hover .poster-card-overlay{opacity:1}.info-card{transition:border-color .25s,background .25s}.info-card:hover{border-color:var(--line-2)!important;background:var(--surface-2)!important}.topic-card{transition:transform .3s,border-color .3s}.topic-card:hover{transform:translateY(-4px)}.faq-item>summary{list-style:none;cursor:pointer}.faq-item>summary::-webkit-details-marker{display:none}.faq-item>summary .faq-chevron{transition:transform .2s}.faq-item[open]>summary .faq-chevron{transform:rotate(180deg)}