:root{--pol-ease:cubic-bezier(.16,1,.3,1);--pol-radius:16px;--pol-shadow-xs:0 1px 2px #0b1d3a0d, 0 1px 1px #0b1d3a0a;--pol-shadow-sm:0 2px 6px #0b1d3a0f, 0 1px 2px #0b1d3a0d;--pol-shadow-md:0 8px 24px #0b1d3a17, 0 2px 6px #0b1d3a0f;--pol-shadow-lg:0 20px 50px #0b1d3a21, 0 6px 16px #0b1d3a14;--pol-gold-glow:0 0 0 3px #c8a4512e}[data-theme=dark]{--pol-shadow-xs:0 1px 2px #0006;--pol-shadow-sm:0 2px 8px #00000073;--pol-shadow-md:0 10px 28px #00000080, 0 2px 8px #0006;--pol-shadow-lg:0 24px 60px #0009, 0 8px 20px #00000073;--pol-gold-glow:0 0 0 3px #c8a45147}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-image:radial-gradient(1100px 700px at 100% -5%,#c8a45112,#0000 60%),radial-gradient(900px 650px at -5% 105%,#1a6f7e0f,#0000 60%);background-repeat:no-repeat;background-attachment:fixed}[data-theme=dark] body{background-image:radial-gradient(1100px 760px at 100% -8%,#c8a4511f,#0000 62%),radial-gradient(950px 720px at -8% 108%,#1a6f7e21,#0000 62%)}.app-header{background:color-mix(in srgb, var(--color-surface) 78%, transparent);-webkit-backdrop-filter:blur(14px)saturate(135%);backdrop-filter:blur(14px)saturate(135%);box-shadow:var(--pol-shadow-xs);transition:background .25s var(--pol-ease)}.app-header:after{content:"";pointer-events:none;background:linear-gradient(90deg,#0000,#c8a4518c,#0000);height:1px;position:absolute;bottom:-1px;left:0;right:0}.app-header .brand .logo img{transition:transform .3s var(--pol-ease), filter .3s var(--pol-ease)}.app-header .brand:hover .logo img{filter:drop-shadow(0 2px 6px #c8a45173);transform:rotate(-12deg)scale(1.08)}.search-trigger{border-radius:var(--radius-full);transition:border-color .2s var(--pol-ease), box-shadow .2s var(--pol-ease), background .2s var(--pol-ease)}.search-trigger:hover{border-color:var(--color-gold-line);box-shadow:var(--pol-gold-glow)}.sidebar{background:color-mix(in srgb, var(--color-surface) 92%, transparent);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.nav-link{transition:background .18s var(--pol-ease), color .18s var(--pol-ease), transform .18s var(--pol-ease);border-radius:10px;position:relative}.nav-link:hover{transform:translate(3px)}.nav-link.active:before{content:"";background:var(--color-gold);transform-origin:50%;width:3px;height:62%;transition:transform .22s var(--pol-ease);border-radius:3px;position:absolute;top:50%;left:0;transform:translateY(-50%)scaleY(1)}.hero-brand{padding:var(--space-12) var(--space-10) var(--space-10);border:1px solid var(--color-divider);background:var(--color-surface);box-shadow:var(--pol-shadow-lg);border-radius:24px;position:relative}.hero-brand:after{content:"";pointer-events:none;border:1px solid #c8a45138;border-radius:24px;position:absolute;inset:0}[data-theme=dark] .hero-brand{background:linear-gradient(155deg,#0e1a30 0%,#0b1426 100%);border-color:#c8a4512e}.hero-brand .hero-slogan{background:linear-gradient(110deg, var(--color-text) 0%, var(--color-text) 55%, var(--color-gold) 130%);-webkit-text-fill-color:transparent;color:#0000;-webkit-background-clip:text;background-clip:text}.hero-illus img{filter:drop-shadow(0 18px 34px #0b1d3a2e);transition:transform .4s var(--pol-ease)}[data-theme=dark] .hero-illus img{filter:drop-shadow(0 18px 38px #0000008c)}.hero-illus:hover img{transform:translateY(-4px)scale(1.01)}.btn{transition:transform .16s var(--pol-ease), box-shadow .2s var(--pol-ease), background .2s var(--pol-ease), border-color .2s var(--pol-ease);border-radius:12px}.btn:active{transform:scale(.97)}.btn-primary{background:linear-gradient(180deg, var(--color-primary-hover), var(--color-primary));box-shadow:var(--pol-shadow-sm)}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 10px 22px #0b1d3a38}[data-theme=dark] .btn-primary:hover{box-shadow:0 10px 22px #c8a45147}.btn-gold{background:linear-gradient(180deg, #d4b264, var(--color-gold));box-shadow:var(--pol-shadow-sm)}.btn-gold:hover{transform:translateY(-2px);box-shadow:0 10px 24px #c8a45166}.btn-ghost{border-radius:12px}.btn-ghost:hover{box-shadow:var(--pol-shadow-xs)}.chapter-card,.subject-card,.stat-card,.card,.progress-card{border-radius:var(--pol-radius);box-shadow:var(--pol-shadow-sm);transition:transform .22s var(--pol-ease), box-shadow .22s var(--pol-ease), border-color .22s var(--pol-ease)}.chapter-card{position:relative;overflow:hidden}.chapter-card:before{content:"";background:linear-gradient(90deg, var(--color-gold), color-mix(in srgb, var(--color-gold) 40%, transparent));transform-origin:0;height:3px;transition:transform .3s var(--pol-ease);z-index:1;position:absolute;top:0;left:0;right:0;transform:scaleX(0)}.chapter-card:hover:before{transform:scaleX(1)}.chapter-card:hover,.subject-card:hover,.stat-card:hover,.card:hover{box-shadow:var(--pol-shadow-md);border-color:var(--color-gold-line);transform:translateY(-5px)}.chapter-card:hover h3,.subject-card:hover h3{color:var(--color-primary)}.chapter-card .domain{border-bottom-left-radius:14px;box-shadow:0 2px 6px #0b1d3a2e}.chapter-card .chk>span,.progress-bar>span{box-shadow:0 0 8px #c8a45159;background:linear-gradient(90deg, var(--color-green), var(--color-gold))!important}.search-panel,.modal,.modal-card{box-shadow:var(--pol-shadow-lg);border:1px solid color-mix(in srgb, var(--color-gold-line) 50%, var(--color-border));border-radius:20px}.search-panel{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}#searchInput:focus,.search-panel input:focus{box-shadow:inset 0 -2px 0 0 var(--color-gold)}.badge,.pill,.tag,.chip{border-radius:var(--radius-full)}.ai-fab{border-radius:var(--radius-full);transition:transform .2s var(--pol-ease), box-shadow .2s var(--pol-ease), background .2s var(--pol-ease);box-shadow:0 8px 22px #c8a45166,0 2px 6px #0b1d3a2e}.ai-fab:hover{transform:translateY(-3px)scale(1.03);box-shadow:0 14px 32px #c8a45180,0 4px 10px #0b1d3a33}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-thumb{background:color-mix(in srgb, var(--color-border) 80%, var(--color-gold) 20%);background-clip:padding-box;border:2px solid #0000;border-radius:8px}::-webkit-scrollbar-thumb:hover{background:color-mix(in srgb, var(--color-gold) 55%, var(--color-border));background-clip:padding-box}::-webkit-scrollbar-track{background:0 0}::selection{color:var(--color-text);background:#c8a45147}#view{transition:opacity .26s var(--pol-ease)}#view.view-enter{animation:polViewIn .34s var(--pol-ease) both}@keyframes polViewIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}a:focus-visible{outline:2px solid var(--color-gold);outline-offset:2px;border-radius:8px}button:focus-visible{outline:2px solid var(--color-gold);outline-offset:2px;border-radius:8px}.btn:focus-visible{outline:2px solid var(--color-gold);outline-offset:2px;border-radius:8px}.nav-link:focus-visible{outline:2px solid var(--color-gold);outline-offset:2px;border-radius:8px}.search-trigger:focus-visible{outline:2px solid var(--color-gold);outline-offset:2px;border-radius:8px}input:focus-visible{outline:2px solid var(--color-gold);outline-offset:2px;border-radius:8px}select:focus-visible{outline:2px solid var(--color-gold);outline-offset:2px;border-radius:8px}[tabindex]:focus-visible{outline:2px solid var(--color-gold);outline-offset:2px;border-radius:8px}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important}.nav-link:hover,.btn-primary:hover,.btn-gold:hover,.ai-fab:hover,.chapter-card:hover,.subject-card:hover,.stat-card:hover,.card:hover,.hero-illus:hover img{transform:none}#view.view-enter{animation:none}}