@font-face{font-family:DM Sans;font-style:normal;font-weight:400 700;font-display:swap;src:url(/vendor/fonts/dm-sans-latin-ext.woff2)format("woff2")}@font-face{font-family:DM Sans;font-style:normal;font-weight:400 700;font-display:swap;src:url(/vendor/fonts/dm-sans-latin.woff2)format("woff2")}@font-face{font-family:Fraunces;font-style:normal;font-weight:500 800;font-display:swap;src:url(/vendor/fonts/fraunces-latin-ext.woff2)format("woff2")}@font-face{font-family:Fraunces;font-style:normal;font-weight:500 800;font-display:swap;src:url(/vendor/fonts/fraunces-latin.woff2)format("woff2")}@font-face{font-family:Material Symbols Outlined;font-style:normal;font-weight:100 700;font-display:block;src:url(/vendor/fonts/material-symbols-subset.woff2)format("woff2")}:root{color:#1b2420;font-synthesis:none;text-rendering:optimizelegibility;--primary:#2f5d50;--primary-hover:#244a40;--primary-soft:#e7eee9;--primary-rgb:47, 93, 80;--review:#a97a2f;--review-rgb:169, 122, 47;--ink:#1b2420;--muted:#666f68;--line:#e3e1d8;--surface:#fff;--bg-body:#faf8f3;--success:#10b981;--warning:#f59e0b;--danger:#ef4444;--radius:14px;--sidebar-open:268px;--sidebar-rail:68px;--brand-gradient:linear-gradient(140deg, #2f5d50 0%, #3d7565 100%);--shadow:0 20px 48px #0f172a24, 0 4px 12px #0f172a14;--shadow-card:0 1px 1px #0f172a0a, 0 4px 10px #0f172a0d, 0 16px 32px #0f172a12;--ease-smooth:cubic-bezier(.4,0,.2,1);--ease-out:cubic-bezier(.16,1,.3,1);background:#faf8f3;font-family:DM Sans,sans-serif}.question-kicker{color:var(--primary);letter-spacing:.1em;text-transform:uppercase;align-items:center;gap:7px;font-size:.72rem;font-weight:850;display:inline-flex}.question-kicker .material-symbols-outlined{font-size:19px}.daily-progress{--progress:0deg;background:conic-gradient(var(--primary) var(--progress),var(--line) 0);border-radius:50%;flex:none;place-items:center;width:126px;height:126px;display:grid;position:relative}.daily-progress:before{border-radius:inherit;content:"";background:#fff;position:absolute;inset:10px}.daily-progress>div,.daily-progress>small{z-index:1;position:relative}.daily-progress>div{place-items:center;display:grid}.daily-progress strong{color:var(--ink);font-size:1.65rem;line-height:1}.daily-progress span{color:var(--muted);margin-top:4px;font-size:.68rem}.daily-progress>small{color:var(--primary);font-size:.62rem;font-weight:800;position:absolute;bottom:24px}.question-hero{justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:18px;display:flex}.question-hero h2{color:var(--ink);letter-spacing:-.05em;margin:8px 0 6px;font-family:Fraunces,sans-serif;font-size:clamp(1.55rem,3vw,2.25rem)}.question-hero p{color:var(--muted);margin:0}.question-primary-actions{flex-wrap:wrap;grid-template-columns:none;justify-content:flex-end;margin:0;display:flex}.question-overview{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-bottom:14px;display:grid}.question-overview article{border:1px solid var(--line);min-width:0;box-shadow:var(--shadow-card);background:#fff;border-radius:14px;align-items:center;gap:11px;padding:16px;display:flex}.question-overview>article>.material-symbols-outlined{width:38px;height:38px;color:var(--primary);background:var(--primary-soft);border-radius:11px;flex:none;place-items:center;font-size:20px;display:grid}.question-overview article div{gap:2px;min-width:0;display:grid}.question-overview strong{color:var(--ink);font-size:1.1rem}.question-overview small{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:.66rem;overflow:hidden}.question-workspace-card{box-shadow:var(--shadow-card);background:#fff;border:1px solid #dbe3f0;border-radius:18px;padding:18px}.question-search-line{grid-template-columns:minmax(0,1fr) auto;gap:10px;display:grid}.question-search-line .legacy-search{height:46px}.filter-toggle{position:relative}.filter-toggle b{color:#fff;background:var(--primary);border-radius:99px;place-items:center;min-width:19px;height:19px;font-size:.6rem;display:grid}.question-workspace-card .question-filters{box-shadow:none;border:0;border-radius:0;grid-template-columns:repeat(5,minmax(120px,1fr)) auto;gap:8px;margin-top:10px;padding:0;display:grid}.question-workspace-card .question-filters select{max-width:none}.clear-filter-button{border:1px solid var(--line);color:#64748b;background:#f8fafc;border-radius:10px;padding:0 12px;font-size:.7rem;font-weight:750}.quick-exam-builder{background:#f7f9ff;border-radius:13px;grid-template-columns:minmax(180px,1fr) auto auto auto;align-items:end;gap:12px;margin-top:14px;padding:14px;display:grid}.quick-exam-builder>div{gap:4px;display:grid}.quick-exam-builder>div>span{color:var(--ink);align-items:center;gap:6px;font-size:.78rem;font-weight:850;display:flex}.quick-exam-builder>div .material-symbols-outlined{color:var(--primary);font-size:19px}.quick-exam-builder small{color:var(--muted);font-size:.65rem}.quick-exam-builder label{color:var(--muted);gap:5px;font-size:.62rem;font-weight:800;display:grid}.quick-exam-builder select{border:1px solid var(--line);color:#475569;background:#fff;border-radius:9px;height:38px;padding:0 30px 0 10px;font-size:.72rem}.error-notebook{box-shadow:var(--shadow-card);background:linear-gradient(135deg,#fff 0%,#fff7f8 100%);border:1px solid #f1d9df;border-radius:17px;margin-bottom:14px;padding:20px}.error-notebook .question-section-title>.material-symbols-outlined{color:#c2415c}.error-notebook .question-section-title>button{margin-left:auto}.notebook-summary{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:16px;display:grid}.notebook-summary span{color:var(--muted);background:#fffc;border:1px solid #e2e8f0e6;border-radius:10px;align-items:baseline;gap:7px;padding:12px;font-size:.68rem;display:flex}.notebook-summary strong{color:var(--ink);font-size:1.05rem}.question-bank-list{gap:10px}.question-bank-list>.question-list-card{align-items:flex-start;padding:15px;transition:border-color .18s,box-shadow .18s}.question-bank-list>.question-list-card.expanded{border-color:rgba(var(--primary-rgb),.35);box-shadow:0 10px 25px #1b242014}.question-list-index{width:28px;height:28px;color:var(--primary);background:var(--primary-soft);border-radius:8px;flex:none;place-items:center;font-size:.68rem;font-weight:850;display:grid}.question-bank-list .question-list-content{gap:9px;width:100%;display:grid}.question-card-meta{flex-wrap:wrap;gap:6px!important;display:flex!important}.question-card-meta span{background:#f1f5f9;border-radius:99px;padding:4px 7px;font-weight:750;color:#64748b!important;font-size:.58rem!important}.question-card-meta span.pending{background:#fff0f3;color:#b4233c!important}.question-card-meta span.recovered{background:#eafaf4;color:#087f5b!important}.question-tag-row{flex-wrap:wrap;gap:5px!important;display:flex!important}.question-tag-row small{color:#64748b;font-size:.58rem}.question-tag-row small:before{content:"#"}.question-expand{width:max-content;color:var(--primary);background:0 0;border:0;align-items:center;gap:6px;padding:5px 0;font-size:.68rem;font-weight:800;display:inline-flex}.question-expand .material-symbols-outlined{font-size:17px}.question-answer-panel{background:#f8fafc;border-radius:11px;padding:14px;gap:12px!important;display:grid!important}.question-answer-panel ol{gap:6px;margin:0;padding:0;list-style:none;display:grid}.question-answer-panel li{border:1px solid var(--line);color:#475569;background:#fff;border-radius:8px;align-items:center;gap:8px;padding:9px 10px;font-size:.7rem;display:flex}.question-answer-panel li b{color:#64748b;background:#f1f5f9;border-radius:6px;place-items:center;width:22px;height:22px;font-size:.62rem;display:grid}.question-answer-panel li.correct{color:#087f5b;background:#f0fdf8;border-color:#99dcc7}.question-answer-panel li.correct .material-symbols-outlined{color:#0f9f70;margin-left:auto;font-size:18px}.question-answer-panel>div{gap:5px!important}.question-answer-panel>div small{color:var(--primary);letter-spacing:.08em;text-transform:uppercase;font-size:.58rem;font-weight:850}.question-answer-panel p{color:#475569;margin:0;font-size:.72rem;line-height:1.55}.question-empty-state{color:var(--muted);text-align:center;place-items:center;padding:34px 18px;display:grid}.question-empty-state>.material-symbols-outlined{color:#a9b5c7;font-size:36px}.question-empty-state h4{color:var(--ink);margin:10px 0 4px}.question-empty-state p{margin:0 0 14px;font-size:.72rem}.question-empty-state.compact{padding:26px 12px 8px}.simulation-grid article>div>small{color:#8792a3;margin-top:5px;font-size:.6rem;display:block}.question-footer-link{justify-content:center;padding:18px;display:flex}.question-footer-link a{color:var(--primary);align-items:center;gap:7px;font-size:.75rem;font-weight:800;text-decoration:none;display:inline-flex}.domain-empty{color:var(--muted);text-align:center;place-items:center;padding:28px;display:grid}.domain-empty>.material-symbols-outlined{color:#9aabca;font-size:38px}.domain-empty h4{color:var(--ink);margin:10px 0 5px}.domain-empty p{margin:0 0 16px;font-size:.72rem}@media (max-width:980px){.question-hero{flex-direction:column;align-items:flex-start}.question-primary-actions{justify-content:flex-start}.question-workspace-card .question-filters{grid-template-columns:repeat(3,minmax(0,1fr))}.quick-exam-builder{grid-template-columns:minmax(180px,1fr) auto auto}.quick-exam-builder>button{grid-column:1/-1}}@media (max-width:720px){.daily-progress{width:94px;height:94px}.daily-progress strong{font-size:1.25rem}.daily-progress>small{bottom:17px}.question-overview,.question-workspace-card .question-filters{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:520px){.daily-progress{order:-1}.question-primary-actions{grid-template-columns:1fr;width:100%;display:grid}.question-search-line{grid-template-columns:1fr}.question-workspace-card .question-filters{grid-template-columns:1fr;display:none}.question-workspace-card .question-filters.open{display:grid}.quick-exam-builder{grid-template-columns:1fr 1fr}.quick-exam-builder>div,.quick-exam-builder>button{grid-column:1/-1}.notebook-summary{grid-template-columns:1fr}.error-notebook .question-section-title{flex-wrap:wrap}.error-notebook .question-section-title>button{width:100%;margin:8px 0 0}}*{box-sizing:border-box}html{background:var(--bg-body);min-width:320px}body{background:var(--bg-body);-webkit-font-smoothing:antialiased;min-width:320px;min-height:100vh;margin:0}button,input,textarea,select{font:inherit}button{cursor:pointer}button:disabled{cursor:wait;opacity:.65}a{color:inherit}:focus-visible{outline-offset:3px;outline:3px solid #4f46e559}.material-symbols-outlined{letter-spacing:normal;text-transform:none;white-space:nowrap;word-wrap:normal;-webkit-font-feature-settings:"liga";-webkit-font-smoothing:antialiased;direction:ltr;font-family:Material Symbols Outlined;font-size:24px;font-style:normal;font-weight:400;line-height:1;display:inline-block}.legacy-app-shell{min-height:100vh;padding-left:var(--sidebar-open);background-color:var(--bg-body);background-image:radial-gradient(ellipse 80% 50% at 20% -10%, rgba(var(--primary-rgb),.1), transparent 60%), radial-gradient(ellipse 60% 40% at 80% 110%, rgba(var(--review-rgb),.08), transparent 55%);transition:padding-left .35s var(--ease-smooth)}.legacy-app-shell.sidebar-collapsed{padding-left:var(--sidebar-rail)}.legacy-app-shell:before{content:"";pointer-events:none;background-image:linear-gradient(rgba(var(--primary-rgb),.025) 1px, transparent 1px), linear-gradient(90deg, rgba(var(--primary-rgb),.025) 1px, transparent 1px);background-size:32px 32px;position:fixed;inset:0;-webkit-mask-image:linear-gradient(#00000029,#0000 55%);mask-image:linear-gradient(#00000029,#0000 55%)}.legacy-sidebar{z-index:2500;width:var(--sidebar-open);color:var(--ink);-webkit-backdrop-filter:blur(22px)saturate(170%);backdrop-filter:blur(22px)saturate(170%);transition:width .35s var(--ease-smooth), transform .3s var(--ease-smooth);background:#fffffff7;border-right:1px solid #e2e8f099;flex-direction:column;padding:18px 12px;display:flex;position:fixed;inset:0 auto 0 0;overflow:hidden;box-shadow:2px 0 20px #0f172a0a}.sidebar-collapsed .legacy-sidebar{width:var(--sidebar-rail)}.sidebar-top{border-bottom:1px solid #e2e8f0cc;align-items:center;gap:12px;min-height:44px;margin:0 4px 20px;padding:0 4px 18px;display:flex}.icon-btn{width:38px;height:38px;color:var(--muted);background:0 0;border:0;border-radius:10px;flex:none;place-items:center;display:grid}.icon-btn:hover{color:var(--primary);background:var(--primary-soft)}.sidebar-brand{min-width:0}.sidebar-title{letter-spacing:-.05em;background:var(--brand-gradient);color:#0000;-webkit-background-clip:text;font-family:Fraunces,sans-serif;font-size:1.22rem;font-weight:800}.sidebar-subtitle{color:#94a3b8;letter-spacing:.08em;text-transform:uppercase;white-space:nowrap;margin-top:2px;font-size:.67rem;font-weight:600}.side-nav{flex-direction:column;gap:2px;display:flex}.side-nav-btn{width:100%;color:var(--muted);white-space:nowrap;transition:.22s var(--ease-out);background:0 0;border:1px solid #0000;border-radius:10px;align-items:center;gap:12px;padding:10px 12px;font-size:.89rem;font-weight:500;text-decoration:none;display:flex;position:relative;overflow:hidden}.side-nav-btn:before{content:"";background:var(--brand-gradient);border-radius:4px;width:3.5px;height:0;transition:height .3s;position:absolute;top:50%;left:4px;transform:translateY(-50%)}.side-nav-btn.active{color:var(--primary);background:rgba(var(--primary-rgb),.07);border-color:rgba(var(--primary-rgb),.12);box-shadow:inset 0 0 0 1px rgba(var(--primary-rgb),.04);font-weight:700}.side-nav-btn .nav-icn{flex:none;font-size:22px}.sidebar-manage-panel{border-top:1px solid var(--line);flex:1;margin-top:16px;padding-top:14px;overflow-y:auto}.sidebar-manage-title{color:#94a3b8;text-transform:uppercase;letter-spacing:.1em;padding:0 10px 10px;font-size:.7rem;font-weight:700}.sidebar-manage-tree{gap:3px;display:grid}.sidebar-folder-row{color:var(--ink);align-items:center;gap:7px;padding:8px 10px;font-size:.83rem;font-weight:700;display:flex}.sidebar-folder-row small{color:#94a3b8;margin-left:auto;font-size:.68rem;font-weight:600}.sidebar-folder-row .folder-chevron{color:var(--muted);font-size:17px}.sidebar-folder-row .folder-icon{color:var(--warning);font-size:17px}.sidebar-deck-row{color:var(--muted);align-items:center;gap:7px;padding:6px 10px 6px 38px;font-size:.78rem;display:flex}.sidebar-deck-row .material-symbols-outlined{font-size:15px}.sidebar-footer{border-top:1px solid #e2e8f0b3;margin-top:auto;padding-top:8px}.sidebar-auth-section{border-top:1px solid #e2e8f0b3;margin-top:4px;padding:10px 4px}.sidebar-user-info{min-width:0;color:inherit;align-items:center;gap:10px;padding:4px 2px;text-decoration:none;display:flex}.sidebar-user-avatar{color:#fff;background:var(--brand-gradient);width:36px;height:36px;box-shadow:0 2px 8px rgba(var(--primary-rgb),.22);border-radius:50%;flex:none;place-items:center;display:grid}.sidebar-user-avatar .material-symbols-outlined{font-size:20px}.sidebar-user-details{flex:1;min-width:0;display:grid}.sidebar-user-details strong,.sidebar-user-details small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.sidebar-user-details strong{font-size:.86rem}.sidebar-user-details small{color:var(--muted);margin-top:1px;font-size:.7rem}.sidebar-profile-settings{color:#94a3b8;font-size:17px}.sidebar-collapsed .sidebar-brand,.sidebar-collapsed .nav-label,.sidebar-collapsed .sidebar-manage-panel,.sidebar-collapsed .sidebar-user-details,.sidebar-collapsed .sidebar-profile-settings{display:none}.sidebar-collapsed .side-nav-btn{justify-content:center;padding-inline:0}.sidebar-collapsed .sidebar-user-info{justify-content:center}.sidebar-backdrop,.mobile-menu-fab{display:none}.legacy-app-container{width:100%;max-width:1120px;min-height:100vh;margin:0 auto;padding:28px 40px;position:relative}.legacy-app-header{z-index:900;-webkit-backdrop-filter:blur(20px)saturate(170%);backdrop-filter:blur(20px)saturate(170%);background:#fffffff2;border:1px solid #e2e8f0b3;border-radius:18px;justify-content:space-between;align-items:center;gap:16px;min-height:68px;margin-bottom:32px;padding:13px 22px;display:flex;position:sticky;top:16px;box-shadow:0 1px 3px #0f172a0a,0 4px 16px #0f172a0d}.header-brand-row{align-items:center;gap:10px;display:flex}.app-title{letter-spacing:-.05em;background:var(--brand-gradient);color:#0000;-webkit-background-clip:text;margin:0;font-family:Fraunces,sans-serif;font-size:1.32rem;font-weight:800}.beta-badge{border:1px solid rgba(var(--primary-rgb),.14);color:var(--primary);background:rgba(var(--primary-rgb),.07);letter-spacing:.08em;text-transform:uppercase;border-radius:6px;padding:3px 8px;font-size:.6rem;font-weight:800;display:inline-flex}.header-notification-btn{border:1px solid var(--line);width:38px;height:38px;color:var(--primary);background:#ffffffc2;border-radius:10px;place-items:center;display:grid}.header-notification-btn .material-symbols-outlined{font-size:20px}.header-notification-btn{position:relative}.notification-indicator{border:2px solid var(--surface);background:#ef4444;border-radius:50%;width:7px;height:7px;position:absolute;top:7px;right:7px}.notification-center{z-index:12;border:1px solid var(--line);width:min(390px,100vw - 44px);color:var(--ink);background:var(--surface);animation:notification-center-open .18s var(--ease-out) both;transform-origin:32px 0;border-radius:16px;position:absolute;top:calc(100% + 10px);left:18px;overflow:hidden;box-shadow:0 22px 60px #0f172a2e}.notification-center>header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:14px;padding:16px 17px 13px;display:flex}.notification-center>header>div{gap:2px;display:grid}.notification-center>header span{color:var(--primary);letter-spacing:.13em;font-size:.58rem;font-weight:850}.notification-center>header strong{font-family:Fraunces,sans-serif;font-size:1.08rem}.notification-center>header button{width:30px;height:30px;color:var(--muted);background:var(--bg-body);border:0;border-radius:8px;place-items:center;display:grid}.notification-center>header button .material-symbols-outlined{font-size:17px}.notification-list{padding:7px;display:grid}.notification-item{border-radius:11px;grid-template-columns:38px minmax(0,1fr);gap:11px;padding:11px;display:grid}.notification-item+.notification-item{border-top:1px solid color-mix(in srgb,var(--line) 72%,transparent);border-radius:0 0 11px 11px}.notification-item>span{width:38px;height:38px;color:var(--primary);background:var(--primary-soft);border-radius:10px;place-items:center;display:grid}.notification-item>span .material-symbols-outlined{font-size:20px}.notification-item.success>span{color:#059669;background:#ecfdf5}.notification-item.attention>span,.notification-item.due>span{color:#c2410c;background:#fff7ed}.notification-item>div{min-width:0}.notification-item strong{font-size:.8rem}.notification-item p{color:var(--muted);margin:3px 0 0;font-size:.7rem;line-height:1.45}.notification-item a{color:var(--primary);align-items:center;gap:3px;margin-top:7px;font-size:.7rem;font-weight:800;text-decoration:none;display:inline-flex}.notification-item a .material-symbols-outlined{font-size:14px}@keyframes notification-center-open{0%{opacity:0;transform:translateY(-6px)scale(.98)}to{opacity:1;transform:none}}.header-right{align-items:stretch;gap:8px;margin-left:auto;display:flex}.header-chip{border:1px solid var(--line);min-width:88px;color:var(--muted);background:#f8fafcdb;border-radius:10px;align-items:center;gap:8px;padding:7px 10px;display:flex}.header-chip .material-symbols-outlined{color:var(--primary);font-size:19px}.header-chip>span:last-child{display:grid}.header-chip strong{color:var(--ink);font-size:.84rem;line-height:1}.header-chip small{white-space:nowrap;margin-top:2px;font-size:.62rem}.header-chip.highlight{background:var(--primary-soft)}.legacy-sync-status{background:0 0;border:0;width:10px;height:10px;padding:0;overflow:hidden}.legacy-sync-status>.sync-dot{width:8px;height:8px}.sr-only{clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important;width:1px!important;height:1px!important;margin:-1px!important;padding:0!important;position:absolute!important;overflow:hidden!important}.sync-status,.environment-chip,.phase-badge{border-radius:999px;align-items:center;gap:7px;font-size:.76rem;font-weight:750;display:inline-flex}.sync-status{color:#455067;border:1px solid var(--line);background:#fff;padding:7px 10px}.sync-status>span{background:var(--success);border-radius:50%;width:7px;height:7px}.sync-offline>span{background:var(--warning)}.sync-error>span{background:var(--danger)}.sync-saving>span,.sync-syncing>span{background:var(--primary);box-shadow:0 0 0 4px var(--primary-soft)}.environment-chip{color:#5850b8;letter-spacing:.07em;background:#eeedff;padding:8px 11px}.legacy-route-content{position:relative}.dashboard-page,.feature-page{max-width:1180px;margin:0 auto}.dashboard-hero{box-shadow:var(--shadow);background:radial-gradient(circle at 86% 20%,#8b82f647,#0000 32%),linear-gradient(135deg,#fff 10%,#f2f2ff 100%);border:1px solid #e4e5fa;border-radius:30px;grid-template-columns:minmax(0,1.4fr) minmax(260px,.6fr);align-items:center;gap:48px;padding:clamp(34px,6vw,72px);display:grid;position:relative;overflow:hidden}.dashboard-hero:after{content:"";border:44px solid #4f46e517;border-radius:50%;width:260px;height:260px;position:absolute;bottom:-170px;right:-150px}.eyebrow{color:var(--primary);letter-spacing:.15em;margin:0 0 12px;font-size:.73rem;font-weight:800}.dashboard-hero h1,.feature-hero h1,.auth-card h1,.fatal-error h1{color:var(--ink);letter-spacing:-.03em;margin:0;font-family:Fraunces,sans-serif;font-size:clamp(2.1rem,5vw,4.65rem);line-height:1.02}.dashboard-hero p,.feature-hero p,.auth-card p,.fatal-error p{max-width:700px;color:var(--muted);margin:22px 0 0;font-size:1.04rem;line-height:1.75}.architecture-card{z-index:1;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#ffffffb8;border:1px solid #fffc;border-radius:22px;gap:7px;padding:26px;display:grid;position:relative;box-shadow:0 16px 36px #4740a31f}.architecture-card span{color:var(--muted);text-transform:uppercase;letter-spacing:.12em;font-size:.72rem;font-weight:750}.architecture-card strong{color:var(--primary);letter-spacing:-.03em;font-size:1.45rem}.architecture-card small{color:#697386}.milestone-grid{grid-template-columns:repeat(3,1fr);gap:18px;margin-top:22px;display:grid}.milestone-grid article,.feature-state{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);padding:26px;box-shadow:0 10px 28px #2c344b0b}.milestone-index{color:var(--primary);letter-spacing:.12em;font-size:.72rem;font-weight:850}.milestone-grid h2{letter-spacing:-.02em;margin:22px 0 8px;font-size:1.07rem}.milestone-grid p,.feature-state p{color:var(--muted);margin:0;font-size:.9rem;line-height:1.6}.feature-hero{border-bottom:1px solid var(--line);justify-content:space-between;align-items:flex-start;gap:30px;padding-bottom:38px;display:flex}.feature-hero h1{font-size:clamp(2.3rem,5vw,4.25rem)}.phase-badge{color:var(--primary);background:var(--primary-soft);flex:none;padding:9px 12px}.feature-state{align-items:flex-start;gap:16px;max-width:720px;margin-top:30px;display:flex}.feature-state strong{margin-bottom:8px;display:block}.state-dot{background:var(--success);border-radius:50%;flex:none;width:12px;height:12px;margin-top:3px;box-shadow:0 0 0 6px #0f9f6e1a}.auth-page,.fatal-error{background:linear-gradient(145deg,#f8f9ff,#eeeffe);place-items:center;min-height:100vh;padding:24px;display:grid}.auth-card,.fatal-error{width:min(100%,680px);box-shadow:var(--shadow);background:#fff;border:1px solid #e5e6f6;border-radius:28px;padding:clamp(30px,6vw,64px)}.auth-card h1,.fatal-error h1{font-size:clamp(2rem,5vw,3.5rem)}.auth-card a,.fatal-error button{color:#fff;background:var(--primary);cursor:pointer;border:0;border-radius:12px;margin-top:28px;padding:12px 17px;font-weight:750;text-decoration:none;display:inline-flex}.fatal-error code{color:#9f1239;background:#fff1f2;border-radius:10px;margin-top:18px;padding:12px;display:block}.route-loading{min-height:100vh;color:var(--muted);place-items:center;display:grid}.auth-mode{background:#f3f4f8;border-radius:14px;grid-template-columns:1fr 1fr;gap:6px;margin-top:30px;padding:5px;display:grid}.auth-mode button{color:var(--muted);background:0 0;border:0;border-radius:10px;padding:10px;font-weight:750}.auth-mode button.active{color:var(--primary);background:#fff;box-shadow:0 3px 12px #2c344b14}.echo-form{gap:16px;margin-top:22px;display:grid}.echo-form.compact{margin-top:16px}.echo-form label{color:#455067;gap:7px;font-size:.84rem;font-weight:750;display:grid}.echo-form input,.echo-form textarea,.echo-form select,.inline-form input{width:100%;color:var(--ink);background:#fff;border:1px solid #d9deea;border-radius:11px;padding:12px 13px}.echo-form textarea{resize:vertical;min-height:86px}.echo-form>button,.auth-actions button,.inline-form button,.study-summary button,.reveal-button{color:#fff;background:var(--primary);border:0;border-radius:11px;padding:12px 17px;font-weight:750}.echo-form .button-link,.button-link{color:var(--primary);background:0 0;border:0;padding:8px;font-weight:700}.auth-actions{flex-wrap:wrap;gap:10px;margin-top:28px;display:flex}.auth-actions .button-secondary{color:#455067;background:#eef0f5}.form-status{background:#fff7ed;border-radius:10px;padding:10px 12px;color:#8a3418!important;margin:0!important;font-size:.85rem!important;line-height:1.45!important}.workspace-page{max-width:1180px;margin:0 auto}.workspace-header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:flex-start;gap:28px;padding-bottom:28px;display:flex}.workspace-header h1{letter-spacing:-.05em;margin:0;font-size:clamp(2.3rem,5vw,4.25rem);line-height:1}.workspace-header p:not(.eyebrow){max-width:700px;color:var(--muted);margin:16px 0 0;line-height:1.65}.workspace-status{color:#5850b8;background:#f6f5ff;border:1px solid #e4e5fa;border-radius:11px;margin:20px 0;padding:11px 14px;font-size:.86rem}.library-grid{grid-template-columns:minmax(240px,.72fr) minmax(0,1.4fr);gap:20px;display:grid}.panel{border:1px solid var(--line);border-radius:var(--radius);background:#fff;min-width:0;padding:24px;box-shadow:0 10px 28px #2c344b0b}.panel h2{letter-spacing:-.025em;margin:0 0 16px}.srs-settings{border:1px solid var(--line);background:var(--primary-soft);border-radius:12px;margin:0 0 20px;padding:14px 16px}.srs-settings summary{cursor:pointer;color:var(--ink);font-weight:800}.srs-settings[open] summary{margin-bottom:4px}.field-help{color:#697386;margin:-7px 0 0;font-size:.8rem}.srs-field-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.card-editor{border-top:1px solid var(--line);padding-top:18px}.inline-form{grid-template-columns:1fr auto;gap:8px;display:grid}.inline-form button{color:#fff;background:var(--primary);border:0;border-radius:10px;padding:0 16px;font-weight:750}.inline-form .check-row{color:var(--muted);grid-column:1/-1;align-items:center;gap:8px;font-size:.8rem;display:flex}.inline-form .check-row+.check-row{margin-top:-3px}.inline-form .check-row input{width:auto;accent-color:var(--primary)}.item-list,.card-list{gap:9px;margin-top:18px;display:grid}.item-list>button{border:1px solid var(--line);text-align:left;width:100%;color:var(--ink);background:#fafbfc;border-radius:11px;gap:4px;padding:13px;display:grid}.item-list>button.selected{color:var(--primary);background:var(--primary-soft);border-color:#c9c7fb}.item-list small,.card-list small,.deck-picker small{color:var(--muted)}.card-list article{overflow-wrap:anywhere;border:1px solid var(--line);border-radius:12px;padding:15px}.card-list p{color:var(--muted);margin:8px 0}.legacy-workspace{position:relative}.legacy-page-heading h2{color:var(--ink);letter-spacing:-.045em;margin:0;font-family:Fraunces,sans-serif;font-size:clamp(1.65rem,3vw,2rem);line-height:1.15}.legacy-page-heading p{color:var(--muted);margin:6px 0 0;font-size:.94rem}.library-command-card,.legacy-deck-editor{box-shadow:var(--shadow-card);background:#ffffffeb;border:1px solid #e2e8f0bf;border-radius:18px;padding:18px}.library-toolbar{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.library-toolbar .legacy-search{flex:260px}.legacy-search{border:1px solid var(--line);background:#f8fafc;border-radius:10px;align-items:center;gap:10px;min-width:0;height:42px;padding:0 13px;display:flex}.legacy-search .material-symbols-outlined{color:#94a3b8;font-size:20px}.legacy-search input{width:100%;min-width:0;color:var(--ink);background:0 0;border:0;outline:0}.legacy-search input::placeholder{color:#94a3b8}.legacy-btn{white-space:nowrap;border:1px solid #0000;border-radius:10px;justify-content:center;align-items:center;gap:8px;min-height:42px;padding:0 14px;font-size:.82rem;font-weight:700;display:inline-flex}.legacy-btn .material-symbols-outlined{font-size:19px}.legacy-btn.secondary{color:#475569;border-color:var(--line);background:#fff}.legacy-btn.secondary:hover{color:var(--primary);border-color:rgba(var(--primary-rgb),.25);background:var(--primary-soft)}.legacy-btn.primary{color:#fff;background:linear-gradient(135deg,var(--primary),#4f46e5);box-shadow:0 6px 16px rgba(var(--primary-rgb),.22)}.legacy-btn.danger{color:#fff;background:#ef4444}.legacy-btn.danger.ghost{color:#dc2626;background:#fff1f2;border-color:#ef444433}.legacy-btn:disabled{cursor:not-allowed;opacity:.48}.library-create-form{border:1px solid var(--line);background:#f8fafc;border-radius:12px;grid-template-columns:minmax(0,1fr) auto;gap:10px;margin-top:14px;padding:14px;display:grid}.library-create-form input,.library-create-form select{border:1px solid var(--line);background:#fff;border-radius:9px;min-width:0;padding:10px 12px}.deck-create-form{grid-template-columns:minmax(180px,1fr) minmax(150px,.55fr) auto auto auto;align-items:center}.deck-create-form label{color:var(--muted);white-space:nowrap;align-items:center;gap:6px;font-size:.76rem;display:flex}.library-breadcrumb{border-top:1px solid var(--line);flex-wrap:wrap;align-items:center;gap:6px;margin-top:14px;padding-top:12px;display:flex}.library-breadcrumb span{align-items:center;gap:6px;display:inline-flex}.library-breadcrumb .material-symbols-outlined{color:#94a3b8;font-size:17px}.library-breadcrumb button{color:var(--muted);background:0 0;border:0;padding:4px 0;font-weight:700}.library-breadcrumb button:hover,.library-breadcrumb button.active{color:var(--primary)}.library-drag-hint{color:#426aa9;background:var(--primary-soft);border-radius:10px;margin:12px 0 0;padding:12px 14px;font-size:.82rem;line-height:1.45}.library-selection-hint{border:1px solid rgba(var(--primary-rgb),.16);color:var(--primary);background:rgba(var(--primary-rgb),.06);border-radius:10px;margin:10px 0 0;padding:10px 12px;font-size:.8rem;font-weight:700}.library-sync-message{color:var(--muted);margin:10px 0 0;font-size:.76rem}.legacy-library-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:14px;display:grid}.legacy-library-tile{cursor:default;min-width:0;min-height:178px;transition:transform .2s var(--ease-out),box-shadow .2s,border-color .2s;background:#fffffff5;border:1px solid #e2e8f0e6;border-radius:14px;flex-direction:column;display:flex;position:relative;box-shadow:0 4px 14px #0f172a0d}.legacy-library-tile:hover{border-color:rgba(var(--primary-rgb),.22);transform:translateY(-2px);box-shadow:0 10px 24px #0f172a17}.legacy-library-tile.deck-tile{cursor:pointer}.legacy-library-tile.selected{border-color:rgba(var(--primary-rgb),.42);box-shadow:0 0 0 2px rgba(var(--primary-rgb),.1),0 10px 24px #0f172a17}.tile-main{border-radius:inherit;width:100%;min-height:176px;color:inherit;text-align:left;background:0 0;border:0;flex-direction:column;flex:1;align-items:flex-start;padding:18px;display:flex}.tile-icon{width:42px;height:42px;color:var(--primary);background:var(--primary-soft);border-radius:11px;place-items:center;display:grid}.folder-tile .tile-icon{color:var(--warning);background:#fff8e8}.tile-settings{color:#94a3b8;background:0 0;border:0;border-radius:9px;place-items:center;width:31px;height:31px;display:grid;position:absolute;top:16px;right:16px}.tile-settings:hover{color:var(--primary);background:var(--primary-soft)}.tile-settings .material-symbols-outlined{font-size:18px}.tile-selection{color:var(--primary);position:absolute;top:17px;right:17px}.tile-selection .material-symbols-outlined{font-size:25px}.tile-main>strong{letter-spacing:-.025em;margin-top:17px;font-size:.96rem}.tile-main>p{color:var(--muted);margin:5px 0 14px;font-size:.78rem}.tile-meta{flex-wrap:wrap;gap:7px 11px;margin-top:auto;display:flex}.tile-meta span{color:var(--muted);align-items:center;gap:4px;font-size:.68rem;display:inline-flex}.tile-meta .material-symbols-outlined{color:#94a3b8;font-size:14px}.legacy-deck-editor{margin-top:18px}.deck-editor-heading{justify-content:space-between;align-items:center;gap:18px;margin-bottom:18px;display:flex}.deck-editor-heading>div{align-items:center;gap:12px;display:flex}.deck-editor-heading h3{margin:0;font-family:Fraunces,sans-serif}.deck-editor-heading p{color:var(--muted);margin:3px 0 0;font-size:.8rem}.library-fab{right:max(24px,calc((100vw - var(--sidebar-open) - 1120px)/2 + 44px));z-index:100;color:#fff;background:linear-gradient(135deg,var(--primary),#4f46e5);width:54px;height:54px;box-shadow:0 12px 28px rgba(var(--primary-rgb),.35);border:0;border-radius:50%;place-items:center;display:grid;position:fixed;bottom:30px}.library-fab .material-symbols-outlined{font-size:25px}.legacy-modal-overlay{z-index:5000;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#0f172a8f;place-items:center;padding:24px;display:grid;position:fixed;inset:0;overflow-y:auto}.legacy-modal{background:#fff;border:1px solid #ffffffb8;border-radius:20px;gap:16px;width:min(100%,720px);max-height:calc(100vh - 48px);padding:24px;display:grid;position:relative;overflow-y:auto;box-shadow:0 32px 64px #0f172a47}.legacy-modal.narrow{width:min(100%,520px)}.legacy-modal label{color:#475569;gap:7px;font-size:.82rem;font-weight:700;display:grid}.legacy-modal input,.legacy-modal select,.legacy-modal textarea,.deck-modal-search input{border:1px solid var(--line);width:100%;min-width:0;color:var(--ink);background:#fff;border-radius:10px;padding:11px 12px}.legacy-modal textarea{resize:vertical;min-height:82px;font:inherit}.legacy-modal-title{align-items:center;gap:12px;padding-right:34px;display:flex}.legacy-modal-title h3{letter-spacing:-.035em;margin:0;font-family:Fraunces,sans-serif;font-size:1.15rem}.legacy-modal-title p{color:var(--muted);margin:4px 0 0;font-size:.78rem}.modal-close{width:34px;height:34px;color:var(--muted);background:#f8fafc;border:0;border-radius:9px;place-items:center;display:grid;position:absolute;top:18px;right:18px}.modal-close .material-symbols-outlined{font-size:20px}.modal-field-grid{grid-template-columns:1fr 1fr;gap:12px;display:grid}.modal-check{grid-template-columns:auto 1fr;align-items:center;display:flex!important}.modal-check input{width:auto;accent-color:var(--primary)}.legacy-modal-actions{justify-content:flex-end;gap:9px;padding-top:4px;display:flex}.legacy-modal-actions.split{grid-template-columns:auto 1fr auto auto;display:grid}.discipline-create-modal{width:min(100%,860px)}.syllabus-import-panel{border:1px solid color-mix(in srgb,var(--primary) 18%,var(--line));background:linear-gradient(135deg,color-mix(in srgb,var(--primary) 5%,white),#fff);border-radius:14px;gap:13px;padding:14px;display:grid}.syllabus-toggle{cursor:pointer;justify-content:flex-start;align-items:center;color:var(--ink)!important;gap:9px!important;font-size:.86rem!important;display:flex!important}.syllabus-import-body{gap:12px;display:grid}.syllabus-import-body textarea{min-height:148px;line-height:1.5}.syllabus-import-body .ai-source-footer{align-items:center}.syllabus-read-button{justify-self:start}.syllabus-preview{background:#3154d80b;border:1px solid #3154d82e;border-radius:13px;gap:12px;padding:13px;display:grid}.syllabus-preview>div:first-child{gap:4px;display:grid}.syllabus-preview strong{color:var(--ink);font-size:.84rem}.syllabus-preview span{color:var(--muted);font-size:.74rem;line-height:1.45}.syllabus-preview-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;display:grid}.syllabus-preview-grid article{border:1px solid var(--line);background:#fff;border-radius:10px;gap:3px;min-width:0;padding:10px;display:grid}.syllabus-preview-grid .material-symbols-outlined{color:var(--primary);font-size:18px}.syllabus-preview-grid b{color:var(--ink);font-family:Fraunces,sans-serif;font-size:1.15rem;line-height:1}.syllabus-preview-list{gap:5px;max-height:120px;display:grid;overflow-y:auto}.syllabus-preview-list span{overflow-wrap:anywhere;background:#fff;border-radius:8px;padding:7px 9px}.danger-title .tile-icon{color:#dc2626;background:#fff1f2}.delete-explanation{color:#7f1d1d;background:#fff7f7;border-radius:10px;margin:0;padding:12px;font-size:.8rem;line-height:1.5}.deck-editor-overlay{align-items:start}.deck-editor-modal{width:min(100%,1080px);margin-block:14px}.deck-modal-search{border:1px solid var(--line);background:#f8fafc;border-radius:10px;align-items:center;gap:9px;padding:0 12px;display:flex}.deck-modal-search .material-symbols-outlined{color:var(--muted);font-size:19px}.deck-modal-search input{background:0 0;border:0}.deck-editor-layout{grid-template-columns:minmax(0,1.15fr) minmax(300px,.85fr);gap:16px;min-height:420px;display:grid}.deck-card-list{align-content:start;gap:10px;max-height:610px;padding-right:3px;display:grid;overflow-y:auto}.deck-edit-column{border-left:1px solid var(--line);min-width:0;padding-left:16px}.editable-card{border:1px solid var(--line);background:#fff;border-radius:13px;padding:16px}.editable-card>strong{line-height:1.45;display:block}.editable-card>p{color:var(--muted);margin:7px 0;font-size:.86rem;line-height:1.45}.editable-card>p.editable-card-explanation{color:#4c4a73;background:var(--primary-soft);border-radius:9px;padding:9px 10px}.editable-card>small{color:#94a3b8;font-size:.68rem}.editable-card ol{color:var(--muted);margin:8px 0;padding-left:22px;font-size:.82rem}.editable-card-actions{border-top:1px solid #f1f5f9;flex-wrap:wrap;align-items:center;gap:7px;margin-top:12px;padding-top:10px;display:flex}.editable-card-actions button{border:1px solid var(--line);min-height:34px;color:var(--muted);background:#f8fafc;border-radius:8px;align-items:center;gap:5px;padding:0 9px;font-size:.72rem;font-weight:700;display:inline-flex}.editable-card-actions button.danger{color:#dc2626}.editable-card-actions button .material-symbols-outlined{font-size:15px}.editable-card-actions label{color:var(--muted);align-items:center;gap:6px;margin-left:auto;font-size:.7rem;display:flex}.editable-card-actions select{border:1px solid var(--line);border-radius:8px;max-width:150px;padding:7px 8px;font-size:.72rem}.editor-form-title{justify-content:space-between;align-items:center;display:flex}.import-flashcards-modal{width:min(100%,820px)}.import-destination-grid{align-items:end}.import-new-deck-name{margin-top:-2px}.import-kind-tabs{border:1px solid var(--line);background:#f8fafc;border-radius:12px;grid-template-columns:1fr 1fr;gap:6px;padding:5px;display:grid}.import-kind-tabs button{min-height:44px;color:var(--muted);font:inherit;cursor:pointer;background:0 0;border:0;border-radius:8px;justify-content:center;align-items:center;gap:8px;font-weight:800;display:flex}.import-kind-tabs button.active{color:var(--primary);background:#fff;box-shadow:0 5px 14px #0f172a14}.import-exam-actions{flex-wrap:wrap;gap:9px;display:flex}.import-format-guide{color:#4c4a73;background:var(--primary-soft);border:1px solid #dedff3;border-radius:11px;gap:7px;padding:13px 14px;display:grid}.import-format-guide code{color:#313052;white-space:pre;background:#fff;border-radius:8px;padding:9px 10px;overflow-x:auto}.import-format-guide.exam-format-guide code{white-space:pre-wrap;max-height:150px}.import-format-guide span,.import-preview small{color:var(--muted);font-size:.78rem;line-height:1.45}.import-file-picker{border:1.5px dashed color-mix(in srgb,var(--primary) 34%,var(--line));min-height:82px;color:var(--ink);background:color-mix(in srgb,var(--primary) 3%,var(--surface));cursor:pointer;border-radius:14px;grid-template-columns:46px minmax(0,1fr) auto;align-items:center;gap:13px;padding:14px 16px;transition:border-color .16s,background .16s,transform .16s;display:grid}.import-file-picker:hover{border-color:color-mix(in srgb,var(--primary) 62%,var(--line));background:color-mix(in srgb,var(--primary) 7%,var(--surface));transform:translateY(-1px)}.import-file-picker.has-file{background:color-mix(in srgb,var(--primary) 6%,var(--surface));border-style:solid}.import-file-picker input{clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.import-upload-icon{width:46px;height:46px;color:var(--primary);background:color-mix(in srgb,var(--primary) 12%,var(--surface));border-radius:12px;place-items:center;display:grid}.import-upload-icon .material-symbols-outlined{font-size:23px}.import-upload-copy{gap:3px;min-width:0;display:grid}.import-upload-copy strong{text-overflow:ellipsis;white-space:nowrap;font-size:.86rem;overflow:hidden}.import-upload-copy small{color:var(--muted);font-size:.72rem;font-weight:500}.import-upload-action{border:1px solid color-mix(in srgb,var(--primary) 22%,var(--line));color:var(--primary);background:var(--surface);border-radius:9px;padding:8px 11px;font-size:.72rem;font-weight:800}.import-preview{gap:7px;max-height:265px;display:grid;overflow-y:auto}.import-preview article{border:1px solid var(--line);background:#fafbfc;border-radius:9px;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;padding:10px;font-size:.76rem;display:grid}.import-preview article span{overflow-wrap:anywhere;min-width:0}.import-exam-preview article{grid-template-columns:minmax(0,1.4fr) minmax(0,1fr) auto}.calendar-page{min-width:0}.calendar-overview{box-shadow:var(--shadow-card);background:linear-gradient(135deg,#fffffffa,#f4f7fff5);border:1px solid #e2e8f0e0;border-radius:16px;justify-content:space-between;align-items:center;gap:24px;margin-bottom:16px;padding:20px 22px;display:flex}.calendar-overview .home-card-label{margin-bottom:8px}.calendar-overview p{color:var(--muted);margin:0 0 8px;font-size:.84rem;line-height:1.45}.calendar-overview small{color:#64748b;font-size:.74rem}.calendar-card{box-shadow:var(--shadow-card);background:#fff;border:1px solid #e2e8f0e6;border-radius:18px;overflow:hidden}.calendar-toolbar{border-bottom:1px solid var(--line);grid-template-columns:1fr auto 1fr;align-items:center;gap:16px;min-height:72px;padding:14px 18px;display:grid}.calendar-toolbar>div{align-items:center;gap:7px;display:flex}.calendar-toolbar>div:last-child{justify-content:flex-end}.calendar-toolbar button{border:1px solid var(--line);color:#536073;background:#fff;border-radius:9px;justify-content:center;align-items:center;gap:5px;min-height:36px;padding:0 10px;font-size:.76rem;font-weight:700;display:inline-flex}.calendar-toolbar button:hover{color:var(--primary);border-color:rgba(var(--primary-rgb),.24);background:var(--primary-soft)}.calendar-toolbar button .material-symbols-outlined{font-size:18px}.calendar-toolbar .legacy-btn.primary{color:#fff;background:linear-gradient(135deg,var(--primary),#4f46e5);border-color:#0000}.calendar-toolbar h3{color:var(--ink);letter-spacing:-.025em;text-transform:capitalize;margin:0;font-family:Fraunces,sans-serif;font-size:1rem}.calendar-view-toggle{border:1px solid var(--line);background:#f8fafc;border-radius:10px;padding:3px;display:inline-flex}.calendar-view-toggle button{background:0 0;border:0;min-height:30px}.calendar-view-toggle button.active{color:var(--primary);background:#fff;box-shadow:0 2px 7px #0f172a14}.calendar-weekdays{border-bottom:1px solid var(--line);background:#f8fafc;grid-template-columns:repeat(7,minmax(0,1fr));display:grid}.calendar-weekdays span{color:#7b8799;text-align:center;text-transform:uppercase;padding:10px 8px;font-size:.68rem;font-weight:800}.calendar-grid{grid-template-columns:repeat(7,minmax(0,1fr));display:grid}.calendar-day{border-right:1px solid var(--line);border-bottom:1px solid var(--line);background:#fff;min-width:0;min-height:112px;padding:7px}.calendar-day:nth-child(7n){border-right:0}.calendar-day:nth-last-child(-n+7){border-bottom:0}.calendar-day.outside{background:#fafbfd}.calendar-day.outside .calendar-day-number{color:#c1c8d3}.calendar-day.today{background:rgba(var(--primary-rgb),.035);box-shadow:inset 0 0 0 1px rgba(var(--primary-rgb),.17)}.calendar-day-number{color:#64748b;background:0 0;border:0;border-radius:50%;place-items:center;width:28px;height:28px;margin-left:auto;padding:0;font-size:.74rem;font-weight:750;display:grid}.calendar-day-number:hover{color:var(--primary);background:var(--primary-soft)}.calendar-day.today .calendar-day-number{color:#fff;background:var(--primary)}.calendar-events{gap:4px;margin-top:5px;display:grid}.calendar-events button{color:#42526a;background:color-mix(in srgb,var(--event-color) 12%,white);text-align:left;text-overflow:ellipsis;white-space:nowrap;border:0;border-radius:5px;min-width:0;padding:5px 6px 5px 10px;font-size:.64rem;font-weight:700;position:relative;overflow:hidden}.calendar-events button:before{background:var(--event-color);content:"";width:3px;position:absolute;inset:0 auto 0 0}.calendar-events span{color:var(--muted);padding-left:5px;font-size:.62rem}.calendar-legend{border-top:1px solid var(--line);background:#fbfcfe;flex-wrap:wrap;gap:16px;padding:13px 18px;display:flex}.calendar-legend span{color:#64748b;align-items:center;gap:6px;font-size:.68rem;font-weight:700;display:inline-flex}.calendar-legend i{background:#3b82f6;border-radius:50%;width:8px;height:8px}.calendar-legend i.quiz{background:#8b5cf6}.calendar-legend i.exam{background:#ef4444}.calendar-legend i.practice{background:#10b981}.calendar-legend i.assignment{background:#f59e0b}.discipline-sync{min-height:18px;color:var(--muted);margin:-9px 0 10px;font-size:.7rem}.discipline-command-card,.discipline-panel{box-shadow:var(--shadow-card);background:#fffffff5;border:1px solid #e2e8f0e6;border-radius:17px}.discipline-content{gap:18px;min-width:0;display:grid}.discipline-command-card{padding:20px}.discipline-title{align-items:center;gap:10px;display:flex}.discipline-title>i{border-radius:50%;width:12px;height:12px}.discipline-title h3{margin:0;font-family:Fraunces,sans-serif;font-size:1.08rem}.discipline-title p{color:var(--muted);margin:7px 0 0;font-size:.78rem}.discipline-actions{flex-wrap:wrap;gap:8px;margin-top:16px;display:flex}.discipline-tabs{border:1px solid var(--line);background:#f8fafc;border-radius:12px;grid-template-columns:repeat(6,minmax(0,1fr));gap:3px;margin-top:14px;padding:4px;display:grid}.discipline-tabs button{color:#64748b;background:0 0;border:0;border-radius:9px;justify-content:center;align-items:center;gap:6px;min-width:0;min-height:38px;padding:0 8px;font-size:.72rem;font-weight:700;display:flex}.discipline-tabs button .material-symbols-outlined{font-size:17px}.discipline-tabs button.active{color:var(--primary);background:#fff;box-shadow:0 3px 10px #0f172a14}.discipline-panel{min-height:320px;padding:20px}.discipline-panel-title{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:12px;margin-bottom:13px;padding:0 2px 12px;display:flex}.discipline-panel-title>span{align-items:center;gap:9px;display:flex}.discipline-panel-title .material-symbols-outlined{color:var(--primary);font-size:20px}.discipline-panel-title strong{font-size:.86rem}.discipline-panel-title small{color:var(--muted);font-size:.68rem;font-weight:700}.class-event-list{gap:10px;display:grid}.class-event-list article{border:1px solid var(--line);background:#fff;border-radius:12px;overflow:hidden}.class-event-list article>button{width:100%;color:var(--ink);text-align:left;background:0 0;border:0;grid-template-columns:92px minmax(0,1fr) auto 24px;align-items:center;gap:10px;padding:15px;display:grid}.class-event-list time{color:var(--primary);font-size:.72rem;font-weight:800}.class-event-list strong{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:.78rem;overflow:hidden}.class-event-list button>span{color:var(--muted);font-size:.7rem}.class-event-list button>.material-symbols-outlined{color:var(--muted);font-size:18px}.class-event-list article>div{color:var(--muted);padding:0 15px 14px 117px;font-size:.76rem;line-height:1.55}.class-event-list article>div p{margin:5px 0}.past-classes{border-top:1px solid var(--line);margin-top:14px;padding-top:13px}.past-classes summary{color:#5d687b;cursor:pointer;align-items:center;gap:8px;padding:10px;display:flex}.past-classes summary .material-symbols-outlined{color:var(--primary);font-size:19px}.past-classes summary strong{font-size:.78rem}.past-classes summary span{margin-left:auto;font-size:.68rem}.discipline-record-list{gap:9px;display:grid}.discipline-record-list>label,.discipline-record-list>article{border:1px solid var(--line);background:#fff;border-radius:11px;align-items:flex-start;gap:11px;padding:13px;display:flex}.discipline-record-list input{accent-color:var(--primary);margin-top:2px}.discipline-record-list>label>span,.discipline-record-list>article>span{gap:4px;min-width:0;display:grid}.discipline-record-list strong{overflow-wrap:anywhere;font-size:.78rem;line-height:1.45}.discipline-record-list small{color:var(--muted);font-size:.67rem}.discipline-record-list label.completed strong{color:var(--muted);text-decoration:line-through}.discipline-record-list article>b{width:25px;height:25px;color:var(--primary);background:var(--primary-soft);border-radius:7px;flex:none;place-items:center;font-size:.7rem;display:grid}.discipline-record-list article>.material-symbols-outlined{color:var(--primary);font-size:21px}.grade-table{border:1px solid var(--line);border-radius:11px;display:grid;overflow:hidden}.grade-row{border-bottom:1px solid var(--line);grid-template-columns:minmax(0,1.5fr) .8fr .5fr .7fr;gap:8px;padding:12px 14px;font-size:.73rem;display:grid}.grade-row:last-child{border-bottom:0}.grade-row.header{color:var(--muted);text-transform:uppercase;background:#f8fafc;font-size:.65rem;font-weight:800}.grade-row b{color:var(--primary)}.attendance-summary{color:#276749;background:#ecfdf5;border-radius:12px;align-items:baseline;gap:8px;margin-bottom:14px;padding:16px;display:flex}.attendance-summary strong{font-family:Fraunces,sans-serif;font-size:1.4rem}.attendance-summary span{font-size:.75rem}.discipline-empty{color:var(--muted);text-align:center;margin:20px 0;font-size:.8rem}.discipline-empty-state{text-align:center;align-content:center;justify-items:center;min-height:440px;display:grid}.discipline-empty-state>.material-symbols-outlined{color:var(--primary);font-size:38px}.discipline-empty-state h3{margin:12px 0 4px}.discipline-empty-state p{color:var(--muted);margin:0 0 18px}.question-primary-actions{grid-template-columns:1fr 1fr;gap:10px;margin-bottom:14px;display:grid}.question-filters,.simulation-library,.question-bank-list{box-shadow:var(--shadow-card);background:#fffffff5;border:1px solid #e2e8f0e6;border-radius:17px;padding:20px}.question-filters{grid-template-columns:minmax(240px,1.5fr) repeat(5,minmax(125px,.72fr));gap:10px;display:grid}.question-filters .legacy-search{height:44px}.question-filters select{border:1px solid var(--line);color:#536073;background:#fff;border-radius:10px;min-width:0;height:44px;padding:0 11px;font-size:.75rem}.question-filters select:nth-last-child(-n+2){max-width:150px}.question-sync{color:var(--muted);margin:10px 2px;font-size:.7rem}.question-section-title{align-items:flex-start;gap:10px;display:flex}.question-section-title>.material-symbols-outlined{color:var(--primary);font-size:22px}.question-section-title h3{margin:0;font-family:Fraunces,sans-serif;font-size:.92rem}.question-section-title p{color:var(--muted);margin:7px 0 0;font-size:.76rem}.question-bank-list{gap:9px;margin-bottom:14px;display:grid}.question-bank-list>article{border:1px solid var(--line);border-radius:10px;align-items:flex-start;gap:11px;padding:12px;display:flex}.question-bank-list>article>b{width:25px;height:25px;color:var(--primary);background:var(--primary-soft);border-radius:7px;flex:none;place-items:center;font-size:.68rem;display:grid}.question-bank-list article div{gap:5px;min-width:0;display:grid}.question-bank-list article strong{overflow-wrap:anywhere;font-size:.76rem;line-height:1.4}.question-bank-list article span{color:var(--muted);font-size:.65rem}.simulation-library{margin-top:14px}.simulation-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:16px;display:grid}.simulation-grid article{border:1px solid var(--line);border-radius:11px;justify-content:space-between;align-items:center;gap:12px;padding:15px;display:flex}.simulation-grid strong{font-size:.8rem}.simulation-grid p{color:var(--muted);margin:5px 0 0;font-size:.68rem}.question-empty{color:var(--muted);margin:16px 0 0;font-size:.78rem}.question-exam{max-width:860px;margin:0 auto}.exam-header{border:1px solid var(--line);box-shadow:var(--shadow-card);background:#fff;border-radius:15px;grid-template-columns:auto 1fr auto;align-items:center;gap:18px;margin-bottom:16px;padding:16px 18px;display:grid}.exam-header h2{margin:0;font-family:Fraunces,sans-serif;font-size:1.05rem}.exam-header p{color:var(--muted);margin:4px 0 0;font-size:.72rem}.exam-header>span{color:var(--primary);align-items:center;gap:6px;font-size:.74rem;font-weight:750;display:inline-flex}.exam-header>span .material-symbols-outlined{font-size:18px}.exam-question-card,.exam-result{border:1px solid var(--line);box-shadow:var(--shadow);background:#fff;border-radius:22px;padding:clamp(24px,5vw,46px)}.exam-question-card>small{color:var(--primary);text-transform:uppercase;font-weight:800}.exam-question-card h3{margin:16px 0 24px;font-size:clamp(1.1rem,2.5vw,1.45rem);line-height:1.5}.exam-options{gap:10px;display:grid}.exam-options button{border:1px solid var(--line);color:var(--ink);text-align:left;background:#fafbfc;border-radius:11px;align-items:flex-start;gap:12px;padding:14px;display:flex}.exam-options button.selected{border-color:rgba(var(--primary-rgb),.5);background:var(--primary-soft);box-shadow:0 0 0 2px rgba(var(--primary-rgb),.08)}.exam-options b{width:25px;height:25px;color:var(--primary);background:#fff;border-radius:7px;flex:none;place-items:center;display:grid}.exam-options span{font-size:.84rem;line-height:1.45}.question-rich-text{overflow-wrap:anywhere;gap:12px;min-width:0;display:grid}.exam-options .question-rich-text,.question-answer-panel .question-rich-text,.exam-review .question-rich-text{gap:8px;display:inline-grid}.question-inline-media{margin:4px 0;display:block}.question-inline-media img{border:1px solid var(--line);object-fit:contain;background:#fff;border-radius:10px;max-width:min(100%,680px);max-height:420px;box-shadow:0 8px 22px #0f172a14}.question-missing-media{color:#92400e;background:#fffbeb;border:1px dashed #f59e0b;border-radius:8px;width:-moz-fit-content;width:fit-content;max-width:100%;padding:7px 9px;font-size:.76rem;font-weight:800;display:inline-flex}.exam-next{width:100%;margin-top:18px}.exam-result{text-align:center;justify-items:center;display:grid}.exam-result>.material-symbols-outlined{color:#f59e0b;font-size:52px}.exam-result h3{margin:12px 0 0;font-size:2rem}.exam-result p{max-width:460px;color:var(--muted)}.stats-empty{color:var(--muted);text-align:center}.settings-page{border:1px solid var(--line);max-width:900px;box-shadow:var(--shadow);background:#fff;border-radius:20px;margin:0 auto;overflow:hidden}.settings-heading{border-bottom:1px solid var(--line);align-items:center;gap:12px;padding:22px 24px;display:flex}.settings-heading>span{width:43px;height:43px;color:var(--primary);background:var(--primary-soft);border-radius:12px;place-items:center;display:grid}.settings-heading h2{margin:0;font-family:Fraunces,sans-serif;font-size:1.25rem}.settings-heading p{color:var(--muted);margin:4px 0 0;font-size:.75rem}.settings-tabs{border-bottom:1px solid var(--line);grid-template-columns:repeat(4,1fr);padding:0 24px;display:grid}.settings-tabs button{min-height:50px;color:var(--muted);background:0 0;border:0;justify-content:center;align-items:center;gap:7px;font-size:.76rem;font-weight:750;display:flex;position:relative}.settings-tabs button .material-symbols-outlined{font-size:18px}.settings-tabs button.active{color:var(--primary)}.settings-tabs button.active:after{background:var(--primary);content:"";border-radius:3px;height:3px;position:absolute;bottom:-1px;left:8px;right:8px}.settings-message{min-height:18px;color:var(--muted);margin:10px 24px 0;font-size:.68rem}.settings-content{padding:0 24px 24px}.settings-section{border-bottom:1px solid var(--line);padding:18px 0}.settings-section:last-child{border-bottom:0}.settings-section h3{margin:0;font-size:.9rem}.settings-section>p{color:var(--muted);margin:6px 0 14px;font-size:.74rem}.settings-choice-grid{gap:10px;display:grid}.settings-choice-grid.two{grid-template-columns:1fr 1fr}.settings-choice-grid.three{grid-template-columns:repeat(3,1fr)}.settings-choice-grid.four{grid-template-columns:repeat(4,1fr)}.settings-choice-grid button{border:1px solid var(--line);min-height:64px;color:var(--ink);text-align:left;background:#fff;border-radius:11px;align-content:center;gap:4px;padding:12px;display:grid;position:relative}.settings-choice-grid button.selected{border-color:rgba(var(--primary-rgb),.45);background:var(--primary-soft);box-shadow:0 0 0 1px rgba(var(--primary-rgb),.08)}.settings-choice-grid button>.material-symbols-outlined:last-child{color:var(--primary);font-size:17px;position:absolute;top:8px;right:8px}.settings-choice-grid strong{font-size:.76rem}.settings-choice-grid small,.settings-help{color:var(--muted);font-size:.65rem}.settings-help{margin-top:9px;display:block}.palette-options button{grid-template-columns:auto 1fr;align-items:center}.palette-options i{background:#2f5d50;border-radius:50%;width:18px;height:18px}.palette-options [data-palette=violet] i{background:#7c3aed}.palette-options [data-palette=emerald] i{background:#059669}.palette-options [data-palette=sunset] i{background:#f97316}.settings-number{color:#475569;justify-content:space-between;align-items:center;gap:16px;font-size:.75rem;font-weight:700;display:flex}.settings-number input{border:1px solid var(--line);border-radius:9px;width:110px;padding:10px}.settings-switch{align-items:flex-start;gap:10px;margin-top:16px;display:flex}.settings-switch input{accent-color:var(--primary);margin-top:3px}.settings-switch span{gap:4px;display:grid}.settings-switch strong{font-size:.77rem}.settings-switch small{color:var(--muted);font-size:.66rem}.connection-list{gap:10px;display:grid}.connection-list article{border:1px solid var(--line);border-radius:11px;grid-template-columns:auto 1fr auto;align-items:center;gap:12px;padding:14px;display:grid}.connection-list article>.material-symbols-outlined{color:var(--primary)}.connection-list article div{gap:3px;display:grid}.connection-list strong{font-size:.78rem}.connection-list small{color:var(--muted);font-size:.65rem}.connection-list button{border:1px solid var(--line);color:var(--muted);background:#f8fafc;border-radius:8px;padding:8px 10px;font-size:.65rem}.about-settings{text-align:center;justify-items:center;padding:34px 20px;display:grid}.about-settings>.material-symbols-outlined{color:var(--success);font-size:42px}.about-settings p{max-width:560px;line-height:1.55}.home-card{min-width:0;box-shadow:var(--shadow-card);background:#fffffff0;border:1px solid #e2e8f0e0;border-radius:16px;padding:22px}.home-card-label{color:#475569;letter-spacing:.09em;text-transform:uppercase;align-items:center;gap:10px;margin-bottom:16px;font-size:.75rem;font-weight:800;display:flex}.label-icon{width:40px;height:40px;color:var(--primary);background:var(--primary-soft);border-radius:11px;place-items:center;display:grid}.label-icon .material-symbols-outlined{font-size:20px}.home-search-row{grid-template-columns:1fr auto;gap:10px;display:grid}.home-library-link{color:var(--primary);margin:13px 0 10px;font-size:.85rem;font-weight:700;text-decoration:none;display:inline-block}.home-folder-grid{grid-template-columns:1fr 1fr;gap:10px;display:grid}.home-folder-card{border:1px solid var(--line);min-width:0;min-height:172px;color:inherit;text-align:center;background:#fff;border-radius:14px;flex-direction:column;padding:16px;text-decoration:none;display:flex;box-shadow:0 3px 10px #0f172a0b}.home-folder-card .tile-icon{color:var(--primary);margin:0}.home-folder-card>strong{margin-top:12px;font-size:.9rem}.home-folder-card>p{color:var(--muted);margin:7px 0 12px;font-size:.75rem;line-height:1.4}.home-folder-stats{flex-wrap:wrap;justify-content:center;gap:8px;margin-top:auto;display:flex}.home-folder-stats>span{color:var(--muted);background:#f8fafc;border-radius:999px;align-items:center;gap:4px;padding:4px 7px;font-size:.65rem;display:flex}.home-folder-stats .material-symbols-outlined{color:var(--primary);font-size:13px}.deck-picker{grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:14px;display:grid}.deck-picker button{border:1px solid var(--line);text-align:left;color:var(--ink);background:#fff;border-radius:15px;gap:8px;padding:22px;display:grid;box-shadow:0 8px 24px #2c344b0a}.study-stage{text-align:center;max-width:800px;margin:0 auto}.study-session-bar{border:1px solid var(--line);background:color-mix(in srgb,var(--surface) 97%,var(--primary-soft));box-shadow:var(--shadow-xs);border-radius:13px;grid-template-columns:minmax(0,1fr) auto;align-items:stretch;display:grid;overflow:hidden}.study-progress{min-width:0;color:var(--muted);grid-template-columns:auto minmax(70px,1fr) auto;align-items:center;gap:13px;margin:0;padding:10px 14px;font-size:.76rem;display:grid}.study-progress progress{width:100%;accent-color:var(--primary)}.study-timer{min-width:44px;color:var(--ink);font-variant-numeric:tabular-nums;font-weight:750}.study-utility-actions{border-left:1px solid var(--line);align-items:center;gap:3px;padding:6px;display:flex}.study-utility-actions button{color:#697386;background:0 0;border:0;border-radius:9px;place-items:center;width:36px;height:36px;padding:0;display:grid}.study-utility-actions button:hover:not(:disabled){color:var(--primary);background:rgba(var(--primary-rgb),.09)}.study-utility-actions button.active{color:#9a5b08;background:#fff3d8}.study-utility-actions button:disabled{cursor:not-allowed;opacity:.32}.study-utility-icon{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;width:19px;height:19px}.study-card{min-height:430px;box-shadow:var(--shadow);overflow-wrap:anywhere;background:#fff;border:1px solid #dedff3;border-radius:22px;flex-direction:column;margin-top:14px;padding:0;display:flex;overflow:hidden}.study-card-content{flex:1;place-content:center;padding:clamp(34px,7vw,70px);display:grid}.study-card-content>small,.study-card-back>small{color:var(--primary);letter-spacing:.14em;font-weight:850}.study-card h2{letter-spacing:-.035em;max-width:680px;margin:18px auto 0;font-size:clamp(1.7rem,4vw,2.8rem)}.study-card-back{animation:study-face-in .26s var(--ease-out) both;justify-items:center;gap:14px;display:grid}.study-card-back p{max-width:680px;color:var(--ink);margin:0;font-family:Fraunces,sans-serif;font-size:clamp(1.45rem,3.1vw,2.15rem);line-height:1.45}.study-ask-tote{border:1px solid rgba(var(--primary-rgb),.2);min-height:35px;color:var(--primary);background:rgba(var(--primary-rgb),.055);border-radius:999px;align-items:center;gap:7px;padding:6px 11px 6px 7px;font-size:.66rem;font-weight:800;display:inline-flex}.study-ask-tote:hover{border-color:rgba(var(--primary-rgb),.38);background:rgba(var(--primary-rgb),.1);transform:translateY(-1px)}.study-ask-tote img{object-fit:contain;width:25px;height:25px;image-rendering:pixelated}.mcq-options{gap:9px;width:min(100%,560px);margin:24px auto 0;display:grid}.mcq-options button{border:1px solid var(--line);text-align:left;color:var(--ink);background:#f8f9fc;border-radius:11px;padding:13px 15px}.mcq-options button:hover:not(:disabled){background:var(--primary-soft);border-color:#aaa6f4}.study-card-actions{border-top:1px solid var(--line);background:color-mix(in srgb,var(--surface) 97%,var(--primary-soft));justify-content:center;padding:13px 16px;display:flex}.study-card-actions .reveal-button{border-radius:11px;justify-content:center;align-items:center;gap:10px;width:min(100%,360px);min-height:45px;margin:0;display:inline-flex}.study-card-actions .reveal-button kbd{color:inherit;font:inherit;background:#ffffff1f;border:1px solid #ffffff59;border-radius:6px;padding:3px 7px;font-size:.62rem}.evaluation-actions{grid-template-columns:auto minmax(0,1fr);align-items:center;gap:13px;display:grid}.study-evaluation-label{color:var(--muted);white-space:nowrap;font-size:.65rem;font-weight:800}.rating-grid{grid-template-columns:repeat(4,1fr);gap:7px;width:100%;margin:0;display:grid}.rating-grid button{color:#fff;border:0;border-radius:9px;place-content:center;gap:2px;min-height:48px;padding:7px 8px;font-weight:750;display:grid}.rating-grid button small{color:inherit;opacity:.82;font-size:.68rem;font-weight:650}.rating-grid button strong{font-size:.78rem}.simple-rating-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.simple-rating-grid button{grid-template-columns:auto auto;align-items:center;gap:7px}.simple-rating-grid button span{font-size:1.25rem;line-height:1}.rating-again{background:#dc2626}.rating-hard{background:#d97706}.rating-good{background:#0f9f6e}.rating-easy{background:#4f46e5}.study-stage>.button-link{margin-top:12px}@keyframes study-face-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.study-summary{border:1px solid var(--line);text-align:center;max-width:620px;box-shadow:var(--shadow);background:#fff;border-radius:22px;margin:40px auto;padding:42px}.study-summary h2{margin:0;font-size:2rem}.study-summary p:not(.eyebrow){color:var(--muted)}.summary-actions{flex-wrap:wrap;justify-content:center;gap:9px;margin-top:22px;display:flex}.summary-actions .button-secondary{color:#455067;background:#eef0f5}@media (max-width:880px){.app-shell{grid-template-columns:1fr}.sidebar{border-right:0;border-bottom:1px solid var(--line);width:100%;height:auto;padding:16px;position:static}.brand{padding-bottom:14px}.sidebar nav{padding-bottom:3px;display:flex;overflow-x:auto}.sidebar nav a{white-space:nowrap;flex:none}.sidebar nav a.active{box-shadow:inset 0 -3px 0 var(--primary)}.sidebar-footer{display:none}.topbar{height:56px;padding:0 18px}.dashboard-hero,.milestone-grid,.library-grid{grid-template-columns:1fr}.srs-field-grid{grid-template-columns:1fr 1fr}}@media (max-width:560px){.environment-chip{display:none}.route-content{padding:24px 16px 48px}.dashboard-hero{border-radius:22px;padding:30px 24px}.architecture-card{padding:20px}.feature-hero{display:block}.phase-badge{margin-top:24px}.workspace-header{display:block}.rating-grid{grid-template-columns:1fr 1fr}.study-session-bar{grid-template-columns:1fr}.study-utility-actions{border-top:1px solid var(--line);border-left:0;justify-content:center}.evaluation-actions{grid-template-columns:1fr}.study-card{min-height:390px}.study-card-content{padding:30px 22px}.srs-field-grid{grid-template-columns:1fr}}@media (max-width:1120px){.header-chip{display:none}}@media (max-width:900px){.legacy-app-shell,.legacy-app-shell.sidebar-collapsed{padding-left:0}.legacy-sidebar,.sidebar-collapsed .legacy-sidebar{width:min(82vw,var(--sidebar-open));transform:translate(-105%)}.sidebar-mobile-open .legacy-sidebar{transform:translate(0)}.sidebar-mobile-open .sidebar-brand,.sidebar-mobile-open .nav-label,.sidebar-mobile-open .sidebar-user-details,.sidebar-mobile-open .sidebar-profile-settings{display:initial}.sidebar-mobile-open .side-nav-btn{justify-content:flex-start;padding:10px 12px}.sidebar-backdrop{z-index:2400;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#0f172a5c;border:0;width:100%;height:100%;position:fixed;inset:0}.sidebar-mobile-open .sidebar-backdrop{display:block}.mobile-menu-fab{z-index:2300;border:1px solid var(--line);width:40px;height:40px;color:var(--muted);background:#fffffff0;border-radius:11px;justify-content:center;align-items:center;position:fixed;top:38px;left:18px;box-shadow:0 5px 16px #0f172a1a}.legacy-app-container{padding:28px 22px 48px}.legacy-app-header{padding-left:62px}.legacy-library-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.library-fab{right:22px}.deck-create-form{grid-template-columns:1fr 1fr}.deck-editor-layout{grid-template-columns:1fr}.deck-edit-column{border-top:1px solid var(--line);border-left:0;padding:16px 0 0}.calendar-toolbar{grid-template-columns:1fr auto}.calendar-toolbar h3{text-align:center;grid-area:1/1/auto/-1}.calendar-toolbar>div:first-child{grid-area:2/1}.calendar-toolbar>div:last-child{grid-area:2/2}.calendar-day{min-height:96px;padding:5px}.discipline-tabs{grid-template-columns:repeat(6,minmax(112px,1fr));overflow-x:auto}.question-filters{grid-template-columns:repeat(3,minmax(0,1fr))}.question-filters .legacy-search{grid-column:span 2}}@media (max-width:640px){.legacy-app-container{padding:14px 14px 42px}.legacy-app-header{border-radius:15px;min-height:58px;margin-bottom:24px;padding:10px 12px 10px 54px;top:8px}.header-notification-btn{width:36px;height:36px}.legacy-page-heading{padding-inline:2px}.legacy-page-heading h2{font-size:1.55rem}.library-command-card,.legacy-deck-editor{border-radius:15px;padding:14px}.library-toolbar .legacy-search{flex-basis:100%}.library-toolbar .legacy-btn{min-width:42px;padding:0 11px;font-size:0}.library-toolbar .legacy-btn .material-symbols-outlined{font-size:20px}.legacy-library-grid{grid-template-columns:1fr}.legacy-library-tile{min-height:160px}.library-drag-hint{display:none}.library-create-form,.deck-create-form{grid-template-columns:1fr}.deck-create-form label{white-space:normal}.home-search-row{grid-template-columns:1fr}.legacy-modal-overlay{padding:10px}.legacy-modal{border-radius:16px;max-height:calc(100vh - 20px);padding:18px}.modal-field-grid{grid-template-columns:1fr}.syllabus-preview-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.legacy-modal-actions.split{grid-template-columns:1fr 1fr}.legacy-modal-actions.split>span{display:none}.editable-card-actions label{width:100%;margin-left:0}.calendar-overview{flex-direction:column;align-items:stretch;padding:17px}.calendar-overview .legacy-btn{align-self:flex-start}.calendar-toolbar{grid-template-columns:1fr;padding:12px}.calendar-toolbar h3,.calendar-toolbar>div:first-child,.calendar-toolbar>div:last-child{grid-area:auto/1}.calendar-toolbar>div,.calendar-toolbar>div:last-child{flex-wrap:wrap;justify-content:center}.calendar-view-toggle{display:none}.calendar-day{min-height:78px;padding:3px}.calendar-weekdays span{padding:8px 2px;font-size:.6rem}.calendar-day-number{width:24px;height:24px;font-size:.66rem}.calendar-events button{padding:4px 3px 4px 7px;font-size:.56rem}.calendar-legend{gap:10px;padding:11px 12px}.discipline-command-card,.discipline-panel{border-radius:15px;padding:15px}.discipline-actions .legacy-btn{flex:150px}.class-event-list article>button{grid-template-columns:82px minmax(0,1fr) 22px}.class-event-list button>span{display:none}.class-event-list article>div{padding-left:15px}.grade-row{grid-template-columns:minmax(0,1fr) .55fr .65fr}.grade-row>:nth-child(2){display:none}.question-primary-actions,.simulation-grid{grid-template-columns:1fr}.question-filters{grid-template-columns:1fr 1fr;padding:15px}.question-filters .legacy-search{grid-column:1/-1}.question-filters select:nth-last-child(-n+2){max-width:none}.exam-header{grid-template-columns:auto 1fr}.exam-header>span{grid-column:1/-1;justify-content:center}.settings-page{border-radius:15px}.settings-heading,.settings-content{padding-inline:16px}.settings-tabs{grid-template-columns:1fr 1fr;padding:0 12px}.settings-choice-grid.two,.settings-choice-grid.three,.settings-choice-grid.four{grid-template-columns:1fr}.connection-list article{grid-template-columns:auto 1fr}.connection-list button{grid-column:1/-1}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important}}.question-hero .question-primary-actions{flex-wrap:wrap;grid-template-columns:none;justify-content:flex-end;margin:0;display:flex}.question-workspace-card .question-filters select:nth-last-child(-n+2){max-width:none}.study-now-card .home-search-row{grid-template-columns:minmax(0,1fr) auto}.study-now-card .home-search-row .legacy-btn{white-space:nowrap}.home-library-heading{justify-content:space-between;align-items:center;gap:12px;margin:15px 0 9px;display:flex}.home-library-heading>span{color:#64748b;letter-spacing:.08em;text-transform:uppercase;font-size:.64rem;font-weight:850}.home-library-heading .home-library-link{margin:0;font-size:.65rem}.home-deck-picker{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.home-deck-picker>button{border:1px solid var(--line);color:#475569;text-align:left;background:#fff;border-radius:11px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:9px;min-width:0;padding:11px;transition:border-color .18s,background .18s,box-shadow .18s;display:grid}.home-deck-picker>button:hover{background:#fafbff;border-color:#bdcaff}.home-deck-picker>button.selected{border-color:var(--primary);background:var(--primary-soft);box-shadow:0 0 0 2px rgba(var(--primary-rgb),.08)}.home-deck-picker .tile-icon{width:34px;height:34px}.home-deck-picker .tile-icon .material-symbols-outlined{font-size:18px}.home-deck-picker>button>span:nth-child(2){gap:3px;min-width:0;display:grid}.home-deck-picker strong,.home-deck-picker small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.home-deck-picker strong{color:var(--ink);font-size:.73rem}.home-deck-picker small{color:var(--muted);font-size:.61rem}.home-deck-picker>button>.material-symbols-outlined{color:#94a3b8;font-size:18px}.home-deck-picker>button.selected>.material-symbols-outlined{color:var(--primary)}.home-deck-empty{min-height:82px;color:var(--muted);text-align:left;grid-column:1/-1;justify-content:center;align-items:center;gap:9px;display:flex}.home-deck-empty>.material-symbols-outlined{color:#a8b3c4}.home-deck-empty span{gap:3px;display:grid}.home-deck-empty strong{color:#475569}@media (max-width:980px){.question-hero .question-primary-actions{justify-content:flex-start}}@media (max-width:520px){.question-hero .question-primary-actions{grid-template-columns:1fr;width:100%;display:grid}.study-now-card .home-search-row,.home-deck-picker{grid-template-columns:1fr}}.tote-tutor{--tote-size:144px;left:calc(var(--sidebar-open) + 18px);z-index:3300;width:var(--tote-size);height:var(--tote-size);pointer-events:none;filter:drop-shadow(0 18px 28px #0f172a29);animation:tote-arrive .38s var(--ease-out) both;position:fixed;bottom:18px}.sidebar-collapsed .tote-tutor{left:calc(var(--sidebar-rail) + 18px)}.tote-character-handle{z-index:2;width:var(--tote-size);height:var(--tote-size);color:inherit;cursor:grab;touch-action:none;pointer-events:auto;-webkit-user-select:none;user-select:none;background:0 0;border:0;border-radius:38%;padding:0;animation:.58s cubic-bezier(.2,.9,.25,1.25) both tote-character-enter;display:block;position:relative}.tote-character-handle:focus-visible{outline:3px solid rgba(var(--primary-rgb),.48);outline-offset:1px}.tote-character{object-fit:contain;object-position:center bottom;width:100%;height:100%;image-rendering:pixelated;transform-origin:50% 55%;pointer-events:none;-webkit-user-select:none;user-select:none;-webkit-user-drag:none;transition:transform .15s;display:block}.tote-facing-left .tote-character{transform:scaleX(-1)}.tote-dragging{filter:drop-shadow(0 24px 22px #0f172a38)}.tote-dragging .tote-character-handle{cursor:grabbing;animation:.46s cubic-bezier(.45,0,.55,1) infinite alternate tote-flight}.tote-dragging .tote-character{transform:rotate(5deg)scale(1.12)}.tote-dragging.tote-facing-left .tote-character{transform:scaleX(-1)rotate(5deg)scale(1.12)}.tote-tutor.tote-summoning{pointer-events:none;animation:.82s cubic-bezier(.2,.72,.22,1) both tote-summon-flight}.tote-tutor.tote-summoning .tote-character-handle{cursor:default;animation:.82s ease-in-out both tote-summon-body}.tote-summoning:after{z-index:-1;filter:blur(5px);content:"";background:#0f172a33;border-radius:50%;width:46%;height:10%;animation:.82s ease-out both tote-summon-shadow;position:absolute;bottom:5%;left:27%}.tote-consulting .tote-character-handle{animation:1.7s cubic-bezier(.2,.78,.2,1) both tote-open-book}.tote-consulting .tote-bubble{width:min(345px,calc(100vw - var(--tote-size) - 30px))}.tote-quick-menu{z-index:5;border:1px solid rgba(var(--primary-rgb),.16);width:170px;color:var(--ink);background:color-mix(in srgb,var(--surface) 97%,#fff);pointer-events:auto;animation:tote-menu-open .2s var(--ease-out) both;border-radius:13px;gap:7px;padding:10px;display:grid;position:absolute;bottom:calc(100% - 18px);left:50%;transform:translate(-50%);box-shadow:0 14px 34px #0f172a2e}.tote-near-top .tote-quick-menu{top:calc(100% - 18px);bottom:auto}.tote-quick-menu>strong{color:var(--review);letter-spacing:.1em;text-transform:uppercase;padding:0 3px;font-size:.6rem;font-weight:900}.tote-quick-menu>button{color:#475569;background:rgba(var(--primary-rgb),.06);text-align:left;border:0;border-radius:9px;align-items:center;gap:8px;min-height:36px;padding:7px 9px;font-size:.68rem;font-weight:800;display:flex}.tote-quick-menu>button:hover{color:var(--primary);background:rgba(var(--primary-rgb),.11)}.tote-quick-menu .material-symbols-outlined{font-size:18px}.tote-menu-icon{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;flex:none;width:18px;height:18px}.tote-summon{left:calc(var(--sidebar-open) + 18px);z-index:3300;border:1px solid rgba(var(--primary-rgb),.2);min-height:44px;color:var(--primary);background:color-mix(in srgb,var(--surface) 96%,var(--primary-soft));border-radius:999px;align-items:center;gap:8px;padding:6px 12px 6px 7px;font-size:.68rem;font-weight:850;display:inline-flex;position:fixed;bottom:20px;box-shadow:0 12px 28px #0f172a29}.sidebar-collapsed .tote-summon{left:calc(var(--sidebar-rail) + 18px)}.tote-summon:hover{border-color:rgba(var(--primary-rgb),.38);background:var(--primary-soft);transform:translateY(-1px)}.tote-summon img{object-fit:contain;width:31px;height:31px;image-rendering:pixelated}.tote-bubble{z-index:1;width:min(360px,calc(100vw - var(--tote-size) - 30px));min-width:280px;color:var(--ink);background:color-mix(in srgb,var(--surface) 96%,#fff8e7);pointer-events:auto;border:1px solid #a97a2f47;border-radius:17px 17px 17px 7px;padding:17px 18px 15px 24px;position:absolute;bottom:10px;left:calc(100% - 12px);box-shadow:0 16px 42px #0f172a24,inset 0 1px #ffffffc2}.tote-tutor:not(.tote-idle) .tote-bubble{animation:tote-bubble-open .28s var(--ease-out) both;transform-origin:0 100%}.tote-on-right .tote-bubble{border-radius:17px 17px 7px;padding-left:18px;padding-right:24px;left:auto;right:calc(100% - 12px)}.tote-on-right:not(.tote-idle) .tote-bubble{transform-origin:100% 100%}.tote-near-top .tote-bubble{top:10px;bottom:auto}.tote-near-top:not(.tote-idle) .tote-bubble{transform-origin:0 0}.tote-on-right.tote-near-top:not(.tote-idle) .tote-bubble{transform-origin:100% 0}.tote-bubble:before{background:inherit;content:"";border-bottom:1px solid #a97a2f47;border-left:1px solid #a97a2f47;width:20px;height:20px;position:absolute;bottom:22px;left:-11px;transform:rotate(45deg)}.tote-on-right .tote-bubble:before{border-top:1px solid #a97a2f47;border-bottom:0;border-left:0;border-right:1px solid #a97a2f47;left:auto;right:-11px}.tote-near-top .tote-bubble:before{top:22px;bottom:auto}.tote-close{width:29px;height:29px;color:var(--muted);background:0 0;border:0;border-radius:8px;place-items:center;padding:0;display:grid;position:absolute;top:8px;right:8px}.tote-close:hover{color:var(--ink);background:rgba(var(--primary-rgb),.07)}.tote-close .material-symbols-outlined{font-size:17px}.tote-heading{align-items:baseline;gap:7px;margin-bottom:8px;padding-right:25px;display:flex}.tote-heading span{color:var(--review);letter-spacing:.14em;font-size:.66rem;font-weight:900}.tote-heading small{color:var(--muted);font-size:.61rem}.tote-question{letter-spacing:-.02em;padding-right:10px;font-family:Fraunces,sans-serif;font-size:1rem;line-height:1.32;display:block}.tote-bubble>p{color:var(--muted);margin:7px 0 12px;font-size:.69rem;line-height:1.45}.tote-consult-status{grid-template-columns:42px minmax(0,1fr) auto;align-items:center;gap:10px;min-height:66px;padding:4px 0 2px;display:grid}.tote-consult-status>.material-symbols-outlined{color:#89600e;background:#fff2bf;border-radius:12px;place-items:center;width:42px;height:42px;font-size:23px;animation:.76s ease-in-out infinite alternate tote-book-icon;display:grid}.tote-consult-status>div{gap:3px;min-width:0;display:grid}.tote-consult-status small{color:var(--review);letter-spacing:.1em;font-size:.55rem;font-weight:900}.tote-consult-status strong{font-family:Fraunces,sans-serif;font-size:.84rem;line-height:1.25}.tote-consult-dots{align-self:end;gap:3px;padding:0 2px 7px 0;display:flex}.tote-consult-dots i{background:var(--review);border-radius:50%;width:4px;height:4px;animation:.8s ease-in-out infinite alternate tote-consult-dot;display:block}.tote-consult-dots i:nth-child(2){animation-delay:.16s}.tote-consult-dots i:nth-child(3){animation-delay:.32s}.tote-actions{flex-wrap:wrap;gap:7px;display:flex}.tote-actions.single,.tote-explanation-actions{justify-content:flex-end;margin-top:12px}.tote-explanation-actions button{justify-content:center;align-items:center;gap:6px;display:inline-flex}.tote-actions button{border-radius:9px;min-height:35px;padding:7px 12px;font-size:.68rem;font-weight:800}.tote-accept{color:#fff;background:var(--primary);border:1px solid #0000}.tote-accept:hover{background:var(--primary-hover)}.tote-decline{border:1px solid var(--line);color:var(--muted);background:var(--surface)}.tote-decline:hover{color:var(--ink);border-color:rgba(var(--primary-rgb),.28)}.tote-explanation .tote-bubble{width:min(520px,calc(100vw - var(--tote-size) - 30px));max-height:min(520px,100vh - 36px);overflow:auto}.tote-lesson{gap:10px;display:grid}.tote-lesson-intro{align-items:center;gap:9px;padding-right:24px;display:flex}.tote-lesson-intro>.material-symbols-outlined{color:#8a620e;background:#fff3c6;border-radius:10px;flex:none;place-items:center;width:35px;height:35px;font-size:19px;display:grid}.tote-lesson-intro>div{gap:1px;display:grid}.tote-lesson-intro small{color:var(--review);letter-spacing:.1em;font-size:.55rem;font-weight:900}.tote-lesson-intro strong{font-family:Fraunces,sans-serif;font-size:1rem}.tote-explanation p.tote-explanation{border-left:3px solid var(--review);width:auto;color:var(--ink);background:color-mix(in srgb,var(--review) 8%,var(--surface));border-radius:0 9px 9px 0;margin:0;padding:11px 12px;font-size:.73rem;line-height:1.55}.tote-answer-comparison{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;margin:0;display:grid}.tote-answer-comparison>div{background:color-mix(in srgb,#ef4444 5%,var(--surface));border:1px solid #ef444426;border-radius:9px;min-width:0;padding:9px 10px}.tote-answer-comparison>div.correct{background:color-mix(in srgb,#10b981 6%,var(--surface));border-color:#10b98133}.tote-answer-comparison dt{color:var(--muted);letter-spacing:.06em;text-transform:uppercase;font-size:.54rem;font-weight:850}.tote-answer-comparison dd{overflow-wrap:anywhere;margin:4px 0 0;font-size:.67rem;line-height:1.4}.tote-original-prompt{color:var(--muted);font-size:.63rem}.tote-original-prompt summary{color:var(--primary);cursor:pointer;font-weight:800}.tote-original-prompt p{margin:7px 0 0;line-height:1.45}.tote-review-button{color:#795718;background:#fff9e9;border:1px solid #a97a2f40;border-radius:9px;align-items:center;gap:7px;width:max-content;padding:7px 10px;font-size:.65rem;font-weight:850;display:inline-flex}.tote-review-button img{object-fit:contain;width:25px;height:25px;image-rendering:pixelated}.tote-review-button:hover{background:#fff4cd;border-color:#a97a2f7a}.tote-chat-panel{z-index:4;width:min(430px,calc(100vw - var(--tote-size) - 30px));border:1px solid rgba(var(--primary-rgb),.2);min-width:310px;max-height:min(650px,100vh - 28px);color:var(--ink);background:color-mix(in srgb,var(--surface) 98%,#fff);pointer-events:auto;animation:tote-chat-open .28s var(--ease-out) both;transform-origin:0 100%;border-radius:19px 19px 19px 7px;grid-template-rows:auto minmax(140px,1fr) auto;display:grid;position:absolute;bottom:8px;left:calc(100% - 12px);overflow:hidden;box-shadow:0 24px 64px #0f172a33,inset 0 1px #ffffffd1}.tote-on-right .tote-chat-panel{transform-origin:100% 100%;border-radius:19px 19px 7px;left:auto;right:calc(100% - 12px)}.tote-near-top .tote-chat-panel{transform-origin:0 0;top:8px;bottom:auto}.tote-on-right.tote-near-top .tote-chat-panel{transform-origin:100% 0}.tote-chat-header{border-bottom:1px solid rgba(var(--primary-rgb),.11);background:linear-gradient(135deg,rgba(var(--primary-rgb),.11),rgba(var(--primary-rgb),.035));justify-content:space-between;align-items:center;gap:12px;min-height:58px;padding:10px 11px 10px 14px;display:flex}.tote-chat-header>div{align-items:center;gap:9px;min-width:0;display:flex}.tote-chat-header>div>.material-symbols-outlined{color:#fff;background:var(--primary);border-radius:11px;flex:none;place-items:center;width:35px;height:35px;font-size:19px;display:grid}.tote-chat-header>div>div{gap:1px;min-width:0;display:grid}.tote-chat-header strong{font-family:Fraunces,sans-serif;font-size:.94rem}.tote-chat-header small{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:.6rem;overflow:hidden}.tote-chat-header>button{width:31px;height:31px;color:var(--muted);background:0 0;border:0;border-radius:9px;place-items:center;padding:0;display:grid}.tote-chat-header>button:hover{color:var(--ink);background:rgba(var(--primary-rgb),.08)}.tote-chat-header>button .material-symbols-outlined{font-size:18px}.tote-chat-messages{scroll-behavior:smooth;flex-direction:column;gap:10px;min-height:190px;max-height:410px;padding:14px;display:flex;overflow:auto}.tote-chat-welcome{border:1px dashed rgba(var(--primary-rgb),.24);background:rgba(var(--primary-rgb),.035);border-radius:13px;padding:14px}.tote-chat-welcome strong{font-family:Fraunces,sans-serif;font-size:.9rem}.tote-chat-welcome p{color:var(--muted);margin:5px 0 0;font-size:.67rem;line-height:1.5}.tote-chat-message{align-self:flex-start;max-width:91%}.tote-chat-message.user{align-self:flex-end}.tote-chat-message>p{border:1px solid rgba(var(--primary-rgb),.11);color:#334155;background:color-mix(in srgb,var(--primary) 5%,var(--surface));white-space:pre-wrap;overflow-wrap:anywhere;border-radius:13px 13px 13px 4px;margin:0;padding:10px 12px;font-size:.7rem;line-height:1.55}.tote-chat-message.user>p{color:#fff;background:var(--primary);border-color:#0000;border-radius:13px 13px 4px}.tote-chat-grounding{color:var(--muted);gap:4px;margin-top:5px;padding:0 3px;font-size:.56rem;display:grid}.tote-chat-grounding>span{align-items:center;gap:4px;font-weight:800;display:inline-flex}.tote-chat-grounding .material-symbols-outlined{color:var(--primary);font-size:14px}.tote-chat-grounding summary{width:max-content;color:var(--primary);cursor:pointer;font-weight:800}.tote-chat-grounding ul{gap:4px;margin:5px 0 0;padding-left:18px;display:grid}.tote-chat-grounding a{color:var(--primary);text-underline-offset:2px;text-decoration:underline}.tote-chat-thinking{color:var(--muted);align-items:center;gap:4px;font-size:.62rem;display:flex}.tote-chat-thinking>span{background:var(--primary);border-radius:50%;width:5px;height:5px;animation:.8s ease-in-out infinite alternate tote-chat-dot;display:block}.tote-chat-thinking>span:nth-child(2){animation-delay:.14s}.tote-chat-thinking>span:nth-child(3){margin-right:4px;animation-delay:.28s}.tote-chat-error{color:#a12626;background:#fff1f1;border-radius:9px;align-items:flex-start;gap:6px;padding:8px 9px;font-size:.62rem;line-height:1.4;display:flex}.tote-chat-error .material-symbols-outlined{flex:none;font-size:16px}.tote-chat-form{border-top:1px solid rgba(var(--primary-rgb),.11);background:color-mix(in srgb,var(--surface) 97%,var(--primary-soft));gap:5px;padding:10px 12px 11px;display:grid}.tote-chat-form>label{clip:rect(0 0 0 0);width:1px;height:1px;position:absolute;overflow:hidden}.tote-chat-form>div{border:1px solid rgba(var(--primary-rgb),.2);background:var(--surface);border-radius:12px;grid-template-columns:minmax(0,1fr) 36px;align-items:end;gap:7px;padding:7px 7px 7px 10px;display:grid;box-shadow:inset 0 1px 2px #0f172a08}.tote-chat-form textarea{resize:vertical;min-height:38px;max-height:110px;color:var(--ink);font:inherit;background:0 0;border:0;outline:0;padding:2px 0;font-size:.69rem;line-height:1.4}.tote-chat-form textarea::placeholder{color:#94a3b8}.tote-chat-form button{color:#fff;background:var(--primary);border:0;border-radius:10px;place-items:center;width:36px;height:36px;padding:0;display:grid}.tote-chat-form button:hover:not(:disabled){background:var(--primary-hover);transform:translateY(-1px)}.tote-chat-form button:disabled{opacity:.42;cursor:not-allowed}.tote-chat-form button .material-symbols-outlined{font-size:19px}.tote-chat-form>small{color:var(--muted);padding-left:2px;font-size:.52rem;line-height:1.35}@keyframes tote-arrive{0%{opacity:0;transform:translateY(18px)scale(.96)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes tote-character-enter{0%{opacity:0;transform:translateY(18px)rotate(-7deg)scale(.78)}58%{opacity:1;transform:translateY(-4px)rotate(3deg)scale(1.06)}78%{transform:translateY(2px)rotate(-1.5deg)scale(.98)}to{opacity:1;transform:translateY(0)rotate(0)scale(1)}}@keyframes tote-flight{0%{transform:translateY(-3px)rotate(-1.5deg)scale(1.02)}to{transform:translateY(1px)rotate(1.5deg)scale(1.04)}}@keyframes tote-summon-flight{0%{opacity:0;transform:translate(var(--tote-arrival-x),var(--tote-arrival-y)) scale(.72)}14%{opacity:1}52%{opacity:1;transform:translate(var(--tote-arrival-mid-x),var(--tote-arrival-mid-y)) scale(.9)}76%{transform:translateY(-11px)scale(1.06)}88%{transform:translateY(3px)scale(1.03,.94)}to{opacity:1;transform:translate(0)scale(1)}}@keyframes tote-summon-body{0%{transform:rotate(-8deg)scale(.9)}34%{transform:rotate(5deg)scale(1.03)}66%{transform:rotate(-2deg)scale(1.05)}84%{transform:rotate(1deg)scale(1.02,.94)}to{transform:rotate(0)scale(1)}}@keyframes tote-summon-shadow{0%,45%{opacity:0;transform:scale(.35)}76%{opacity:.45;transform:scale(.75)}90%{opacity:.8;transform:scale(1.12,.8)}to{opacity:.45;transform:scale(1)}}@keyframes tote-open-book{0%{opacity:.68;transform:translateY(10px)rotate(-4deg)scale(.72,.9)}24%{opacity:1;transform:translateY(1px)rotate(2deg)scale(1.06,.96)}42%{transform:translateY(-3px)rotate(-1deg)scale(.98,1.03)}62%,to{opacity:1;transform:translateY(0)rotate(0)scale(1)}}@keyframes tote-book-icon{0%{transform:rotate(-3deg)scale(.97)}to{transform:rotate(3deg)scale(1.03)}}@keyframes tote-consult-dot{0%{opacity:.25;transform:translateY(0)}to{opacity:1;transform:translateY(-4px)}}@keyframes tote-menu-open{0%{opacity:0;transform:translate(-50%)translateY(5px)scale(.96)}to{opacity:1;transform:translate(-50%)translateY(0)scale(1)}}@keyframes tote-bubble-open{0%{opacity:0;transform:translate(-8px,8px)scale(.94)}to{opacity:1;transform:translate(0)scale(1)}}@keyframes tote-chat-open{0%{opacity:0;transform:translate(-8px,8px)scale(.94)}to{opacity:1;transform:translate(0)scale(1)}}@keyframes tote-chat-dot{0%{opacity:.3;transform:translateY(0)}to{opacity:1;transform:translateY(-3px)}}@media (max-width:900px){.tote-tutor,.sidebar-collapsed .tote-tutor{bottom:78px;left:14px}.tote-summon,.sidebar-collapsed .tote-summon{bottom:82px;left:14px}}@media (max-width:520px){.tote-tutor,.sidebar-collapsed .tote-tutor{--tote-size:108px;bottom:72px;left:8px}.tote-bubble,.tote-explanation .tote-bubble{width:min(320px,calc(100vw - var(--tote-size) - 18px));min-width:230px}.tote-chat-panel{width:min(355px,calc(100vw - var(--tote-size) - 18px));min-width:240px;max-height:calc(100vh - 90px)}.tote-chat-messages{max-height:320px}.tote-bubble{border-radius:14px 14px 14px 6px;padding:14px 14px 13px 19px}.tote-on-right .tote-bubble{padding-left:14px;padding-right:19px}.tote-question{font-size:.9rem}.tote-answer-comparison{grid-template-columns:1fr}.rating-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (prefers-reduced-motion:reduce){.tote-tutor,.tote-character-handle,.tote-dragging .tote-character-handle,.tote-summoning .tote-character-handle,.tote-summoning:after,.tote-consult-status>.material-symbols-outlined,.tote-consult-dots i,.tote-quick-menu,.tote-chat-panel,.tote-chat-thinking>span{animation:none}}:root{--primary:#3154d8;--primary-hover:#2747bd;--primary-soft:#e6ebff;--primary-rgb:49,84,216;--review:#6d5bd0;--review-rgb:109,91,208;--ink:#161c2e;--muted:#5f697b;--line:#e2e5f2;--line-strong:#d7dbee;--surface:#fff;--bg-body:#f4f5fb;--sidebar-open:250px;--sidebar-rail:64px;--brand-gradient:linear-gradient(135deg,#3154d8,#4d6de3);--hero-gradient:linear-gradient(140deg, #1b2a63 0%, #3154d8 100%);--shadow:0 20px 48px #17205024;--shadow-xs:0 1px 2px #1720500f;--shadow-sm:0 6px 16px #17205017;--shadow-card:0 1px 1px #1720500d, 0 10px 24px #17205012}html,body{max-width:100%;overflow-x:hidden}body{color:var(--ink);background:var(--bg-body)}.legacy-app-shell{background:var(--bg-body);background-image:none}.legacy-app-shell:before{display:none!important}.legacy-sidebar{width:var(--sidebar-open);border-right:1px solid var(--line);background:var(--surface);box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;padding:16px 12px}.sidebar-top{border-color:var(--line);min-height:40px;margin:0 3px 22px;padding:0 3px 14px}.sidebar-top .icon-btn{background:0 0;border:0;border-radius:8px;width:36px;height:36px}.sidebar-brand{grid-template-rows:auto auto;grid-template-columns:32px minmax(0,1fr);align-items:center;column-gap:9px;min-width:0;display:grid}.sidebar-app-icon{border-radius:8px;grid-row:1/3;width:32px;height:32px}.sidebar-title,.sidebar-subtitle{grid-column:2}.sidebar-title{color:var(--ink);-webkit-text-fill-color:currentColor;letter-spacing:-.025em;background:0 0;font-size:1.06rem}.sidebar-subtitle{color:#8a93a3;letter-spacing:.07em;margin-top:2px;font-size:.61rem}.side-nav{gap:3px}.side-nav-btn{min-height:42px;color:var(--muted);border:1px solid #0000;border-radius:8px;gap:11px;padding:9px 11px;font-size:.87rem;font-weight:600;transition:background-color .15s,color .15s,border-color .15s}.side-nav-btn:before{background:var(--primary);width:2px;left:0}.side-nav-btn:hover{color:var(--ink);background:var(--bg-body);transform:none}.side-nav-btn.active{color:var(--primary);border-color:rgba(var(--primary-rgb),.14);background:rgba(var(--primary-rgb),.08);box-shadow:none}.side-nav-btn.active:before{height:20px}.side-nav-btn .nav-icn{font-size:20px}.sidebar-footer,.sidebar-auth-section{border-color:var(--line)}.sidebar-user-avatar{background:var(--primary);box-shadow:none;border-radius:9px}.legacy-app-container{max-width:1320px;padding:22px 32px 72px}.legacy-app-header{border:1px solid var(--line);background:var(--surface);min-height:62px;box-shadow:var(--shadow-xs);-webkit-backdrop-filter:none;backdrop-filter:none;border-radius:12px;margin-bottom:38px;padding:12px 18px;top:12px}.app-title{color:var(--ink);-webkit-text-fill-color:currentColor;background:0 0;font-size:1.15rem}.beta-badge{border-color:var(--line);color:var(--muted);background:var(--bg-body);border-radius:5px}.header-notification-btn{border:1px solid var(--line);width:38px;min-width:38px;height:38px;color:var(--muted);background:var(--surface);box-shadow:none;border-radius:8px}.header-chip,.header-chip.highlight{border:1px solid var(--line);background:var(--bg-body);min-width:96px;box-shadow:none;border-radius:8px;gap:8px;padding:7px 11px}.header-chip>.material-symbols-outlined{color:#8a93a3;font-size:18px}.header-chip.highlight>.material-symbols-outlined{color:var(--primary)}.header-chip strong{font-size:.96rem}.legacy-page-heading{margin-bottom:26px}.legacy-page-heading h2,.question-hero h2{color:var(--ink);font-weight:750}.legacy-page-heading p,.question-hero p{max-width:650px;color:var(--muted);font-size:.92rem;line-height:1.55}.home-title-container h2{letter-spacing:-.055em;font-size:clamp(2rem,3.2vw,2.7rem)}.legacy-btn{box-shadow:none;border-radius:9px;transition:background-color .16s,border-color .16s,color .16s,transform .16s}.legacy-btn:hover{transform:translateY(-1px)}.legacy-btn.primary,.calendar-toolbar .legacy-btn.primary{color:#fff;background:var(--primary);box-shadow:none}.legacy-btn.primary:hover{background:var(--primary-hover)}.legacy-btn.secondary{border-color:var(--line-strong);color:#475165;background:var(--surface)}.legacy-btn.secondary:hover{border-color:rgba(var(--primary-rgb),.34);color:var(--primary);background:rgba(var(--primary-rgb),.04)}.legacy-search,.library-create-form input,.library-create-form select,.legacy-modal input,.legacy-modal select,.legacy-modal textarea,.settings-number input{border-color:var(--line-strong);background:var(--surface);border-radius:8px}.legacy-search:focus-within{border-color:var(--primary);box-shadow:0 0 0 3px rgba(var(--primary-rgb),.1)}.home-card,.library-command-card,.legacy-deck-editor,.calendar-overview,.calendar-card,.discipline-command-card,.discipline-panel,.question-workspace-card,.question-overview article,.error-notebook,.question-bank-list,.simulation-library,.settings-page,.community-command-card{border-color:var(--line);background:var(--surface);box-shadow:var(--shadow-xs);-webkit-backdrop-filter:none;backdrop-filter:none;border-radius:14px}.home-card:hover,.legacy-library-tile:hover,.question-list-card:hover{box-shadow:var(--shadow-sm);transform:none}.label-icon,.tile-icon,.question-overview>article>.material-symbols-outlined{color:var(--primary);background:var(--primary-soft);border-radius:8px}.home-page .home-card .home-card-label .label-icon{width:auto;height:auto;color:var(--muted);background:0 0}.home-page .home-card .home-card-label .label-icon .material-symbols-outlined{font-size:18px}.home-hero{color:#fff;background:var(--hero-gradient);border-radius:16px;justify-content:space-between;align-items:center;gap:24px;margin-bottom:16px;padding:28px 30px;display:flex;position:relative;overflow:hidden}.home-hero:after{pointer-events:none;content:"";border:40px solid #ffffff0f;border-radius:50%;width:220px;height:220px;position:absolute;bottom:-120px;right:-90px}.home-hero-main{z-index:1;min-width:0;position:relative}.home-hero-kicker{color:#fff9;letter-spacing:.1em;text-transform:uppercase;margin-bottom:6px;font-size:.7rem;font-weight:850;display:block}.home-hero-number{letter-spacing:-.02em;font-family:Fraunces,serif;font-size:clamp(1.7rem,3vw,2.3rem);font-weight:600;display:block}.home-hero-main p{color:#ffffffc7;max-width:480px;margin:8px 0 0;font-size:.88rem;line-height:1.5}.home-hero-status{color:#ffffff8c!important;font-size:.74rem!important}.home-hero-actions{z-index:1;flex:none;align-items:center;gap:18px;display:flex;position:relative}.home-hero .daily-progress{width:64px;height:64px}.home-hero .daily-progress:before{background:var(--ink);inset:6px}.home-hero .daily-progress strong{color:#fff;font-size:.78rem}.home-hero .daily-progress span{color:#fff9}.home-hero .legacy-btn.primary{color:var(--ink);white-space:nowrap;background:#fff}.home-hero .legacy-btn.primary:hover{background:#f1f1ee}.home-resume-banner{border:1px solid rgba(var(--primary-rgb),.2);color:var(--primary);background:var(--primary-soft);border-radius:10px;align-items:center;gap:10px;margin-bottom:16px;padding:11px 16px;font-size:.82rem;display:flex}.home-resume-banner strong{color:var(--ink)}.home-resume-banner a{color:var(--primary);white-space:nowrap;align-items:center;gap:3px;margin-left:auto;font-weight:800;text-decoration:none;display:flex}.home-strip{border:1px solid var(--line);background:var(--line);border-radius:12px;grid-template-columns:repeat(4,1fr);gap:1px;margin-bottom:16px;display:grid;overflow:hidden}.home-strip>div{background:var(--surface);flex-direction:column;gap:2px;padding:14px 16px;display:flex}.home-strip strong{letter-spacing:-.02em;font-family:Fraunces,serif;font-size:1.3rem}.home-strip span{color:var(--muted);font-size:.7rem}.home-strip-goal{position:relative}.home-strip-goal button{width:24px;height:24px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:6px;place-items:center;display:grid;position:absolute;top:12px;right:14px}.home-strip-goal button:hover{color:var(--primary);background:var(--primary-soft)}.home-strip-goal-editor{align-items:center;gap:8px;display:flex}.home-strip-goal-editor input{border:1px solid var(--line-strong);width:100%;height:34px;color:var(--ink);font:inherit;border-radius:7px;padding:0 10px;font-size:.95rem}.home-strip-goal-editor button{color:#fff;background:var(--primary);cursor:pointer;border:0;border-radius:7px;flex:none;place-items:center;width:34px;height:34px;display:grid}.home-panel-full{margin-bottom:16px}.home-row2{grid-template-columns:1fr 1fr;gap:14px;margin-bottom:16px;display:grid}.home-deck-picker>button,.home-folder-card{box-shadow:none;border-radius:9px}.legacy-library-grid{gap:12px}.legacy-library-tile{border-color:var(--line);background:var(--surface);min-height:156px;box-shadow:var(--shadow-xs);border-radius:12px}.legacy-library-tile:hover{border-color:rgba(var(--primary-rgb),.32);box-shadow:0 8px 24px #17205017}.tile-main{min-height:154px;padding:17px}.library-fab{background:var(--primary);border-radius:12px;box-shadow:0 10px 24px #3154d838}.library-section-label{margin:16px 0 8px}.library-section-label h3{color:var(--muted);letter-spacing:.06em;text-transform:uppercase;margin:0;font-size:.72rem;font-weight:800}.library-empty-toggle{border:1px dashed var(--line-strong);width:100%;color:var(--muted);font:inherit;cursor:pointer;background:0 0;border-radius:10px;align-items:center;gap:6px;margin-top:4px;padding:10px 12px;font-size:.78rem;font-weight:700;display:flex}.library-empty-toggle:hover{color:var(--primary);border-color:rgba(var(--primary-rgb),.34)}.deck-modal-search-count{color:var(--muted);margin:6px 0 0;font-size:.72rem}.library-tray-preview{flex-wrap:wrap;align-items:center;gap:5px;margin-top:10px;display:flex}.library-tray-preview span{border:1px solid var(--line);background:var(--surface);max-width:100px;color:var(--muted);text-overflow:ellipsis;white-space:nowrap;border-radius:999px;align-items:center;gap:5px;padding:3px 8px;font-size:.62rem;display:flex;overflow:hidden}.library-tray-preview span:before{content:"";background:var(--stack-color,var(--primary));border-radius:50%;flex:none;width:6px;height:6px}.library-tray-preview small{color:var(--muted);font-size:.6rem;font-weight:700}.deck-stack-grid{flex-wrap:wrap;gap:20px;display:flex}.deck-tile.legacy-library-tile{min-height:auto;box-shadow:none;background:0 0;border-color:#0000}.deck-tile.legacy-library-tile:hover{box-shadow:none;border-color:#0000}.deck-tile .tile-main{min-height:auto;padding:4px}.deck-tile .deck-study-action{border:1px solid color-mix(in srgb,var(--stack-color,var(--primary)) 24%,var(--line));width:132px;min-height:32px;color:var(--primary);background:color-mix(in srgb,var(--primary) 6%,var(--surface));border-radius:9px;justify-content:center;align-items:center;gap:5px;margin-top:7px;font-size:.68rem;font-weight:800;transition:transform .16s,background .16s,border-color .16s;display:inline-flex}.deck-tile .deck-study-action:hover:not(:disabled){border-color:color-mix(in srgb,var(--primary) 44%,var(--line));background:color-mix(in srgb,var(--primary) 11%,var(--surface));transform:translateY(-1px)}.deck-tile .deck-study-action:disabled{color:var(--muted);background:var(--surface);opacity:.52;cursor:not-allowed}.deck-tile .deck-study-action .material-symbols-outlined{font-size:15px}.deck-stack{width:132px;height:150px;position:relative}.deck-stack .stack-layer{background:var(--surface);border:1px solid var(--line);pointer-events:none;border-radius:12px;position:absolute;inset:0}.deck-stack .stack-layer:first-of-type{transform:rotate(-6deg)translate(-4px,3px)}.deck-stack .stack-layer:nth-of-type(2){transform:rotate(5deg)translate(4px,4px)}.deck-stack .stack-front{z-index:3;background:var(--surface);border:1px solid var(--line);border-radius:12px;flex-direction:column;width:100%;height:100%;transition:transform .16s,box-shadow .16s;display:flex;position:relative;overflow:hidden;box-shadow:0 8px 18px #1720501f}.deck-stack .stack-tab{background:var(--stack-color,var(--primary));flex:none;height:7px}.deck-stack .stack-body{text-align:left;flex-direction:column;flex:1;justify-content:space-between;min-height:0;padding:11px;display:flex}.deck-stack .stack-body strong{color:var(--ink);-webkit-line-clamp:3;-webkit-box-orient:vertical;font-size:.78rem;line-height:1.28;display:-webkit-box;overflow:hidden}.deck-stack .stack-count{background:var(--stack-soft,var(--primary-soft));color:var(--stack-color,var(--primary));border-radius:999px;align-self:flex-start;padding:2px 8px;font-size:.62rem;font-weight:800}.deck-stack .stack-peek{background:var(--surface);opacity:0;text-align:left;flex-direction:column;gap:4px;padding:11px;transition:opacity .16s;display:flex;position:absolute;inset:0}.deck-stack .stack-peek b{color:var(--stack-color,var(--primary));letter-spacing:.04em;text-transform:uppercase;font-size:.56rem;font-weight:800}.deck-stack .stack-peek span{color:var(--muted);-webkit-line-clamp:5;-webkit-box-orient:vertical;font-size:.68rem;line-height:1.35;display:-webkit-box;overflow:hidden}.deck-stack .stack-due{z-index:6;color:#fff;background:#c2410c;border-radius:4px 4px 7px 7px;padding:3px 8px;font-size:.58rem;font-weight:800;position:absolute;top:-8px;right:8px;box-shadow:0 4px 9px #c2410c59}.deck-stack .stack-type-badge{z-index:4;color:#6d3fd6;background:#ffffffeb;border-radius:5px;place-items:center;width:17px;height:17px;font-size:.6rem;font-weight:800;display:grid;position:absolute;top:5px;right:5px;box-shadow:0 1px 3px #0000002e}.deck-stack.stack-empty .stack-layer{display:none}.deck-stack.stack-empty .stack-front{box-shadow:none;border-style:dashed}.deck-stack.stack-empty .stack-tab{opacity:.35}.deck-tile:hover .deck-stack .stack-front{transform:translateY(-6px);box-shadow:0 14px 28px #1720502e}.deck-tile:hover .deck-stack .stack-peek{opacity:1}.deck-tile.selected .deck-stack .stack-front{outline:2px solid var(--primary);outline-offset:2px}.stack-selection{z-index:7;top:-6px!important;left:-6px!important;right:auto!important}.srs-enable-row{align-items:center;gap:10px;font-weight:600;display:flex}.srs-advanced{margin:2px 0}.srs-advanced summary{color:var(--primary);cursor:pointer;font-size:.78rem;font-weight:700}.srs-advanced .srs-field-grid{margin-top:10px}.calendar-overview{background:var(--surface)}.calendar-card{overflow:hidden}.calendar-toolbar{min-height:64px}.calendar-toolbar button,.calendar-view-toggle{border-radius:8px}.calendar-view-toggle button.active{box-shadow:none}.discipline-tabs{border-radius:9px}.discipline-tabs button{border-radius:7px}.discipline-tabs button.active{box-shadow:none}.question-hero{align-items:flex-start}.quick-exam-builder,.question-answer-panel{background:var(--bg-body);border-radius:9px}.question-list-card{border-radius:9px!important}.question-list-card.expanded{box-shadow:none!important}.error-notebook{background:linear-gradient(135deg,#fff8f8,var(--surface) 52%);border-color:#ef444429}.settings-page{max-width:920px;box-shadow:var(--shadow-xs);border-radius:12px}.settings-heading>span,.settings-choice-grid button{border-radius:9px}.settings-choice-grid button.selected{box-shadow:none}.workspace-page.study-page{max-width:1080px;margin:0 auto}.workspace-header{margin-bottom:20px}.study-stage{gap:10px}.study-session-bar,.study-summary{border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow-xs);border-radius:12px}.study-session-bar .study-progress{box-shadow:none;background:0 0;border:0;border-radius:0}.study-card{border:1px solid var(--line-strong);background:var(--surface);border-radius:14px;box-shadow:0 12px 34px #1720501f}.reveal-button{background:var(--primary);box-shadow:none;border-radius:9px}.rating-grid button,.study-utility-actions button,.deck-picker button{box-shadow:none;border-radius:8px}.legacy-modal{border:1px solid var(--line);-webkit-backdrop-filter:none;backdrop-filter:none;border-radius:14px;box-shadow:0 24px 64px #0a0f193d}.settings-srs-panel{border:1px solid rgba(var(--primary-rgb),.18);background:rgba(var(--primary-rgb),.045);border-radius:10px;gap:13px;padding:15px;display:grid}.settings-srs-heading{grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;display:grid}.settings-srs-heading>div{gap:3px;min-width:0;display:grid}.settings-srs-heading p{color:var(--muted);margin:0;font-size:.72rem;line-height:1.4}.settings-srs-switch{width:42px;height:24px;position:relative}.settings-srs-switch input{opacity:0;pointer-events:none;position:absolute}.settings-srs-switch span{background:var(--line-strong);cursor:pointer;border-radius:999px;transition:background-color .16s;position:absolute;inset:0}.settings-srs-switch span:after{content:"";background:#fff;border-radius:50%;width:18px;height:18px;transition:transform .16s;position:absolute;top:3px;left:3px;box-shadow:0 1px 3px #0000002e}.settings-srs-switch input:checked+span{background:var(--primary)}.settings-srs-switch input:checked+span:after{transform:translate(18px)}.settings-srs-panel>label{gap:6px;display:grid}.settings-srs-panel>small{color:var(--muted);line-height:1.45}.legacy-btn.ai-toolbar-button{color:#fff;background:var(--primary);box-shadow:0 7px 17px rgba(var(--primary-rgb),.18);border-color:#0000}.legacy-btn.ai-toolbar-button:hover:not(:disabled){background:var(--primary-hover);box-shadow:0 10px 22px rgba(var(--primary-rgb),.24);transform:translateY(-1px)}.legacy-btn.ai-toolbar-button:disabled{color:var(--muted);border-color:var(--line);background:var(--bg-body);box-shadow:none}.ai-generator-overlay{padding:24px}.ai-generator-modal{width:min(1100px,100%);max-height:min(900px,100vh - 48px);overflow:auto}.tile-icon.ai-spark{color:#fff;background:var(--primary)}.ai-generator-layout{grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:18px;min-height:490px;margin-top:18px;display:grid}.ai-generator-controls,.ai-preview-panel{border:1px solid var(--line);background:var(--bg-body);border-radius:11px;min-width:0;padding:18px}.ai-generator-controls{align-content:start;gap:13px;display:grid}.ai-kind-toggle{border:1px solid var(--line);background:var(--surface);border-radius:9px;grid-template-columns:1fr 1fr;gap:5px;padding:4px;display:grid}.ai-kind-toggle button{min-height:39px;color:var(--muted);font:inherit;cursor:pointer;background:0 0;border:0;border-radius:6px;justify-content:center;align-items:center;gap:7px;padding:7px 10px;font-size:.74rem;font-weight:800;display:flex}.ai-kind-toggle button .material-symbols-outlined{font-size:18px}.ai-kind-toggle button.active{color:var(--primary);background:var(--primary-soft)}.ai-source-field,.ai-generation-options label{color:var(--ink);gap:6px;font-size:.72rem;font-weight:800;display:grid}.ai-source-field textarea,.ai-generation-options input,.ai-generation-options select,.ai-preview-list textarea{border:1px solid var(--line-strong);width:100%;color:var(--ink);background:var(--surface);font:inherit;border-radius:8px}.ai-source-field textarea{resize:vertical;min-height:215px;padding:12px;line-height:1.5}.ai-source-field textarea:focus,.ai-generation-options input:focus,.ai-generation-options select:focus,.ai-preview-list textarea:focus{outline:3px solid rgba(var(--primary-rgb),.1);border-color:var(--primary)}.ai-source-footer{gap:7px;display:grid}.ai-source-footer>small{justify-self:end}.ai-source-footer small,.ai-quota{color:var(--muted);font-size:.68rem}.ai-file-button{border:1.5px dashed color-mix(in srgb,var(--primary) 30%,var(--line));min-height:64px;color:var(--ink);background:color-mix(in srgb,var(--primary) 3%,var(--surface));cursor:pointer;border-radius:12px;grid-template-columns:38px minmax(0,1fr) auto;align-items:center;gap:10px;padding:10px 11px;transition:border-color .16s,background .16s,transform .16s;display:grid}.ai-file-button:hover:not(.disabled){border-color:color-mix(in srgb,var(--primary) 58%,var(--line));background:color-mix(in srgb,var(--primary) 7%,var(--surface));transform:translateY(-1px)}.ai-file-button.disabled{color:var(--muted);cursor:default;opacity:.72}.ai-upload-icon{width:38px;height:38px;color:var(--primary);background:color-mix(in srgb,var(--primary) 12%,var(--surface));border-radius:10px;place-items:center;display:grid}.ai-file-button .material-symbols-outlined{font-size:20px}.ai-upload-copy{gap:2px;min-width:0;display:grid}.ai-upload-copy strong{font-size:.76rem;font-weight:800}.ai-upload-copy small{font-size:.63rem;font-weight:600}.ai-upload-action{border:1px solid color-mix(in srgb,var(--primary) 20%,var(--line));color:var(--primary);background:var(--surface);border-radius:8px;padding:6px 8px;font-size:.64rem;font-weight:800}.ai-file-button.disabled .material-symbols-outlined{animation:1s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.ai-file-button input{clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.ai-generation-options{grid-template-columns:120px minmax(0,1fr);gap:10px;display:grid}.ai-generation-options input,.ai-generation-options select{min-height:42px;padding:0 10px}.ai-generate-button{justify-content:center;width:100%}.ai-generate-button:disabled .material-symbols-outlined{animation:none}.ai-generate-button:not(:disabled) .material-symbols-outlined:first-child{color:inherit}.ai-error{color:#b91c1c;margin:0}.ai-preview-panel{background:var(--surface);grid-template-rows:auto minmax(0,1fr);gap:12px;display:grid;overflow:hidden}.ai-preview-heading{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:12px;padding-bottom:11px;display:flex}.ai-preview-heading>div{gap:2px;display:grid}.ai-preview-heading span{color:var(--primary);letter-spacing:.1em;font-size:.62rem;font-weight:850}.ai-preview-heading strong{font-size:.88rem}.ai-preview-heading button{color:var(--primary);font:inherit;cursor:pointer;background:0 0;border:0;font-size:.7rem;font-weight:800}.ai-preview-empty{min-height:350px;color:var(--muted);text-align:center;place-content:center;justify-items:center;gap:7px;padding:24px;display:grid}.ai-preview-empty>.material-symbols-outlined{width:54px;height:54px;color:var(--primary);background:var(--primary-soft);border-radius:14px;place-items:center;font-size:27px;display:grid}.ai-preview-empty strong{color:var(--ink)}.ai-preview-empty span{max-width:300px;font-size:.76rem;line-height:1.45}.ai-preview-list{gap:10px;max-height:540px;padding-right:4px;display:grid;overflow:auto}.ai-preview-list>article{border:1px solid var(--line);background:var(--bg-body);border-radius:9px;gap:10px;padding:13px;display:grid}.ai-preview-list>article>div:first-child{justify-content:space-between;align-items:center;gap:10px;display:flex}.ai-preview-list>article>div:first-child b{color:var(--primary);text-transform:uppercase;letter-spacing:.05em;font-size:.69rem}.ai-preview-list>article>div:first-child button{width:28px;height:28px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:6px;place-items:center;display:grid}.ai-preview-list>article>div:first-child button:hover{color:#b91c1c;background:#fff0f0}.ai-preview-list label{color:var(--muted);gap:4px;font-size:.66rem;font-weight:800;display:grid}.ai-preview-list textarea{resize:vertical;min-height:62px;color:var(--ink);padding:9px;font-size:.76rem;line-height:1.45}.ai-option-list{gap:6px;display:grid}.ai-option-list label{grid-template-columns:auto minmax(0,1fr);align-items:start}.ai-option-list input{accent-color:var(--primary);margin-top:13px}.ai-option-list textarea{min-height:44px}.mobile-bottom-nav{display:none}@media (min-width:901px) and (max-width:1180px){.legacy-app-container{padding:22px 24px 64px}}@media (max-width:900px){.legacy-app-container{width:100%;padding:calc(20px + env(safe-area-inset-top,0px)) max(20px,env(safe-area-inset-right,0px)) calc(84px + env(safe-area-inset-bottom,0px)) max(20px,env(safe-area-inset-left,0px))}.legacy-app-header{top:max(10px,env(safe-area-inset-top,0px));margin-bottom:32px;padding-left:68px}.home-row2{grid-template-columns:1fr}.mobile-bottom-nav{right:12px;bottom:max(10px,env(safe-area-inset-bottom,0px));z-index:2600;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#fffffff5;border:1px solid #d5d9e1e6;border-radius:16px;grid-template-columns:repeat(5,1fr);min-height:64px;padding:6px;display:grid;position:fixed;left:12px;box-shadow:0 14px 36px #17203329}.mobile-tab-btn{min-width:0;color:var(--muted);background:0 0;border:0;border-radius:10px;align-content:center;justify-items:center;gap:4px;font-size:.6rem;font-weight:700;text-decoration:none;display:grid}.mobile-tab-btn .material-symbols-outlined{font-size:21px}.mobile-tab-btn.active{color:var(--primary);background:var(--primary-soft)}}@media (max-width:700px){.legacy-app-container{padding:calc(76px + env(safe-area-inset-top,0px)) max(14px,env(safe-area-inset-right,0px)) calc(92px + env(safe-area-inset-bottom,0px)) max(14px,env(safe-area-inset-left,0px))}.legacy-app-header{min-height:56px;margin-bottom:26px;padding:9px 10px 9px 58px}.header-right{scrollbar-width:none;overflow-x:auto}.header-right::-webkit-scrollbar{display:none}.header-chip,.header-chip.highlight{flex:none;min-width:96px}.legacy-page-heading h2,.home-title-container h2{font-size:clamp(1.85rem,8.8vw,2.3rem)}.home-hero{flex-direction:column;align-items:stretch;padding:20px}.home-hero-actions{justify-content:space-between}.home-strip{grid-template-columns:1fr 1fr}.home-card{border-radius:11px;padding:16px}.legacy-library-grid{grid-template-columns:1fr}.calendar-overview{flex-direction:column;align-items:stretch}.question-overview{grid-template-columns:repeat(2,1fr)}.settings-page{border-radius:11px}}@media (max-width:430px){.header-chip:nth-of-type(-n+2){display:none}.mobile-bottom-nav{border-radius:14px;left:8px;right:8px}.mobile-tab-btn{font-size:.56rem}}.editorial-heading{justify-content:space-between;align-items:flex-end;gap:24px;display:flex}.editorial-heading>div:first-child{min-width:0}.page-kicker{color:var(--primary);letter-spacing:.12em;text-transform:uppercase;margin-bottom:7px;font-size:.68rem;font-weight:850;display:block}.editorial-actions,.period-filter,.metric-toggle{align-items:center;gap:8px;display:flex}.section-overview-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:0 0 18px;display:grid}.section-overview-grid>article{border:1px solid var(--line);background:var(--surface);min-width:0;box-shadow:var(--shadow-xs);border-radius:12px;align-items:center;gap:13px;padding:17px;display:flex}.section-overview-grid>article>span{width:40px;height:40px;color:var(--primary);background:var(--primary-soft);border-radius:9px;flex:none;place-items:center;display:grid}.section-overview-grid article small,.section-overview-grid article p{color:var(--muted);margin:0;font-size:.72rem;display:block}.section-overview-grid article strong{color:var(--ink);letter-spacing:-.035em;margin:1px 0;font-size:1.45rem;display:block}.section-overview-grid article.attention{background:linear-gradient(135deg,#fff9f9,var(--surface));border-color:#ef44442e}.section-overview-grid article.attention>span{color:#dc2626;background:#fff0f0}.home-agenda-list,.due-deck-list{gap:7px;margin:15px 0;display:grid}.home-agenda-list>span{border-bottom:1px solid var(--line);grid-template-columns:52px 1fr;align-items:center;gap:10px;padding:9px 0;display:grid}.home-agenda-list time{color:var(--primary);font-size:.78rem;font-weight:800}.activity-week{grid-template-columns:repeat(7,1fr);align-items:end;gap:7px;min-height:135px;margin-top:14px;display:grid}.activity-week>span{grid-template-rows:1fr auto auto;place-items:end center;gap:4px;height:100%;display:grid}.activity-week i{width:100%;min-height:8px;height:max(8px,var(--activity));background:linear-gradient(180deg,var(--primary),rgba(var(--primary-rgb),.4));border-radius:6px 6px 3px 3px}.activity-week small{color:var(--muted);text-transform:capitalize;font-size:.65rem}.activity-week b{font-size:.67rem}.due-deck-list button{border:0;border-bottom:1px solid var(--line);width:100%;color:var(--ink);text-align:left;cursor:pointer;background:0 0;justify-content:space-between;align-items:center;gap:10px;padding:10px 0;display:flex}.due-deck-list button span{gap:2px;display:grid}.due-deck-list button small{color:var(--muted)}.due-deck-list button>.material-symbols-outlined{color:var(--primary)}.home-priorities-empty{color:var(--muted);margin:4px 0 0;font-size:.82rem}.home-section-divider{color:var(--muted);letter-spacing:.04em;text-transform:uppercase;align-items:center;gap:8px;margin:16px 0 10px;font-size:.66rem;font-weight:700;display:flex}.home-section-divider:before,.home-section-divider:after{content:"";background:var(--line);flex:1;height:1px}.home-exam-chip{background:var(--primary-soft);border-radius:10px;align-items:center;gap:10px;margin-top:12px;padding:10px 12px;display:flex}.home-exam-chip strong{font-size:.8rem;display:block}.home-exam-chip small{color:var(--muted);text-transform:capitalize;font-size:.7rem}.calendar-planning-grid{grid-template-columns:1.15fr .85fr;gap:14px;margin-bottom:18px;display:grid}.upcoming-card,.study-planner-card{border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow-xs);border-radius:12px;padding:20px}.upcoming-list{margin-top:10px;display:grid}.upcoming-list button{border:0;border-bottom:1px solid var(--line);color:var(--ink);text-align:left;cursor:pointer;background:0 0;grid-template-columns:45px minmax(0,1fr) auto;align-items:center;gap:12px;padding:10px 0;display:grid}.upcoming-list time{color:var(--primary);text-transform:uppercase;justify-items:center;font-size:.63rem;font-weight:800;display:grid}.upcoming-list time b{font-size:1.15rem;line-height:1}.upcoming-list button>span{gap:2px;min-width:0;display:grid}.upcoming-list small{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:.72rem;overflow:hidden}.study-planner-card{color:#fff;background:var(--hero-gradient);border-color:#0000;align-items:flex-start;gap:14px;display:flex}.study-planner-card .label-icon{color:#fff;background:#ffffff1a;flex:none}.study-planner-card>div{flex:auto;min-width:0}.study-planner-card h3{letter-spacing:-.035em;margin:5px 0 8px;font-size:1.35rem}.study-planner-card p{color:#c7cfde;line-height:1.55}.study-planner-card .legacy-btn{color:#fff;background:#ffffff14;border-color:#ffffff40;width:auto;max-width:100%}.study-planner-card .legacy-btn .material-symbols-outlined{flex:none;width:auto}.calendar-agenda-view{gap:8px;padding:14px;display:grid}.calendar-agenda-view>button{border:1px solid var(--line);color:var(--ink);background:var(--surface);text-align:left;cursor:pointer;border-radius:9px;grid-template-columns:110px 4px minmax(0,1fr) auto;align-items:center;gap:13px;padding:14px;display:grid}.calendar-agenda-view time,.calendar-agenda-view>button>span{gap:3px;display:grid}.calendar-agenda-view time span,.calendar-agenda-view small{color:var(--muted);font-size:.75rem}.calendar-agenda-view i{border-radius:8px;align-self:stretch}.calendar-agenda-empty{text-align:center;justify-items:center;gap:8px;padding:46px 20px;display:grid}.calendar-agenda-empty>.material-symbols-outlined{color:var(--primary);font-size:40px}.attendance-risk-banner{background:#c2410c0f;border:1px solid #c2410c40;border-radius:11px;align-items:center;gap:11px;margin-bottom:16px;padding:12px 15px;display:flex}.attendance-risk-banner .risk-icon{color:#c2410c;background:#c2410c24;border-radius:9px;flex:none;place-items:center;width:32px;height:32px;display:grid}.attendance-risk-banner strong{color:var(--ink);font-size:.84rem;display:block}.attendance-risk-banner span{color:var(--muted);font-size:.76rem}.countdown-row{gap:14px;margin-bottom:16px;display:flex}.countdown-card{color:#fff;background:var(--hero-gradient);border-radius:16px;flex:1;padding:18px;position:relative;overflow:hidden}.countdown-card:after{content:"";pointer-events:none;border:28px solid #ffffff14;border-radius:50%;width:150px;height:150px;position:absolute;bottom:-80px;right:-60px}.countdown-card.empty{background:var(--surface);color:var(--ink);border:1px dashed var(--line)}.countdown-card.empty:after{display:none}.countdown-eyebrow{z-index:1;letter-spacing:.06em;text-transform:uppercase;opacity:.78;align-items:center;gap:6px;margin-bottom:6px;font-size:.66rem;font-weight:800;display:flex;position:relative}.countdown-eyebrow .material-symbols-outlined{font-size:15px}.countdown-title{z-index:1;margin:0 0 4px;font-size:1.05rem;font-weight:750;position:relative}.countdown-days{z-index:1;letter-spacing:-.02em;font-size:1.6rem;font-weight:800;position:relative}.countdown-days span{opacity:.78;text-transform:capitalize;margin-left:5px;font-size:.7rem;font-weight:700}.countdown-bar-track{z-index:1;background:#ffffff3d;border-radius:99px;height:6px;margin-top:12px;position:relative;overflow:hidden}.countdown-card.empty .countdown-bar-track{background:var(--line)}.countdown-bar-fill{background:#fff;border-radius:99px;height:100%}.countdown-card.empty .countdown-bar-fill{background:var(--primary)}.countdown-foot{z-index:1;opacity:.9;margin-top:8px;font-size:.72rem;position:relative}.countdown-card.empty .countdown-foot{color:var(--muted);opacity:1}.countdown-action{z-index:1;color:#fff;cursor:pointer;background:#ffffff29;border:1px solid #ffffff52;border-radius:8px;align-items:center;gap:4px;margin-top:11px;padding:6px 11px;font-size:.7rem;font-weight:700;display:inline-flex;position:relative}.countdown-action .material-symbols-outlined{font-size:14px}.countdown-action:hover{background:#ffffff42}.week-load-strip{grid-template-columns:repeat(7,1fr);gap:8px;margin-bottom:14px;display:grid}.week-load-day{border:1px solid var(--line);text-align:center;background:var(--surface);border-radius:12px;padding:10px 6px}.week-load-day.today{border-color:var(--primary);box-shadow:0 0 0 1px var(--primary)}.week-load-day .dow{color:var(--muted);text-transform:uppercase;margin-bottom:6px;font-size:.6rem;font-weight:800;display:block}.week-load-day .num{color:var(--ink);margin-bottom:6px;font-size:.86rem;font-weight:750;display:block}.week-load-day .heat{background:var(--primary);border-radius:7px;width:70%;min-height:12px;margin:0 auto}.calendar-legend-row{border:1px solid var(--line);background:var(--surface);border-radius:11px;flex-wrap:wrap;gap:18px;margin-bottom:16px;padding:11px 14px;display:flex}.legend-group{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.legend-group .gname{color:var(--muted);text-transform:uppercase;letter-spacing:.05em;margin-right:2px;font-size:.62rem;font-weight:800}.legend-chip{color:var(--muted);align-items:center;gap:5px;font-size:.68rem;font-weight:600;display:flex}.legend-chip i{border-radius:50%;width:9px;height:9px;display:block}.legend-chip .shape{text-align:center;width:12px;color:var(--muted);font-size:.62rem;display:inline-block}.calendar-day{position:relative}.calendar-day-add{background:var(--primary-soft);width:18px;height:18px;color:var(--primary);opacity:0;border:0;border-radius:5px;place-items:center;transition:opacity .12s;display:grid;position:absolute;top:5px;left:5px}.calendar-day-add .material-symbols-outlined{font-size:13px}.calendar-day:hover .calendar-day-add{opacity:1}.calendar-events button .shape{margin-right:3px;font-size:.6rem;display:inline-block}.calendar-day-more{width:100%;color:var(--primary);text-align:left;cursor:pointer;background:0 0;border:0;padding-left:5px;font-size:.62rem;font-weight:800;display:block}.calendar-day-more:hover{text-decoration:underline}.calendar-reading-chip{border:1px dashed var(--line-strong);color:var(--muted);white-space:nowrap;cursor:pointer;border-radius:5px;align-items:center;gap:4px;margin-top:3px;padding:2px 5px 2px 3px;font-size:.58rem;font-weight:600;display:flex;overflow:hidden}.calendar-reading-chip input{flex:none;width:9px;height:9px;margin:0}.calendar-day-more-readings{color:var(--muted);margin-top:2px;font-size:.56rem;font-weight:700;display:block}@media (max-width:700px){.countdown-row{flex-direction:column}.week-load-strip{grid-template-columns:repeat(4,1fr)}}.discipline-search{margin:12px 0}.pill-row{flex-wrap:wrap;gap:8px;margin-bottom:14px;display:flex}.disc-pill{border:1px solid var(--line);color:var(--ink);background:var(--surface);font:inherit;cursor:pointer;border-radius:999px;align-items:center;gap:7px;padding:8px 13px 8px 10px;font-size:.76rem;font-weight:700;display:flex}.disc-pill .pill-dot{background:var(--discipline-color);border-radius:50%;flex:none;width:9px;height:9px}.disc-pill b{color:var(--muted);font-weight:800}.disc-pill.active{border-color:var(--discipline-color);background:color-mix(in srgb, var(--discipline-color) 12%, var(--surface));box-shadow:0 0 0 1px color-mix(in srgb, var(--discipline-color) 30%, transparent)}.disc-pill .pill-flag{color:#c2410c;font-size:15px;display:flex}.disc-pill .pill-flag .material-symbols-outlined{font-size:15px}.discipline-hero{border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow-xs);border-radius:14px;margin-bottom:14px;padding:16px 18px 18px}.discipline-insight-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-bottom:12px;display:grid}.discipline-insight-grid article.attention{background:#c2410c0d;border-color:#c2410c4d}.discipline-insight-grid article.attention strong{color:#c2410c}.discipline-insight-grid article{border:1px solid var(--line);background:var(--surface);border-radius:10px;gap:9px;min-width:0;padding:14px;display:flex}.discipline-insight-grid article>.material-symbols-outlined{color:var(--primary);font-size:20px}.discipline-insight-grid span{gap:2px;min-width:0;display:grid}.discipline-insight-grid small,.discipline-insight-grid p{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:.68rem;overflow:hidden}.discipline-status-banner{color:#047857;background:#f0fdf8;border:1px solid #10b98133;border-radius:9px;align-items:center;gap:10px;margin-bottom:12px;padding:12px 15px;display:flex}.discipline-status-banner.attention{color:#b45309;background:#fffbeb;border-color:#f59e0b3d}.discipline-status-banner span{gap:2px;display:grid}.discipline-status-banner small{color:inherit;opacity:.8}.attention-banner{background:#c2410c0f;border:1px solid #c2410c40;border-radius:11px;align-items:center;gap:11px;margin-bottom:14px;padding:12px 15px;display:flex}.attention-banner .aicon{color:#c2410c;background:#c2410c24;border-radius:9px;flex:none;place-items:center;width:32px;height:32px;display:grid}.attention-banner strong{color:var(--ink);font-size:.84rem;display:block}.attention-banner span{color:var(--muted);font-size:.76rem}.attention-banner button.button-link{white-space:nowrap;flex:none;margin-left:auto}.disc-header{align-items:center;gap:11px;margin-bottom:14px;display:flex}.disc-header-dot{border-radius:6px;flex:none;width:16px;height:16px}.disc-header h3{margin:0;font-size:1.15rem;font-weight:750}.disc-header .discipline-actions{margin:0 0 0 auto}.projection-card{background:var(--primary-soft);border-radius:12px;flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:12px;padding:13px 15px;display:flex}.projection-card .picon{background:var(--surface);width:34px;height:34px;color:var(--primary);border-radius:9px;flex:none;place-items:center;display:grid}.projection-card strong{color:var(--ink);font-size:.84rem;display:block}.projection-card>div>span{color:var(--muted);font-size:.74rem}.projection-calc{border:1px solid var(--line);background:var(--surface);border-radius:9px;align-items:center;gap:7px;margin-left:auto;padding:7px 10px;display:flex}.projection-calc label,.projection-calc>span{color:var(--muted);font-size:.68rem;font-weight:700}.projection-calc input{border:1px solid var(--line-strong,var(--line));width:48px;color:var(--ink);background:var(--bg-body);font:inherit;text-align:center;border-radius:6px;padding:4px 6px;font-size:.76rem}.projection-calc .result{white-space:nowrap;font-size:.76rem;font-weight:800}.projection-calc .result.ok{color:#047857}.projection-calc .result.risk{color:#c2410c}.grade-details{margin-bottom:12px}.grade-details summary{color:var(--primary);cursor:pointer;padding:8px 2px;font-size:.76rem;font-weight:700}.practice-link{border:1px dashed var(--line-strong,var(--line));background:var(--surface);border-radius:11px;align-items:center;gap:10px;margin-bottom:14px;padding:11px 14px;display:flex}.practice-link .qicon{background:var(--primary-soft);width:28px;height:28px;color:var(--primary);border-radius:8px;flex:none;place-items:center;display:grid}.practice-link strong{font-size:.8rem;display:block}.practice-link small{color:var(--muted);font-size:.7rem;display:block}.practice-link a{color:var(--primary);white-space:nowrap;flex:none;margin-left:auto;font-size:.74rem;font-weight:800;text-decoration:none}.filter-row{flex-wrap:wrap;gap:6px;margin-bottom:12px;display:flex}.filter-chip{border:1px solid var(--line);background:var(--surface);color:var(--muted);cursor:pointer;border-radius:999px;padding:6px 12px;font-size:.72rem;font-weight:700}.filter-chip.active{border-color:var(--primary);background:var(--primary-soft);color:var(--primary)}.spine{margin:14px 0 14px 5px;padding-left:22px;position:relative}.spine:before{content:"";background:var(--line);width:2px;position:absolute;top:2px;bottom:2px;left:5px}.spine-label{color:var(--muted);letter-spacing:.06em;text-transform:uppercase;margin:16px 0 8px;font-size:.66rem;font-weight:800;position:relative}.spine>div:first-child .spine-label,.spine>.spine-label:first-child{margin-top:0}.spine-label.overdue{color:#c2410c}.spine-node{margin-bottom:9px;position:relative}.spine-node:before{content:"";background:var(--surface);border:2px solid var(--node-color,var(--primary));border-radius:50%;width:11px;height:11px;position:absolute;top:5px;left:-22px}.spine-node.done:before{background:var(--node-color,var(--muted))}.spine-card{border:1px solid var(--line);background:var(--surface);border-radius:10px;align-items:flex-start;gap:9px;padding:10px 12px;display:flex}.spine-node.overdue .spine-card{background:#c2410c0d;border-color:#c2410c4d}.spine-node.done .spine-card{opacity:.55}.spine-node.done .spine-card strong{text-decoration:line-through}.spine-card .tl-check{border:1px solid var(--line-strong,var(--line));background:var(--surface);color:#fff;cursor:pointer;border-radius:4px;flex:none;place-items:center;width:15px;height:15px;margin-top:2px;padding:0;font-size:.6rem;display:grid}.spine-card .tl-check.checked{background:var(--primary);border-color:var(--primary)}.spine-card .body{flex:1;min-width:0}.spine-card .row1{justify-content:space-between;align-items:baseline;gap:8px;display:flex}.spine-card strong{font-size:.8rem}.spine-card .when{color:var(--muted);white-space:nowrap;font-size:.66rem;font-weight:700}.spine-node.overdue .when{color:#c2410c}.spine-card small{color:var(--muted);margin-top:2px;font-size:.7rem;display:block}.spine-card .type-tag{flex:none;margin-top:1px;font-size:.7rem}.spine-card .row2{justify-content:space-between;align-items:center;gap:8px;margin-top:2px;display:flex}.spine-card .row2 small{margin-top:0}.disc-tag{color:color-mix(in srgb, var(--discipline-color) 78%, black);background:color-mix(in srgb, var(--discipline-color) 16%, var(--surface));white-space:nowrap;cursor:pointer;border:0;border-radius:999px;flex:none;padding:2px 9px;font-size:.62rem;font-weight:800}.spine-done summary{color:var(--muted);cursor:pointer;list-style:none}.spine-done summary::-webkit-details-marker{display:none}.discipline-files-panel{margin-top:16px}.metric-toggle{border:1px solid var(--line);background:var(--surface);border-radius:9px;padding:4px}.metric-toggle button{color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:6px;padding:7px 10px;font-weight:750}.metric-toggle button.active{color:var(--primary);background:var(--primary-soft)}.period-filter{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#ffffff14;border:1px solid #ffffff2e;border-radius:10px;gap:4px;padding:4px;display:flex}.period-filter button{color:#ffffffb3;font:inherit;cursor:pointer;background:0 0;border:0;border-radius:7px;padding:7px 13px;font-size:.76rem;font-weight:750}.period-filter button.active{color:var(--primary);background:#fff}.hero-zone{color:#fff;background:var(--hero-gradient);border-radius:18px;margin-bottom:20px;padding:24px 26px 22px;position:relative;overflow:hidden;box-shadow:0 20px 44px #141e5042}.hero-zone:before{content:"";opacity:.5;pointer-events:none;background-image:radial-gradient(#ffffff29 1.4px,#0000 1.4px);background-position:-4px -4px;background-size:22px 22px;position:absolute;inset:0}.hero-zone:after{content:"";pointer-events:none;background:radial-gradient(circle,#ffffff24,#0000 70%);border-radius:50%;width:220px;height:220px;position:absolute;top:-60px;right:-60px}.hero-top{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:20px;margin-bottom:18px;display:flex;position:relative}.hero-top .kicker{color:#ffffffc7;letter-spacing:.1em;text-transform:uppercase;align-items:center;gap:7px;font-size:.72rem;font-weight:850;display:inline-flex}.hero-top h2{letter-spacing:-.04em;margin:9px 0 6px;font-family:Fraunces,sans-serif;font-size:clamp(1.65rem,3vw,2rem)}.hero-top p{color:#ffffffbd;max-width:460px;margin:0;font-size:.86rem}.next-action{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0a102a47;border:1px solid #ffffff29;border-radius:14px;align-items:center;gap:16px;padding:16px 18px;display:flex;position:relative}.next-action .naicon{background:#ffffff24;border-radius:12px;flex:none;place-items:center;width:42px;height:42px;display:grid}.next-action .nabody{flex:1;min-width:0}.next-action .nabody span{color:#ffffff9e;letter-spacing:.06em;text-transform:uppercase;font-size:.66rem;font-weight:800;display:block}.next-action .nabody strong{margin-top:4px;font-size:1.02rem;font-weight:700;line-height:1.35;display:block}.next-action .nabody small{color:#ffffffb8;margin-top:4px;font-size:.75rem;display:block}.next-action a{color:var(--primary);white-space:nowrap;background:#fff;border-radius:10px;flex:none;align-items:center;gap:6px;padding:11px 18px;font-size:.8rem;font-weight:800;text-decoration:none;transition:transform .14s;display:inline-flex}.next-action a:hover{transform:translateY(-1px)}.constancy-hero{border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow-card);border-radius:18px;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:0;margin-bottom:20px;display:grid;overflow:hidden}.constancy-left{border-right:1px solid var(--line);padding:22px}.constancy-left h3{margin:0 0 3px;font-family:Fraunces,sans-serif;font-size:1.05rem}.constancy-left>p{color:var(--muted);margin:0 0 16px;font-size:.74rem}.heatmap{grid-template-rows:repeat(7,1fr);grid-auto-flow:column;gap:3px;margin-bottom:10px;display:grid;overflow-x:auto}.heatmap i{background:var(--line);border-radius:3px;width:12px;height:12px;display:block}.heatmap i[data-lvl="1"]{background:color-mix(in srgb, var(--primary) 25%, var(--line))}.heatmap i[data-lvl="2"]{background:color-mix(in srgb, var(--primary) 50%, var(--line))}.heatmap i[data-lvl="3"]{background:color-mix(in srgb, var(--primary) 75%, var(--line))}.heatmap i[data-lvl="4"]{background:var(--primary)}.heatmap-legend{color:var(--muted);align-items:center;gap:6px;font-size:.62rem;font-weight:700;display:flex}.heatmap-legend .scale{gap:3px;display:flex}.heatmap-legend .scale i{border-radius:3px;width:10px;height:10px}.constancy-stats{grid-template-columns:repeat(4,1fr);gap:10px;margin-top:16px;display:grid}.constancy-stats article{border:1px solid var(--line);border-radius:10px;padding:12px 12px 10px}.constancy-stats small{color:var(--muted);letter-spacing:.05em;text-transform:uppercase;font-size:.6rem;font-weight:800;display:block}.constancy-stats strong{font-variant-numeric:tabular-nums;letter-spacing:-.02em;margin-top:4px;font-family:Fraunces,sans-serif;font-size:1.3rem;display:block}.constancy-right{align-content:center;gap:14px;padding:22px;display:grid}.compare-row{justify-content:space-between;align-items:center;gap:10px;display:flex}.compare-row small{color:var(--muted);letter-spacing:.05em;text-transform:uppercase;font-size:.68rem;font-weight:800}.compare-bars{gap:8px;display:grid}.compare-bar-row{grid-template-columns:64px minmax(0,1fr) 40px;align-items:center;gap:8px;display:grid}.compare-bar-row span{color:var(--muted);font-size:.68rem;font-weight:700}.compare-bar-row b{font-variant-numeric:tabular-nums;text-align:right;font-family:Fraunces,sans-serif;font-size:.95rem}.compare-track{background:var(--line);border-radius:99px;height:9px;overflow:hidden}.compare-track i{border-radius:inherit;background:var(--muted);height:100%;display:block}.compare-track i.now{background:var(--primary)}.compare-delta{color:#c2410c;background:#c2410c1a;border-radius:999px;align-items:center;gap:5px;width:-moz-fit-content;width:fit-content;margin-top:2px;padding:6px 11px;font-size:.72rem;font-weight:800;display:inline-flex}.compare-delta.positive{color:#059669;background:#0596691f}.chart-card{border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow-card);border-radius:18px;margin-bottom:20px;padding:20px 22px}.chart-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:14px;display:flex}.chart-head h3{margin:0 0 3px;font-family:Fraunces,sans-serif;font-size:1.05rem}.chart-head p{color:var(--muted);max-width:420px;margin:0;font-size:.74rem}.source-legend{gap:14px;display:flex}.source-legend span{color:var(--muted);align-items:center;gap:6px;font-size:.68rem;font-weight:700;display:inline-flex}.source-legend i{border-radius:3px;width:9px;height:9px}.chart-area{height:220px;position:relative}.chart-area svg{width:100%;height:100%;overflow:visible}.chart-gridline{stroke:var(--line);stroke-width:1px}.chart-axis-label{fill:var(--muted);font-size:9px}.chart-fill-cards{fill:url(#gradCards)}.chart-fill-q{fill:url(#gradQ)}.chart-line-cards{fill:none;stroke:var(--primary);stroke-width:1.6px;vector-effect:non-scaling-stroke}.chart-line-q{fill:none;stroke:var(--review);stroke-width:1.6px;stroke-dasharray:3 3;vector-effect:non-scaling-stroke}.chart-dot{fill:var(--surface);stroke:var(--primary);stroke-width:1.6px;cursor:pointer}.chart-dot.q{stroke:var(--review)}.chart-xaxis{color:var(--muted);justify-content:space-between;margin-top:6px;padding-left:2px;font-size:.63rem;font-weight:700;display:flex}.domain-mastery-section{border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow-card);border-radius:18px;margin-bottom:20px;padding:22px}.domain-mastery-head{margin-bottom:16px}.domain-mastery-head>span{color:var(--primary);letter-spacing:.1em;text-transform:uppercase;align-items:center;gap:7px;font-size:.72rem;font-weight:850;display:inline-flex}.domain-mastery-head h3{letter-spacing:-.03em;margin:8px 0 4px;font-family:Fraunces,sans-serif;font-size:1.12rem}.domain-mastery-head p{max-width:460px;color:var(--muted);margin:0;font-size:.74rem}.domain-mastery-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.domain-mastery-card{border:1px solid var(--line);background:var(--bg-body);border-radius:13px;padding:16px;position:relative}.domain-mastery-card.priority{border-color:rgba(var(--primary-rgb),.35);background:var(--primary-soft)}.dm-ribbon{color:#fff;background:var(--primary);letter-spacing:.03em;box-shadow:0 4px 10px rgba(var(--primary-rgb),.35);border-radius:999px;align-items:center;gap:3px;padding:3px 10px;font-size:.6rem;font-weight:800;display:inline-flex;position:absolute;top:-9px;left:14px}.dm-head{grid-template-columns:9px minmax(0,1fr);align-items:center;gap:9px;margin-bottom:12px;display:grid}.dm-head>i{border-radius:99px;width:9px;height:34px}.dm-head strong{font-size:.84rem;display:block}.dm-head small{color:var(--muted);font-size:.63rem}.dm-quadrant{border:1px solid var(--line);background:var(--surface);border-radius:9px;height:96px;margin-bottom:10px;position:relative}.dm-quadrant:before{content:"";background:var(--line);width:1px;position:absolute;top:0;bottom:0;left:50%}.dm-quadrant:after{content:"";background:var(--line);height:1px;position:absolute;top:50%;left:0;right:0}.dm-qdot{border:2px solid var(--surface);width:11px;height:11px;box-shadow:0 0 0 1px #00000014,0 0 0 5px color-mix(in srgb, currentColor 16%, transparent);border-radius:50%;margin:-5.5px;position:absolute}.dm-qlabel{color:var(--muted);text-transform:uppercase;letter-spacing:.04em;font-size:.56rem;font-weight:800;position:absolute}.dm-qlabel.top{top:4px;left:6px}.dm-qlabel.right{bottom:4px;right:6px}.dm-metrics-row{justify-content:space-between;gap:8px;margin-bottom:12px;display:flex}.dm-metrics-row span{color:var(--muted);font-size:.62rem;font-weight:700}.dm-metrics-row b{color:var(--ink);margin-top:1px;font-size:.78rem;display:block}.domain-mastery-card>a{color:var(--primary);align-items:center;gap:5px;font-size:.72rem;font-weight:800;text-decoration:none;display:inline-flex}.domain-mastery-card>a .material-symbols-outlined{font-size:15px}.retention-section{border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow-card);border-radius:18px;margin-bottom:20px;padding:22px}.retention-head{margin-bottom:18px}.retention-head>span{color:var(--primary);letter-spacing:.1em;text-transform:uppercase;align-items:center;gap:7px;font-size:.72rem;font-weight:850;display:inline-flex}.retention-head h3{letter-spacing:-.03em;margin:8px 0 4px;font-family:Fraunces,sans-serif;font-size:1.12rem}.retention-head p{max-width:600px;color:var(--muted);margin:0;font-size:.74rem}.retention-top-grid{grid-template-columns:1fr 1fr;gap:14px;margin-bottom:14px;display:grid}.retention-card{border:1px solid var(--line);background:var(--bg-body);border-radius:13px;padding:16px}.retention-card-title{justify-content:space-between;align-items:center;gap:10px;margin-bottom:12px;display:flex}.retention-card-title strong{font-size:.82rem}.retention-card-title small{color:var(--muted);font-size:.62rem;font-weight:700}.retention-split{grid-template-columns:1fr 1fr;gap:12px;display:grid}.retention-stat{background:var(--surface);border:1px solid var(--line);text-align:center;border-radius:10px;padding:14px 12px}.retention-stat b{font-variant-numeric:tabular-nums;letter-spacing:-.03em;font-family:Fraunces,sans-serif;font-size:2.1rem;display:block}.retention-stat b.good{color:#059669}.retention-stat b.warn{color:#c2410c}.retention-stat span{color:var(--muted);letter-spacing:.03em;text-transform:uppercase;margin-top:2px;font-size:.66rem;font-weight:800;display:block}.retention-stat small{color:var(--muted);margin-top:5px;font-size:.62rem;line-height:1.4;display:block}.buttons-bar{background:var(--surface);border-radius:8px;gap:2px;height:26px;margin-bottom:10px;display:flex;overflow:hidden}.buttons-bar i{height:100%;display:block}.buttons-legend{grid-template-columns:repeat(4,1fr);gap:6px;display:grid}.buttons-legend span{color:var(--muted);align-items:center;gap:5px;font-size:.64rem;font-weight:700;display:flex}.buttons-legend b{color:var(--ink);font-variant-numeric:tabular-nums}.retention-sub-grid{grid-template-columns:1fr 1fr 1fr;gap:14px;display:grid}.maturity-bar{background:var(--surface);border-radius:7px;gap:2px;height:20px;margin-bottom:10px;display:flex;overflow:hidden}.maturity-bar i{height:100%;display:block}.maturity-legend{gap:5px;display:grid}.maturity-legend span{color:var(--muted);justify-content:space-between;align-items:center;gap:6px;font-size:.64rem;font-weight:700;display:flex}.maturity-legend span>em{align-items:center;gap:5px;font-style:normal;display:flex}.maturity-legend i{border-radius:2px;flex:none;width:8px;height:8px}.maturity-legend b{color:var(--ink)}.forecast-bars{align-items:flex-end;gap:3px;height:70px;margin-bottom:6px;display:flex}.forecast-bars i{background:var(--primary);border-radius:3px 3px 0 0;flex:1;min-height:2px}.forecast-bars i.today{background:#c2410c}.forecast-xaxis{color:var(--muted);justify-content:space-between;font-size:.58rem;font-weight:700;display:flex}.leech-list{gap:7px;display:grid}.leech-row{align-items:center;gap:8px;display:flex}.leech-row .lrank{width:16px;color:var(--muted);flex:none;font-size:.66rem;font-weight:800}.leech-row .ltext{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-size:.68rem;overflow:hidden}.leech-row .lcount{color:#c2410c;white-space:nowrap;cursor:pointer;background:#c2410c1a;border:0;border-radius:999px;flex:none;padding:2px 7px;font-size:.62rem;font-weight:800}.daypart-strip{grid-template-columns:repeat(4,1fr);gap:10px;margin-top:14px;display:grid}.daypart-card{border:1px solid var(--line);background:var(--bg-body);text-align:center;border-radius:11px;padding:12px}.daypart-card .material-symbols-outlined{color:var(--primary);font-size:19px}.daypart-card strong{font-variant-numeric:tabular-nums;letter-spacing:-.01em;margin-top:5px;font-family:Fraunces,sans-serif;font-size:1.1rem;display:block}.daypart-card small{color:var(--muted);font-size:.62rem;font-weight:700;display:block}.daypart-card.best{border-color:rgba(var(--primary-rgb),.35);background:var(--primary-soft)}.daypart-card.best .material-symbols-outlined{color:var(--primary)}.feed-card{border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow-card);border-radius:18px;padding:20px 22px}.feed-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px;display:flex}.feed-head h3{margin:0;font-family:Fraunces,sans-serif;font-size:1.02rem}.feed-filters{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.feed-filters button{border:1px solid var(--line);color:var(--muted);font:inherit;cursor:pointer;background:0 0;border-radius:999px;align-items:center;gap:5px;padding:6px 11px;font-size:.7rem;font-weight:750;display:inline-flex}.feed-filters button.active{border-color:var(--primary);color:var(--primary);background:var(--primary-soft)}.feed-filters .material-symbols-outlined{font-size:14px}.feed-clear-btn{margin-left:auto;border-style:dashed!important}.feed-clear-btn:disabled{opacity:.4;cursor:default}.feed-row{border:1px solid var(--line);border-radius:11px;grid-template-columns:34px minmax(0,1fr) auto auto;align-items:center;gap:12px;padding:11px 13px;display:grid}.feed-row .fkind{border-radius:9px;flex:none;place-items:center;width:34px;height:34px;display:grid}.feed-row .fkind.cards{color:var(--primary);background:var(--primary-soft)}.feed-row .fkind.quiz{color:var(--review);background:rgba(var(--review-rgb),.14)}.feed-row .fbody{min-width:0}.feed-row .fbody strong{font-size:.8rem;display:block}.feed-row .fbody small{color:var(--muted);font-size:.68rem}.feed-row .facc{white-space:nowrap;font-size:.85rem;font-weight:800}.feed-row .facc.low{color:#c2410c}.feed-row .facc.high{color:#059669}.feed-row .ftime{color:var(--muted);white-space:nowrap;font-size:.68rem;font-weight:700}@media (max-width:820px){.constancy-hero{grid-template-columns:1fr}.constancy-left{border-right:0;border-bottom:1px solid var(--line)}.constancy-stats{grid-template-columns:repeat(2,1fr)}.domain-mastery-grid,.retention-top-grid,.retention-sub-grid,.daypart-strip{grid-template-columns:1fr}}.community-profile-hero{color:#fff;background:var(--hero-gradient);border-radius:20px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:20px;margin-bottom:20px;padding:26px 28px;display:grid;position:relative;overflow:hidden;box-shadow:0 20px 44px #141e5042}.community-profile-hero:before{content:"";opacity:.5;pointer-events:none;background-image:radial-gradient(#ffffff29 1.4px,#0000 1.4px);background-position:-4px -4px;background-size:22px 22px;position:absolute;inset:0}.community-profile-hero:after{content:"";pointer-events:none;background:radial-gradient(circle,#ffffff24,#0000 70%);border-radius:50%;width:220px;height:220px;position:absolute;top:-60px;right:-60px}.cp-left{position:relative}.cp-label{color:#ffffffad;letter-spacing:.08em;text-transform:uppercase;font-size:.68rem;font-weight:800;display:block}.cp-code{letter-spacing:.02em;font-variant-numeric:tabular-nums;margin-top:8px;font-family:Fraunces,sans-serif;font-size:clamp(1.6rem,3vw,2.2rem)}.cp-left p{color:#ffffffc2;max-width:380px;margin:10px 0 0;font-size:.82rem;line-height:1.5}.cp-actions{flex-direction:column;gap:8px;display:flex;position:relative}.cp-actions button{white-space:nowrap;cursor:pointer;border:0;border-radius:10px;align-items:center;gap:8px;padding:11px 18px;font-size:.8rem;font-weight:800;display:inline-flex}.cp-actions button.primary{color:var(--primary);background:#fff}.cp-actions button.ghost{color:#fff;background:#ffffff1f;border:1px solid #ffffff3d}.cp-actions button:disabled{opacity:.6;cursor:default}.community-snapshot-card{border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow-card);border-radius:18px;margin-bottom:20px;padding:20px 22px}.community-snapshot-card .snapshot-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:14px;display:flex}.community-snapshot-card .snapshot-head h3{margin:0;font-family:Fraunces,sans-serif;font-size:1.02rem}.community-snapshot-card .snapshot-head small{color:var(--muted);font-size:.7rem;font-weight:700}.community-snapshot-card .snapshot-grid{grid-template-columns:repeat(4,1fr);gap:10px;display:grid}.community-snapshot-card .snapshot-grid article{border:1px solid var(--line);background:var(--bg-body);text-align:center;border-radius:11px;padding:14px}.community-snapshot-card .snapshot-grid small{color:var(--muted);letter-spacing:.04em;text-transform:uppercase;font-size:.62rem;font-weight:800;display:block}.community-snapshot-card .snapshot-grid strong{font-variant-numeric:tabular-nums;letter-spacing:-.02em;margin-top:5px;font-family:Fraunces,sans-serif;font-size:1.4rem;display:block}.community-snapshot-card .snapshot-note{background:var(--primary-soft);color:var(--primary);border-radius:9px;align-items:center;gap:8px;margin-top:12px;padding:10px 12px;font-size:.72rem;font-weight:700;display:flex}.community-snapshot-card .snapshot-note .material-symbols-outlined{font-size:16px}.invite-card{border:1px dashed var(--line-strong);background:var(--surface);border-radius:16px;align-items:center;gap:16px;margin-bottom:20px;padding:18px 20px;display:flex}.invite-card .iicon{width:42px;height:42px;color:var(--primary);background:var(--primary-soft);border-radius:12px;flex:none;place-items:center;display:grid}.invite-card .ibody{flex:1;min-width:0}.invite-card .ibody strong{font-size:.86rem;display:block}.invite-card .ibody small{color:var(--muted);margin-top:2px;font-size:.74rem;display:block}.invite-card button{color:#fff;background:var(--primary);cursor:pointer;white-space:nowrap;border:0;border-radius:10px;flex:none;align-items:center;gap:6px;padding:11px 18px;font-size:.8rem;font-weight:800;display:inline-flex}.challenge-card{color:#fff;background:linear-gradient(135deg,#1b2a63,#3154d8 60%,#4d6de3);border-radius:16px;align-items:center;gap:18px;margin-bottom:20px;padding:18px 20px;display:flex;box-shadow:0 16px 32px #1b307638}.challenge-ring{background:conic-gradient(#fff calc(var(--pct) * 1%),#ffffff38 0);border-radius:50%;flex:none;place-items:center;width:64px;height:64px;display:grid;position:relative}.challenge-ring:before{content:"";background:#2747bd;border-radius:50%;position:absolute;inset:6px}.challenge-ring span{font-variant-numeric:tabular-nums;font-family:Fraunces,sans-serif;font-size:1rem;font-weight:700;position:relative}.challenge-body{flex:1;min-width:0}.challenge-body span.label{color:#ffffffad;letter-spacing:.06em;text-transform:uppercase;font-size:.66rem;font-weight:800;display:block}.challenge-body strong{margin-top:4px;font-size:1rem;display:block}.challenge-body small{color:#ffffffc2;margin-top:3px;font-size:.76rem;display:block}.challenge-card button{color:#fff;cursor:pointer;white-space:nowrap;background:#ffffff24;border:1px solid #ffffff4d;border-radius:10px;flex:none;align-items:center;gap:6px;padding:11px 16px;font-size:.78rem;font-weight:800;display:inline-flex}.week-strip-card{border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow-xs);border-radius:16px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin-bottom:20px;padding:16px 20px;display:flex}.week-strip-label{min-width:0}.week-strip-label strong{font-size:.82rem;display:block}.week-strip-label small{color:var(--muted);margin-top:2px;font-size:.7rem;display:block}.week-strip{gap:8px;display:flex}.week-dot{justify-items:center;gap:5px;display:grid}.week-dot span.d{color:var(--muted);text-transform:uppercase;font-size:.6rem;font-weight:800}.week-dot i{border:2px solid var(--line);width:26px;height:26px;color:var(--muted);background:var(--bg-body);border-radius:50%;place-items:center;font-size:14px;font-style:normal;display:grid}.week-dot i .material-symbols-outlined{font-size:14px}.week-dot.done i{border-color:var(--primary);background:var(--primary);color:#fff}.week-dot.today i{border-color:var(--primary);color:var(--primary);background:var(--surface);border-style:dashed}.achievements-card{border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow-card);border-radius:18px;margin-bottom:20px;padding:20px 22px}.achievements-card .section-head{margin-bottom:14px}.achievements-card .section-head>span{color:var(--primary);letter-spacing:.1em;text-transform:uppercase;align-items:center;gap:7px;font-size:.72rem;font-weight:850;display:inline-flex}.achievements-card .section-head h3{letter-spacing:-.03em;margin:8px 0 4px;font-family:Fraunces,sans-serif;font-size:1.12rem}.achievements-card .section-head p{max-width:520px;color:var(--muted);margin:0;font-size:.74rem}.badge-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.badge{border:1px solid var(--line);background:var(--bg-body);border-radius:13px;align-items:flex-start;gap:11px;padding:14px;display:flex;position:relative}.badge.unlocked{border-color:rgba(var(--primary-rgb),.3);background:var(--primary-soft)}.badge .bicon{width:38px;height:38px;color:var(--muted);background:var(--surface);border-radius:10px;flex:none;place-items:center;font-size:19px;display:grid}.badge.unlocked .bicon{color:var(--primary);background:#fff}.badge .bbody{min-width:0}.badge .bbody strong{font-size:.82rem;display:block}.badge .bbody small{color:var(--muted);margin-top:2px;font-size:.68rem;line-height:1.4;display:block}.badge .bcheck{color:#fff;background:#059669;border-radius:50%;place-items:center;width:20px;height:20px;font-size:13px;display:grid;position:absolute;top:-7px;right:-7px;box-shadow:0 3px 8px #05966959}.badge .bcheck .material-symbols-outlined,.badge .block .material-symbols-outlined{font-size:13px}.badge .block{width:20px;height:20px;color:var(--muted);background:var(--surface);border:1px solid var(--line);border-radius:50%;place-items:center;font-size:12px;display:grid;position:absolute;top:-7px;right:-7px}.next-badge-row{border:1px dashed var(--line-strong);background:var(--bg-body);border-radius:12px;align-items:center;gap:14px;margin-top:14px;padding:13px 15px;display:flex}.next-badge-row .bicon{width:34px;height:34px;color:var(--primary);background:var(--primary-soft);border-radius:9px;flex:none;place-items:center;font-size:17px;display:grid}.next-badge-row .nbody{flex:1;min-width:0}.next-badge-row .nbody strong{font-size:.78rem;display:block}.next-badge-row .nbody small{color:var(--muted);margin-top:3px;font-size:.68rem;display:block}.next-badge-track{background:var(--line);border-radius:99px;height:7px;margin-top:6px;overflow:hidden}.next-badge-track i{border-radius:inherit;background:var(--primary);height:100%;display:block}.history-card{border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow-xs);border-radius:16px;margin-bottom:20px;padding:18px 20px}.history-head{justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px;display:flex}.history-head strong{font-size:.84rem}.history-head small{color:var(--muted);font-size:.68rem;font-weight:700}.history-row{flex-wrap:wrap;gap:10px;display:flex}.history-chip{background:var(--bg-body);border-radius:11px;align-items:center;gap:7px;padding:8px 13px;display:flex}.history-chip>span{gap:1px;display:grid}.history-chip .material-symbols-outlined{font-size:16px}.history-chip.done,.history-chip.done .material-symbols-outlined{color:#059669}.history-chip.missed,.history-chip.missed .material-symbols-outlined{color:var(--muted)}.history-chip small{color:var(--muted);font-size:.64rem;font-weight:700;display:block}.history-chip strong{font-size:.74rem;display:block}.groups-card{border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow-card);border-radius:18px;margin-bottom:20px;padding:20px 22px}.groups-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:14px;margin-bottom:14px;display:flex}.groups-head h3{margin:0 0 4px;font-family:Fraunces,sans-serif;font-size:1.02rem}.groups-head p{max-width:420px;color:var(--muted);margin:0;font-size:.76rem}.groups-head-actions{flex:none;gap:8px;display:flex}.groups-empty{text-align:center;justify-items:center;gap:6px;padding:32px 20px;display:grid}.groups-empty .eicon{width:52px;height:52px;color:var(--primary);background:var(--primary-soft);border-radius:15px;place-items:center;margin-bottom:6px;font-size:26px;display:grid}.groups-empty h4{margin:0;font-family:Fraunces,sans-serif;font-size:1.02rem}.groups-empty p{max-width:380px;color:var(--muted);margin:4px 0 14px;font-size:.8rem;line-height:1.5}.groups-empty-actions{gap:10px;display:flex}.groups-grid{gap:10px;display:grid}.group-card{border:1px solid var(--line);border-radius:14px;overflow:hidden}.group-card-header{background:var(--bg-body);width:100%;color:inherit;font:inherit;text-align:left;cursor:pointer;border:0;grid-template-columns:40px minmax(0,1fr) auto auto;align-items:center;gap:12px;padding:13px 15px;display:grid}.group-card.expanded .group-card-header{background:var(--primary-soft);border-bottom:1px solid var(--line)}.group-emblem{color:#fff;border-radius:11px;flex:none;place-items:center;width:40px;height:40px;font-family:Fraunces,sans-serif;font-size:1rem;font-weight:700;display:grid}.group-card-body{gap:2px;min-width:0;display:grid}.group-card-body strong{font-size:.86rem}.group-card-body small{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:.7rem;overflow:hidden}.member-pill{background:var(--surface);color:var(--muted);border-radius:999px;flex:none;align-items:center;gap:5px;padding:5px 11px;font-size:.68rem;font-weight:800;display:inline-flex}.member-pill .material-symbols-outlined{font-size:14px}.gchevron{color:var(--muted);flex:none;transition:transform .16s;display:flex}.group-card.expanded .gchevron{transform:rotate(180deg)}.group-detail{padding:16px 16px 4px}.code-block{color:#fff;background:var(--hero-gradient);border-radius:12px;align-items:center;gap:14px;margin-bottom:14px;padding:14px 16px;display:flex}.code-block .clabel{flex:1;min-width:0}.code-block .clabel span{color:#ffffffad;letter-spacing:.08em;text-transform:uppercase;font-size:.6rem;font-weight:800;display:block}.code-block .clabel strong{letter-spacing:.12em;font-variant-numeric:tabular-nums;margin-top:4px;font-family:Fraunces,sans-serif;font-size:1.2rem;display:block}.code-block button{color:var(--primary);cursor:pointer;background:#fff;border:0;border-radius:9px;flex:none;align-items:center;gap:6px;padding:9px 14px;font-size:.72rem;font-weight:800;display:inline-flex}.member-list{gap:7px;margin-bottom:12px;display:grid}.member-row{border:1px solid var(--line);border-radius:11px;align-items:center;gap:11px;padding:9px 11px;display:flex}.avatar{color:#fff;border-radius:50%;flex:none;place-items:center;width:30px;height:30px;font-size:.7rem;font-weight:800;display:grid}.member-info{flex:1;gap:1px;min-width:0;display:grid}.member-info .mname-row{align-items:center;gap:6px;display:flex}.member-info strong{font-size:.8rem}.member-info small{color:var(--muted);font-size:.66rem}.owner-badge{background:var(--primary-soft);color:var(--primary);border-radius:999px;align-items:center;gap:3px;padding:2px 7px;font-size:.6rem;font-weight:800;display:inline-flex}.owner-badge .material-symbols-outlined{font-size:11px}.group-actions{flex-wrap:wrap;gap:8px;padding-bottom:14px;display:flex}.ghost-action{border:1px solid var(--line);color:var(--muted);font:inherit;cursor:pointer;background:0 0;border-radius:9px;align-items:center;gap:6px;padding:8px 13px;font-size:.72rem;font-weight:750;text-decoration:none;display:inline-flex}.ghost-action.danger{color:#c2410c;border-color:#c2410c40}.ghost-action.primary-action{color:var(--primary);border-color:var(--primary);background:var(--primary-soft)}.ghost-action:disabled{opacity:.55;cursor:default}.materials-block{border-top:1px solid var(--line);padding:14px 0 18px}.materials-head{justify-content:space-between;align-items:center;gap:10px;margin-bottom:12px;display:flex}.materials-head strong{font-size:.86rem}.materials-list{gap:9px;display:grid}.material-row{border:1px solid var(--line);border-radius:12px;align-items:flex-start;gap:11px;padding:11px 13px;display:flex}.micon{background:var(--primary-soft);width:32px;height:32px;color:var(--primary);border-radius:9px;flex:none;place-items:center;display:grid}.micon .material-symbols-outlined{font-size:17px}.mbody{flex:1;gap:2px;min-width:0;display:grid}.mbody strong{overflow-wrap:anywhere;font-size:.82rem}.mbody small{color:var(--muted);font-size:.68rem}.mnote-body{color:var(--ink);overflow-wrap:anywhere;margin:5px 0 0;font-size:.78rem;line-height:1.5}.mactions{flex-wrap:wrap;flex:none;gap:6px;display:flex}.mactions .ghost-action{padding:7px 11px}.deck-cards-preview{gap:6px;margin-top:9px;display:grid}.deck-card-preview{border:1px solid var(--line);background:var(--bg-body);border-radius:9px;grid-template-columns:1fr 1fr;gap:8px;padding:9px 11px;font-size:.74rem;display:grid}.deck-card-preview span:first-child{border-right:1px solid var(--line);padding-right:8px}.deck-card-preview span{overflow-wrap:anywhere}.material-kind-tabs{gap:8px;display:flex}.material-kind-tab{border:1px solid var(--line);color:var(--muted);font:inherit;cursor:pointer;background:0 0;border-radius:10px;flex:1;justify-content:center;align-items:center;gap:6px;padding:10px;font-size:.74rem;font-weight:750;display:inline-flex}.material-kind-tab.active{border-color:var(--primary);color:var(--primary);background:var(--primary-soft)}.group-tabs{border-bottom:1px solid var(--line);gap:4px;margin-bottom:14px;padding-bottom:2px;display:flex;overflow-x:auto}.group-tab{color:var(--muted);font:inherit;cursor:pointer;background:0 0;border:0;border-bottom:2px solid #0000;flex:none;align-items:center;gap:5px;padding:8px 12px;font-size:.74rem;font-weight:750;display:inline-flex}.group-tab.active{border-bottom-color:var(--primary);color:var(--primary)}.group-tab .material-symbols-outlined{font-size:16px}.league-head{gap:2px;margin-bottom:12px;display:grid}.league-head strong{font-size:.86rem}.league-head small{color:var(--muted);font-size:.7rem}.league-list{gap:7px;display:grid}.league-row{border:1px solid var(--line);border-radius:11px;align-items:center;gap:11px;padding:9px 12px;display:flex}.league-row.me{border-color:var(--primary);background:var(--primary-soft)}.lrank{text-align:center;font-variant-numeric:tabular-nums;flex:0 0 20px;font-family:Fraunces,sans-serif;font-size:.9rem;font-weight:700}.lbody{flex:1;gap:1px;min-width:0;display:grid}.lbody strong{font-size:.8rem}.lbody small{color:var(--muted);font-size:.66rem}.lscore{flex:none;justify-items:end;display:grid}.lscore strong{font-variant-numeric:tabular-nums;font-family:Fraunces,sans-serif;font-size:1rem}.lscore small{color:var(--muted);text-transform:uppercase;letter-spacing:.05em;font-size:.6rem}.league-note{color:var(--muted);align-items:flex-start;gap:7px;margin:12px 0 0;font-size:.68rem;line-height:1.5;display:flex}.league-note .material-symbols-outlined{flex:none;font-size:15px}.challenge-list{gap:11px;display:grid}.challenge-item{border:1px solid var(--line);border-radius:12px;padding:13px 15px}.chead{justify-content:space-between;align-items:flex-start;gap:10px;margin-bottom:10px;display:flex}.chead strong{font-size:.84rem;display:block}.chead small{color:var(--muted);margin-top:2px;font-size:.68rem;display:block}.ctrack{background:var(--bg-body);border-radius:999px;height:8px;overflow:hidden}.ctrack i{background:var(--primary);border-radius:999px;height:100%;display:block}.ctotal{color:var(--muted);font-variant-numeric:tabular-nums;margin-top:6px;font-size:.68rem;display:block}.cmembers{flex-wrap:wrap;gap:8px;margin-top:10px;display:flex}.cmember{background:var(--bg-body);color:var(--muted);border-radius:999px;align-items:center;gap:5px;padding:4px 10px 4px 4px;font-size:.68rem;display:inline-flex}.cmember .avatar{width:20px;height:20px;font-size:.55rem}.cmember strong{color:var(--ink);font-variant-numeric:tabular-nums}.feed-list{gap:8px;display:grid}.feed-row{border:1px solid var(--line);border-radius:11px;align-items:center;gap:11px;padding:10px 12px;display:flex}.cheer-btn{border:1px solid var(--line);color:var(--muted);font:inherit;cursor:pointer;font-variant-numeric:tabular-nums;background:0 0;border-radius:999px;flex:none;align-items:center;gap:5px;padding:6px 12px;font-size:.72rem;font-weight:800;display:inline-flex}.cheer-btn.active{color:#d97706;background:#d9770614;border-color:#d97706}.cheer-btn .material-symbols-outlined{font-size:16px}.public-library-card{border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow-card);border-radius:18px;margin-bottom:20px;padding:20px 22px}.public-deck-grid{gap:10px;display:grid}.public-deck-card{border:1px solid var(--line);border-radius:13px;padding:14px 15px}.public-deck-card.expanded{border-color:var(--primary)}.pd-head{align-items:flex-start;gap:12px;display:flex}.pd-body{flex:1;gap:2px;min-width:0;display:grid}.pd-body strong{font-size:.86rem}.pd-body small{color:var(--muted);font-size:.68rem}.pd-body p{color:var(--ink);margin:5px 0 0;font-size:.76rem;line-height:1.5}.pd-actions{flex-wrap:wrap;gap:7px;margin-top:11px;display:flex}@media (max-width:820px){.community-profile-hero{grid-template-columns:1fr}.cp-actions{flex-direction:row}.community-snapshot-card .snapshot-grid{grid-template-columns:repeat(2,1fr)}.badge-grid{grid-template-columns:1fr}.groups-head{flex-direction:column;align-items:stretch}.group-card-header{grid-template-columns:36px minmax(0,1fr) auto}.member-pill{display:none}}.exam-result{width:min(920px,100%)}.exam-review{text-align:left;gap:8px;width:100%;margin:22px 0;display:grid}.exam-review>div{margin-bottom:4px}.exam-review h4{margin:3px 0;font-size:1.25rem}.exam-review details{border:1px solid var(--line);background:var(--surface);border-left:4px solid #16a34a;border-radius:9px}.exam-review details.wrong{border-left-color:#dc2626}.exam-review summary{cursor:pointer;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;padding:13px;list-style:none;display:grid}.exam-review summary span{color:#15803d;align-items:center;gap:5px;font-size:.75rem;font-weight:850;display:flex}.exam-review .wrong summary span{color:#dc2626}.exam-review summary strong{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.exam-review details>div{padding:0 14px 14px}.exam-review aside{background:var(--bg-body);border-radius:8px;padding:12px}.profile-page{max-width:1080px;margin:0 auto}.profile-hero{border:1px solid var(--line);background:linear-gradient(135deg,var(--surface),rgba(var(--primary-rgb),.06));border-radius:12px 12px 0 0;align-items:center;gap:18px;padding:24px;display:flex}.profile-avatar{color:#fff;background:var(--primary);width:68px;height:68px;box-shadow:0 10px 24px rgba(var(--primary-rgb),.22);border-radius:18px;flex:none;place-items:center;font-family:Fraunces,sans-serif;font-size:1.4rem;font-weight:800;display:grid}.profile-hero h2{letter-spacing:-.045em;margin:2px 0 3px;font-size:1.75rem}.profile-hero p{color:var(--muted);margin:0}.profile-account-status{color:#047857;background:#f0fdf8;border:1px solid #10b98133;border-radius:999px;align-items:center;gap:6px;margin-left:auto;padding:7px 10px;font-size:.72rem;font-weight:800;display:flex}.profile-account-status .material-symbols-outlined{font-size:17px}.profile-tabs-react{border:1px solid var(--line);background:var(--surface);border-top:0;gap:4px;padding:8px 18px 0;display:flex}.profile-tabs-react button{min-height:48px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-bottom:3px solid #0000;align-items:center;gap:8px;padding:0 18px;font-weight:800;display:flex}.profile-tabs-react button.active{color:var(--primary);border-color:var(--primary)}.profile-tabs-react button small{color:var(--muted);background:var(--bg-body);border-radius:999px;padding:3px 6px;font-size:.62rem}.profile-message{border:1px solid var(--line);color:var(--muted);background:var(--surface);border-top:0;margin:0;padding:11px 18px;font-size:.75rem}.profile-layout{grid-template-columns:minmax(0,1.45fr) minmax(290px,.75fr);gap:14px;margin-top:14px;display:grid}.profile-main-card,.profile-code-card,.profile-level-card,.profile-security-card,.profile-pro-card{border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow-xs);border-radius:12px}.profile-main-card{padding:22px}.profile-section-title{align-items:flex-start;gap:12px;margin-bottom:22px;display:flex}.profile-section-title h3,.profile-security-card h3{margin:0 0 4px}.profile-section-title p,.profile-security-card p{color:var(--muted);margin:0;font-size:.8rem;line-height:1.5}.profile-name-form{border-bottom:1px solid var(--line);grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:10px;padding-bottom:22px;display:grid}.profile-name-form label{color:var(--muted);gap:7px;font-size:.74rem;font-weight:750;display:grid}.profile-name-form input{border:1px solid var(--line-strong);min-height:44px;color:var(--ink);background:var(--surface);font:inherit;border-radius:8px;padding:0 12px}.profile-name-form input:focus{outline:3px solid rgba(var(--primary-rgb),.1);border-color:var(--primary)}.profile-readonly-grid{grid-template-columns:1fr 1fr;gap:16px;padding-top:22px;display:grid}.profile-readonly-grid label{min-width:0;color:var(--muted);text-transform:uppercase;letter-spacing:.05em;gap:5px;font-size:.7rem;font-weight:750;display:grid}.profile-readonly-grid span{color:var(--ink);text-overflow:ellipsis;text-transform:none;letter-spacing:0;white-space:nowrap;font-size:.82rem;font-weight:750;overflow:hidden}.profile-readonly-grid span.verified{color:#047857}.profile-side-stack{align-content:start;gap:12px;display:grid}.profile-code-card{grid-template-columns:auto minmax(0,1fr);gap:12px;padding:18px;display:grid}.profile-code-card>div{gap:3px;display:grid}.profile-code-card small,.profile-code-card p{color:var(--muted);margin:0;font-size:.72rem;line-height:1.45}.profile-code-card strong{letter-spacing:.06em;font-size:1.3rem}.profile-code-card>button{grid-column:1/-1}.profile-level-card{grid-template-columns:repeat(3,1fr);padding:16px;display:grid}.profile-level-card>div{text-align:center;justify-items:center;gap:4px;min-width:0;display:grid}.profile-level-card>div+div{border-left:1px solid var(--line)}.profile-level-card span{color:var(--primary)}.profile-level-card small{color:var(--muted);font-size:.64rem}.profile-level-card strong{font-size:.82rem}.profile-security-card{gap:10px;padding:18px;display:grid}.profile-security-card .legacy-btn{justify-self:start}.profile-pro-card{background:linear-gradient(135deg,rgba(var(--primary-rgb),.07),var(--surface));align-items:flex-start;gap:18px;margin-top:14px;padding:28px;display:flex}.profile-pro-card>span{color:#fff;background:var(--primary);border-radius:14px;flex:none;place-items:center;width:54px;height:54px;display:grid}.profile-pro-card>span .material-symbols-outlined{font-size:29px}.profile-pro-card h3{margin:4px 0 8px;font-size:1.45rem}.profile-pro-card p{max-width:680px;color:var(--muted);line-height:1.6}:root[data-echo-palette=violet]{--primary:#6d4bd4;--primary-hover:#5b3bb9;--primary-rgb:109,75,212;--primary-soft:#f2edff}:root[data-echo-palette=emerald]{--primary:#07856d;--primary-hover:#066b59;--primary-rgb:7,133,109;--primary-soft:#e8f8f4}:root[data-echo-palette=sunset]{--primary:#d85a30;--primary-hover:#b94824;--primary-rgb:216,90,48;--primary-soft:#fff0ea}:root[data-echo-card-shape=square] .study-card{aspect-ratio:1;max-width:680px;margin-inline:auto}:root[data-echo-theme=dark]{--ink:#edf1ec;--muted:#a4ada3;--line:#333c34;--line-strong:#454f45;--surface:#1c221e;--bg-body:#14181a;--primary-soft:rgba(var(--primary-rgb),.22);--shadow-xs:0 1px 2px #0000004d;--shadow-sm:0 8px 22px #00000042;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}:root[data-echo-theme=dark] .error-notebook,:root[data-echo-theme=dark] .section-overview-grid article.attention{background:linear-gradient(135deg,#2a1d22,var(--surface))}:root[data-echo-theme=dark] .discipline-status-banner{background:#153027}:root[data-echo-theme=dark] .discipline-status-banner.attention{background:#312718}:root[data-echo-theme=dark] .mobile-bottom-nav{background:#1b2230f5}@media (max-width:1000px){.section-overview-grid,.discipline-insight-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.calendar-planning-grid{grid-template-columns:minmax(0,1fr)}.calendar-planning-grid>*{min-width:0}.profile-layout{grid-template-columns:1fr}}@media (max-width:700px){.editorial-heading{flex-direction:column;align-items:stretch}.editorial-actions,.period-filter{width:100%;overflow-x:auto}.section-overview-grid,.discipline-insight-grid{grid-template-columns:1fr}.calendar-agenda-view>button{grid-template-columns:75px 3px minmax(0,1fr) auto}.profile-hero{flex-wrap:wrap;align-items:flex-start;padding:18px}.profile-account-status{justify-content:center;width:100%;margin-left:0}.profile-tabs-react{padding-inline:8px}.profile-tabs-react button{flex:1;justify-content:center;padding-inline:8px}.profile-name-form,.profile-readonly-grid{grid-template-columns:1fr}.ai-generator-overlay{padding:8px}.ai-generator-modal{max-height:calc(100vh - 16px)}.ai-generator-layout{grid-template-columns:1fr}.ai-preview-empty{min-height:220px}.ai-generation-options{grid-template-columns:1fr}}
