:root{--bg: #0f1115;--bg-elev: #161922;--bg-elev-2: #1d212c;--line: #262b38;--line-soft: #2a3140;--text: #e7e9ee;--text-dim: #a2a8b6;--text-faint: #7d8598;--accent: #5b8def;--accent-deep: #4a78e0;--accent-soft: rgba(91, 141, 239, .16);--danger: #ef4444;--good: #22c55e;--warn: #f59e0b;--radius: 14px;--radius-sm: 8px;--card-grad: linear-gradient(180deg, #1a1e2a 0%, #151823 100%);--card-shadow: inset 0 1px 0 rgba(255, 255, 255, .04), 0 10px 24px -16px rgba(0, 0, 0, .7);--font: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif}button>svg,.study-citation-link>svg,.study-explain-btn>svg,.mock-timer>svg{vertical-align:-2.5px}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html,body,#root{height:100%}html{-webkit-text-size-adjust:100%}body{margin:0;background:var(--bg);color:var(--text);font-family:var(--font);-webkit-font-smoothing:antialiased;overflow-x:hidden;overscroll-behavior:none}button{font-family:inherit}a{color:var(--accent);text-decoration:none}:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:4px}button:focus-visible,.action-card:focus-visible,.study-cta:focus-visible,.app-tab:focus-visible,.study-option:focus-visible{outline:2px solid var(--accent);outline-offset:2px}button{-webkit-touch-callout:none;-webkit-user-select:none;user-select:none;touch-action:manipulation}input[type=text],input[type=search],input[type=number],textarea{-webkit-appearance:none;-moz-appearance:none;appearance:none}input[type=search]::-webkit-search-decoration{-webkit-appearance:none}@media (max-width: 720px){input[type=text],input[type=search],input[type=number],input[type=date],textarea,select{font-size:16px!important}}.app-shell{display:flex;flex-direction:column;height:100vh;height:100dvh;padding-left:env(safe-area-inset-left);padding-right:env(safe-area-inset-right)}.app-topbar{flex:0 0 auto;display:flex;align-items:center;gap:18px;padding:10px 18px;padding-top:calc(10px + env(safe-area-inset-top));border-bottom:1px solid var(--line);background:var(--bg-elev)}.app-brand{font-weight:800;letter-spacing:-.01em;font-size:16px}.app-version{font-size:9px;font-weight:400;color:var(--text-faint);letter-spacing:0;vertical-align:2px}.app-tabs{display:flex;gap:6px}.app-tab{display:flex;align-items:center;gap:7px;background:none;border:1px solid transparent;color:var(--text-dim);border-radius:999px;padding:7px 16px;cursor:pointer;font-size:14px;font-weight:600}.app-tab svg{flex:0 0 auto}.app-tab:hover{color:var(--text);background:#ffffff0a}.app-tab.is-active{color:var(--text);background:var(--accent-soft);border-color:#5b8def66}.app-topbar-right{margin-left:auto;display:flex;align-items:center}.app-ai-chip{font-size:11px;padding:4px 10px;border-radius:999px;border:1px solid var(--line);white-space:nowrap;cursor:default;font-variant-numeric:tabular-nums}.app-ai-chip{background:none}.app-ai-chip.is-on{color:var(--good);border-color:#22c55e4d;background:#22c55e14}.app-ai-chip.is-off{color:var(--text-faint)}.app-ai-wrap{position:relative}.app-ai-menu{position:absolute;right:0;top:calc(100% + 6px);z-index:20;background:var(--bg-elev);border:1px solid var(--line);border-radius:var(--radius-sm);box-shadow:0 12px 32px #00000080;padding:5px;min-width:220px;max-height:360px;overflow-y:auto}.app-ai-menu-head{font-size:10px;text-transform:uppercase;letter-spacing:.05em;color:var(--text-faint);padding:6px 8px}.app-ai-menu-item{display:block;width:100%;text-align:left;background:none;border:none;color:var(--text-dim);padding:7px 8px;border-radius:6px;cursor:pointer;font-size:12.5px;font-family:ui-monospace,monospace;white-space:nowrap}.app-ai-menu-item:hover{background:#ffffff0d;color:var(--text)}.app-ai-menu-item.is-active{color:var(--good)}@media (max-width: 720px){.app-ai-wrap{display:none}}.app-main{flex:1;min-height:0;display:flex;flex-direction:column}@media (max-width: 720px){.app-topbar{padding:8px 16px;padding-top:calc(8px + env(safe-area-inset-top));justify-content:center}.app-tabs{position:fixed;left:0;right:0;bottom:0;z-index:30;display:flex;gap:0;background:var(--bg-elev);border-top:1px solid var(--line);padding:6px 8px calc(6px + env(safe-area-inset-bottom));padding-left:calc(8px + env(safe-area-inset-left));padding-right:calc(8px + env(safe-area-inset-right))}.app-tab{flex:1;min-height:48px;border-radius:10px;flex-direction:column;justify-content:center;gap:3px;padding:6px 4px 5px;font-size:10.5px;font-weight:600;letter-spacing:.01em}.app-tab svg{width:20px;height:20px}.app-tab.is-active{background:none;border-color:transparent;color:var(--accent)}.app-topbar-right{display:none}}.study-view{padding:24px 30px 40px;overflow-y:auto;flex:1;display:flex;flex-direction:column;min-height:0;max-width:760px;width:100%;margin:0 auto}.study-loading,.study-empty{color:var(--text-dim);padding:32px 8px;text-align:center}.study-empty{display:flex;flex-direction:column;align-items:center;gap:8px}.study-error{color:var(--danger);background:#ef444414;border:1px solid rgba(239,68,68,.3);border-radius:var(--radius-sm);padding:12px 14px}.study-welcome{background:linear-gradient(135deg,#5b8def29,#22c55e14);border:1px solid rgba(91,141,239,.35);border-radius:16px;box-shadow:var(--card-shadow);padding:16px 18px;margin-bottom:16px;flex-shrink:0}.study-welcome-title{font-weight:700;font-size:15px;margin-bottom:10px}.study-welcome-list{margin:0 0 14px;padding-left:18px;display:flex;flex-direction:column;gap:7px}.study-welcome-list li{font-size:13.5px;line-height:1.5;color:var(--text-dim)}.study-welcome-list strong{color:var(--text)}.study-welcome-go{width:100%}@media (min-width: 1100px){.study-home{max-width:1060px}.study-home .study-actions,.study-home .study-topic-grid{grid-template-columns:repeat(3,1fr)}}.study-header{display:block;margin-bottom:20px}.study-title{font-size:28px;font-weight:800;letter-spacing:-.02em;line-height:1.15}.study-subtitle{color:var(--text-dim);font-size:13px;margin-top:5px;line-height:1.45}.study-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;margin-bottom:20px}.study-stat{background:var(--card-grad);border:1px solid var(--line-soft);border-radius:var(--radius);box-shadow:var(--card-shadow);padding:13px 4px 11px;text-align:center;overflow:hidden}.study-stat-num{font-size:23px;font-weight:800;color:var(--text);font-variant-numeric:tabular-nums;line-height:1.1}.study-stat-flame{color:var(--warn);margin-left:3px}.study-stat-flame svg{vertical-align:-1px}.study-stat-label{font-size:9.5px;color:var(--text-faint);margin-top:4px;text-transform:uppercase;letter-spacing:.07em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.study-actions{display:flex;flex-direction:column;gap:10px;margin-bottom:24px}@media (min-width: 721px){.study-actions{display:grid;grid-template-columns:1fr 1fr;gap:12px}.study-actions .action-card.is-primary{grid-column:1 / -1}}.action-card{display:flex;align-items:center;gap:14px;width:100%;background:var(--card-grad);border:1px solid var(--line-soft);border-radius:16px;box-shadow:var(--card-shadow);padding:14px 16px;color:var(--text);cursor:pointer;text-align:left;transition:border-color .13s,transform .13s,box-shadow .13s}.action-card:hover{border-color:#5b8def73;transform:translateY(-1px)}.action-card:active{transform:translateY(0) scale(.995)}.action-icon{flex:0 0 auto;width:40px;height:40px;display:flex;align-items:center;justify-content:center;border-radius:12px;background:var(--accent-soft);color:var(--accent);border:1px solid rgba(91,141,239,.25)}.action-body{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.action-title{font-size:15.5px;font-weight:650;line-height:1.3}.action-sub{font-size:12.5px;color:var(--text-dim);line-height:1.4}.action-chev{flex:0 0 auto;color:var(--text-faint);font-size:20px;line-height:1;padding-bottom:2px}.action-card.is-primary{background:linear-gradient(135deg,var(--accent) 0%,var(--accent-deep) 100%);border-color:#5b8def99;box-shadow:inset 0 1px #ffffff2e,0 10px 26px -12px #5b8def8c}.action-card.is-primary .action-title{color:#fff}.action-card.is-primary .action-sub{color:#ffffffbf}.action-card.is-primary .action-icon{background:#ffffff29;color:#fff;border-color:#ffffff40}.action-card.is-primary .action-chev{color:#fff9}@media (hover: none){.action-card:hover{border-color:var(--line-soft);transform:none}.action-card.is-primary:hover{border-color:#5b8def99}}.study-cta{display:flex;flex-direction:column;align-items:flex-start;gap:2px;background:var(--card-grad);border:1px solid var(--line-soft);border-radius:var(--radius);box-shadow:var(--card-shadow);padding:14px 18px;color:var(--text);font-size:16px;font-weight:600;cursor:pointer;text-align:left;min-height:52px;transition:background .12s,border-color .12s}.study-cta:hover{background:var(--bg-elev-2);border-color:var(--accent)}.study-cta-primary{background:var(--accent);border-color:var(--accent);color:#fff}.study-cta-primary:hover{filter:brightness(1.08);background:var(--accent)}.study-cta-sub{font-size:12px;font-weight:400;opacity:.8}.study-section{margin-bottom:22px}.study-section-title{font-size:13px;text-transform:uppercase;letter-spacing:.05em;color:var(--text-faint);margin:0 0 10px}.study-weak-row{display:flex;justify-content:space-between;align-items:center;width:100%;background:#f59e0b14;border:1px solid rgba(245,158,11,.25);border-radius:var(--radius-sm);padding:11px 14px;margin-bottom:8px;cursor:pointer;color:var(--text)}.study-weak-row:hover{background:#f59e0b24}.study-weak-topic{font-weight:600}.study-weak-acc{font-size:12px;color:var(--warn)}.hot-row{display:block;width:100%;text-align:left;background:var(--bg-elev);border:1px solid var(--line);border-radius:var(--radius-sm);padding:10px 14px;margin-bottom:8px;cursor:pointer;color:var(--text)}.hot-row:hover{border-color:#5b8def66}.hot-row-top{display:flex;justify-content:space-between;align-items:baseline;gap:10px}.hot-row-name{font-weight:600;font-size:14px}.hot-row-meta{font-size:12px;color:var(--text-dim);white-space:nowrap}.hot-bar{height:5px;border-radius:999px;background:var(--line);margin-top:7px;overflow:hidden}.hot-bar-fill{display:block;height:100%;border-radius:999px;background:var(--accent)}.hot-sec{display:flex;gap:8px;margin-bottom:8px;align-items:stretch}.hot-sec-main{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px;text-align:left;background:var(--bg-elev);border:1px solid var(--line);border-radius:var(--radius-sm);padding:10px 14px;cursor:pointer;color:var(--text)}.hot-sec-main:hover{border-color:#5b8def66}.hot-sec-cite{font-family:var(--mono, ui-monospace, monospace);font-size:13px;color:var(--accent);font-weight:600}.hot-sec-title{font-size:12px;color:var(--text-dim)}.hot-sec-meta{font-size:12px;color:var(--text-faint)}.hot-sec-drill{flex:0 0 auto;align-self:stretch;background:var(--accent-soft);border:1px solid rgba(91,141,239,.4);border-radius:var(--radius-sm);color:var(--text);font-size:12px;font-weight:600;padding:0 12px;cursor:pointer;white-space:nowrap}.hot-sec-drill:hover{background:var(--accent);color:#fff}.hot-area-row{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:7px 2px;border-bottom:1px solid var(--line);font-size:13px}.hot-area-row:last-of-type{border-bottom:none}.hot-area-name{min-width:0}.study-topic-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}.study-topic-chip{display:flex;flex-direction:column;gap:3px;background:var(--bg-elev);border:1px solid var(--line);border-radius:var(--radius-sm);padding:11px 13px;cursor:pointer;color:var(--text);text-align:left;min-height:48px}.study-topic-chip:hover{border-color:var(--accent);background:var(--bg-elev-2)}.study-topic-name{font-size:13px;font-weight:600;line-height:1.25}.study-topic-meta{font-size:11px;color:var(--text-faint)}.study-drill-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.study-back{background:none;border:none;color:var(--accent);font-size:15px;cursor:pointer;padding:6px 2px;min-height:36px}.study-progress{color:var(--text-faint);font-size:13px;font-variant-numeric:tabular-nums}.study-q-meta,.study-stem,.study-options,.study-reveal,.study-drill-header,.mock-header,.exam-q-head,.mock-nav,.mock-grid{flex-shrink:0}.study-q-meta{display:flex;gap:8px;align-items:center;margin-bottom:12px;flex-wrap:wrap}.study-q-topic{font-size:11px;font-weight:600;color:var(--accent);background:var(--accent-soft);padding:3px 9px;border-radius:999px}.study-q-exam{font-size:11px;color:var(--text-faint)}.study-q-new{font-size:10px;font-weight:700;color:var(--good);background:#22c55e1f;padding:2px 7px;border-radius:999px;text-transform:uppercase}.study-stem{font-size:17px;line-height:1.5;margin-bottom:18px;color:var(--text)}.study-options{display:flex;flex-direction:column;gap:9px}.study-option{display:flex;align-items:flex-start;gap:12px;background:var(--bg-elev);border:1px solid var(--line);border-radius:var(--radius);padding:13px 15px;cursor:pointer;color:var(--text);text-align:left;font-size:15px;line-height:1.4;transition:background .1s,border-color .1s}.study-option:hover:not(:disabled){border-color:var(--accent);background:var(--bg-elev-2)}.study-option:disabled{cursor:default}.study-option-key{flex:0 0 auto;width:26px;height:26px;border-radius:50%;border:1px solid var(--line);display:flex;align-items:center;justify-content:center;font-weight:700;font-size:13px;color:var(--text-dim)}.study-option-text{padding-top:2px}.study-option.is-chosen{border-color:var(--accent);background:var(--accent-soft)}.study-option.is-correct{border-color:var(--good);background:#22c55e24}.study-option.is-correct .study-option-key{border-color:var(--good);color:var(--good)}.study-option.is-wrong{border-color:var(--danger);background:#ef44441f}.study-option.is-wrong .study-option-key{border-color:var(--danger);color:var(--danger)}.study-option.is-dim{opacity:.55}.study-reveal{margin-top:16px;padding:14px 16px;border-radius:var(--radius);border:1px solid var(--line);background:var(--bg-elev)}.study-reveal.is-correct{border-color:#22c55e66}.study-reveal.is-wrong{border-color:#ef444466}.study-reveal-verdict{font-weight:700;font-size:15px;margin-bottom:10px}.study-reveal.is-correct .study-reveal-verdict{color:var(--good)}.study-reveal.is-wrong .study-reveal-verdict{color:var(--danger)}.study-reveal-multi{font-weight:400;color:var(--text-dim);font-size:13px}.study-next{margin-top:14px;width:100%;align-items:center}.study-next{scroll-margin-bottom:110px}.study-citation{display:flex;flex-direction:column;gap:4px}.study-citation-label{font-size:10px;text-transform:uppercase;letter-spacing:.05em;color:var(--text-faint)}.study-citation-text{font-size:13px;color:var(--text-dim);font-family:ui-monospace,monospace;line-height:1.4}.study-citation-link{align-self:flex-start;background:var(--accent-soft);border:1px solid rgba(91,141,239,.35);color:var(--accent);border-radius:var(--radius-sm);padding:6px 11px;cursor:pointer;font-size:13px;font-family:ui-monospace,monospace;text-align:left;line-height:1.4}.study-citation-link:hover{background:#5b8def47}.study-summary{text-align:center;padding:40px 8px;display:flex;flex-direction:column;align-items:center;gap:8px}.study-summary-score{font-size:48px;font-weight:800;color:var(--text)}.study-summary-label{color:var(--text-dim);margin-bottom:18px}.study-mistake{background:#1418248c;border:1px solid var(--line);border-radius:var(--radius);padding:14px 16px;margin-bottom:12px}.study-mistake-stem{font-size:14px;line-height:1.45;margin:8px 0;color:var(--text)}.study-mistake-ans{display:flex;gap:14px;font-size:12px;margin-bottom:8px}.study-mistake-yours{color:var(--danger)}.study-mistake-correct{color:var(--good)}@media (max-width: 720px){.study-view{padding:16px 14px;padding-bottom:calc(env(safe-area-inset-bottom) + 90px)}.study-stats{gap:8px}.study-stat{padding:12px 4px 10px}.study-stat-num{font-size:20px}.study-topic-grid{grid-template-columns:1fr}.study-stem{font-size:16px}}@media (max-width: 420px){.study-stats{grid-template-columns:repeat(2,minmax(0,1fr))}}.cfr-header{margin-bottom:16px}.cfr-title-row{display:flex;align-items:baseline;gap:12px;flex-wrap:wrap;margin-bottom:12px}.cfr-freshness{font-size:11px;color:var(--good);background:#22c55e1a;border:1px solid rgba(34,197,94,.25);border-radius:999px;padding:3px 10px}.cfr-omnibox{display:flex;align-items:center;gap:8px;background:var(--card-grad);border:1px solid var(--line-soft);border-radius:var(--radius);padding:4px 6px 4px 12px;box-shadow:var(--card-shadow)}.cfr-omnibox:focus-within{border-color:var(--accent);box-shadow:0 0 0 3px #5b8def26}.cfr-omnibox-icon{display:flex;align-items:center;color:var(--text-faint)}.cfr-omnibox input{flex:1;background:transparent;border:none;outline:none;color:var(--text);font-size:15px;padding:9px 2px}.cfr-omnibox input::placeholder{color:var(--text-faint)}.cfr-omnibox-go{background:var(--accent);color:#fff;border:none;border-radius:var(--radius-sm);padding:9px 16px;font-weight:600;cursor:pointer;font-size:14px}.cfr-omnibox-go:hover{filter:brightness(1.08)}.cfr-section{display:flex;flex-direction:column}.cfr-section-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin:10px 0 14px}.cfr-section-cite{font-family:ui-monospace,monospace;font-size:13px;color:var(--accent)}.cfr-section-heading{font-size:21px;font-weight:700;margin:4px 0 0;line-height:1.25}.cfr-bookmark{flex:0 0 auto;background:none;border:1px solid var(--line);border-radius:var(--radius-sm);color:var(--text-faint);font-size:20px;line-height:1;cursor:pointer;width:42px;height:42px;display:flex;align-items:center;justify-content:center}.cfr-bookmark.is-on{color:var(--warn);border-color:var(--warn)}.cfr-section-body{color:var(--text);line-height:1.62;font-size:15.5px}.cfr-section-body p{margin:0 0 13px}.cfr-empty-section{color:var(--text-faint);font-style:italic}.cfr-results-head{display:flex;justify-content:space-between;align-items:center;color:var(--text-dim);font-size:13px;margin-bottom:10px}.cfr-clear{background:none;border:none;color:var(--accent);cursor:pointer;font-size:13px}.cfr-result{display:block;width:100%;text-align:left;cursor:pointer;background:var(--bg-elev);border:1px solid var(--line);border-radius:var(--radius);padding:12px 14px;margin-bottom:9px;color:var(--text)}.cfr-result:hover{border-color:var(--accent);background:var(--bg-elev-2)}.cfr-result-cite{font-family:ui-monospace,monospace;font-size:12px;color:var(--accent)}.cfr-result-heading{font-weight:600;font-size:15px;margin:2px 0 4px}.cfr-result-excerpt{font-size:12.5px;color:var(--text-dim);line-height:1.45}.cfr-bookmark-row{display:flex;gap:10px;align-items:baseline;width:100%;text-align:left;cursor:pointer;background:#f59e0b12;border:1px solid rgba(245,158,11,.22);border-radius:var(--radius-sm);padding:10px 13px;margin-bottom:7px;color:var(--text)}.cfr-bookmark-row:hover{background:#f59e0b21}.cfr-bookmark-cite{font-family:ui-monospace,monospace;font-size:12px;color:var(--warn);flex:0 0 auto}.cfr-bookmark-heading{font-size:14px}.cfr-toc-node{display:flex;flex-direction:column}.cfr-toc-toggle{display:flex;align-items:center;gap:7px;width:100%;text-align:left;cursor:pointer;background:none;border:none;color:var(--text);padding:8px 6px;font-size:13.5px;border-radius:var(--radius-sm)}.cfr-toc-toggle:hover{background:#ffffff0a}.cfr-toc-chev{color:var(--text-faint);font-size:10px;flex:0 0 auto;width:12px}.cfr-toc-label{color:var(--text-dim)}.cfr-toc-section{display:flex;gap:9px;align-items:baseline;width:100%;text-align:left;cursor:pointer;background:none;border:none;color:var(--text);padding:7px 6px;font-size:13px;border-radius:var(--radius-sm)}.cfr-toc-section:hover{background:var(--accent-soft)}.cfr-toc-section-id{font-family:ui-monospace,monospace;font-size:12px;color:var(--accent);flex:0 0 auto}.cfr-toc-section-label{color:var(--text-dim);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cfr-answer{background:var(--accent-soft);border:1px solid rgba(91,141,239,.35);border-radius:var(--radius);padding:13px 15px;margin-bottom:14px}.cfr-answer-label{font-size:10px;text-transform:uppercase;letter-spacing:.05em;color:var(--accent);margin-bottom:6px}.cfr-answer-text{color:var(--text);line-height:1.55;font-size:14.5px;white-space:pre-wrap}.mock-header{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:14px}.mock-timer{font-family:ui-monospace,monospace;font-size:15px;font-weight:700;color:var(--text);background:var(--bg-elev);border:1px solid var(--line);border-radius:999px;padding:5px 13px}.mock-timer.is-low{color:var(--danger);border-color:var(--danger);animation:mock-pulse 1s infinite}@keyframes mock-pulse{50%{opacity:.55}}.mock-nav{display:flex;gap:10px;margin-top:18px}.mock-nav .study-cta{flex:1;align-items:center;min-height:48px}.mock-nav .study-cta:disabled{opacity:.45;cursor:default}.mock-grid{display:grid;grid-template-columns:repeat(10,1fr);gap:6px;margin-top:18px}.mock-grid-cell{height:36px;border:1px solid var(--line);background:var(--bg-elev);color:var(--text-dim);border-radius:6px;cursor:pointer;font-size:12px;font-variant-numeric:tabular-nums}.mock-grid-cell:hover{border-color:var(--accent)}.mock-grid-cell.is-answered{background:var(--accent-soft);color:var(--text);border-color:#5b8def66}.mock-grid-cell.is-current{outline:2px solid var(--accent);outline-offset:1px}.mock-submit-foot{margin-top:16px;width:100%;align-items:center}.mock-result{text-align:center;padding:26px 16px;border-radius:var(--radius);border:1px solid var(--line);margin-bottom:22px}.mock-result.is-pass{border-color:#22c55e80;background:#22c55e14}.mock-result.is-fail{border-color:#ef444473;background:#ef444412}.mock-result-pct{font-size:52px;font-weight:800;line-height:1}.mock-result.is-pass .mock-result-pct{color:var(--good)}.mock-result.is-fail .mock-result-pct{color:var(--danger)}.mock-result-verdict{font-weight:700;font-size:15px;margin:6px 0 4px;letter-spacing:.04em}.mock-result-sub{color:var(--text-dim);font-size:13px}.mock-topic-row{display:flex;align-items:center;gap:10px;margin-bottom:8px}.mock-topic-name{flex:0 0 42%;font-size:13px;color:var(--text-dim);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mock-topic-bar{flex:1;height:8px;background:var(--bg-elev-2);border-radius:999px;overflow:hidden}.mock-topic-fill{display:block;height:100%;background:var(--accent);border-radius:999px}.mock-topic-acc{flex:0 0 auto;font-size:12px;color:var(--text-faint);font-variant-numeric:tabular-nums}@media (max-width: 720px){.mock-grid{grid-template-columns:repeat(8,1fr)}}.mock-grid-cell.is-flagged{border-color:var(--warn);box-shadow:inset 0 0 0 1px var(--warn)}.mock-grid-cell.is-flagged:after{content:"";position:absolute;top:2px;right:2px;width:5px;height:5px;border-radius:50%;background:var(--warn)}.mock-grid-cell{position:relative}.exam-starter{margin-bottom:24px}.exam-launch{background:linear-gradient(135deg,#5b8def29,#22c55e14);border:1px solid rgba(91,141,239,.35);border-radius:16px;box-shadow:var(--card-shadow);padding:16px 18px;display:flex;flex-direction:column;gap:13px}.exam-launch-title{font-size:18px;font-weight:750;letter-spacing:-.01em}.exam-launch-sub{font-size:12.5px;color:var(--text-dim);margin-top:3px;line-height:1.45}.exam-lengths{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.exam-length{display:flex;align-items:baseline;justify-content:center;gap:1px;background:var(--bg-elev);border:1px solid var(--line-soft);color:var(--text-dim);border-radius:10px;padding:12px 4px;cursor:pointer;font-size:20px;font-weight:800;font-variant-numeric:tabular-nums;transition:border-color .12s,color .12s,background .12s}.exam-length-q{font-size:11px;font-weight:600}.exam-length:hover{border-color:var(--accent);color:var(--text)}.exam-length.is-active{background:var(--accent-soft);border-color:var(--accent);color:var(--text)}.exam-launch-meta{font-size:12.5px;color:var(--text-faint);font-variant-numeric:tabular-nums}.exam-launch-go{align-items:center;flex-direction:row;gap:8px;justify-content:center;min-height:50px}@media (hover: none){.exam-length:hover{border-color:var(--line-soft);color:var(--text-dim)}.exam-length.is-active{border-color:var(--accent);color:var(--text)}.exam-refs-toggle:hover{background:var(--accent-soft)}.exam-refs-toggle.is-on:hover{background:var(--accent)}.exam-flag:hover{border-color:var(--line);color:var(--text-dim)}.exam-flag.is-on:hover{border-color:var(--warn);color:var(--warn)}}@media (max-width: 380px){.exam-length{font-size:17px;padding:11px 2px}}.exam-brief{background:var(--card-grad);border:1px solid var(--line-soft);border-radius:16px;box-shadow:var(--card-shadow);padding:20px 20px 18px;display:flex;flex-direction:column;gap:14px}.exam-brief-title{font-size:20px;font-weight:750;letter-spacing:-.01em}.exam-brief-list{margin:0;padding-left:20px;display:flex;flex-direction:column;gap:9px}.exam-brief-list li{font-size:13.5px;color:var(--text-dim);line-height:1.55}.exam-brief-list strong{color:var(--text)}body.exam-mode .app-topbar,body.exam-mode .app-tabs{display:none}body.exam-mode .exam-main{padding-top:calc(14px + env(safe-area-inset-top))}@media (max-width: 720px){body.exam-mode .exam-main{padding-bottom:calc(env(safe-area-inset-bottom) + 24px)}}.exam-review-summary{font-size:14px;color:var(--text-dim);margin-bottom:12px;line-height:1.5}.exam-review-summary strong{color:var(--text)}.exam-review-note{color:var(--warn);font-size:12.5px}.exam-review-filters{display:flex;gap:8px;margin-bottom:12px;flex-wrap:wrap}.exam-review-filter{background:var(--bg-elev);border:1px solid var(--line);color:var(--text-dim);border-radius:999px;padding:7px 14px;cursor:pointer;font-size:12.5px;font-weight:600}.exam-review-filter.is-active{background:var(--accent-soft);border-color:var(--accent);color:var(--text)}.exam-review-list{display:flex;flex-direction:column;gap:6px;margin-bottom:14px}.exam-review-row{display:flex;align-items:center;gap:12px;background:var(--bg-elev);border:1px solid var(--line);border-radius:var(--radius-sm);padding:11px 14px;cursor:pointer;color:var(--text);text-align:left;min-height:44px}.exam-review-row:hover{border-color:var(--accent)}.exam-review-num{font-weight:700;font-variant-numeric:tabular-nums;flex:0 0 44px}.exam-review-state{font-size:12.5px;color:var(--warn)}.exam-review-state.is-answered{color:var(--text-dim)}.exam-review-flag{display:inline-flex;align-items:center;gap:4px;font-size:12px;color:var(--warn);margin-left:auto}.exam-option-row{display:flex;align-items:stretch;gap:8px}.exam-option-row .study-option{flex:1;min-width:0}.exam-strike{flex:0 0 40px;border:1px solid var(--line);background:none;color:var(--text-faint);border-radius:var(--radius-sm);cursor:pointer;font-size:14px}.exam-strike:hover{border-color:var(--danger);color:var(--danger)}.exam-option-row.is-struck .study-option{opacity:.4}.exam-option-row.is-struck .study-option-text{text-decoration:line-through}.exam-option-row.is-struck .exam-strike{border-color:var(--danger);color:var(--danger);background:#ef444414}.review-verdict{font-size:11.5px;font-weight:700;padding:3px 9px;border-radius:999px}.review-verdict.is-right{color:var(--good);background:#22c55e1f}.review-verdict.is-wrong{color:var(--danger);background:#ef44441f}.review-options{display:flex;flex-direction:column;gap:6px;margin:10px 0}.review-option{cursor:default;position:relative;padding:10px 13px;font-size:13.5px}.review-yours{margin-left:auto;flex:0 0 auto;align-self:center;font-size:10.5px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--text-dim)}.mock-timer.is-warn{color:var(--warn);border-color:#f59e0b80}.exam-q-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:12px;flex-wrap:wrap}.exam-flag{flex:0 0 auto;display:inline-flex;align-items:center;gap:6px;background:none;border:1px solid var(--line);color:var(--text-dim);border-radius:999px;padding:6px 12px;cursor:pointer;font-size:12.5px;font-weight:600}.exam-flag:hover{border-color:var(--warn);color:var(--warn)}.exam-flag.is-on{border-color:var(--warn);color:var(--warn);background:#f59e0b1a}.mock-header-tools{display:flex;align-items:center;gap:6px}.exam-category{display:block;font-size:12px;font-weight:700;color:var(--accent);letter-spacing:.02em;margin-bottom:2px}.exam-review-box{flex:0 0 auto;display:inline-flex;align-items:center;gap:7px;border:1px solid var(--line);color:var(--text-dim);background:none;border-radius:999px;padding:6px 13px;cursor:pointer;font-size:12.5px;font-weight:600;-webkit-user-select:none;user-select:none}.exam-review-box input{accent-color:var(--warn);cursor:pointer;margin:0}.exam-review-box:hover{border-color:var(--warn);color:var(--warn)}.exam-review-box.is-on{border-color:var(--warn);color:var(--warn);background:#f59e0b1a}.exam-calc{position:fixed;right:14px;bottom:calc(78px + env(safe-area-inset-bottom));z-index:70;width:220px;background:var(--bg-elev);border:1px solid var(--line);border-radius:var(--radius-sm);box-shadow:0 8px 28px #00000073;padding:10px}.exam-calc-head{display:flex;align-items:center;gap:8px;margin-bottom:8px}.exam-calc-display{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;text-align:right;font-family:var(--mono, ui-monospace, monospace);font-size:20px;color:var(--text);background:var(--bg);border:1px solid var(--line);border-radius:6px;padding:6px 10px}.exam-calc-close{background:none;border:none;color:var(--text-dim);cursor:pointer;font-size:14px;padding:4px 6px}.exam-calc-close:hover{color:var(--text)}.exam-calc-keys{display:grid;grid-template-columns:repeat(4,1fr);gap:6px}.exam-calc-key{background:var(--bg);border:1px solid var(--line);color:var(--text);border-radius:6px;padding:9px 0;cursor:pointer;font-size:15px;font-weight:600}.exam-calc-key:hover{border-color:var(--accent);color:var(--accent)}.exam-calc-key.is-wide{grid-column:span 2}.exam-refs-toggle{display:inline-flex;align-items:center;gap:6px;background:var(--accent-soft);border:1px solid rgba(91,141,239,.35);color:var(--accent);border-radius:999px;padding:6px 13px;cursor:pointer;font-size:13px;font-weight:600}.exam-refs-toggle:hover{background:#5b8def47}.exam-refs-toggle.is-on{background:var(--accent);color:#fff;border-color:var(--accent)}.exam-wrap{height:100%;display:flex;flex-direction:column;min-height:0}.exam-wrap>.exam-main{flex:1;min-height:0}.exam-refs{display:flex;flex-direction:column;min-height:0;background:var(--bg)}.exam-refs-bar{flex:0 0 auto;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:8px 12px;padding-top:calc(8px + env(safe-area-inset-top));border-bottom:1px solid var(--line);background:var(--bg-elev)}.exam-refs-tabs{display:flex;gap:4px}.exam-refs-tab{background:none;border:1px solid transparent;color:var(--text-dim);border-radius:999px;padding:6px 14px;cursor:pointer;font-size:13px;font-weight:600}.exam-refs-tab.is-active{color:var(--text);background:var(--accent-soft);border-color:#5b8def66}.exam-refs-close{background:none;border:none;color:var(--text-dim);cursor:pointer;font-size:13px;padding:8px 10px;min-height:40px}.exam-refs-close:hover{color:var(--text)}.exam-refs-body{flex:1;min-height:0;overflow-y:auto;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;padding-bottom:env(safe-area-inset-bottom)}.exam-refs-body .study-view{max-width:none;margin:0;padding:14px 16px;height:auto}@media (min-width: 900px){.exam-wrap.is-split{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);height:100%}.exam-wrap.is-split>.exam-main{max-width:none;margin:0;height:100%;border-right:1px solid var(--line)}.exam-wrap.is-split>.exam-refs{height:100%}.exam-refs-body .study-view{padding:18px 22px}}.exam-wrap:not(.is-split) .exam-refs{position:fixed;top:0;right:0;bottom:0;left:0;z-index:60}@media (max-width: 899px){.exam-refs-toggle-label,.exam-refs-split{display:none}}.exam-refs-bar-right{display:flex;align-items:center;gap:6px}.exam-refs-split{background:none;border:1px solid var(--line);color:var(--text-dim);border-radius:999px;padding:6px 12px;cursor:pointer;font-size:12px;font-weight:600}.exam-refs-split:hover{border-color:var(--accent);color:var(--text)}.exam-refs-hint{flex:0 0 auto;padding:6px 14px;font-size:11.5px;color:var(--text-faint);background:#f59e0b12;border-bottom:1px solid var(--line)}.exam-hunt-bar{flex:0 0 auto;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:8px 14px;border-bottom:1px solid var(--line);background:#5b8def14;font-size:13px}.exam-hunt-label{min-width:0;color:var(--text);overflow-wrap:anywhere}.exam-hunt-label strong{color:var(--accent);font-family:var(--mono, ui-monospace, monospace);font-weight:600}.exam-hunt-reveal{flex:0 0 auto;background:none;border:1px solid var(--line);color:var(--text-dim);border-radius:999px;padding:4px 11px;cursor:pointer;font-size:12px}.exam-hunt-reveal:hover{border-color:var(--accent);color:var(--accent)}.exam-hunt-done{flex:0 0 auto;font-size:12px;color:var(--text-faint)}.examnav-row{display:flex;align-items:center;gap:10px;width:100%;text-align:left;background:var(--bg-elev);border:1px solid var(--line);border-radius:var(--radius-sm);padding:10px 14px;margin-bottom:14px;cursor:pointer;color:var(--text-dim);font-size:12.5px}.examnav-row strong{color:var(--text)}.examnav-row .examnav-state{flex:0 0 auto;font-size:11px;font-weight:800;letter-spacing:.06em;border-radius:999px;padding:3px 10px;border:1px solid var(--line);color:var(--text-faint)}.examnav-row.is-on{border-color:#5b8def66}.examnav-row.is-on .examnav-state{background:var(--accent);border-color:var(--accent);color:#fff}.examnav-row:not(.is-on){border-color:#f59e0b66}.examnav-row:not(.is-on) .examnav-state{border-color:var(--warn);color:var(--warn)}.exam-search-note{margin:10px 0;padding:10px 12px;border:1px solid var(--line);border-radius:8px;background:var(--bg-elev);color:var(--text-dim);font-size:13px;line-height:1.5}.find-bar{display:flex;align-items:center;gap:8px;flex-wrap:wrap;background:var(--bg-elev);border:1px solid var(--line);border-radius:var(--radius-sm);padding:6px 10px;margin:10px 0}.find-bar-icon{display:flex;align-items:center;color:var(--text-faint)}.find-bar input{flex:1;min-width:120px;background:transparent;border:none;outline:none;color:var(--text);font-size:13.5px;padding:5px 2px}.find-bar input::placeholder{color:var(--text-faint)}.find-bar-count{font-size:12px;color:var(--text-dim);font-variant-numeric:tabular-nums;white-space:nowrap}.find-mark{background:#f59e0b73;color:var(--text);border-radius:2px;padding:0 1px}.find-bar-pages{display:inline-flex;align-items:center;gap:4px;font-size:12px;color:var(--text-faint);flex-wrap:wrap}.find-bar-page{background:var(--accent-soft);border:1px solid rgba(91,141,239,.35);color:var(--accent);border-radius:999px;padding:2px 8px;cursor:pointer;font-size:11.5px}.study-explain-wrap{margin-top:12px;display:flex;align-items:center;gap:10px;flex-wrap:wrap}.study-explain-btn{background:none;border:1px dashed var(--line);color:var(--text-dim);border-radius:var(--radius-sm);padding:8px 13px;cursor:pointer;font-size:13px}.study-explain-btn:hover:not(:disabled){border-color:var(--accent);color:var(--text)}.study-explain-btn:disabled{opacity:.6;cursor:default}.study-explain-error{font-size:12px;color:var(--text-faint);text-align:left;background:none;border:none;padding:4px 0;cursor:pointer;text-decoration:underline}.study-explain-error:hover{color:var(--text-dim)}.study-explain{margin-top:12px;padding:12px 14px;border-radius:var(--radius);background:#a78bfa14;border:1px solid rgba(167,139,250,.3)}.study-explain-label{font-size:10px;text-transform:uppercase;letter-spacing:.05em;color:#a78bfa;margin-bottom:5px}.study-explain-text{color:var(--text);line-height:1.55;font-size:14px;white-space:pre-wrap}.study-stats-btn{border:none;cursor:pointer;padding:0;background:none;width:100%}.study-stats-btn:hover .study-stat{border-color:var(--accent)}.prog-hint{font-size:11px;color:var(--text-faint);margin-top:7px}.refs-freshness-row{display:flex;flex-direction:column;gap:8px;align-items:flex-start;margin-top:14px;padding-top:12px;border-top:1px solid var(--line)}.refs-freshness-row .prog-hint{margin-top:0;line-height:1.5}.prog-master-bar{height:12px;background:var(--bg-elev-2);border-radius:999px;overflow:hidden}.prog-master-fill{display:block;height:100%;background:linear-gradient(90deg,var(--accent),var(--good));border-radius:999px}.prog-cal{display:grid;grid-template-columns:repeat(14,1fr);gap:5px}.prog-cal-cell{height:22px;border-radius:5px;background:var(--accent);display:flex;align-items:center;justify-content:center;font-size:10px;color:#fff;font-variant-numeric:tabular-nums}.prog-cal-cell:not(.is-active){background:var(--bg-elev-2)}.prog-topic{display:block;width:100%;text-align:left;cursor:pointer;background:none;border:none;padding:8px 0;margin-bottom:4px}.prog-topic-head{display:flex;justify-content:space-between;align-items:baseline;gap:8px;margin-bottom:5px}.prog-topic-name{font-size:13px;color:var(--text);font-weight:600}.prog-topic-meta{font-size:11px;color:var(--text-faint);white-space:nowrap}.prog-topic-bar{height:7px;background:var(--bg-elev-2);border-radius:999px;overflow:hidden}.prog-topic-fill{display:block;height:100%;background:var(--accent);border-radius:999px}.prog-topic:hover .prog-topic-fill{filter:brightness(1.15)}.prog-mock-row{display:flex;justify-content:space-between;align-items:center;padding:9px 0;border-bottom:1px solid var(--line);font-size:13px}.prog-mock-date{color:var(--text-dim)}.prog-mock-score.is-pass{color:var(--good);font-weight:700}.prog-mock-score.is-fail{color:var(--danger);font-weight:600}.hts-chapter-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:7px}.hts-chapter-chip{display:flex;gap:9px;align-items:baseline;text-align:left;cursor:pointer;background:var(--bg-elev);border:1px solid var(--line);border-radius:var(--radius-sm);padding:10px 12px;color:var(--text)}.hts-chapter-chip:hover{border-color:var(--accent);background:var(--bg-elev-2)}.hts-chapter-no{font-family:ui-monospace,monospace;font-size:13px;color:var(--accent);font-weight:700;flex:0 0 auto}.hts-chapter-title{font-size:12.5px;color:var(--text-dim);line-height:1.3}.hts-chapter-lines{display:flex;flex-direction:column}.hts-line-btn{background:none;border:none;padding:0;cursor:pointer;text-align:left;width:100%}.hts-line-btn:hover .hts-line{background:var(--accent-soft)}.hts-line{display:flex;gap:10px;align-items:baseline;padding:5px 6px;border-radius:5px;border-bottom:1px solid rgba(255,255,255,.03);font-size:13px}.hts-line-no{font-family:ui-monospace,monospace;font-size:12px;color:var(--accent);flex:0 0 auto;min-width:92px}.hts-line-desc{color:var(--text);flex:1;line-height:1.35}.hts-line-desc.is-header{color:var(--text-dim);font-weight:600}.hts-line-rate{font-size:11.5px;color:var(--good);font-variant-numeric:tabular-nums;flex:0 0 auto}.hts-detail-context{margin:6px 0 4px}.hts-detail-ctx{font-size:12.5px;color:var(--text-faint);line-height:1.4}.hts-detail-chap{font-size:12px;color:var(--text-dim);margin-top:6px}.hts-detail-chap-link{background:none;border:none;padding:0;cursor:pointer;text-align:left;font:inherit;color:var(--accent)}.hts-detail-chap-link:hover{text-decoration:underline}.hts-detail-chap-link span{opacity:.7}.hts-rates{display:flex;flex-direction:column;gap:6px;margin-top:12px}.hts-rate{display:flex;gap:12px;font-size:13.5px}.hts-rate-k{flex:0 0 110px;color:var(--text-faint);text-transform:uppercase;font-size:11px;letter-spacing:.04em;padding-top:2px}@media (max-width: 720px){.hts-chapter-grid{grid-template-columns:1fr}.hts-line-no{min-width:0}}.refs-pager{display:flex;align-items:center;gap:10px;margin:8px 0 14px}.refs-pager .study-cta{flex:0 0 auto;min-height:40px;padding:8px 14px;align-items:center}.refs-pager .study-cta:disabled{opacity:.4;cursor:default}.refs-pageno{color:var(--text-faint);font-size:12px;font-variant-numeric:tabular-nums}.refs-page-text{color:var(--text);line-height:1.6;font-size:14px;white-space:pre-wrap}.refs-source{display:inline-block;margin-top:16px;font-size:12px;color:var(--accent)}.flashcard{display:block;width:100%;text-align:left;cursor:pointer;background:var(--bg-elev);border:1px solid var(--line);border-radius:var(--radius);padding:22px 20px;min-height:200px;color:var(--text);flex-shrink:0}.flashcard:not(.is-flipped):hover{border-color:var(--accent)}.flashcard.is-flipped{cursor:default}.flashcard-stem{font-size:17px;line-height:1.5}.flashcard-hint{color:var(--text-faint);font-size:12px;margin-top:18px;text-align:center}.flashcard-back{margin-top:16px;padding-top:16px;border-top:1px solid var(--line);display:flex;flex-direction:column;gap:12px;max-height:min(46vh,420px);overflow-y:auto;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;padding-right:4px}.flashcard-answer{display:flex;align-items:flex-start;gap:12px}.flashcard-answer-key{flex:0 0 auto;width:30px;height:30px;border-radius:50%;background:#22c55e29;border:1px solid var(--good);color:var(--good);display:flex;align-items:center;justify-content:center;font-weight:700}.flashcard-answer-text{font-size:15.5px;line-height:1.45;padding-top:3px}.flashcard-multi{font-size:12px;color:var(--text-dim)}.flashcard-grades{display:grid;grid-template-columns:repeat(3,1fr);gap:9px;margin-top:14px;scroll-margin-bottom:110px}.flashcard-grade{display:flex;align-items:center;justify-content:center;gap:8px;border-radius:var(--radius);padding:13px;cursor:pointer;font-size:15px;font-weight:600;border:1px solid var(--line);background:var(--bg-elev);color:var(--text)}.flashcard-grade:disabled{opacity:.5;cursor:default}.flashcard-grade.is-again{border-color:#ef444466;color:var(--danger)}.flashcard-grade.is-again:hover:not(:disabled){background:#ef44441f}.flashcard-grade.is-good{border-color:#22c55e66;color:var(--good)}.flashcard-grade.is-good:hover:not(:disabled){background:#22c55e1f}.flashcard-grade.is-easy{border-color:#5b8def66;color:var(--accent)}.flashcard-grade.is-easy:hover:not(:disabled){background:var(--accent-soft)}.flashcard-grade kbd{font-size:10px;background:#ffffff14;border:1px solid var(--line);border-radius:4px;padding:1px 5px;color:var(--text-faint)}@media (max-width: 720px){.flashcard-grade{padding:12px 4px;font-size:13px}.flashcard-grade kbd{display:none}}.hours-card{background:var(--card-grad);border:1px solid var(--line-soft);border-radius:16px;box-shadow:var(--card-shadow);padding:14px 16px;margin-bottom:12px;display:flex;flex-direction:column;gap:13px}.hours-row{display:flex;flex-direction:column;gap:6px}.hours-row-head{display:flex;justify-content:space-between;align-items:baseline;gap:10px}.hours-row-label{font-size:11px;text-transform:uppercase;letter-spacing:.07em;color:var(--text-faint);font-weight:600;white-space:nowrap}.hours-row-val{font-size:12.5px;color:var(--text-dim);font-variant-numeric:tabular-nums;min-width:0;text-align:right}.hours-row-val strong{color:var(--text);font-size:14px}.hours-bar{height:12px;border-radius:999px;overflow:hidden;background:var(--bg-elev-2);box-shadow:inset 0 1px 2px #00000059}.hours-fill{display:block;height:100%;border-radius:999px;min-width:4px;transition:width .4s ease,background-color .4s ease}.hours-foot{font-size:11.5px;color:var(--text-faint);line-height:1.4}.goal-card{background:linear-gradient(135deg,#5b8def24,#22c55e14);border:1px solid rgba(91,141,239,.3);border-radius:var(--radius);padding:14px 16px;margin-bottom:18px}.goal-card-head{display:flex;align-items:center;justify-content:space-between}.goal-countdown{display:flex;align-items:baseline;gap:8px}.goal-days{font-size:28px;font-weight:800;color:var(--text)}.goal-days-label{font-size:13px;color:var(--text-dim)}.goal-edit-btn{background:none;border:none;color:var(--accent);cursor:pointer;font-size:13px;padding:8px 6px;min-height:40px}.goal-bar{height:10px;background:var(--bg-elev-2);border-radius:999px;overflow:hidden;margin:12px 0 8px}.goal-fill{display:block;height:100%;background:linear-gradient(90deg,var(--accent),var(--good));border-radius:999px;transition:width .3s}.goal-meta{display:flex;justify-content:space-between;align-items:center;font-size:12.5px;color:var(--text-dim);flex-wrap:wrap;gap:6px}.goal-meta strong{color:var(--text);font-size:14px}.goal-edit{background:var(--bg-elev);border:1px solid var(--line);border-radius:var(--radius);padding:16px;margin-bottom:18px;display:flex;flex-direction:column;gap:12px}.goal-edit-row{display:flex;flex-direction:column;gap:5px}.goal-edit-row label{font-size:11px;text-transform:uppercase;letter-spacing:.05em;color:var(--text-faint)}.goal-edit-row input{background:var(--bg-elev-2);border:1px solid var(--line);border-radius:var(--radius-sm);padding:10px 12px;color:var(--text);font-size:15px}.goal-edit-row input:focus{outline:none;border-color:var(--accent)}.goal-quick{display:flex;gap:8px;flex-wrap:wrap}.goal-quick-btn{background:var(--accent-soft);border:1px solid rgba(91,141,239,.35);color:var(--accent);border-radius:999px;padding:6px 12px;font-size:12px;cursor:pointer}.goal-quick-btn:hover{background:#5b8def47}.goal-edit-actions{display:flex;gap:10px}.goal-edit-actions .study-cta{flex:1;align-items:center;min-height:44px}.refs-list{margin-top:10px}.refs-ul{margin:0 0 4px;padding-left:20px}.refs-ul li{font-size:13px;color:var(--text);line-height:1.5;margin-bottom:6px}.prog-topic-weight{color:var(--accent);font-weight:400;font-size:11px}.brushup-item{background:var(--bg-elev);border:1px solid var(--line);border-left:3px solid var(--line);border-radius:var(--radius);padding:13px 15px;margin-bottom:10px}.brushup-item.is-stale{border-left-color:var(--warn)}.brushup-item.is-done{border-left-color:var(--good);opacity:.75}.brushup-head{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap}.brushup-heading{font-weight:600;font-size:14.5px}.brushup-why{font-size:12.5px;color:var(--text-dim);margin:6px 0 10px;line-height:1.45}.brushup-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.brushup-mark{background:none;border:1px solid var(--line);color:var(--text-dim);border-radius:var(--radius-sm);padding:7px 12px;cursor:pointer;font-size:12.5px}.brushup-mark:hover{border-color:var(--good);color:var(--good)}.brushup-mark.is-done{border-color:var(--good);color:var(--good);cursor:default}.ce-add{display:flex;gap:8px;flex-wrap:wrap;margin:12px 0;align-items:stretch}.ce-add input{background:var(--bg-elev-2);border:1px solid var(--line);border-radius:var(--radius-sm);padding:9px 11px;color:var(--text);font-size:14px;min-width:0}.ce-add input[type=text]{flex:1 1 140px}.ce-add .ce-credits{flex:0 0 90px}.ce-add input:focus{outline:none;border-color:var(--accent)}.ce-add-btn{flex:0 0 auto;align-items:center;min-height:0;padding:9px 18px}.ce-row{display:flex;align-items:center;gap:10px;padding:9px 4px;border-bottom:1px solid var(--line);font-size:13px}.ce-row-date{color:var(--text-faint);font-variant-numeric:tabular-nums;flex:0 0 88px}.ce-row-title{flex:1;color:var(--text)}.ce-row-credits{color:var(--good);font-weight:600;flex:0 0 auto}.ce-row-del{background:none;border:none;color:var(--text-faint);cursor:pointer;font-size:14px;flex:0 0 auto}.ce-row-del:hover{color:var(--danger)}@media (max-width: 720px){.ce-add input[type=text]{flex:1 1 100%}}.upkeep-status{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:10px}.upkeep-chip{background:var(--bg-elev);border:1px solid var(--line);color:var(--text-dim);border-radius:999px;padding:6px 12px;font-size:12.5px;cursor:pointer}.upkeep-chip strong{color:var(--text)}.upkeep-chip:hover{border-color:var(--accent)}.upkeep-chip.is-warn{border-color:#f59e0b66}.upkeep-chip.is-warn strong{color:var(--warn)}.study-option-text,.hts-line-desc,.ce-row-title,.cfr-omnibox input,.flashcard-answer-text{min-width:0}.study-citation-text,.study-citation-link,.cfr-section-body,.cfr-answer-text,.refs-page-text,.study-explain-text,.study-stem,.study-option-text,.study-mistake-stem,.cfr-result-excerpt,.hts-line-desc,.brushup-why{overflow-wrap:break-word;word-break:break-word}.cfr-section-body,.refs-page-text,.cfr-answer-text,.study-explain-text{-webkit-user-select:text;user-select:text}@media (max-width: 720px){.mock-header,.study-drill-header{flex-wrap:wrap;row-gap:6px}.cfr-section-head{flex-wrap:wrap}.study-title{font-size:22px}.cfr-section-heading{font-size:18px}.mock-result-pct{font-size:44px}.upkeep-chip{padding:8px 13px}.goal-edit-btn,.cfr-clear{padding:8px 6px;min-height:36px}}@media (hover: none){.study-cta:hover{background:var(--bg-elev);border-color:var(--line)}.study-cta-primary:hover{background:var(--accent);border-color:var(--accent);filter:none}.study-option:hover:not(:disabled){border-color:var(--line);background:var(--bg-elev)}.study-option.is-chosen:hover{border-color:var(--accent);background:var(--accent-soft)}.app-tab:hover{color:var(--text-dim);background:none}.app-tab.is-active:hover{color:var(--text);background:var(--accent-soft)}.study-topic-chip:hover,.cfr-result:hover,.hts-chapter-chip:hover{border-color:var(--line);background:var(--bg-elev)}}.beta-banner{display:flex;align-items:center;gap:10px;padding:7px 14px;padding-top:calc(7px + env(safe-area-inset-top));background:#5b8def1a;border-bottom:1px solid rgba(91,141,239,.3);font-size:12.5px;color:var(--text-dim)}.beta-banner-tag{flex:0 0 auto;font-size:10px;font-weight:800;letter-spacing:.08em;background:var(--accent);color:#fff;border-radius:999px;padding:2px 8px}.beta-banner-text{min-width:0}.beta-banner-link{background:none;border:none;padding:0;cursor:pointer;color:var(--accent);font:inherit;text-decoration:underline}.beta-banner-x{flex:0 0 auto;margin-left:auto;background:none;border:none;color:var(--text-faint);cursor:pointer;font-size:13px;padding:4px 6px}.beta-banner-x:hover{color:var(--text)}.beta-modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:90;background:#0000008c;display:flex;align-items:center;justify-content:center;padding:18px}.beta-modal{width:100%;max-width:420px;background:var(--bg-elev);border:1px solid var(--line);border-radius:var(--radius-sm);padding:16px;box-shadow:0 12px 40px #00000080}.beta-modal-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}.beta-modal-p{font-size:13px;color:var(--text-dim);line-height:1.5;margin:8px 0 12px}.beta-input{width:100%;background:var(--bg);border:1px solid var(--line);border-radius:8px;color:var(--text);font:inherit;padding:10px 12px;margin-bottom:10px}.beta-textarea{resize:vertical}.beta-modal-go{width:100%;justify-content:center}.beta-modal-err{margin-top:10px;font-size:12.5px;color:var(--bad, #f87171)}.feedback-btn{display:inline-flex;align-items:center;gap:6px;background:none;border:1px solid var(--line);color:var(--text-dim);border-radius:999px;padding:5px 11px;cursor:pointer;font-size:12.5px}.feedback-btn:hover{border-color:var(--accent);color:var(--accent)}@media (max-width: 640px){.feedback-btn-label{display:none}}.exam-brief-mobile-hint{display:none}@media (max-width: 899px){.exam-brief-mobile-hint{display:list-item}}.app-footer{display:flex;align-items:center;justify-content:center;gap:14px;flex-wrap:wrap;padding:14px 16px calc(14px + env(safe-area-inset-bottom));border-top:1px solid var(--line);color:var(--text-faint);font-size:12px}.app-footer-link{background:none;border:none;padding:0;cursor:pointer;color:var(--text-dim);font:inherit;text-decoration:underline}.app-footer-link:hover{color:var(--accent)}@media (max-width: 720px){.app-footer{display:none}}.home-legal{margin-top:26px;padding-top:14px;border-top:1px solid var(--line);color:var(--text-faint);font-size:12px;text-align:center;flex-shrink:0}.home-legal a{color:var(--text-dim)}@media (min-width: 721px){.home-legal{display:none}}.legal-page{max-width:760px}.legal h1{font-size:24px;margin:4px 0 18px}.legal h2{font-size:15px;margin:22px 0 8px;color:var(--text)}.legal p{font-size:14px;line-height:1.65;color:var(--text-dim);margin:0 0 12px}.legal strong{color:var(--text)}.legal a{color:var(--accent)}.legal code{font-family:var(--mono, ui-monospace, monospace);font-size:12.5px;background:var(--bg-elev);padding:1px 5px;border-radius:4px}.legal-callout{background:#5b8def1a;border:1px solid rgba(91,141,239,.3);border-radius:var(--radius-sm);padding:12px 14px;margin-bottom:20px;font-size:13.5px;line-height:1.6;color:var(--text-dim)}.legal-updated{font-size:12px;color:var(--text-faint);margin:26px 0 40px}
