:root{color-scheme:light;--bg-primary: #faf9f5;--bg-secondary: #fffdf9;--bg-elevated: #fffefa;--bg-sidebar: #f5f0e8;--bg-card: var(--bg-secondary);--bg-option: #f5f0e8;--bg-option-hover: #efe9de;--bg-disabled: #efe9de;--bg-correct: #eaf3ed;--bg-correct-hover: #e0ede4;--bg-wrong: #f7ebed;--bg-wrong-hover: #f0dfe3;--text-primary: #141413;--text-secondary: #3d3d3a;--text-muted: #6c6a64;--text-sidebar: var(--text-secondary);--text-sidebar-active: var(--text-primary);--text-option: var(--text-primary);--text-correct: #286344;--text-wrong: #a0394d;--border-light: #e6dfd8;--border-strong: #d8d0c2;--border-sidebar: var(--border-light);--border-correct: #54856a;--border-wrong: #b55b6d;--accent: #a9583e;--accent-hover: #98492f;--accent-light: #f3e1d8;--accent-secondary: #bd6a4e;--accent-warn: #946219;--color-on-accent: #fffaf6;--shadow-sm: 0 1px 2px rgb(27 35 29 / 4%);--shadow-md: 0 4px 16px rgb(27 35 29 / 6%);--shadow-lg: 0 16px 48px rgb(27 35 29 / 14%);--app-wallpaper: none;--sidebar-wallpaper: none;--color-background: var(--bg-primary);--color-surface: var(--bg-secondary);--color-surface-elevated: var(--bg-elevated);--color-surface-secondary: var(--bg-option);--color-text-primary: var(--text-primary);--color-text-secondary: var(--text-secondary);--color-text-tertiary: var(--text-muted);--color-border: var(--border-light);--color-border-strong: var(--border-strong);--color-accent: var(--accent);--color-accent-hover: var(--accent-hover);--color-accent-subtle: var(--accent-light);--color-success: var(--text-correct);--color-warning: var(--accent-warn);--color-error: var(--text-wrong);--spacing-1: 4px;--spacing-2: 8px;--spacing-3: 12px;--spacing-4: 16px;--spacing-5: 20px;--spacing-6: 24px;--spacing-8: 32px;--spacing-10: 40px;--spacing-12: 48px;--spacing-16: 64px;--radius-sm: 8px;--radius-md: 12px;--radius-lg: 16px;--radius-xl: 20px;--radius-pill: 999px;--radius-control: var(--radius-sm);--radius-button: var(--radius-md);--radius-card: var(--radius-lg);--radius-modal: var(--radius-xl);--control-height: 44px;--font-sans: system-ui, -apple-system, "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "Noto Sans SC", sans-serif;--font-mono: "SF Mono", ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;--font-display: "Fraunces", "Noto Serif SC", "Source Han Serif SC", "Songti SC", Georgia, serif;--font-editorial: "Source Serif 4", "Noto Serif SC", "Songti SC", Georgia, serif;--text-display: clamp(2rem, 4vw, 3rem);--text-large-title: clamp(1.75rem, 2.5vw, 2rem);--text-title: 1.5rem;--text-headline: 1.25rem;--text-body: 1rem;--text-callout: .875rem;--text-caption: .75rem;--text-metadata: .75rem;--weight-regular: 400;--weight-medium: 500;--weight-semibold: 600;--leading-tight: 1.25;--leading-body: 1.6;--ease-standard: cubic-bezier(.2, 0, .2, 1);--transition-fast: .15s;--transition-normal: .22s;--transition-page: .28s;--transition: var(--transition-normal) var(--ease-standard);--sidebar-width: 260px;--header-height: 56px;--practice-surface: var(--bg-secondary);--practice-surface-strong: var(--bg-elevated);--practice-surface-muted: var(--bg-option);--practice-border: var(--border-light);--practice-shadow: var(--shadow-sm);--quiz-bg-card: var(--bg-secondary);--quiz-bg-option: var(--bg-option);--quiz-bg-option-hover: var(--bg-option-hover);--quiz-bg-secondary: var(--bg-elevated);--quiz-border-light: var(--border-light);--quiz-radius-sm: var(--radius-sm);--quiz-radius-md: var(--radius-md);--sidebar-workspace-bg: var(--bg-sidebar);--sidebar-workspace-panel: var(--bg-secondary);--sidebar-workspace-panel-hover: var(--bg-option-hover);--sidebar-workspace-line: var(--border-light);--sidebar-workspace-active: var(--accent-light);--sidebar-workspace-active-line: transparent;--sidebar-workspace-icon: transparent;--sidebar-workspace-shadow: none}.dark{color-scheme:dark;--bg-primary: #191c1d;--bg-secondary: #222627;--bg-elevated: #2b3031;--bg-sidebar: #1e2223;--bg-option: #2c3132;--bg-option-hover: #373d3e;--bg-disabled: #282d2e;--bg-correct: #243b30;--bg-correct-hover: #2b4638;--bg-wrong: #412b32;--bg-wrong-hover: #4b333b;--text-primary: #e8ebe7;--text-secondary: #b4bdb7;--text-muted: #959f98;--text-correct: #9dcbae;--text-wrong: #e4a0af;--border-light: #3a4240;--border-strong: #79857d;--border-correct: #6d9f80;--border-wrong: #c1808e;--accent: #dfa0af;--accent-hover: #edb7c3;--accent-light: #3d2e34;--accent-secondary: #cea1ae;--accent-warn: #d7ba83;--color-on-accent: #2c1c22;--shadow-sm: 0 1px 2px rgb(0 0 0 / 10%);--shadow-md: 0 4px 16px rgb(0 0 0 / 16%);--shadow-lg: 0 16px 48px rgb(0 0 0 / 28%)}.structured-beta-page{width:min(100%,1180px);margin:0 auto}.structured-library-head{align-items:flex-start;gap:24px}.structured-beta-badge{display:inline-flex;align-items:center;width:fit-content;margin-bottom:10px;color:var(--accent);font-size:11px;font-weight:800;letter-spacing:.14em;text-transform:uppercase}.structured-beta-warning strong{flex:0 0 auto;padding:7px 11px;border-radius:9px;color:#fff;background:#b45309;font-size:.76rem;font-weight:900;letter-spacing:.12em}.structured-beta-warning span{color:var(--text-primary);font-size:.91rem;font-weight:700;line-height:1.55}.structured-beta-intro h3{margin:7px 0 9px;font-size:clamp(22px,3vw,32px);line-height:1.14}.structured-beta-intro p{max-width:720px;margin:0;color:var(--text-secondary);line-height:1.7}.structured-flow span{padding:8px 11px;border:1px solid var(--border-light);border-radius:999px;color:var(--text-secondary);background:var(--bg-primary);font-size:11px;font-weight:800}.structured-flow i{width:18px;height:1px;background:var(--border-light)}.structured-paper-card{min-width:0;padding:22px;border:1px solid var(--border-light)}.structured-paper-card-head,.structured-paper-actions,.structured-paper-metric{display:flex;align-items:center}.structured-paper-card h3{margin:28px 0 7px;font-size:24px}.structured-paper-card>p{min-height:2.8em;margin:0;color:var(--text-secondary);line-height:1.5}.structured-paper-metric strong{font-size:31px;line-height:1}.structured-paper-metric span{color:var(--text-secondary);font-size:12px}.structured-paper-actions .btn{flex:1 1 120px}.structured-timing-modal{width:min(100%,540px)}.structured-timing-kicker{display:inline-flex;margin-bottom:10px;color:var(--accent);font-size:11px;font-weight:900;letter-spacing:.13em}.structured-timing-paper{display:block;margin:8px 0 5px;color:var(--text-primary);font-size:.9rem}.structured-timing-choice small{color:var(--text-secondary);font-size:.76rem;line-height:1.5}.structured-timing-actions .btn{min-width:104px}@media(max-width:560px){.structured-timing-actions .btn{width:100%}}.structured-session-stats span{color:var(--text-muted);font-size:11px}.structured-question-nav button.answered{border-color:color-mix(in srgb,#2fb171 45%,var(--border-light));color:#218154}.structured-question-nav button.active{border-color:var(--accent);color:#fff;background:var(--accent)}.structured-answer-title span,.structured-answer-title em{padding:4px 7px;border-radius:999px;color:var(--text-secondary);background:var(--bg-card);font-size:10px;font-style:normal}.structured-answer-title em{margin-left:auto;color:var(--accent);background:color-mix(in srgb,var(--accent) 10%,transparent)}.physics-math-label>small{color:var(--text-muted);font-size:9px;font-weight:600;line-height:1.45}.physics-math-review em{color:var(--text-secondary);font-size:12px;font-style:normal;font-weight:700}.structured-session-footer span{color:var(--text-muted);font-size:10px}.structured-recorded-score>span{font-size:11px;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.structured-recorded-score small{font-size:18px}.structured-recorded-score p{margin:6px 0 0;color:#fffc}.structured-score-comparison small,.structured-score-comparison span{color:var(--text-secondary);font-size:11px}.structured-result-notice p{max-width:900px;margin:7px 0 0;color:var(--text-secondary);line-height:1.6}.structured-result-notice>span{position:absolute;top:18px;right:20px;padding:5px 8px;border-radius:999px;color:#b8780f;background:color-mix(in srgb,#f5a524 12%,transparent);font-size:10px;font-weight:800}.structured-result-actions p{margin:0;color:var(--text-secondary)}.structured-system-detail-grid em{color:var(--text-muted);font-size:9px;font-style:normal}.self-mark-total span{color:var(--text-secondary);font-size:10px}.self-mark-guidance p{margin:6px 0 0;color:var(--text-secondary);line-height:1.6}.self-mark-control span{flex:0 0 auto;font-size:12px;font-weight:700}.self-mark-footer span{color:var(--text-secondary);font-size:9px}@media(max-width:1100px){.structured-paper-card>p{min-height:0}}@media(max-width:720px){.structured-result-actions .btn,.self-mark-footer .btn{width:100%}}@keyframes pageEnter{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.page-enter{animation:pageEnter .26s cubic-bezier(.25,.1,.25,1) forwards}@keyframes cardEnter{0%{opacity:0;transform:translateY(6px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.btn:active,.card:active{transform:scale(.97)!important;transition:transform 80ms cubic-bezier(.25,.1,.25,1)!important}.card-grid .card:hover,.setup-card:hover{transform:translateY(-2px);transition:all var(--transition)}.intro-content-hidden{opacity:0;visibility:hidden;transition:none}.intro-content-revealed{opacity:1;visibility:visible;transition:opacity .28s cubic-bezier(.16,1,.3,1)}@keyframes gradientFlow{0%{background-position:0% 50%}50%{background-position:100% 50%}to{background-position:0% 50%}}@keyframes floatOrb1{0%,to{transform:translate(0) scale(1)}33%{transform:translate(20px,-30px) scale(1.05)}66%{transform:translate(-15px,15px) scale(.97)}}@keyframes heroFadeUp{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}@keyframes cardStaggerIn{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeSlideUp{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}.page-header{animation:fadeSlideUp .5s cubic-bezier(.16,1,.3,1) forwards}.content-wrapper>.page-header+.card{opacity:0;animation:cardStaggerIn .5s cubic-bezier(.16,1,.3,1) forwards}.page-header+.card-grid .card,.page-header+.chapter-grid .card,.card-grid>.card,.chapter-grid>.card{opacity:0;animation:cardStaggerIn .5s cubic-bezier(.16,1,.3,1) forwards}.content-wrapper>.card:nth-of-type(1){animation-delay:.1s}.card-grid>.card:nth-child(1),.chapter-grid>.card:nth-child(1),.page-header~.card:nth-of-type(1){animation-delay:.1s}.content-wrapper>.card:nth-of-type(2){animation-delay:.14s}.card-grid>.card:nth-child(2),.chapter-grid>.card:nth-child(2),.page-header~.card:nth-of-type(2){animation-delay:.14s}.content-wrapper>.card:nth-of-type(3){animation-delay:.18s}.card-grid>.card:nth-child(3),.chapter-grid>.card:nth-child(3){animation-delay:.18s}.content-wrapper>.card:nth-of-type(4){animation-delay:.22s}.card-grid>.card:nth-child(4),.chapter-grid>.card:nth-child(4){animation-delay:.22s}.content-wrapper>.card:nth-of-type(5){animation-delay:.26s}.card-grid>.card:nth-child(5){animation-delay:.26s}.content-wrapper>.card:nth-of-type(6){animation-delay:.3s}.card-grid>.card:nth-child(6){animation-delay:.3s}.content-wrapper>.card:nth-of-type(7){animation-delay:.34s}.card-grid>.card:nth-child(7){animation-delay:.34s}.content-wrapper>.card:nth-of-type(8){animation-delay:.38s}.card-grid>.card:nth-child(8){animation-delay:.38s}.content-wrapper>.card:nth-of-type(9){animation-delay:.42s}.card-grid>.card:nth-child(9){animation-delay:.42s}.content-wrapper>.card:nth-of-type(10){animation-delay:.46s}.card-grid>.card:nth-child(10){animation-delay:.46s}.card:not(.question-card):not(.card-disabled):not(.premium-hover-card){transition:transform .4s cubic-bezier(.16,1,.3,1),box-shadow .4s cubic-bezier(.16,1,.3,1),border-color .3s ease}.setup-card{transition:transform .4s cubic-bezier(.16,1,.3,1),box-shadow .4s cubic-bezier(.16,1,.3,1),border-color .3s ease}.card:not(.question-card):not(.card-disabled):not(.premium-hover-card):hover{transform:translateY(-3px);box-shadow:0 12px 40px #00000014}.setup-card:hover{transform:translateY(-3px);box-shadow:0 12px 40px #00000014}.dark .card:not(.question-card):not(.card-disabled):not(.premium-hover-card):hover{box-shadow:0 12px 40px #00000059}.dark .setup-card:hover{box-shadow:0 12px 40px #00000059}.premium-hover-card{position:relative;overflow:hidden;transform-style:preserve-3d;--lift: 0px;--tilt-scale: 1;--rotate-x: 0deg;--rotate-y: 0deg;--mouse-x: 50%;--mouse-y: 50%}.premium-hover-card{transform:translateY(var(--lift)) scale(var(--tilt-scale)) rotateX(var(--rotate-x)) rotateY(var(--rotate-y))}.premium-hover-card:before{content:"";position:absolute;z-index:1;inset:-40%;pointer-events:none;opacity:0;background:linear-gradient(105deg,transparent 38%,rgba(255,255,255,.06) 42%,rgba(255,255,255,.12) 45%,rgba(255,255,255,.15) 47%,rgba(255,255,255,.06) 52%,transparent 56%);transform:translate(-60%) rotate(18deg);transition:opacity .26s ease,transform .9s cubic-bezier(.22,1,.36,1)}.premium-hover-card:hover:before{opacity:1;transform:translate(60%) rotate(18deg)}.premium-hover-card:after{content:"";position:absolute;z-index:2;inset:0;pointer-events:none;opacity:0;background:radial-gradient(circle 280px at var(--mouse-x) var(--mouse-y),rgba(255,255,255,.09),transparent 60%);transition:opacity .22s ease}.premium-hover-card:hover:after{opacity:1}.premium-hover-card:hover{--lift: -6px;--tilt-scale: 1.015;border-color:#ffffff2e;box-shadow:0 0 0 1px #ffffff1a,0 8px 32px #00000026,0 2px 8px #0000001a;transition:transform .3s cubic-bezier(.22,1,.36,1),border-color .3s ease,box-shadow .3s ease}.dark .premium-hover-card:hover{box-shadow:0 0 0 1px #ffffff14,0 12px 40px #0006,0 4px 12px #00000040}.premium-hover-card:not(:hover){--lift: 0px;--tilt-scale: 1;--rotate-x: 0deg;--rotate-y: 0deg;--mouse-x: 50%;--mouse-y: 50%}.premium-hover-card:focus-visible{outline:2px solid rgba(100,160,255,.7);outline-offset:4px;border-radius:inherit}@media(prefers-reduced-motion:reduce){.premium-hover-card:hover:before{opacity:0!important;transform:none!important;transition:none!important}.premium-hover-card:hover:after{opacity:0!important;transition:none!important}.premium-hover-card,.premium-hover-card:hover{--lift: -3px !important;--tilt-scale: 1.01 !important;--rotate-x: 0deg !important;--rotate-y: 0deg !important;transition:transform .2s ease!important}}.question-image-container{animation:none!important;transition:none!important;transform:none!important}@keyframes optionSelect{0%{transform:scale(.95)}50%{transform:scale(1.02)}to{transform:scale(1)}}@keyframes toastSlideIn{0%{opacity:0;transform:translateY(12px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}.toast{animation:toastSlideIn .22s cubic-bezier(.25,.1,.25,1) forwards}body,.app-layout,.card,.setup-card,.stat-card,.practice-mode-modal,.transfer-modal{transition:background-color .3s ease,border-color .2s ease,box-shadow .2s ease}@keyframes completionEnter{0%{opacity:0;transform:scale(.95) translateY(10px)}to{opacity:1;transform:scale(1) translateY(0)}}@keyframes correctPulse{0%{box-shadow:0 0 #34c7594d}70%{box-shadow:0 0 0 8px #34c75900}to{box-shadow:0 0 #34c75900}}@keyframes wrongPulse{0%{box-shadow:0 0 #ff3b3040}70%{box-shadow:0 0 0 6px #ff3b3000}to{box-shadow:0 0 #ff3b3000}}@keyframes dotReveal{0%{transform:scale(1)}40%{transform:scale(1.15)}to{transform:scale(1)}}@keyframes bookmarkPop{0%{transform:scale(1)}50%{transform:scale(1.2)}to{transform:scale(1)}}@keyframes modalEnter{0%{opacity:0;transform:scale(.94) translateY(8px)}to{opacity:1;transform:scale(1) translateY(0)}}.practice-mode-modal,.transfer-modal{animation:modalEnter .25s cubic-bezier(.25,.1,.25,1) forwards}@keyframes slideInActive{0%{opacity:0;transform:translate(-4px)}to{opacity:1;transform:translate(0)}}@media(hover:none){.btn:active,.card:active{transform:scale(.97)!important;transition:transform 60ms ease!important}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.page-enter{animation:none;opacity:1}}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{-webkit-text-size-adjust:100%;-webkit-tap-highlight-color:transparent}body{min-height:100vh;overflow-x:hidden;transition:background-color var(--transition),color var(--transition)}.dark body,body.dark{background-image:radial-gradient(ellipse at 50% 0%,rgba(204,120,92,.06) 0%,transparent 60%)}body.modal-open{overflow:hidden}.app-layout{display:flex;min-height:100vh}.sidebar-brand-text span{font-size:.72rem;color:var(--text-muted);display:block;margin-top:1px;font-weight:500}.sidebar-link .icon svg{width:18px;height:18px;transition:transform .18s cubic-bezier(.4,0,.2,1)}.top-bar .menu-toggle{background:none;border:none;font-size:1.4rem;color:var(--text-primary);cursor:pointer;padding:4px}.page-header p{margin-top:4px}.card-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:20px}.card{border:1px solid var(--border-light);cursor:pointer;transition:all var(--transition)}.card-grid .card{display:flex;flex-direction:column;min-height:100%}.card:hover{box-shadow:var(--shadow-md);border-color:var(--accent);transform:translateY(-1px)}.card-subtitle{margin-top:4px}.card-grid .card .card-subtitle+.card-subtitle{margin-top:10px}.card-stat strong{color:var(--text-primary);font-weight:700}.card-grid .card .progress-bar{margin-top:16px}.btn-group{display:flex;gap:8px;flex-wrap:wrap}.card-grid .card .btn-group{margin-top:18px;gap:10px;align-items:center}.card-grid .card .btn-group .btn{min-height:40px;min-width:112px}.card-grid .card .btn-group .btn:only-child{min-width:124px}.chapter-status{display:inline-flex;align-items:center;padding:2px 10px;border-radius:999px;font-size:.72rem;font-weight:600;letter-spacing:.02em;margin-top:8px}.chapter-status.not-started{background:var(--bg-option);color:var(--text-muted)}.chapter-status.in-progress{background:var(--accent-light);color:var(--accent)}.chapter-status.completed{background:var(--bg-correct);color:var(--text-correct)}.chapter-mastery.weak{color:var(--text-wrong)}.chapter-mastery.improving{color:var(--accent-warn)}.chapter-mastery.strong,.chapter-mastery.mastered{color:var(--border-correct)}.question-nav .btn{background:var(--bg-card);border:1px solid var(--border-light);box-shadow:0 1px 3px #00000014;transition:all .2s ease!important;animation:none!important}@keyframes questionImagePulse{0%{background-position:100% 0}to{background-position:-100% 0}}.stat-card{background:var(--bg-card);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid var(--border-light);border-radius:var(--radius-md);padding:18px;text-align:center}.stat-value{font-size:2rem;font-weight:700;color:var(--accent)}.stat-label{font-size:.8rem;color:var(--text-secondary);margin-top:4px}.chapter-stat-row{display:flex;align-items:center;justify-content:space-between;padding:10px 16px;background:var(--bg-card);border:1px solid var(--border-light);border-radius:var(--radius-sm);margin-bottom:8px}.chapter-stat-row .name{font-weight:600;font-size:.9rem}.chapter-stat-row .acc{font-size:.875rem;color:var(--accent);font-weight:600}.wrong-list-item{display:flex;align-items:center;justify-content:space-between;background:var(--bg-card);border:1px solid var(--border-light);gap:12px}.wrong-list-item .q-text{font-size:.875rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.wrong-list-item .q-meta{font-size:.75rem;color:var(--text-muted);margin-top:2px}.transfer-modal-overlay{position:fixed;inset:0;z-index:1200;display:flex;align-items:center;justify-content:center;padding:24px 16px}.transfer-modal-overlay{z-index:1300}.transfer-modal{position:relative;width:min(100%,520px);max-height:min(88vh,760px);color:var(--text-primary);padding:24px 24px 20px}.transfer-modal{overflow-y:auto}.transfer-modal-title{font-size:1.2rem;line-height:1.3}.transfer-modal-message{margin-top:10px;color:var(--text-secondary);font-size:.95rem}.transfer-modal-actions{display:flex;justify-content:flex-end;align-items:center;gap:12px;margin-top:20px;flex-wrap:wrap}.update-history-item.current{border-color:#2563eb40}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.empty-state{text-align:center;color:var(--text-secondary)}.empty-state .icon-big{font-size:3rem;margin-bottom:12px}.empty-state h3{color:var(--text-primary)}.toast{position:fixed;bottom:24px;left:50%;transform:translate(-50%);font-size:.85rem;font-weight:500;z-index:999;animation:slideUp .25s ease}.auto-save-indicator{position:fixed;right:22px;bottom:22px;background:var(--bg-card);color:var(--text-secondary);border:1px solid var(--border-light);box-shadow:var(--shadow-md);border-radius:999px;padding:8px 14px;font-size:.78rem;font-weight:600;z-index:998;animation:autoSaveFadeUp .22s ease;pointer-events:none}@keyframes autoSaveFadeUp{0%{transform:translateY(10px);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes slideUp{0%{transform:translate(-50%) translateY(20px);opacity:0}to{transform:translate(-50%) translateY(0);opacity:1}}@media(max-width:768px){:root{--sidebar-width: 0px}.card-grid{grid-template-columns:1fr;gap:16px}.card-grid .card .btn-group{margin-top:16px}.card-grid .card .btn-group .btn{flex:1 1 100%;width:100%}}@media(max-width:480px){.btn-group{flex-direction:column}}@media(min-width:769px)and (max-width:1024px){:root{--sidebar-width: 220px}.card-grid{grid-template-columns:repeat(2,1fr);gap:18px}.card-grid .card .btn-group .btn{flex:1 1 calc(50% - 5px)}}.hidden{display:none!important}.dashboard-shell{display:grid;gap:22px}.flex-between{display:flex;align-items:center;justify-content:space-between}.recorrect-btn{background:var(--bg-card);border-color:var(--border-light);color:var(--text-secondary)}.recorrect-btn:hover{background:var(--bg-option-hover);color:var(--text-primary)}.empty-icon{font-size:3.5rem;margin-bottom:16px;opacity:.8}.empty-title{font-size:1.15rem;font-weight:600;color:var(--text-primary);margin-bottom:8px}.empty-text{font-size:.9rem;color:var(--text-secondary);max-width:400px;margin:0 auto 20px;line-height:1.5}.empty-action{margin-top:8px}.donate-body{min-height:100vh;background:radial-gradient(circle at top,rgba(74,95,145,.18),transparent 38%),linear-gradient(180deg,#08111f,#0c1729 40%,#0e1b31)}.donate-shell{min-height:100vh;padding:40px 20px;display:flex;align-items:center;justify-content:center}.donate-card{width:min(100%,780px);background:linear-gradient(180deg,#0b1729cc,#0c1b30bd);border:1px solid rgba(255,255,255,.08);border-radius:28px;box-shadow:0 28px 80px #00000057,inset 0 1px #ffffff0f;backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);padding:40px 36px;text-align:center}.donate-kicker{display:inline-flex;align-items:center;gap:8px;padding:8px 14px;border-radius:999px;background:#c4925b1f;color:#f3c48b;font-size:.82rem;font-weight:700;letter-spacing:.02em;margin-bottom:16px;border:1px solid rgba(243,196,139,.12)}.donate-title{font-size:2rem;line-height:1.2;letter-spacing:-.02em;margin-bottom:14px;color:#f8fafc}.donate-qr-frame{margin:0 auto 28px;padding:18px;width:min(100%,360px);border-radius:22px;border:1px solid rgba(255,255,255,.08);background:linear-gradient(180deg,#0f192ad1,#0b1524d1);box-shadow:0 18px 36px #02061733}.donate-qr-image{display:block;width:100%;height:auto;max-width:300px;margin:0 auto;border-radius:var(--radius-md);aspect-ratio:1}.supporters-section{margin-top:8px;padding:24px 22px 20px;border-radius:22px;border:1px solid rgba(255,255,255,.08);background:linear-gradient(180deg,#0f192ac7,#0b1524c7);box-shadow:0 18px 36px #0206172e;text-align:left}.supporters-kicker{display:inline-flex;align-items:center;padding:7px 12px;border-radius:999px;background:#c4925b1f;color:#f3c48b;font-size:.78rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase;margin-bottom:14px;border:1px solid rgba(243,196,139,.12)}.supporters-title{font-size:1.18rem;font-weight:700;letter-spacing:-.01em;margin-bottom:16px;color:#f8fafc}.supporters-table-wrap{overflow-x:auto}.supporters-table{width:100%;border-collapse:collapse;min-width:280px}.supporters-table thead th{padding:0 0 12px;font-size:.76rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:#94a3b8eb;border-bottom:1px solid rgba(148,163,184,.16)}.supporters-table thead th:first-child,.supporters-table tbody td:first-child{text-align:left}.supporters-table thead th:last-child,.supporters-table tbody td:last-child{text-align:right}.supporters-table tbody td{padding:14px 0;font-size:.96rem;line-height:1.45;color:#e2e8f0e6;border-bottom:1px solid rgba(148,163,184,.12)}.supporters-table tbody tr:last-child td{border-bottom:none;padding-bottom:0}.supporters-table tbody td:last-child{font-weight:700;color:#f3c48b;letter-spacing:-.01em}@media(max-width:480px){.supporters-section{padding:20px 16px 18px}}@media(max-width:768px){.donate-shell{padding:24px 16px;align-items:flex-start}.donate-card{padding:28px 20px}.donate-title{font-size:1.7rem}.supporters-title{font-size:1.05rem}}.random-dashboard .page-header p{color:var(--text-secondary);font-size:.9rem;margin-top:6px}.setup-card{border:1px solid var(--border-light);padding:28px;margin-bottom:20px}.summary-card{border:1px solid var(--border-light);padding:24px 28px;margin-bottom:20px}@keyframes scaleIn{0%{transform:scale(0);opacity:0}50%{transform:scale(1.15)}to{transform:scale(1);opacity:1}}.completion-actions{display:flex;gap:12px;justify-content:center;flex-wrap:wrap}.completion-actions .btn{min-width:140px}@media(max-width:480px){.setup-card{padding:20px 16px}}.diff-badge-easy{background:#22c55e26;color:#22c55e;border:1px solid rgba(34,197,94,.3)}.diff-badge-medium{background:#f59e0b26;color:#f59e0b;border:1px solid rgba(245,158,11,.3)}.diff-badge-hard{background:#ef444426;color:#ef4444;border:1px solid rgba(239,68,68,.3)}.diff-breakdown{display:flex;gap:4px;padding:4px 0;flex-wrap:wrap}.diff-score-dot{width:5px;height:5px;border-radius:50%;background:var(--border-light);display:inline-block}.diff-score-dot.filled.easy{background:#22c55e}.diff-score-dot.filled.medium{background:#f59e0b}.diff-score-dot.filled.hard{background:#ef4444}.ld-eyebrow{display:block;color:var(--accent);font-size:.68rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.ld-sync span{display:grid;gap:1px;font-size:.76rem;font-weight:700}.ld-sync small{color:var(--text-muted);font-size:.64rem;font-weight:500}.ld-time-insight small{color:var(--text-muted);font-size:.65rem;font-weight:800;letter-spacing:.08em}.ld-time-insight p,.ld-empty-insight p{margin:0;color:var(--text-secondary);font-size:.76rem;line-height:1.5}.ld-week-card small{color:var(--text-muted);font-size:.62rem;font-weight:800}.ld-week-card em{font-size:.7rem;font-style:normal}.mistake-review-overview small{color:var(--text-muted);font-size:.64rem;font-weight:800;letter-spacing:.09em}.mistake-review-overview em{color:var(--text-secondary);font-size:.78rem;font-style:normal}.back-link{display:inline-block;font-size:.82rem;color:var(--accent);text-decoration:none;margin-bottom:8px;padding:4px 0}.back-link:hover{text-decoration:underline}.wrong-list-item{display:flex;align-items:center;gap:12px;background:var(--bg-card);border:1px solid var(--border-light);box-shadow:var(--shadow-sm);transition:border-color var(--transition)}.wrong-list-item .info{flex:1;min-width:0}.wrong-list-item .q-text{font-size:.88rem;font-weight:600;color:var(--text-primary);margin-bottom:2px}.wrong-list-item .q-meta{font-size:.75rem;color:var(--text-muted)}.wrong-list-item .btn-sm{flex-shrink:0}.class-assignment-row small{font-size:12px;color:var(--text-muted)}.class-assignment-row em{font-style:normal;font-size:12.5px;color:var(--text-muted);white-space:nowrap}.ld-syllabus-map-grid span{font-size:11px;color:var(--text-muted);font-variant-numeric:tabular-nums}.ld-syllabus-map-grid em{font-style:normal;font-size:11.5px;font-weight:600}.import-add-btn{width:100%;padding:12px;font-size:.92rem;font-weight:700}.practice-mode-option{display:flex;align-items:flex-start;gap:14px;padding:16px;border:2px solid var(--border-light);border-radius:var(--radius-md);cursor:pointer;transition:all .15s ease;background:var(--bg-option)}.practice-mode-option:hover{border-color:var(--accent);background:var(--bg-option-hover)}.practice-mode-badge.learning-badge{background:#22c55e1f;color:#22c55e;border:1px solid rgba(34,197,94,.25)}.practice-mode-overlay{position:fixed;inset:0;background:#00000080;backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);z-index:1400;display:flex;align-items:center;justify-content:center;padding:24px 16px}.practice-mode-modal{position:relative;width:min(100%,440px);color:var(--text-primary);padding:32px 32px 28px}.practice-mode-title{font-size:1.25rem;font-weight:700;margin:0 0 4px}.practice-mode-subtitle{font-size:.85rem;color:var(--text-secondary);margin:0 0 20px;line-height:1.5}.practice-mode-actions{display:flex;justify-content:flex-end}.practice-mode-actions .btn{min-width:140px;font-size:.95rem;padding:10px 24px}.practice-mode-badge.exam-badge{background:#6366f11f;color:var(--accent);border:1px solid rgba(99,102,241,.25)}.exam-submit-btn{margin-left:auto;font-weight:700}body{letter-spacing:0}.dark body,body.dark{background:radial-gradient(circle at 50% -12%,rgba(204,120,92,.16),transparent 34%),radial-gradient(circle at 92% 8%,rgba(48,209,88,.06),transparent 24%),linear-gradient(180deg,#07080a,#0b0d12)}.page-header{margin-bottom:24px}.page-header p{max-width:680px}.card,.setup-card,.stat-card,.wrong-list-item,.empty-state,.transfer-modal,.practice-mode-modal{border-radius:var(--radius-lg);background:var(--bg-card);border:1px solid var(--border-light);box-shadow:var(--shadow-sm)}.card,.setup-card,.wrong-list-item,.empty-state{backdrop-filter:blur(22px) saturate(150%);-webkit-backdrop-filter:blur(22px) saturate(150%)}.card:not(.question-card):not(.card-disabled){transition:transform var(--transition),box-shadow var(--transition),border-color var(--transition),background-color var(--transition)}.setup-card,.wrong-list-item{transition:transform var(--transition),box-shadow var(--transition),border-color var(--transition),background-color var(--transition)}.card:not(.question-card):not(.card-disabled):hover{transform:translateY(-2px);border-color:#cc785c57;box-shadow:var(--shadow-md)}.setup-card:hover,.wrong-list-item:hover{transform:translateY(-2px);border-color:#cc785c57;box-shadow:var(--shadow-md)}.chapter-check-option{transition:background-color var(--transition),border-color var(--transition),color var(--transition),box-shadow var(--transition),transform var(--transition)}.setup-card{padding:24px}@keyframes caSoftEnter{0%{opacity:0}to{opacity:1}}.page-enter,.page-header{animation:caSoftEnter .24s cubic-bezier(.4,0,.2,1) both}.card-grid>.card:not(.question-card),.content-wrapper>.card:not(.question-card),.chapter-grid>.card:not(.question-card){animation:caSoftEnter .22s cubic-bezier(.4,0,.2,1) both}.card-grid>.card:nth-child(n),.chapter-grid>.card:nth-child(n){animation-delay:0ms}.practice-session-actions .btn{transition:all .2s ease!important;animation:none!important;background:var(--bg-card);border:1px solid var(--border-light);color:var(--text-primary);box-shadow:0 1px 3px #00000014}@media(max-width:480px){.practice-mode-modal{padding:24px 20px 20px}}.library-page,.paper-result-page{display:grid;margin:0 auto}.library-page-head{display:flex;justify-content:space-between;margin:0}.library-page-head h2{margin:0;letter-spacing:-.035em}.library-page-head p{margin:7px 0 0;max-width:650px;color:var(--text-secondary)}.library-summary{display:flex}.library-summary>span{display:grid;grid-template-columns:auto auto;align-items:baseline;gap:2px;min-width:92px;border-radius:12px;color:var(--text-muted);font-size:.76rem}.library-summary b{color:var(--text-primary)}.library-summary small{grid-column:1 / -1;color:var(--text-muted);font-size:.62rem;font-weight:700;text-transform:uppercase}.library-toolbar{z-index:5;display:grid;grid-template-columns:minmax(220px,1fr) 180px;border:1px solid var(--border-light);backdrop-filter:blur(16px)}.paper-toolbar{grid-template-columns:repeat(4,minmax(130px,1fr))}.library-search{display:flex;align-items:center;gap:8px}.library-search span{color:var(--text-muted);font-size:1.1rem}.library-search input{width:100%;border:0;outline:0;background:transparent}.library-group{overflow:hidden;margin-bottom:16px;border:1px solid var(--border-light)}.library-priority{border-color:color-mix(in srgb,var(--accent) 38%,var(--border-light))}.library-group-head{display:flex;align-items:center;justify-content:space-between;gap:16px;border-bottom:1px solid var(--border-light)}.library-group-head h3{margin:0;font-size:.98rem;letter-spacing:-.015em}.library-group-head span{color:var(--text-muted);font-size:.7rem}.library-list{display:grid}.library-row{display:grid;grid-template-columns:minmax(260px,1.6fr) minmax(145px,.8fr) 90px 100px 88px;align-items:center;min-height:72px;padding:10px 16px;border-bottom:1px solid var(--border-light);transition:background .15s ease}.library-row:last-child{border-bottom:0}.library-row:hover{background:var(--bg-option-hover)}.library-row-main{display:flex;align-items:center;gap:12px;min-width:0;padding:0;border:0;background:transparent;color:var(--text-primary);text-align:left;cursor:pointer}.library-row-main:disabled{cursor:default;opacity:.6}.library-index{display:grid;flex:0 0 auto;place-items:center;width:36px;height:36px;border-radius:10px;background:color-mix(in srgb,var(--accent) 10%,transparent);color:var(--accent);font-size:.76rem;font-weight:800}.library-title small,.paper-library-date small{color:var(--text-muted);font-size:.66rem}.library-progress{display:grid;gap:5px}.library-progress i{display:block;height:5px;overflow:hidden;border-radius:999px;background:var(--bg-option)}.library-progress i b{display:block;height:100%;border-radius:inherit;background:var(--accent)}.library-progress small{color:var(--text-muted);font-size:.66rem}.library-score{display:grid;gap:2px;text-align:right}.library-score strong{font-size:.82rem}.library-score small{color:var(--text-muted);font-size:.62rem}.library-status{justify-self:end;padding:5px 8px;border-radius:999px;color:var(--text-muted);background:var(--bg-option);font-size:.64rem;font-weight:700;white-space:nowrap}.library-status.in-progress{color:var(--accent);background:color-mix(in srgb,var(--accent) 11%,transparent)}.library-status.completed{color:var(--border-correct);background:color-mix(in srgb,var(--border-correct) 11%,transparent)}.library-action{justify-content:center;min-height:36px;padding:0 12px;border-radius:9px;box-shadow:none;font-size:.73rem}.library-empty{padding:48px 20px;border:1px dashed var(--border-light);border-radius:16px;color:var(--text-muted);text-align:center}.paper-library-date{display:grid;gap:3px;min-width:170px}.paper-library-date strong{font-size:.82rem}.paper-library-code{margin-left:auto;padding:5px 8px;border-radius:8px;background:var(--bg-option);color:var(--text-secondary);font-size:.7rem;font-weight:800}.library-beta-note{display:flex;align-items:center;gap:12px;padding:10px 13px;border:1px solid color-mix(in srgb,var(--accent-warn) 34%,var(--border-light));border-radius:12px;background:color-mix(in srgb,var(--accent-warn) 7%,var(--bg-card));color:var(--text-secondary);font-size:.72rem;line-height:1.5}.library-beta-note strong{flex:0 0 auto;padding:4px 7px;border-radius:7px;background:color-mix(in srgb,var(--accent-warn) 14%,transparent);color:#9a4b08;font-size:.64rem;letter-spacing:.08em}.structured-filter-shell{display:grid;gap:8px}.structured-filter-shell .library-toolbar{position:static}.structured-filter-control{display:contents}.structured-filter-results{display:flex;align-items:center;justify-content:flex-end;gap:12px;min-height:24px;padding-inline:4px;color:var(--text-muted);font-size:.69rem}.structured-filter-results button{border:0;color:var(--accent);background:transparent;font:inherit;font-weight:800;cursor:pointer}.structured-filter-results button:hover{text-decoration:underline}.structured-paper-detail>small{overflow:hidden;color:var(--text-muted);font-size:.66rem;text-overflow:ellipsis;white-space:nowrap}.structured-type-mix>span{padding:4px 7px;border:1px solid color-mix(in srgb,var(--accent) 16%,var(--border-light));border-radius:999px;color:var(--text-secondary);background:color-mix(in srgb,var(--accent) 5%,var(--bg-option));font-size:.62rem;font-weight:800;white-space:nowrap}.structured-chapter-heading p{margin:4px 0 0;color:var(--text-muted);font-size:.68rem}.structured-chapter-pool small,.structured-chapter-latest small,.structured-chapter-coverage small{color:var(--text-muted);font-size:.62rem}.structured-setup-option small{color:var(--text-muted);font-size:.66rem;line-height:1.45}.structured-chapter-preview>span{grid-row:1 / 3;color:var(--accent);font-size:.69rem;font-weight:800;text-transform:uppercase}.structured-chapter-preview small{color:var(--text-muted);font-size:.67rem}@media(max-width:640px){.structured-filter-results{justify-content:space-between}.structured-chapter-setup-actions .btn{width:100%;min-height:44px}}.result-kicker{color:var(--accent);font-size:.68rem;font-weight:800;letter-spacing:.12em}.result-hero,.result-panel,.result-next{border:1px solid var(--border-light);border-radius:18px;background:var(--bg-card);box-shadow:0 7px 24px #1622360d}.result-hero{display:grid;grid-template-columns:130px 180px 1fr;align-items:center;gap:24px;padding:22px}.result-grade{display:grid;place-items:center;min-height:112px;border-radius:15px;background:color-mix(in srgb,var(--accent) 10%,var(--bg-option))}.result-grade small,.result-score small,.result-metrics small{color:var(--text-muted);font-size:.64rem;font-weight:800;letter-spacing:.09em}.result-grade strong{color:var(--accent);font-size:3rem;line-height:1}.result-score{display:grid;gap:4px}.result-score strong{font-size:2.1rem;letter-spacing:-.04em}.result-score strong em{color:var(--text-muted);font-size:1rem;font-style:normal}.result-score span{color:var(--text-secondary);font-size:.8rem}.result-metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.result-metrics>span{display:grid;gap:4px;padding:13px;border-radius:12px;background:var(--bg-option)}.result-metrics strong{font-size:1rem}.result-grid{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(280px,.7fr);gap:18px}.result-panel{padding:19px}.result-panel-head{margin-bottom:14px}.result-panel-head h3{margin:4px 0 0;font-size:1rem}.result-chapter-row small{overflow:hidden;color:var(--text-muted);font-size:.66rem;text-overflow:ellipsis;white-space:nowrap}.result-chapter-row em{color:var(--text-secondary);font-size:.68rem;font-style:normal;text-align:right}.threshold-pill.current{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 10%,var(--bg-option));color:var(--accent)}.result-next{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:21px}.result-next h3{margin:5px 0 0;font-size:1.12rem}.result-next p{margin:6px 0 0;color:var(--text-secondary);font-size:.78rem}.app-layout:not(.landing) .content-wrapper .btn{min-height:38px;border-radius:10px;box-shadow:none;font-size:.8rem}.library-page .btn-primary,.paper-result-page .btn-primary{box-shadow:0 7px 18px color-mix(in srgb,var(--accent) 18%,transparent)}.library-page .btn-outline,.paper-result-page .btn-outline{background:var(--bg-card);box-shadow:none}@media(max-width:900px){.library-row{grid-template-columns:minmax(220px,1.4fr) minmax(120px,.8fr) 82px 82px}.library-status{display:none}.result-grid{grid-template-columns:1fr}}@media(max-width:640px){.library-page-head{flex-direction:column}.library-page-head>.btn{width:100%}.library-summary{width:100%}.library-summary>span{flex:1}.library-toolbar,.paper-toolbar{position:static;grid-template-columns:1fr 1fr;gap:8px;padding:9px}.library-search{grid-column:1 / -1}.library-row{grid-template-columns:1fr auto;padding:13px 14px}.library-row-main{grid-column:1 / -1}.library-progress{grid-column:1 / 2}.library-score{display:none}.library-action{grid-column:2 / 3;grid-row:2;min-width:76px}.paper-library-date{min-width:0}.paper-library-code{margin-left:auto}.library-beta-note{align-items:flex-start}.result-hero{grid-template-columns:92px 1fr;gap:15px;padding:16px}.result-grade{min-height:92px}.result-grade strong{font-size:2.35rem}.result-score strong{font-size:1.65rem}.result-metrics{grid-column:1 / -1;grid-template-columns:repeat(3,1fr)}.result-metrics>span{padding:10px}.result-next{align-items:stretch;flex-direction:column;padding:17px}.result-next .btn-group{display:grid;width:100%}.result-next .btn{width:100%}}.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}:root{--motion-fast: .16s;--motion-base: .22s;--motion-slow: .28s;--motion-ease-out: cubic-bezier(.22, 1, .36, 1);--motion-ease-standard: cubic-bezier(.2, 0, 0, 1);--motion-ease-spring: var(--ease-standard)}@keyframes cherryViewEnter{0%{opacity:0;transform:translateY(12px) scale(.995)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes cherryStepEnter{0%{opacity:0;transform:translate(10px)}to{opacity:1;transform:translate(0)}}@keyframes cherryStepEnterBackward{0%{opacity:0;transform:translate(-10px)}to{opacity:1;transform:translate(0)}}.motion-reactive-surface{position:relative;isolation:isolate;--motion-spot-shift-x: 0px;--motion-spot-shift-y: 0px}.motion-reactive-surface:after{content:"";position:absolute;z-index:0;inset:0;border-radius:inherit;pointer-events:none;opacity:0;background:radial-gradient(420px circle at 50% 42%,rgba(204,120,92,.115),rgba(204,120,92,.035) 38%,transparent 72%);transform:translate3d(var(--motion-spot-shift-x),var(--motion-spot-shift-y),0);transition:opacity .32s ease,transform .18s var(--motion-ease-out)}.dark .motion-reactive-surface:after{background:radial-gradient(440px circle at 50% 42%,rgba(94,181,255,.14),rgba(204,120,92,.04) 42%,transparent 72%)}.motion-reactive-surface.is-pointer-active:after{opacity:1;will-change:opacity,transform}.motion-reactive-surface>*{position:relative;z-index:1}@keyframes cherryQuestionForward{0%{opacity:0;transform:translate(12px)}to{opacity:1;transform:translate(0)}}@keyframes cherryQuestionBackward{0%{opacity:0;transform:translate(-12px)}to{opacity:1;transform:translate(0)}}@keyframes cherryQuestionEnter{0%{opacity:0;transform:translateY(10px) scale(.996)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes cherryQuestionSheen{0%{opacity:0;transform:translate(-115%)}24%{opacity:.42}to{opacity:0;transform:translate(115%)}}@keyframes cherryOptionSelect{0%{transform:scale(.96)}65%{transform:scale(1.025)}to{transform:scale(1)}}@keyframes cherryAnswerCorrect{0%{transform:scale(.97);box-shadow:0 0 #34c75947}60%{transform:scale(1.015);box-shadow:0 0 0 8px #34c75900}to{transform:scale(1);box-shadow:0 0 #34c75900}}@keyframes cherryAnswerWrong{0%,to{transform:translate(0)}32%{transform:translate(-3px)}66%{transform:translate(3px)}}@keyframes cherryPaletteChange{0%{transform:scale(.86)}70%{transform:scale(1.08)}to{transform:scale(1)}}@keyframes cherryFeedbackEnter{0%{opacity:0;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}@keyframes cherryProgressReveal{0%{transform:scaleX(0)}to{transform:scaleX(1)}}@keyframes cherryRingSettle{0%{opacity:0;transform:scale(.92)}to{opacity:1;transform:scale(1)}}#contentWrapper.motion-view-enter :is(.db-hero-fill,.progress-fill,.library-progress b,.result-chapter-row i b){transform-origin:left center;animation:cherryProgressReveal .62s var(--motion-ease-out) .17s both!important}#contentWrapper.motion-view-enter .result-grade{animation:cherryRingSettle .46s var(--motion-ease-out) .12s both!important}@keyframes cherryNavSelect{0%{transform:scale(.9);opacity:.7}65%{transform:scale(1.08);opacity:1}to{transform:scale(1);opacity:1}}.motion-modal-overlay{opacity:0;backdrop-filter:blur(12px) saturate(120%);-webkit-backdrop-filter:blur(12px) saturate(120%);transition:opacity .22s ease!important}.motion-modal-overlay>.practice-mode-modal,.motion-modal-overlay>.transfer-modal{opacity:0;transform:translateY(14px) scale(.975);animation:none!important;transition:opacity .22s ease,transform var(--motion-base) var(--motion-ease-out)!important}.motion-modal-overlay.motion-modal-open{opacity:1}.motion-modal-overlay.motion-modal-open>.practice-mode-modal,.motion-modal-overlay.motion-modal-open>.transfer-modal{opacity:1;transform:translateY(0) scale(1)}.motion-modal-overlay.motion-modal-closing{opacity:0;pointer-events:none}.motion-modal-overlay.motion-modal-closing>.practice-mode-modal,.motion-modal-overlay.motion-modal-closing>.transfer-modal{opacity:0;transform:translateY(6px) scale(.988);transition-duration:.17s!important}@keyframes cherryModalDetailEnter{0%{opacity:0;transform:translateY(7px)}to{opacity:1;transform:translateY(0)}}.motion-modal-overlay.motion-modal-open :is(.practice-mode-title,.practice-mode-subtitle,.practice-mode-option,.practice-mode-actions,.update-modal-kicker,.update-modal-version,.update-modal-title,.update-modal-body,.update-modal-actions,.transfer-modal-title,.transfer-modal-message,.transfer-modal-details,.transfer-modal-actions){animation:cherryModalDetailEnter .34s var(--motion-ease-out) both!important}.motion-modal-overlay.motion-modal-open :is(.update-modal-version,.transfer-modal-message){animation-delay:45ms!important}.motion-modal-overlay.motion-modal-open :is(.update-modal-title,.transfer-modal-details){animation-delay:80ms!important}.motion-modal-overlay.motion-modal-open :is(.practice-mode-actions,.update-modal-body,.transfer-modal-actions){animation-delay:115ms!important}@media(max-width:768px){.card,.setup-card,.wrong-list-item,.empty-state,.motion-modal-overlay>.practice-mode-modal,.motion-modal-overlay>.transfer-modal{backdrop-filter:none;-webkit-backdrop-filter:none}.motion-modal-overlay{backdrop-filter:none!important;-webkit-backdrop-filter:none!important}}@media(hover:none),(pointer:coarse){.card:not(.question-card):not(.card-disabled):hover{transform:none}}@media(hover:none),(pointer:coarse){.setup-card:hover,.wrong-list-item:hover,.btn:hover,.btn-primary:hover,.btn-outline:hover{transform:none}.premium-hover-card,.premium-hover-card:hover{--lift: 0px;--tilt-scale: 1;--rotate-x: 0deg;--rotate-y: 0deg}.premium-hover-card:before,.premium-hover-card:after{display:none}}@keyframes cherryToastIn{0%{opacity:0;transform:translate(-50%) translateY(14px) scale(.97)}to{opacity:1;transform:translate(-50%) translateY(0) scale(1)}}@keyframes cherryToastOut{0%{opacity:1;transform:translate(-50%) translateY(0) scale(1)}to{opacity:0;transform:translate(-50%) translateY(8px) scale(.98)}}.toast{animation:cherryToastIn .24s var(--motion-ease-out) both!important}.toast.motion-toast-exit{animation:cherryToastOut .17s ease both!important;pointer-events:none}@keyframes cherrySaveIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes cherrySaveOut{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(5px)}}.auto-save-indicator{animation:cherrySaveIn .22s var(--motion-ease-out) both!important}.auto-save-indicator.motion-save-exit{animation:cherrySaveOut .15s ease both!important}.question-number-badge small{display:flex;align-items:center;justify-content:center;padding-bottom:5px;color:color-mix(in srgb,var(--accent) 76%,var(--text-secondary));border-bottom:1px solid color-mix(in srgb,var(--accent) 22%,transparent);font-size:.49rem;font-weight:800;letter-spacing:.12em;line-height:1;text-transform:uppercase}.answer-section-header span{color:var(--text-muted);font-size:.74rem}.answer-feedback-copy span{color:var(--text-secondary);font-size:.78rem;font-weight:500}.sm2-review-btn{min-height:30px}.practice-workspace .practice-utility-btn{min-height:40px;padding:8px 10px;border-radius:10px;font-size:.76rem;white-space:nowrap}.practice-rail-stats span{color:var(--text-muted);font-size:.68rem}.practice-palette-legend span{display:inline-flex;align-items:center;gap:5px;color:var(--text-muted);font-size:.66rem}@media(max-width:1060px){.practice-workspace .practice-utility-btn{width:40px;padding:0}}@media(max-width:768px){.question-number-badge small{padding-bottom:4px;font-size:.44rem}}.app-layout:not(.landing){--sidebar-width: 288px}.app-layout.sidebar-collapsed:not(.landing){--sidebar-width: 84px}.sidebar-brand-text span{margin-top:2px;color:var(--text-muted);font-size:.65rem;font-weight:700;letter-spacing:.035em}.sidebar-link .icon svg{width:17px;height:17px}@media(min-width:769px)and (max-width:1100px){.app-layout:not(.landing){--sidebar-width: 248px}.app-layout.sidebar-collapsed:not(.landing){--sidebar-width: 84px}}@media(max-width:768px){.app-layout:not(.landing),.app-layout.sidebar-collapsed:not(.landing){--sidebar-width: 0px;--header-height: 60px}.top-bar .menu-toggle{display:inline-flex;width:36px;height:36px;align-items:center;justify-content:center;padding:0;background:var(--sidebar-workspace-panel);border:1px solid var(--sidebar-workspace-line);border-radius:11px;font-size:1.12rem}.mobile-brand-copy small{margin-top:2px;color:var(--text-muted);font-size:.61rem;font-weight:600}}html[data-theme] body{background-color:var(--bg-primary);background-image:none}html[data-theme] .app-layout{position:relative;isolation:isolate;background:transparent}html[data-theme] .app-layout:before{content:"";position:fixed;inset:0;z-index:-1;pointer-events:none;background-color:var(--bg-primary);background-image:var(--app-wallpaper);background-repeat:no-repeat;background-position:var(--app-wallpaper-position, center top);background-size:cover}html[data-theme] body.donate-body{background-color:var(--bg-primary);background-image:var(--app-wallpaper);background-repeat:no-repeat;background-position:var(--app-wallpaper-position, center top);background-size:cover;background-attachment:fixed}:root{--motion-press: 90ms;--motion-snap: .18s;--focus-ring-color: color-mix(in srgb, var(--accent) 65%, transparent);--interactive-lift: translateY(-1px);--interactive-press: scale(.99)}:where(button,[role=button],summary,a[href]){touch-action:manipulation}:where(button,[role=button])[disabled],:where(button,[role=button])[aria-disabled=true]{cursor:not-allowed}html{color-scheme:light;-webkit-tap-highlight-color:transparent}html.dark{color-scheme:dark}input[type=checkbox],input[type=radio],input[type=range],progress{accent-color:var(--accent)}::selection{background:color-mix(in srgb,var(--accent) 30%,transparent);color:var(--text-primary)}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-thumb{border:2px solid transparent;border-radius:999px;background:color-mix(in srgb,var(--text-muted) 42%,transparent);background-clip:content-box}::-webkit-scrollbar-thumb:hover{background:color-mix(in srgb,var(--text-muted) 62%,transparent);background-clip:content-box}:where(.btn,.sidebar-link,.sidebar-course-card,.sidebar-collapse-btn,.card-grid .card,.chapter-grid .card,.setup-card,.summary-card,.option-btn,.palette-dot,.question-nav button,.bookmark-toggle,.explanation-toggle,.ld-primary-action button,.ld-sync,.ld-goal-menu>summary,.ld-insight-head>button,.theme-picker-option,.structured-paper-card,.structured-chapter-card,.structured-timing-actions button,.exam-setup-actions button,.practice-mode-actions button,.today15):focus-visible{outline:2px solid var(--focus-ring-color);outline-offset:2px}.btn:active,.card:active,.today15:active{transform:var(--interactive-press)!important;transition:transform var(--motion-press) var(--motion-ease-spring)!important}.structured-paper-card:active{transform:translateY(1px)!important;transition:transform var(--motion-press) var(--motion-ease-spring)!important}.ld-insight-head{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:14px}.ld-insight-head h4{margin:0;font-size:.88rem}.ld-insight-head button{padding:4px 0;border:0;background:transparent;color:var(--text-secondary);font-size:.7rem;font-weight:700;cursor:pointer}.ld-insight-head button:hover{color:var(--accent)}.course-loading-brand small{color:var(--text-muted);font-size:.7rem}@keyframes cherryLoaderSpin{to{transform:rotate(360deg)}}@keyframes cherrySkeletonSweep{0%{transform:translate(-140%)}to{transform:translate(340%)}}@media(hover:none)and (pointer:coarse){.card-grid .card:hover,.setup-card:hover{transform:none}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}.btn:active,.premium-hover-card,.premium-hover-card:hover,.motion-modal-overlay,.motion-modal-overlay>.practice-mode-modal,.motion-modal-overlay>.transfer-modal,.motion-modal-overlay.motion-modal-open .practice-mode-title,.motion-modal-overlay.motion-modal-open .practice-mode-subtitle,.motion-modal-overlay.motion-modal-open .practice-mode-actions,.motion-modal-overlay.motion-modal-open .transfer-modal-title,.motion-modal-overlay.motion-modal-open .transfer-modal-message,.motion-modal-overlay.motion-modal-open .transfer-modal-actions,.toast,.auto-save-indicator{animation:none!important;transition-duration:.01ms!important;animation-delay:0ms!important}.premium-hover-card,.premium-hover-card:hover{--lift: 0px !important;--tilt-scale: 1 !important;--rotate-x: 0deg !important;--rotate-y: 0deg !important}.premium-hover-card:before,.premium-hover-card:after{display:none!important}.motion-reactive-surface:after{display:none!important}#contentWrapper.motion-view-enter :is(.db-hero-fill,.progress-fill,.library-progress b,.result-chapter-row i b,.result-grade){animation:none!important;transform:none!important;opacity:1!important}.motion-modal-overlay.motion-modal-open,.motion-modal-overlay.motion-modal-open>.practice-mode-modal,.motion-modal-overlay.motion-modal-open>.transfer-modal{opacity:1;transform:none}}.cherry-webgl-host{position:fixed;z-index:1100;inset:0;overflow:hidden;background:var(--bg-primary)}:is(.card-subtitle,.card-stats,.paper-hint,.chapter-hint,.dashboard-kpi-meta,.dashboard-action-subtitle,.dashboard-mastery-caption,.dashboard-mastery-detail,.db-quick-card-sub,.page-header p,.random-dashboard .page-header p,.today15-copy){color:var(--text-secondary);font-size:max(.82rem,13px);line-height:1.55}:is(.db-section-label,.dashboard-section-kicker,.dashboard-kpi-label,.dashboard-diagnostic-label,.setup-card-label,.paper-status,.paper-mode-tag,.chapter-status,.ld-eyebrow,.ld-metrics small,.ld-plan-item small,.ld-quick-actions small){color:var(--text-muted);font-size:max(.72rem,11.5px);line-height:1.4}.mobile-brand-copy small{color:var(--text-secondary);font-size:.7rem}:is(.ld-sync small,.ld-time-insight small,.ld-time-insight p,.ld-empty-insight p,.ld-week-card small,.ld-week-card em,.ld-heat-legend){color:var(--text-muted);font-size:max(.72rem,11.5px);line-height:1.45}:is(.db-hero,.dashboard-overview,.dashboard-mastery-panel,.today15-hero,.today15-action-card){border-color:var(--border-light);box-shadow:var(--shadow-md)}:is(.db-hero-stat,.db-summary-item,.dashboard-kpi-card,.dashboard-mastery-row,.ld-plan-item,.ld-unlock-grid>span,.today15-stat,.today15-reason-card){box-shadow:none}.today15-hero .page-header h2{max-width:680px;color:var(--text-primary)}.today15-progress :is(progress,.progress-bar){width:100%}html.dark :is(.btn-primary,.today15-primary,.ld-primary-action button,.ld-goal-form>button){color:#10151d}html[data-theme] .app-layout.practice-immersive:before{background-color:var(--bg-primary);background-image:radial-gradient(circle at 12% -10%,color-mix(in srgb,var(--accent) 9%,transparent),transparent 34rem),linear-gradient(var(--bg-primary),var(--bg-primary));background-position:center;background-size:cover}@media(max-width:768px){:is(.btn,.btn-sm,.btn-icon,.top-bar .menu-toggle,.sidebar-collapse-btn,.sidebar-link,.sidebar-tool,.count-option label,.diff-option label,.chapter-check-option,.practice-mode-option,.select-input,.search-input){min-height:44px!important}:is(.btn-icon,.top-bar .menu-toggle,.sidebar-collapse-btn){width:44px;min-width:44px}}:is(.page-header h2,.ld-header h2,.today15-hero h2)[tabindex="-1"]:focus{outline:none}.exam-setup-hero .page-header h2,.diagnostic-hero .page-header h2,.today15-hero .page-header h2{font-family:var(--font-display);font-weight:600;letter-spacing:-.02em;line-height:1.1}.premium-hover-card:focus-visible{outline:2px solid rgba(204,120,92,.7)}.exam-flag-toggle{min-height:44px}.exam-setup-hero .page-header h2,.diagnostic-hero .page-header h2{max-width:760px;color:var(--text-primary);font-size:clamp(2rem,4.8vw,3.35rem);font-weight:800;letter-spacing:-.045em;line-height:1.03}.diagnostic-hero .page-header p,.exam-setup-hero .page-header p{max-width:720px;margin-top:11px;color:var(--text-secondary);font-size:max(.9rem,14px);line-height:1.58}.exam-setup-actions .btn{min-height:46px}.exam-setup-actions .btn-primary{flex:1 1 220px;max-width:310px}.diagnostic-action-buttons .btn{min-height:44px}:is(.exam-setup-actions .btn,.exam-submit-actions .btn,.exam-session-bar .btn,.exam-flag-toggle,.diagnostic-action-buttons .btn,.diagnostic-focus-list button,.diagnostic-next-plan .btn):focus-visible{outline:3px solid color-mix(in srgb,var(--accent) 30%,transparent);outline-offset:2px}@media(max-width:768px){.exam-setup-hero .page-header h2,.diagnostic-hero .page-header h2{font-size:clamp(1.8rem,7vw,2.5rem)}.exam-flag-toggle{min-width:44px;min-height:44px}}@media(max-width:560px){.exam-setup-actions .btn{width:100%;max-width:none;flex-basis:auto}.diagnostic-action-buttons .btn{width:100%}}.grade-trend-header .btn{flex:0 0 auto;min-height:44px}.grade-trend-empty .btn{min-height:44px}@media(max-width:768px){.grade-trend-header .btn{width:100%}}@media(max-width:560px){.grade-trend-empty .btn{width:100%}}.converter-threshold.current{color:var(--accent);border-color:var(--accent);background:var(--accent-light)}@media(max-width:640px){.converter-controls .btn{width:100%}}.structured-collection-page{display:grid;width:min(100%,1180px);max-width:100%;min-width:0;gap:18px;margin:0 auto}.structured-collection-page *{box-sizing:border-box}.structured-collection-head,.structured-hub-card-head,.structured-collection-card-head,.structured-collection-row{display:flex;min-width:0;align-items:center}.structured-collection-head,.structured-hub-card-head,.structured-collection-card-head,.structured-collection-row{justify-content:space-between;gap:16px}.structured-collection-head>div,.structured-hub-card-head>div,.structured-collection-card-head>div,.structured-collection-row>div{min-width:0}.structured-collection-head h2{margin:0;overflow-wrap:anywhere}.structured-collection-head p,.structured-collection-row p{margin:5px 0 0;color:var(--text-secondary);line-height:1.55;overflow-wrap:anywhere}.structured-collection-grid{display:grid;min-width:0;gap:12px}.structured-collection-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.structured-collection-list,.structured-hub-empty,.structured-collection-empty{min-width:0;border:1px solid var(--border-light)}button.structured-hub-card:hover{transform:translateY(-2px);border-color:color-mix(in srgb,var(--accent-blue) 38%,var(--border-light));box-shadow:0 12px 30px #16223617}.structured-collection-row>button{min-height:44px;border:1px solid var(--border-light);border-radius:10px;color:var(--text-secondary);background:var(--bg-option);cursor:pointer}.structured-collection-row>button[aria-pressed=true]{border-color:color-mix(in srgb,var(--accent-blue) 42%,var(--border-light));color:var(--accent-blue);background:color-mix(in srgb,var(--accent-blue) 8%,var(--bg-card))}.structured-collection-meta,.structured-collection-row small{color:var(--text-muted);font-size:.68rem}.structured-hub-actions :is(.btn,button,a),.structured-collection-actions :is(.btn,button,a),.structured-collection-toolbar :is(button,input,select){min-height:44px}.structured-collection-toolbar{display:flex;min-width:0;flex-wrap:wrap;align-items:center;gap:9px;padding:11px;border:1px solid var(--border-light);border-radius:14px;background:var(--bg-card)}.structured-collection-toolbar label{min-width:0;flex:1 1 190px}.structured-collection-toolbar :is(input,select){width:100%;max-width:100%;padding-inline:12px;border:1px solid var(--border-light);color:var(--text-primary);font:inherit}.structured-collection-list{display:grid;overflow:hidden}.structured-collection-row{min-height:70px;padding:12px 15px;border-bottom:1px solid var(--border-light)}.structured-collection-row:last-child{border-bottom:0}.structured-collection-empty,.structured-hub-empty{display:grid;min-height:230px;place-items:center;align-content:center;gap:9px;padding:28px 20px;color:var(--text-secondary);text-align:center}.structured-save-status{display:inline-flex;min-height:24px;align-items:center;border-radius:999px}.structured-save-status--error{padding-inline:8px;color:var(--border-wrong);background:color-mix(in srgb,var(--border-wrong) 9%,transparent);font-weight:800}@media(max-width:880px){.structured-collection-grid{grid-template-columns:1fr}}@media(max-width:720px){.structured-collection-page{max-width:100%;min-width:0;overflow-x:clip}.structured-collection-head,.structured-collection-row{align-items:stretch;flex-direction:column}.structured-collection-head>.btn,.structured-hub-actions :is(.btn,button,a),.structured-collection-actions :is(.btn,button,a){width:100%}}@media(max-width:440px){.structured-collection-toolbar{display:grid;grid-template-columns:minmax(0,1fr)}.structured-collection-toolbar label,.structured-collection-toolbar>*{width:100%;min-width:0}}.soft-lock-overlay{position:fixed;top:14px;left:50%;z-index:1350;width:min(540px,calc(100vw - 28px));pointer-events:none;opacity:0;visibility:hidden;transform:translate(-50%) translateY(-10px);transition:opacity .18s ease,transform .18s ease,visibility .18s ease}.soft-lock-overlay.is-visible{opacity:1;visibility:visible;transform:translate(-50%) translateY(0)}.soft-lock-card{pointer-events:auto;display:flex;align-items:center;gap:13px;padding:13px 15px;border:1px solid rgba(204,120,92,.42);border-radius:14px;background:var(--practice-surface-strong, rgba(255, 255, 255, .96));color:var(--text-primary, #1d1d1f);box-shadow:var(--practice-shadow, 0 12px 32px rgba(31, 41, 55, .16));backdrop-filter:blur(10px)}.soft-lock-icon{flex:0 0 auto;display:grid;place-items:center;width:36px;height:36px;border-radius:11px;background:var(--accent-light, rgba(204, 120, 92, .1));color:var(--accent, #cc785c)}.soft-lock-copy{display:grid;gap:2px;min-width:0}.soft-lock-copy strong{font-size:.9rem;font-weight:700}.soft-lock-copy span{font-size:.78rem;line-height:1.45;color:var(--text-secondary, #6e6e73)}.soft-lock-actions{display:flex;flex:0 0 auto;gap:8px;margin-left:auto}.soft-lock-btn{padding:7px 13px;border:1px solid var(--practice-border);border-radius:10px;background:transparent;color:inherit;font-family:inherit;font-size:.76rem;font-weight:600;cursor:pointer;transition:border-color var(--transition, .22s ease),color var(--transition, .22s ease)}.soft-lock-btn:hover,.soft-lock-btn:focus-visible{border-color:var(--accent, #cc785c);color:var(--accent, #cc785c)}.soft-lock-btn-primary{background:var(--accent, #cc785c);border-color:var(--accent, #cc785c);color:#fff}.soft-lock-btn-primary:hover,.soft-lock-btn-primary:focus-visible{background:var(--accent-hover, #bd6a4e);border-color:var(--accent-hover, #bd6a4e);color:#fff}@media(max-width:640px){.soft-lock-card{flex-wrap:wrap}.soft-lock-actions{width:100%;justify-content:flex-end;margin-left:0}}html[data-theme] .skip-link{position:fixed;top:var(--spacing-3);left:var(--spacing-3);z-index:200;padding:var(--spacing-2) var(--spacing-3);border:1px solid var(--color-accent);border-radius:var(--radius-control);color:var(--color-on-accent);background:var(--color-accent);font:600 var(--text-callout)/1.3 var(--font-sans);text-decoration:none;transform:translateY(-160%);transition:transform var(--transition-fast) var(--ease-standard)}html[data-theme] .skip-link:focus-visible{transform:translateY(0)}@media(max-width:768px){html[data-theme] .app-layout:not(.landing){padding-bottom:calc(68px + env(safe-area-inset-bottom))}html[data-theme] .app-layout.landing,html[data-theme] .app-layout.practice-immersive{padding-bottom:0}}html[data-theme] body{font-family:var(--font-sans);color:var(--color-text-primary);line-height:var(--leading-body)}html[data-theme] :is(.page-header h2,.ld-header h2,.grade-trend-header h2,.today15-hero .page-header h2,.random-dashboard .page-header h2){font-family:var(--font-sans);font-size:var(--text-large-title);font-weight:var(--weight-semibold);line-height:var(--leading-tight);letter-spacing:-.025em}html[data-theme] .completion-screen h2{font-family:var(--font-sans);font-size:var(--text-title);font-weight:var(--weight-semibold);line-height:var(--leading-tight);letter-spacing:-.02em}html[data-theme] :is(.card-title,.empty-state h3,.practice-mode-modal h2){font-size:var(--text-headline);font-weight:var(--weight-semibold);line-height:var(--leading-tight)}html[data-theme] :is(.page-header p,.card-subtitle,.empty-state p){color:var(--color-text-secondary);font-size:var(--text-callout);line-height:var(--leading-body)}html[data-theme] :is(.timer-display,.library-score,.library-progress,.practice-progress-heading,.question-number-chip,.today15-count,.stat-value){font-variant-numeric:tabular-nums lining-nums}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--spacing-2);max-width:100%;padding:var(--spacing-2) var(--spacing-4);border:1px solid var(--color-border-strong);color:var(--color-text-primary);background:var(--color-surface);font:var(--weight-medium) var(--text-callout)/1.4 var(--font-sans);text-align:center;text-decoration:none;cursor:pointer}html[data-theme] :is(.btn,.today15-primary,.today15-secondary,.ld-primary-action button,.ld-goal-form>button){min-height:var(--control-height);border-radius:var(--radius-button);box-shadow:none;backdrop-filter:none;-webkit-backdrop-filter:none;background-image:none;font-weight:var(--weight-semibold);transition:background-color var(--transition-fast) var(--ease-standard),border-color var(--transition-fast) var(--ease-standard),color var(--transition-fast) var(--ease-standard),opacity var(--transition-fast) var(--ease-standard)}html[data-theme] :is(.btn-primary,.today15-primary,.ld-primary-action button,.ld-goal-form>button){color:var(--color-on-accent);background:var(--color-accent);border-color:transparent}.btn-outline{color:var(--color-text-primary);background:transparent;border-color:var(--color-border)}.btn-sm{padding:var(--spacing-2) var(--spacing-3);font-size:var(--text-caption)}@media(hover:hover){html[data-theme] :is(.btn,.today15-secondary):hover:not(:disabled):not([aria-disabled=true]){background:var(--bg-option-hover);border-color:var(--color-border-strong);box-shadow:none;transform:none}html[data-theme] :is(.btn-primary,.today15-primary,.ld-primary-action button,.ld-goal-form>button):hover:not(:disabled){background:var(--color-accent-hover);border-color:transparent;color:var(--color-on-accent);box-shadow:none;transform:none;filter:none}}html[data-theme] :is(.btn,.today15-primary,.today15-secondary,.ld-primary-action button):active{transform:none!important;opacity:.86}html[data-theme] :is(.btn,.today15-primary,.today15-secondary,.ld-primary-action button):is(:disabled,[aria-disabled=true]){background:var(--bg-disabled);color:var(--color-text-tertiary);border-color:var(--color-border);box-shadow:none;opacity:.65;cursor:not-allowed;transform:none!important}html[data-theme] :is(button,a[href],summary,input,select,textarea,[role=button],[tabindex="0"]):focus-visible{outline:2px solid var(--color-accent);outline-offset:3px}html[data-theme] :is(.search-input,.select-input,.library-toolbar select,.library-search,.ld-goal-form input,.ld-goal-form select,.exam-field select,.grade-trend-filters select,.grade-converter-field select,.grade-converter-field input){min-height:var(--control-height);min-width:0;max-width:100%;padding:var(--spacing-2) var(--spacing-3);border:1px solid var(--color-border-strong);border-radius:var(--radius-control);color:var(--color-text-primary);background:var(--color-surface);font:var(--weight-regular) var(--text-callout)/1.5 var(--font-sans);box-shadow:none;transition:border-color var(--transition-fast) var(--ease-standard),background-color var(--transition-fast) var(--ease-standard)}html[data-theme] .library-search input{min-width:0;color:var(--color-text-primary);font:inherit}html[data-theme] .library-search:focus-within{border-color:var(--color-accent)}html[data-theme] input::placeholder{color:var(--color-text-tertiary);opacity:1}html[data-theme] :is(input,select,textarea)[aria-invalid=true]{border-color:var(--color-error)}html[data-theme] :is(.card,.setup-card,.summary-card,.mistake-card,.library-group,.question-card,.practice-palette-card,.structured-paper-card,.structured-chapter-card){background:var(--color-surface);border-color:var(--color-border);border-radius:var(--radius-card);box-shadow:none;backdrop-filter:none;-webkit-backdrop-filter:none}html[data-theme] :is(.card,.setup-card,.summary-card,.mistake-card):hover{box-shadow:none;transform:none}html[data-theme] :is(.card,.card-grid .card){padding:var(--spacing-6)}html[data-theme] .library-toolbar{gap:var(--spacing-3);padding:var(--spacing-3);border-radius:var(--radius-card);background:var(--color-surface-secondary);box-shadow:none}html[data-theme] .library-group-head{padding:var(--spacing-4) var(--spacing-5);background:var(--color-surface-secondary)}html[data-theme] .library-row{gap:var(--spacing-4)}html[data-theme] :is(.practice-mode-modal,.update-modal,.transfer-modal,.structured-timing-modal,.restart-modal,.ld-goal-form){background:var(--color-surface-elevated);border:1px solid var(--color-border);border-radius:var(--radius-modal);box-shadow:var(--shadow-lg)}html[data-theme] .toast{color:var(--color-text-primary);background:var(--color-surface-elevated);border:1px solid var(--color-border);border-radius:var(--radius-button);box-shadow:var(--shadow-md)}html[data-theme] .empty-state{padding:var(--spacing-12) var(--spacing-6);background:transparent;border:0;box-shadow:none;backdrop-filter:none;-webkit-backdrop-filter:none}.empty-state .icon-big{display:grid;place-items:center;width:var(--spacing-12);height:var(--spacing-12);margin:0 auto var(--spacing-5)}.empty-state .icon-big svg{display:block;width:var(--spacing-8);height:var(--spacing-8)}html[data-theme] .empty-state h3{margin-bottom:var(--spacing-2)}html[data-theme] .empty-state p{max-width:44ch;margin-inline:auto}html:is([data-theme=light],[data-theme=dark]) :is(.today15-hero,.grade-trend-header){background:var(--color-surface);border-color:var(--color-border);box-shadow:none;border-radius:var(--radius-card)}html:is([data-theme=light],[data-theme=dark]) .app-layout:before{background:var(--color-background)}@media(max-width:768px){html[data-theme] :is(.search-input,.select-input,.library-toolbar select,.library-search,.ld-goal-form input,.ld-goal-form select){font-size:var(--text-body)}html[data-theme] :is(.card,.card-grid .card){padding:var(--spacing-4)}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}.premium-hover-card:before{animation:none!important}}html[data-theme] body{background:var(--color-background);background-image:none}html[data-theme] .app-layout:not(.landing){background:var(--color-background)}html[data-theme] .app-layout:not(.landing) .page-header{margin-bottom:var(--spacing-6)}html[data-theme] .app-layout:not(.landing) .page-header h2{margin:0;color:var(--color-text-primary);font-size:var(--text-large-title);font-weight:var(--weight-semibold);letter-spacing:-.025em}html[data-theme] .app-layout:not(.landing) .page-header p{margin-top:var(--spacing-2);color:var(--color-text-secondary);font-size:var(--text-callout)}html[data-theme] .app-layout:not(.landing) .btn-group{gap:var(--spacing-2)}html[data-theme] .app-layout:not(.landing) :is(.card-grid,.chapter-grid,.paper-grid){gap:var(--spacing-4)}html[data-theme] .app-layout:not(.landing) :is(.card-grid .card,.chapter-grid .card,.paper-grid .card,.mistake-card,.wrong-list-item,.setup-card){box-shadow:none;background:var(--color-surface);border-color:var(--color-border)}html[data-theme] .app-layout:not(.landing) :is(.card-grid .card,.chapter-grid .card,.paper-grid .card,.mistake-card,.wrong-list-item,.setup-card):hover{border-color:var(--color-border-strong);box-shadow:none;transform:none}html[data-theme] .app-layout:not(.landing) :is(.card-title,.mistake-card-title){font-weight:var(--weight-semibold)}html[data-theme] .app-layout:not(.landing) :is(.card-subtitle,.mistake-card-desc){color:var(--color-text-secondary)}html[data-theme] .app-layout:not(.landing) :is(.search-input,.select-input,.filter-row input,.filter-row select,.filter-tabs,.library-toolbar,.grade-trend-filters){box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none}html[data-theme] .learning-dashboard{width:min(100%,1160px);gap:var(--spacing-8)}html[data-theme] .learning-dashboard .ld-header{align-items:flex-end;padding:0 0 var(--spacing-5);border:0;border-bottom:1px solid var(--color-border);border-radius:0;background:transparent;box-shadow:none}html[data-theme] .learning-dashboard :is(.ld-time-insight,.ld-empty-insight,.ld-matrix-row:hover){background:var(--color-surface-secondary)}html[data-theme] .practice-workspace .practice-topbar{top:var(--spacing-3);min-height:70px;margin-bottom:var(--spacing-5);padding:var(--spacing-3) var(--spacing-4);background:var(--color-surface);border-color:var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);-webkit-backdrop-filter:none;backdrop-filter:none}html[data-theme] .practice-workspace .question-card{min-height:510px;background:var(--color-surface);border-color:var(--color-border);border-radius:var(--radius-card);box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none}html[data-theme] .practice-workspace .option-btn-compact:hover:not(:disabled):not(.locked){color:var(--color-text-primary);background:var(--color-surface-elevated);border-color:var(--color-border-strong);box-shadow:none;transform:none}html[data-theme] .practice-workspace .question-nav{width:100%;min-height:66px;margin-top:var(--spacing-4);padding:var(--spacing-2);background:var(--color-surface);border-color:var(--color-border);border-radius:var(--radius-md);box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none}html[data-theme] .practice-workspace .practice-palette-card{padding:var(--spacing-5);background:var(--color-surface);border-color:var(--color-border);border-radius:var(--radius-card);box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none}html[data-theme] .practice-workspace .practice-rail-stats div{background:var(--color-surface-secondary);border-color:var(--color-border);border-radius:var(--radius-control)}html[data-theme] :is(.library-page,.paper-result-page,.grade-trend-page){width:min(100%,1160px);gap:var(--spacing-6)}html[data-theme] .library-page-head{align-items:flex-start;gap:var(--spacing-6);padding-bottom:var(--spacing-5);border-bottom:1px solid var(--color-border)}html[data-theme] .library-page-head h2{font-size:var(--text-large-title);font-weight:var(--weight-semibold)}html[data-theme] .library-summary{gap:var(--spacing-5)}html[data-theme] .library-summary>span{padding:0;border:0;background:transparent;box-shadow:none}html[data-theme] .library-summary b{font-size:1.1rem}html[data-theme] .library-toolbar{position:sticky;top:var(--spacing-3);padding:var(--spacing-3);border-color:var(--color-border);border-radius:var(--radius-md);background:var(--color-surface-secondary)}html[data-theme] :is(.library-toolbar select,.library-search){background:var(--color-surface);border-color:var(--color-border);border-radius:var(--radius-control)}html[data-theme] .library-group{background:var(--color-surface);border-color:var(--color-border);border-radius:var(--radius-card);box-shadow:none}html[data-theme] :is(.library-group-head,.library-row,.paper-row){border-color:var(--color-border)}html[data-theme] .wrong-list-item{min-height:64px;margin-bottom:var(--spacing-2);padding:var(--spacing-3) var(--spacing-4);border-radius:var(--radius-md)}html[data-theme] .theme-picker-option{min-height:58px;padding:var(--spacing-3);background:var(--color-surface-secondary);border-color:var(--color-border);border-radius:var(--radius-md);box-shadow:none}html[data-theme] .empty-state{min-height:220px;padding:var(--spacing-12) var(--spacing-6)}html[data-theme] .empty-state .icon-big{color:var(--color-accent)}html[data-theme] .toast{max-width:min(420px,calc(100vw - 32px));padding:var(--spacing-3) var(--spacing-4);border-radius:var(--radius-button);box-shadow:var(--shadow-md)}html[data-theme] :is(.update-modal-overlay,.transfer-modal-overlay,.modal-overlay){background:#1c201e70;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}html[data-theme] :is(.update-modal,.transfer-modal,.practice-mode-modal,.modal){background:var(--color-surface-elevated);border-color:var(--color-border);border-radius:var(--radius-modal);box-shadow:var(--shadow-lg);-webkit-backdrop-filter:none;backdrop-filter:none}html[data-theme] :is(.structured-hub-page,.structured-collection-page,.structured-beta-page,.structured-result-page,.self-mark-page,.exam-setup-page,.diagnostic-page,.diagnostic-result,.random-dashboard,.grade-trend-page){color:var(--color-text-primary)}html[data-theme] :is(.structured-hub-hero,.structured-hub-card,.structured-collection-card,.structured-collection-list,.structured-hub-empty,.structured-collection-empty,.structured-paper-card,.structured-session-bar,.structured-session-footer,.exam-setup-hero,.exam-setup-card,.diagnostic-hero,.diagnostic-scope,.diagnostic-action-card,.diagnostic-result-hero,.diagnostic-next-plan,.result-hero,.result-panel,.grade-trend-panel,.grade-trend-insight,.grade-trend-empty,.setup-card,.summary-card,.completion-stat-card){background:var(--color-surface);border-color:var(--color-border);border-radius:var(--radius-card);box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none}html[data-theme] :is(.structured-hub-stats,.structured-scope-stats,.diagnostic-scope-stats,.exam-session-counts,.grade-trend-kpi,.completion-stats,.random-session-bar){background:var(--color-surface-secondary);border-color:var(--color-border);box-shadow:none}html[data-theme] :is(button.structured-hub-card,.structured-collection-row,.structured-paper-card,.diagnostic-focus-list button,.grade-trend-kpi,.completion-stat-card):hover{transform:none;box-shadow:none;border-color:var(--color-border-strong)}html[data-theme] :is(.structured-beta-notice,.structured-beta-warning,.diagnostic-evidence-note,.today15-hero){background:var(--color-surface-secondary);border-color:var(--color-border);box-shadow:none}html[data-theme] :is(.today15-composition,.today15-action-card,.today15-reason-card,.today15-stat){background:var(--color-surface);border-color:var(--color-border);border-radius:var(--radius-card);box-shadow:none}html[data-theme] :is(.grade-trend-filters select,.structured-collection-toolbar :is(input,select),.exam-setup-page :is(select,input),.diagnostic-page :is(select,input)){background:var(--color-surface);border-color:var(--color-border);border-radius:var(--radius-control)}html[data-theme] :is(.structured-collection-toolbar,.structured-session-stats,.structured-question-nav,.exam-setup-actions,.diagnostic-action-buttons){border-color:var(--color-border)}html[data-theme] :is(.structured-session-page,.structured-beta-page,.structured-result-page,.self-mark-page,.exam-setup-page,.diagnostic-page,.diagnostic-result) :is(.btn,button,a):focus-visible{outline:2px solid color-mix(in srgb,var(--color-accent) 56%,transparent);outline-offset:2px}html[data-theme=dark] body,html[data-theme=dark] .app-layout:not(.landing){background:var(--bg-primary)}html[data-theme=dark] :is(.learning-dashboard .ld-header,.library-page-head){border-bottom-color:var(--border-light)}html[data-theme=dark] :is(.practice-workspace .question-card,.practice-workspace .practice-topbar,.practice-workspace .question-nav,.practice-workspace .practice-palette-card,.settings-page-card,.library-group,.mistake-card,.wrong-list-item){background:var(--bg-secondary)}html[data-theme=dark] :is(.practice-workspace .option-btn-compact,.practice-workspace .practice-rail-stats div,.library-toolbar,.theme-picker-option,.learning-dashboard .ld-time-insight,.learning-dashboard .ld-empty-insight){background:var(--bg-option)}html[data-theme=dark] :is(.practice-workspace .option-btn-compact:hover:not(:disabled):not(.locked),.library-toolbar select,.library-search){background:var(--bg-elevated)}@media(max-width:768px){html[data-theme] :is(.library-page,.paper-result-page,.grade-trend-page){gap:var(--spacing-6)}html[data-theme] .library-page-head{align-items:stretch;flex-direction:column;gap:var(--spacing-4)}html[data-theme] .library-toolbar{position:static}html[data-theme] .library-summary{justify-content:flex-start}}@media(max-width:430px){html[data-theme] .library-page-head h2{font-size:1.5rem}}@media(prefers-reduced-motion:reduce){html[data-theme] .app-layout:not(.landing) *,html[data-theme] .app-layout:not(.landing) *:before,html[data-theme] .app-layout:not(.landing) *:after{animation:none!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}.premium-hover-card:before{animation:none!important}}.offline-banner{position:fixed;top:calc(12px + env(safe-area-inset-top));left:50%;z-index:10000;max-width:min(560px,calc(100vw - 32px));padding:8px 16px;transform:translate(-50%);color:var(--color-text-primary);background:var(--color-surface-elevated);border:1px solid var(--color-border);border-radius:var(--radius-button);box-shadow:var(--shadow-md);font-size:.875rem;line-height:1.4;text-align:center;pointer-events:none}html[data-theme] .library-row :is(.library-score,.library-status):empty{visibility:hidden}html[data-theme] .library-search svg{flex:0 0 auto;width:16px;height:16px;color:var(--color-text-tertiary)}html[data-theme] #contentWrapper :is(.page-header,.ld-header,.grade-trend-header)>h2,html[data-theme] #contentWrapper :is(.page-header,.ld-header,.grade-trend-header)>div>h2{font-family:var(--font-editorial);font-weight:500;letter-spacing:-.01em}html[data-theme] #contentWrapper :is(.page-header,.ld-header,.grade-trend-header)>h2,html[data-theme] #contentWrapper :is(.page-header,.ld-header,.grade-trend-header)>div>h2{font-size:clamp(1.75rem,2.6vw,2.25rem);line-height:1.15}html[data-theme=dark] :is(.ld-path-step img,.sketch-empty-art){padding:6px;background:#f1ebe1;border-radius:var(--radius-md)}html[data-theme] .learning-dashboard :is(.ld-syllabus-empty,.ld-syllabus-note){margin:var(--spacing-3) 0 0;color:var(--color-text-secondary);font-size:var(--text-caption);line-height:1.5}
