/* Styles are scoped to note.html; the portal and timed drills keep their design. */
:root{--primary:#6246c4;--depth:#5337ac}
.note-intro{padding-bottom:28px}.note-intro .eyebrow{font-size:13px;letter-spacing:.08em}
.intro-symbol{color:#b69aef;font-size:52px;letter-spacing:.2em;line-height:1.2;padding:0 24px;font-family:Georgia,serif}
.practice-settings{border:1px solid var(--line);background:#fff;border-radius:10px;padding:24px;margin-bottom:18px}
.practice-settings h2{font-size:18px;margin-bottom:20px}.settings-row{display:flex;gap:36px;flex-wrap:wrap}
.settings-row fieldset{border:0;padding:0;margin:0;min-width:0}.settings-row legend{font-size:14px;margin-bottom:10px}
.setting-options{display:flex;gap:8px;flex-wrap:wrap}.setting-button{border:1px solid #b9adce;border-radius:7px;padding:10px 16px;background:#fff;min-height:46px}
.setting-button[aria-pressed=true]{background:var(--depth);color:#fff;border-color:var(--depth)}
.settings-note,.privacy-note{font-size:13px;line-height:1.9;color:var(--muted);margin-top:16px}
.review-entry{border-radius:10px;background:#f6f2fd}.review-entry .primary{flex-shrink:0}
.theme{border-radius:9px;min-width:0}.theme h3{line-height:1.6}.theme p{min-height:0;font-size:14px}.theme-number{font-family:inherit;letter-spacing:0;font-size:12px}.theme-bottom{margin-top:auto;padding-top:16px;gap:10px}.theme p{padding-bottom:20px}
.more-practice{border-top:1px solid var(--line);margin-top:28px;padding-top:12px}.more-practice summary{padding:16px 0;cursor:pointer;font-size:18px;font-weight:600;line-height:1.7;min-height:48px}.more-practice summary span{font-size:13px;font-weight:400;color:var(--muted);margin-left:12px}.more-practice>p{font-size:14px;line-height:1.9;color:var(--muted);margin:0 0 18px}
.training-links{display:flex;gap:16px;flex-wrap:wrap}.training-links a{display:block;border-radius:10px;line-height:1.8;min-height:64px}.training-links small{display:block;font-size:12px;color:var(--muted)}
.beginner-guide{list-style:none;display:flex;flex-wrap:wrap;gap:20px;padding:26px 0 0;margin:0}.beginner-guide li{font-size:14px;line-height:1.8}.beginner-guide b{color:var(--depth);margin-right:8px}.privacy-note{margin-bottom:28px}
.workspace-title h1{font-size:clamp(22px,3vw,30px);overflow-wrap:anywhere}.workspace-title>div{min-width:0}.workspace-title{align-items:center}.progress-text{white-space:nowrap;color:var(--depth);font-size:16px;font-weight:700}.workspace-nav .text-button{font-size:14px;padding:10px 0}.workspace-nav>span{white-space:nowrap}
.paper-top{font-size:13px;line-height:1.7}.problem-label{font-size:14px}.problem{font-variant-numeric:tabular-nums}.problem:focus,.finish h1:focus{outline:none}.answer-label,.input-note{font-size:14px}.input-note{line-height:1.9}.feedback{font-size:16px;overflow-wrap:anywhere}.side-note{font-size:14px}
.answer-row{flex-wrap:wrap;align-items:center}.answer-row>.answer-input{flex:1;min-width:120px}.answer-row>.primary{width:auto;white-space:normal}.answer-input{min-height:56px}.primary,.outline{min-height:48px}.help .text-button{font-size:15px;min-height:48px}.help .outline{font-size:15px}.hints li{font-size:16px}
.pair-input{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.pair-input label,.fraction-input label{display:block;font-size:14px;line-height:1.8}.pair-input input{margin-top:6px}.fraction-input{grid-template-rows:auto 2px auto;max-width:160px;min-width:120px;flex:0 1 160px;gap:8px}.fraction-input input{width:100%;font-size:24px;margin-top:2px}.fraction-input .fraction-bar{font-size:0}.fraction-input label{text-align:center}
.result-page{max-width:850px;margin:38px auto 48px}.result-counts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:24px 0}.result-counts>div{background:#f0eaf9;border:1px solid #ddd3ef;border-radius:9px;padding:18px 8px;min-width:0}.result-counts strong{font-size:36px;color:var(--depth);display:block;line-height:1.3}.result-counts span{display:block;font-size:14px;line-height:1.8;margin-top:8px}
.retry-summary{background:#eaf3ee;padding:16px;border-radius:8px;margin-bottom:20px}.result-list{text-align:left;border:1px solid var(--line);border-radius:9px;background:#fff;margin:18px 0}.result-list>summary{padding:18px;cursor:pointer;font-size:16px;line-height:1.8}.result-list ol{list-style:none;margin:0;padding:0 20px}.result-item{border-top:1px solid var(--line);padding:20px 0}.result-top{display:flex;flex-wrap:wrap;justify-content:space-between;gap:10px;margin-bottom:10px}.result-item .result-problem{font-size:20px;color:var(--ink);overflow-wrap:anywhere;margin:8px 0}.result-item p{font-size:14px;overflow-wrap:anywhere}.result-item .result-meta{color:var(--muted);font-size:13px}.result-item summary{padding:12px 0;cursor:pointer;min-height:48px;color:var(--depth)}.result-item details p{background:#f5f1fa;padding:12px}.outcome{font-size:13px;border-radius:5px;padding:4px 9px;background:#f0eaf9;color:#513787}.outcome.independent{background:#eaf3ee;color:#2b5941}.outcome.explained{background:#fbf0dd;color:#715020}
dialog{max-width:min(92vw,490px);border:1px solid var(--line);border-radius:12px;padding:26px;color:var(--ink);box-shadow:0 20px 70px #21173433}dialog::backdrop{background:#20173655}dialog h2{font-size:20px;line-height:1.7}dialog p{margin:12px 0;font-size:15px;line-height:1.8}.dialog-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:20px}summary:focus-visible{outline:3px solid var(--accent);outline-offset:3px}
@media(max-width:700px){.intro-symbol{font-size:36px;padding-right:0}.practice-settings{padding:20px}.settings-row{gap:20px}.setting-button{padding:10px 12px}.section-line{align-items:flex-start;flex-direction:column;gap:8px}.section-line span{font-size:12px}.review-entry{padding:22px}.review-entry .primary{width:100%}.result-counts{gap:7px}.result-counts span{font-size:12px}.finish-actions{flex-direction:column}.result-list ol{padding:0 16px}.paper-top{padding:15px 20px}.workspace-nav{gap:12px}.workspace-title{align-items:flex-start}.progress-text{margin-top:9px;font-size:14px}}
@media(max-width:430px){.site-header{flex-wrap:wrap;gap:0 12px;padding:12px 0}.portal-back{font-size:11px}.brand{font-size:15px}.brand img{width:25px}.intro-symbol{display:none}.intro h1{font-size:30px}.intro-copy{font-size:14px}.catalog{grid-template-columns:minmax(0,1fr);gap:12px}.theme{padding:20px}.theme h3{font-size:19px;margin:7px 0}.theme-symbol{font-size:30px;height:34px}.theme p{min-height:0;padding-bottom:16px}.theme-bottom{font-size:13px}.practice-settings{padding:18px 14px}.setting-options{gap:6px}.settings-row fieldset:first-child{width:100%}.settings-row fieldset:first-child .setting-options{display:grid;grid-template-columns:repeat(4,minmax(0,1fr))}.setting-button{font-size:14px;padding:10px 5px}.answer-area,.problem-zone{padding:22px 18px}.answer-row>.primary{width:100%;font-size:15px}.answer-row>.answer-input{flex-basis:100%}.fraction-input{flex-basis:160px}.workspace-title h1{font-size:23px}.workspace-title p:last-child{font-size:14px}.workspace-nav .text-button{font-size:13px}.more-practice summary span{display:block;margin-left:18px}.pair-input{gap:12px}.result-counts strong{font-size:30px}.result-counts>div{padding:14px 4px}.dialog-actions>*{width:100%}}
@media(max-width:360px){.setting-button{font-size:13px;padding-inline:4px;white-space:nowrap}}
