:root{--paper: #F6F5EF;--paper-2: #F0EFE7;--surface: #FFFFFF;--surface-2: #FBFAF6;--sheet: #FFFEFA;--sheet-line: #DEDCCF;--ink: #1C2B27;--ink-2: #4F605A;--ink-3: #5A6862;--ink-disabled: #6F7A74;--line: #E2E3DA;--line-soft: #ECECE4;--line-strong: #7B877F;--green: #1F5A49;--green-hover: #174838;--green-tint: #E3EDE6;--green-wash: #EEF3EE;--green-ok: #E6EFE9;--blue: #22476A;--blue-ink: #16384F;--blue-tint: #E0EAF2;--blue-wash: #EEF3F7;--blue-line: #9FB8CC;--focus: #2C5878;--ochre: #C3913F;--ochre-ink: #744A0C;--ochre-ink-2: #6E450A;--ochre-tint: #F6EAD3;--ochre-wash: #FFF8EC;--ochre-line: #E9CF9F;--error: #A54A35;--error-ink: #7D2E1E;--error-tint: #FBEDE8;--error-line: #E3B3A5;--s-stable-bg: #1F5A49;--s-stable-ink: #FFFFFF;--s-prov-bg: #C9DCE9;--s-prov-ink: #16384F;--s-prac-bg: #F2DDB6;--s-prac-ink: #5F3B07;--s-unk-bg: #FFFFFF;--s-unk-ink: #46564F;--s-unk-line: #7B877F;--hatch: repeating-linear-gradient(135deg, #E9EAE2 0 5px, #F6F6F1 5px 10px);--font-ui: "PingFang SC", "HarmonyOS Sans SC", "Noto Sans SC", "Microsoft YaHei UI", "Microsoft YaHei", sans-serif;--font-stem: "Songti SC", "Noto Serif SC", "Source Han Serif SC", STSong, SimSun, serif;--font-math: "STIX Two Text", "Cambria Math", "Times New Roman", serif;--font-mono: "SF Mono", Menlo, Consolas, monospace;--fs-display: 28px;--fs-h2: 18px;--fs-h3: 16px;--fs-body: 15px;--fs-small: 14px;--fs-caption: 12.5px;--fs-stem: 19px;--fs-option: 18px;--lh-body: 1.6;--lh-stem: 2;--sp-1: 4px;--sp-2: 8px;--sp-3: 12px;--sp-4: 16px;--sp-5: 20px;--sp-6: 24px;--sp-8: 32px;--sp-10: 40px;--sp-14: 56px;--r-state: 6px;--r-control: 8px;--r-block: 10px;--r-card: 12px;--r-panel: 14px;--r-pill: 999px;--shadow-float: 0 12px 40px rgba(28, 43, 39, .16);--shadow-dialog: 0 20px 60px rgba(28, 43, 39, .25);--scrim: rgba(28, 43, 39, .34);--nav-w: 232px;--rail-w: 72px;--tutor-w: 420px;--tutor-w-tablet: 360px;--content-max: 1120px;--sheet-max: 860px;--tabbar-h: 64px;--hit: 44px;--hit-phone: 48px;--dur: .16s;--ease: cubic-bezier(.2, .6, .2, 1)}html{background:var(--paper)}body{margin:0;font-family:var(--font-ui);font-size:var(--fs-body);line-height:var(--lh-body);color:var(--ink);background:var(--paper);-webkit-font-smoothing:antialiased}*,*:before,*:after{box-sizing:border-box}a:hover{color:var(--green-hover)}.cap{font-size:var(--fs-caption);line-height:1.6;color:var(--ink-3)}.muted{color:var(--ink-2)}.eyebrow{font-size:12px;letter-spacing:.04em;color:#56645e;font-weight:600}.num{font-variant-numeric:tabular-nums}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:var(--hit);padding:0 18px;border-radius:var(--r-control);border:1px solid var(--green);background:var(--green);color:#fff;font:inherit;font-weight:600;line-height:1.2;text-decoration:none;cursor:pointer;white-space:nowrap;transition:background var(--dur) var(--ease)}.btn:hover{background:var(--green-hover);border-color:var(--green-hover);color:#fff}.btn--secondary{background:var(--surface);color:var(--green);border-color:#bfcdc3}.btn--secondary:hover{background:var(--green-wash);color:var(--green-hover)}.btn--ghost{background:transparent;border-color:transparent;color:var(--green);padding:0 10px}.btn--ghost:hover{background:#eaefe9}.btn--sm{min-height:36px;padding:0 12px;font-size:var(--fs-small)}.btn:disabled,.btn[aria-disabled=true]{background:#edeee8;border-color:var(--line);color:var(--ink-disabled);cursor:not-allowed}.seg-opt{display:inline-flex;align-items:center;gap:6px;min-height:40px;padding:0 14px;border-radius:var(--r-control);border:1px solid #7B877F;background:var(--surface);color:var(--ink);font:inherit;font-size:var(--fs-small);cursor:pointer}.seg-opt[aria-pressed=true]{border-color:var(--green);background:#e6efe9;color:var(--green-hover);font-weight:600;box-shadow:inset 0 0 0 1px var(--green)}.seg-opt--pass[aria-pressed=true]{background:var(--green);color:#fff}.seg-opt--partial[aria-pressed=true]{background:var(--s-prac-bg);border-color:var(--ochre-ink);color:var(--s-prac-ink);box-shadow:inset 0 0 0 1px var(--ochre-ink)}.seg-opt--fail[aria-pressed=true]{background:#f7e1da;border-color:var(--error);color:var(--error-ink);box-shadow:inset 0 0 0 1px var(--error)}.seg-opt--unassessed[aria-pressed=true]{background:var(--surface);border:1px dashed var(--ink-disabled);color:#33443e;box-shadow:none}.seg-opt:disabled{background:#f2f2ec;color:#727c76;border-style:dashed;cursor:not-allowed}.view-switch{display:inline-flex;padding:3px;gap:2px;border-radius:9px;background:#e9eae2}.view-switch>*{min-height:36px;padding:0 14px;border:0;border-radius:7px;background:transparent;color:#33443e;font:inherit;font-size:var(--fs-small);cursor:pointer;display:inline-flex;align-items:center;text-decoration:none}.view-switch>[aria-current=true],.view-switch>[aria-pressed=true],.view-switch>[aria-selected=true]{background:var(--surface);color:var(--green);font-weight:600;box-shadow:0 1px 2px #1c2b271f}.chip{display:inline-flex;align-items:center;gap:6px;min-height:24px;padding:2px 10px;border-radius:var(--r-pill);font-size:13px;font-weight:500;line-height:1.3;white-space:nowrap}.chip--training{background:var(--green-tint);color:var(--green)}.chip--verify{background:var(--blue-tint);color:var(--blue)}.chip--help{background:var(--ochre-tint);color:var(--ochre-ink)}.chip--neutral{background:#ecede6;color:#46564f}.chip--warn{background:#fbefe0;color:var(--ochre-ink-2)}.due-badge{display:inline-flex;align-items:center;gap:4px;min-height:22px;padding:1px 8px;border-radius:var(--r-pill);border:1px solid var(--ochre);color:var(--ochre-ink-2);background:var(--ochre-wash);font-size:12px;font-weight:600;white-space:nowrap}.state{display:inline-flex;align-items:center;gap:6px;min-height:28px;padding:2px 10px;border-radius:var(--r-state);font-size:13px;font-weight:600;white-space:nowrap}.state svg{width:12px;height:12px;flex:0 0 auto}.state--stable{background:var(--s-stable-bg);color:var(--s-stable-ink)}.state--provisional{background:var(--s-prov-bg);color:var(--s-prov-ink)}.state--practice{background:var(--s-prac-bg);color:var(--s-prac-ink)}.state--unknown{background:var(--s-unk-bg);color:var(--s-unk-ink);border:1px dashed var(--s-unk-line)}.state--unconfigured{background:var(--hatch);color:#46564f}.state--na{color:#8c958f;font-weight:400}.dist-bar{display:flex;height:12px;gap:2px;border-radius:6px;overflow:hidden}.dist-bar>.stable{background:var(--s-stable-bg)}.dist-bar>.provisional{background:var(--s-prov-bg)}.dist-bar>.practice{background:var(--s-prac-bg)}.dist-bar>.unknown{background:var(--s-unk-bg);border:1px dashed var(--s-unk-line)}.kp-node{display:flex;flex-direction:column;gap:6px;width:100%;padding:10px 12px;border-radius:9px;background:var(--surface);text-align:left;font:inherit;font-size:var(--fs-small);color:var(--ink);cursor:pointer}.kp-node--learned{border:1.5px solid var(--green)}.kp-node--unlearned{border:1.5px dashed #A3ACA4;background:#fcfcf9}.kp-node[aria-pressed=true]{border-color:var(--blue);box-shadow:0 0 0 3px #9fc0d8}.kp-node--unconfigured{background:var(--hatch)}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-card)}.sheet{background:var(--sheet);border:1px solid var(--sheet-line);border-radius:var(--r-card);box-shadow:0 1px #e7e5da,0 8px 24px #1c2b270a;max-width:var(--sheet-max)}.alert{padding:12px 14px;border-radius:var(--r-block);display:flex;flex-direction:column;gap:6px;font-size:var(--fs-small)}.alert--info{background:var(--blue-wash);border:1px solid #C9D7E2}.alert--warn{background:var(--ochre-wash);border:1px solid var(--ochre-line)}.alert--error{background:var(--error-tint);border:1px solid var(--error-line)}.alert--ok{background:var(--green-ok);border:1px solid #C3D7CA}.reserved-card{background:#f4f7fa;border:1px solid #C9D7E2;border-radius:var(--r-card)}.stem{font-family:var(--font-stem);font-size:var(--fs-stem);line-height:var(--lh-stem)}.stem .katex,.stem math{font-size:1.05em}.stem-scroll{overflow-x:auto;max-width:100%}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:0s!important;transition-duration:0s!important}}:root{--legacy-nav-compact: 185px}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button,a,input,select,textarea{outline-offset:4px}button{cursor:pointer;background:var(--green);border:1px solid var(--green);color:var(--surface);padding:10px 18px;border-radius:var(--r-control);font-weight:550}button:hover{filter:brightness(.96)}button:disabled{cursor:not-allowed;opacity:.45}button.text{border:0;background:transparent;color:var(--green);padding:4px 0;text-align:left}a{color:var(--green);text-underline-offset:3px}.secondary{color:var(--green);background:var(--surface);border-color:var(--line-strong)}input:not([type=checkbox]):not([type=file]),select,textarea{width:100%;border:1px solid var(--line-strong);border-radius:var(--r-control);padding:10px 12px;background:var(--surface);color:inherit}textarea{min-height:108px;resize:vertical}input[type=checkbox]{accent-color:var(--green);width:16px;height:16px;flex-shrink:0}h1,h2,h3,p{margin:0}h1{font-size:var(--fs-display);font-weight:650;line-height:1.3;letter-spacing:-.7px}h2{font-size:var(--fs-h2)}h3{font-size:var(--fs-h3)}p{margin:10px 0;color:var(--ink-2)}small{font-size:var(--fs-caption);color:var(--ink-3)}label{display:block}label>select,label>textarea{margin-top:7px}.shell{display:flex;min-height:100vh}.sidebar{width:var(--nav-w);flex-shrink:0;padding:32px 24px;background:var(--paper-2);border-right:1px solid var(--line);position:fixed;inset:0 auto 0 0;display:flex;flex-direction:column}.brand{display:flex;gap:12px;align-items:center;text-decoration:none;font-size:var(--fs-display);font-weight:650}.brand small{display:block;font-size:var(--fs-caption);font-weight:400;letter-spacing:1px}.mark{height:42px;width:42px;border-radius:var(--r-pill);background:var(--green);color:var(--surface);display:grid;place-items:center;font-family:serif;font-size:var(--fs-display)}.profile{margin:36px 0 24px;font-size:var(--fs-small)}.profile span{display:block;font-size:var(--fs-caption);color:var(--ink-3);margin-top:4px}.sidebar nav{display:grid;gap:8px}.sidebar nav button{display:flex;gap:13px;background:none;border:0;color:var(--ink-3);text-align:left;padding:12px 13px;font-weight:400}.sidebar nav button.active{background:var(--green-tint);color:var(--green-hover);font-weight:650}.sidebar nav button>span{font-size:var(--fs-stem);width:20px}.sidebar-bottom{margin-top:auto;font-size:var(--fs-caption);color:var(--ink-3)}.sidebar-bottom button{display:block;margin-top:16px;font-size:var(--fs-small)}.sidebar-bottom small{display:block;margin-top:22px}.local-dot,.topbar i{display:inline-block;width:6px;height:6px;border-radius:var(--r-pill);background:var(--green);margin-right:5px}main{margin-left:var(--nav-w);width:calc(100% - var(--nav-w));padding:0 42px 50px;max-width:1700px}.topbar{display:flex;justify-content:space-between;border-bottom:1px solid var(--line);font-size:var(--fs-caption);color:var(--ink-3);padding:22px 0}.topbar i{margin-left:7px}.page-heading{display:flex;justify-content:space-between;align-items:center;gap:22px;padding:35px 0 26px}.eyebrow{font-size:var(--fs-caption);letter-spacing:2px;color:var(--ink-3);display:block;margin-bottom:12px}.page-heading p{margin-bottom:0}.page-heading button{white-space:nowrap}.metrics{display:grid;grid-template-columns:repeat(4,1fr);margin:0 0 28px;border:1px solid var(--line);border-radius:var(--r-card);background:var(--surface)}.metrics>div{padding:20px 24px;border-right:1px solid var(--line)}.metrics>div:last-child{border:0}.metrics span{font-size:var(--fs-caption);color:var(--ink-3)}.metrics strong{font-size:var(--fs-display);display:block;font-weight:600;line-height:1.4}.metrics strong small{font-size:var(--fs-small);font-weight:400}.metrics small{display:block}.metrics strong small{display:inline}.panel{border:1px solid var(--line);background:var(--surface);border-radius:var(--r-card);margin-bottom:22px;overflow:hidden}.padded{padding:24px}.panel-heading{display:flex;justify-content:space-between;align-items:center;padding:23px 24px 10px;gap:15px}.panel-heading p{font-size:var(--fs-small);margin:5px 0}.search{max-width:220px}.search input{font-size:var(--fs-small)}.filterbar{display:flex;justify-content:space-between;align-items:center;gap:15px;padding:10px 24px 20px;flex-wrap:wrap}.chips{display:flex;gap:6px;flex-wrap:wrap}.chips button{background:none;color:var(--ink-3);border:0;border-radius:var(--r-state);padding:6px 14px;font-size:var(--fs-small)}.chips button.chosen{background:var(--green-wash);color:var(--green);font-weight:600}.legend{display:flex;gap:13px;font-size:var(--fs-caption);color:var(--ink-3)}.legend i{display:inline-block;width:7px;height:7px;border-radius:var(--r-state);margin-right:5px}.legend .unknown{background:var(--s-unk-bg)}.legend .practice{background:var(--s-prac-bg)}.legend .provisional{background:var(--s-prov-bg)}.legend .stable{background:var(--s-stable-bg)}.table-scroll{overflow:auto}.matrix{border-collapse:collapse;width:100%;white-space:nowrap}.matrix th,.matrix td{text-align:left;padding:13px 16px;border-top:1px solid var(--line-soft)}.matrix thead th{font-size:var(--fs-caption);color:var(--ink-3);font-weight:400;background:var(--surface-2)}.matrix th:first-child{padding-left:24px}.matrix tbody th{font-weight:400;min-width:225px}.matrix tbody th button{padding:0;background:none;color:inherit;border:0;font-weight:500;text-align:left}.matrix tbody th small{display:block;font-size:var(--fs-caption);margin-top:2px;color:var(--ink-3)}.cell{font-size:var(--fs-caption);padding:6px 11px;min-width:70px;border:0;font-weight:500;white-space:nowrap}.cell b{margin-left:4px}.cell.unknown{background:var(--s-unk-bg);color:var(--ink-3)}.cell.practice{background:var(--s-prac-bg);color:var(--s-prac-ink)}.cell.provisional{background:var(--s-prov-bg);color:var(--s-prov-ink)}.cell.stable{background:var(--s-stable-bg);color:var(--s-stable-ink)}.count{font-size:var(--fs-small);color:var(--green)}.count small{margin-left:4px}.muted{color:var(--ink-3)}.footnote{font-size:var(--fs-caption);margin:14px 24px 18px;color:var(--ink-3)}.welcome{background:var(--green-wash);border:1px solid var(--line-strong);border-radius:var(--r-card);padding:20px 24px;margin-bottom:24px}.welcome p,.welcome button{font-size:var(--fs-small)}.next-step{padding:16px 0}.next-step p{font-size:var(--fs-small)}.alert{padding:13px 18px;background:var(--green-ok);border-radius:var(--r-control);margin-top:16px;display:flex;justify-content:space-between;gap:20px}.alert.error{background:var(--error-tint);color:var(--error-ink)}.error{color:var(--error-ink)}.question-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:22px 0}.question{border:1px solid var(--line);border-radius:var(--r-block);padding:21px;background:var(--surface)}.tags{display:flex;gap:7px;flex-wrap:wrap;margin-bottom:12px}.tags span{font-size:var(--fs-caption);color:var(--ink-3);background:var(--paper-2);border-radius:var(--r-state);padding:3px 7px}.question p{font-size:var(--fs-small)}.question small{display:block}.reason{border-left:2px solid var(--line-strong);padding-left:9px;font-size:var(--fs-caption)!important}.row-actions{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:15px}.row-actions button{font-size:var(--fs-small)}.row-actions button span{margin-left:15px}.empty{padding:42px 24px;border:1px dashed var(--line-strong);border-radius:var(--r-card);background:var(--surface);text-align:center;margin:22px 0}.compact{padding:18px;font-size:var(--fs-small)}.history-item{padding:24px;background:var(--surface);border:1px solid var(--line);border-radius:var(--r-card);margin-bottom:16px}.history-item .row-actions{margin-top:0;margin-bottom:12px}.history-item .row-actions>span{font-size:var(--fs-caption);color:var(--ink-3)}.history-item ul{padding-left:20px;font-size:var(--fs-small);color:var(--ink-2)}.history-item.voided{border-style:dashed}.note-body{white-space:pre-wrap}.history-item details{margin-top:18px;font-size:var(--fs-small)}summary{cursor:pointer;color:var(--green)}.sources{display:grid;grid-template-columns:1fr 1fr;gap:18px}.gap-link{display:flex;justify-content:space-between;width:100%;border:0;border-top:1px solid var(--line);border-radius:0;background:transparent;color:inherit;padding:14px 0;font-size:var(--fs-small);text-align:left}.gap-link span{font-size:var(--fs-caption);color:var(--ink-3)}.path{overflow-wrap:anywhere;font-size:var(--fs-small)}.overlay{position:fixed;inset:0;background:var(--scrim);z-index:5;display:flex;justify-content:flex-end}.drawer{width:min(570px,100%);background:var(--surface-2);padding:36px 30px;overflow:auto;position:relative;box-shadow:var(--shadow-float)}.drawer h2{font-size:var(--fs-display);padding-right:25px}.drawer h3{margin-top:26px;margin-bottom:10px}.drawer p{font-size:var(--fs-small)}.close{position:absolute;right:20px;top:16px;font-size:var(--fs-display);background:none;border:0;color:var(--ink-3);padding:0 8px}.callout{background:var(--ochre-tint);border-radius:var(--r-control);padding:16px;margin-top:20px;font-size:var(--fs-small)}.callout p{font-size:var(--fs-small);margin-bottom:0}.prerequisite{display:block;width:100%;text-align:left;background:var(--green-wash);border:0;color:var(--green);font-size:var(--fs-small);margin:6px 0}.evidence{border-bottom:1px solid var(--line);padding:12px 0;font-size:var(--fs-small)}.evidence p{font-size:var(--fs-caption);margin:5px 0}.evidence small,.drawer details small{display:block}.drawer details{font-size:var(--fs-caption);margin-top:22px}.drawer .question-list{grid-template-columns:1fr}.drawer .question{padding:17px}.drawer .question h3{margin:0;font-size:var(--fs-h3)}.note-editor{margin:24px 0}.note-editor label{font-weight:600;margin-bottom:8px}.note-editor button{margin-top:8px}.settings-modal{align-self:center;width:min(780px,calc(100% - 32px));max-height:92vh;overflow:auto;margin:auto;background:var(--surface);border-radius:var(--r-panel);padding:30px;position:relative}.settings-modal h3{margin-top:20px;margin-bottom:10px}.settings-modal p{font-size:var(--fs-small)}.knowledge-checks{display:grid;grid-template-columns:1fr 1fr;gap:8px;padding:15px 0;max-height:240px;overflow:auto}.knowledge-checks label{display:flex;align-items:center;gap:8px;font-size:var(--fs-small)}.scope-checks{max-height:170px}.modal-actions{display:flex;gap:12px;position:sticky;bottom:-30px;padding:18px 0;background:var(--surface)}.back{margin-top:20px}.step{display:inline-grid;place-items:center;border:1px solid var(--line-strong);border-radius:var(--r-pill);width:30px;height:30px;font-size:var(--fs-caption);color:var(--ink-3);margin-right:14px;flex-shrink:0}.paper-step{display:flex;gap:6px}.button{display:inline-block;text-decoration:none;border-radius:var(--r-control);background:var(--green);color:var(--surface);padding:10px 18px;margin:8px 0}.answer{background:var(--green-wash);padding:18px;margin-top:20px;border-radius:var(--r-control)}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px;margin-top:22px}.rubrics{margin:20px 0}.rubrics label{display:flex;justify-content:space-between;gap:20px;border-top:1px solid var(--line);padding:14px 0;align-items:center;font-size:var(--fs-small)}.rubrics select{width:140px;flex-shrink:0;margin:0}.rubrics small{display:block}fieldset{border:0;padding:0;margin:20px 0}legend{font-size:var(--fs-small);margin-bottom:10px}.error-checks{display:flex;gap:16px;flex-wrap:wrap}.error-checks label{display:flex;align-items:center;gap:6px;font-size:var(--fs-small)}.photo-input{margin:20px 0;font-size:var(--fs-caption)}.photo-input input{display:block;margin-top:10px}.loading{margin:50px auto;max-width:650px}.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}@media(min-width:1450px){main{padding-left:60px;padding-right:60px}}@media(max-width:1050px){.sidebar{width:var(--legacy-nav-compact);padding:28px 16px}main{margin-left:var(--legacy-nav-compact);width:calc(100% - var(--legacy-nav-compact));padding-left:24px;padding-right:24px}h1{font-size:var(--fs-display)}.metrics>div{padding:16px}.metrics>div>small{font-size:var(--fs-caption)}.question-list{grid-template-columns:1fr}}@media(max-width:720px){.shell{display:block}.sidebar{position:static;width:100%;padding:15px 16px;display:block}.brand{font-size:var(--fs-h2)}.mark{height:35px;width:35px;font-size:var(--fs-display)}.profile,.sidebar-bottom{display:none}.sidebar nav{display:flex;flex-wrap:wrap;gap:4px;margin-top:16px}.sidebar nav button{font-size:var(--fs-caption);padding:8px;gap:6px;flex:1 0 28%;justify-content:center}.sidebar nav button>span{display:none}main{margin:0;width:100%;padding:0 16px 30px}.topbar{padding:14px 0;font-size:var(--fs-caption)}.page-heading{padding:24px 0;align-items:flex-start;flex-direction:column}h1{font-size:var(--fs-display)}.metrics{grid-template-columns:1fr 1fr}.metrics>div:nth-child(2){border-right:0}.metrics>div:nth-child(-n+2){border-bottom:1px solid var(--line)}.metrics strong{font-size:var(--fs-display)}.panel-heading{padding:20px 16px 10px;flex-direction:column;align-items:flex-start}.search{width:100%;max-width:none}.filterbar{padding:10px 16px 16px}.legend{gap:10px}.matrix th,.matrix td{padding:12px 10px}.matrix th:first-child{padding-left:16px}.matrix tbody th{min-width:var(--legacy-nav-compact)}.sources{grid-template-columns:1fr;gap:0}.form-grid{grid-template-columns:1fr}.padded{padding:20px}.knowledge-checks{grid-template-columns:1fr}.rubrics label{align-items:flex-start;flex-direction:column;gap:8px}.rubrics select{width:100%}.drawer{padding:30px 20px}.history-item .row-actions{flex-direction:column;align-items:flex-start}.settings-modal{padding:24px}.modal-actions{bottom:-24px}}.seen-before{display:flex;align-items:center;gap:8px;margin-top:16px;font-size:var(--fs-small)}.verified-stem{margin:20px 0;padding:18px;border:1px solid var(--line);border-radius:var(--r-card);background:var(--sheet)}.verified-stem p{white-space:pre-wrap;line-height:1.9}.rubrics .expected{display:block;max-width:48rem;line-height:1.8;color:var(--ink-2)}.supplement-tasks{margin-top:24px;padding-top:18px;border-top:1px solid var(--line);line-height:1.8}.supplement-tasks ul{padding-left:22px}.practice-filters{display:flex;flex-wrap:wrap;align-items:end;gap:14px;margin:20px 0}.practice-filters label{display:grid;gap:6px;font-size:var(--fs-small);color:var(--ink-3)}.practice-filters select{min-width:132px;padding:9px 12px;border:1px solid var(--line);border-radius:var(--r-control);background:var(--surface);color:var(--ink);font:inherit}.practice-filters .new-filter{display:flex;align-items:center;padding:10px 0;gap:7px}.resource-summary{padding:14px 16px;margin-bottom:16px;background:var(--green-wash);border-radius:var(--r-control)}.resource-summary p,.resource-line{font-size:var(--fs-small);line-height:1.6}.source-figure{margin:18px 0}.source-figure img{display:block;max-width:100%;height:auto;background:var(--surface);border:1px solid var(--line)}.source-figure figcaption{font-size:var(--fs-caption);color:var(--ink-3);margin-top:8px}.question-tags{display:flex;flex-wrap:wrap;gap:6px;margin:12px 0}.question-tags button,.question-tags span{background:var(--green-tint);color:var(--green);border:1px solid var(--line);padding:5px 9px;border-radius:var(--r-state);font-size:var(--fs-caption);line-height:1.5;text-align:left}.question-tags .supplement{background:var(--ochre-tint);color:var(--ochre-ink);border-style:dashed;border-color:var(--ochre-line)}.question-tags button:hover{border-color:var(--green)}.tag-filter{padding:20px 24px;margin:18px 0}.tag-filter h2{font-size:var(--fs-h3);margin:0}.tag-filter>p{color:var(--ink-3);font-size:var(--fs-small)}.tag-filter .practice-filters{margin:12px 0}.tag-options{border:0;padding:8px 0;margin:0;min-width:0}.tag-options legend{font-size:var(--fs-caption);color:var(--ink-3)}.tag-options .chips{flex-wrap:wrap}.tag-options .chips button{font-size:var(--fs-caption);padding:6px 10px;white-space:normal}.tag-filter .filter-result{color:var(--green);margin-bottom:0;font-weight:600}.evidence-filter{margin:0 0 24px;color:var(--ink-3)}.evidence-filter label{display:flex;gap:8px;align-items:center;color:var(--ink)}.weekly-goals{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px;margin:22px 0}.weekly-goals label{display:flex;align-items:center;gap:10px;padding:10px 12px;background:var(--surface-2);border-radius:var(--r-control)}.weekly-goals input,.evidence-filter input{width:auto}.reservation,.pack-item{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:20px 0;border-top:1px solid var(--line)}.practice-pack h3{margin:8px 0}.gap-note{padding:12px 16px;background:var(--ochre-wash);border-radius:var(--r-control)}.weekly-plan input[type=date],.weekly-plan input[type=number]{padding:10px;border:1px solid var(--line);border-radius:var(--r-state)}.practice-pack,.weekly-plan{margin-bottom:24px}@media(max-width:700px){.pack-item,.reservation{align-items:flex-start;flex-direction:column}}.scope-alert{flex-direction:row;align-items:flex-start;flex-wrap:wrap;gap:12px}.scope-alert>span{flex:1 1 26rem}.scope-alert>button{flex:0 0 auto;white-space:nowrap}.corpus-filters{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:16px;margin-bottom:20px}.corpus-filters label{display:flex;flex-direction:column;gap:8px}.corpus-tag-options,.corpus-topics{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:16px;margin:20px 0}.corpus-topic,.corpus-question{border:1px solid var(--line);border-radius:var(--r-block);padding:18px;min-width:0}.corpus-topic label{font-weight:600}.corpus-topic small,.corpus-question small{color:var(--ink-2);display:block;overflow-wrap:anywhere}.corpus-actions{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin-top:20px}.corpus-question h3{overflow-wrap:anywhere}.page-heading.topic-corpus-heading{padding:12px 0 20px}.topic-corpus-heading h1{margin:0}.topic-practice-heading{margin:16px 0}.topic-practice-heading h2{overflow-wrap:anywhere}.topic-practice-filters{display:grid;grid-template-columns:240px minmax(0,1fr);align-items:center;gap:16px;padding:16px;margin-bottom:16px}.topic-practice-filters>label{display:flex;align-items:center;gap:12px;white-space:nowrap}.topic-practice-filters>label select{width:auto;flex:1;min-width:0;margin:0}.topic-practice-filters details[open]{grid-column:1 / -1}.topic-practice-status,.topic-question-meta{display:flex;flex-wrap:wrap;align-items:center;gap:10px}.topic-practice-status button[aria-pressed=true],.sub-navigation button[aria-pressed=true]{background:var(--ink);color:var(--paper)}.topic-practice-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:20px 0}.topic-question{background:var(--surface)}.topic-question h3,.topic-question p{margin:8px 0}.topic-question .corpus-actions{margin:16px 0 12px}.topic-question-meta{justify-content:space-between}@media(max-width:900px){.topic-practice-list{grid-template-columns:minmax(0,1fr)}}@media(max-width:600px){.topic-practice-filters{grid-template-columns:minmax(0,1fr);gap:12px}}button{min-width:var(--hit);min-height:var(--hit)}:focus-visible{outline:2px solid var(--focus);outline-offset:2px}.legend{flex-wrap:wrap}.cell{background:transparent;padding:var(--sp-1)}.cell .state{background:transparent;border:0;padding:0}.cell.unknown{border:1px dashed var(--s-unk-line);color:var(--s-unk-ink)}.row-actions{flex-wrap:wrap}.row-actions>*{min-width:0}@media(max-width:767px){input:not([type=checkbox]):not([type=file]),select,textarea{font-size:var(--fs-h3)}}.btn,.seg-opt{min-width:var(--hit);min-height:var(--hit)}.btn:hover,.seg-opt:hover{filter:none}.btn:disabled,.seg-opt:disabled{opacity:1}.button-field{display:inline-flex;flex-wrap:wrap;align-items:center;gap:var(--sp-2);max-width:100%}.control-reason{display:block;font-size:var(--fs-caption);color:var(--ink-3);white-space:normal}.segmented-choice{display:flex;flex-wrap:wrap;align-items:flex-start;gap:var(--sp-2)}.segmented-option{display:inline-flex;flex-direction:column;gap:var(--sp-1);max-width:100%}.segmented-option .control-reason{max-width:28ch}.state--compact{padding-inline:var(--sp-2)}.inline-alert.alert{margin-block:var(--sp-4);padding:var(--sp-3) var(--sp-4);border-radius:var(--r-block);gap:var(--sp-2);flex-direction:column}.inline-alert.alert--info{background:var(--blue-wash);color:var(--blue-ink);border:1px solid var(--blue-line)}.inline-alert.alert--warn{background:var(--ochre-wash);color:var(--ochre-ink);border:1px solid var(--ochre-line)}.inline-alert.alert--error{background:var(--error-tint);color:var(--error-ink);border:1px solid var(--error-line)}.inline-alert.alert--ok{background:var(--green-ok);color:var(--green-hover);border:1px solid var(--line-strong)}.inline-alert p{color:inherit}.inline-alert>button{align-self:flex-start}.confirm-dialog{width:min(520px,calc(100% - 32px));max-height:calc(100dvh - 32px);margin:auto;padding:var(--sp-6);border:1px solid var(--line-strong);border-radius:var(--r-panel);color:var(--ink);background:var(--surface);box-shadow:var(--shadow-dialog);overflow:auto}.confirm-dialog::backdrop{background:var(--scrim)}.confirm-dialog--warn{border-color:var(--ochre-line)}.confirm-dialog--error{border-color:var(--error-line)}.confirm-dialog h2{margin:0;font-size:var(--fs-h2)}.confirm-dialog-body{margin-block:var(--sp-4) var(--sp-6);color:var(--ink-2);overflow-wrap:anywhere}.confirm-dialog-actions{display:flex;justify-content:flex-end;flex-wrap:wrap;gap:var(--sp-3)}.confirm-dialog-actions .btn{white-space:normal}@media(max-width:767px){.btn--primary{min-height:var(--hit-phone)}.confirm-dialog{padding:var(--sp-5)}.confirm-dialog-actions .btn{flex:1}}.paper-choice{display:inline-block;margin:12px;color:var(--text-muted)}.work-preview img{max-width:100%;object-fit:contain;background:#fff}.work-image{display:block;padding:0!important;border:1px solid var(--line)!important;background:#fff!important;width:100%}.work-image img{display:block;margin:auto;max-height:240px;width:auto}.work-image img.large{max-height:none;width:100%}.work-preview .row-actions{flex-wrap:wrap;gap:12px}.work-page-picker{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;max-height:260px;overflow:auto}.work-page-picker label{display:flex;flex-direction:column;gap:4px}.work-page-picker img{width:100%;background:#fff;border:1px solid var(--line)}.handwriting-picker fieldset{padding:8px}.handwriting-picker small{display:block}.native-writing .sidebar,.native-writing .mobile-nav,.native-writing .app-header,.native-writing .app-nav,.native-writing .phone-nav{display:none!important}.native-writing .app-shell{display:block!important;padding:0!important}.native-writing .main-content,.native-writing main{margin:0!important;padding:12px!important;min-width:0!important;width:100%!important}.native-writing .workbench-heading h1{font-size:18px}.native-writing .workbench-heading .practice-stepper,.native-writing .workbench-meta,.native-writing .paper-guidance{display:none}.native-writing .workbench-question{padding:0}.native-writing .sheet{padding:14px}.native-writing .workbench-actions{position:static;flex-wrap:wrap}.native-writing .app-sidebar,.native-writing .app-tabbar,.native-writing .shell-context{display:none!important}.native-writing .app-workspace,.native-writing .app-content{display:block!important;max-width:none!important;min-width:0!important;width:100%!important}.native-writing .app-main{padding-bottom:12px!important}.native-writing .workbench-heading{margin:0 0 8px;padding:0}.native-writing .workbench-heading h1{margin:0;padding:4px 0}.native-writing .workbench-heading .back,.native-writing .sheet-caption{display:none}.native-writing .phone-practice-tabs{margin:4px 0 8px}.work-selection{display:flex;align-items:center;flex-wrap:wrap;gap:4px 10px}.work-selection small{display:block}.work-picker-dialog{width:min(920px,96vw);max-width:96vw;height:min(900px,92dvh);max-height:92dvh;padding:0;border:1px solid var(--line);border-radius:12px;color:var(--ink);background:var(--surface)}.work-picker-dialog[open]{display:flex;flex-direction:column}.work-picker-dialog::backdrop{background:#10251fcc}.work-picker-dialog header,.work-picker-dialog footer{flex:none;display:flex;align-items:center;flex-wrap:wrap;gap:8px;padding:10px 16px;background:var(--paper)}.work-picker-dialog header strong{margin-right:auto}.work-picker-dialog footer small{display:block;width:100%}.work-picker-body{overflow:auto;min-height:0;flex:1;padding:12px;overscroll-behavior:contain}.work-picker-dialog .work-page-picker{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:14px;max-height:none;overflow:visible}.work-page-picker article{min-width:0;border:1px solid var(--line);border-radius:8px;padding:6px}.work-page-picker .work-thumbnail{width:100%;display:block;padding:0;background:#fff;border:0}.work-page-picker .work-thumbnail img{display:block;width:100%;height:200px;object-fit:contain}.work-page-picker article label{display:flex;align-items:center;gap:8px;min-height:44px}.work-full-image{max-width:720px;margin:auto}.work-full-image img{display:block}.tutor-widget[hidden]{display:none}.tutor-launch{position:fixed;right:24px;bottom:22px;z-index:25;display:flex;align-items:center;gap:8px;padding:5px 18px 5px 5px;border-radius:var(--r-pill);background:var(--sheet);color:var(--green);box-shadow:var(--shadow-float);border:1px solid var(--line);font-size:var(--fs-small)}.sprite{width:58px;height:62px;flex-shrink:0}.sprite.thinking{animation:tutor-breathe 1.8s ease-in-out infinite}@keyframes tutor-breathe{50%{transform:translateY(-4px)}}.tutor-panel{position:fixed;z-index:24;right:18px;top:18px;bottom:104px;width:410px;display:flex;flex-direction:column;background:var(--surface-2);border:1px solid var(--line);border-radius:var(--r-panel);box-shadow:var(--shadow-float);overflow:hidden}.tutor-header{display:flex;align-items:center;gap:10px;padding:12px 18px;background:var(--green-wash);border-bottom:1px solid var(--line)}.tutor-header .sprite{width:45px;height:48px}.tutor-header strong{font-size:var(--fs-h2)}.tutor-header small{display:block;color:var(--ink-2)}.tutor-header button{margin-left:auto;font-size:var(--fs-display)}.tutor-context{padding:10px 18px;border-bottom:1px solid var(--line-soft)}.tutor-context label{display:flex;align-items:center;gap:8px;font-size:var(--fs-caption)}.tutor-context select{min-width:0;flex:1;padding:5px;border:0;background:transparent;font-size:var(--fs-small)}.tutor-context small{display:block;font-size:var(--fs-caption);color:var(--ink-3);margin-top:6px}.tutor-messages{flex:1;min-height:70px;overflow:auto;padding:20px 16px;overscroll-behavior:contain}.tutor-welcome{margin:14px 8px 24px}.tutor-welcome>span{font-size:var(--fs-caption);color:var(--ink-3)}.tutor-welcome h3{font-size:var(--fs-display);font-weight:500;margin:8px 0}.tutor-welcome p{font-size:var(--fs-small);color:var(--ink-2);line-height:1.8}.tutor-message{margin:0 0 18px;padding:13px 15px;background:var(--surface-2);border-radius:var(--r-state) var(--r-panel) var(--r-panel) var(--r-panel);overflow-wrap:anywhere}.tutor-message.user{background:var(--green-tint);margin-left:28px;border-radius:var(--r-panel) var(--r-state) var(--r-panel) var(--r-panel)}.tutor-message>small{display:block;font-size:var(--fs-caption);color:var(--ink-2);margin-bottom:7px}.tutor-rich{white-space:pre-wrap;font-size:var(--fs-small);line-height:1.8}.tutor-equation{display:block;overflow:auto;padding:8px 0}.tutor-rich math{font-size:1.1em}.tutor-incomplete{color:var(--ochre-ink)!important;margin:8px 0 0}.tutor-note{font-size:var(--fs-caption);background:var(--ochre-tint);padding:10px;border-radius:var(--r-block)}.tutor-compose{padding:12px 16px 10px;border-top:1px solid var(--line);background:var(--sheet)}.tutor-modes{display:flex;gap:5px;flex-wrap:wrap;margin-bottom:9px}.tutor-modes button{padding:5px 8px;font-size:var(--fs-caption);border-radius:var(--r-panel);background:transparent;border:1px solid var(--line);color:var(--green)}.tutor-modes button.chosen{background:var(--green);color:var(--surface);border-color:var(--green)}.tutor-compose textarea{width:100%;box-sizing:border-box;resize:vertical;max-height:160px;min-height:70px;border:1px solid var(--line);border-radius:var(--r-block);padding:10px;font-size:var(--fs-small);background:var(--sheet)}.tutor-send{display:flex;gap:8px;align-items:center;margin-top:8px}.tutor-send select{min-width:0;flex:1;font-size:var(--fs-caption);padding:7px 2px;background:transparent;border:0;color:var(--ink-2)}.tutor-send button{padding:8px 14px;font-size:var(--fs-small)}.tutor-status{font-size:var(--fs-caption);color:var(--ink-3);margin-top:8px}.tutor-compose .error{font-size:var(--fs-caption);margin:8px 0 0}.tutor-consent{display:flex;gap:7px;padding:8px;margin-bottom:10px;background:var(--ochre-tint);border-radius:var(--r-control);font-size:var(--fs-caption);line-height:1.6}.tutor-consent input{flex-shrink:0;align-self:flex-start;margin-top:4px}@media(min-width:1200px){body.tutor-visible .shell{margin-right:438px}body.tutor-visible .shell main{padding-left:30px;padding-right:30px}}@media(max-width:600px){.tutor-panel{inset:8px 8px 88px;width:auto;border-radius:var(--r-panel)}.tutor-launch{right:12px;bottom:12px}.tutor-compose{padding:10px 12px}.tutor-header,.tutor-context{padding:8px 14px}.tutor-messages{padding:12px}.tutor-header small{font-size:var(--fs-caption)}}@media(prefers-reduced-motion:reduce){.sprite.thinking{animation:none}}.tutor-context-card{margin-top:8px;border:1px solid var(--line);border-radius:var(--r-control);background:var(--green-wash);font-size:var(--fs-caption)}.tutor-context-card>summary{cursor:pointer;padding:8px;display:grid;grid-template-columns:1fr auto;gap:3px}.tutor-context-card summary span{font-size:var(--fs-caption);color:var(--ink-2)}.tutor-context-card summary strong{grid-column:1/-1;font-size:var(--fs-caption);font-weight:500}.tutor-context-card summary small{grid-row:1;grid-column:2;margin:0}.tutor-context-details{padding:0 10px 10px;max-height:230px;overflow:auto;line-height:1.7}.tutor-context-details>p:first-child{white-space:pre-wrap}.tutor-context-details code{font-size:var(--fs-caption)}.tutor-context-details button,.tutor-context-actions button,.tutor-quote-button{font-size:var(--fs-caption);padding:3px 6px;background:transparent;color:var(--green);border:1px solid var(--line);border-radius:var(--r-state)}.tutor-context-actions{display:flex;gap:8px;margin-top:5px}.tutor-context-actions:empty{display:none}.tutor-quick{display:flex;gap:5px;margin-bottom:7px;flex-wrap:wrap}.tutor-quick button{font-size:var(--fs-caption);background:var(--green-wash);color:var(--green);padding:5px 9px;border-radius:var(--r-control)}.tutor-quote-button{margin-top:8px}.tutor-quote{margin:4px 0 10px;padding:5px 8px;border-left:2px solid var(--line-strong);font-size:var(--fs-caption);white-space:pre-wrap;max-height:110px;overflow:auto}.tutor-quote-preview{background:var(--green-wash);padding:7px 9px;border-radius:var(--r-control);margin-bottom:6px;font-size:var(--fs-caption)}.tutor-quote-preview>button{float:right;padding:0 4px;background:transparent;color:var(--green)}.tutor-quote-preview blockquote{margin:3px 0;max-height:72px;overflow:auto;white-space:pre-wrap}.tutor-quote-preview small{display:block;color:var(--ink-2)}.tutor-draft-state{display:flex;justify-content:space-between;gap:5px;font-size:var(--fs-caption);color:var(--ink-3);margin-top:4px}.tutor-draft-conflict{font-size:var(--fs-caption);padding:6px;background:var(--ochre-tint);max-height:100px;overflow:auto}.tutor-draft-conflict button{font-size:var(--fs-caption);padding:4px 6px;margin-right:5px}.tutor-selection{position:fixed;right:28px;bottom:92px;z-index:40;padding:8px 13px;background:var(--green);color:var(--surface);border-radius:var(--r-panel);font-size:var(--fs-caption)}.tutor-context{flex-shrink:0}.tutor-compose{flex-shrink:0;max-height:56%;overflow:auto}.tutor-messages{min-height:60px}.tutor-context-card[open]~.tutor-context-actions{margin-bottom:3px}@media(max-height:720px){.tutor-header{padding:5px 12px}.tutor-header .sprite{height:33px}.tutor-context-details{max-height:120px}.tutor-context-card>summary{padding:5px}.tutor-compose textarea{min-height:52px}.tutor-panel{bottom:80px;top:8px}.tutor-launch .sprite{height:44px;width:42px}.tutor-compose{max-height:54%}}.tutor-header{flex-shrink:0}.tutor-context{box-sizing:border-box;max-height:32%;min-height:80px;overflow:auto;flex-shrink:1}.tutor-compose{box-sizing:border-box;max-height:50%}@media(max-width:767px){.tutor-compose textarea,.tutor-context select,.tutor-send select{font-size:var(--fs-h3)}}.account-loading,.account-admin{max-width:1180px;margin:auto;padding:32px 24px}.account-login{min-height:100dvh;max-width:1100px;margin:auto;padding:56px 28px;display:flex;align-items:center;justify-content:center;gap:72px}.account-login-intro{flex:1;max-width:490px}.account-brand{color:#316e5e;font-weight:700;letter-spacing:.08em}.account-login-intro h1{font-size:clamp(30px,4vw,46px);line-height:1.4;margin:24px 0}.account-login-intro p{color:#61716b;font-size:17px;line-height:1.9}.account-login-card{width:390px;padding:32px;display:grid;gap:20px}.account-login-card h2{margin:0}.account-login label,.account-admin label,.account-profile label{display:grid;gap:8px}.account-login input,.account-admin input,.account-profile input,.account-profile select{width:100%;box-sizing:border-box;padding:12px;border:1px solid #ccd5cf;border-radius:9px;background:#fff;font:inherit}.account-form{display:grid;gap:18px;align-content:start}.account-form h2,.account-form p{margin:0}.account-form small,.muted{color:#66756f;font-size:13px;line-height:1.7}.account-admin>.panel{margin-top:24px}.account-admin-grid{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:24px;align-items:start}.account-user-list article{padding:20px 0;border-bottom:1px solid #e5e9e5}.account-user-title{display:flex;align-items:center;gap:12px}.account-user-title h3{margin:0 0 5px}.account-avatar{width:42px;height:42px;border-radius:50%;display:grid;place-items:center;background:#e5f0e9;color:#2b6655;font-weight:700}.account-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}.account-check{display:flex!important;align-items:flex-start}.account-check input{width:18px!important;height:18px;flex-shrink:0}.status-badge{margin-left:auto;border-radius:20px;background:#e7f3ea;color:#31664d;font-size:12px;padding:5px 10px;white-space:nowrap}.status-badge.disabled{background:#f2e8e3;color:#824a34}.account-credential{border:2px solid #d8ad58;max-width:580px}.device-label{display:block;overflow-wrap:anywhere;color:#718078;margin:4px 0 12px}.account-profile{display:grid;gap:24px;max-width:900px}.account-fields{display:grid;grid-template-columns:1fr 1fr;gap:20px}.account-fields .wide{grid-column:1/-1}.account-profile-days{display:flex;gap:14px;flex-wrap:wrap}.account-profile-days label{display:flex;align-items:center}.account-profile-days input{width:18px;height:18px}.account-header{display:flex;align-items:center;gap:8px;margin-left:auto;white-space:nowrap}.portrait-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.portrait-stats article{display:grid;gap:8px;border-radius:12px;background:#f1f5ef;padding:22px}.portrait-stats strong{font-size:32px;color:#326d5b}.portrait-stats span{font-size:13px;color:#607167}.portrait-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin:24px 0}.portrait-dimension{margin:22px 0}.portrait-dimension>div{display:flex;justify-content:space-between;gap:10px}.portrait-dimension progress{width:100%;accent-color:#3d8f70;height:12px}.portrait-chart{height:130px;display:flex;align-items:flex-end;gap:5px;margin-top:22px}.portrait-chart>div{flex:1;min-width:3px;background:#4d9377;border-radius:3px 3px 0 0}.portrait-chart-caption{display:flex;justify-content:space-between;color:#6c7a70;font-size:12px}.portrait-evidence{display:flex;justify-content:space-between;gap:16px;padding:15px 0;border-bottom:1px solid #e4e9e4}.portrait-evidence span{display:block;margin:5px 0;color:#69766f;font-size:13px}.portrait-list{display:grid;gap:12px}.portrait-list article{padding:16px;border:1px solid #e1e7e1;border-radius:10px}.portrait-list h3{margin:0 0 10px}.account-orbits{width:210px;height:170px;position:relative;margin:30px auto 0}.account-orbits i{position:absolute;border:1px solid #a9c6b5;border-radius:50%;inset:20px;transform:rotate(-25deg)}.account-orbits i:nth-child(2){inset:0 50px;transform:rotate(35deg)}.account-orbits i:nth-child(3){inset:50px 0;transform:rotate(20deg)}.account-orbits b{position:absolute;inset:0;display:grid;place-items:center;font-size:45px;color:#41866c}.account-login>.account-form{width:430px}.account-login:has(>.account-form){flex-direction:column;gap:20px}.portrait-page>.panel{margin:24px 0}@media(max-width:760px){.account-login{padding:30px 20px;flex-direction:column;gap:26px;align-items:stretch;min-height:auto}.account-login-intro h1{font-size:29px;margin:18px 0 8px}.account-orbits{display:none}.account-login-card,.account-login>.account-form{width:100%;box-sizing:border-box;padding:24px}.account-admin{padding:20px 16px}.account-admin-grid,.account-fields,.portrait-grid{grid-template-columns:1fr}.account-admin-grid>form{order:-1}.portrait-stats{grid-template-columns:1fr 1fr}.portrait-stats article{padding:16px}.account-header{font-size:12px}.account-fields .wide{grid-column:auto}.portrait-evidence{flex-wrap:wrap}.account-user-title h3{overflow-wrap:anywhere}.account-avatar{flex-shrink:0}}.portrait-grid .account-user-title h2{white-space:nowrap}.portrait-grid select{width:auto;max-width:155px;flex:0 0 auto}.portrait-page>.portrait-stats{margin-top:16px}.account-header{display:block;max-width:min(42vw,240px);min-width:0;overflow:hidden;text-overflow:ellipsis;text-align:left}.account-profile h2,.portrait-page h1{overflow-wrap:anywhere}.web-ink-editor{position:fixed;inset:0;z-index:1000;background:var(--paper);display:flex;flex-direction:column;padding:env(safe-area-inset-top) 12px env(safe-area-inset-bottom);gap:8px}.ink-header{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:10px 0}.ink-header h2{margin:0;font-size:20px}.ink-question{background:var(--surface);border:1px solid var(--line);border-radius:10px;padding:8px 12px;max-height:24dvh;overflow:auto;flex:none}.ink-question summary{cursor:pointer}.ink-toolbar{display:flex;align-items:center;gap:6px;overflow-x:auto;flex:none;padding-bottom:3px}.ink-toolbar>*{flex-shrink:0}.ink-toolbar button{padding:6px 12px;min-height:42px}.ink-toolbar button[aria-pressed=true]{background:var(--green);color:#fff}.ink-toolbar label{display:flex;align-items:center;gap:5px;white-space:nowrap;font-size:13px}.ink-toolbar select{width:auto;margin:0;padding:6px}.ink-scroll{flex:1;min-height:100px;overflow:auto;overscroll-behavior:contain;background:#dfe5df;border:1px solid var(--line);border-radius:10px}.ink-paper{margin:auto;max-width:none;background:#fff}.ink-paper canvas{display:block;width:100%;height:auto;user-select:none;-webkit-user-select:none}.ink-zoom-fit{width:min(100%,768px)}.ink-zoom-large{width:150%;min-width:768px}.ink-zoom-max{width:200%;min-width:1024px}.finger-ink{touch-action:none}.pan-ink{touch-action:pan-x pan-y}.ink-footer{display:flex;justify-content:space-between;gap:8px;flex-wrap:wrap;padding:4px 0 12px;flex:none}.ink-footer .row-actions{gap:6px}.ink-footer button{padding:8px 12px}.ink-footer span{white-space:nowrap}.ink-error,.ink-notice{padding:8px 12px;margin:0;background:var(--ochre-tint);font-size:13px;max-height:18dvh;overflow:auto}.ink-error button{margin-left:8px}@media(max-width:767px){.web-ink-editor{padding-left:6px;padding-right:6px;gap:5px}.ink-header{padding:6px}.ink-footer{display:grid;grid-template-columns:minmax(0,1fr);padding-bottom:6px}.ink-footer .row-actions{justify-content:space-between}.ink-footer .row-actions button{font-size:12px;padding:6px 8px}.ink-footer>button{width:100%}.ink-toolbar{gap:4px}.ink-header h2{font-size:18px}}.app-shell{--shell-nav: var(--nav-w);min-height:100dvh}.app-shell--practice{--shell-nav: var(--rail-w)}.app-sidebar{position:fixed;inset:0 auto 0 0;z-index:20;width:var(--shell-nav);padding:var(--sp-6) var(--sp-4);background:var(--paper-2);border-right:1px solid var(--line);display:flex;flex-direction:column;overflow-y:auto}.app-brand{display:flex;align-items:center;gap:var(--sp-3);min-height:var(--hit);padding:0 var(--sp-2);border:0;background:transparent;color:var(--ink);text-align:left;white-space:nowrap}.app-mark{display:grid;place-items:center;flex:0 0 34px;height:34px;background:var(--green);color:var(--surface);border-radius:var(--r-control);font:var(--fs-display) var(--font-stem)}.brand-label{font-size:var(--fs-h2);font-weight:650}.brand-label small{display:block;font-size:var(--fs-caption);font-weight:400}.app-sidebar nav,.app-nav-menu nav{display:grid;gap:var(--sp-1);margin-top:var(--sp-6)}.app-sidebar nav button,.app-nav-menu nav button,.app-tabbar nav button{display:flex;align-items:center;gap:var(--sp-3);min-width:var(--hit);min-height:var(--hit);border:1px solid transparent;background:transparent;color:var(--ink-2);font-weight:400;padding:var(--sp-3);text-align:left}.app-sidebar nav button[aria-current],.app-nav-menu nav button[aria-current]{background:var(--surface);color:var(--green);border-color:var(--line);font-weight:650}.app-sidebar nav button:hover,.app-nav-menu nav button:hover,.app-tabbar nav button:hover{background:var(--green-wash);filter:none}.app-sidebar svg,.app-header svg,.app-tabbar svg,.app-nav-menu svg{width:20px;height:20px;flex-shrink:0}.app-nav-footer{margin-top:auto;padding:var(--sp-8) var(--sp-2) 0;font-size:var(--fs-caption);color:var(--ink-3)}.app-nav-footer p{font-size:var(--fs-caption);color:inherit}.app-nav-footer .text{font-size:var(--fs-small);text-decoration:underline;text-underline-offset:3px}.app-shell--practice .app-sidebar{padding-inline:var(--sp-3)}.app-shell--practice .app-sidebar .app-brand{padding:0;justify-content:center}.app-shell--practice .app-sidebar nav button{justify-content:center;padding-inline:0}.app-shell--practice .app-sidebar .nav-label,.app-shell--practice .app-sidebar .brand-label,.app-shell--practice .app-sidebar .app-nav-footer{display:none}.app-shell .app-main{margin:0 0 0 var(--shell-nav);width:calc(100% - var(--shell-nav));max-width:none;min-width:0;padding:var(--sp-6) var(--sp-8) var(--sp-10)}.app-content{max-width:var(--content-max);min-width:0;margin-inline:auto}.shell-context{display:flex;justify-content:space-between;gap:var(--sp-4);color:var(--ink-3);font-size:var(--fs-caption);margin-bottom:var(--sp-6)}.shell-context .local-dot{margin:0 0 0 var(--sp-2)}.app-header,.app-tabbar{display:none}.sub-navigation{display:flex;flex-wrap:wrap;gap:var(--sp-2);margin-bottom:var(--sp-6)}.sub-navigation button{background:transparent;color:var(--ink-2);border-color:var(--line-strong);font-size:var(--fs-small)}.sub-navigation button[aria-current]{color:var(--green);background:var(--surface);border-color:var(--green)}.app-nav-menu{width:min(320px,100%);height:100dvh;max-height:none;margin:0;padding:var(--sp-6) var(--sp-4);border:0;border-right:1px solid var(--line);background:var(--paper-2);color:var(--ink)}.app-nav-menu[open]{display:flex;flex-direction:column}.app-nav-menu::backdrop{background:var(--scrim)}.menu-heading{display:flex;justify-content:space-between;align-items:center;gap:var(--sp-4)}.menu-heading button{font-size:var(--fs-display);text-align:center}.skip-navigation{position:fixed;top:var(--sp-2);left:var(--sp-2);z-index:60;padding:var(--sp-3);background:var(--surface);transform:translateY(-200%)}.skip-navigation:focus{transform:none}@media(min-width:1280px){body.tutor-visible .app-shell{margin-right:438px}}@media(max-width:1279px){.app-sidebar{display:none}.app-shell .app-main{width:100%;margin-left:0;padding:var(--sp-6)}.app-header{display:flex;position:sticky;top:0;z-index:20;height:60px;align-items:center;gap:var(--sp-4);padding:0 var(--sp-4);background:var(--paper-2);border-bottom:1px solid var(--line)}.app-header .app-brand{padding:0}.app-header .brand-label small{display:none}.header-location{font-size:var(--fs-small);font-weight:600}.menu-trigger{display:grid;place-items:center;padding:var(--sp-2);background:transparent;color:var(--green);border:0}}@media(max-width:767px){.app-shell .app-main{padding:var(--sp-5) var(--sp-4) calc(var(--tabbar-h) + env(safe-area-inset-bottom) + var(--sp-8))}.app-header{height:56px;justify-content:space-between}.menu-trigger{display:none}.shell-context{margin-bottom:var(--sp-4)}.shell-context>span:last-child{display:none}.app-content>.sub-navigation,.map-toolbar .sub-navigation{display:flex;flex-wrap:nowrap;gap:var(--sp-2);margin:0 calc(-1 * var(--sp-4)) var(--sp-5);padding:0 var(--sp-4) var(--sp-1);overflow-x:auto;scroll-snap-type:x proximity;scroll-padding-inline:var(--sp-4);scrollbar-width:none;-webkit-overflow-scrolling:touch}.app-content>.sub-navigation::-webkit-scrollbar,.map-toolbar .sub-navigation::-webkit-scrollbar{display:none}.app-content>.sub-navigation button,.map-toolbar .sub-navigation button{flex:none;scroll-snap-align:start;min-height:40px;padding:6px 14px;font-size:var(--fs-small);white-space:nowrap}.app-content>.evidence-filter{margin:calc(-1 * var(--sp-2)) 0 var(--sp-4);font-size:var(--fs-caption)}.app-content>.evidence-filter select{min-height:40px;min-width:0;padding-block:4px;font-size:var(--fs-caption)}.map-toolbar{flex-direction:row;align-items:center;flex-wrap:wrap;gap:var(--sp-2) var(--sp-3)}.map-toolbar .sub-navigation{flex:1 1 100%;margin-bottom:0}.map-toolbar label{margin-left:auto;font-size:var(--fs-caption)}.map-toolbar select{min-height:40px;padding-block:4px;font-size:var(--fs-caption)}.app-tabbar{display:block;position:fixed;inset:auto 0 0;z-index:30;height:calc(var(--tabbar-h) + env(safe-area-inset-bottom));padding-bottom:env(safe-area-inset-bottom);border-top:1px solid var(--line);background:var(--surface-2)}.app-tabbar nav{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));height:var(--tabbar-h)}.app-tabbar nav button{flex-direction:column;justify-content:center;gap:var(--sp-1);padding:var(--sp-1) 0;border-radius:0;font-size:var(--fs-caption);white-space:nowrap}.app-tabbar nav button[aria-current]{color:var(--green);font-weight:650;background:var(--green-wash)}.app-content .page-heading{flex-wrap:wrap;gap:var(--sp-4)}.app-content .panel-heading{flex-wrap:wrap}.app-content .sources,.app-content .question-list,.app-content .form-grid,.app-content .weekly-goals{grid-template-columns:minmax(0,1fr)}.app-content .row-actions{align-items:flex-start}.app-content .row-actions>*{max-width:100%}.app-content button,.app-content .path{overflow-wrap:anywhere}.tutor-launch{bottom:calc(var(--tabbar-h) + env(safe-area-inset-bottom) + var(--sp-3))}.tutor-panel{bottom:calc(var(--tabbar-h) + env(safe-area-inset-bottom) + 88px)}}.app-workspace{min-width:0}.app-shell--practice .app-main{padding:0}.app-shell--practice .app-workspace{display:flex;align-items:flex-start;min-height:100dvh}.app-shell--practice .app-content{flex:1;width:0;max-width:none;margin:0;padding:var(--sp-6) var(--sp-8) var(--sp-10)}.app-shell--practice .shell-context,.app-shell--practice .sub-navigation{display:none}.workbench-heading{margin-bottom:var(--sp-6)}.workbench-heading .back{margin:0 0 var(--sp-4)}.workbench-heading h1{font-size:var(--fs-display);margin-bottom:var(--sp-3)}.workbench-meta,.context-chips{display:flex;gap:var(--sp-2);flex-wrap:wrap}.practice-stepper{display:flex;gap:var(--sp-4);list-style:none;padding:0;margin:var(--sp-5) 0 0;color:var(--ink-3);font-size:var(--fs-small);flex-wrap:wrap}.practice-stepper li{display:flex;align-items:center;gap:var(--sp-2)}.practice-stepper li span{display:grid;place-items:center;width:24px;height:24px;border:1px solid var(--line-strong);border-radius:var(--r-pill)}.practice-stepper li[aria-current]{color:var(--green);font-weight:600}.practice-stepper li[aria-current] span{background:var(--green);color:var(--surface);border-color:var(--green)}.practice-stepper--verify li[aria-current]{color:var(--blue-ink)}.practice-stepper--verify li[aria-current] span{background:var(--blue);border-color:var(--blue)}.sheet{max-width:var(--sheet-max);background:var(--surface);border:1px solid var(--line);border-radius:var(--r-panel);padding:var(--sp-8)}.sheet-caption,.sheet-footer{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:var(--sp-4);font-size:var(--fs-caption);color:var(--ink-3)}.sheet .stem-scroll{margin-block:var(--sp-8)}.question-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--sp-5);margin-top:var(--sp-6)}.stem-scroll{max-width:100%;min-width:0;overflow-x:auto}.sheet .tutor-rich{font-family:var(--font-stem);font-size:var(--fs-stem);line-height:2.1}.sheet-footer{border-top:1px solid var(--line);padding-top:var(--sp-4)}.paper-guidance{padding:var(--sp-5);margin-block:var(--sp-5);background:var(--green-wash);border-radius:var(--r-block)}.paper-guidance h2{font-size:var(--fs-h3)}.workbench-actions{display:flex;flex-wrap:wrap;align-items:center;gap:var(--sp-3);margin-block:var(--sp-5)}.workbench-actions small{color:var(--ink-3)}.workbench-record{margin-top:var(--sp-6)}.phone-practice-tabs{display:none}.tutor-docked{position:sticky;top:0;flex:0 0 var(--tutor-w);width:var(--tutor-w);height:100dvh;background:var(--surface-2);border-left:1px solid var(--line);min-width:0}.tutor-docked .tutor-panel{position:static;inset:auto;width:100%;height:100%;border:0;border-radius:0;box-shadow:none}.tutor-docked.tutor-open>.tutor-launch{display:none}.tutor-docked.tutor-collapsed{width:64px;flex-basis:64px}.tutor-docked>.tutor-launch{position:static;display:flex;flex-direction:column;padding:var(--sp-2);border:0;border-radius:0;box-shadow:none;width:100%}.tutor-docked>.tutor-launch .sprite{width:40px;height:44px}.context-chips{margin-top:var(--sp-2)}.tutor-docked .tutor-panel .tutor-compose{max-height:52%}.tutor-docked .tutor-panel .tutor-messages{min-height:100px}.tutor-docked .tutor-quick{display:none}@media(min-width:768px)and (max-width:1279px){.tutor-docked{flex-basis:var(--tutor-w-tablet);width:var(--tutor-w-tablet);top:60px;height:calc(100dvh - 60px)}.app-shell--practice .app-content,.sheet{padding:var(--sp-5)}}@media(max-width:767px){.app-shell--practice .app-workspace{display:block}.app-shell--practice .app-content{width:auto;padding:var(--sp-5) var(--sp-4) calc(var(--tabbar-h) + var(--sp-8))}.sheet{padding:var(--sp-5)}.workbench-heading h1{font-size:var(--fs-h2)}.phone-practice-tabs{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--sp-2);margin-bottom:var(--sp-5);position:sticky;top:56px;background:var(--paper);z-index:10;padding-block:var(--sp-2)}.phone-practice-tabs button{background:var(--surface);border-color:var(--line);color:var(--ink-2)}.phone-practice-tabs button[aria-pressed=true]{color:var(--green);border-color:var(--green);background:var(--green-wash)}.phone-hidden{display:none}.tutor-docked{display:none;position:fixed;left:0;right:0;top:56px;height:calc(var(--visual-height, 100dvh) - 120px - env(safe-area-inset-bottom));width:100%;border:0;z-index:21}.tutor-docked.phone-tutor-active{display:block}.tutor-docked .tutor-header small{display:none}.tutor-docked .tutor-panel .tutor-compose{max-height:55%}.workbench-actions>button:first-child{width:100%;min-height:var(--hit-phone)}.sheet .tutor-rich{font-size:var(--fs-h2)}.question-options{grid-template-columns:minmax(0,1fr)}}.workbench-question[hidden],.workbench-record[hidden]{display:none}.record-layout{display:grid;grid-template-columns:minmax(260px,.85fr) minmax(0,1.15fr);align-items:start;gap:var(--sp-6)}.record-reference{position:sticky;top:var(--sp-6);min-width:0}.record-reference .sheet{padding:var(--sp-6);margin-bottom:var(--sp-4)}.record-reference .stem-scroll{margin:var(--sp-4) 0 0}.record-reference .tutor-rich{font-size:var(--fs-body)}.record-reference .question-options{grid-template-columns:minmax(0,1fr);gap:var(--sp-2)}.record-form{min-width:0}.record-form fieldset{border:0;margin:var(--sp-6) 0;padding:0;min-width:0}.record-form legend{font-weight:600;margin-bottom:var(--sp-3)}.record-form textarea{display:block;width:100%;margin-top:var(--sp-2)}.record-form .checkline{display:flex;gap:var(--sp-3);align-items:center;min-height:var(--hit)}.record-form .checkline input{flex-shrink:0}.criterion-item{background:var(--surface);padding:var(--sp-5);border:1px solid var(--line);border-radius:var(--r-card);margin-bottom:var(--sp-4);min-width:0}.criterion-title{display:flex;align-items:baseline;justify-content:space-between;gap:var(--sp-3);flex-wrap:wrap;margin-bottom:var(--sp-3)}.criterion-title small{color:var(--ink-3)}.criterion-expected{background:var(--paper);padding:var(--sp-3);margin-block:var(--sp-3);border-radius:var(--r-control)}.save-preview{background:var(--green-wash);border:1px solid var(--green-line);border-radius:var(--r-card);padding:var(--sp-5)}.save-preview small{display:block;margin-top:var(--sp-3);color:var(--ink-3)}.after-save{max-width:var(--sheet-max);margin-inline:auto}.after-save h1{font-size:var(--fs-display);margin-block:var(--sp-6)}.change-summary{border:1px solid var(--line);border-radius:var(--r-card);background:var(--surface);overflow:hidden;margin-block:var(--sp-6)}.change-summary article{padding:var(--sp-5);border-bottom:1px solid var(--line);display:grid;grid-template-columns:1fr auto;gap:var(--sp-3)}.change-summary article:last-child{border-bottom:0}.change-state{display:flex;align-items:center;flex-wrap:wrap;gap:var(--sp-2)}.change-reason{grid-column:1 / -1;margin:0}@media(max-width:1100px){.record-layout{grid-template-columns:minmax(0,1fr)}.record-reference{position:static}}@media(max-width:767px){.change-summary article{grid-template-columns:minmax(0,1fr)}.record-form input[type=file]{max-width:100%}}.record-layout{gap:24px}.record-reference{max-height:calc(100dvh - 40px);overflow:auto}.answer-short>.tutor-rich{font-size:22px;color:var(--green);font-weight:600}.answer-short strong{display:block;margin-bottom:8px}.observation-heading{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-top:20px}.observation-heading h3{margin:0}.observation-heading span{margin-left:auto;font-size:13px}.observation-heading progress{width:100%;height:5px;accent-color:var(--green)}.observation-help{font-size:13px;color:var(--ink-3);margin:8px 0 12px}.criterion-group{border:1px solid var(--line);border-radius:var(--r-card);background:var(--surface);margin-bottom:12px;overflow:hidden}.criterion-group-heading{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:10px 14px;background:var(--paper-2)}.criterion-group-heading h3{display:flex;flex:1;flex-wrap:wrap;gap:8px;margin:0;font-size:15px;min-height:24px;align-items:center}.criterion-group-heading small{margin-left:auto;color:var(--ink-3);font-size:12.5px;font-weight:400}.criterion-group-heading button{padding:0 4px;min-height:44px;font-size:13px}.criterion-item{margin:0;border:0;border-top:1px solid var(--line);border-radius:0;padding:10px 14px;display:grid;grid-template-columns:1fr;gap:6px}.criterion-item h4{font-size:14px;margin:0}.criterion-copy>.tutor-rich{font-size:14px;line-height:1.5}.criterion-expected{background:none;padding:0;margin:3px 0 0}.criterion-expected .tutor-rich{font-size:12.5px;line-height:1.5;color:var(--ink-3)}.criterion-item .segmented-choice{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}.criterion-item .seg-opt{width:100%;padding:4px;font-size:13px;min-height:44px}.criterion-untouched .seg-opt--unassessed[aria-pressed=true]{border-style:dashed;background:var(--surface)}.criterion-touched .seg-opt[aria-pressed=true]{border-style:solid}.criterion-summary{display:flex;gap:8px;flex-wrap:wrap;padding:10px 14px}.criterion-summary span{font-size:12.5px;padding:4px 8px;border:1px solid var(--line-strong);border-radius:4px}.record-form fieldset{margin:12px 0}.record-form legend{margin-bottom:6px}.record-rater{padding:12px!important;border:1px solid var(--line)!important;border-radius:var(--r-card);background:var(--surface)}.record-rater small{font-size:12.5px;color:var(--ink-3)}.record-rater .panel{margin:8px 0 0;padding:0 10px;border:0}.record-form .checkline{font-size:13px;gap:8px}.record-rater .seg-opt{padding:6px 9px;font-size:13px}.save-preview{position:sticky;bottom:0;z-index:13;padding:12px 16px;margin-top:16px;background:var(--paper);border:1px solid var(--line-strong);box-shadow:0 -6px 20px #1c2b270a}.save-preview>p{margin:4px 0;font-size:13px}.save-preview .row-actions{gap:8px;margin-top:6px}.save-preview .row-actions button:first-child{margin-left:auto;min-width:140px}.save-preview .record-save-note{font-size:12px;margin:0}.save-preview #record-missing{font-size:12.5px}.save-preview #record-missing button{font-size:12.5px;padding:0 6px;min-height:32px;text-decoration:underline}@media(min-width:768px)and (max-width:1279px){.save-preview{bottom:80px}}@media(max-width:767px){.record-layout{gap:12px}.workbench-record{margin-top:12px}.record-reference{max-height:none;overflow:visible}.answer-reference{padding:12px;margin:0}.answer-short{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.answer-short strong{font-size:13px;margin:0}.answer-short>.tutor-rich{font-size:17px;flex:1;overflow:auto}.answer-short button{font-size:12.5px;padding:0;min-height:32px;width:100%;text-align:left}.record-form>h2{font-size:16px;margin:0}.record-form>.inline-alert{font-size:12px;padding:6px}.record-form legend{font-size:13px}.record-form #record-result .segmented-choice,.record-form #record-assistance .segmented-choice{display:flex;gap:4px;flex-wrap:wrap}.record-form #record-result .seg-opt,.record-form #record-assistance .seg-opt{font-size:12px;padding:4px 8px;min-height:44px}.criterion-item{padding:8px 10px;gap:4px}.criterion-group-heading{padding:8px 10px}.criterion-group-heading h3{font-size:14px}.criterion-copy>.tutor-rich{font-size:13px}.criterion-expected .tutor-rich{font-size:12.5px}.criterion-item .seg-opt{min-height:44px}.criterion-group{margin-bottom:8px}.save-preview{bottom:calc(var(--tabbar-h) + env(safe-area-inset-bottom));padding:8px 10px;border-radius:8px}.save-preview strong{font-size:12px}.save-preview .row-actions{margin:4px 0}.save-preview .row-actions button:first-child{min-height:48px}.save-preview .record-save-note{display:none}.save-preview>p{font-size:12px;margin:0}.app-content:has(.record-layout) .workbench-heading{margin-bottom:8px}.app-content:has(.record-layout) .workbench-heading .back{margin-bottom:0}.app-content:has(.record-layout) .practice-stepper{margin-top:8px}.app-content:has(.record-layout) .phone-practice-tabs{margin-bottom:8px}}@media(max-width:767px){.app-content:has(.record-layout){padding-top:12px;padding-bottom:64px}.app-content:has(.record-layout) .workbench-heading .back{display:none}.app-content:has(.record-layout) .workbench-heading h1{font-size:16px;margin-bottom:6px}.app-content:has(.record-layout) .workbench-meta>:nth-child(3){display:none}.app-content:has(.record-layout) .practice-stepper{font-size:12px;gap:8px}.app-content:has(.record-layout) .phone-practice-tabs{padding-block:4px}.answer-short{flex-wrap:nowrap}.answer-short>.tutor-rich{flex:1;min-width:0}.answer-short button{width:auto;white-space:nowrap}.answer-short strong{white-space:nowrap}.record-reference .answer-reference{padding:8px 10px}.record-form #record-result,.record-form #record-assistance{margin:8px 0}.record-form #record-result legend,.record-form #record-assistance legend{float:left;width:52px;line-height:44px;margin:0;font-weight:500}.record-form #record-result .segmented-choice,.record-form #record-assistance .segmented-choice{margin-left:56px;gap:3px}.record-form #record-result .seg-opt,.record-form #record-assistance .seg-opt{padding:4px 5px}.observation-heading{margin-top:12px;gap:4px 8px}.observation-help{margin:6px 0 8px}.criterion-item{display:block;padding:8px 10px}.criterion-item h4{display:inline;margin-right:8px}.criterion-copy{display:contents}.criterion-copy>.tutor-rich{display:inline}.criterion-expected{margin-top:3px}.criterion-item .segmented-choice{margin-top:4px}.record-rater{padding:8px!important;margin:8px 0!important}.record-rater legend{margin:0}.record-rater .checkline{min-height:44px}.record-rater .panel{margin:0;padding:0}.record-rater .seg-opt{min-height:44px}}@media(max-width:767px){.record-form #record-result legend,.record-form #record-assistance legend{display:none}.record-form #record-result:before,.record-form #record-assistance:before{content:attr(aria-label);float:left;width:52px;line-height:44px;font-size:12px}.record-form>.inline-alert{margin-block:6px}.criterion-item{padding-block:7px}}.assistance-note{display:block;clear:both;margin:5px 0 0;font-size:12.5px;color:var(--ink-3);line-height:1.5}.saved-overview h2{font-size:18px}.saved-overview p{margin:8px 0}.grouped-changes>section>h2{font-size:16px;padding:12px 16px;margin:0;background:var(--paper-2)}.grouped-changes article{padding:10px 16px;align-items:center}.grouped-changes article h3{font-size:14px;margin:0 0 4px}.grouped-changes .change-reason{font-size:12.5px;margin:0}.change-rules{padding:0 16px;border-top:1px solid var(--line)}.change-rules p{font-size:13px}@media(max-width:767px){.grouped-changes article{grid-template-columns:minmax(0,1fr) auto;gap:6px}.grouped-changes .state-badge{font-size:12px}.after-save h1{font-size:22px;margin:16px 0}}.ai-work-review{margin-bottom:20px}.ai-work-review h2{margin-top:0}.ai-work-review fieldset{border:0;padding:0;margin:14px 0;display:grid;gap:12px}.ai-work-review select{max-width:220px}.ai-review-result{border-top:1px solid var(--line);padding-top:16px}.ai-review-overall{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px;margin:18px 0}.ai-review-check{border:1px solid var(--line);border-radius:12px;margin:12px 0;padding:16px;background:var(--surface)}.ai-review-check h3{font-size:16px;margin:0 0 8px}.ai-review-check button{margin-top:8px}.ai-work-review .work-page-picker{display:flex;gap:10px;overflow:auto}.ai-work-review .work-page-picker label{min-width:90px;max-width:120px}.ai-work-review .work-page-picker img{width:100%;max-height:130px;object-fit:contain}.record-ai{margin:8px 0 16px}.record-ai>summary{min-height:44px;padding:10px;cursor:pointer}.record-reference .work-preview{margin:0 0 12px}.record-reference .work-preview p{font-size:12px;margin:4px 0}.record-reference .work-preview .row-actions{gap:4px 8px}.record-reference .work-preview .work-image img{max-height:260px}.record-reference .work-preview .work-image img.large{max-height:none}.record-form .save-preview{padding:8px 12px}.record-form .save-preview p{margin:2px 0;font-size:12px}.record-form .save-preview .row-actions{margin:4px 0}.native-writing .workbench-heading,.native-writing .phone-practice-tabs,.native-writing .sheet-caption,.native-writing .sheet-footer,.native-writing .paper-guidance,.native-writing .workbench-actions,.native-writing .app-header,.native-writing .mobile-tabs{display:none}.native-writing .app-main,.native-writing .app-content{padding:8px!important;margin:0!important}.native-writing .sheet{padding:12px}.native-writing .sheet .stem-scroll{margin:0}@media(min-width:700px){.record-layout{grid-template-columns:minmax(250px,.85fr) minmax(0,1.15fr);gap:16px}.record-reference{position:sticky;top:76px;max-height:calc(100dvh - 168px);overflow:auto}.record-reference .work-preview{padding:10px}.record-reference .work-preview .row-actions a{font-size:12px}.record-reference .work-preview .work-image img{max-height:300px}.record-reference .work-preview .work-image img.large{max-height:none}}@media(min-width:700px)and (max-width:767px){.record-reference{top:120px;max-height:calc(100dvh - 220px)}}@media(min-width:768px)and (max-width:1279px){.app-content:has(.workbench-record:not([hidden]) .record-layout) .workbench-heading{margin:0 0 12px}.app-content:has(.workbench-record:not([hidden]) .record-layout) .workbench-heading .back{display:none}.app-content:has(.workbench-record:not([hidden]) .record-layout) .workbench-heading h1{font-size:20px;margin:0 0 6px}.app-content:has(.workbench-record:not([hidden]) .record-layout) .practice-stepper{margin-top:8px}}.kgalaxy-scene{position:relative;width:100%;height:100%;min-height:480px;isolation:isolate;overflow:hidden;color:#e9f1ff;background:radial-gradient(ellipse at 52% 42%,#101d3b 0,transparent 51%),radial-gradient(ellipse at 13% 68%,#11172e 0,transparent 48%),#060c19;border-radius:0;touch-action:none}.kgalaxy-scene:before{content:"";position:absolute;inset:0;pointer-events:none;z-index:1;background:radial-gradient(ellipse at center,transparent 30%,rgba(3,8,18,.43) 100%)}.kgalaxy-canvas{position:absolute;inset:0;width:100%;height:100%;display:block;outline:none;cursor:grab;touch-action:none}.kgalaxy-canvas:active,.kgalaxy-scene.is-dragging .kgalaxy-star-label{cursor:grabbing}.kgalaxy-scene.is-rearranging .kgalaxy-star-label{cursor:move}.kgalaxy-scene button{font-family:inherit;box-sizing:border-box}.kgalaxy-scene button:focus-visible{outline:2px solid #b1d7ff;outline-offset:4px}.kgalaxy-scene-tools{position:absolute;top:16px;left:16px;right:16px;z-index:5;display:flex;align-items:center;gap:3px;width:max-content;max-width:calc(100% - 32px);padding:5px;background:#0a1324c7;border:1px solid rgba(148,176,218,.13);border-radius:10px;backdrop-filter:blur(15px)}.kgalaxy-scene-tools button{border:0;border-radius:6px;min-width:29px;height:28px;display:inline-flex;align-items:center;justify-content:center;gap:5px;padding:0 8px;background:transparent;color:#9aaec9;cursor:pointer;font-size:15px;white-space:nowrap;line-height:1}.kgalaxy-scene-tools button span{font-size:11px}.kgalaxy-scene-tools button:hover{background:#1b2a43;color:#e7f3ff}.kgalaxy-scene-tools button.is-active{background:#233751;color:#d2e7ff}.kgalaxy-scene-tools button:disabled{opacity:.6;cursor:default}.kgalaxy-scene-tools i{width:1px;height:15px;background:#28354a;margin:0 3px}.kgalaxy-projected-labels{position:absolute;inset:0;pointer-events:none;z-index:2}.kgalaxy-star-label{position:absolute;top:0;left:0;visibility:hidden;max-width:178px;min-width:112px;border:1px solid rgba(155,181,222,.16);background:linear-gradient(120deg,#142136f0,#0a1425c7);color:#dce8f7;border-radius:9px;padding:8px 10px 7px;text-align:left;pointer-events:auto;cursor:pointer;box-shadow:0 5px 18px #00000029;backdrop-filter:blur(10px);will-change:transform;line-height:1.4;transition:background .2s,border-color .2s,box-shadow .2s}.kgalaxy-star-label.is-group{min-width:142px;padding:10px 12px 8px}.kgalaxy-star-label:hover,.kgalaxy-star-label.is-selected{border-color:var(--star-color);background:linear-gradient(120deg,#1a2a42,#102035);box-shadow:0 0 24px color-mix(in srgb,var(--star-color) 14%,transparent)}.kgalaxy-star-name{display:flex;align-items:center;gap:6px;font-size:11px;font-weight:600;letter-spacing:.2px;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.kgalaxy-star-label.is-group .kgalaxy-star-name{font-size:12px}.kgalaxy-star-name i{width:5px;height:5px;border-radius:50%;background:var(--star-color);box-shadow:0 0 8px var(--star-color);flex-shrink:0}.kgalaxy-star-label[data-status=unknown] .kgalaxy-star-name i{box-shadow:none;opacity:.7}.kgalaxy-star-name b{font-size:15px;line-height:1;margin-left:auto;padding-left:7px;color:var(--star-color);font-weight:400}.kgalaxy-star-meta{display:flex;gap:15px;align-items:baseline;justify-content:space-between;margin-top:4px;font-size:9px;color:#8197b5;letter-spacing:.1px}.kgalaxy-star-meta strong{font-size:14px;font-variant-numeric:tabular-nums;line-height:1;color:var(--star-color);font-weight:600}.kgalaxy-star-meta small{font-size:9px;margin-left:1px;font-weight:400;opacity:.8}.kgalaxy-scene-footer{position:absolute;bottom:14px;left:19px;right:19px;display:flex;align-items:center;justify-content:space-between;gap:12px;z-index:3;pointer-events:none;color:#6f86a6;font-size:10px;letter-spacing:.3px}.kgalaxy-scene-footer button{pointer-events:auto;display:flex;align-items:center;gap:6px;border:0;background:transparent;padding:4px 0;color:#8b9fb9;font-size:10px;cursor:pointer;white-space:nowrap}.kgalaxy-scene-footer button:disabled{opacity:.45;cursor:default}.kgalaxy-scene-footer button i{width:5px;height:5px;border-radius:50%;background:#4b5a71}.kgalaxy-scene-footer button i.is-on{background:#7cd9c3;box-shadow:0 0 7px #5ef1ba80}.kgalaxy-scene.is-list-view{touch-action:pan-y}.kgalaxy-scene.is-list-view .kgalaxy-canvas{visibility:hidden}.kgalaxy-list-view{position:absolute;inset:66px 17px 18px;z-index:2;overflow:auto;scrollbar-width:thin;scrollbar-color:#2e4160 transparent;touch-action:pan-y}.kgalaxy-list-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(215px,1fr));gap:10px}.kgalaxy-list-item{display:flex;align-items:center;gap:10px;text-align:left;border:1px solid #26374e;background:#111f33b3;padding:14px 12px;border-radius:10px;color:#dce9fc;cursor:pointer;min-width:0}.kgalaxy-list-item:hover,.kgalaxy-list-item.is-selected{border-color:var(--star-color);background:#172b45}.kgalaxy-list-item>span:not(.kgalaxy-list-dot){min-width:0;flex:1}.kgalaxy-list-item b{display:block;font-size:12px;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.kgalaxy-list-item small{display:block;margin-top:5px;color:#8da0b9;font-size:10px}.kgalaxy-list-item strong{color:var(--star-color);font-size:15px;font-weight:500}.kgalaxy-list-item em{font-style:normal;color:#7791b1}.kgalaxy-list-dot{width:8px;height:8px;border-radius:50%;background:var(--star-color);box-shadow:0 0 12px var(--star-color);flex-shrink:0}.kgalaxy-list-dot[data-status=unknown]{box-shadow:none;opacity:.55}.kgalaxy-fallback-note{font-size:12px;color:#a2b6d1;line-height:1.8;margin:0 0 17px;padding:12px;border:1px solid #2b405e;background:#11213a;border-radius:8px}@media(max-width:600px){.kgalaxy-scene{min-height:480px}.kgalaxy-scene-tools{top:12px;left:12px;max-width:calc(100% - 24px);gap:1px;padding:4px}.kgalaxy-scene-tools button{padding:0 6px;min-width:27px}.kgalaxy-scene-tools button span{font-size:10px}.kgalaxy-star-label.is-group{min-width:122px;padding:8px 9px}.kgalaxy-star-label.is-group .kgalaxy-star-name{font-size:11px}.kgalaxy-scene-footer{left:13px;right:13px;gap:8px;font-size:9px;letter-spacing:0}.kgalaxy-scene-footer>span{max-width:72%}.kgalaxy-list-grid{grid-template-columns:1fr}}@media(prefers-reduced-motion:reduce){.kgalaxy-star-label{transition:none}}@media(max-width:600px){.kg-universe .kgalaxy-star-label{line-height:1.3}.kg-universe .kgalaxy-star-label.is-group{padding:6px 9px}.kgalaxy-star-meta{margin-top:3px}}.kgalaxy-star-label[data-recommendation=next],.kgalaxy-list-item[data-recommendation=next]{border-color:#f0ce82!important;box-shadow:0 0 20px #e2b75830}.kgalaxy-star-label[data-recommendation=path],.kgalaxy-list-item[data-recommendation=path]{border-color:#b7985d88!important}.kgalaxy-route-badge{display:block;text-align:left;font-size:8px;color:#d2b77a;margin-top:3px;letter-spacing:.5px}.kgalaxy-scene[data-theme=light]{color:var(--ink);background:radial-gradient(ellipse at 52% 42%,#ffffff 0,transparent 55%),radial-gradient(ellipse at 13% 68%,#eef3ee 0,transparent 48%),var(--paper-2)}.kgalaxy-scene[data-theme=light]:before{background:radial-gradient(ellipse at center,transparent 40%,rgba(28,43,39,.06) 100%)}.kgalaxy-scene[data-theme=light] button:focus-visible{outline-color:var(--focus)}.kgalaxy-scene[data-theme=light] .kgalaxy-scene-tools{background:#ffffffe0;border-color:var(--line);box-shadow:0 4px 16px #1c2b2714}.kgalaxy-scene[data-theme=light] .kgalaxy-scene-tools button{color:var(--ink-2)}.kgalaxy-scene[data-theme=light] .kgalaxy-scene-tools button:hover{background:var(--green-wash);color:var(--ink)}.kgalaxy-scene[data-theme=light] .kgalaxy-scene-tools button.is-active{background:var(--green-tint);color:var(--green)}.kgalaxy-scene[data-theme=light] .kgalaxy-scene-tools i{background:var(--line)}.kgalaxy-scene[data-theme=light] .kgalaxy-star-label{border-color:var(--line);background:#ffffffeb;color:var(--ink);box-shadow:0 4px 14px #1c2b2714}.kgalaxy-scene[data-theme=light] .kgalaxy-star-label:hover,.kgalaxy-scene[data-theme=light] .kgalaxy-star-label.is-selected{border-color:var(--star-color);background:#fff;box-shadow:0 0 0 3px color-mix(in srgb,var(--star-color) 18%,transparent),0 6px 18px #1c2b271a}.kgalaxy-scene[data-theme=light] .kgalaxy-star-name i{box-shadow:none}.kgalaxy-scene[data-theme=light] .kgalaxy-star-label[data-status=unknown] .kgalaxy-star-name i{background:transparent;border:1.5px dashed var(--star-color);opacity:1}.kgalaxy-scene[data-theme=light] .kgalaxy-star-meta,.kgalaxy-scene[data-theme=light] .kgalaxy-scene-footer{color:var(--ink-3)}.kgalaxy-scene[data-theme=light] .kgalaxy-scene-footer button{border:1px solid var(--line);background:#ffffffe0;border-radius:999px;padding:4px 10px;color:var(--ink-2)}.kgalaxy-scene[data-theme=light] .kgalaxy-scene-footer button i{background:var(--line-strong)}.kgalaxy-scene[data-theme=light] .kgalaxy-scene-footer button i.is-on{background:var(--green);box-shadow:none}.kgalaxy-scene[data-theme=light] .kgalaxy-list-view{scrollbar-color:var(--line-strong) transparent}.kgalaxy-scene[data-theme=light] .kgalaxy-list-item{border-color:var(--line);background:var(--surface);color:var(--ink)}.kgalaxy-scene[data-theme=light] .kgalaxy-list-item:hover,.kgalaxy-scene[data-theme=light] .kgalaxy-list-item.is-selected{background:#fff;box-shadow:0 0 0 3px color-mix(in srgb,var(--star-color) 18%,transparent)}.kgalaxy-scene[data-theme=light] .kgalaxy-list-item small,.kgalaxy-scene[data-theme=light] .kgalaxy-list-item em{color:var(--ink-3)}.kgalaxy-scene[data-theme=light] .kgalaxy-list-dot{box-shadow:none}.kgalaxy-scene[data-theme=light] .kgalaxy-list-dot[data-status=unknown]{background:transparent;border:1.5px dashed var(--star-color);opacity:1}.kgalaxy-scene[data-theme=light] .kgalaxy-fallback-note{color:var(--ink-2);border-color:var(--blue-line);background:var(--blue-wash)}.kgalaxy-scene[data-theme=light] .kgalaxy-star-label[data-recommendation=next],.kgalaxy-scene[data-theme=light] .kgalaxy-list-item[data-recommendation=next]{border-color:var(--ochre)!important;box-shadow:0 0 0 3px var(--ochre-tint)}.kgalaxy-scene[data-theme=light] .kgalaxy-star-label[data-recommendation=path],.kgalaxy-scene[data-theme=light] .kgalaxy-list-item[data-recommendation=path]{border-color:var(--ochre-line)!important}.kgalaxy-scene[data-theme=light] .kgalaxy-route-badge{color:var(--ochre-ink)}.kgalaxy-scene{--status-mastered:#70ebbb;--status-learning:#8ecbff;--status-unknown:#a0aec4;--status-recommended:#ffdc8e}.kgalaxy-scene[data-theme=light]{--status-mastered:#167653;--status-learning:#236da3;--status-unknown:#68778c;--status-recommended:#98600c}.kgalaxy-scene .kgalaxy-star-label.kgalaxy-topic-star{display:grid;place-items:center;width:28px;height:28px;min-width:28px;min-height:28px;max-width:28px;padding:0;border:0!important;background:transparent;box-shadow:none;backdrop-filter:none;border-radius:50%;overflow:visible;color:var(--status-unknown);line-height:1}.kgalaxy-topic-symbol{display:grid;place-items:center;width:16px;height:16px;border:1.5px solid currentColor;border-radius:50%;background:#0b1426;font-size:0;box-shadow:0 0 8px #93b3e52b}.kgalaxy-topic-star[data-status=mastered]{color:var(--status-mastered)!important}.kgalaxy-topic-star[data-status=mastered] .kgalaxy-topic-symbol{font-size:11px;font-weight:800;background:var(--status-mastered);color:#092f25;border-color:var(--status-mastered);box-shadow:0 0 14px #70ebbb80}.kgalaxy-topic-star[data-status=learning]{color:var(--status-learning)!important}.kgalaxy-topic-star[data-status=learning] .kgalaxy-topic-symbol{font-size:15px;border-color:var(--status-learning)}.kgalaxy-topic-star[data-recommendation] .kgalaxy-topic-symbol{outline:1.5px solid var(--status-recommended);outline-offset:4px}.kgalaxy-topic-star[data-recommendation=next] .kgalaxy-topic-symbol{box-shadow:0 0 18px #ffdc8e60}.kgalaxy-topic-recommendation{position:absolute;right:-6px;top:-8px;font-size:13px;font-weight:700;color:var(--status-recommended);text-shadow:0 0 5px #060c19}.kgalaxy-topic-star:hover .kgalaxy-topic-symbol,.kgalaxy-topic-star:focus-visible .kgalaxy-topic-symbol{transform:scale(1.2)}.kgalaxy-scene.is-cloud-overview button.kgalaxy-cloud-label{position:absolute;top:0;left:0;visibility:hidden;pointer-events:auto;cursor:pointer;background:transparent;border:0;border-radius:6px;color:var(--star-color);padding:3px 6px;text-align:center;white-space:nowrap;text-shadow:0 2px 6px #060c19;line-height:1.4;will-change:transform}.kgalaxy-cloud-label b{display:block;font-size:12px;font-weight:600;letter-spacing:.3px}.kgalaxy-cloud-label b span{opacity:.6;margin-left:3px}.kgalaxy-cloud-label small{display:block;color:#93a3bd;font-size:9px;margin-top:3px;letter-spacing:.3px}.kgalaxy-scene.is-cloud-overview button.kgalaxy-cloud-label:hover{background:#102035cf}.kgalaxy-topic-preview{position:absolute;bottom:46px;left:18px;max-width:calc(100% - 36px);z-index:4;pointer-events:none;padding:12px 15px;border:1px solid #3b506c;border-radius:10px;background:#101e32f2;box-shadow:0 8px 28px #0004;backdrop-filter:blur(12px);color:#e9f1ff}.kgalaxy-topic-preview strong{display:block;font-size:13px;margin-bottom:6px}.kgalaxy-topic-preview>span{display:block;font-size:11px;color:#adbed6}.kgalaxy-topic-preview i{font-style:normal;color:var(--status-unknown)}.kgalaxy-topic-preview[data-status=mastered] i{color:var(--status-mastered)}.kgalaxy-topic-preview[data-status=learning] i{color:var(--status-learning)}.kgalaxy-topic-preview b,.kgalaxy-topic-preview small{display:block;margin-top:7px;font-size:10px;font-weight:400;color:#9eafc7}.kgalaxy-topic-preview b{color:var(--status-recommended)}.kgalaxy-scene .kgalaxy-list-dot{display:grid;place-items:center;width:18px;height:18px;font-size:14px;color:var(--status-learning);background:none;border:0;box-shadow:none;opacity:1}.kgalaxy-scene .kgalaxy-list-dot[data-status=mastered]{color:var(--status-mastered)}.kgalaxy-scene .kgalaxy-list-dot[data-status=unknown]{color:var(--status-unknown);border:0;background:none}.kgalaxy-scene[data-theme=light] .kgalaxy-topic-symbol{background:#f6f5ef;box-shadow:none}.kgalaxy-scene[data-theme=light] .kgalaxy-topic-star[data-status=mastered] .kgalaxy-topic-symbol{background:var(--status-mastered);color:#fff}.kgalaxy-scene[data-theme=light] .kgalaxy-topic-recommendation{color:var(--status-recommended);text-shadow:0 0 5px #fff}.kgalaxy-scene[data-theme=light].is-cloud-overview button.kgalaxy-cloud-label{text-shadow:0 1px 4px #fff}.kgalaxy-scene[data-theme=light].is-cloud-overview button.kgalaxy-cloud-label:hover{background:#ffffffb3}.kgalaxy-scene[data-theme=light] .kgalaxy-cloud-label small{color:var(--ink-3)}.kgalaxy-scene[data-theme=light] .kgalaxy-topic-preview{background:#fffffff2;border-color:var(--line);color:var(--ink);box-shadow:0 8px 28px #1c2b271a}.kgalaxy-scene[data-theme=light] .kgalaxy-topic-preview>span,.kgalaxy-scene[data-theme=light] .kgalaxy-topic-preview small{color:var(--ink-2)}@media(max-width:600px){.kgalaxy-scene .kgalaxy-star-label.kgalaxy-topic-star{width:24px;height:24px;min-width:24px;min-height:24px;max-width:24px}.kgalaxy-topic-symbol{width:11px;height:11px;border-width:1.3px}.kgalaxy-topic-star[data-status=mastered] .kgalaxy-topic-symbol{font-size:8px}.kgalaxy-topic-star[data-status=learning] .kgalaxy-topic-symbol{font-size:11px}.kgalaxy-topic-star[data-recommendation] .kgalaxy-topic-symbol{outline-offset:3px}.kgalaxy-topic-recommendation{font-size:10px;right:-3px;top:-4px}.kgalaxy-scene.is-cloud-overview button.kgalaxy-cloud-label{padding:2px 0}.kgalaxy-cloud-label b{font-size:9px;letter-spacing:0}.kgalaxy-cloud-label small{font-size:8px;letter-spacing:0}}.kgalaxy-scene .kgalaxy-star-label.kgalaxy-topic-star{pointer-events:none}.kgalaxy-topic-star:before{content:"";position:absolute;inset:0;clip-path:circle(50%);pointer-events:auto}.knowledge-home{--kg-ink: #e6edf9;--kg-muted: #8796b5;--kg-line: rgba(148, 174, 217, .13)}.kg-universe{background:#090f20;border:1px solid #1d2b45;border-radius:18px;color:var(--kg-ink);overflow:hidden;box-shadow:0 18px 42px #1a293b18}.kg-universe p,.kg-universe small{color:var(--kg-muted)}.kg-universe button{color:#b8c7e1;background:transparent;border:1px solid var(--kg-line);padding:7px 11px;font-size:12px;font-weight:450;border-radius:6px}.kg-universe button:hover{filter:none;background:#99b8ed12;color:#fff}.kg-universe button:focus-visible,.kg-universe input:focus-visible{outline:2px solid #a9caff;outline-offset:3px}.kg-header{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 20px;border-bottom:1px solid var(--kg-line)}.kg-brand{display:flex;align-items:center;gap:13px}.kg-orbit-icon{display:grid;place-items:center;width:40px;height:40px;color:#b9d3ff;border:1px solid #6586b544;border-radius:50%;font-size:26px;background:radial-gradient(ellipse,#6899f029,transparent);box-shadow:0 0 25px #9ec5ff0c}.kg-brand h1{font-size:18px;line-height:1.35;font-weight:550;letter-spacing:1px;margin:0}.kg-brand h1 small{font-size:9px;font-weight:400;letter-spacing:1.7px;margin-left:10px}.kg-brand p{margin:3px 0 0;font-size:10px;letter-spacing:.6px}.kg-live{font-size:10px;color:#93b6b2;white-space:nowrap}.kg-live i{display:inline-block;width:5px;height:5px;border-radius:50%;background:#89cbb4;box-shadow:0 0 7px #76d9ae80;margin-right:7px}.kg-metrics{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 12px;padding:10px 0 14px;border-top:1px solid var(--kg-line)}.kg-metrics>div{display:flex;align-items:baseline;justify-content:space-between;gap:4px}.kg-metrics>div:first-child{padding-left:0;border-left:0}.kg-metrics>div>span{color:#96a6c2;font-size:9px}.kg-metrics strong{font-family:ui-monospace,SFMono-Regular,monospace;font-size:16px;font-weight:450;line-height:1.2;white-space:nowrap}.kg-metrics strong small{font-family:inherit;font-size:9px;font-weight:400;margin-left:3px}.kg-metric-lit strong{color:#f4d39a}.kg-filters{display:flex;align-items:center;gap:12px;padding:10px 18px;background:#10182a;border-bottom:1px solid var(--kg-line)}.kg-search{display:flex;align-items:center;gap:7px;width:auto;flex:1;min-width:0;border:1px solid #829dc42c;background:#080f20;border-radius:6px;padding:0 10px}.kg-search>span{font-size:24px;color:#8a9dbc;line-height:1}.kg-search input:not([type=checkbox]){background:transparent;border:0;color:#dde8fb;padding:8px 0;font-size:11px;border-radius:0;min-width:0}.kg-search input::placeholder{color:#70809f}.kg-search button{border:0;padding:0 2px}.kg-filter-buttons{display:flex;gap:4px;flex-wrap:wrap}.kg-filter-buttons button{font-size:11px;padding:6px 9px;border-color:transparent;white-space:nowrap}.kg-filter-buttons .is-active{color:#e5d2aa;background:#c4a4661a;border-color:#c4a46640}.kg-scope{display:flex;align-items:center;gap:7px;color:#92a2bd;font-size:11px;white-space:nowrap;margin-left:auto}.kg-universe input[type=checkbox]{width:13px;height:13px;accent-color:#cdb47b}.kg-workspace{display:grid;grid-template-columns:minmax(0,1fr) 320px;height:clamp(560px,calc(100svh - 190px),1000px)}.kg-map{position:relative;min-width:0;min-height:0;display:flex;flex-direction:column;background:#070d1c}.kg-breadcrumb{display:flex;flex-wrap:wrap;align-items:center;gap:8px;padding:8px 20px 0;position:relative;z-index:1;color:#5f7495;font-size:10px}.kg-breadcrumb button{font-size:10px;border:0;padding:0;color:#94a5c1;border-radius:1px}.kg-breadcrumb [aria-current]{color:#cfdbed}.kg-map-title{display:flex;justify-content:space-between;gap:15px;align-items:center;padding:10px 20px;position:relative;z-index:1;pointer-events:none}.kg-map-title>div>span{display:block;line-height:1.3;font-size:9px;letter-spacing:1px;color:#6880a4}.kg-map-title b{color:#a0b3cd;font-weight:400;margin-left:4px}.kg-map-title h3{line-height:1.4;font-size:19px;font-weight:450;margin:0;letter-spacing:.6px}.kg-map-title>button{pointer-events:auto;font-size:10px;border-color:#7292be33;flex-shrink:0}.kg-canvas-wrap{position:relative;width:100%;min-height:0;flex:1}.kg-canvas-wrap .kgalaxy-scene{min-height:0}.kg-empty{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;flex-direction:column;text-align:center;padding:35px;pointer-events:none}.kg-empty>span{font-size:45px;color:#88a0c5;margin-bottom:15px}.kg-empty h3{font-size:17px;font-weight:450}.kg-empty p{font-size:12px}.kg-empty button{pointer-events:auto}.kg-map-footer{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:10px 20px;color:#687d9f;font-size:9px}.kg-map-footer>div{display:flex;align-items:center;gap:5px;white-space:nowrap;color:#98a9c3}.kg-dot{width:5px;height:5px;display:inline-block;border-radius:50%;margin-left:12px;background:#5b6e90}.kg-dot:first-child{margin-left:0}.kg-dot.mastered{background:#f2cd7e;box-shadow:0 0 8px #efd08d88}.kg-dot.learning{background:#7fbcdb}.kg-dot.unknown{border:1px solid #7f91ac;background:transparent}.kg-inspector{min-width:0;min-height:0;padding:16px;border-left:1px solid var(--kg-line);background:linear-gradient(165deg,#121c30,#0e1627);overflow-y:auto;scrollbar-width:thin;scrollbar-color:#3b4f6e transparent}.kg-inspector-heading{display:flex;align-items:center;justify-content:space-between;gap:4px;margin-bottom:10px}.kg-inspector-heading>span{font-size:8px;letter-spacing:1.6px;color:#6b82a5}.kg-inspector-heading>small{font-size:9px}.kg-inspector h3{font-size:15px;font-weight:500;letter-spacing:.5px;margin:0}.kg-progress{position:relative;width:84px;height:84px;flex-shrink:0}.kg-inspector-heading .kg-settings{font-size:10px;padding:2px 6px}.kg-progress-body{display:flex;align-items:center;gap:14px;margin:12px 0}.kg-progress-numbers{flex:1;min-width:0}.kg-progress svg{width:100%;height:100%;transform:rotate(-90deg);overflow:visible}.kg-progress circle{fill:none;stroke-width:4}.kg-ring-track{stroke:#28364d}.kg-ring-value{stroke:#ebcf94;stroke-linecap:round;transition:stroke-dasharray .6s ease;filter:drop-shadow(0 0 4px #dab67655)}.kg-progress>div{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;flex-direction:column}.kg-progress strong{font:25px/1.15 ui-monospace,SFMono-Regular,monospace;color:#ecdfc2}.kg-progress strong span{font-size:15px;margin-left:3px}.kg-progress small{font-size:8px;margin-top:2px}.kg-inspector .kg-progress-caption{font-size:10px;color:#91a2bf;margin:0 0 8px}.kg-progress-caption b{color:#d6dfed;font-weight:450}.kg-mini-stats{display:flex;gap:10px}.kg-mini-stats>div{width:50%}.kg-mini-stats>div+div{padding-left:10px;border-left:1px solid var(--kg-line)}.kg-mini-stats b{display:block;font:19px ui-monospace,SFMono-Regular,monospace;color:#d8e0ee}.kg-mini-stats span{font-size:9px;color:#7c90b0}.kg-overview-note p,.kg-detail-copy p{font-size:11px;line-height:1.8;margin:14px 0}.kg-detail-copy h4{font-size:10px;color:#9caec9;font-weight:450;margin:19px 0 7px}.kg-universe button.kg-primary{width:100%;background:#d8c18d;border-color:#d8c18d;color:#192236;padding:9px;font-weight:600;font-size:11px}.kg-universe button.kg-primary:hover{background:#ebd6a6}.kg-topic-flags{display:flex;gap:6px;flex-wrap:wrap;margin-top:17px}.kg-topic-flags span{font-size:9px;color:#adbed6;border:1px solid #7994be33;padding:2px 6px;border-radius:4px}.kg-universe button.kg-link{display:flex;justify-content:space-between;width:100%;border:0;border-radius:0;font-size:10px;text-align:left;padding:6px 0}.kg-node-list{margin-top:19px}.kg-node-list h4{display:flex;justify-content:space-between;font-size:10px;color:#8ea0bf;font-weight:450;padding-bottom:9px;margin:0;border-bottom:1px solid var(--kg-line)}.kg-node-list h4>span{color:#61799f;font:10px ui-monospace,monospace}.kg-universe .kg-node-row{display:flex;align-items:center;width:100%;text-align:left;gap:10px;padding:11px 0;border:0;border-bottom:1px solid #9bb4d60d;border-radius:0}.kg-node-row>i{width:6px;height:6px;border-radius:50%;flex-shrink:0;box-shadow:0 0 8px currentColor;opacity:.85}.kg-node-row>span{flex:1;min-width:0;font-size:11px;color:#c8d5e8}.kg-node-row small{display:block;font-size:9px;color:#7186a7;margin-top:3px}.kg-node-row b{font:11px ui-monospace,monospace;color:#8b9db8}.kg-evidence-note{display:flex;align-items:center;gap:13px;padding:10px 20px;background:#10192a;border-top:1px solid var(--kg-line)}.kg-evidence-note>span{font-size:10px;color:#cfbe95;white-space:nowrap}.kg-evidence-note>p{font-size:9px;line-height:1.8;margin:0;flex:1;color:#7f93b3}.kg-evidence-note>label{display:flex;align-items:center;gap:5px;font-size:9px;color:#9cafcc;white-space:nowrap}.kg-below{display:flex;justify-content:space-between;gap:18px;padding:17px 2px 24px;color:#8b9690;font-size:10px}.kg-below b{font-weight:450;color:#51685d;margin:0 6px}.coverage-table{margin:0 0 20px}.coverage-table>summary{cursor:pointer;padding:16px 18px;border:1px solid #dbe4dc;border-radius:8px;color:#506a5c;font-size:13px;background:#f0f4ed}.coverage-table[open]>summary{margin-bottom:12px}@media(prefers-reduced-motion:reduce){.kg-ring-value{transition:none}}.knowledge-home{line-height:1.6}.kg-recommendations{margin:0;padding:14px;border:1px solid #b99d5b52;border-radius:10px;background:linear-gradient(120deg,#d0a9560d,#15213877)}.kg-recommendation-heading{margin-bottom:8px}.kg-recommendation-heading>small{display:block;margin-top:3px}.kg-recommendation-heading>span{color:#f0d594;font-size:13px;font-weight:600}.kg-recommendation-heading>small{font-size:10px}.kg-recommendation-tabs{display:grid;gap:6px;margin:8px 0}.kg-universe .kg-recommendation-tabs button{font-size:10px;text-align:left}.kg-recommendation-tabs button span{margin-left:6px}.kg-universe .kg-recommendation-tabs button[aria-pressed=true]{background:#bfa16620;border-color:#bea36277;color:#efd59b}.kg-recommendation-main{display:grid;gap:10px;margin-top:8px}.kg-recommendation-main h3{font-size:16px;margin:3px 0;color:#f0e7d3}.kg-universe .kg-next-kind{color:#d2b979;font-size:10px}.kg-recommended-question{font-size:12px;margin:3px 0}.kg-recommendation-actions{display:grid;gap:7px}.kg-universe .kg-start-recommendation{background:#e9cc8d;color:#1b2436;border-color:#e9cc8d;font-weight:650;padding:10px 13px}.kg-universe .kg-start-recommendation:disabled{opacity:.45;cursor:default}.kg-universe .kg-start-recommendation:hover:not(:disabled){background:#ffe3a6;color:#132039}.kg-recommendation-reason{font-size:11px;line-height:1.8;margin:14px 0 5px;max-width:850px}.kg-recommendation-evidence{display:block;font-size:10px}.kg-route-steps{display:grid;gap:6px;list-style:none;margin:15px 0 8px;padding:0}.kg-route-steps li{position:relative;max-width:100%}.kg-universe .kg-route-steps button{width:100%;text-align:left;font-size:10px;max-width:100%;padding:6px 9px}.kg-route-steps button>span{color:#7d91b2;margin-right:6px;font:10px ui-monospace,monospace}.kg-route-steps small{display:block;margin-left:19px;font-size:9px}.kg-universe .kg-route-steps [data-current=true] button{border-color:#e5c48099;background:#d1b77c12;color:#f5d99d}.kg-route-steps [data-current=true] small{color:#cfb57e}.kg-universe .kg-path-caption{font-size:9px;color:#8e9caf}.kg-recommendation-empty p{font-size:12px}.kg-resume-notice{display:flex;flex-wrap:wrap;gap:10px;justify-content:space-between;align-items:center;color:#e1c48c;font-size:11px;padding:10px;background:#ba8f3720;border-radius:5px;margin-bottom:12px}.kg-universe button{min-height:0;line-height:1.6}.kg-universe .kg-breadcrumb button{min-height:20px}.kg-universe .kgalaxy-scene-tools button{line-height:1}.kg-header-side{display:flex;align-items:center;gap:14px}.kg-theme{display:flex;gap:2px;padding:2px;border:1px solid var(--kg-line);border-radius:7px}.kg-universe .kg-theme button{border:0;font-size:11px;padding:4px 9px;border-radius:5px}.kg-universe .kg-theme button.is-active{background:#c4a4661a;color:#e5d2aa}.knowledge-home[data-theme=light]{--kg-ink:var(--ink);--kg-muted:var(--ink-3);--kg-line:var(--line)}[data-theme=light] .kg-universe{background:var(--surface);border-color:var(--line);box-shadow:none}[data-theme=light] .kg-universe button{color:var(--ink-2);border-color:var(--line-strong)}[data-theme=light] .kg-universe button:hover{background:var(--green-wash);color:var(--ink)}[data-theme=light] .kg-universe button:focus-visible,[data-theme=light] .kg-universe input:focus-visible{outline-color:var(--focus)}[data-theme=light] .kg-orbit-icon{color:var(--green);border-color:var(--line);background:var(--green-tint);box-shadow:none}[data-theme=light] .kg-live{color:var(--ink-3)}[data-theme=light] .kg-live i{background:var(--green);box-shadow:none}[data-theme=light] .kg-theme button.is-active{background:var(--green-tint);color:var(--green)}[data-theme=light] .kg-metrics>div>span{color:var(--ink-3)}[data-theme=light] .kg-metric-lit strong{color:var(--green)}[data-theme=light] .kg-filters{background:var(--paper-2)}[data-theme=light] .kg-search{border-color:var(--line-strong);background:var(--surface)}[data-theme=light] .kg-search>span{color:var(--ink-3)}[data-theme=light] .kg-search input:not([type=checkbox]){color:var(--ink)}[data-theme=light] .kg-search input::placeholder{color:var(--ink-3)}[data-theme=light] .kg-filter-buttons .is-active{color:var(--green);background:var(--green-tint);border-color:var(--green)}[data-theme=light] .kg-scope{color:var(--ink-2)}[data-theme=light] .kg-universe input[type=checkbox]{accent-color:var(--green)}[data-theme=light] .kg-map{background:var(--paper-2)}[data-theme=light] .kg-breadcrumb{color:var(--ink-3)}[data-theme=light] .kg-breadcrumb button{color:var(--ink-2)}[data-theme=light] .kg-breadcrumb [aria-current]{color:var(--ink)}[data-theme=light] .kg-map-title>div>span{color:var(--ink-3)}[data-theme=light] .kg-map-title b{color:var(--ink-2)}[data-theme=light] .kg-map-title>button,[data-theme=light] .kg-empty button{background:var(--surface);border-color:var(--line-strong)}[data-theme=light] .kg-empty>span{color:var(--ink-3)}[data-theme=light] .kg-map-footer{color:var(--ink-3)}[data-theme=light] .kg-map-footer>div{color:var(--ink-2)}[data-theme=light] .kg-dot{background:var(--line-strong)}[data-theme=light] .kg-dot.mastered{background:var(--green);box-shadow:none}[data-theme=light] .kg-dot.learning{background:var(--blue)}[data-theme=light] .kg-dot.unknown{border:1.5px dashed var(--line-strong)}[data-theme=light] .kg-inspector{background:var(--surface-2)}[data-theme=light] .kg-inspector-heading>span{color:var(--ink-3)}[data-theme=light] .kg-ring-track{stroke:var(--line)}[data-theme=light] .kg-ring-value{stroke:var(--green);filter:none}[data-theme=light] .kg-progress strong{color:var(--ink)}[data-theme=light] .kg-progress-caption{color:var(--ink-3)}[data-theme=light] .kg-progress-caption b,[data-theme=light] .kg-mini-stats b{color:var(--ink)}[data-theme=light] .kg-mini-stats span{color:var(--ink-3)}[data-theme=light] .kg-detail-copy h4{color:var(--ink-2)}[data-theme=light] .kg-universe button.kg-primary{background:var(--green);border-color:var(--green);color:#fff}[data-theme=light] .kg-universe button.kg-primary:hover{background:var(--green-hover)}[data-theme=light] .kg-topic-flags span{color:var(--ink-2);border-color:var(--line);background:var(--surface)}[data-theme=light] .kg-universe button.kg-link{color:var(--green)}[data-theme=light] .kg-node-list h4{color:var(--ink-2)}[data-theme=light] .kg-node-list h4>span{color:var(--ink-3)}[data-theme=light] .kg-universe .kg-node-row{border-bottom-color:var(--line-soft)}[data-theme=light] .kg-node-row>i{box-shadow:none;opacity:1}[data-theme=light] .kg-node-row>span{color:var(--ink)}[data-theme=light] .kg-node-row small,[data-theme=light] .kg-node-row b{color:var(--ink-3)}[data-theme=light] .kg-evidence-note{background:var(--paper-2)}[data-theme=light] .kg-evidence-note>span{color:var(--ochre-ink)}[data-theme=light] .kg-evidence-note>p{color:var(--ink-3)}[data-theme=light] .kg-evidence-note>label{color:var(--ink-2)}[data-theme=light] .kg-recommendations{border-color:var(--ochre-line);background:var(--ochre-wash)}[data-theme=light] .kg-recommendation-heading>span{color:var(--ochre-ink)}[data-theme=light] .kg-universe .kg-recommendation-tabs button{background:var(--surface)}[data-theme=light] .kg-universe .kg-recommendation-tabs button[aria-pressed=true]{background:var(--ochre-tint);border-color:var(--ochre);color:var(--ochre-ink)}[data-theme=light] .kg-recommendation-main h3{color:var(--ink)}[data-theme=light] .kg-universe .kg-next-kind{color:var(--ochre-ink)}[data-theme=light] .kg-universe .kg-start-recommendation{background:var(--green);color:#fff;border-color:var(--green)}[data-theme=light] .kg-universe .kg-start-recommendation:hover:not(:disabled){background:var(--green-hover);color:#fff}[data-theme=light] .kg-route-steps li+li:before{color:var(--ochre)}[data-theme=light] .kg-universe .kg-route-steps button{background:var(--surface)}[data-theme=light] .kg-route-steps button>span{color:var(--ink-3)}[data-theme=light] .kg-universe .kg-route-steps [data-current=true] button{border-color:var(--ochre);background:var(--ochre-tint);color:var(--ochre-ink)}[data-theme=light] .kg-route-steps [data-current=true] small{color:var(--ochre-ink)}[data-theme=light] .kg-universe .kg-path-caption{color:var(--ink-3)}[data-theme=light] .kg-resume-notice{color:var(--ochre-ink);background:var(--ochre-tint)}[data-theme=light] .kg-inspector,[data-theme=light] .kg-node-list{scrollbar-color:var(--line-strong) transparent}.app-content:has(.knowledge-home){max-width:1600px}.app-content:has(.knowledge-home)>.shell-context{display:none}.app-content:has(.knowledge-home)>.map-toolbar{margin-bottom:10px}.app-content:has(.knowledge-home)>.map-toolbar .sub-navigation{margin-bottom:0}.app-content:has(.knowledge-home)>.map-toolbar button{min-height:34px;padding:5px 16px}.kg-filter-menu{position:relative;flex-shrink:0;font-size:11px;z-index:6}.kg-filter-menu>summary{min-height:34px;cursor:pointer;padding:7px 10px;border:1px solid var(--kg-line);border-radius:6px;color:var(--kg-ink)}.kg-filter-menu>summary:focus-visible,.kg-recommendations summary:focus-visible{outline:2px solid #a9caff;outline-offset:3px}.kg-filter-popover{position:absolute;top:calc(100% + 8px);right:0;width:270px;max-width:calc(100vw - 64px);padding:12px;background:#121c30;border:1px solid var(--kg-line);border-radius:8px;box-shadow:0 12px 30px #0005}.kg-filter-popover .kg-scope{margin:12px 0 0}.kg-recommendations summary{min-height:28px;cursor:pointer;font-size:11px;color:var(--kg-muted);padding:5px 0}.kg-recommendation-details{margin-top:10px;border-top:1px solid var(--kg-line);padding-top:6px}.kg-recommendation-choices>summary{font-size:10px}.kg-universe .kg-recommendation-actions button{min-height:36px}.kg-universe .kg-recommendation-actions button:last-child{font-size:11px}[data-theme=light] .kg-filter-popover{background:var(--surface);box-shadow:0 8px 24px #1c2b2718}[data-theme=light] .kg-filter-menu>summary:focus-visible,[data-theme=light] .kg-recommendations summary:focus-visible{outline-color:var(--focus)}@media(min-width:768px){.app-shell .app-main:has(.knowledge-home){padding:16px 20px 32px}}@media(min-width:1280px){.app-shell:has(.knowledge-home){--shell-nav:80px}.app-shell:has(.knowledge-home) .app-sidebar{padding-inline:12px}.app-shell:has(.knowledge-home) .app-sidebar .app-brand,.app-shell:has(.knowledge-home) .app-sidebar nav button{justify-content:center;padding-inline:0}.app-shell:has(.knowledge-home) .app-sidebar .brand-label,.app-shell:has(.knowledge-home) .app-sidebar .nav-label,.app-shell:has(.knowledge-home) .app-nav-footer{display:none}}@media(max-width:1279px)and (min-width:768px){.kg-workspace{height:clamp(510px,calc(100svh - 245px),1000px);grid-template-columns:minmax(0,1fr) 290px}.kg-inspector{padding:14px}.kg-header .kg-live,.kg-brand h1 small{display:none}}@media(max-width:1000px){.kg-map-footer{flex-wrap:wrap;gap:4px}.kg-header-side{gap:8px}.kg-evidence-note{flex-wrap:wrap;gap:6px 12px}.kg-evidence-note>p{min-width:65%}.kg-below{flex-wrap:wrap;gap:6px}}@media(max-width:767px){.app-shell .app-main:has(.knowledge-home){padding:10px 12px calc(var(--tabbar-h) + env(safe-area-inset-bottom) + 24px)}.app-content:has(.knowledge-home)>.map-toolbar .sub-navigation{margin-inline:0;padding:0}.app-content:has(.knowledge-home)>.map-toolbar button{min-height:40px;flex:1}.kg-universe{border-radius:12px}.kg-header{padding:10px 12px;gap:8px}.kg-brand{gap:8px;min-width:0}.kg-brand h1{font-size:16px}.kg-brand h1 small,.kg-header .kg-live,.kg-header .kg-settings,.kg-orbit-icon{display:none}.kg-brand p{font-size:8px;letter-spacing:0}.kg-universe .kg-theme button{padding:6px;font-size:10px}.kg-workspace{display:flex;flex-direction:column;height:auto}.kg-map{height:clamp(460px,calc(100svh - 258px),750px);flex-shrink:0;scroll-margin-top:64px}.kg-filters{padding:8px 12px;gap:8px}.kg-search input:not([type=checkbox]){padding:7px 0}.kg-breadcrumb{padding:6px 12px 0;gap:6px}.kg-map-title{padding:8px 12px;gap:8px}.kg-map-title h3{font-size:16px}.kg-map-title>div>span{font-size:8px}.kg-map-title>button{font-size:9px;padding:5px 7px}.kg-map-footer{padding:8px 12px;font-size:8px}.kg-inspector{border-left:0;border-top:1px solid var(--kg-line);padding:16px;overflow:visible}.kg-progress-summary{margin-bottom:4px}.kg-progress-body{gap:20px}.kg-progress-numbers{max-width:210px}.kg-metrics{gap:10px 24px}.kg-recommendations{padding:14px}.kg-recommendation-actions{grid-template-columns:1fr 1fr}.kg-universe .kg-recommendation-actions button{padding:9px 6px;font-size:11px}.kg-evidence-note{padding:12px}.kg-below{font-size:9px;padding:12px 2px 18px}}@media(max-width:767px){.knowledge-home .kg-theme button,.knowledge-home .kg-map-title>button{min-height:40px}.knowledge-home .kgalaxy-scene-tools button{min-height:40px;height:40px;padding:0 6px}}.knowledge-home .kg-map-footer{flex-wrap:wrap}.knowledge-home .kg-map-footer .kg-dot{display:inline-grid;place-items:center;width:12px;height:12px;border:0;background:none;font-size:12px;line-height:1;box-shadow:none}.knowledge-home .kg-dot.mastered{color:#70ebbb;font-weight:800}.knowledge-home .kg-dot.learning{color:#8ecbff}.knowledge-home .kg-dot.unknown{color:#a0aec4}.knowledge-home .kg-dot.recommended{color:#ffdc8e}.knowledge-home[data-theme=light] .kg-dot.mastered{color:#167653}.knowledge-home[data-theme=light] .kg-dot.learning{color:#236da3}.knowledge-home[data-theme=light] .kg-dot.unknown{color:#68778c}.knowledge-home[data-theme=light] .kg-dot.recommended{color:#98600c}.learning-levels{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--sp-4);margin-bottom:var(--sp-6)}.learning-levels article{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-card);padding:var(--sp-5)}.learning-levels .current{border-color:var(--green)}.learning-levels h2{font-size:var(--fs-body);margin-block:var(--sp-2)}.learning-levels p{font-size:var(--fs-small);margin:0}.learning-layout{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:var(--sp-5);align-items:start}.learning-toolbar{display:flex;gap:var(--sp-4);align-items:center;flex-wrap:wrap;margin-bottom:var(--sp-5)}.learning-toolbar label{display:flex;align-items:center;gap:var(--sp-2)}.learning-toolbar input{min-width:0}.learning-toolbar small,.learning-chapter summary small{color:var(--ink-3)}.learning-chapter{margin-bottom:var(--sp-4)}.learning-chapter>summary{display:flex;justify-content:space-between;gap:var(--sp-4);align-items:center;padding:var(--sp-5);min-height:var(--hit)}.learning-chapter>summary:before{content:"\25b8"}.learning-chapter[open]>summary:before{content:"\25be"}.learning-chapter>div{padding:0 var(--sp-5) var(--sp-4)}.knowledge-choice{padding:var(--sp-2) 0 var(--sp-4)}.knowledge-choice label{display:flex;gap:var(--sp-3);min-height:var(--hit);align-items:center}.knowledge-choice p{margin:0 0 var(--sp-2) var(--sp-8);font-size:var(--fs-small);color:var(--ink-3)}.knowledge-choice>.chip{margin-left:var(--sp-8)}.learning-summary{position:sticky;top:var(--sp-6)}.learning-summary dl>div{display:flex;justify-content:space-between;margin-block:var(--sp-3)}.learning-summary dd{font-weight:600}.learning-summary .panel>button{margin-top:var(--sp-3)}.learning-summary .panel:first-child>button{width:100%}.tag-cloud{display:flex;gap:var(--sp-2);flex-wrap:wrap}.scope-choices{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--sp-3)}.scope-choices label{display:flex;gap:var(--sp-3);align-items:center;min-height:var(--hit)}.scope-choices small{display:block;color:var(--ink-3)}@media(max-width:1100px){.learning-layout{grid-template-columns:minmax(0,1fr) 290px}}@media(max-width:767px){.learning-levels,.learning-layout{grid-template-columns:minmax(0,1fr)}.learning-summary{position:static;grid-row:1}.learning-summary .panel:not(:first-child){display:none}.learning-chapter>summary{flex-wrap:wrap;gap:var(--sp-2)}.learning-toolbar label{width:100%}.learning-toolbar input{flex:1;width:0}.scope-choices{grid-template-columns:minmax(0,1fr)}}.map-layout{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--sp-5);align-items:start}.map-layout.has-detail{grid-template-columns:minmax(0,1fr) 440px}.goal-detail{min-width:0;position:sticky;top:20px;max-height:calc(100dvh - 40px);overflow-y:auto}.goal-detail>h3{margin-top:var(--sp-6)}.detail-close{display:block;margin-left:auto}.goal-detail h4{margin-bottom:0}.goal-detail ul{padding-left:20px}.goal-detail small{display:block}.goal-detail .callout,.detail-evidence{border-bottom:1px solid var(--line);padding-bottom:var(--sp-4)}.detail-next{padding:var(--sp-4);background:var(--green-tint);border-radius:var(--r-control);margin-block:var(--sp-5)}.ability-row{padding-block:var(--sp-3)}.ability-row>div{display:flex;align-items:center;gap:var(--sp-2);flex-wrap:wrap}.ability-row p{font-size:var(--fs-small)}.prerequisite-label{border:1px dashed var(--line-strong);padding:4px;font-size:var(--fs-small)}.matrix-panel{min-width:0}.matrix-panel .panel-heading,.matrix-panel .filterbar{flex-wrap:wrap}.matrix-panel th:first-child{position:sticky;left:0;z-index:1;background:var(--surface);min-width:164px}.matrix-panel .cell{display:flex;flex-direction:column;gap:6px;justify-content:center;min-height:64px;width:100%}.matrix-panel td{min-width:132px}@media(min-width:768px)and (max-width:1279px){.map-layout.has-detail{grid-template-columns:minmax(0,1fr) 400px}.goal-detail{top:76px;max-height:calc(100dvh - 92px)}}@media(max-width:767px){.map-layout.has-detail{grid-template-columns:minmax(0,1fr)}.goal-detail{grid-row:1;position:static;max-height:none}.matrix-panel .panel-heading{padding:16px}.matrix-panel th:first-child{min-width:145px;max-width:145px}.matrix-panel th:first-child button{white-space:normal}}.today-layout{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:var(--sp-5);align-items:start}.task-card{display:flex;flex-direction:column;gap:var(--sp-4);border-top:3px solid var(--green);padding:var(--sp-8)}.task-card.task-verification,.task-card.task-delayed{border-top-color:var(--blue)}.task-card h2{font-size:24px}.task-card>button{align-self:start}.task-card>div{display:flex;gap:var(--sp-2)}.today-layout aside section>button{margin-top:var(--sp-4)}.today-layout .reserved-card{margin-top:var(--sp-4);background:var(--paper)}.overview-counts>div{display:flex;justify-content:space-between;padding:var(--sp-2) 0}.overview-counts dd{margin:0;font-weight:600}.distribution-bar{display:flex;height:14px;gap:2px;border-radius:var(--r-pill);overflow:hidden;background:var(--paper-2);margin:var(--sp-3) 0}.distribution-stable{background:var(--green)}.distribution-provisional{background:var(--s-prov-bg)}.distribution-practice{background:var(--s-prac-bg)}.distribution-unknown{background:var(--paper-2);border:1px dashed var(--line-strong)}.distribution small{display:block}.alternate-tasks{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--sp-5);margin-top:var(--sp-4)}.alternate-tasks h3,.reserved-card h3{margin-top:var(--sp-4)}.due-goal{display:flex;align-items:center;gap:var(--sp-3);flex-wrap:wrap;margin-block:var(--sp-3)}.onboarding{max-width:800px;margin:48px auto;padding:var(--sp-8)}.onboarding li{margin-block:var(--sp-4)}@media(max-width:1000px){.today-layout{grid-template-columns:minmax(0,1fr) 290px}}@media(max-width:767px){.today-layout,.alternate-tasks{grid-template-columns:minmax(0,1fr)}.task-card{padding:var(--sp-5)}.task-card>button{width:100%}.onboarding{margin:12px 0;padding:var(--sp-5)}}.chapter-book>h2{margin:var(--sp-6) 0 var(--sp-4)}.chapter-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--sp-4)}.chapter-card{margin:0}.chapter-card>h3{margin-bottom:var(--sp-4)}.chapter-unconfigured{background:var(--hatch)}.chapter-unconfigured .kp-node{background:var(--surface-2)}.unconfigured-label{display:inline-block;background:var(--paper-2);border:1px dashed var(--line-strong);border-radius:var(--r-state);padding:4px 8px;color:var(--ink-2)}.knowledge-nodes{display:flex;flex-direction:column;gap:var(--sp-3)}.kp-node.kp-learned{border:1px solid var(--line-strong)}.kp-node.kp-unlearned{border:1px dashed var(--line-strong)}.kp-node[aria-pressed=true]{outline:2px solid var(--focus);outline-offset:2px}.kp-node .distribution{width:100%}.kp-node .distribution small{font-weight:400}.kp-node>span{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.has-detail .chapter-grid{grid-template-columns:minmax(0,1fr)}@media(max-width:767px){.chapter-grid{grid-template-columns:minmax(0,1fr)}}.discover-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--sp-5)}.question-card{margin:0;display:flex;flex-direction:column;align-items:start;gap:var(--sp-3);min-width:0}.question-card h3{font-size:var(--fs-h2)}.question-card p{margin:0}.question-card>.row-actions{margin-top:auto;padding-top:var(--sp-3)}.question-card-source{display:flex;justify-content:space-between;width:100%;align-items:center;gap:var(--sp-3)}.question-missingPrereq{background:var(--surface-2)}.reserved-question{background:var(--blue-wash);border:1px solid var(--blue-line);padding:var(--sp-5);border-radius:var(--r-card)}.reserved-question .reserved-card{padding:0;border:0;background:transparent}.discover-filters details{margin-top:var(--sp-4)}.discover-filters .practice-filters{margin-top:0}.empty-state li{margin-block:var(--sp-2)}@media(max-width:767px){.discover-grid{grid-template-columns:minmax(0,1fr)}.question-card>.row-actions{width:100%}.question-card>.row-actions>button:first-child{width:100%}}.week-layout{display:grid;grid-template-columns:360px minmax(0,1fr);align-items:start;gap:var(--sp-5)}.week-editor{position:sticky;top:20px}.week-editor>h3{margin-top:var(--sp-6)}.week-editor .weekly-goals{display:flex;flex-direction:column}.week-editor .weekly-goals label{display:flex;gap:var(--sp-2);align-items:center;min-height:var(--hit)}.week-editor input[type=range]{padding:0;accent-color:var(--green)}.week-editor .segmented-choice{flex-wrap:wrap}.pack-steps{list-style:none;padding:0;display:flex;gap:var(--sp-3);flex-wrap:wrap;color:var(--ink-3)}.pack-steps li{border-bottom:2px solid var(--line);padding:var(--sp-2) 0}.pack-steps [aria-current]{color:var(--green);border-color:var(--green);font-weight:600}.week-packs .pack-item{flex-wrap:wrap}.week-packs .reserved-card{margin:var(--sp-3) 0}.reservation-grid,.settings-grid,.review-summary-grid,.notes-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--sp-5);align-items:start}.settings-grid>.panel,.notes-grid>.panel{margin:0}.settings-grid{margin-bottom:var(--sp-5)}.settings-grid .provider-row{border-bottom:1px solid var(--line);padding-block:var(--sp-3)}.settings-grid small{display:block;margin-top:var(--sp-2)}.sources>article{padding:var(--sp-4);border:1px solid var(--line);border-radius:var(--r-card)}.notes-grid{margin-top:var(--sp-5)}.review-due-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--sp-5)}.review-due-grid article{margin-block:var(--sp-4)}.review-record{padding:var(--sp-6) 0;border-bottom:1px solid var(--line)}.review-record:last-child{border:0}.review-record.voided h3{text-decoration:line-through}.review-checks{list-style:none;padding:0}.review-checks li{display:flex;flex-wrap:wrap;gap:var(--sp-2);align-items:center;margin-block:var(--sp-2)}.review-checks li>span:first-child{flex:1}.record-note{white-space:pre-wrap;overflow-wrap:anywhere}.error-summary{display:flex;justify-content:space-between;gap:var(--sp-3);flex-wrap:wrap;border-bottom:1px solid var(--line);padding-block:var(--sp-3)}.assistance-bar{display:flex;height:16px;gap:3px;border-radius:var(--r-state);overflow:hidden;margin-top:var(--sp-3)}.assistance-independent{background:var(--green)}.assistance-hint{background:var(--ochre)}.assistance-solution{background:var(--blue)}.assistance-guess{background:var(--ink-3)}:root[data-reading-size=large]{--fs-body:17px;--fs-stem:21px;--fs-option:20px}@media(max-width:1100px){.week-layout{grid-template-columns:310px minmax(0,1fr)}.review-due-grid{grid-template-columns:minmax(0,1fr)}}@media(max-width:767px){.week-layout,.reservation-grid,.settings-grid,.review-summary-grid,.notes-grid{grid-template-columns:minmax(0,1fr)}.week-editor{position:static}.review-record time{font-size:var(--fs-caption)}}.loading-skeleton{display:grid;gap:var(--sp-4);width:min(720px,80vw)}.loading-skeleton i{display:block;height:72px;background:var(--paper-2);border-radius:var(--r-card)}.loading-skeleton i:first-child{width:65%;height:32px}button,summary{min-height:var(--hit)}button{min-width:var(--hit)}input[type=checkbox]{cursor:pointer}.tutor-modes button,.tutor-quick button{min-height:var(--hit)}.tutor-draft-conflict{max-height:280px;padding:var(--sp-3)}.draft-comparison{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--sp-2)}.draft-comparison section{min-width:0;padding:var(--sp-2);background:var(--surface);border-radius:var(--r-control)}.draft-comparison h3{font-size:var(--fs-small)}.draft-comparison pre,.draft-comparison blockquote{white-space:pre-wrap;overflow-wrap:anywhere;max-height:140px;overflow:auto;font:inherit;margin:var(--sp-2) 0}.reference-fallback{border:1px dashed var(--line-strong)}.tutor-resize{display:none;touch-action:none}.save-preview{border-color:var(--line-strong)}@media(min-width:768px)and (max-width:1279px)and (orientation:portrait){.app-shell--practice .app-workspace{display:block}.app-shell--practice .app-content{width:auto}.tutor-docked{position:fixed;z-index:24;inset:auto 0 0;width:100%;height:var(--tutor-drawer-height,60%);border:1px solid var(--line-strong);border-radius:var(--r-panel) var(--r-panel) 0 0;overflow:hidden;box-shadow:var(--shadow-dialog)}.tutor-docked.tutor-collapsed{width:72px;height:88px;left:auto;right:16px;bottom:16px;border-radius:var(--r-card)}.tutor-docked .tutor-resize{display:block;flex-shrink:0;background:var(--paper-2);color:var(--ink-3);border:0;border-radius:0;padding:0;font-size:var(--fs-caption)}}@media(max-width:767px){button:not(.text){min-height:var(--hit-phone)}.app-tabbar button{min-height:var(--hit)}.sheet .tutor-rich{font-size:17px}:root[data-reading-size=large] .sheet .tutor-rich{font-size:21px}.tutor-floating.tutor-open .tutor-panel{top:calc(var(--visual-top,0px) + 56px);bottom:auto;height:calc(var(--visual-height,100dvh) - 132px);left:8px;right:8px;width:auto}.tutor-floating.tutor-open>.tutor-launch{display:none}.tutor-docked.phone-tutor-active{top:calc(var(--visual-top,0px) + 56px)}.study-keyboard-open .tutor-docked.phone-tutor-active,.study-keyboard-open .tutor-floating.tutor-open .tutor-panel{top:var(--visual-top,0px);height:var(--visual-height,100dvh)}.study-keyboard-open .app-tabbar{visibility:hidden}.study-keyboard-open .tutor-panel .tutor-context,.study-keyboard-open .tutor-panel .tutor-modes,.study-keyboard-open .tutor-panel .tutor-quick,.study-keyboard-open .tutor-panel .tutor-draft-state span{display:none}.study-keyboard-open .tutor-panel .tutor-compose{max-height:70%}.study-keyboard-open .tutor-panel .tutor-messages{min-height:24px}}.study-keyboard-open .tutor-send{position:sticky;bottom:0;background:var(--sheet);padding-block:var(--sp-2);z-index:2}.study-keyboard-open .tutor-status,.mobile-ability-list{display:none}.detail-extra>summary{min-height:48px;cursor:pointer}.mobile-goal-detail{position:fixed;inset:0;width:100%;max-width:none;height:100dvh;max-height:100dvh;margin:0;padding:0;border:0;border-radius:0;background:var(--paper);color:var(--ink);overflow:auto}.mobile-goal-detail::backdrop{background:var(--paper)}.mobile-detail-header{display:flex;align-items:center;justify-content:space-between;padding:8px 16px;border-bottom:1px solid var(--line);background:var(--paper-2)}.mobile-detail-header small{color:var(--ink-3)}.mobile-detail-title{padding:16px}.mobile-detail-title h1{margin:4px 0 12px;font-size:22px}.mobile-detail-title>.state-badge{margin-right:8px}.mobile-goal-detail .detail-body{padding:0 16px 150px}.mobile-goal-detail h2,.mobile-goal-detail h3{font-size:16px;margin:0 0 10px}.mobile-goal-detail p{margin:8px 0}.mobile-goal-detail .detail-evidence{border:0}.mobile-goal-detail .detail-evidence>.panel{padding:14px;margin:0 0 16px}.detail-remaining{background:var(--paper-2);padding:14px;border-radius:var(--r-card);margin-bottom:20px}.mobile-goal-detail .detail-extra{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-card);padding:0 14px;margin-top:20px}.mobile-goal-detail .detail-extra>summary{display:flex;align-items:center}.mobile-goal-detail small{color:var(--ink-3)}.mobile-goal-detail .detail-next{position:fixed;inset:auto 0 0;margin:0;padding:12px 16px calc(16px + env(safe-area-inset-bottom));border-top:1px solid var(--line);border-radius:0;background:var(--paper)}.mobile-goal-detail .detail-next p{font-size:12.5px}.mobile-goal-detail .detail-next button{width:100%;min-height:48px}@media(max-width:767px){.desktop-ability-matrix{display:none}.mobile-ability-list{display:grid;gap:16px}.mobile-ability-list .panel{margin:0;overflow:hidden}.mobile-ability-list h3{padding:14px 12px;margin:0;font-size:16px}.mobile-ability-row{display:flex;align-items:center;gap:8px;width:100%;min-height:52px!important;padding:10px 12px;border:0;border-top:1px solid var(--line);border-radius:0;background:var(--surface);color:var(--ink);text-align:left;font-weight:400}.mobile-ability-row>span:first-child{flex:1}.matrix-panel{background:transparent;border:0}.matrix-panel .filterbar,.matrix-panel .panel-heading{padding-inline:0}.matrix-panel .chips{flex-wrap:nowrap;overflow-x:auto;max-width:100%}.matrix-panel .chips button{white-space:nowrap}}.header-tutor,.tutor-launch-copy,.tutor-height-toggle{display:none}.inline-help-consent{margin:16px 20px;padding:18px;border:1px solid var(--blue-line);border-radius:var(--r-card);background:var(--blue-wash);overflow:auto;flex:1}.inline-help-consent h2{font-size:16px}.inline-help-consent p{font-size:14px}.tutor-context[hidden],.tutor-messages[hidden]{display:none}@media(min-width:768px){.app-shell:not(.app-shell--practice) .app-content{padding-bottom:110px}}@media(min-width:768px)and (max-width:1279px){.app-shell--practice .app-workspace{display:block;min-height:0}.app-shell--practice .app-content{width:auto;padding-bottom:100px}.tutor-docked{position:fixed;inset:auto 0 0;width:100%;height:var(--tutor-drawer-vh,50dvh);z-index:24;border:1px solid var(--line-strong);border-radius:16px 16px 0 0;overflow:hidden;background:var(--surface)}.tutor-docked.tutor-collapsed{inset:auto 0 0;width:100%;height:80px;border-radius:0}.tutor-docked.tutor-collapsed>.tutor-launch{display:flex;flex-direction:row;align-items:center;justify-content:flex-end;height:80px;padding:16px 24px;background:var(--paper-2)}.tutor-docked .tutor-launch-copy{display:block;margin-right:auto;font-weight:400;color:var(--ink-2)}.tutor-docked>.tutor-launch .sprite{width:32px;height:40px}.tutor-docked .tutor-header{padding:8px 20px}.tutor-header .tutor-height-toggle{display:block;font-size:14px;white-space:nowrap}.tutor-header>button:last-child{margin-left:8px}.tutor-docked .tutor-resize{display:block;height:12px;min-height:12px;font-size:0;flex-shrink:0}.tutor-resize:before{content:"";display:block;height:4px;width:44px;border-radius:4px;background:var(--ink-3);margin:auto}body.study-tutor-docked-open .app-shell--practice .app-content{height:calc(100dvh - var(--tutor-drawer-vh,50dvh) - 60px);overflow-y:auto;padding:16px 24px 0;overscroll-behavior:contain}body.study-tutor-docked-open .workbench-actions{position:sticky;bottom:0;background:var(--paper);padding:8px 0;margin:0;z-index:2}body.study-tutor-docked-open .workbench-actions small{display:none}.workbench-heading{margin-bottom:16px}.workbench-heading .back{margin-bottom:4px}.workbench-heading h1{font-size:22px}.practice-stepper{margin-top:12px}.sheet .stem-scroll{margin-block:20px}.paper-guidance{margin-block:12px;padding:12px 16px}.paper-guidance h2{display:none}.paper-guidance p{margin:0}.tutor-docked .tutor-context{min-height:0}.tutor-docked .tutor-compose{max-height:48%}.tutor-docked .tutor-messages{min-height:50px}.tutor-docked .tutor-welcome{margin:0}.tutor-docked .tutor-welcome h3{font-size:18px}}@media(max-width:767px){.header-tutor{display:block;min-height:44px;width:44px;padding:0;border:1px solid var(--green);border-radius:50%;font-size:13px}.tutor-floating>.tutor-launch{display:none}.tutor-docked .tutor-resize{display:none}.inline-help-consent{margin:10px;padding:12px;flex:0 1 auto}.inline-help-consent p{font-size:13px}.inline-help-consent .row-actions{gap:6px}.inline-help-consent button{padding:6px 8px;font-size:13px}}.map-toolbar{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:20px}.map-toolbar .sub-navigation{margin:0}.map-toolbar label{display:flex;align-items:center;gap:8px;font-size:13px}.map-toolbar select{font-size:13px}.map-overview{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:24px}.overview-coverage,.overview-course,.overview-attention{grid-column:1/-1}.overview-coverage{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.overview-coverage .panel{margin:0;padding:16px}.overview-coverage h2{font-size:14px}.overview-coverage p,.overview-coverage details{font-size:13px}.metric{display:block;font-size:28px;text-align:left}.metric small{font-size:13px;font-weight:400}.overview-counts{display:grid;grid-template-columns:1fr 1fr}.overview-counts button{font-size:12.5px;text-align:left;padding:0}.overview-coverage .distribution>small:first-of-type{display:none}.overview-chapters{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.overview-chapters .panel{margin:0;padding:14px}.overview-chapters h3{font-size:15px}.knowledge-squares{display:flex;flex-wrap:wrap;gap:0}.knowledge-squares button{padding:8px;background:transparent;border:0}.knowledge-squares span{display:block;width:18px;height:18px;border:1px solid var(--green);border-radius:3px}.knowledge-squares .learned-square{background:var(--green)}.overview-unconfigured{background:var(--hatch)}.overview-unconfigured summary{font-size:14px}.overview-unconfigured small{display:block}.attention-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.attention-grid .panel{margin:0;padding:16px}.attention-grid p{font-size:13px}.attention-statuses{display:flex;flex-wrap:wrap;gap:4px}.attention-statuses button{padding:0 4px}.attention-statuses small{display:block;font-size:12px}.attention-grid .row-actions{margin-top:12px}.attention-grid .row-actions button{font-size:13px}.overview-order ol{list-style:none;padding:0}.overview-order .panel{margin-bottom:8px;padding:12px 16px}.overview-order p{font-size:13px}.overview-order summary{cursor:pointer;display:flex;gap:12px;align-items:center}.overview-order summary>span{color:var(--ink-3)}.change-line{padding:12px;margin-bottom:8px}.change-line small{display:block;color:var(--ink-3)}.scope-highlight{outline:2px solid var(--focus);outline-offset:4px;border-radius:4px}@media(max-width:1100px){.overview-coverage{grid-template-columns:repeat(2,minmax(0,1fr))}.map-overview{grid-template-columns:minmax(0,1fr)}.attention-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:767px){.map-toolbar{flex-direction:column;align-items:stretch;gap:8px}.map-toolbar .sub-navigation{display:grid;grid-template-columns:repeat(3,1fr)}.map-toolbar label{justify-content:flex-end}.overview-coverage,.overview-chapters,.attention-grid{grid-template-columns:minmax(0,1fr)}.overview-order{grid-row:2}.overview-attention{grid-row:3}.overview-changes{grid-row:4}.overview-course{grid-row:5}.overview-coverage .panel{padding:12px 16px}.overview-coverage .metric{display:inline-flex;gap:8px;align-items:baseline}.overview-coverage details{display:inline-block;margin-left:12px}.map-overview{gap:20px}}.discover-tabs{display:flex;border-bottom:1px solid var(--line);gap:8px;margin:20px 0}.discover-tabs button{background:transparent;color:var(--ink-3);border-radius:8px 8px 0 0;min-height:48px}.discover-tabs button[aria-selected=true]{background:var(--green-wash);color:var(--green);box-shadow:inset 0 -3px var(--green)}.discover-tabs span{margin-left:8px}.advanced-filters{margin-top:14px}.question-rows{border:1px solid var(--line);border-radius:10px;overflow:hidden;background:var(--paper)}.question-row{display:grid;grid-template-columns:minmax(200px,1.1fr) minmax(200px,1.8fr) 44px 76px 110px;align-items:center;gap:10px;padding:6px 12px;min-height:66px;border-bottom:1px solid var(--line)}.question-row:last-child{border:0}.question-row strong{font-size:14px}.question-row small{display:block;font-size:11px}.question-row>span{font-size:12px}.question-row>button{padding:8px 10px;min-height:44px;font-size:13px}.question-row-tags{display:flex;gap:5px;flex-wrap:wrap}.question-row-tags button{font-size:12px;padding:2px 4px;min-height:44px}.question-row-tags .outside{border:1px dashed var(--ink-3)}.question-row-tags .due{border:1px solid var(--ochre);color:var(--ochre)}.question-row-reason{grid-column:1/-1}.missing-group{margin:12px 0}.missing-group h2{font-size:17px}.load-more{display:block;margin:18px auto}.highlight-knowledge{outline:2px solid var(--green);outline-offset:-2px;background:var(--green-wash)}@media(max-width:767px){.discover-tabs{gap:0}.discover-tabs button{flex:1;padding:8px 3px;font-size:13px}.discover-tabs span{margin-left:4px}.question-row{grid-template-columns:1fr auto;padding:12px}.question-row>div:first-child{grid-column:1/-1}.question-row-tags{grid-column:1/-1}.question-row>button{grid-column:2;grid-row:3/5}.question-row>span{grid-column:1}.question-row-tags button{min-height:44px}.discover-filters{padding:14px}.discover-filters .row-actions{gap:12px}}.today-focus{max-width:820px;margin:auto}.today-main{padding:28px 36px}.today-main h2{font-size:27px;line-height:1.4;margin:15px 0 20px}.today-explanation{display:grid;gap:16px;margin:0 0 24px}.today-explanation>div{display:grid;grid-template-columns:76px 1fr;gap:12px}.today-explanation dt{color:var(--ink-3);font-size:13px}.today-explanation dd{margin:0;line-height:1.6}.today-explanation small{display:block;color:var(--ink-3);font-size:12px}.today-start{width:100%;min-height:48px}.today-links{display:flex;justify-content:space-between;margin-top:8px}.today-links button{min-height:44px}.today-after{margin:22px 0}.today-after h2{font-size:17px}.today-next{display:grid;grid-template-columns:1fr auto;gap:4px;text-align:left;width:100%;background:transparent;color:var(--ink);border-bottom:1px solid var(--line);border-radius:0;padding:12px 0}.today-next small{grid-column:1;color:var(--ink-3)}.today-next>span:last-child{grid-column:2;grid-row:1/3}.today-summary{padding:14px}.today-summary .distribution-legend{display:none}.rules-dialog h2:focus{outline:none}@media(max-width:767px){.today-focus .page-heading{margin-bottom:12px}.today-focus .page-heading h1{font-size:18px;margin:0}.today-main{padding:18px}.today-main h2{font-size:22px;margin:12px 0 16px}.today-explanation{gap:12px;margin-bottom:16px;font-size:14px}.today-explanation>div{grid-template-columns:58px 1fr;gap:8px}.today-after{margin-top:18px}.today-after h2{margin-bottom:4px}.rules-dialog{margin:auto 0 0;width:100%;max-width:none;border-radius:18px 18px 0 0;max-height:85dvh}}@media(max-width:767px){.today-focus .page-heading{display:flex;flex-direction:row;align-items:center;justify-content:space-between;gap:8px;margin:0 0 14px}.today-focus .page-heading>button{width:auto;margin:0;min-height:44px}.today-main h2{overflow-wrap:anywhere}}.week-planner{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(300px,.85fr);gap:24px;align-items:start}.week-selection{margin-bottom:12px}.week-selection h2{margin:0 0 12px}.week-selection label{display:flex;align-items:center;gap:12px;font-size:12px}.week-selection input{max-width:170px}.week-selection .chips button{padding:6px 10px;min-height:36px}.week-group{margin:10px 0}.week-group summary{padding:14px;display:flex;justify-content:space-between;gap:10px;cursor:pointer;min-height:48px}.week-group summary small{font-size:11px}.week-goal-grid{display:grid;grid-template-columns:1fr 1fr;padding:0 12px 12px;gap:10px}.week-goal{display:flex;gap:8px;align-items:flex-start;border:1px solid var(--line);border-radius:8px;padding:10px;min-height:88px;cursor:pointer}.week-goal strong{font-size:13px}.week-goal small{display:block;font-size:11px;line-height:1.5;margin-top:5px}.week-goal.unavailable{background:var(--paper)}.week-cell-states{display:flex;gap:5px;margin-top:6px}.week-cell{width:12px;height:12px;border:1px solid var(--ink-3);border-radius:2px}.week-cell.stable{background:#286347}.week-cell.provisional{background:#748d80}.week-cell.practice{background:#b77935}.week-cell.unknown{background:#fff}.week-live-preview{position:sticky;top:24px;max-height:calc(100dvh - 180px);overflow:auto}.week-live-preview .pack-item{display:block}.week-save-bar{position:sticky;bottom:16px;z-index:8;display:flex;align-items:center;gap:16px;justify-content:space-between;background:var(--paper);border:1px solid var(--ink-3);padding:16px;margin-top:20px;box-shadow:0 6px 22px #142d211a;border-radius:12px}.week-save-bar label{font-size:13px;min-width:140px}.week-save-bar input{display:block;max-width:180px}.week-save-bar small{display:block;font-size:11px}.week-save-bar>button{white-space:nowrap;min-height:48px}.week-purpose-phone{display:none}.week-purpose-desktop .seg-opt{font-size:12px;padding:8px}.week-existing>section{margin-bottom:18px}@media(max-width:1000px){.week-save-bar{flex-wrap:wrap}.week-purpose-desktop{display:none}.week-purpose-phone{display:block;margin:12px 0}}@media(max-width:767px){.week-planner{display:block}.week-goal-grid{grid-template-columns:1fr}.week-live-preview{position:static;max-height:none;margin-top:16px}.week-group summary{display:block}.week-group summary small{display:block;margin-top:6px}.week-save-bar{bottom:76px;gap:8px;padding:12px}.week-save-bar label{width:100%;display:flex;align-items:center;gap:12px}.week-save-bar input{flex:1;min-width:80px;margin:0}.week-save-bar>div{font-size:14px}.week-purpose-phone .seg-opt{font-size:12px;padding:8px 6px}.week-selection label{flex-wrap:wrap}}@media(min-width:768px){.week-goal-grid{max-height:none;overflow:visible}.week-group summary{padding:11px 14px}.week-selection{padding:18px}}@media(min-width:1280px){.week-selection{display:grid;grid-template-columns:1fr auto;gap:8px}.week-selection h2,.week-selection .chips{grid-column:1/-1}.week-selection .text{justify-self:start;margin:0}.week-selection label{font-size:11px;gap:8px}.week-selection input{max-width:140px}.week-save-bar{padding-right:180px;flex-wrap:wrap}}.week-cell{display:inline-block;flex:none}.distribution-bar{border:1px solid var(--ink-3)}.distribution-bar>span+span{border-left:1px solid var(--ink-3)}.question-row-tags .due{color:var(--ochre-ink);border-color:var(--ochre-ink)}.week-goal,.question-row-tags .outside{border-color:#7b877f}.week-cell.provisional{background:#c9dce9}.week-cell.practice{background:#f2ddb6}.week-cell{border-color:#5a6862}.week-cell.stable{border-color:#1f5a49}.question-row small,.question-row>span,.question-row-tags button,.week-group summary small,.week-goal small,.week-save-bar small,.week-selection label,.today-explanation small{font-size:12.5px}@media(min-width:768px){.week-save-bar{padding-right:180px}}#recommended-order{scroll-margin-top:80px}.evidence-filter{display:flex;align-items:center;justify-content:flex-end;gap:12px;margin:0 0 12px;font-size:12.5px}.evidence-filter select{width:auto;min-width:168px;min-height:44px}.week-heading{padding:16px 0 20px}.start-error,.app-error-toast{position:fixed;z-index:50;left:50%;bottom:24px;transform:translate(-50%);width:min(600px,calc(100% - 32px));max-height:50dvh;overflow:auto;box-shadow:var(--shadow-float)}.start-error p{margin:4px 0}.start-error .row-actions{margin:0}.question-row{grid-template-columns:minmax(190px,1.1fr) minmax(180px,1.8fr) 110px}@media(max-width:767px){.start-error,.app-error-toast{bottom:calc(var(--tabbar-h) + 12px + env(safe-area-inset-bottom))}.discover-tabs{flex-wrap:wrap}.discover-tabs button{flex:1 0 45%}.question-row{grid-template-columns:minmax(0,1fr) auto;gap:4px 10px}.question-row>div:first-child{grid-column:1}.question-row>button{grid-column:2;grid-row:1}.question-row-tags{grid-column:1/-1}}.tutor-awaiting-consent .inline-help-consent{display:flex;flex-direction:column;min-height:0;flex:1;overflow:hidden}.help-consent-copy{min-height:0;overflow:auto}.inline-help-consent .row-actions{flex-shrink:0;margin-top:12px;gap:12px}.tutor-awaiting-consent .tutor-header{flex-shrink:0}@media(min-width:768px)and (max-width:1279px){body.study-tutor-docked-open .app-content>.inline-alert:not(.app-error-toast){display:none}body.study-tutor-docked-open .workbench-heading{margin-bottom:8px}body.study-tutor-docked-open .workbench-heading .back,body.study-tutor-docked-open .practice-stepper{display:none}body.study-tutor-docked-open .sheet-caption{font-size:12px}body.study-tutor-docked-open .sheet .stem-scroll{margin-block:12px}}.week-expand{margin:0 12px 12px}.discover-filters>.row-actions:last-child{align-items:center;justify-content:space-between}.discover-filters>.row-actions:last-child p{margin:0;font-size:13px}.overview-counts>span{font-size:12.5px;line-height:1.8}@media(max-width:767px){.app-content:has(.today-focus)>.shell-context,.app-content:has(.discover-page)>.shell-context,.app-content:has(.map-overview)>.shell-context{display:none}.today-focus .page-heading{padding:0}.today-next{border:0;border-bottom:1px solid var(--line)}.discover-page .page-heading{padding:8px 0 0}.discover-page .page-heading h1{font-size:22px;margin:0}.discover-page .page-heading p{display:none}.discover-tabs{flex-wrap:nowrap;margin:12px 0 0}.discover-tabs button{flex:1 1 0;min-width:0;font-size:12px;padding:6px 2px}.discover-tabs span{display:block;margin:0}.discover-filters{padding:8px 0 0;border:0;background:transparent;box-shadow:none;margin-bottom:8px}.discover-filters>.row-actions{gap:8px 16px;margin:0}.discover-filters>.row-actions label{display:flex;align-items:center;min-height:44px;gap:6px;font-size:13px}.discover-filters .advanced-filters{margin-top:0}.advanced-filters>summary{display:flex;align-items:center;font-size:12.5px;padding:4px 0}.advanced-filters>summary:before{content:"\25b8";margin-right:6px}.advanced-filters[open]>summary:before{content:"\25be"}.discover-page [role=tabpanel]>.footnote{margin:8px 0;font-size:12.5px}.discover-page [role=tabpanel] h2{margin:12px 0 8px;font-size:17px}.question-row{padding:8px 10px}.question-row small{line-height:1.45;margin-top:3px}.question-row-tags{gap:0 8px}.question-row-tags button{padding:0 2px}.app-content:has(.map-overview)>.page-heading{padding:0 0 12px}.app-content:has(.map-overview)>.page-heading h1{font-size:24px;margin:0}.app-content:has(.map-overview)>.page-heading p{display:none}.map-toolbar{margin-bottom:12px}.overview-coverage{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.overview-coverage .panel{padding:12px}.overview-coverage h2{font-size:13px;margin:0 0 4px}.overview-coverage .metric{display:flex;flex-wrap:wrap;gap:4px;font-size:26px;padding:0;line-height:1.3}.overview-coverage .metric small{font-size:12px}.overview-coverage p{margin:4px 0;font-size:12px;line-height:1.5}.overview-coverage details{display:block;margin:0}.overview-coverage details summary{display:flex;align-items:center;font-size:12px}.overview-coverage .panel>.text:not(.metric){font-size:12px;padding:0;text-align:left}.overview-coverage .distribution{margin:8px 0 4px}.overview-coverage .distribution small{font-size:11px}.overview-counts{gap:0 6px}.overview-counts>span{font-size:12px}.map-overview{gap:16px}.overview-order>h2{margin:0 0 4px;font-size:19px}.overview-order>p{margin:0 0 8px}}@media(max-width:767px){.map-toolbar label{white-space:nowrap}.map-toolbar select{width:auto;min-width:190px}.overview-coverage .panel>.text:not(.metric){margin:0}.overview-coverage .panel{padding:10px 12px}}@media(max-width:767px){.overview-coverage .panel:nth-child(2)>p{display:none}.overview-order>p{display:none}.overview-order ol{margin:8px 0}}@media(max-width:767px){.overview-order .panel p{margin:8px 0}}@media(max-width:767px){.map-overview{gap:12px}}.tutor-context-disclosure>summary{display:none}.tutor-modes[hidden]{display:none}.review-record{scroll-margin-top:76px}.review-record.selected-record{outline:2px solid var(--green);outline-offset:6px}@media(max-width:1279px){.header-tutor{display:block;margin-left:auto;min-width:44px;min-height:44px}.tutor-floating>.tutor-launch{display:none}.tutor-panel .tutor-context{min-height:44px;max-height:30%;padding:0 12px;flex:0 1 auto}.tutor-context-disclosure>summary{display:list-item;cursor:pointer;min-height:44px;padding:10px 0;font-size:13px}.tutor-context-disclosure[open]{padding-bottom:8px}.tutor-panel .tutor-messages,.tutor-docked .tutor-panel .tutor-messages{flex:1 1 0;min-height:0;padding:8px 12px}.tutor-panel .tutor-compose,.tutor-docked .tutor-panel .tutor-compose{flex:0 0 auto;max-height:none;overflow:visible;padding:8px 12px}.tutor-panel .tutor-compose textarea{display:block;height:54px;min-height:54px;max-height:54px;resize:none}.tutor-panel .tutor-quick{display:none}.tutor-send{margin-top:4px;gap:6px}.tutor-send select{width:0;flex:1 1 0;min-height:44px}.tutor-send button{flex:none;min-height:44px;white-space:nowrap}.tutor-panel .tutor-welcome{margin:0}.tutor-panel .tutor-welcome h3{font-size:18px;margin:4px 0}.tutor-panel .tutor-welcome p{margin:4px 0}.tutor-panel .tutor-note{margin:6px 0;padding:6px 8px}.tutor-panel .tutor-status{margin:6px 0}}@media(min-width:768px)and (max-width:1279px){.tutor-docked .tutor-header{padding:4px 16px}.tutor-docked .tutor-header .sprite{width:32px;height:36px}.tutor-docked .tutor-header strong{font-size:16px}.tutor-docked .tutor-header small{font-size:12px}.app-content:has(.discover-page)>.shell-context{display:none}.app-content:has(.discover-page)>.sub-navigation{margin-bottom:12px}.discover-page .page-heading{padding:8px 0 12px}.discover-page .page-heading h1{font-size:26px;margin:0}.discover-page .page-heading p{margin:8px 0 0}.discover-tabs{margin:12px 0}.discover-filters{padding:12px 16px;margin-bottom:12px}.discover-filters>.row-actions{margin:0}.discover-filters>.row-actions label{display:flex;gap:6px;align-items:center;min-height:44px}.discover-filters .advanced-filters{margin-top:0}.discover-filters>.row-actions:last-child{min-height:44px}.discover-page [role=tabpanel]>.footnote{margin:8px 0}.discover-page [role=tabpanel] h2{margin:12px 0 8px;font-size:18px}}.week-planning-options>summary{display:none}.week-options-help{display:none}@media(max-width:767px){.app-content:has(.week-heading)>.shell-context{display:none}.app-content:has(.week-heading)>.sub-navigation{flex-wrap:nowrap;overflow-x:auto;gap:6px;margin-bottom:0}.app-content:has(.week-heading)>.sub-navigation button{flex:none;font-size:13px;min-height:44px;padding:6px 10px}.week-heading{padding:4px 0 8px}.week-heading h1{font-size:22px;margin:0}.week-heading p{display:none}.week-options-help{display:block;font-size:12.5px;margin:6px 0}.week-purpose-phone{margin:4px 0 8px}.week-selection{padding:10px 12px;margin-bottom:8px}.week-selection h2{font-size:16px;margin:0}.week-selection .chips:empty{display:none}.week-planning-options>summary{display:list-item;cursor:pointer;min-height:44px;padding:10px 0;font-size:12.5px}.week-planning-options label{margin-bottom:8px}.week-group{margin:8px 0}.week-group summary{padding:10px 12px}}.tutor-panel .tutor-compose,.tutor-docked .tutor-panel .tutor-compose{display:flex;flex-direction:column;flex:0 1 auto;min-height:148px;max-height:70%;overflow:hidden}.tutor-panel .tutor-compose[hidden],.tutor-docked .tutor-panel .tutor-compose[hidden]{display:none}.tutor-compose-options{overflow:auto;min-height:0;max-height:150px;flex:1 1 auto}.tutor-compose>textarea,.tutor-compose>.tutor-send{flex:none}.handwriting-picker{display:flex;align-items:center;flex-wrap:wrap;gap:0 8px}.handwriting-picker .work-selection{display:contents}.handwriting-picker button{min-height:36px;padding:4px 8px}.tutor-compose>.tutor-draft-state{flex:none;font-size:11px}@media(max-height:500px){.tutor-compose>.tutor-draft-state{display:none}.tutor-panel .tutor-context{display:none}}
