@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid;--tw-ordinal:initial;--tw-slashed-zero:initial;--tw-numeric-figure:initial;--tw-numeric-spacing:initial;--tw-numeric-fraction:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial}}}@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.collapse{visibility:collapse}.visible{visibility:visible}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.sticky{position:sticky}.start{inset-inline-start:var(--spacing)}.end{inset-inline-end:var(--spacing)}.block{display:block}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-block{display:inline-block}.table{display:table}.grow{flex-grow:1}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.resize{resize:both}.rounded{border-radius:.25rem}.border{border-style:var(--tw-border-style);border-width:1px}.capitalize{text-transform:capitalize}.uppercase{text-transform:uppercase}.ordinal{--tw-ordinal:ordinal;font-variant-numeric:var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,)}.tabular-nums{--tw-numeric-spacing:tabular-nums;font-variant-numeric:var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,)}.underline{text-decoration-line:underline}.ring{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}}:root{--paper:#f2f4f7;--card:#fff;--surface:#f6f8fa;--surface-strong:#eceff3;--ink:#16181d;--ink-dense:#41505f;--muted:#5f6b7a;--meta:#8b97a3;--accent:#243044;--accent-hover:#1a2436;--accent-active:#131b2a;--accent-mid:#3a4a63;--accent-line:#e2e6ec;--accent-soft:#eceff3;--coral:#b03a2e;--coral-dark:#8f2e24;--coral-mid:#f5e4e1;--coral-soft:#fdf3f3;--line:#eef1f4;--track:#e8ecf1;--plan-mark:#c4cad3;--control:#f0f2f5;--control-hover:#e4e8ee;--control-active:#dce1e8;--control-disabled:#f5f7f9;--on-disabled:#a8b1bd;--r-block:24px;--r-card:18px;--r-block-s:16px;--r-btn:14px;--r-btn-s:12px;--r-chip:999px;--shadow:none;--shadow-pop:0 12px 32px #24304424;--green:#41505f;--green-soft:#f0f2f5;--amber:#b03a2e;--amber-soft:#fdf3f3;--blue:#243044;--blue-soft:#eceff3}*{box-sizing:border-box}html{background:var(--paper)}body{background:var(--paper);color:var(--ink);font-variant-numeric:tabular-nums;margin:0;font-family:Golos Text,system-ui,sans-serif;font-size:15px}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}.app-frame{min-height:100vh}.sidebar{color:#eaf0ec;z-index:20;background:#13271f;flex-direction:column;width:244px;padding:28px 18px 20px;display:flex;position:fixed;inset:0 auto 0 0}.brand{align-items:center;gap:12px;padding:0 10px 30px;display:flex}.brand-mark{color:#18271f;background:#e1aa70;border-radius:11px;place-items:center;width:36px;height:36px;font-size:19px;font-weight:750;line-height:1;display:grid;box-shadow:inset 0 0 0 1px #ffffff52}.brand strong{letter-spacing:.1px;font-size:19px;font-weight:700;line-height:1.2;display:block}.brand small,.owner-chip small{color:#91a299;letter-spacing:.05em;margin-top:2px;font-size:11px;display:block}.nav-list{gap:5px;display:grid}.nav-list>:is(a,button),.sidebar-foot>:is(a,button){color:#b8c6be;border-radius:11px;align-items:center;gap:12px;min-height:44px;padding:0 12px;transition:all .15s;display:flex}.nav-list>:is(a,button):hover,.sidebar-foot>:is(a,button):hover{color:#fff;background:#ffffff12}.nav-list>:is(a,button)[aria-current=page],.sidebar-foot>:is(a,button)[aria-current=page]{color:#fff;background:#ffffff17}.sidebar-foot{gap:18px;margin-top:auto;display:grid}.owner-chip{border-top:1px solid #ffffff1a;align-items:center;gap:10px;padding:14px 10px 4px;display:flex}.owner-chip>span{color:#fff;background:#315442;border-radius:50%;place-items:center;width:34px;height:34px;font-weight:700;display:grid}.owner-chip strong{font-size:13px}.workspace{min-height:100vh;margin-left:244px}.topbar{border-bottom:1px solid var(--line);background:var(--paper);z-index:10;justify-content:space-between;align-items:center;height:72px;padding:0 36px;display:flex;position:sticky;top:0}.command-button{color:#7a827d;text-align:left;cursor:pointer;background:#ffffffb8;border:1px solid #d9ddd6;border-radius:11px;align-items:center;gap:10px;width:min(420px,46vw);height:40px;padding:0 10px 0 13px;display:flex}.command-button span{flex:1}kbd{background:#f7f7f3;border:1px solid #d7dad4;border-radius:6px;padding:3px 7px;font-size:11px}.topbar-note{color:#68746e;align-items:center;gap:7px;font-size:13px;display:flex}.mobile-brand,.mobile-nav,.account-menu{display:none}main{width:100%}.page{max-width:1320px;margin:0 auto;padding:42px 38px 70px}.page-heading{justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:28px;display:flex}.page-heading h1{letter-spacing:-.035em;margin:3px 0 7px;font-size:clamp(44px,4.2vw,52px);font-weight:700;line-height:1.05}.page-heading p:not(.eyebrow){color:var(--muted);margin:0}.eyebrow{color:#6d7c73;letter-spacing:.1em;text-transform:uppercase;margin:0;font-size:11px;font-weight:750}.button{border:1px solid var(--line);min-height:42px;color:var(--ink);cursor:pointer;background:#fff;border-radius:11px;justify-content:center;align-items:center;gap:8px;padding:0 16px;font-weight:680;display:inline-flex}.button.primary{background:var(--green);color:#fff;border-color:var(--green);box-shadow:0 8px 20px #245f4b29}.button.danger-soft{background:var(--coral-soft);color:#944936;border-color:#efd1c8}.button:disabled{opacity:.58;cursor:not-allowed;box-shadow:none}.icon-button{width:34px;height:34px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:9px;place-items:center;padding:0;display:grid}.text-link{color:var(--green);align-items:center;gap:5px;font-size:13px;font-weight:700;display:inline-flex}.metric-grid{grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:18px;display:grid}.metric-card{border:1px solid var(--line);background:var(--card);border-radius:16px;align-items:center;gap:14px;min-height:104px;padding:18px;display:flex}.metric-icon{border-radius:13px;place-items:center;width:42px;height:42px;display:grid}.metric-icon.green{color:var(--green);background:var(--green-soft)}.metric-icon.blue{color:var(--blue);background:var(--blue-soft)}.metric-icon.amber{color:var(--amber);background:var(--amber-soft)}.metric-icon.coral{color:var(--coral);background:var(--coral-soft)}.metric-card strong{font-size:23px;font-weight:700;display:block}.metric-card span:last-child{color:var(--muted);font-size:12px}.dashboard-grid{grid-template-columns:1.12fr .88fr;gap:18px;display:grid}.panel{border:1px solid var(--line);background:var(--card);border-radius:18px;overflow:hidden;box-shadow:0 1px #fffc}.panel-heading{border-bottom:1px solid #eaebe6;justify-content:space-between;align-items:center;gap:16px;min-height:82px;padding:20px 22px;display:flex}.panel-heading h2{margin:4px 0 0;font-size:20px;font-weight:700}.count-badge{background:var(--coral-soft);color:#a04c39;border-radius:50%;place-items:center;min-width:30px;height:30px;font-weight:750;display:grid}.attention-row{border-radius:13px;align-items:center;gap:12px;min-height:75px;padding:10px 12px;transition:all .15s;display:flex}.avatar{width:39px;height:39px;color:var(--green);background:var(--green-soft);border-radius:12px;flex:none;place-items:center;font-weight:800;display:grid}.avatar.large{border-radius:14px;width:44px;height:44px}.attention-copy{flex:1;min-width:0}.attention-copy strong,.attention-copy small{display:block}.attention-copy small{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;margin-top:4px;overflow:hidden}.row-action{color:var(--green);align-items:center;gap:5px;font-size:12px;font-weight:700;display:flex}.timeline{padding:10px 22px 18px}.timeline-row{grid-template-columns:92px 16px 1fr;gap:10px;min-height:73px;display:grid}.timeline-time strong,.timeline-time span{display:block}.timeline-time strong{font-size:12px}.timeline-time span{color:var(--muted);margin-top:4px;font-size:11px}.timeline-dot{position:relative}.timeline-dot:before{content:"";background:#d9ddd6;width:1px;position:absolute;top:8px;bottom:-8px;left:7px}.timeline-dot:after{content:"";background:var(--green);width:9px;height:9px;box-shadow:0 0 0 4px var(--green-soft);border-radius:50%;position:absolute;top:4px;left:3px}.timeline-row:last-child .timeline-dot:before{display:none}.timeline-content{padding-bottom:18px}.timeline-content>a:first-child{margin-bottom:7px;font-weight:750;display:block}.roster-panel{margin-top:18px}.student-strip{background:var(--line);grid-template-columns:repeat(3,1fr);gap:1px;display:grid}.student-strip>a{background:var(--card);grid-template-columns:auto 1fr;gap:10px 12px;min-height:132px;padding:20px;display:grid}.student-strip strong,.student-strip span{display:block}.student-strip span{color:var(--muted);margin-top:3px;font-size:12px}.student-strip small{color:#56635d;grid-column:1/-1;align-items:flex-start;gap:6px;display:flex}.empty-state{min-height:180px;color:var(--muted);flex-direction:column;justify-content:center;align-items:center;gap:7px;display:flex}.empty-state strong{color:var(--ink)}.content-grid{grid-template-columns:minmax(0,1fr) 340px;gap:18px;display:grid}.list-panel{border:1px solid var(--line);background:var(--card);border-radius:18px;overflow:hidden}.list-row{border-bottom:1px solid #ebede8;align-items:center;gap:14px;min-height:78px;padding:14px 18px;display:flex}.list-row:last-child{border-bottom:0}.list-row .grow{flex:1;min-width:0}.list-row strong,.list-row small{display:block}.list-row small{color:var(--muted);margin-top:4px}.pill{white-space:nowrap;border-radius:999px;align-items:center;min-height:25px;padding:0 9px;font-size:11px;font-weight:740;display:inline-flex}.info-card{border:1px solid var(--line);background:var(--card);border-radius:18px;padding:22px}.info-card h2{margin:0 0 12px;font-size:20px;font-weight:700}.info-card p{color:var(--muted);margin:0 0 16px;line-height:1.55}.student-hero{border:1px solid var(--line);background:var(--card);border-radius:20px;grid-template-columns:auto 1fr auto;align-items:center;gap:18px;padding:26px;display:grid}.student-hero .avatar{border-radius:17px;width:58px;height:58px;font-size:20px}.student-hero h1{margin:0;font-size:32px;font-weight:700}.student-hero p{color:var(--muted);margin:6px 0 0}.debt-block{text-align:right}.debt-block strong,.debt-block span{display:block}.debt-block strong{font-size:23px;font-weight:700}.debt-block span{color:var(--muted);font-size:11px}.student-status-cluster{align-items:center;gap:24px;display:flex}.goal-block{border-right:1px solid var(--line);min-width:210px;padding-right:24px}.goal-block span,.goal-block strong,.goal-block small{display:block}.goal-block span{color:var(--muted);font-size:11px}.goal-block strong{margin-top:4px;font-size:17px;font-weight:700}.goal-block small{color:var(--green);margin-top:5px;font-size:11px;font-weight:700}.focus-grid{grid-template-columns:repeat(4,1fr);gap:12px;margin:16px 0;display:grid}.focus-card{border:1px solid var(--line);background:var(--card);border-radius:16px;min-height:124px;padding:18px}.focus-card span{color:var(--muted);letter-spacing:.06em;text-transform:uppercase;margin-bottom:12px;font-size:11px;font-weight:750;display:block}.focus-card strong{line-height:1.45}.focus-card small{color:var(--muted);margin-top:7px;font-size:10px;line-height:1.45;display:block}.focus-card .focus-error{color:#914b3a}.homework-focus-card{background:var(--card)}.tabs{gap:6px;margin:25px 0 14px;display:flex;overflow:auto}.tabs a{color:var(--muted);white-space:nowrap;border-radius:10px;padding:9px 13px}.tabs a:first-child{color:var(--green);background:#dfe9e3;font-weight:750}.matrix{background:var(--line);gap:1px;display:grid}.matrix-section{background:var(--card);grid-template-columns:190px 1fr;display:grid}.matrix-section h3{border-right:1px solid var(--line);margin:0;padding:17px;font-size:16px;font-weight:700}.matrix-items{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.matrix-item{border-bottom:1px solid #eceee9;justify-content:space-between;align-items:center;gap:10px;padding:14px 16px;display:flex}.matrix-item:nth-child(odd){border-right:1px solid #eceee9}.matrix-item span:first-child{font-size:13px}.progress-heading{align-items:flex-start}.progress-heading p:not(.eyebrow){max-width:620px;color:var(--muted);margin:6px 0 0;font-size:12px;line-height:1.5}.risk-summary{flex-wrap:wrap;justify-content:flex-end;gap:7px;display:flex}.risk-counter{border-radius:999px;align-items:center;gap:6px;min-height:30px;padding:0 10px;font-size:11px;font-weight:750;display:inline-flex}.risk-counter.risk-red{color:#974734;background:var(--coral-soft)}.risk-counter.risk-yellow{color:#855415;background:var(--amber-soft)}.progress-matrix{gap:14px;padding:18px;display:grid}.progress-section{border:1px solid var(--line);background:#fff;border-radius:14px;overflow:hidden}.progress-section>h3{border-bottom:1px solid var(--line);background:#f7f7f2;margin:0;padding:12px 15px;font-size:15px;font-weight:700}.progress-items{display:grid}.progress-item{border-bottom:1px solid #e9ebe6;border-left:4px solid #0000}.progress-item:last-child{border-bottom:0}.progress-item.risk-red{border-left-color:var(--coral)}.progress-item.risk-yellow{border-left-color:#d5a24d}.progress-item.risk-green{border-left-color:#65927d}.progress-item.risk-neutral{border-left-color:#cbd4d9}.progress-item summary{cursor:pointer;grid-template-columns:48px minmax(210px,1fr) auto 128px 118px 20px;align-items:center;gap:12px;min-height:76px;padding:11px 14px 11px 10px;list-style:none;display:grid}.progress-item summary::-webkit-details-marker{display:none}.progress-item[open] summary{border-bottom:1px solid var(--line);background:#fafbf7}.exam-number{background:var(--blue-soft);width:43px;height:43px;color:var(--blue);border-radius:12px;place-items:center;font-family:ui-monospace,JetBrains Mono,Menlo,monospace;font-size:13px;font-weight:700;display:grid}.progress-item-title strong,.progress-item-title small,.mastery-value small,.mastery-value strong,.last-result small,.last-result strong{display:block}.progress-item-title small{color:var(--muted);margin-top:4px;font-size:10px}.mastery-value small,.last-result small{color:var(--muted);font-size:9px}.mastery-value strong,.last-result strong{margin-top:3px;font-size:13px}.last-result small:last-child{margin-top:2px}.details-chevron{color:var(--muted);transition:transform .15s}.progress-item[open] .details-chevron{transform:rotate(180deg)}.progress-details{background:#fffefa;grid-template-columns:.95fr 1.05fr;gap:24px;padding:18px;display:grid}.progress-description>p{color:#4f5a55;margin:0 0 12px;line-height:1.55}.subtopic-list{flex-wrap:wrap;gap:6px;display:flex}.subtopic-list span{color:#52605a;background:#f0f2ed;border-radius:8px;padding:5px 8px;font-size:10px}.program-meta{color:var(--muted);flex-wrap:wrap;gap:7px 15px;margin-top:13px;font-size:10px;display:flex}.error-callout{background:var(--coral-soft);color:#874332;border-radius:10px;align-items:flex-start;gap:8px;margin-top:14px;padding:10px;font-size:11px;display:flex}.error-callout span,.error-callout strong{display:block}.error-callout strong{margin-bottom:3px}.evidence-row{border-bottom:1px solid #eceee8;grid-template-columns:minmax(0,1fr) auto;gap:8px 14px;padding:9px 0;display:grid}.evidence-row:last-child{border-bottom:0}.evidence-row span strong,.evidence-row span small{display:block}.evidence-row span small{color:var(--muted);margin-top:3px;font-size:9px}.evidence-row>span:last-of-type{text-align:right}.evidence-error{color:#8c4939;grid-column:1/-1;margin:0;font-size:10px}.muted{color:var(--muted)}.legacy-progress{border:1px dashed #ccd3cc;border-radius:12px;margin:0 18px 18px;padding:12px 14px}.legacy-progress>summary{color:var(--muted);cursor:pointer;align-items:center;gap:7px;font-size:11px;font-weight:750;display:flex}.legacy-progress-list{margin-top:10px}.legacy-progress-list>div{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:12px;padding:9px 0;display:flex}.legacy-progress-list>div:last-child{border-bottom:0}.legacy-progress-list strong,.legacy-progress-list small{display:block}.legacy-progress-list small{color:var(--muted);margin-top:3px;font-size:9px}.history-list{padding:0 20px 8px}.history-row{border-bottom:1px solid #e9ebe6;align-items:center;gap:12px;padding:16px 0;display:flex}.history-row:last-child{border-bottom:0}.history-row .grow{flex:1}.history-row strong,.history-row span{display:block}.history-row span{color:var(--muted);margin-top:4px;font-size:12px}.history-row small{color:var(--muted);margin-top:5px;font-size:10px;line-height:1.45;display:block}.history-row .homework-result-line{color:var(--green);font-weight:700}.history-row .homework-error-line{color:#914b3a}.student-timeline-panel{margin-bottom:14px}.timeline-caption{color:var(--muted);letter-spacing:.06em;text-transform:uppercase;font-size:10px;font-weight:750}.student-timeline-entry{border-bottom:1px solid #e9ebe6;grid-template-columns:88px 92px minmax(0,1fr);align-items:start;gap:13px;min-height:88px;padding:15px 0;display:grid}.timeline-kind{border-radius:999px;justify-content:center;align-items:center;gap:5px;min-height:27px;padding:0 8px;font-size:10px;font-weight:750;display:inline-flex}.timeline-kind.green{color:var(--green);background:var(--green-soft)}.timeline-kind.amber{color:#8d5b1b;background:var(--amber-soft)}.timeline-kind.blue{color:var(--blue);background:var(--blue-soft)}.timeline-entry-main{min-width:0}.timeline-entry-heading strong{line-height:1.35}.timeline-entry-main p{color:var(--muted);margin:5px 0 0;font-size:11px;line-height:1.45}.timeline-entry-main .timeline-items{color:#415149;font-weight:680}.timeline-entry-main .timeline-error{color:#914b3a}.timeline-entry-main small{color:var(--green);align-items:center;gap:5px;margin-top:6px;font-size:10px;display:flex}.empty-copy{color:var(--muted);padding:0 20px 20px}.action-cluster{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.form-shell{max-width:830px;margin:0 auto}.form-progress{gap:8px;margin:0 0 24px;display:flex}.form-progress span{background:#dfe3dc;border-radius:999px;flex:1;height:4px}.form-progress span.active{background:var(--green)}.form-card{border:1px solid var(--line);background:var(--card);border-radius:19px;margin-bottom:14px;padding:26px}.form-card h2{margin:0 0 5px;font-size:20px;font-weight:700}.form-card>p{color:var(--muted);margin:0 0 20px}.field-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.field{gap:7px;display:grid}.field.full{grid-column:1/-1}.field input,.field .select-trigger,.field textarea{width:100%;min-height:43px;color:var(--ink);background:#fff;border:1px solid #d7dcd5;border-radius:10px;outline:none;padding:10px 12px}.field textarea{resize:vertical;min-height:88px}.field input[aria-invalid=true],.field .select-trigger[aria-invalid=true],.field textarea[aria-invalid=true]{border-color:var(--coral)}.field-hint{color:var(--muted);font-size:11px}.field-error{color:#a34734;font-size:12px}.form-error{background:var(--coral-soft);color:#8d4030;border:1px solid #edcfc6;border-radius:11px;gap:3px;margin:0 0 14px;padding:13px 15px;display:grid}.form-error span{font-size:12px}.form-actions{justify-content:space-between;align-items:center;gap:12px;margin-top:20px;display:flex}.completion-bar{z-index:5;border:1px solid var(--line);box-shadow:none;background:#fff;border-radius:9px;justify-content:space-between;align-items:center;gap:18px;padding:14px;display:flex;position:sticky;bottom:14px}.completion-bar>div:first-child{gap:3px;display:grid}.completion-bar strong{display:block}.completion-bar span{color:var(--muted);font-size:12px}.notice{background:var(--green-soft);color:var(--green);border-radius:11px;margin:0 0 14px;padding:12px 15px;font-weight:650}.section-heading-row{justify-content:space-between;align-items:flex-start;gap:18px;margin-bottom:20px;display:flex}.section-heading-row h2{margin:0 0 5px}.section-heading-row p{color:var(--muted);margin:0}.topic-stack{gap:12px;display:grid}.topic-card{background:#fbfcf8;border:1px solid #e0e4dd;border-radius:14px;margin:0;padding:17px;position:relative}.topic-card legend{color:var(--green);letter-spacing:.06em;text-transform:uppercase;padding:0 7px;font-size:11px;font-weight:800}.topic-remove{position:absolute;top:8px;right:8px}.check-row{color:#4e5a54;cursor:pointer;align-items:center;gap:8px;margin-top:14px;font-size:12px;font-weight:720;display:flex}.check-row input{width:17px;height:17px;accent-color:var(--green)}.inline-score{grid-template-columns:1fr auto 1fr;align-items:end;gap:10px;max-width:320px;margin-top:12px;display:grid}.inline-score>span{color:var(--muted);padding-bottom:12px}.inline-score .full-error{grid-column:1/-1;padding:0}.item-error-note{margin-top:13px}.previous-homework-context{background:#f5f7f2;border-radius:12px;gap:4px;margin:-4px 0 16px;padding:13px 14px;display:grid}.previous-homework-context>span{color:var(--muted);letter-spacing:.07em;text-transform:uppercase;font-size:9px;font-weight:800}.previous-homework-context small{color:var(--muted);font-size:10px;line-height:1.45}.selected-homework-summary{border:1px solid var(--line);background:#fff;border-radius:11px;gap:4px;padding:11px 12px;display:grid}.selected-homework-summary span,.selected-homework-summary small{color:var(--muted);font-size:10px;line-height:1.45}.homework-details{background:#fbfcf8;border:1px dashed #cfd6ce;border-radius:11px;padding:11px 12px}.homework-details>summary{color:var(--green);cursor:pointer;font-size:11px;font-weight:750}.homework-details[open]>summary{margin-bottom:13px}.homework-count-grid{grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:12px;display:grid}.homework-details>.field+.field{margin-top:11px}.impact-card{background:#fffaf4;border:1px solid #e6d5c9;border-radius:18px;margin-bottom:14px;padding:24px}.impact-card h2{margin:0 0 16px;font-size:20px;font-weight:700}.impact-card>p{color:var(--muted)}.impact-list{gap:14px;display:grid}.impact-list>div{align-items:flex-start;gap:12px;display:flex}.impact-list svg{color:var(--amber);flex:none;margin-top:2px}.impact-list span,.impact-list strong{display:block}.impact-list span{color:#58625d;line-height:1.5}.impact-list strong{color:var(--ink);margin-bottom:3px}.assessment-summary strong{background:var(--green-soft);min-width:96px;color:var(--green);text-align:center;border-radius:12px;padding:10px 13px;font-size:20px;font-weight:700}.assessment-scope{gap:10px;margin:0 0 14px;display:grid}.assessment-scope-sections{flex-wrap:wrap;gap:6px 16px;display:flex}.assessment-scope-section{cursor:pointer;align-items:center;gap:6px;font-size:13px;display:inline-flex}.assessment-scope-section input{width:16px;height:16px;accent-color:var(--accent)}.assessment-scope .field-hint{margin:0}.assessment-items{border:1px solid var(--line);background:var(--line);border-radius:14px;gap:1px;display:grid;overflow:hidden}.assessment-item{background:#fff;justify-content:space-between;align-items:center;gap:18px;min-height:72px;padding:12px 14px;display:flex}.assessment-item small,.assessment-item strong{display:block}.assessment-item small{color:var(--muted);margin-bottom:5px;font-size:10px}.assessment-error-input{background:#fffaf8;border:1px solid #ead4cc;border-radius:8px;outline:none;width:min(420px,100%);min-height:34px;margin-top:8px;padding:7px 9px;font-size:10px}.assessment-error-input:focus{border-color:var(--coral)}.score-buttons{gap:5px;display:flex}.assessment-controls{align-items:center;gap:9px;display:flex}.assessment-controls .select-trigger{background:#fff;border:1px solid #d9ddd6;border-radius:9px;max-width:150px;min-height:34px;padding:0 8px;font-size:11px}.score-buttons button{cursor:pointer;background:#fff;border:1px solid #d9ddd6;border-radius:9px;width:34px;height:34px}.score-buttons button.selected{border-color:var(--green);background:var(--green);color:#fff;font-weight:800}.assessment-history-row small{color:var(--muted);margin-top:6px;font-size:11px;display:block}.finance-explanation{border:1px solid var(--line);background:var(--card);border-radius:16px;margin-bottom:14px;padding:20px}.finance-explanation>div{justify-content:space-between;align-items:baseline;gap:15px;display:flex}.finance-explanation>div span{color:var(--muted)}.finance-explanation>div strong{font-size:24px;font-weight:700}.finance-explanation details{margin-top:15px}.finance-explanation summary{color:var(--green);cursor:pointer;font-size:12px;font-weight:750}.compact-history{color:var(--muted);gap:7px;margin-top:11px;font-size:12px;display:grid}.danger-zone{border-color:#efd1c8}.finance-page-heading{align-items:center;margin-bottom:24px}.finance-page-heading h1{font-size:clamp(30px,3vw,39px)}.finance-page-heading p:not(.eyebrow){font-size:13px}.finance-command-grid{grid-template-columns:minmax(0,1.65fr) minmax(280px,.75fr);gap:16px;margin-bottom:16px;display:grid}.finance-income-card{background:var(--card);min-height:258px;box-shadow:var(--shadow);border:1px solid #dce3dc;border-radius:22px;padding:28px}.finance-income-heading{align-items:center;gap:16px;display:flex}.finance-hero-icon{width:50px;height:50px;color:var(--green);background:#ffffffb8;border-radius:15px;flex:none;place-items:center;display:grid;box-shadow:inset 0 0 0 1px #245f4b14}.finance-income-heading small,.finance-income-heading strong{display:block}.finance-income-heading small{color:#5f7068;letter-spacing:.07em;text-transform:uppercase;font-size:11px;font-weight:780}.finance-income-heading strong{letter-spacing:-.025em;margin-top:6px;font-size:clamp(34px,5vw,44px);font-weight:700;line-height:1}.finance-goal-summary{justify-content:space-between;align-items:end;gap:18px;margin-top:30px;display:flex}.finance-goal-summary>span{color:var(--muted);font-size:12px}.finance-goal-summary>span strong{color:var(--ink);margin-top:5px;font-size:20px;font-weight:700;display:block}.finance-goal-summary>b{color:var(--green);font-size:24px;font-weight:700}.finance-progress{background:#e2e7e2;border-radius:999px;height:8px;margin-top:16px;overflow:hidden}.finance-progress>span{border-radius:inherit;background:var(--green);height:100%;display:block}.finance-income-card>p{color:#5f6f67;margin:12px 0 0;font-size:12px}.finance-secondary-stack{gap:12px;display:grid}.finance-secondary-card{border:1px solid var(--line);background:var(--card);border-radius:18px;align-items:flex-start;gap:14px;min-height:123px;padding:20px;display:flex}.finance-secondary-card.forecast{background:var(--card)}.finance-secondary-card>div{min-width:0}.finance-secondary-card span,.finance-secondary-card strong,.finance-secondary-card small{display:block}.finance-secondary-card div>span{color:var(--muted);letter-spacing:.055em;text-transform:uppercase;font-size:11px;font-weight:760}.finance-secondary-card div>small{color:var(--muted);margin-top:6px;font-size:11px;line-height:1.4}.finance-capacity-card{margin-bottom:16px;padding:22px 24px;overflow:visible}.finance-capacity-heading{justify-content:space-between;align-items:center;gap:20px;display:flex}.finance-capacity-heading>div{align-items:center;gap:14px;display:flex}.finance-capacity-heading small,.finance-capacity-heading strong,.finance-capacity-free{display:block}.finance-capacity-heading small{color:var(--muted);font-size:11px}.finance-capacity-heading>div>span>strong{margin-top:4px;font-size:23px;font-weight:700}.finance-capacity-free{text-align:right}.finance-capacity-free strong{color:var(--blue);margin-top:4px;font-size:20px;font-weight:700}.finance-capacity-breakdown{grid-template-columns:repeat(3,1fr);gap:0;margin-top:16px;display:grid}.finance-capacity-breakdown>span{border-right:1px solid var(--line);padding-right:18px}.finance-capacity-breakdown>span:not(:first-child){padding-left:18px}.finance-capacity-breakdown>span:last-child{border-right:0}.finance-capacity-breakdown small,.finance-capacity-breakdown strong{display:block}.finance-capacity-breakdown small{color:var(--muted);font-size:11px}.finance-capacity-breakdown strong{margin-top:5px;font-size:14px}.finance-operations{grid-template-columns:repeat(4,minmax(0,1fr));margin-bottom:16px;display:grid}.finance-operations article{border-right:1px solid var(--line);align-items:center;gap:13px;min-height:102px;padding:17px 19px;display:flex}.finance-operations article:last-child{border-right:0}.finance-operations article>div{min-width:0}.finance-operations article strong{font-size:22px;font-weight:700;display:block}.finance-operations article strong small{color:var(--muted);font:inherit}.finance-operations article div>span{color:var(--muted);margin-top:4px;font-size:11px;line-height:1.35;display:block}.finance-student-panel{margin-top:0}.finance-attention-summary{color:#9a4b38;background:var(--coral-soft);border-radius:999px;align-items:center;min-height:28px;padding:0 10px;font-size:11px;font-weight:750;display:inline-flex}.finance-attention-summary.quiet{color:var(--green);background:var(--green-soft)}.finance-student-table-wrap{width:100%}.finance-student-table{border-collapse:collapse;table-layout:fixed;width:100%}.finance-student-table th{color:var(--muted);letter-spacing:.055em;text-align:left;text-transform:uppercase;background:#fafaf6;padding:11px 14px;font-size:10px;font-weight:740}.finance-student-table th:first-child,.finance-student-table td:first-child{width:29%;padding-left:22px}.finance-student-table th:nth-child(2){width:18%}.finance-student-table th:nth-child(3),.finance-student-table th:nth-child(4){width:17%}.finance-student-table th:last-child,.finance-student-table td:last-child{text-align:right;width:19%;padding-right:18px}.finance-student-table td{vertical-align:middle;border-top:1px solid #eaebe6;height:76px;padding:11px 14px}.finance-student-table tbody tr{transition:background .15s}.finance-student-table tbody tr:hover{background:#f7f8f4}.finance-student-table tbody tr.has-debt{background:#fffaf7}.finance-student-table tbody tr.has-debt:hover{background:#fdf4ef}.finance-student-table td>strong,.finance-student-table td>small{display:block}.finance-student-table td>strong{font-size:13px}.finance-student-table td>small{color:var(--muted);margin-top:4px;font-size:10px}.finance-student-name{align-items:center;gap:12px;display:flex}.finance-student-name strong{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.finance-paid-pill{color:#527063!important;background:#edf3ef!important}.finance-student-action .button{min-height:34px;padding:0 11px;font-size:11px}.finance-secondary-action{color:var(--green);align-items:center;gap:4px;font-size:11px;font-weight:700;display:inline-flex}.student-finance-panel{margin-top:18px}.student-finance-grid{background:var(--line);grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;display:grid}.student-finance-grid article{background:var(--card);min-height:112px;padding:18px 20px}.student-finance-grid span,.student-finance-grid strong,.student-finance-grid small{display:block}.settings-form-card{margin:0}.settings-actions{align-items:flex-end}.finance-history{margin-top:18px}.ledger-simple{padding:6px 20px}.ledger-simple>div{border-bottom:1px solid #e9ebe6;justify-content:space-between;align-items:center;gap:16px;min-height:67px;display:flex}.ledger-simple>div:last-child{border-bottom:0}.ledger-simple span strong,.ledger-simple small{display:block}.ledger-simple small{color:var(--muted);margin-top:4px}.ledger-payment-actions{flex-direction:column;align-items:flex-end;gap:4px;display:flex}.voided{text-decoration:line-through;color:var(--muted)!important}.muted-link{color:var(--muted)}.command-backdrop{z-index:100;background:#101c177a;justify-content:center;align-items:flex-start;padding:12vh 18px 18px;display:flex;position:fixed;inset:0}.command-dialog{background:#fffefa;border:1px solid #ffffff80;border-radius:18px;width:min(620px,100%);overflow:hidden;box-shadow:0 28px 80px #101c1740}.command-search{border-bottom:1px solid var(--line);align-items:center;gap:11px;height:58px;padding:0 14px;display:flex}.command-search input{background:0 0;border:0;outline:0;flex:1;min-width:0;height:100%;font-size:16px}.command-results{max-height:54vh;padding:7px;overflow:auto}.command-results>button{text-align:left;cursor:pointer;background:0 0;border:0;border-radius:11px;justify-content:space-between;align-items:center;gap:14px;width:100%;min-height:58px;padding:9px 11px;display:flex}.command-results>button:hover,.command-results>button:focus{background:var(--green-soft);outline:0}.command-results strong,.command-results small{display:block}.command-results small{color:var(--muted);margin-top:4px}.program-section{margin-bottom:14px}.program-section .panel-heading{min-height:70px}.program-list{grid-template-columns:repeat(2,1fr);display:grid}.program-item{border-right:1px solid var(--line);border-bottom:1px solid var(--line);min-height:220px;padding:18px}.program-item:nth-child(2n){border-right:0}.program-item code{color:var(--accent);font-family:ui-monospace,JetBrains Mono,Menlo,monospace;font-size:10px;font-weight:700;display:block}.program-item strong{margin-top:9px;line-height:1.35;display:block}.program-item>p{min-height:42px;color:var(--muted);margin:9px 0 13px;font-size:12px;line-height:1.5}.program-item-heading{justify-content:space-between;align-items:center;gap:10px;display:flex}.placeholder{text-align:center;place-items:center;min-height:55vh;display:grid}.placeholder>div{max-width:440px}.placeholder h1{font-size:32px;font-weight:700}.placeholder p{color:var(--muted);line-height:1.6}@media (max-width:1050px){.metric-grid{grid-template-columns:repeat(2,1fr)}.dashboard-grid,.content-grid,.finance-command-grid{grid-template-columns:1fr}.finance-secondary-stack,.finance-operations{grid-template-columns:repeat(2,minmax(0,1fr))}.finance-operations article:nth-child(2n){border-right:0}.finance-operations article:nth-child(-n+2){border-bottom:1px solid var(--line)}.finance-student-table{table-layout:auto}.finance-student-table thead{display:none}.finance-student-table tbody{gap:10px;padding:12px;display:grid}.finance-student-table tr{border:1px solid var(--line);background:#fffefa;border-radius:14px;grid-template-columns:repeat(3,minmax(0,1fr)) auto;padding:14px;display:grid}.finance-student-table tbody tr.has-debt{border-color:#efd6cd}.finance-student-table td,.finance-student-table td:first-child,.finance-student-table td:last-child{text-align:left;border:0;width:auto;height:auto;padding:8px 12px}.finance-student-table .finance-student-name{border-bottom:1px solid var(--line);grid-column:1/-1;padding:0 0 10px}.finance-student-table td:not(.finance-student-name):not(.finance-student-action):before{content:attr(data-label);color:var(--muted);letter-spacing:.04em;text-transform:uppercase;margin-bottom:5px;font-size:9px;font-weight:740;display:block}.finance-student-action{justify-content:flex-end;align-items:end;display:flex}.student-strip,.focus-grid{grid-template-columns:1fr}}@media (max-width:760px){body{font-size:14px}.sidebar{display:none}.workspace{margin-left:0;padding-bottom:70px}.topbar{height:62px;padding:0 16px}.mobile-brand{align-items:center;gap:9px;display:flex}.mobile-brand .brand-mark{border-radius:9px;width:31px;height:31px}.command-button{justify-content:center;width:40px;padding:0}.command-button span,.command-button kbd,.topbar-note{display:none}.workspace,.page{min-width:0;overflow-x:hidden}.page{padding:28px 16px 50px}.page-heading{flex-direction:column;align-items:flex-start}.page-heading .button{width:100%}.metric-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.metric-card{flex-direction:column;align-items:flex-start;gap:10px;min-width:0;min-height:112px;padding:13px}.metric-icon{border-radius:10px;width:35px;height:35px}.metric-card strong{font-size:18px}.metric-card span:last-child{font-size:10px}.finance-page-heading{gap:16px;margin-bottom:20px}.finance-page-heading h1{font-size:32px}.finance-page-heading p:not(.eyebrow){font-size:12px;line-height:1.45}.finance-command-grid{gap:10px;margin-bottom:10px}.finance-income-card{border-radius:18px;min-height:236px;padding:20px}.finance-hero-icon{border-radius:13px;width:43px;height:43px}.finance-income-heading{gap:13px}.finance-income-heading strong{font-size:38px}.finance-goal-summary{margin-top:25px}.finance-goal-summary>b{font-size:21px}.finance-secondary-stack{gap:9px}.finance-secondary-card{flex-direction:column;gap:12px;min-height:145px;padding:15px}.finance-secondary-card div>span{font-size:10px}.finance-secondary-card div>strong{font-size:23px}.finance-secondary-card div>small{font-size:10px}.finance-capacity-card{margin-bottom:10px;padding:18px}.finance-capacity-heading{align-items:flex-start}.finance-capacity-heading>div{align-items:flex-start;gap:11px}.finance-capacity-heading>div>span>strong{font-size:19px}.finance-capacity-free strong{font-size:18px}.finance-capacity-breakdown>span{padding-right:10px}.finance-capacity-breakdown>span:not(:first-child){padding-left:10px}.finance-capacity-breakdown small{font-size:9px;line-height:1.3}.finance-capacity-breakdown strong{font-size:12px}.finance-operations{margin-bottom:10px}.finance-operations article{flex-direction:column;align-items:flex-start;min-height:105px;padding:14px}.finance-operations article strong{font-size:19px}.finance-operations article div>span{font-size:10px}.finance-student-panel .panel-heading{flex-direction:column;align-items:flex-start}.finance-student-table tbody{padding:9px}.finance-student-table tr{grid-template-columns:1fr 1fr;padding:13px}.finance-student-table .finance-student-name{grid-column:1/-1}.finance-student-action{grid-column:1/-1;justify-content:stretch;padding-top:10px!important}.finance-student-action .button{width:100%}.finance-secondary-action{border:1px solid var(--line);border-radius:10px;justify-content:center;width:100%;min-height:36px}.student-finance-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.settings-actions{flex-direction:column;align-items:stretch}.settings-actions .button{width:100%}.panel-heading{padding:17px}.attention-row{padding:9px}.row-action{font-size:0}.matrix-section{grid-template-columns:1fr}.matrix-section h3{border-right:0;border-bottom:1px solid var(--line)}.matrix-items,.program-list{grid-template-columns:1fr}.matrix-item:nth-child(odd),.program-item{border-right:0}.student-hero{grid-template-columns:auto 1fr;padding:18px}.student-status-cluster{border-top:1px solid var(--line);flex-direction:column;grid-column:1/-1;align-items:stretch;gap:12px;padding-top:14px}.goal-block{border-right:0;border-bottom:1px solid var(--line);min-width:0;padding:0 0 12px}.debt-block{text-align:left}.progress-heading{flex-direction:column;align-items:stretch}.risk-summary{justify-content:flex-start}.progress-matrix{padding:10px}.progress-item summary{grid-template-columns:44px minmax(0,1fr) 18px;gap:8px;padding:10px}.progress-item summary>.pill{grid-column:2;justify-self:start}.progress-item summary>.mastery-value,.progress-item summary>.last-result{grid-column:2}.progress-item summary>.details-chevron{grid-area:1/3}.progress-details{grid-template-columns:1fr;padding:14px}.student-timeline-entry{grid-template-columns:72px 72px minmax(0,1fr);gap:8px}.field-grid{grid-template-columns:1fr}.field.full{grid-column:auto}.homework-count-grid{grid-template-columns:1fr}.form-card{padding:18px}.completion-bar{flex-direction:column;align-items:stretch;bottom:76px}.completion-bar .button{width:100%}.section-heading-row,.assessment-item{flex-direction:column;align-items:stretch}.section-heading-row .button{align-self:flex-start}.score-buttons{flex-wrap:wrap}.assessment-controls{flex-direction:column;align-items:flex-start}.ledger-simple>div{align-items:flex-start;padding:13px 0}.finance-history .panel-heading{flex-direction:column;align-items:flex-start}.finance-history .button{width:100%}.mobile-nav{z-index:30;height:66px;padding:7px 6px max(7px, env(safe-area-inset-bottom));border-top:1px solid var(--line);background:#fff;grid-template-columns:repeat(4,1fr);display:grid;position:fixed;inset:auto 0 0}.mobile-nav a{color:#6b756f;flex-direction:column;justify-content:center;align-items:center;gap:3px;font-size:9px;display:flex}.mobile-nav a[aria-current=page]{color:var(--green);font-weight:750}.account-menu{flex:none;margin-left:auto;display:block;position:relative}.account-button{background:var(--accent);color:#fff;cursor:pointer;border:0;border-radius:13px;place-items:center;width:40px;height:40px;font-size:15px;font-weight:650;display:grid}.account-backdrop{z-index:40;background:#16181d59;position:fixed;inset:0}.account-sheet{z-index:50;border:1px solid var(--accent-line);background:var(--card);border-radius:15px;width:min(268px,100vw - 32px);padding:7px;display:grid;position:absolute;top:calc(100% + 9px);right:0;box-shadow:0 20px 50px -14px #1018284d}.account-sheet-head{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:10px;margin-bottom:5px;padding:9px 10px 11px;display:flex}.account-sheet-head strong{font-size:14px;font-weight:650;display:block}.account-sheet-head small{color:var(--meta);margin-top:2px;font-size:11px;display:block}.account-sheet-head button{width:28px;height:28px;color:var(--meta);cursor:pointer;background:0 0;border:0;border-radius:8px;flex:none;place-items:center;display:grid}.account-sheet form{display:contents}.account-sheet a,.account-sheet form button,.account-sheet>button{width:100%;color:var(--ink-dense);font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:10px;align-items:center;gap:11px;padding:11px 10px;font-size:14px;display:flex}.account-sheet a:active,.account-sheet button:active{background:var(--control)}.account-sheet .account-signout{color:var(--coral)}}html{scroll-behavior:smooth}body{line-height:1.45}h1,h2,h3,h4,strong{letter-spacing:-.01em}.mono-value,.summary-strip strong,.month-metrics strong,.finance-income-heading strong,.finance-goal-summary strong,.finance-goal-summary b,.finance-secondary-card div>strong,.finance-capacity-heading strong,.finance-capacity-free strong,.finance-capacity-breakdown strong,.finance-operations article strong,.finance-student-table td>strong,.student-finance-grid strong,.ledger-simple>div>strong{font-variant-numeric:tabular-nums}.sidebar{width:76px;color:var(--ink);background:0 0;border-right:0;align-items:center;gap:6px;padding:18px 0;overflow:visible}.brand{gap:0;min-height:0;padding:0 0 10px}.brand-mark{border-radius:var(--r-btn);background:var(--accent);color:#fff;width:44px;height:44px;box-shadow:none;flex:none;font-size:17px;font-weight:600;line-height:1}.brand-copy,.owner-copy{display:none}.nav-list{justify-items:center;gap:6px}.nav-list>:is(a,button),.sidebar-foot>:is(a,button){border-radius:var(--r-block-s);width:48px;height:48px;min-height:0;color:var(--accent);opacity:.42;background:0 0;place-items:center;gap:0;padding:0;transition:opacity .12s,background .12s;display:grid}.nav-list>:is(a,button) svg,.sidebar-foot>:is(a,button) svg{flex:none}.nav-label{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.nav-list>:is(a,button):hover,.sidebar-foot>:is(a,button):hover{opacity:.7;background:0 0}.nav-list>:is(a,button)[aria-current=page],.sidebar-foot>:is(a,button)[aria-current=page]{opacity:1;color:var(--accent);background:var(--card)}.sidebar-foot{justify-items:center;gap:6px}.owner-chip{border-top:0;gap:0;padding:0}.owner-chip>span{width:40px;height:40px;color:var(--accent-mid);background:var(--accent-line);border-radius:50%;flex:none;font-size:13px;font-weight:600}.owner-chip strong{display:none}.workspace{margin-left:76px}.topbar{-webkit-backdrop-filter:none;backdrop-filter:none;background:0 0;border-bottom:0;height:auto;padding:22px 26px 0 8px}.command-button{border-radius:var(--r-btn);width:380px;max-width:100%;height:44px;color:var(--muted);background:var(--card);box-shadow:none;border:0;padding:0 16px}.command-button:hover{color:var(--ink);background:var(--card)}kbd{color:var(--muted);background:var(--control);border:0;border-radius:6px;font-size:11px;font-weight:600}.topbar-note{display:none}.page{max-width:1280px;padding:24px 28px 48px}.page-heading{align-items:center;margin-bottom:16px}.page-heading p:not(.eyebrow){font-size:13px}.eyebrow{color:#8a8a8a;letter-spacing:.09em;font-size:10px}.button{min-height:36px;box-shadow:none;border-color:#dedede;border-radius:7px;gap:7px;padding:0 13px;font-size:12px;font-weight:620}.button.primary{color:#fff;border-color:var(--accent);background:var(--accent);box-shadow:none}.button.danger-soft{color:var(--coral);background:var(--coral-soft);border-color:#fecaca}.button.compact{min-height:30px;padding:0 10px;font-size:11px}.text-link,.row-action,.finance-secondary-action{color:var(--accent)}.panel,.list-panel,.info-card,.form-card,.finance-explanation{border-color:var(--line);box-shadow:none;background:#fff;border-radius:6px}.panel-heading{border-bottom-color:var(--line);min-height:52px;padding:11px 14px}.panel-heading h2,.info-card h2,.form-card h2,.impact-card h2,.progress-section>h3{font-weight:640}.panel-heading h2{margin-top:1px;font-size:20px}.count-badge{min-width:24px;height:24px;color:var(--accent);background:var(--accent-soft);border-radius:6px;font-size:11px}.avatar,.avatar.large{width:32px;height:32px;color:var(--accent);background:var(--accent-soft);border-radius:7px;font-size:12px}.pill{border-radius:5px;min-height:22px;padding:0 7px;font-size:10px;font-weight:650}.metric-icon{border-radius:7px;width:34px;height:34px}.table-toolbar{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:14px;min-height:46px;padding:9px 12px;display:flex}.table-toolbar strong,.table-toolbar span{display:block}.table-toolbar>div>strong{font-size:13px;font-weight:640}.table-toolbar>div>span{color:var(--muted);margin-top:2px;font-size:11px}.compact-empty{min-height:130px}.summary-strip{border:1px solid var(--line);background:#fff;border-radius:6px;grid-template-columns:repeat(4,minmax(0,1fr));margin-bottom:10px;display:grid;overflow:hidden}.summary-strip article:last-child{border-right:0}.summary-strip span,.summary-strip strong,.summary-strip small{display:block}.summary-strip span{color:var(--muted);text-transform:uppercase;letter-spacing:.04em;font-size:10px;font-weight:620;line-height:1.2}.summary-strip small{color:#a3a3a3;margin-top:3px;font-size:10px;line-height:1.2}.command-center-grid{grid-template-columns:1fr 1fr;gap:18px;display:grid}.command-center-grid .panel,.month-panel{background:0 0;border-left:0;border-right:0;border-radius:0}.today-list{padding:4px 12px}.today-row{border-bottom:1px solid #f0f0f0;grid-template-columns:140px minmax(0,1fr) auto;align-items:center;gap:12px;min-height:50px;padding:8px 4px;display:grid}.today-row time strong,.today-row time span{display:block}.today-row time strong{font-size:11px}.today-row time span{color:var(--muted);font-size:10px}.today-row>a:not(.button){font-weight:620}.attention-list{padding:4px 8px}.attention-row{border-radius:4px;min-height:50px;padding:6px 4px}.attention-icon{color:var(--amber);flex:none}.attention-copy strong{font-size:12px}.attention-copy small{margin-top:2px;font-size:10px}.row-action{font-size:11px}.month-panel{margin-top:10px}.month-metrics{grid-template-columns:repeat(4,minmax(0,1fr)) auto;align-items:stretch;display:grid}.month-metrics article{border-right:1px solid var(--line);padding:10px 12px}.month-metrics article span,.month-metrics article strong{display:block}.month-metrics article span{color:var(--muted);font-size:10px}.month-metrics article strong{margin-top:6px;font-size:16px;font-weight:620}.month-metrics>.button{align-self:center;margin:0 14px}.students-table-head,.student-table-row{grid-template-columns:1.08fr 1.28fr .9fr 1.25fr 20px;align-items:center;gap:16px;display:grid}.students-table-head{color:#a3a3a3;border-bottom:1px solid var(--line);letter-spacing:.05em;text-transform:uppercase;background:#fafafa;min-height:34px;padding:0 16px;font-size:9px;font-weight:650}.student-table-row{border-bottom:1px solid #f0f0f0;min-height:56px;padding:7px 14px}.student-table-row:last-child{border-bottom:0}.student-table-row:hover{background:#fafafa}.student-name-cell{align-items:center;gap:10px;min-width:0;display:flex}.student-name-cell strong,.student-name-cell small,.student-focus-cell strong,.student-next-cell strong{display:block}.student-focus-cell small,.student-next-cell small{display:none}.student-name-cell strong{text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.student-name-cell small,.student-focus-cell small,.student-next-cell small{color:var(--muted);margin-top:2px;font-size:10px}.student-focus-cell,.student-next-cell{min-width:0}.student-focus-cell strong,.student-next-cell strong{text-overflow:ellipsis;white-space:nowrap;margin-top:2px;font-size:12px;font-weight:560;overflow:hidden}.student-finance-context>span{display:inline}.student-risk-cell{flex-wrap:wrap;gap:4px;display:flex}.no-risk-copy{color:var(--muted);font-size:12px}.program-table-wrap,.progress-table-wrap{width:100%;overflow-x:auto}.program-table,.progress-table{border-collapse:collapse;table-layout:fixed;width:100%}.program-table th,.progress-table th{color:#a3a3a3;letter-spacing:.05em;text-align:left;text-transform:uppercase;background:#fafafa;height:34px;padding:0 12px;font-size:9px;font-weight:650}.program-table th:first-child{width:86px;padding-left:18px}.program-table th:nth-child(2){width:24%}.program-table th:nth-child(4){width:120px}.program-table th:last-child{width:76px}.program-table td{border-top:1px solid var(--line);vertical-align:top;padding:9px 12px}.program-table td:first-child{padding-left:18px}.program-table code,.progress-table code{color:var(--accent);font-family:ui-monospace,JetBrains Mono,Menlo,monospace;font-size:11px;font-weight:650}.program-table td strong{font-size:13px;font-weight:620;display:block}.program-description{color:#525252;font-size:13px;line-height:1.4}.source-note{border-top:1px solid var(--line);color:var(--muted);margin:0;padding:11px 16px;font-size:10px}.student-header{border:1px solid var(--line);background:#fff;border-radius:6px;grid-template-columns:44px minmax(180px,1fr) minmax(520px,1.7fr);align-items:center;gap:12px;padding:10px 12px;display:grid}.student-header>.avatar{width:38px;height:38px;font-size:14px}.student-header-main h1{margin:0;font-size:32px;line-height:1.08}.student-header-main p{color:var(--muted);margin:3px 0 0;font-size:11px}.student-header-facts{grid-template-columns:1.4fr 1fr 1fr .9fr;display:grid}.student-header-facts>div{border-left:1px solid var(--line);min-height:36px;padding:1px 10px}.student-header-facts span,.student-header-facts strong,.student-header-facts small{display:block}.student-header-facts span{color:var(--muted);text-transform:uppercase;letter-spacing:.04em;font-size:9px}.student-header-facts strong{margin-top:4px;font-size:11px}.student-header-facts small{color:var(--accent);margin-top:2px;font-size:9px}.action-cluster{margin-top:8px}.tabs{border:1px solid var(--line);background:#f5f5f4;border-radius:5px;gap:2px;margin:10px 0 8px;padding:2px}.tabs a{border-radius:4px;padding:5px 9px;font-size:11px}.tabs a:first-child{color:var(--accent);background:#fff;box-shadow:0 1px 2px #1717170f}.student-overview{grid-template-columns:1.3fr .85fr;display:grid}.schedule-note{color:var(--muted);margin:6px 0 0;font-size:11px}.diagnosis-block{background:#fff;min-width:0;padding:14px 16px}.diagnosis-block span{color:var(--muted);letter-spacing:.04em;text-transform:uppercase;font-size:10px;font-weight:650;display:block}.diagnosis-block strong{margin-top:6px;font-size:13px;font-weight:620;line-height:1.4;display:block}.diagnosis-block small{color:var(--muted);margin-top:5px;font-size:10px;line-height:1.4;display:block}.next-step-block{border-top:1px solid var(--line);padding:14px 16px}.next-step-block span{color:var(--muted);letter-spacing:.04em;text-transform:uppercase;font-size:10px;font-weight:650;display:block}.next-step-block strong{margin-top:6px;font-size:13px;font-weight:620;display:block}.last-lesson-recap{border-top:1px solid var(--line);align-items:baseline;gap:14px;padding:12px 16px;display:flex}.last-lesson-recap>span:first-child{color:var(--muted);letter-spacing:.04em;text-transform:uppercase;flex:none;font-size:10px;font-weight:650}.last-lesson-recap p{color:#525252;flex:1;min-width:0;margin:0;font-size:12px;line-height:1.5}.last-lesson-recap .result-badge{flex:none}.lesson-summary-list{margin:0}.lesson-summary-list>div{border-top:1px solid #f0f0f0;grid-template-columns:110px minmax(0,1fr);gap:14px;min-height:40px;padding:8px 12px;display:grid}.lesson-summary-list dt{color:var(--muted);font-size:10px}.lesson-summary-list dd{margin:0;font-size:11px;font-weight:560}.result-badge{color:var(--accent);background:var(--accent-soft);border-radius:5px;padding:4px 7px;font-size:11px;font-weight:650}.student-context-list>div:last-child{border-bottom:0}.student-context-list span,.student-context-list strong,.student-context-list small{display:block}.student-context-list span{color:var(--muted);text-transform:uppercase;letter-spacing:.04em;font-size:9px}.student-timeline-panel{margin-top:8px}.student-timeline-entry{border-bottom-color:#f0f0f0;min-height:50px;padding:8px 0}.timeline-kind{border-radius:5px}.progress-panel{margin-top:8px}.progress-heading p:not(.eyebrow){margin-top:3px}.risk-counter{border-radius:5px;min-height:25px;padding:0 7px}.progress-toolbar{border-bottom:1px solid var(--line);align-items:center;gap:3px;padding:7px 10px;display:flex}.progress-toolbar button{min-height:28px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:5px;padding:0 9px;font-size:10px}.progress-table th:nth-child(5){width:100px}.progress-table td{border-top:1px solid var(--line);vertical-align:middle;height:50px;padding:6px 9px;font-size:11px}.progress-table tr.risk-red>td:first-child{border-left-color:var(--coral)}.progress-table tr.risk-yellow>td:first-child{border-left-color:var(--amber)}.progress-table td strong,.progress-table td small{display:block}.progress-table td small{color:var(--muted);margin-top:3px;font-size:9px}.risk-label.risk-red{color:var(--coral)}.risk-label.risk-yellow{color:var(--amber)}.risk-label.risk-green{color:var(--green)}.progress-error-cell{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.progress-expand{width:28px;height:28px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:5px;place-items:center;padding:0;display:grid}.expanded .progress-expand svg{transform:rotate(180deg)}.progress-details-row>td{background:#fafafa;height:auto;border-left:0!important;padding:0!important}.progress-row-details{border-top:1px solid var(--line);grid-template-columns:1fr 1fr;gap:24px;padding:16px 20px;display:grid}.progress-row-details p{color:var(--muted);margin:0 0 10px;font-size:11px}.evidence-list h4{margin:0 0 8px;font-size:11px}.schedule-panel{border-left:0;border-right:0;border-radius:0}.schedule-list{padding:0 12px}.schedule-row{border-bottom:1px solid #f0f0f0;grid-template-columns:156px minmax(0,1fr) auto;align-items:center;gap:12px;min-height:46px;display:grid}.schedule-row:last-child{border-bottom:0}.schedule-row time{color:var(--muted);font-size:11px;font-weight:500}.schedule-row>a:not(.button) strong,.schedule-row>a:not(.button) span{display:block}.schedule-row>a:not(.button) strong{font-size:12px;font-weight:600}.schedule-row>a:not(.button) span{color:var(--muted);margin-top:2px;font-size:10px}.finance-page{max-width:1180px}.finance-income-card,.finance-secondary-card.forecast,.student-hero,.homework-focus-card{background-image:none}.finance-command-grid{gap:12px;margin-bottom:12px}.finance-income-card{border-color:var(--line);min-height:178px;box-shadow:none;background:#fff;border-radius:6px;padding:17px}.finance-hero-icon{width:42px;height:42px;color:var(--accent);background:var(--accent-soft);box-shadow:none;border-radius:7px}.finance-income-heading strong{font-size:38px;font-weight:620}.finance-goal-summary{margin-top:15px}.finance-goal-summary>span strong{font-size:16px}.finance-goal-summary>b{color:var(--accent);font-size:18px}.finance-progress{background:#ededed;border-radius:3px;height:6px}.finance-progress>span{background:var(--accent);border-radius:3px}.finance-secondary-stack{gap:10px}.finance-secondary-card{border-left:0;border-right:0;border-radius:0;min-height:82px;padding:12px 10px;background:0 0!important}.finance-secondary-card div>strong{margin-top:4px;font-size:22px;font-weight:620}.finance-secondary-card div>small{margin-top:3px}.finance-capacity-card{margin-bottom:10px;padding:13px 15px}.finance-capacity-heading>div>span>strong{font-size:18px}.finance-capacity-free strong{color:var(--accent);font-size:16px}.finance-progress.blue>span{background:var(--accent)}.finance-operations{margin-bottom:12px}.finance-operations article{min-height:68px;padding:10px 13px}.finance-operations article strong{font-size:17px;font-weight:620}.finance-student-table th{background:#fafafa}.finance-student-table td{border-top-color:var(--line);height:54px;padding-top:8px;padding-bottom:8px}.finance-student-table tbody tr.has-debt,.finance-student-table tbody tr.has-debt:hover{background:snow}.finance-attention-summary{border-radius:5px}.student-finance-grid article{min-height:96px}.student-finance-grid strong{font-size:16px}.form-card{margin-bottom:8px;padding:14px}.form-card h2{font-size:18px}.form-card>p{margin-bottom:14px;font-size:11px}.field-grid{gap:12px}.field{gap:5px}.field input,.field .select-trigger,.field textarea{background:#fff;border-color:#dedede;border-radius:6px;min-height:36px;padding:7px 9px}.field input:focus,.field .select-trigger:focus,.field textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px #3f52b51a}.score-buttons button,.assessment-controls .select-trigger{border-radius:6px}.score-buttons button.selected{border-color:var(--accent);background:var(--accent)}.completion-bar{border-radius:9px}.command-backdrop{-webkit-backdrop-filter:none;backdrop-filter:none;background:#1717176b}.command-dialog{border-color:var(--line);background:#fff;border-radius:10px;box-shadow:0 20px 55px #1717172e}.command-results>button{border-radius:6px}.command-results>button:hover,.command-results>button:focus{background:var(--accent-soft)}@media (max-width:1050px){.student-header{grid-template-columns:44px 1fr}.student-header-facts{border-top:1px solid var(--line);grid-column:1/-1;padding-top:10px}.student-header-facts>div:first-child{border-left:0}.summary-strip{grid-template-columns:repeat(2,1fr)}.summary-strip article:nth-child(2){border-right:0}.summary-strip article:nth-child(-n+2){border-bottom:1px solid var(--line)}.command-center-grid{grid-template-columns:1fr}.students-table-head,.student-table-row{grid-template-columns:1fr 1.12fr .85fr 1fr 20px;gap:10px}.finance-student-table tr{background:#fff;border-radius:7px}}@media (max-width:760px){.workspace{margin-left:0;padding-bottom:66px}.topbar{height:52px;padding:0 12px}.mobile-brand .brand-mark{border-radius:6px;width:30px;height:30px}.mobile-brand strong{font-size:13px}.command-button{border-radius:6px;width:34px;height:34px}.page{padding:18px 12px 32px}.page-heading{gap:10px;margin-bottom:13px}.page-heading h1,.finance-page-heading h1,.placeholder h1{font-size:36px}.page-heading .button{width:auto}.summary-strip{margin-bottom:10px}.summary-strip article{min-height:68px;padding:10px}.summary-strip strong{font-size:16px}.summary-strip small{display:none}.today-row{grid-template-columns:1fr auto;gap:8px}.today-row time{grid-column:1/-1;padding-top:4px}.today-row .button{width:30px;padding:0;font-size:0}.month-panel{margin-top:10px}.month-metrics{grid-template-columns:repeat(2,1fr)}.month-metrics article:nth-child(2){border-right:0}.month-metrics article:nth-child(-n+2){border-bottom:1px solid var(--line)}.month-metrics>.button{grid-column:1/-1;margin:10px}.student-table-row{grid-template-columns:1fr 18px;gap:6px 8px;min-height:64px;padding:9px 10px}.students-table-head{display:none}.student-name-cell{grid-area:1/1}.student-focus-cell{grid-area:2/1/auto/-1;padding-left:42px}.student-risk-cell{grid-area:3/1/auto/-1;padding-left:42px}.student-next-cell{border-top:1px solid #f0f0f0;grid-area:4/1/auto/-1;padding:6px 0 0 42px}.student-focus-cell small,.student-next-cell small{display:block}.student-table-row>svg{grid-area:1/2}.program-table,.program-table tbody,.program-table tr,.program-table td{display:block}.program-table thead{display:none}.program-table tr{border-top:1px solid var(--line);padding:10px 12px 10px 50px;position:relative}.program-table td{border:0;min-height:0;padding:0!important}.program-table td:first-child{position:absolute;top:13px;left:12px}.program-table td:nth-child(3){margin-top:4px;font-size:12px;padding-right:8px!important}.program-table td:nth-child(4),.program-table td:nth-child(5){color:var(--muted);margin:6px 10px 0 0;font-size:10px;display:inline-block}.program-table td:nth-child(4):before{content:"Сложность: "}.program-table td:nth-child(5):before{content:"Баллы: "}.student-header{grid-template-columns:38px 1fr;padding:10px}.student-header>.avatar{width:38px;height:38px}.student-header-main h1{font-size:26px}.student-header-facts{grid-template-columns:1fr 1fr;gap:0;padding-top:8px}.student-header-facts>div{border-top:1px solid #f0f0f0;min-height:46px;padding:7px}.student-header-facts>div:nth-child(odd){border-left:0}.action-cluster{padding-bottom:2px;display:flex;overflow:auto}.action-cluster .button{flex:none;width:auto}.tabs{margin-top:10px}.student-overview{grid-template-columns:1fr}.student-overview-lesson{border-right:0;border-bottom:1px solid var(--line)}.diagnosis-grid{grid-template-columns:1fr}.last-lesson-recap{flex-direction:column;align-items:flex-start;gap:6px}.last-lesson-recap .result-badge{align-self:flex-start}.last-lesson-recap .empty-copy{padding:0}.lesson-summary-list>div{grid-template-columns:82px 1fr}.student-timeline-entry{grid-template-columns:65px 58px minmax(0,1fr)}.risk-summary{gap:4px}.progress-toolbar{overflow:auto}.progress-toolbar>span{display:none}.progress-table,.progress-table tbody,.progress-table tr,.progress-table td{display:block}.progress-table thead{display:none}.progress-table tr:not(.progress-details-row){border-top:1px solid var(--line);padding:10px 40px 10px 52px;position:relative}.progress-table td{height:auto;min-height:0;border:0!important;padding:0!important}.progress-table td:first-child{position:absolute;top:12px;left:12px}.progress-table td:nth-child(2){margin-bottom:7px}.progress-table td:nth-child(3),.progress-table td:nth-child(4),.progress-table td:nth-child(5){align-items:center;margin:0 6px 5px 0;display:inline-flex}.progress-table td:nth-child(3):before,.progress-table td:nth-child(4):before,.progress-table td:nth-child(5):before{display:none}.progress-table td:nth-child(6){margin-top:2px}.progress-table td:nth-child(6) .progress-error-cell:not(:only-child){white-space:normal}.progress-table td:last-child{position:absolute;top:8px;right:8px}.progress-details-row{padding:0!important}.progress-details-row>td{display:block!important;position:static!important}.progress-row-details{grid-template-columns:1fr;gap:14px;padding:14px}.schedule-row{grid-template-columns:1fr auto;min-height:58px;padding:7px 0}.schedule-row time{grid-column:1/-1}.schedule-row .button{grid-area:2/2}.finance-income-card{border-radius:6px;min-height:176px}.finance-income-heading strong{font-size:34px}.finance-secondary-card{border-radius:0;min-height:92px}.finance-capacity-card{border-radius:6px}.finance-operations article{min-height:76px}.finance-student-table tr{border-radius:7px}.form-card{padding:14px}.mobile-nav{height:62px;padding:5px 3px max(5px,env(safe-area-inset-bottom));-webkit-backdrop-filter:none;backdrop-filter:none;background:#fff;grid-template-columns:repeat(5,1fr)}.mobile-nav a{color:var(--muted);font-size:8px}.mobile-nav a[aria-current=page]{color:var(--accent)}}.owner-chip{border-radius:7px;transition:background .15s,color .15s}.owner-chip:hover,.owner-chip:focus-visible{color:var(--ink);background:#f5f5f4;outline:none}.schedule-editor{border-top:1px solid var(--line);grid-column:1/-1;margin-top:14px}.schedule-editor-heading{justify-content:space-between;align-items:center;gap:16px;min-height:58px;padding:12px 0;display:flex}.schedule-editor-heading h3{margin:0;font-size:14px;font-weight:650}.schedule-editor-heading p{color:var(--muted);margin:3px 0 0;font-size:11px}.schedule-slot-list{border:1px solid var(--line);border-radius:6px}.schedule-slot-row{border-bottom:1px solid var(--line);grid-template-columns:28px 1.2fr .85fr 1fr 34px;align-items:end;gap:10px;padding:10px 12px;display:grid}.schedule-slot-row:last-child{border-bottom:0}.schedule-slot-number{width:24px;height:24px;color:var(--accent);background:var(--accent-soft);border-radius:5px;align-self:center;place-items:center;font-size:11px;font-weight:650;display:grid}.schedule-slot-remove{align-self:end;margin-bottom:1px}.schedule-slot-remove:disabled{opacity:.3;cursor:not-allowed}.plan-backdrop{z-index:80;background:#16181d73;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.plan-dialog{background:var(--card);text-align:left;border-radius:20px;width:min(420px,100%);padding:26px;position:relative;box-shadow:0 28px 70px -20px #10182873}.plan-dialog-close{width:32px;height:32px;color:var(--meta);cursor:pointer;background:0 0;border:0;border-radius:10px;place-items:center;display:grid;position:absolute;top:14px;right:14px}.plan-dialog-close:hover{background:var(--control);color:var(--ink)}.plan-dialog-mark{background:var(--accent-soft);width:42px;height:42px;color:var(--accent);border-radius:13px;place-items:center;display:grid}.plan-dialog h2{margin:15px 0 0;font-size:19px;font-weight:700}.plan-dialog p{color:var(--muted);margin:9px 0 0;font-size:13.5px;line-height:1.5}.plan-dialog-note{color:var(--meta)!important;font-size:12.5px!important}.plan-dialog-actions{flex-wrap:wrap;gap:9px;margin-top:20px;display:flex}.result-target{color:var(--ink-dense);margin-top:8px;font-size:13px;font-weight:600}.result-raw{color:var(--muted);font-variant-numeric:tabular-nums;margin-top:6px;font-size:13px;font-weight:500}.plan-counter{flex-wrap:wrap;align-items:baseline;gap:9px;display:flex}.plan-counter strong{font-size:15px;font-weight:650}.plan-counter span{color:var(--muted);font-size:12.5px}.plan-badge{background:var(--accent-soft);color:var(--accent);border-radius:6px;padding:4px 9px;font-size:11px;font-weight:650}.plan-badge.over{background:var(--coral-mid);color:var(--coral-dark)}.select-field{position:relative}.select-trigger{border-radius:var(--r-btn);width:100%;min-height:44px;color:var(--ink);background:var(--surface);text-align:left;cursor:pointer;border:0;justify-content:space-between;align-items:center;gap:10px;padding:11px 14px;font-size:15px;font-weight:500;transition:background .12s,box-shadow .12s;display:flex}.select-trigger:hover:not(:disabled){background:var(--control-hover)}.select-trigger:focus-visible,.select-trigger[aria-expanded=true]{background:var(--card);box-shadow:0 0 0 2px var(--accent);outline:0}.select-trigger[aria-invalid=true]{color:var(--coral);background:var(--coral-soft);box-shadow:inset 0 0 0 1.5px var(--coral)}.select-trigger:disabled{color:var(--on-disabled);background:var(--surface-strong);cursor:not-allowed}.select-trigger>span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.select-trigger svg{color:var(--meta);flex:none}.select-placeholder{color:var(--meta)}.select-popup{z-index:90;border:1px solid var(--accent-line);background:var(--card);border-radius:12px;flex-direction:column;display:flex;position:fixed;overflow:hidden;box-shadow:0 16px 44px #10182829}.select-search{border-bottom:1px solid var(--line);flex:none;align-items:center;gap:8px;padding:10px 12px;display:flex}.select-search svg{color:var(--meta);flex:none}.select-search input{width:100%;color:var(--ink);font:inherit;background:0 0;border:0;outline:none}.select-list{margin:0;padding:6px;list-style:none;overflow-y:auto}.select-option{min-height:34px;color:var(--ink-dense);cursor:pointer;border-radius:8px;justify-content:space-between;align-items:center;gap:10px;padding:7px 10px;font-size:13.5px;display:flex}.select-option span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.select-option svg{color:var(--accent);flex:none}.select-option.active{color:var(--ink);background:var(--accent-soft)}.select-option[aria-selected=true]{font-weight:600}.select-option.disabled{color:var(--meta);cursor:not-allowed}.select-option.disabled.active{background:0 0}.select-empty{color:var(--meta);padding:12px 10px;font-size:13px}.select-group{color:var(--meta);letter-spacing:.06em;text-transform:uppercase;padding:12px 10px 6px;font-size:10px;font-weight:750}.select-list>.select-group:first-child{padding-top:4px}.select-meta{color:var(--meta);font-variant-numeric:tabular-nums;flex:none;margin-left:auto;font-size:12px;font-style:normal}.select-option.active .select-meta{color:var(--ink-dense)}.mode-choice{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.mode-card{border:1px solid var(--line);background:var(--card);color:var(--ink);border-radius:19px;align-content:start;gap:9px;padding:26px;transition:border-color .16s,box-shadow .16s;display:grid}.mode-card:hover{border-color:var(--accent-line);box-shadow:0 6px 20px #24304412}.mode-card svg{color:var(--accent)}.mode-card strong{font-size:17px;font-weight:650}.mode-card span{color:var(--muted);font-size:13px;line-height:1.5}.mode-card em{color:var(--accent);align-items:center;gap:6px;margin-top:5px;font-size:13px;font-style:normal;font-weight:600;display:inline-flex}.goal-note{color:var(--meta);margin:9px 0 0;font-size:11.5px;line-height:1.5}.mode-choice-note{color:var(--meta);margin:14px 0 0;font-size:12px}.initial-state{border:1px solid var(--line);border-radius:6px;grid-column:1/-1;margin-top:14px}.initial-state>summary{cursor:pointer;justify-content:space-between;align-items:center;gap:16px;padding:14px 16px;list-style:none;display:flex}.initial-state>summary::-webkit-details-marker{display:none}.initial-state>summary:after{content:"";border-right:1.5px solid var(--meta);border-bottom:1.5px solid var(--meta);flex:none;width:7px;height:7px;margin-right:3px;transition:transform .15s;transform:rotate(45deg)translate(-2px,-2px)}.initial-state[open]>summary:after{transform:rotate(225deg)translate(-1px,-1px)}.initial-state[open]>summary{border-bottom:1px solid var(--line)}.initial-state>summary>span:first-child{gap:3px;display:grid}.initial-state>summary strong{font-size:14px;font-weight:650}.initial-state>summary small{color:var(--muted);font-size:11px}.initial-state-count{color:var(--accent);background:var(--accent-soft);border-radius:5px;flex:none;padding:4px 9px;font-size:11px;font-weight:650}.initial-state-body{gap:22px;padding:18px 16px;display:grid}.initial-state-block h3{margin:0;font-size:13px;font-weight:650}.initial-state-block>p{color:var(--muted);margin:3px 0 12px;font-size:11px}.initial-state-list{border:1px solid var(--line);border-radius:6px;margin:0;padding:0;list-style:none}.initial-state-list>li{border-bottom:1px solid var(--line);grid-template-columns:30px minmax(0,1fr) 190px;align-items:center;gap:12px;padding:8px 12px;display:grid}.initial-state-list>li:last-child{border-bottom:0}.initial-state-mark{width:24px;height:24px;color:var(--accent);background:var(--accent-soft);border-radius:5px;place-items:center;font-size:11px;font-weight:650;display:grid}.initial-state-list label{min-width:0;color:var(--ink-dense);font-size:12px;font-weight:400}.initial-state-list .select-trigger{min-height:36px;padding:7px 10px;font-size:12px}.settings-page{max-width:960px}.settings-form-card{scroll-margin-top:116px}.settings-form-card .section-heading-row>div>p:last-child{color:var(--muted);margin:4px 0 0}.settings-defaults{border:1px solid var(--line);border-radius:6px;grid-template-columns:repeat(3,1fr);margin:12px 0 0;display:grid}.settings-defaults>div{border-right:1px solid var(--line);min-width:0;padding:10px 12px}.settings-defaults>div:last-child{border-right:0}.settings-defaults dt{color:var(--muted);font-size:10px}.settings-defaults dd{text-overflow:ellipsis;margin:4px 0 0;font-size:12px;font-weight:600;overflow:hidden}.student-archive-zone{border:1px solid var(--line);background:#fff;border-radius:6px;margin-top:12px}.student-archive-zone summary{color:var(--muted);cursor:pointer;padding:11px 14px;font-size:11px;font-weight:620}.student-archive-zone[open] summary{border-bottom:1px solid var(--line)}.student-archive-zone form{padding:14px}.student-archive-zone h2{margin:0;font-size:16px}.student-archive-zone form>div>p{max-width:760px;color:var(--muted);margin:5px 0 14px;font-size:11px;line-height:1.5}.student-archive-zone textarea{max-width:640px}.archive-confirm-row{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:16px;margin-top:12px;padding-top:12px;display:flex}.archive-confirm-row>span{color:var(--muted);font-size:10px}@media (max-width:760px){.schedule-editor-heading{flex-direction:column;align-items:flex-start}.schedule-slot-row{grid-template-columns:28px 1fr 34px}.schedule-slot-row .field{grid-column:2}.schedule-slot-number{grid-area:1/1}.schedule-slot-remove{grid-area:1/3}.initial-state-list>li{grid-template-columns:30px minmax(0,1fr);align-items:start;row-gap:7px}.initial-state-list .select-field{grid-column:2}.initial-state.has-marks>summary{flex-wrap:wrap;row-gap:10px}.initial-state.has-marks>summary>span:first-child{flex:100%}.initial-state.has-marks .initial-state-count{margin-left:auto}.mode-choice{grid-template-columns:minmax(0,1fr)}.settings-defaults{grid-template-columns:1fr}.settings-defaults>div{border-right:0;border-bottom:1px solid var(--line)}.settings-defaults>div:last-child{border-bottom:0}.archive-confirm-row{flex-direction:column;align-items:stretch}.archive-confirm-row .button{width:100%}}.panel,.list-panel,.info-card,.form-card,.finance-explanation,.impact-card,.settings-card{border-radius:var(--r-block);background:var(--card);box-shadow:none;border:0;overflow:visible}.panel{padding:22px 26px}.panel-heading,.table-toolbar{border-bottom:0;gap:10px;min-height:0;padding:0 0 12px}.panel-heading h2,.table-toolbar strong,.info-card h2,.form-card h2,.impact-card h2{letter-spacing:0;margin:0;font-size:15px;font-weight:600}.panel-heading p,.table-toolbar span{color:var(--muted);font-size:13px;font-weight:400}.page-heading h1,.finance-page-heading h1,.placeholder h1{letter-spacing:-.02em;margin:0;font-size:30px;font-weight:600;line-height:1.15}.page-heading p:not(.eyebrow){color:var(--muted);margin-top:5px;font-size:15px}.eyebrow{color:var(--meta);letter-spacing:.1em;text-transform:uppercase;font-size:10.5px;font-weight:600}.button{border-radius:var(--r-btn);min-height:0;color:var(--ink);background:var(--control);box-shadow:none;border:0;gap:8px;padding:13px 17px;font-size:13px;font-weight:500;transition:background .12s,color .12s}.button:hover{background:var(--control-hover)}.button:active{background:var(--control-active)}.button.primary{color:#fff;background:var(--accent);font-weight:600}.button.primary:hover{background:var(--accent-hover)}.button.primary:active{background:var(--accent-active)}.button.danger-soft,.button.danger{color:var(--coral);background:var(--coral-soft);font-weight:600}.button.danger-soft:hover,.button.danger:hover{background:var(--coral-mid)}.button.compact{border-radius:var(--r-btn-s);padding:12px 16px;font-size:12.5px;font-weight:600}.button[disabled],.button[aria-disabled=true]{color:var(--on-disabled);background:var(--control-disabled);cursor:not-allowed}.button.primary[disabled]{color:#98a2b0;background:var(--track)}.surface-block .button,.attention-row .button{border-radius:var(--r-btn-s);background:var(--card);font-weight:600}.surface-block .button:hover,.attention-row .button:hover{color:var(--accent);background:#edf0f4}.text-link,.row-action{color:var(--accent-mid);font-size:13px;font-weight:500}.text-link:hover,.row-action:hover{color:var(--accent)}a:focus-visible,button:focus-visible,select:focus-visible,summary:focus-visible,[tabindex]:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:6px}.field input,.field .select-trigger,.field textarea{border-radius:var(--r-btn);min-height:44px;color:var(--ink);background:var(--surface);box-shadow:none;border:0;padding:11px 14px;font-size:15px;font-weight:500;transition:background .12s,box-shadow .12s}.field input:focus,.field .select-trigger:focus,.field .select-trigger[aria-expanded=true],.field textarea:focus{background:var(--card);box-shadow:0 0 0 2px var(--accent);outline:0}.field input[aria-invalid=true],.field textarea[aria-invalid=true],.field .select-trigger[aria-invalid=true]{color:var(--coral);background:var(--coral-soft);box-shadow:inset 0 0 0 1.5px var(--coral)}.field input[disabled],.field textarea[disabled],.field .select-trigger:disabled{color:var(--on-disabled);background:var(--surface-strong)}.field label{color:var(--muted);font-size:12.5px;font-weight:500}.field-hint{color:var(--meta);font-size:12px;font-weight:400}.field-error{color:var(--coral);font-size:12px;font-weight:500}.pill,.count-badge,.status-chip{border-radius:var(--r-chip);color:var(--ink-dense);background:var(--control);border:0;align-items:center;gap:6px;padding:6px 13px;font-size:12.5px;font-weight:500;line-height:1;display:inline-flex}.pill.accent,.count-badge{color:#fff;background:var(--accent);font-weight:600}.pill.soft{color:var(--accent);background:var(--accent-soft)}.pill.blue{color:var(--accent-mid);background:var(--accent-soft)}.pill.danger,.pill.red{color:var(--coral);background:var(--coral-soft)}.pill.voided{color:var(--meta);background:var(--control);text-decoration:line-through}.notice,.form-error,.error-callout{border-radius:var(--r-card);border:0;padding:15px 17px;font-size:12.5px;line-height:1.55;display:block}.notice{color:var(--accent-mid);background:var(--accent-soft)}.notice strong{color:var(--accent);font-size:13px;font-weight:600;display:block}.form-error,.error-callout{color:var(--coral-dark);background:var(--coral-soft)}.form-error strong,.error-callout strong{color:var(--coral);font-size:13px;font-weight:600;display:block}.students-table-head,.program-table thead th,.finance-students-head{color:var(--meta);letter-spacing:.1em;text-transform:uppercase;border-bottom:0;font-size:10.5px;font-weight:600}.program-table td,.students-table-row,.history-row,.schedule-row,.ledger-simple>div{border-bottom:1px solid var(--line)}.students-table-row:hover,.history-row:hover,.schedule-row:hover{border-radius:var(--r-btn-s);background:var(--surface)}strong,.money,td{font-variant-numeric:tabular-nums}.progress-track,.goal-bar,.capacity-bar{border-radius:var(--r-chip);background:var(--track);height:8px;position:relative;overflow:visible}.progress-track>span,.goal-bar>span,.capacity-bar>span{border-radius:var(--r-chip);background:var(--accent);height:100%;display:block}.plan-mark{background:var(--plan-mark);border-radius:2px;width:2px;position:absolute;top:-4px;bottom:-4px}.surface-block{border-radius:var(--r-block-s);background:var(--surface);padding:14px 16px}.surface-block.strong{background:var(--surface-strong)}.page.command-center-page{flex-direction:column;gap:14px;display:flex}.page-heading.dashboard-heading{margin-bottom:0}.summary-strip{border-radius:var(--r-block);background:var(--card);border:0;grid-template-columns:repeat(4,1fr);gap:0;padding:22px 26px;display:grid}.summary-strip article{border-right:0;min-height:0;padding:0 20px 0 0}.summary-strip span{color:var(--meta);letter-spacing:.1em;text-transform:uppercase;font-size:10.5px;font-weight:600}.summary-strip strong{margin-top:7px;font-size:19px;font-weight:600;line-height:1.15}.summary-strip small{color:var(--muted);margin-top:3px;font-size:12.5px;font-weight:400}.command-center-grid{grid-template-columns:1.45fr 1fr;align-items:start;gap:14px}.command-center-grid .panel,.month-panel{border-radius:var(--r-block);background:var(--card);border:0;padding:22px 26px}.today-list{padding:0;display:block}.today-row{border-bottom:1px solid var(--line);background:0 0;border-radius:0;grid-template-columns:132px 1fr auto;align-items:center;gap:14px;min-height:0;padding:13px 0;display:grid}.today-row:last-child{border-bottom:0}.today-row time strong{white-space:nowrap;font-size:14.5px;font-weight:600;display:block}.today-row time span{color:var(--muted);font-size:13px;font-weight:400;display:block}.today-row>a:not(.button){font-size:14.5px;font-weight:600}.today-row>a:not(.button):hover{color:var(--accent)}.attention-list{flex-direction:column;gap:10px;padding:0;display:flex}.attention-row{border-radius:var(--r-card);background:var(--surface);min-height:0;padding:16px 18px;display:block}.attention-row:hover{background:var(--surface)}.attention-icon{display:none}.attention-copy strong{font-size:15px;font-weight:600}.attention-copy small{color:var(--muted);white-space:normal;text-overflow:clip;margin-top:6px;font-size:13.5px;line-height:1.5;overflow:visible}.attention-row .row-action{border-radius:var(--r-btn-s);color:var(--ink);background:var(--card);align-items:center;gap:6px;margin-top:12px;padding:11px 16px;font-size:13.5px;font-weight:600;display:inline-flex}.attention-row .row-action:hover{color:var(--accent);background:#edf0f4}.month-metrics{border:0;grid-template-columns:repeat(4,1fr) auto;align-items:end;gap:10px;display:grid}.month-metrics article{border-radius:var(--r-block-s);background:var(--surface);border:0;padding:13px 15px}.month-metrics article:first-child{background:var(--surface-strong)}.month-metrics span{color:var(--muted);font-size:12.5px;font-weight:500;display:block}.month-metrics strong{margin-top:3px;font-size:19px;font-weight:600;display:block}.month-metrics article:first-child strong{letter-spacing:-.02em;font-size:26px}.empty-state.compact-empty{border-radius:var(--r-card);color:var(--muted);background:var(--surface);border:0;gap:6px;padding:22px 18px}.empty-state.compact-empty strong{color:var(--ink);font-size:14.5px;font-weight:600}@media (max-width:1050px){.summary-strip{grid-template-columns:repeat(2,1fr);gap:18px 0}.command-center-grid{grid-template-columns:1fr}.month-metrics{grid-template-columns:repeat(2,1fr)}.month-metrics .button{grid-column:1/-1}}@media (max-width:760px){.summary-strip{grid-template-columns:1fr 1fr;gap:16px 0;padding:18px 16px}.today-row{grid-template-columns:1fr;gap:8px}.month-metrics{grid-template-columns:1fr}}.student-hero{border-radius:var(--r-block);background:var(--card);box-shadow:none;border:0;padding:24px 26px}.student-overview-lesson{border-right:0}.diagnosis-grid{background:0 0;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.diagnosis-block{border-radius:var(--r-block-s);background:var(--surface);min-width:0;padding:14px 16px}.diagnosis-block span{color:var(--muted);letter-spacing:0;text-transform:none;font-size:12.5px;font-weight:500}.diagnosis-block strong{margin-top:4px;font-size:14.5px;font-weight:500;line-height:1.45}.diagnosis-block small{color:var(--accent-mid);margin-top:6px;font-size:13px;font-weight:500;line-height:1.45}.diagnosis-block--risk{background:var(--coral-soft)}.diagnosis-block--risk span,.diagnosis-block--risk strong{color:var(--coral)}.diagnosis-block--risk small{color:var(--coral-dark)}.student-context-list>div{border-bottom:1px solid var(--line);min-height:0;padding:13px 0}.student-context-list span{color:var(--muted);letter-spacing:0;text-transform:none;font-size:12.5px;font-weight:500}.student-context-list strong{margin-top:4px;font-size:14.5px;line-height:1.45}.student-context-list small{color:var(--muted);margin-top:3px;font-size:13px}.student-timeline-panel{border-radius:var(--r-block);background:var(--card);border:0;margin-top:0;padding:22px 26px}.student-timeline-panel .panel-heading{min-height:0}.student-timeline{padding:0}.student-timeline-entry{border-bottom:1px solid var(--line);min-height:0;padding:13px 0}.student-timeline-entry:last-child{border-bottom:0}.timeline-kind{border-radius:var(--r-chip);color:var(--ink-dense);background:var(--control);padding:5px 12px;font-size:12.5px;font-weight:500}.student-finance-grid article{border-radius:var(--r-block-s);background:var(--surface);border:0;min-height:0;padding:13px 15px}.student-finance-grid strong{font-size:19px;font-weight:600}.risk-counter.risk-red,.risk-label.risk-red{color:var(--coral);background:var(--coral-soft)}.risk-counter.risk-yellow,.risk-label.risk-yellow{color:var(--accent-mid);background:var(--accent-soft)}.risk-label.risk-green{color:var(--ink-dense);background:var(--control)}.risk-label.risk-neutral{color:var(--meta);background:var(--control)}.student-archive-zone{border-radius:var(--r-block);background:var(--card);border:0}.student-archive-zone summary{border-radius:var(--r-block);font-size:15px;font-weight:600}.student-archive-zone textarea{border-radius:var(--r-btn);background:var(--surface);border:0}.ledger-simple>div,.history-row{border-bottom:1px solid var(--line);padding:13px 0}.ledger-simple>div:last-child,.history-row:last-child{border-bottom:0}.voided{color:var(--meta);text-decoration:line-through}@media (max-width:760px){.diagnosis-grid{grid-template-columns:1fr}}.page.form-shell{flex-direction:column;gap:14px;display:flex}.form-card{border-radius:var(--r-block);background:var(--card);border:0;margin-bottom:0;padding:22px 26px}.form-card h2{font-size:15px;font-weight:600}.form-card>p{color:var(--muted);margin-bottom:16px;font-size:13px;font-weight:400}.assessment-item,.homework-details,.previous-homework-context,.selected-homework-summary,.lesson-item-card{border-radius:var(--r-card);background:var(--surface);border:0;padding:16px 18px}.homework-count-grid{gap:10px}.score-buttons{gap:6px}.score-buttons button{border-radius:var(--r-btn-s);width:36px;height:36px;color:var(--ink-dense);background:var(--control);border:0;font-weight:500}.score-buttons button:hover{background:var(--control-hover)}.score-buttons button.selected{color:#fff;background:var(--accent);border:0;font-weight:600}.check-row{color:var(--ink-dense);gap:9px;font-size:13px;font-weight:500}.check-row input[type=checkbox]{width:18px;height:18px;accent-color:var(--accent)}.completion-bar{border-radius:var(--r-block);background:var(--card);box-shadow:var(--shadow-pop);border:0;padding:16px 22px}.completion-bar strong{font-size:14.5px;font-weight:600}.completion-bar span,.completion-bar small{color:var(--muted);font-size:12.5px}.form-actions{gap:10px}.finance-explanation{border-radius:var(--r-block);background:var(--card);border:0;margin-bottom:0;padding:22px 26px}.finance-explanation>div span{color:var(--muted);font-size:12.5px;font-weight:500}.finance-explanation>div strong{letter-spacing:-.03em;font-size:42px;font-weight:600;line-height:1.1}.finance-explanation summary{color:var(--accent-mid);font-size:13px;font-weight:500}.finance-explanation summary:hover{color:var(--accent)}.compact-history{border-radius:var(--r-block-s);background:var(--surface);color:var(--muted);margin-top:12px;padding:14px 16px;font-size:13px}.impact-card{border-radius:var(--r-block);background:var(--card);border:0;padding:22px 26px}.impact-card h2{font-size:19px;font-weight:600}.lesson-progress span,.form-progress span{background:var(--track)}.lesson-progress span.done,.form-progress span.done{background:var(--accent)}.empty-state{border-radius:var(--r-card);min-height:0;color:var(--muted);background:var(--surface);text-align:left;flex-direction:column;justify-content:flex-start;align-items:flex-start;gap:6px;padding:18px 20px;display:flex}.empty-state svg{color:var(--meta);margin-bottom:2px}.empty-state strong{color:var(--ink);font-size:15px;font-weight:600}.empty-state span,.empty-state p{color:var(--muted);font-size:13.5px;font-weight:400;line-height:1.5}.empty-state .button{margin-top:6px}.empty-state.compact-empty{min-height:0}.empty-copy{color:var(--muted);padding:0;font-size:13.5px;line-height:1.5}.placeholder{place-items:initial;text-align:left;min-height:0;display:block}.placeholder>div{border-radius:var(--r-block);background:var(--card);max-width:620px;padding:24px 26px}.placeholder h1{letter-spacing:-.02em;margin:4px 0 0;font-size:30px;font-weight:600;line-height:1.15}.placeholder p{color:var(--muted);margin-top:8px;font-size:14px;line-height:1.5}.command-results .empty-state{background:0 0;padding:14px 16px;font-size:13.5px}.pill.green{color:var(--ink-dense);background:var(--control)}.pill.amber{color:var(--accent-mid);background:var(--accent-soft)}.pill.coral{color:var(--coral);background:var(--coral-soft)}@media (max-width:760px){.workspace{margin-left:0;padding-bottom:74px}.topbar{height:auto;padding:14px 16px 0}.mobile-brand .brand-mark{border-radius:var(--r-btn-s);width:36px;height:36px}.mobile-brand strong{font-size:15px;font-weight:600}.command-button{border-radius:var(--r-btn);width:44px;height:44px;padding:0}.page{padding:16px 16px 32px}.page-heading h1,.finance-page-heading h1,.placeholder h1{font-size:26px}.page-heading .button{width:auto}.panel,.list-panel,.info-card,.form-card,.finance-explanation,.impact-card,.summary-strip,.month-panel,.finance-income-card,.finance-secondary-card,.finance-capacity-card,.finance-operations,.finance-student-panel,.student-hero,.student-timeline-panel,.command-center-grid .panel,.placeholder>div{border-radius:var(--r-block);padding:18px 16px}.summary-strip small{font-size:12px;display:block}.summary-strip article:nth-child(-n+2){border-bottom:0}.summary-strip strong{font-size:19px}.summary-strip article{min-height:0;padding:0 12px 0 0}.today-row .button{justify-content:center;width:100%;padding:12px 16px;font-size:13px}.today-row time{grid-column:auto;padding-top:0}.month-metrics article:nth-child(2){border-right:0}.month-metrics article:nth-child(-n+2){border-bottom:0}.month-metrics>.button{grid-column:1/-1;margin:4px 0 0}.finance-explanation>div strong,.finance-income-card>div>strong{font-size:32px}.mobile-nav{padding:8px 6px calc(8px + env(safe-area-inset-bottom));background:var(--card);box-shadow:var(--shadow-pop);border-top:0}.mobile-nav a{color:var(--accent);opacity:.42}.mobile-nav a[aria-current=page]{opacity:1;background:var(--surface);border-radius:var(--r-block-s)}}.screen-heading{justify-content:space-between;align-items:flex-end;gap:16px;margin-bottom:0;display:flex}.screen-heading h1{letter-spacing:-.02em;margin:0;font-size:30px;font-weight:600;line-height:1.15}.screen-heading>div>p{color:var(--muted);margin:5px 0 0;font-size:15px}.screen-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.stat-pill{border-radius:var(--r-chip);background:var(--card);color:var(--ink-dense);white-space:nowrap;padding:9px 16px;font-size:13.5px;font-weight:500}.pill-action{border-radius:var(--r-chip);background:var(--accent);color:#fff;white-space:nowrap;align-items:center;gap:7px;padding:9px 18px;font-size:13.5px;font-weight:600;display:inline-flex}.pill-action:hover{background:var(--accent-hover);color:#fff}.board-grid{grid-template-columns:1.45fr 1fr;align-items:start;gap:14px;display:grid}.board{border-radius:var(--r-block);background:var(--card);flex-direction:column;padding:24px 26px;display:flex}.board-column{flex-direction:column;gap:14px;display:flex}.board-top{justify-content:space-between;align-items:center;gap:12px;display:flex}.board-title-row{align-items:center;gap:10px;display:flex}.board-label{color:var(--accent-mid);font-size:15px;font-weight:600}.board-label.ink{color:var(--ink)}.board-date{color:var(--accent);font-size:14.5px;font-weight:600}.board-meta{color:var(--muted);font-size:13px}.next-lesson{min-height:100%}.next-lesson-line{flex-wrap:wrap;align-items:baseline;gap:14px;margin-top:14px;display:flex}.next-lesson-time{letter-spacing:-.02em;font-size:34px;font-weight:600;line-height:1.05}.next-lesson-name{font-size:22px;font-weight:600;line-height:1.1}.next-lesson-meta{color:var(--muted);font-size:14px}.next-lesson-cards{grid-template-columns:1fr 1fr;gap:10px;margin-top:18px;display:grid}.next-lesson-actions{flex-wrap:wrap;gap:10px;margin-top:18px;display:flex}.next-lesson-actions .grow{flex:1;justify-content:center}.button.quiet{color:var(--ink-dense)}.surface-label{color:var(--muted);font-size:12.5px;font-weight:500}.surface-label.accent{color:var(--accent-mid)}.surface-value{margin-top:4px;font-size:14.5px;font-weight:500;line-height:1.45}.surface-note{color:var(--muted);margin-top:6px;font-size:13px;font-weight:500}.surface-note.accent{color:var(--accent-mid)}.surface-number{margin-top:3px;font-size:19px;font-weight:600}.surface-number.accent{color:var(--accent-mid)}.hero-number{letter-spacing:-.03em;margin-top:12px;font-size:42px;font-weight:600;line-height:1.1}.hero-note{color:var(--muted);font-size:13.5px}.money-split{gap:8px;margin-top:16px;display:flex}.money-split .surface-block{flex:1;padding:13px 15px}.debt-row{justify-content:space-between;align-items:center;gap:12px;margin-top:8px;padding:13px 15px;display:flex}.goal-line{color:var(--muted);justify-content:space-between;gap:12px;margin-top:18px;font-size:12.5px;font-weight:500;display:flex}.goal-line+.progress-track{margin-top:7px}.plan-table{border-collapse:collapse;width:100%;margin-top:8px}.plan-table td{border-bottom:1px solid var(--line);vertical-align:top;padding:13px 0}.plan-table tr:last-child td{border-bottom:0}.plan-when{width:96px}.plan-when strong{font-size:14.5px;font-weight:600;display:block}.plan-when span{color:var(--muted);font-size:13px;display:block}.plan-who a{font-size:14.5px;font-weight:600;display:block}.plan-who a:hover{color:var(--accent)}.plan-who span{color:var(--muted);font-size:13px;display:block}.plan-sum{text-align:right;white-space:nowrap;width:210px}.plan-sum .pill{margin-right:12px}.plan-sum strong{font-size:14.5px;font-weight:600}.alert-stack{flex-direction:column;gap:10px;margin-top:14px;display:flex}.alert-card{border-radius:var(--r-card);background:var(--surface);padding:16px 18px}.alert-head{justify-content:space-between;align-items:center;gap:12px;display:flex}.alert-head strong{font-size:15px;font-weight:600}.alert-head span{color:var(--muted);font-size:12.5px}.alert-title{margin-top:6px;font-size:14px;font-weight:500;line-height:1.5}.alert-card p{color:var(--muted);margin:2px 0 0;font-size:13.5px;line-height:1.5}.alert-card .button{background:var(--card);margin-top:12px;font-weight:600}.alert-card .button:hover{color:var(--accent);background:#edf0f4}.load-line{flex-wrap:wrap;align-items:baseline;gap:12px;margin-top:12px;display:flex}.load-number{letter-spacing:-.02em;font-size:34px;font-weight:600;line-height:1.05}.load-note{color:var(--muted);font-size:13.5px}.load-line+.progress-track{margin-top:12px}@media (max-width:1050px){.board-grid{grid-template-columns:1fr}.screen-heading{flex-direction:column;align-items:flex-start}}@media (max-width:760px){.board{padding:18px 16px}.next-lesson-cards,.money-split{flex-direction:column;grid-template-columns:1fr}.plan-when{width:74px}.plan-sum{width:auto}.next-lesson-actions .button{justify-content:center;width:100%}}.awaiting-board{margin-bottom:14px}.awaiting-board h2{margin:0}.awaiting-note{color:var(--muted);margin:6px 0 0;font-size:13.5px;line-height:1.45}.awaiting-list{margin:8px 0 0;padding:0;list-style:none}.awaiting-row{border-bottom:1px solid var(--line);grid-template-columns:74px minmax(0,1fr) auto auto;grid-template-areas:"when what since actions";align-items:center;column-gap:16px;padding:12px 0;display:grid}.awaiting-list .awaiting-row:last-child{border-bottom:0}.awaiting-when{grid-area:when}.awaiting-when strong{font-size:14.5px;font-weight:600;display:block}.awaiting-when span{color:var(--muted);font-size:13px;display:block}.awaiting-what{grid-area:what;min-width:0}.awaiting-what a{text-overflow:ellipsis;white-space:nowrap;font-size:14.5px;font-weight:600;display:block;overflow:hidden}.awaiting-what a:hover{color:var(--accent)}.awaiting-what span{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:13px;display:block;overflow:hidden}.awaiting-what span.is-lead{color:var(--ink);font-size:14.5px;font-weight:600}.awaiting-since{grid-area:since;justify-self:end}.awaiting-actions{grid-area:actions;gap:8px;display:flex}.awaiting-more{border-top:1px solid var(--line);margin-top:4px}.awaiting-more summary{color:var(--accent-mid);cursor:pointer;padding:12px 0 2px;font-size:13.5px;font-weight:600}.student-page .awaiting-board{margin-bottom:18px}@media (max-width:760px){.awaiting-row{grid-template-columns:58px minmax(0,1fr) auto;grid-template-areas:"when what since""actions actions actions";row-gap:10px}.awaiting-actions .button{flex:1;justify-content:center}.awaiting-what a,.awaiting-what span{white-space:normal}}.ops-table .plan-when{width:72px}.ops-sum{width:190px}.ops-sum strong{font-size:14.5px;font-weight:600;display:block}.ops-sum span{color:var(--muted);font-size:13px;display:block}.ops-table tr.is-voided{opacity:.5}.ops-table tr.is-voided .plan-who a,.ops-table tr.is-voided .ops-sum strong{text-decoration:line-through}.danger-text{color:var(--coral)}.board-note{color:var(--muted);margin:12px 0 0;font-size:13px;line-height:1.5}@media (max-width:760px){.ops-sum{width:auto}}.breadcrumb{color:var(--muted);margin:0 0 4px;font-size:13px}.breadcrumb a:hover{color:var(--accent)}.stat-pill.as-action{cursor:pointer}.stat-pill.as-action:hover{background:var(--control-hover)}.plan-cards{grid-template-columns:1fr 1fr;gap:10px;margin-top:14px;display:grid}.problem-card{margin-top:10px}.result-line{align-items:baseline;gap:12px;margin-top:12px;display:flex}.result-score{letter-spacing:-.03em;font-size:42px;font-weight:600;line-height:1.05}.result-of{color:var(--ink-dense);font-size:15px;font-weight:500}.result-note{color:var(--muted);margin-top:4px;font-size:13.5px}.result-note+.progress-track{margin-top:12px}.result-cards{grid-template-columns:repeat(3,1fr);gap:10px;margin-top:16px;display:grid}.result-cards .surface-block{padding:13px 15px}@media (max-width:760px){.plan-cards,.result-cards{grid-template-columns:1fr}}.progress-panel{border-radius:var(--r-block);background:var(--card);border:0;padding:22px 26px}.progress-heading{border-bottom:0;min-height:0;padding:0 0 6px}.progress-heading h2{font-size:15px;font-weight:600}.progress-heading p{color:var(--muted);font-size:13px}.risk-summary{flex-wrap:wrap;gap:6px;display:flex}.risk-counter{border-radius:var(--r-chip);padding:6px 13px;font-size:12.5px;font-weight:500;line-height:1}.progress-toolbar{border-bottom:0;flex-wrap:wrap;align-items:center;gap:6px;padding:14px 0 10px;display:flex}.progress-toolbar button{border-radius:var(--r-chip);min-height:0;color:var(--ink-dense);background:var(--control);cursor:pointer;border:0;padding:6px 13px;font-size:12.5px;font-weight:500}.progress-toolbar button:hover{color:var(--ink);background:var(--control-hover)}.progress-toolbar button.active{color:#fff;background:var(--accent);font-weight:600}.progress-toolbar>span{color:var(--muted);margin-left:auto;font-size:13px}.progress-table{table-layout:auto;width:100%}.progress-table th{border-bottom:1px solid var(--line);color:var(--meta);letter-spacing:.1em;text-transform:uppercase;text-align:left;white-space:nowrap;background:0 0;padding:0 12px 10px 0;font-size:10.5px;font-weight:600}.progress-table th:first-child{width:58px;padding-left:0}.progress-table th:nth-child(2){width:auto}.progress-table th:nth-child(3){width:168px}.progress-table th:nth-child(4),.progress-table th:nth-child(5){width:104px}.progress-table th:nth-child(6){width:26%}.progress-table th:last-child{width:44px}.progress-table td{border-top:0;border-bottom:1px solid var(--line);vertical-align:middle;border-left:0;height:auto;padding:13px 12px 13px 0;font-size:13.5px}.progress-table td:first-child{border-left:0;padding-left:0}.progress-table tbody tr:hover>td{background:var(--surface)}.progress-table tr.risk-red>td:first-child,.progress-table tr.risk-yellow>td:first-child{border-left:0}.progress-table td strong{font-size:14.5px;font-weight:600;display:block}.progress-table td small{color:var(--muted);margin-top:3px;font-size:12.5px;display:block}.risk-label{border-radius:var(--r-chip);white-space:nowrap;align-items:center;padding:5px 12px;font-size:12.5px;font-weight:500;line-height:1;display:inline-flex}.exam-number{border-radius:var(--r-chip);color:var(--ink-dense);background:var(--control);align-items:center;padding:4px 10px;font-size:12.5px;font-weight:600;display:inline-flex}.progress-error-cell{color:var(--muted);font-size:13px}.progress-expand{border-radius:var(--r-btn-s);width:32px;height:32px;color:var(--muted);background:0 0}.progress-expand:hover{color:var(--accent);background:var(--surface)}.progress-details-row>td{border-bottom:1px solid var(--line);background:var(--surface);padding:0!important}.progress-row-details{border-radius:var(--r-block-s);border-top:0;grid-template-columns:1fr 1fr;gap:24px;padding:16px 18px}.progress-row-details p{color:var(--muted);font-size:13px}.evidence-list h4{margin:0 0 8px;font-size:13px;font-weight:600}.evidence-row{font-size:13px}.subtopic-list span{border-radius:var(--r-chip);background:var(--control);padding:5px 11px;font-size:12.5px}.legacy-progress{margin:14px 0 0}.mono-value{font-variant-numeric:tabular-nums}@media (max-width:760px){.progress-panel{padding:18px 16px}.progress-table td{font-size:13px}}.page{flex-direction:column;gap:14px;max-width:1320px;padding:22px 26px 30px 8px;display:flex}.page>*{margin-top:0;margin-bottom:0}.page>.notice{margin:0}.screen-heading,.page-heading{margin-bottom:0}.student-timeline-panel,.progress-panel,.student-finance-panel,.finance-history,.student-archive-zone,.month-panel,.finance-student-panel,.finance-capacity-card,.finance-operations,.roster-panel,.students-table-panel,.program-table-panel,.schedule-panel,.settings-card{margin:0}@media (max-width:760px){.page{padding:16px 16px 32px}}code,kbd,samp,pre,.exam-number,.program-item code,.program-table code,.progress-table code,.mono-value{font-variant-numeric:tabular-nums;font-family:Golos Text,system-ui,sans-serif}.exam-number{border-radius:var(--r-chip);width:auto;height:auto;color:var(--ink-dense);background:var(--control);padding:4px 10px;font-size:12.5px;font-weight:600;display:inline-flex}.program-item code{color:var(--ink-dense);font-size:12.5px;font-weight:600;display:inline-block}.students-table-head,.program-table th,.progress-table th,.finance-student-table th{border-bottom:1px solid var(--line);background:0 0}.avatar,.student-hero .avatar,.student-header>.avatar,.avatar.large{color:var(--accent-mid);background:var(--accent-line);border-radius:50%;font-weight:600}.icon-button{border-radius:var(--r-btn-s)}.icon-button:hover{color:var(--accent);background:var(--surface)}.topic-card{border-radius:var(--r-card);background:var(--surface);border:0;padding:16px 18px}.form-progress span.active,.lesson-progress span.active{background:var(--accent)}.sidebar{z-index:30;transition:width .16s,background .16s,box-shadow .16s;position:fixed;inset:0 auto 0 0;overflow:hidden}.sidebar:hover,.sidebar:focus-within{border-radius:0 var(--r-block) var(--r-block) 0;background:var(--card);width:232px;box-shadow:var(--shadow-pop);align-items:stretch;padding:18px 14px}.sidebar:hover .brand,.sidebar:focus-within .brand{justify-content:flex-start;gap:12px;padding:0 0 10px 2px}.sidebar:hover .brand-copy,.sidebar:focus-within .brand-copy{min-width:0;display:block}.sidebar:hover .brand strong,.sidebar:focus-within .brand strong{white-space:nowrap;font-size:15px;font-weight:600}.sidebar:hover .brand small,.sidebar:focus-within .brand small{color:var(--meta);white-space:nowrap;font-size:11px}.sidebar:hover .nav-list,.sidebar:focus-within .nav-list,.sidebar:hover .sidebar-foot,.sidebar:focus-within .sidebar-foot{justify-items:stretch}.sidebar:hover .nav-list>:is(a,button),.sidebar:focus-within .nav-list>:is(a,button),.sidebar:hover .sidebar-foot>:is(a,button),.sidebar:focus-within .sidebar-foot>:is(a,button){opacity:1;width:100%;height:44px;color:var(--ink-dense);justify-content:flex-start;align-items:center;gap:12px;padding:0 12px;display:flex}.sidebar:hover .nav-list>:is(a,button):hover,.sidebar:focus-within .nav-list>:is(a,button):hover,.sidebar:hover .sidebar-foot>:is(a,button):hover,.sidebar:focus-within .sidebar-foot>:is(a,button):hover{color:var(--ink);background:var(--surface)}.sidebar:hover .nav-list>:is(a,button)[aria-current=page],.sidebar:focus-within .nav-list>:is(a,button)[aria-current=page],.sidebar:hover .sidebar-foot>:is(a,button)[aria-current=page],.sidebar:focus-within .sidebar-foot>:is(a,button)[aria-current=page]{color:var(--accent);background:var(--surface-strong);font-weight:600}.sidebar:hover .nav-label,.sidebar:focus-within .nav-label{clip-path:none;width:auto;height:auto;font-size:14px;font-weight:inherit;margin:0;position:static;overflow:visible}.sidebar:hover .owner-chip,.sidebar:focus-within .owner-chip{justify-content:flex-start;gap:12px;padding:10px 8px 0}.sidebar:hover .owner-copy,.sidebar:focus-within .owner-copy{min-width:0;display:block}.sidebar:hover .owner-chip strong,.sidebar:focus-within .owner-chip strong{white-space:nowrap;font-size:13px;font-weight:600;display:block}.sidebar:hover .owner-chip small,.sidebar:focus-within .owner-chip small{color:var(--meta);white-space:nowrap;font-size:11px}@media (max-width:760px){.sidebar:hover,.sidebar:focus-within{width:76px;box-shadow:none;background:0 0}}.stack-column{flex-direction:column;gap:14px;display:flex}.board-column>.panel,.board-column>.progress-panel,.board-column>.student-timeline-panel,.board-column>.stack-column>.panel{margin:0}.board-grid>*,.board-column>*,.stack-column>*,.board-column{min-width:0}.student-finance-grid{background:0 0;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.student-finance-grid article{border-radius:var(--r-block-s);background:var(--surface);min-height:0;padding:13px 15px}.student-finance-grid span{color:var(--muted);letter-spacing:0;text-transform:none;font-size:12.5px;font-weight:500}.student-finance-grid strong{margin-top:3px;font-size:19px;font-weight:600}.student-finance-grid small{color:var(--muted);margin-top:3px;font-size:12.5px}.student-timeline-entry{grid-template-columns:78px 1fr;align-items:start;gap:12px;display:grid}.student-timeline-entry>time{color:var(--muted);padding-top:2px;font-size:12.5px}.progress-table-wrap,.finance-student-table-wrap,.program-table-wrap{overflow-x:auto}.student-timeline-entry{grid-template-columns:auto 1fr;align-items:center;gap:8px 10px;padding:13px 0;display:grid}.student-timeline-entry>time{color:var(--muted);white-space:nowrap;grid-area:1/1;padding-top:0;font-size:12.5px}.student-timeline-entry>.timeline-kind{grid-area:1/2;justify-self:start}.timeline-entry-main{grid-area:2/1/auto/-1;min-width:0}.timeline-entry-heading{justify-content:space-between;align-items:baseline;gap:10px;display:flex}.timeline-entry-heading strong{font-size:14.5px;font-weight:600}.timeline-result{color:var(--ink-dense);white-space:nowrap;font-size:14.5px;font-weight:600}.timeline-entry-main p,.timeline-entry-main span{font-size:13px;line-height:1.5}.completion-layout{grid-template-columns:minmax(0,1fr) 380px;align-items:start;gap:14px;display:grid}.completion-main{flex-direction:column;gap:14px;min-width:0;display:flex}.completion-side{flex-direction:column;gap:14px;min-width:0;display:flex;position:sticky;top:22px}.save-summary{flex-direction:column;margin:14px 0 0;display:flex}.save-summary>div{border-bottom:1px solid var(--line);justify-content:space-between;align-items:baseline;gap:12px;padding:12px 0;display:flex}.save-summary>div:last-child{border-bottom:0;padding-bottom:0}.save-summary dt{color:var(--ink-dense);min-width:0;font-size:13.5px;font-weight:500}.save-summary dd{text-align:right;white-space:nowrap;margin:0;font-size:14px;font-weight:600}.blocker-list{flex-direction:column;gap:8px;margin-top:14px;display:flex}.blocker{border-radius:var(--r-block-s);color:var(--coral);background:var(--coral-soft);margin:0;padding:12px 14px;font-size:13px;font-weight:500}.side-actions{flex-wrap:wrap;align-items:center;gap:12px;margin-top:14px;display:flex}.side-actions .button{flex:1;justify-content:center}.field-legend{color:var(--muted);margin-bottom:6px;font-size:12.5px;font-weight:500;display:block}.chip-choice{flex-wrap:wrap;gap:6px;display:flex}.chip{border-radius:var(--r-chip);color:var(--ink-dense);background:var(--control);cursor:pointer;border:0;padding:9px 14px;font-size:13px;font-weight:500;transition:background .12s,color .12s}.chip:hover{color:var(--ink);background:var(--control-hover)}.chip.selected{color:#fff;background:var(--accent);font-weight:600}@media (max-width:1050px){.completion-layout{grid-template-columns:1fr}.completion-side{position:static}}@media (max-width:760px){.plan-table tr{grid-template-columns:74px 1fr;display:grid}.plan-table td{border-bottom:0;padding:6px 0}.plan-table tr{border-bottom:1px solid var(--line);padding:8px 0}.plan-table tr:last-child{border-bottom:0}.plan-when{grid-area:1/1}.plan-who{grid-area:1/2}.plan-sum{white-space:normal;grid-area:2/1/auto/-1;justify-content:flex-end;align-items:center;gap:10px;width:auto;display:flex}.plan-sum .pill{margin-right:0}.ops-sum{flex-wrap:wrap;align-items:baseline}.ops-sum strong,.ops-sum span{display:inline}}.student-name-cell strong,.plan-who a,.alert-head strong,.debt-row .surface-label,.command-results .command-title{white-space:nowrap;text-overflow:ellipsis;min-width:0;display:block;overflow:hidden}.student-name-cell,.plan-who,.alert-head,.debt-row>div{min-width:0}.alert-head{gap:10px}.alert-head span{flex:none}.screen-heading h1,.next-lesson-name,.breadcrumb{overflow-wrap:anywhere}.students-table-head,.student-table-row{grid-template-columns:minmax(0,1.08fr) minmax(0,1.28fr) minmax(0,.9fr) minmax(0,1.25fr) 20px}.student-name-cell>span,.student-focus-cell,.student-next-cell{min-width:0}.student-focus-cell strong,.student-next-cell strong{white-space:nowrap;text-overflow:ellipsis;display:block;overflow:hidden}.brand-mark{border-radius:var(--r-btn);width:44px;height:44px;box-shadow:none;object-fit:contain;background:0 0;flex:none}.brand-wordmark{object-fit:contain;width:150px;height:auto;display:block}.sidebar:hover .brand small,.sidebar:focus-within .brand small{margin-top:3px}@media (max-width:760px){.mobile-brand .brand-mark{border-radius:var(--r-btn-s);width:36px;height:36px}.mobile-brand .brand-wordmark{width:128px}}.brand-wordmark{width:116px}.sidebar:hover .brand,.sidebar:focus-within .brand{align-items:center}@media (max-width:760px){.mobile-brand .brand-wordmark{width:104px}}.field{align-content:start}.field input,.field .select-trigger,.field textarea{align-self:start}.field textarea{min-height:84px}.side-actions .button{flex:none}.side-actions .button.primary{flex:1}.topbar{z-index:auto;padding:22px 26px 0 8px;position:static}.page{padding-top:14px}@media (max-width:760px){.topbar{padding:14px 16px 0}.page{padding-top:14px}}.auth-ground{background:var(--paper);min-height:100dvh;padding:30px 30px 40px}.auth-screen{display:block}.auth-mark{border-radius:14px;width:44px;height:44px;display:block}.auth-screen{--air:1;--auth-lead:64px}.auth-screen.lead-sign-up{--auth-lead:56px}.auth-screen.lead-notice{--auth-lead:76px}.auth-screen.onboarding-screen{--auth-lead:52px}.auth-card{max-width:400px;padding-top:calc(var(--auth-lead) * var(--air));margin:0 auto}@media (max-height:900px){.auth-screen{--air:.6}}.auth-links{margin-top:calc(26px * var(--air,1));grid-template-columns:1fr 1fr;gap:12px 24px;display:grid}.auth-links.center{grid-template-columns:1fr;justify-items:center}.auth-links:not(.center) a:nth-child(2){justify-self:end}.auth-links a{color:var(--accent-mid);font-size:13px;font-weight:500;line-height:1.45}.auth-links a:hover{color:var(--accent)}.auth-legal{text-align:center;margin:48px 0 0;font-size:12.5px}.auth-legal span{color:var(--meta)}.auth-legal a{color:var(--accent);font-weight:500}.auth-legal a:hover{text-decoration:underline}.auth-note-block{background:var(--surface-strong);color:var(--ink-dense);text-wrap:pretty;border-radius:16px;margin-top:28px;padding:14px 16px;font-size:12.5px;line-height:1.55}.mono{color:var(--ink);font-family:JetBrains Mono,ui-monospace,monospace;font-size:14px;font-weight:500}.onboarding-card{width:100%}.onboarding-intro .eyebrow{margin:0}.onboarding-intro h1{letter-spacing:-.02em;margin:9px 0 0;font-size:30px;font-weight:600;line-height:1.15}.onboarding-intro p:last-child{color:var(--muted);text-wrap:pretty;margin:10px 0 0;font-size:15px;line-height:1.55}.onboarding-fields{gap:16px;margin-top:38px;display:grid}.onboarding-section{border-top:1px solid var(--line);gap:22px;margin-top:32px;padding-top:24px;display:grid}.onboarding-section .eyebrow{margin:0 0 -4px}.onboarding-card .auth-submit{margin-top:30px}.onboarding-foot{color:var(--muted);grid-template-columns:1fr auto;align-items:baseline;gap:12px 24px;margin-top:26px;font-size:13px;line-height:1.45;display:grid}.onboarding-foot .mono{color:var(--ink-dense);font-size:12.5px;font-weight:400}.field-hint{color:var(--meta);font-size:12.5px;line-height:1.45}@media (max-width:560px){.auth-ground{padding:20px 16px 32px}.auth-intro h1,.onboarding-intro h1{font-size:26px}.auth-links{grid-template-columns:1fr}}.sidebar-signout{border-radius:var(--r-block-s);width:44px;height:44px;color:var(--muted);font:inherit;cursor:pointer;background:0 0;border:0;justify-content:center;align-items:center;gap:12px;padding:0;transition:opacity .16s,color .16s,background .16s;display:flex}.sidebar-signout svg{flex:none}.sidebar-signout:hover{opacity:.7;color:var(--ink);background:0 0}.sidebar:hover .sidebar-signout,.sidebar:focus-within .sidebar-signout{opacity:1;width:100%;color:var(--ink-dense);justify-content:flex-start;padding:0 12px}.sidebar:hover .sidebar-signout:hover,.sidebar:focus-within .sidebar-signout:hover{color:var(--ink);background:var(--surface)}.board>*+.empty-state{margin-top:14px}.board>.empty-state:only-child{flex:1;justify-content:center}.subject-switch{background:var(--control);border-radius:999px;gap:6px;padding:4px;display:flex}.subject-tab{color:var(--muted);white-space:nowrap;border-radius:999px;padding:7px 14px;font-size:13.5px;font-weight:500;transition:color .16s,background .16s}.subject-tab:hover{color:var(--ink)}.subject-tab[aria-current=page],.subject-tab[aria-pressed=true]{color:var(--card);background:var(--accent);font-weight:600}.program-order{justify-content:flex-end;margin:0 0 14px;display:flex}.exam-groups{gap:18px;display:grid}.exam-group-head{justify-content:space-between;align-items:baseline;gap:12px;padding:0 0 10px;display:flex}.exam-group-head strong{color:var(--ink);font-size:14.5px;font-weight:600}.exam-group-head span{color:var(--meta);white-space:nowrap;font-size:12.5px}.exam-list{gap:6px;margin:0;padding:0;list-style:none;display:grid}.exam-row{border-radius:var(--r-card);background:var(--surface)}.exam-row-head{border-radius:var(--r-card);width:100%;font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;grid-template-columns:52px minmax(0,1fr) auto auto 16px;align-items:center;gap:14px;padding:13px 16px;transition:background .16s;display:grid}.exam-row-head:hover{background:var(--surface-strong)}.exam-task-no{color:var(--meta);font-variant-numeric:tabular-nums;font-size:12.5px}.exam-name{color:var(--ink);font-size:14px;font-weight:500}.exam-level{color:var(--muted);white-space:nowrap;font-size:12.5px}.exam-score{color:var(--ink-dense);font-variant-numeric:tabular-nums;white-space:nowrap;font-size:12.5px}.exam-chevron{color:var(--meta);grid-column:-2;transition:transform .18s}.exam-row-head[aria-expanded=true] .exam-chevron{transform:rotate(180deg)}.exam-row-body p{color:var(--muted);margin:0 0 10px;font-size:13.5px;line-height:1.5}.exam-subtopics{flex-wrap:wrap;gap:6px;margin:0;padding:0;list-style:none;display:flex}.exam-subtopics li{background:var(--card);color:var(--ink-dense);border-radius:999px;padding:4px 10px;font-size:12.5px}@media (max-width:760px){.exam-row-head{grid-template-columns:46px minmax(0,1fr) 16px;row-gap:6px}.exam-level,.exam-score{grid-column:2}.exam-row-body{padding-left:16px}}.auth-intro .eyebrow{margin:0}.auth-intro h1{letter-spacing:-.02em;margin:0;font-size:30px;font-weight:600;line-height:1.15}.auth-intro .eyebrow+h1{margin-top:9px}.auth-intro p{color:var(--muted);text-wrap:pretty;margin:10px 0 0;font-size:15px;line-height:1.55}.auth-form{width:100%;margin-top:calc(40px * var(--air,1));gap:0;display:grid}.auth-form form{gap:16px;display:grid}.auth-form.field-grid{gap:16px}.auth-form .auth-submit{margin-top:8px}.auth-form .field input:not([type=checkbox]),.auth-form .field .select-trigger{min-height:52px}.auth-form .password-reveal{right:10px}.field-grid.single{grid-template-columns:1fr}.auth-divider{margin:calc(36px * var(--air,1)) 0 calc(20px * var(--air,1));color:var(--meta);align-items:center;gap:12px;font-size:12.5px;font-weight:500;display:flex}.auth-divider:before,.auth-divider:after{content:"";background:var(--line);flex:1;height:1px}.yandex-id{gap:8px;display:grid}.yandex-id-slot{min-height:52px}.yandex-id-slot iframe,.yandex-id-slot>div{width:100%!important}.auth-form .button.primary,.auth-submit{width:100%;min-height:52px;font-size:14.5px}.auth-secondary{background:var(--card);justify-content:center;width:100%;min-height:52px;font-size:14px;font-weight:500}.auth-secondary:hover{background:var(--surface)}.inline-form{display:inline}.inline-form .text-link{color:var(--accent);font:inherit;cursor:pointer;background:0 0;border:0;padding:0}.inline-form .text-link:hover{text-decoration:underline}.label-row{justify-content:space-between;align-items:baseline;gap:12px;display:flex}.label-row .text-link{color:var(--muted);font-size:12.5px}.label-row .text-link:hover{color:var(--accent);text-decoration:underline}.subject-picker{border:0;gap:8px;margin:0;padding:0;display:grid}.subject-picker legend{color:var(--ink);padding:0 0 2px;font-size:13px;font-weight:500}.checkbox-row{border-radius:var(--r-block-s);background:var(--surface);cursor:pointer;align-items:center;gap:11px;padding:10px 12px;font-size:14px;display:flex}.checkbox-row:hover{background:var(--surface-strong)}.checkbox-row input{width:16px;height:16px;accent-color:var(--accent)}.onboarding-card .checkbox-row{background:var(--card);min-height:52px;padding:0 16px;font-weight:500}.onboarding-card .checkbox-row:has(input:checked){box-shadow:inset 0 0 0 1.5px var(--accent)}.onboarding-card .checkbox-row input{width:17px;height:17px}.program-page-heading{flex-wrap:wrap}.program-heading-actions{flex:0 auto;align-items:center;gap:12px;min-width:0;max-width:100%;display:flex}.program-heading-actions .subject-switch{scrollbar-width:none;flex-wrap:nowrap;flex:0 auto;min-width:0;overflow-x:auto}.program-heading-actions .subject-switch::-webkit-scrollbar{display:none}.program-heading-actions .subject-tab{white-space:nowrap;flex:none}.program-page-heading>div{min-width:0}.program-page-heading>div>p:not(.eyebrow){max-width:46ch}.add-program-menu{flex:none;position:relative}.add-program-menu>.button svg:last-child{opacity:.8;margin-left:-2px}.add-program-popup{z-index:60;border:1px solid var(--accent-line);background:var(--card);border-radius:12px;gap:2px;width:min(340px,100vw - 32px);padding:6px;display:grid;position:absolute;top:calc(100% + 6px);right:0;box-shadow:0 16px 44px #10182829}.add-program-item{width:100%;color:var(--ink);font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:8px;align-items:flex-start;gap:12px;padding:10px 12px;text-decoration:none;display:flex}.add-program-item:hover{background:var(--surface)}.add-program-item[disabled]{cursor:not-allowed;opacity:.55}.add-program-item>svg{color:var(--accent);flex:none;margin-top:2px}.add-program-item>span{gap:2px;min-width:0;display:grid}.add-program-item strong{font-size:13.5px;font-weight:600}.add-program-item small{color:var(--meta);font-size:12px;line-height:1.4}.add-program-back{color:var(--meta);font:inherit;letter-spacing:.06em;text-transform:uppercase;cursor:pointer;background:0 0;border:0;align-items:center;gap:6px;padding:8px 10px 6px;font-size:11px;font-weight:700;display:inline-flex}.add-program-back:hover{color:var(--ink)}.add-program-option{width:100%;min-height:38px;color:var(--ink);font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:8px;justify-content:space-between;align-items:center;gap:10px;padding:8px 12px;font-size:13.5px;font-weight:500;display:flex}.add-program-option:hover{background:var(--surface)}.add-program-option:hover small{color:var(--accent)}.add-program-option small{color:var(--meta);flex:none;font-size:12px;font-weight:600}.add-program-option[disabled]{cursor:progress}.add-program-error{padding:4px 12px 6px}.tour{z-index:120;position:fixed;inset:0}.tour-veil{cursor:default;background:0 0;border:0;padding:0;position:absolute;inset:0}.tour.no-spot .tour-veil{background:#131b2a7a}.tour-spot{border-radius:var(--r-card);box-shadow:0 0 0 3px var(--card), 0 0 0 200vmax #131b2a7a;pointer-events:none;opacity:1;transition:opacity .2s;position:fixed}.tour-veil{transition:background-color .2s}.tour.no-spot .tour-spot{opacity:0}.tour.is-gliding .tour-spot{transition:top .28s cubic-bezier(.2,.8,.2,1),left .28s cubic-bezier(.2,.8,.2,1),width .28s cubic-bezier(.2,.8,.2,1),height .28s cubic-bezier(.2,.8,.2,1)}.tour-pop{background:var(--card);border-radius:var(--r-card);width:min(360px,100vw - 32px);box-shadow:var(--shadow-pop);opacity:0;pointer-events:none;padding:20px 20px 16px;transition:opacity .12s,transform .12s;position:fixed;transform:translateY(6px)}.tour.is-ready .tour-pop{opacity:1;pointer-events:auto;transition:opacity .22s,transform .22s;transform:none}.tour-close{border-radius:var(--r-chip);width:26px;height:26px;color:var(--meta);cursor:pointer;background:0 0;border:0;place-items:center;display:grid;position:absolute;top:12px;right:12px}.tour-close:hover{background:var(--control);color:var(--ink)}.tour-title{color:var(--ink);padding-right:26px;font-size:16px;font-weight:600;display:block}.tour-body{color:var(--muted);margin:8px 0 0;font-size:14px;line-height:1.55}.tour-foot{justify-content:space-between;align-items:center;gap:10px;margin-top:14px;display:flex}.tour-dots{align-items:center;gap:5px;display:flex}.tour-dots span{background:var(--surface-strong);border-radius:999px;width:6px;height:6px;transition:width .2s,background-color .2s}.tour-dots .is-done{background:#c3cad4}.tour-dots .is-current{background:var(--accent);width:18px}.tour-buttons{align-items:center;gap:8px;display:flex}.tour-foot .button{gap:5px;padding:7px 12px;font-size:13px}.tour-launch,.sidebar-search{font:inherit;text-align:left;cursor:pointer;background:0 0;border:0}@media (prefers-reduced-motion:reduce){.tour-spot,.tour-pop,.tour.is-ready .tour-pop,.tour.is-gliding .tour-spot,.tour-veil{transition:none}}.legal-ground{background:var(--paper);min-height:100dvh;padding:26px 18px 70px}.legal{max-width:62ch;color:var(--ink-dense);margin:0 auto;font-size:14px;line-height:1.65}.legal-head{border-bottom:1px solid var(--accent-line);margin-bottom:26px;padding-bottom:18px}.legal-brand{align-items:center;gap:10px;margin-bottom:22px;text-decoration:none;display:inline-flex}.legal-meta{color:var(--meta);margin:10px 0 0;font-size:12.5px}.legal-head h1{color:var(--ink);letter-spacing:-.02em;margin:0;font-size:clamp(26px,3.4vw,32px);font-weight:700;line-height:1.15}.legal-section{margin-bottom:26px}.legal-section h2{color:var(--ink);margin:0 0 10px;font-size:16px;font-weight:600;line-height:1.3}.legal-section p{margin:0 0 10px}.legal-section p:last-child{margin-bottom:0}.legal-list{margin:0 0 10px;padding:0;list-style:none}.legal-list li{margin-bottom:8px}.legal-list li:last-child{margin-bottom:0}@media (max-width:760px){.legal-ground{padding:18px 16px 48px}.legal{font-size:13.5px}.legal-section{margin-bottom:22px}}.consent{color:var(--muted);align-items:flex-start;gap:10px;font-size:12.5px;line-height:1.45;display:flex}.consent input{width:17px;height:17px;min-height:0;accent-color:var(--accent);flex:none;margin:1px 0 0}.consent a{color:var(--accent);text-underline-offset:2px;font-weight:500;text-decoration:underline}.provider-note{color:var(--meta);text-align:center;margin:-4px 0 0;font-size:12px;line-height:1.45}.provider-note a{color:var(--muted);text-underline-offset:2px;text-decoration:underline}.password-field{display:block;position:relative}.password-field input{padding-right:44px}.password-reveal{border-radius:var(--r-btn-s);width:32px;height:32px;color:var(--meta);cursor:pointer;background:0 0;border:0;place-items:center;padding:0;display:grid;position:absolute;top:50%;right:6px;transform:translateY(-50%)}.password-reveal:hover{color:var(--ink);background:var(--control)}.password-reveal[aria-pressed=true]{color:var(--accent)}.resend-form{text-align:left;gap:12px;margin-top:18px;display:grid}.resend-form .button{justify-self:center}.resend-form .button:disabled{opacity:.6;cursor:default}.resend-notice{color:var(--muted);text-align:center;margin:0;font-size:13px}.provider-block{gap:10px;display:grid}.provider-block .provider-note{margin:0}.consent-field{gap:6px}.zone-clock{color:var(--ink);align-items:center;gap:8px;margin-top:2px;font-family:JetBrains Mono,ui-monospace,monospace;font-size:12.5px;font-weight:500;display:flex}.zone-dot{border-radius:var(--r-chip);background:var(--accent);flex:none;width:7px;height:7px}.exam-note-mark{vertical-align:-2px;color:var(--meta);margin-left:8px;display:inline-block}.exam-command{align-items:center;gap:8px;display:inline-flex}.exam-command .field-error{white-space:nowrap}.exam-row,.exam-row-body,.topic-block,.topic-resource{min-width:0}.topic-card{border-radius:var(--r-card);background:var(--card);gap:0;min-width:0;display:grid;overflow:hidden;box-shadow:0 1px 2px #1018280f,0 0 0 1px #1018280a}.topic-card .topic-lead{border-bottom:1px solid var(--line);color:var(--muted);margin:0;padding:14px 18px;font-size:13.5px;line-height:1.5}.topic-block{padding:14px 18px 16px}.topic-block+.topic-block{border-top:1px solid var(--line)}.topic-block-head{justify-content:space-between;align-items:center;gap:12px;min-height:30px;margin-bottom:8px;display:flex}.topic-block-head h4{color:var(--ink);align-items:center;gap:8px;margin:0;font-size:13px;font-weight:600;display:inline-flex}.topic-block-head h4 svg{color:var(--accent)}.topic-block-head .button.compact{min-height:30px;padding:6px 10px;font-size:12.5px}.topic-card .topic-empty{color:var(--meta);margin:0;font-size:13.5px}.topic-empty-row{flex-wrap:wrap;align-items:center;gap:10px 14px;display:flex}.topic-empty-row .button.compact{min-height:30px;padding:6px 10px;font-size:12.5px}.topic-empty-plate{border:1.5px dashed var(--line-strong,#d6dbe3);border-radius:var(--r-btn);background:var(--surface);width:100%;color:var(--muted);font:inherit;text-align:left;cursor:pointer;align-items:center;gap:10px;padding:12px 14px;font-size:13.5px;transition:background .12s,color .12s,border-color .12s;display:flex}.topic-empty-plate:hover{color:var(--ink);background:var(--surface-strong);border-color:var(--accent)}.topic-empty-plate svg{color:var(--meta);flex:none}.topic-empty-plate:hover svg{color:var(--accent)}.topic-resources{gap:4px;margin:0;padding:0;list-style:none;display:grid}.topic-resource{border-radius:var(--r-btn-s);align-items:center;gap:6px;margin:0 -8px;padding:2px 8px;display:flex}.topic-resource:hover{background:var(--surface)}.topic-resource-link{min-width:0;color:var(--ink);flex:auto;align-items:center;gap:9px;padding:6px 0;text-decoration:none;display:flex}.topic-resource-link svg{color:var(--accent);flex:none}.topic-resource-title{text-overflow:ellipsis;white-space:nowrap;font-size:14px;font-weight:500;overflow:hidden}.topic-resource-link:hover .topic-resource-title{color:var(--accent);text-underline-offset:3px;text-decoration:underline}.topic-resource-host{color:var(--meta);flex:none;font-size:12.5px}.topic-resource-tools{opacity:0;flex:none;gap:2px;transition:opacity .12s;display:flex}.topic-resource:hover .topic-resource-tools,.topic-resource:focus-within .topic-resource-tools{opacity:1}.topic-resource-tools .icon-button{width:30px;height:30px;color:var(--muted)}.topic-resource-tools .icon-button:hover{background:var(--card);color:var(--ink)}.topic-resource-tools .icon-button.danger:hover{color:var(--coral);background:var(--coral-soft)}.topic-resource-form,.topic-editor{gap:10px;margin-top:4px;display:grid}.topic-resource-form .form-error,.topic-editor .form-error{margin:0}.topic-resource-fields{grid-template-columns:minmax(0,1fr) minmax(0,1.4fr);gap:10px;display:grid}.topic-resource-form .field input,.topic-editor .field input,.topic-editor .field textarea{background:var(--surface);min-height:40px;padding:9px 12px;font-size:14px}.topic-editor .field textarea{min-height:96px;line-height:1.5}.topic-editor .field label,.topic-resource-form .field label{font-size:12px}.topic-form-actions{align-items:center;gap:6px;display:flex}.topic-form-actions .button.compact{min-height:32px;padding:7px 12px;font-size:12.5px}.topic-subtopics{color:var(--ink);grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:4px 24px;margin:0;padding:0 0 0 18px;font-size:14px;line-height:1.5;list-style:outside;display:grid}.topic-subtopics li{padding-left:2px}.topic-subtopics li::marker{color:var(--accent)}.topic-note{border-left:3px solid var(--accent);border-radius:0 var(--r-btn-s) var(--r-btn-s) 0;background:var(--surface);color:var(--ink);white-space:pre-line;padding:12px 14px;font-size:14px;line-height:1.55}.topic-foot{border-top:1px solid var(--line);background:var(--surface);flex-wrap:wrap;align-items:center;gap:6px;padding:10px 12px;display:flex}.topic-foot .button.compact{min-height:30px;padding:6px 10px;font-size:12.5px}.topic-foot .icon-button{width:30px;height:30px;color:var(--muted)}.topic-foot .icon-button:hover{background:var(--card);color:var(--ink)}.topic-foot .icon-button[disabled]{opacity:.3;cursor:not-allowed}.topic-foot .exam-command:has(.topic-hide){margin-left:auto}.topic-rename{padding:14px 18px 4px}.exam-row-body{padding:0 12px 12px}.exam-add{margin-top:8px;padding:0 16px}form.exam-add{border-radius:var(--r-card);background:var(--surface);padding:14px 16px}.exam-editor{gap:12px;max-width:640px;display:grid}.exam-editor .field input,.exam-editor .field textarea{background:var(--card)}.exam-editor .field textarea{min-height:72px}.exam-editor .form-error{margin:0}.exam-row-actions{flex-wrap:wrap;align-items:center;gap:6px;margin-top:12px;display:flex}.exam-group+.exam-group{margin-top:6px}.exam-hidden{margin-top:18px}.exam-hidden summary{cursor:pointer;color:var(--muted);font-size:13px;font-weight:500;list-style:none}.exam-hidden summary::-webkit-details-marker{display:none}.exam-hidden summary:before{content:"›";margin-right:6px;transition:transform .15s;display:inline-block}.exam-hidden[open] summary:before{transform:rotate(90deg)}.exam-hidden .exam-list{margin-top:10px}.exam-row-off{box-shadow:inset 0 0 0 1px var(--line);background:0 0}.exam-row-off .exam-name{color:var(--muted)}.exam-row-head.static{cursor:default;grid-template-columns:52px minmax(0,1fr) auto}.exam-row-head.static:hover{background:0 0}.program-bands{color:var(--muted);flex-wrap:wrap;align-items:center;gap:10px;font-size:13px;display:flex}.program-bands>span{display:inline}.program-bands .text-link{cursor:pointer;font:inherit;background:0 0;border:0;padding:0}.program-bands.editing{align-items:flex-end}.program-bands.editing .field{gap:6px}.program-bands-actions{gap:6px;display:flex}.percent-bands-row{flex-wrap:wrap;gap:10px;display:flex}.percent-band{color:var(--muted);align-items:center;gap:8px;font-size:13px;font-weight:500;display:inline-flex}.percent-band input{width:76px}.percent-bands.compact .percent-band input{min-height:36px;padding:6px 10px;font-size:14px}.percent-bands.compact .field-hint,.percent-bands.compact .field-error{width:100%;display:block}.topic-sections{gap:18px;display:grid}.topic-section{border-radius:var(--r-card);background:var(--surface);gap:10px;padding:14px;display:grid}.topic-section>.button{justify-self:start}.topic-section .field input{background:var(--card)}.topic-section-head{grid-template-columns:minmax(0,1fr) 34px;align-items:end;gap:10px;display:grid}.topic-rows{gap:8px;display:grid}.topic-row{grid-template-columns:28px 1.3fr 1fr 34px;align-items:center;gap:8px;display:grid}.topic-row-number{color:var(--meta);font-variant-numeric:tabular-nums;text-align:right;font-size:12.5px}.topic-row input{border-radius:var(--r-btn-s);min-height:40px;color:var(--ink);background:var(--card);border:0;padding:9px 12px;font-size:14px;font-weight:500}.topic-row input:focus{box-shadow:0 0 0 2px var(--accent);outline:0}.topic-row .icon-button[disabled]{opacity:.3;cursor:not-allowed}.topic-sections-foot{flex-wrap:wrap;align-items:center;gap:12px;margin-top:14px;display:flex}@media (max-width:760px){.topic-row{grid-template-columns:22px minmax(0,1fr) 34px}.topic-row input:nth-of-type(2){grid-column:2/-1}.topic-row .icon-button{grid-area:1/3}.exam-row-head.static{grid-template-columns:0 minmax(0,1fr) auto}.program-table-panel .table-toolbar{flex-wrap:wrap}.program-heading-actions{flex-wrap:wrap;width:100%}.program-heading-actions .subject-switch{max-width:100%}.topic-resource-fields{grid-template-columns:1fr}.topic-resource-tools{opacity:1}.topic-resource-host{display:none}.topic-block{padding:12px 14px 14px}.exam-row-body{padding:0 6px 8px}.topic-block-head{flex-wrap:wrap}.topic-block-head h4{white-space:nowrap}.add-program-popup{left:0;right:auto}}.schedule-page{--lesson-paid-bg:#e4f2ea;--lesson-paid-ink:#1f5a3a;--lesson-due-bg:#e9ecf6;--lesson-due-ink:#2f3f5c;--lesson-debt-bg:#fbe7e3;--lesson-debt-ink:#8f2e24;--lesson-done-bg:#eef1f4;--lesson-done-ink:#5f6b7a;--now:#d94b3a}@media (min-width:761px){.topbar{border:0;height:0;padding:0;overflow:visible}.topbar .command-button,.topbar-note{display:none}}.schedule-page{--schedule-top:114px;padding-top:18px;padding-bottom:16px}.schedule-bar{justify-content:space-between;align-items:center;gap:16px;margin-bottom:14px;display:flex}.schedule-bar-title{gap:2px;min-width:0;display:grid}.schedule-eyebrow{color:var(--meta);opacity:.85;letter-spacing:.1em;text-transform:uppercase;font-size:11px;font-weight:600;line-height:1.2}.schedule-bar-week{align-items:center;gap:12px;min-width:0;display:flex}.schedule-bar h1{letter-spacing:-.02em;white-space:nowrap;margin:0;font-size:22px;font-weight:600;line-height:1.15}.schedule-badge{background:var(--control);color:var(--muted);white-space:nowrap;border-radius:999px;flex:none;padding:4px 10px;font-size:12.5px;font-weight:500}.schedule-controls{flex:none;align-items:center;gap:10px;display:flex}.schedule-search{background:var(--card);width:36px;height:36px;color:var(--ink-dense);border-radius:999px;box-shadow:0 1px 2px #1018280f}.schedule-search:hover{background:var(--control);color:var(--ink)}.schedule-nav{background:var(--control);border-radius:999px;align-items:center;gap:2px;padding:3px;display:flex}.schedule-nav .icon-button{width:32px;height:32px;color:var(--ink-dense);border-radius:999px}.schedule-nav .icon-button:hover{background:var(--card);color:var(--ink)}.schedule-nav .button.compact{background:0 0;border-radius:999px;min-height:32px;padding:6px 14px}.schedule-nav .button.compact:hover{background:var(--card)}.schedule-nav .button.current{background:var(--card);box-shadow:0 1px 2px #10182814}.schedule-layout{height:calc(100vh - var(--schedule-top));grid-template-columns:248px minmax(0,1fr);align-items:start;gap:14px;min-height:480px;display:grid}.schedule-side{scrollbar-width:thin;align-content:start;gap:10px;max-height:100%;display:grid;overflow-y:auto}.mini-calendar{border-radius:var(--r-card);background:var(--card);padding:14px 14px 12px}.mini-calendar-head{justify-content:space-between;align-items:center;margin-bottom:8px;display:flex}.mini-calendar-head strong{font-size:14px;font-weight:600}.mini-calendar-head div{gap:2px;display:flex}.mini-calendar-head .icon-button{width:28px;height:28px;color:var(--muted)}.mini-calendar-head .icon-button:hover{background:var(--surface);color:var(--ink)}.mini-calendar-grid{grid-template-columns:repeat(7,1fr);gap:2px 0;display:grid}.mini-calendar-weekday{color:var(--meta);text-align:center;text-transform:uppercase;letter-spacing:.04em;padding:4px 0 6px;font-size:10.5px;font-weight:600}.mini-calendar-day{height:28px;color:var(--ink);font-variant-numeric:tabular-nums;border-radius:8px;place-items:center;font-size:12.5px;text-decoration:none;display:grid;position:relative}.mini-calendar-day:hover{background:var(--surface-strong)}.mini-calendar-day.outside{color:var(--meta)}.mini-calendar-day.in-week{background:var(--surface);border-radius:0}.mini-calendar-day.in-week:first-child,.mini-calendar-day.in-week:nth-child(7n+1){border-radius:8px 0 0 8px}.mini-calendar-day.in-week:nth-child(7n){border-radius:0 8px 8px 0}.mini-calendar-day.today{box-shadow:inset 0 0 0 1.5px var(--accent);border-radius:8px;font-weight:700}.mini-calendar-day.selected{color:#fff;background:var(--accent);border-radius:8px}.mini-calendar-day i{background:var(--accent);border-radius:50%;width:4px;height:4px;margin-left:-2px;position:absolute;bottom:4px;left:50%}.mini-calendar-day.selected i{background:#fff}.schedule-summary{border-radius:var(--r-card);background:var(--card);gap:2px;padding:6px 14px;display:grid}.schedule-summary>div{gap:1px;padding:7px 0;display:grid}.schedule-summary>div+div{border-top:1px solid var(--line)}.schedule-summary span{color:var(--meta);font-size:11.5px;font-weight:500}.schedule-summary strong{letter-spacing:-.01em;font-size:16px;font-weight:600}.schedule-summary small{color:var(--muted);font-size:12px}.schedule-summary .is-debt strong{color:var(--coral)}.schedule-filter{border-radius:var(--r-card);background:var(--card);padding:10px 14px 12px}.schedule-filter-head{justify-content:space-between;align-items:center;gap:10px;margin-bottom:10px;display:flex}.schedule-filter-head strong{font-size:13px;font-weight:600}.subject-switch.small{gap:2px;padding:3px}.subject-switch.small .subject-tab{padding:4px 10px;font-size:12px}.schedule-chips{flex-wrap:wrap;gap:6px;display:flex}.schedule-chip{background:var(--surface);color:var(--ink-dense);font:inherit;cursor:pointer;border:0;border-radius:999px;padding:6px 11px;font-size:12.5px;font-weight:500;transition:background .12s,color .12s}.schedule-chip:hover{background:var(--surface-strong)}.schedule-chip[aria-pressed=true]{color:#fff;background:var(--accent)}.schedule-chip.debt{box-shadow:inset 0 0 0 1px var(--coral-mid)}.schedule-chip.debt:after{content:" ·";color:var(--coral)}.schedule-sync-button{background:var(--card);white-space:nowrap;justify-content:flex-start;gap:8px;width:100%;padding-left:12px;padding-right:12px;font-size:12.5px;position:relative}.schedule-sync-button:hover{background:var(--surface-strong)}.schedule-sync-button svg{flex:none}.schedule-sync-dot{width:7px;height:7px;box-shadow:0 0 0 2px var(--card);background:#2f8f5b;border-radius:50%;position:absolute;top:9px;left:22px}.week-grid{border-radius:var(--r-card);background:var(--card);grid-template-rows:auto minmax(0,1fr);min-width:0;height:100%;display:grid;overflow:hidden}.week-head{border-bottom:1px solid var(--line);grid-template-columns:48px repeat(7,minmax(0,1fr));padding:8px 0;display:grid}.week-gutter-head{color:var(--meta);place-items:center;font-size:10px;font-weight:600;display:grid}.week-day-head{background:var(--surface);border-radius:12px;justify-content:center;align-items:baseline;gap:6px;margin:0 3px;padding:8px 6px;display:flex}.week-day-head span{color:var(--meta);text-transform:lowercase;font-size:12px;font-weight:500}.week-day-head strong{letter-spacing:-.02em;font-size:18px;font-weight:600}.week-day-head.today{background:var(--accent-soft);box-shadow:inset 0 0 0 1px var(--accent-line)}.week-day-head.today span{color:var(--accent);font-weight:600}.week-day-head.today strong{color:var(--accent)}.week-scroll{scrollbar-width:thin;min-height:0;position:relative;overflow:auto}.week-body{grid-template-columns:48px repeat(7,minmax(0,1fr));display:grid;position:relative}.week-gutter{position:relative}.week-gutter span{color:var(--meta);font-variant-numeric:tabular-nums;font-size:11px;position:absolute;right:8px;transform:translateY(-50%)}.week-gutter span:first-child{transform:none;top:4px!important}.week-column{border-left:1px solid var(--line);cursor:cell;position:relative;container-type:inline-size}.week-column.selected{background:#f8fafc}.week-column.today{background:#2430440b}.week-column:hover{background:#f5f7fa}.week-column.today:hover{background:#24304412}.week-hour-line{background:var(--line);pointer-events:none;height:1px;position:absolute;left:0;right:0}.week-now{background:var(--now);z-index:3;pointer-events:none;height:2px;margin-top:-1px;position:absolute;left:0;right:0}.week-now i{background:var(--now);width:8px;height:8px;box-shadow:0 0 0 2px var(--card);border-radius:50%;position:absolute;top:-3px;left:-4px}.lesson-card{z-index:2;background:var(--lesson-due-bg);color:var(--lesson-due-ink);font:inherit;text-align:left;cursor:pointer;border:0;border-left:3px solid;border-radius:10px;flex-direction:column;align-items:stretch;gap:1px;padding:4px 5px 5px 6px;transition:transform .12s,box-shadow .12s;display:flex;position:absolute;overflow:hidden;box-shadow:0 1px 2px #1018280f}.lesson-card:hover{z-index:4;transform:translateY(-1px);box-shadow:0 6px 16px #1018281f}.lesson-card.pay-prepaid,.lesson-card.pay-paid{background:var(--lesson-paid-bg);color:var(--lesson-paid-ink)}.lesson-card.pay-debt{background:var(--lesson-debt-bg);color:var(--lesson-debt-ink)}.lesson-card.is-completed{background:var(--lesson-done-bg);color:var(--lesson-done-ink);border-left-style:dashed}.lesson-card.is-past:not(.is-completed){opacity:.75}.lesson-card>*{flex:none}.lesson-card-top{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:2px 4px;min-width:0;display:flex}.lesson-card-time{opacity:.8;font-variant-numeric:tabular-nums;white-space:nowrap;align-items:center;gap:4px;font-size:10px;font-weight:600;display:inline-flex}.lesson-card-name{text-overflow:ellipsis;white-space:nowrap;margin-top:1px;font-size:13px;font-weight:500;line-height:1.25;overflow:hidden}.lesson-card-meta{opacity:.8;-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:11px;line-height:1.3;display:-webkit-box;overflow:hidden}.lesson-card.is-tall .lesson-card-meta{-webkit-line-clamp:3}@container (max-width:132px){.lesson-card:not(.is-tall) .lesson-card-meta{-webkit-line-clamp:1}}.lesson-card-pay{white-space:nowrap;background:#fffc;border-radius:999px;flex:none;padding:0 5px;font-size:9px;font-weight:600;line-height:14px}.lesson-card-pay.standalone{justify-self:start;margin:0;padding:3px 9px;font-size:11px}.lesson-card-pay.pay-prepaid,.lesson-card-pay.pay-paid{color:var(--lesson-paid-ink)}.lesson-card-pay.pay-due{color:var(--lesson-due-ink)}.lesson-card-pay.pay-debt{color:var(--lesson-debt-ink);background:#fffc}.lesson-card.is-short{gap:0;padding:2px 6px 2px 7px}.lesson-card.is-short .lesson-card-meta,.lesson-card.is-short .lesson-card-pay{display:none}.lesson-card.is-medium .lesson-card-meta{-webkit-line-clamp:1}.lesson-card.is-short .lesson-card-name{font-size:12px}.lesson-card.is-short .lesson-card-time{font-size:10px}.popover-backdrop{z-index:70;position:fixed;inset:0}.lesson-popover{z-index:71;border:1px solid var(--accent-line);background:var(--card);border-radius:14px;gap:10px;width:260px;padding:12px;display:grid;position:fixed;box-shadow:0 16px 44px #1018282e}.lesson-popover-head{justify-content:space-between;align-items:flex-start;gap:8px;display:flex}.lesson-popover-head>div{gap:2px;min-width:0;display:grid}.lesson-popover-head strong{font-size:14px;font-weight:600}.lesson-popover-head small{color:var(--muted);font-size:12px}.lesson-popover-head .icon-button{flex:none;width:28px;height:28px}.lesson-popover-topic{color:var(--ink);margin:0;font-size:13px;line-height:1.4}.lesson-popover-actions{gap:4px;display:grid}.lesson-popover-actions .button{justify-content:flex-start;width:100%}.lesson-popover .lesson-card-pay{background:var(--surface)}.modal-backdrop{z-index:80;background:#16181d73;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.modal-card{background:var(--card);border-radius:20px;width:min(480px,100%);max-height:calc(100vh - 48px);padding:22px 24px 24px;overflow:auto;box-shadow:0 28px 70px -20px #10182873}.modal-head{justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:16px;display:flex}.modal-head h2{letter-spacing:-.01em;margin:2px 0 0;font-size:20px;font-weight:600}.modal-head h2.modal-title{align-items:center;gap:8px;display:inline-flex}.modal-head h2.modal-title svg{color:#64748b;flex:none}.modal-form{gap:14px;min-width:0;display:grid}.modal-form>*{min-width:0}.modal-form .form-error{margin:0}.modal-actions{justify-content:flex-end;gap:8px;margin-top:4px;display:flex}.sync-lead{color:var(--muted);margin:0;font-size:13.5px;line-height:1.5}.sync-buttons{gap:8px;display:grid}.sync-buttons .button{justify-content:flex-start;width:100%}.sync-guide{border-radius:var(--r-btn);background:var(--surface);color:var(--ink);gap:4px;margin:0;padding:12px 14px 12px 30px;font-size:13px;line-height:1.5;display:grid}.sync-url{border-radius:var(--r-btn-s);background:var(--surface);align-items:center;gap:6px;min-width:0;padding:8px 8px 8px 12px;display:flex}.sync-url code{min-width:0;color:var(--ink-dense);text-overflow:ellipsis;white-space:nowrap;flex:auto;font-family:JetBrains Mono,ui-monospace,monospace;font-size:11.5px;overflow:hidden}.sync-url .icon-button{flex:none;width:30px;height:30px}.sync-rotate{border-radius:var(--r-btn);background:var(--coral-soft);color:var(--coral-dark);gap:8px;padding:12px 14px;font-size:13px;line-height:1.45;display:grid}.sync-rotate-link{cursor:pointer;font:inherit;background:0 0;border:0;justify-self:start;padding:0;font-size:12.5px}@media (max-width:1100px){.schedule-layout{grid-template-columns:1fr;height:auto}.schedule-side{grid-template-columns:repeat(2,minmax(0,1fr));max-height:none;overflow:visible}.schedule-side .mini-calendar{grid-row:span 3}.week-grid{height:auto}.week-scroll{min-height:420px;max-height:calc(100vh - 200px)}}@media (max-width:760px){.schedule-search{display:none}.schedule-page{padding-top:12px}.schedule-bar{flex-wrap:wrap}.schedule-bar-title{width:100%}.schedule-controls{justify-content:space-between;width:100%}.schedule-side{grid-template-columns:1fr}.schedule-side .mini-calendar{grid-row:auto}.week-grid{overflow-x:auto}.week-head,.week-body{grid-template-columns:44px repeat(7,132px);min-width:968px}.week-scroll{max-height:calc(100vh - 220px);overflow:auto}.week-day-head strong{font-size:16px}.modal-backdrop{align-items:end;padding:12px}.modal-card{max-height:calc(100vh - 24px)}}.page-bar{justify-content:space-between;align-items:center;gap:16px;margin-bottom:14px;display:flex}.page-bar-title{gap:2px;min-width:0;display:grid}.page-eyebrow{color:var(--meta);opacity:.85;letter-spacing:.1em;text-transform:uppercase;font-size:11px;font-weight:600;line-height:1.2}.page-bar-row{align-items:center;gap:12px;min-width:0;display:flex}.page-bar h1{letter-spacing:-.02em;margin:0;font-size:22px;font-weight:600;line-height:1.15}.page-badge{background:var(--control);color:var(--muted);white-space:nowrap;border-radius:999px;flex:none;padding:4px 10px;font-size:12.5px;font-weight:500}.students-page{padding-top:18px}.workspace--students{background:#f8fafc}.students-page{max-width:1280px;margin:0 auto;padding-top:18px}.students-bar{align-items:center;margin-bottom:18px}.students-bar-left{align-items:center;gap:22px;min-width:0;display:flex}.students-bar-right{flex:none;align-items:center;gap:10px;display:flex}.students-tabs{gap:18px;display:flex}.students-tab{color:#64748b;white-space:nowrap;border-bottom:2px solid #0000;align-items:center;gap:4px;margin-bottom:-2px;padding:9px 2px;font-size:13.5px;font-weight:500;text-decoration:none;transition:color .12s,border-color .12s;display:inline-flex}.students-tab span{color:#94a3b8;font-variant-numeric:tabular-nums;font-weight:400}.students-tab:hover{color:var(--ink)}.students-tab[aria-current=page]{color:var(--ink);border-bottom-color:var(--ink);font-weight:600}.students-tab[aria-current=page] span{color:#64748b}.students-search{color:#94a3b8;background:#fff;border:1px solid #e2e8f0;border-radius:10px;align-items:center;gap:8px;width:240px;height:36px;padding:0 10px 0 12px;transition:border-color .12s,box-shadow .12s;display:flex}.students-search:focus-within{border-color:#cbd5e1;box-shadow:0 0 0 3px #0f172a0d}.students-search input{color:#0f172a;min-width:0;font:inherit;background:0 0;border:0;outline:none;flex:auto;font-size:13.5px}.students-search input::placeholder{color:#94a3b8}.students-search input::-webkit-search-cancel-button{display:none}.students-search button{color:#94a3b8;cursor:pointer;background:0 0;border:0;border-radius:6px;place-items:center;width:22px;height:22px;display:grid}.students-search button:hover{color:#334155;background:#f1f5f9}.students-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;display:grid}.student-card{background:#fff;border:1px solid #e2e8f099;border-radius:16px;grid-template-columns:minmax(0,1fr);align-content:start;padding:24px;transition:box-shadow .2s,transform .2s,border-color .2s;display:grid;position:relative;box-shadow:0 2px 8px #0000000a}.student-card:hover{transform:translateY(-2px);box-shadow:0 8px 20px #00000014}.student-card.is-archived{background:#fbfcfd}.student-card.is-archived .avatar{opacity:.75}.student-card-cover{z-index:1;border-radius:inherit;position:absolute;inset:0}.student-card-cover:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.student-card>:not(.student-card-cover){z-index:2;pointer-events:none;position:relative}.student-card-menu,.student-card-menu *{pointer-events:auto}.student-card-head{grid-template-columns:48px minmax(0,1fr) auto auto;align-items:center;gap:12px;display:grid}.student-card-head .avatar{color:#334155;letter-spacing:.01em;background:#f1f5f9;border:1px solid #e2e8f080;border-radius:50%;width:48px;height:48px;font-size:14px;font-weight:600}.student-card-who{gap:2px;min-width:0;display:grid}.student-card-who strong{color:#0f172a;text-overflow:ellipsis;white-space:nowrap;font-size:15.5px;font-weight:600;line-height:1.2;overflow:hidden}.student-card-who small{color:#64748b;text-overflow:ellipsis;white-space:nowrap;font-size:12.5px;overflow:hidden}.student-card-flag{color:#64748b;background:#f1f5f9;border-radius:6px;padding:2px 8px;font-size:11px;font-weight:500}.student-card-menu{position:relative}.student-card-menu .icon-button{color:#94a3b8;border-radius:8px;width:28px;height:28px;padding:4px}.student-card-menu .icon-button:hover,.student-card-menu .icon-button[aria-expanded=true]{color:#334155;background:#f1f5f9}.student-card-popup{z-index:5;background:#fff;border:1px solid #e2e8f0;border-radius:12px;gap:2px;min-width:200px;padding:6px;display:grid;position:absolute;top:calc(100% + 4px);right:0;box-shadow:0 12px 32px #0f172a1f}.student-card-popup a{color:#0f172a;border-radius:8px;align-items:center;gap:10px;padding:8px 10px;font-size:13.5px;font-weight:500;text-decoration:none;display:flex}.student-card-popup a:hover{background:#f8fafc}.student-card-popup a svg{color:#64748b}.student-card-label{color:#94a3b8;letter-spacing:.06em;text-transform:uppercase;margin-bottom:5px;font-size:11px;font-weight:600;display:block}.student-card-next{border-top:1px solid #f1f5f9;border-bottom:1px solid #f1f5f9;min-height:72px;margin:16px 0;padding:14px 0}.student-card-next strong{color:#0f172a;font-size:14px;font-weight:600;display:block}.student-card-next small{color:#64748b;overflow-wrap:anywhere;-webkit-line-clamp:2;-webkit-box-orient:vertical;margin-top:3px;font-size:12.5px;line-height:1.4;display:-webkit-box;overflow:hidden}.student-card-none{color:#94a3b8;font-size:13px;line-height:1.5;display:block}.student-card-foot{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:16px;height:84px;display:grid}.student-card-progress,.student-card-money{align-content:start;gap:0;min-width:0;display:grid}.student-card-ring-row{align-items:center;gap:10px;min-width:0;display:flex}.student-card-ring-text{gap:1px;min-width:0;display:grid}.student-card-ring-text strong{color:#0f172a;letter-spacing:-.01em;font-size:17px;font-weight:600;line-height:1.15}.student-card-ring-text strong.is-empty{color:#94a3b8;font-weight:500}.student-card-ring-text small{color:#64748b;text-overflow:ellipsis;white-space:nowrap;font-size:11.5px;overflow:hidden}.progress-ring{flex:none;display:block}.progress-ring-track{stroke:#f1f5f9}.progress-ring-value{stroke:#0f172a;transition:stroke-dasharray .4s}.progress-ring.tone-good .progress-ring-value{stroke:#10b981}.progress-ring.tone-mid .progress-ring-value{stroke:#f59e0b}.progress-ring.tone-low .progress-ring-value{stroke:#f43f5e}.student-card-risk{color:#d97706;white-space:nowrap;text-overflow:ellipsis;margin-top:6px;font-size:12px;font-weight:500;line-height:16px;display:block;overflow:hidden}.student-card-rate{color:#0f172a;white-space:nowrap;min-height:20px;font-size:14px;font-weight:600;line-height:20px;display:block}.pay-status{white-space:nowrap;align-items:center;gap:6px;margin-top:4px;font-size:12px;font-weight:500;line-height:16px;display:inline-flex}.pay-status i{border-radius:50%;flex:none;width:6px;height:6px}.pay-status.paid{color:#059669}.pay-status.paid i{background:#10b981}.pay-status.debt{color:#e11d48}.pay-status.debt i{background:#f43f5e}.pay-status.neutral{color:#94a3b8;font-weight:400}.pay-status.due{color:#475569}.student-card-money .pay-status{white-space:normal;align-items:flex-start}.student-card-money .pay-status i{margin-top:5px}.students-empty{margin-top:8px}@media (max-width:1280px){.students-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}}@media (max-width:760px){.students-grid{grid-template-columns:1fr;gap:12px}.student-card{padding:18px}.students-bar{flex-wrap:wrap}.students-bar-left,.students-bar-right{width:100%}.students-bar-left{justify-content:space-between;gap:12px}.students-bar-right{flex-wrap:wrap}.students-search{flex:100%;width:auto}.students-bar-right .button{width:100%}.students-tabs{scrollbar-width:none;gap:12px;overflow-x:auto}.page-bar .button{white-space:nowrap}.student-card-foot{height:auto;min-height:84px}.student-card-risk{white-space:normal}}.workspace{flex-direction:column;display:flex}.workspace>main{flex:auto}.student-page{max-width:1280px;margin:0 auto;padding-top:18px}.student-bar{margin-bottom:16px}.student-bar .breadcrumb{color:#64748b;margin:0;font-size:13.5px}.student-bar .breadcrumb a{color:#64748b;text-decoration:none}.student-bar .breadcrumb a:hover{color:var(--ink);text-decoration:underline}.student-bar-actions{flex:none;align-items:center;gap:8px;display:flex}.student-layout{grid-template-columns:312px minmax(0,1fr);align-items:start;gap:24px;display:grid}.student-main{gap:24px;min-width:0;display:grid}.student-main>*{min-width:0}.student-profile{background:#fff;border:1px solid #e2e8f099;border-radius:16px;gap:0;padding:24px;display:grid;box-shadow:0 2px 8px #0000000a}.student-profile-hero{text-align:center;justify-items:center;gap:4px;padding-bottom:16px;display:grid}.student-profile-avatar{color:#334155;background:#f1f5f9;border:1px solid #e2e8f080;border-radius:50%;width:64px;height:64px;margin-bottom:6px;font-size:20px;font-weight:600}.student-profile-hero h1{color:#0f172a;letter-spacing:-.01em;margin:0;font-size:18px;font-weight:700;line-height:1.2}.student-profile-hero p{color:#64748b;margin:0;font-size:13px}.student-profile-cta{justify-content:center;width:100%;margin-top:12px}.student-profile-rules{align-items:center;gap:4px;display:inline-flex;color:#94a3b8!important;font-size:12px!important}.student-profile-rules-edit{color:#94a3b8;width:20px;height:20px;margin-left:2px}.student-profile-rules-edit:hover{color:#334155;background:#f1f5f9}.student-profile-rules-add{cursor:pointer;font:inherit;background:0 0;border:0;margin-top:2px;padding:0}.student-profile-rules-add:hover{color:#334155!important}.modal-card--wide{width:min(600px,100%)}.modal-card{text-align:left}.schedule-dialog .schedule-editor{border-top:0;grid-column:auto;margin-top:0}.schedule-dialog .schedule-editor-heading{min-height:0;padding:0 0 10px}.schedule-dialog .schedule-editor-heading p{margin:0;font-size:12.5px}.schedule-dialog .schedule-editor-heading .button{white-space:nowrap;flex:none}.schedule-dialog .schedule-slot-list:empty{display:none}.schedule-dialog .schedule-slot-row .field input{min-height:38px}.schedule-dialog-from .field-hint{max-width:none;line-height:1.45}.schedule-dialog-from input{max-width:240px;min-height:40px}.profile-block{border-top:1px solid #f1f5f9;padding:14px 0}.profile-block:last-child{padding-bottom:0}.profile-block-head{justify-content:space-between;align-items:center;gap:8px;min-height:24px;display:flex}.profile-label{color:#94a3b8;letter-spacing:.06em;text-transform:uppercase;font-size:11px;font-weight:600;display:block}.profile-block-head .profile-label{margin:0}.profile-edit{color:#94a3b8;width:24px;height:24px}.profile-edit:hover{color:#334155;background:#f1f5f9}.profile-contacts{gap:10px;margin:10px 0 0;display:grid}.profile-contacts>div{gap:2px;display:grid}.profile-contacts dt{color:#94a3b8;align-items:center;gap:6px;font-size:12px;display:inline-flex}.profile-contacts dd{color:#0f172a;margin:0;font-size:13.5px;font-weight:500}.profile-contacts dd a{color:#0f172a;text-decoration:none}.profile-contacts dd a:hover{color:var(--accent);text-underline-offset:3px;text-decoration:underline}.profile-contacts .is-empty{color:#94a3b8;font-weight:400}.profile-note{color:#334155;white-space:pre-line;margin:10px 0 0;font-size:13.5px;line-height:1.5}.profile-note.is-empty{color:#94a3b8}.profile-note-empty{color:#94a3b8;width:100%;font:inherit;text-align:left;cursor:pointer;background:0 0;border:1.5px dashed #e2e8f0;border-radius:10px;align-items:center;gap:8px;margin-top:10px;padding:10px 12px;font-size:13px;display:flex}.profile-note-empty:hover{color:#334155;border-color:#cbd5e1}.focus-card{background:#f8fafc;border:1px solid #e2e8f099;border-radius:12px;gap:12px;margin-top:10px;padding:14px;display:grid}.focus-card>div{gap:3px;display:grid}.focus-label{color:#94a3b8;letter-spacing:.05em;text-transform:uppercase;align-items:center;gap:5px;font-size:11px;font-weight:600;display:inline-flex}.focus-label.is-problem{color:#d97706}.focus-label.is-problem i{background:#f59e0b;border-radius:50%;width:6px;height:6px}.focus-value{color:#0f172a;margin:0;font-size:13px;font-weight:500;line-height:1.4}.focus-when{color:#94a3b8;white-space:nowrap;font-weight:400}.focus-text{color:#334155;margin:0;font-size:12.5px;line-height:1.45}.focus-card .is-empty{color:#94a3b8;font-weight:400}.profile-hint{color:#94a3b8;margin:8px 0 0;font-size:11.5px}.profile-form{border-top:1px solid #f1f5f9;gap:10px;padding:16px 0;display:grid}.profile-form .form-error{margin:0}.profile-form .field input,.profile-form .field textarea{min-height:40px;padding:9px 12px;font-size:14px}.profile-form-actions{gap:6px;display:flex}.student-metrics{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;display:grid}.metric-card{background:#fff;border:1px solid #e2e8f099;border-radius:16px;flex-direction:column;gap:4px;height:140px;padding:18px 20px;display:flex;box-shadow:0 2px 8px #0000000a}.student-metrics .metric-card{text-align:center;align-items:stretch;height:auto;min-height:140px}.student-metrics .metric-card>*{flex-shrink:0}.metric-card>strong{color:#0f172a;letter-spacing:-.02em;white-space:nowrap;text-overflow:ellipsis;font-size:24px;font-weight:700;line-height:1.15;overflow:hidden}.metric-card>strong.is-empty{color:#94a3b8;font-weight:500}.metric-card>strong.is-debt{color:#be123c}.metric-card>strong.is-paid{color:#047857}.metric-card>small{color:#64748b;text-overflow:ellipsis;white-space:nowrap;font-size:12.5px;overflow:hidden}.metric-tail{gap:6px;margin-top:auto;display:grid}.metric-tail small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.metric-card .metric-goal{color:#94a3b8;font-size:12px}.metric-card .metric-risk{color:#d97706;font-size:12px;font-weight:500}.metric-bar{background:#f1f5f9;border-radius:999px;height:5px;display:block;overflow:hidden}.metric-bar i{border-radius:inherit;background:#0f172a;height:100%;display:block}.student-tabs-panel{background:#fff;border:1px solid #e2e8f099;border-radius:16px;box-shadow:0 2px 8px #0000000a}.student-tabs{scrollbar-width:none;border-bottom:1px solid #f1f5f9;gap:22px;padding:4px 24px 0;display:flex;overflow-x:auto}.student-tab{color:#64748b;font:inherit;white-space:nowrap;cursor:pointer;background:0 0;border:0;border-bottom:2px solid #0000;align-items:center;gap:6px;margin-bottom:-1px;padding:14px 2px 12px;font-size:14px;font-weight:500;transition:color .12s,border-color .12s;display:inline-flex}.student-tab span{color:#94a3b8;font-variant-numeric:tabular-nums;font-size:12px}.student-tab:hover{color:var(--ink)}.student-tab[aria-selected=true]{color:var(--ink);border-bottom-color:var(--ink);font-weight:600}.student-tab[aria-selected=true] span{color:#64748b}.student-tab-panel{padding:18px 24px 22px}.tab-stack{gap:24px;display:grid}.tab-subhead{color:#0f172a;margin:0 0 10px;font-size:14px;font-weight:600}.topics-filter{flex-wrap:wrap;gap:6px;margin-bottom:14px;display:flex}.topics-filter .schedule-chip span{opacity:.7;font-variant-numeric:tabular-nums;margin-left:4px}.topics-table{border-collapse:collapse;width:100%}.topics-table th{color:#94a3b8;letter-spacing:.06em;text-align:left;text-transform:uppercase;border-bottom:1px solid #f1f5f9;padding:0 10px 10px;font-size:11px;font-weight:600}.topics-table td{vertical-align:middle;border-bottom:1px solid #f1f5f9e6;padding:11px 10px}.topics-table tr:last-child td{border-bottom:0}.topics-table td strong{color:#0f172a;font-size:13.5px;font-weight:500;line-height:1.3;display:block}.topics-table td small{color:#94a3b8;margin-top:1px;font-size:11.5px;display:block}.topics-no{color:#94a3b8;font-variant-numeric:tabular-nums;white-space:nowrap;width:48px;font-size:12.5px}.topics-status{width:140px}.topics-result{width:160px}.topics-result strong{font-variant-numeric:tabular-nums}.topics-result .is-empty{color:#cbd5e1}.topics-empty{color:#94a3b8;margin:12px 0 0;font-size:13.5px}.topics-foot{color:#94a3b8;margin:12px 0 0;font-size:12px}.topic-chip{white-space:nowrap;border-radius:6px;align-items:center;padding:3px 9px;font-size:12px;font-weight:500;line-height:16px;display:inline-flex}.topic-chip.done{color:#047857;background:#ecfdf5}.topic-chip.work{color:#334155;background:#f1f5f9}.topic-chip.review{color:#be123c;background:#fff1f2}.topic-chip.idle{color:#64748b;background:#f1f5f9}.topic-idle{color:#94a3b8;font-size:12px}.tab-list{display:grid}.tab-row{border-bottom:1px solid #f1f5f9e6;justify-content:space-between;align-items:center;gap:16px;padding:12px 0;display:flex}.tab-row:last-child{border-bottom:0}.tab-row-main{gap:2px;min-width:0;display:grid}.tab-row-main strong{color:#0f172a;font-size:13.5px;font-weight:500}.tab-row-main span{color:#64748b;font-size:12.5px}.tab-row-main small{color:#94a3b8;font-size:12px}.tab-row-main small.is-debt{color:#be123c}.tab-row-aside{text-align:right;flex:none;justify-items:end;gap:4px;display:grid}.tab-row-aside>strong{color:#0f172a;font-variant-numeric:tabular-nums;font-size:14px;font-weight:600}.tab-row-aside>strong.voided{color:#94a3b8;text-decoration:line-through}.tab-row-aside small{color:#94a3b8;font-size:12px}.tab-row-links{gap:12px;display:flex}.tab-row-aside .text-link{font-size:12.5px}.delta-up{color:#047857}.delta-down{color:#be123c}.finance-summary{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.finance-summary article{background:#f8fafc;border-radius:12px;gap:2px;padding:12px 14px;display:grid}.finance-summary span{color:#94a3b8;font-size:12px}.finance-summary strong{color:#0f172a;font-size:15px;font-weight:600}.finance-summary strong.is-debt{color:#be123c}.finance-summary strong.is-empty{color:#94a3b8;font-weight:500}.finance-summary small{color:#64748b;font-size:12px}.finance-summary-action{align-content:center;justify-items:start;background:0 0!important}.student-page .student-archive-zone{margin-top:0}@media (max-width:1100px){.student-layout{grid-template-columns:1fr}.student-metrics{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (max-width:760px){.student-bar{flex-wrap:wrap}.student-bar-actions{width:100%}.student-bar-actions .button{flex:1 1 0}.student-metrics{grid-template-columns:1fr}.student-tab-panel{padding:14px 16px 18px}.student-tabs{gap:16px;padding:4px 16px 0}.topics-table,.topics-table tbody{display:block}.topics-table thead{display:none}.topics-table tr{border-bottom:1px solid #f1f5f9e6;grid-template-columns:minmax(0,1fr) auto;gap:6px 12px;padding:10px 0;display:grid}.topics-table tr:last-child{border-bottom:0}.topics-table td{border:0;padding:0;display:block}.topics-table td:first-child{display:none}.topics-table td:nth-child(2){grid-column:1/-1}.topics-status,.topics-result{width:auto}.topics-table td.topics-status{grid-area:2/1}.topics-table td.topics-result{text-align:right;grid-area:2/2}.tab-row{flex-direction:column;align-items:flex-start}.tab-row-aside{text-align:left;justify-items:start}.finance-summary{grid-template-columns:1fr 1fr}}.field .prefixed-input{border-radius:var(--r-btn);background:var(--surface);align-items:center;min-height:44px;padding:0 14px 0 12px;transition:background .12s,box-shadow .12s;display:flex}.field .prefixed-input:focus-within{background:var(--card);box-shadow:0 0 0 2px var(--accent)}.field .prefixed-input.is-invalid{background:var(--coral-soft);box-shadow:inset 0 0 0 1.5px var(--coral)}.prefixed-input-prefix{color:#94a3b8;-webkit-user-select:none;user-select:none;flex:none;margin-right:2px;font-size:15px;font-weight:500}.field .prefixed-input input{min-width:0;min-height:0;box-shadow:none;background:0 0;border:0;flex:auto;padding:11px 0}.field .prefixed-input input:focus{box-shadow:none;background:0 0}.profile-form .field .prefixed-input{min-height:40px}.profile-form .field .prefixed-input input{padding:9px 0;font-size:14px}.wizard-shell{max-width:640px;margin:0 auto;padding-top:18px}.wizard-heading{margin-bottom:18px}.wizard-heading h1{letter-spacing:-.02em;margin:2px 0 4px;font-size:24px;font-weight:600}.wizard-heading p:not(.eyebrow){color:#64748b;margin:0;font-size:13.5px}.wizard{gap:14px;display:grid}.wizard-step[hidden]{display:none!important}.wizard-step{animation:.18s wizard-in}@keyframes wizard-in{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){.wizard-step{animation:none}}.stepper{grid-template-columns:repeat(3,1fr);gap:8px;margin:0 0 4px;padding:0;list-style:none;display:grid}.stepper-item{color:#94a3b8;border-top:3px solid #e2e8f0;gap:8px;padding-top:8px;font-size:12.5px;font-weight:500;transition:border-color .2s,color .2s;display:grid}.stepper-item.is-done{color:#64748b;border-top-color:#0f172a}.stepper-item.is-current{color:#0f172a;border-top-color:#0f172a;font-weight:600}.stepper-dot{color:#64748b;font-variant-numeric:tabular-nums;background:#f1f5f9;border-radius:50%;place-items:center;width:22px;height:22px;font-size:11.5px;font-weight:600;display:inline-grid}.stepper-item.is-current .stepper-dot,.stepper-item.is-done .stepper-dot{color:#fff;background:#0f172a}.stepper-label{line-height:1.2}.wizard .form-card{margin-bottom:0}.wizard-note{color:#64748b;background:#f8fafc;border-radius:10px;margin:0;padding:10px 12px;font-size:12.5px}.wizard-actions{justify-content:space-between;align-items:center;gap:12px;margin-top:18px;display:flex}.wizard-actions .button.quiet{background:0 0}@media (max-width:760px){.stepper-label{font-size:11.5px}.wizard-actions{flex-wrap:wrap}.wizard-actions .button.primary{flex:100%;justify-content:center}}.metric-card.finance-card>strong.is-debt{color:#e11d48}.metric-card.finance-card>strong.is-paid{color:#059669}.finance-card-foot{justify-content:center;display:flex}.finance-pay-button{color:#334155;height:32px;font:inherit;white-space:nowrap;cursor:pointer;background:#fff;border:1px solid #e2e8f0;border-radius:8px;align-items:center;gap:4px;padding:0 16px;font-size:12px;font-weight:500;transition:background-color .15s,border-color .15s;display:inline-flex;box-shadow:0 1px 2px #0000000d}.finance-pay-button:hover{background:#f8fafc;border-color:#cbd5e1}.profile-parent dd{gap:2px;display:grid}.profile-parent-name{color:#1e293b;font-size:13.5px;font-weight:500}.finance-page{max-width:1280px;margin:0 auto;padding-top:18px}.finance-bar{align-items:flex-end;margin-bottom:18px}.finance-bar-title{gap:6px;min-width:0;display:grid}.finance-bar .breadcrumb{color:#64748b;margin:0;font-size:13.5px}.finance-bar .breadcrumb a{color:#64748b;text-decoration:none}.finance-bar .breadcrumb a:hover{color:var(--ink);text-decoration:underline}.finance-title-row{flex-wrap:wrap;align-items:center;gap:14px;display:flex}.finance-title-row h1{letter-spacing:-.02em;margin:0;font-size:26px;font-weight:600;line-height:1.15}.finance-bar-actions{flex:none;align-items:center;gap:8px;display:flex}.finance-bar-actions .button{white-space:nowrap}.finance-bar-actions .button.primary{background:#0f172a;border-color:#0f172a}.finance-bar-actions .button.primary:hover{background:#1e293b}.month-switch{background:#fff;border:1px solid #e2e8f0cc;border-radius:999px;align-items:center;gap:2px;height:32px;padding:0 4px;display:inline-flex}.month-switch-arrow{color:#64748b;border-radius:999px;width:26px;height:26px}.month-switch-arrow:hover{color:var(--ink);background:#f1f5f9}.month-switch-label{text-align:center;min-width:118px;color:var(--ink);padding:0 4px;font-size:13.5px;font-weight:600}.finance-bento{grid-template-rows:minmax(300px,auto) minmax(300px,auto);grid-template-columns:250px repeat(9,minmax(0,1fr));grid-template-areas:"summary load load load load load balances balances goal goal""summary earn earn earn earn earn earn dirs dirs dirs";gap:16px;display:grid}.fin-summary{grid-area:summary}.fin-load{grid-area:load}.fin-balances{grid-area:balances}.fin-goal{grid-area:goal}.fin-earnings{grid-area:earn}.fin-directions{grid-area:dirs}.finance-bento{align-items:stretch}.fin-card{background:#fff;border:1px solid #e2e8f099;border-radius:16px;flex-direction:column;min-width:0;height:100%;min-height:0;padding:20px 22px;display:flex;box-shadow:0 1px 2px #0000000d}.fin-card-head{justify-content:space-between;align-items:flex-start;gap:10px;display:flex}.fin-card-head>div{gap:2px;min-width:0;display:grid}.fin-label{color:#94a3b8;letter-spacing:.06em;text-transform:uppercase;font-size:11px;font-weight:600;line-height:1.3;display:block}.fin-meta{color:#94a3b8;font-size:12px}.fin-hero{color:#0f172a;letter-spacing:-.02em;white-space:nowrap;text-overflow:ellipsis;font-size:28px;font-weight:700;line-height:1.1;display:block;overflow:hidden}.fin-sub{color:#64748b;font-size:12.5px}.fin-number{letter-spacing:-.02em;white-space:nowrap;font-size:22px;font-weight:700;line-height:1.1;display:block}.fin-number.is-paid{color:#059669}.fin-number.is-debt{color:#e11d48}.fin-number.is-zero{color:#94a3b8;font-weight:600}.ops-sum strong.is-paid{color:#059669}.fin-summary{gap:4px}.fin-summary>*{flex-shrink:0}.fin-summary-hero{margin-top:10px;font-size:30px}.fin-facts{gap:10px;margin:18px 0 0;padding:0;list-style:none;display:grid}.fin-facts li{color:#334155;align-items:flex-start;gap:9px;font-size:13px;line-height:1.4;display:flex}.fin-facts li i{background:#cbd5e1;border-radius:999px;flex:none;width:7px;height:7px;margin-top:6px}.fin-facts li.is-ok i{background:#10b981}.fin-facts li.is-info i{background:#3b82f6}.fin-facts li.is-warn i{background:#f43f5e}.fin-facts li.is-warn{color:#be123c;font-weight:500}.fin-divider{border:0;border-top:1px solid #f1f5f9;margin:16px 0}.fin-history-button{color:#475569;text-align:center;border:1px solid #e2e8f0;border-radius:12px;width:100%;padding:8px 12px;font-size:12px;font-weight:500;text-decoration:none;transition:background-color .15s,color .15s;display:block}.fin-history-button:hover{color:#0f172a;background:#f8fafc}.fin-recent{min-width:0;margin-top:20px}.fin-recent .fin-label{margin-bottom:8px}.fin-recent-list{margin:0;padding:0;list-style:none}.fin-recent-list li{border-bottom:1px solid #f1f5f9;justify-content:space-between;align-items:center;gap:10px;padding:8px 0;display:flex}.fin-recent-list li:last-child{border-bottom:0}.fin-recent-list li>div{gap:1px;min-width:0;display:grid}.fin-recent-list a{color:#1e293b;text-overflow:ellipsis;white-space:nowrap;font-size:12.5px;font-weight:500;text-decoration:none;overflow:hidden}.fin-recent-list a:hover{color:#0f172a;text-decoration:underline}.fin-recent-list li>div span{color:#94a3b8;font-size:11px}.fin-recent-list strong{color:#059669;white-space:nowrap;flex:none;font-size:12.5px;font-weight:600}.fin-recent-empty{color:#94a3b8;text-align:center;margin:0;padding:16px 0;font-size:12px}.fin-load-value{align-items:baseline;gap:8px;margin-top:6px;display:flex}.fin-load-value .fin-sub{font-size:13px}.fin-bars{grid-template-columns:repeat(7,minmax(0,1fr));gap:8px;height:176px;margin-top:auto;padding-top:26px;display:grid;position:relative}.fin-bar{grid-template-rows:1fr auto;gap:8px;min-width:0;display:grid}.fin-bar-track{align-items:flex-end;height:100%;display:flex}.fin-bar-track i{background:#e2e8f0;border-radius:6px 6px 3px 3px;width:100%;min-height:3px;transition:background .15s;display:block}.fin-bar.is-empty .fin-bar-track i{background:#f1f5f9;border-radius:6px;height:8px!important}.fin-bar.is-active .fin-bar-track i{background:#94a3b8}.fin-bar.is-today .fin-bar-track i{background:#0f172a}.fin-bar-day{color:#94a3b8;text-align:center;text-transform:capitalize;font-size:11.5px}.fin-bar.is-today .fin-bar-day{color:#0f172a;font-weight:600}.fin-bar-tip{color:#1a2e05;white-space:nowrap;pointer-events:none;z-index:1;background:#d9f99d;border-radius:999px;padding:3px 8px;font-size:11.5px;font-weight:600;transition:left .22s cubic-bezier(.2,.7,.3,1);position:absolute;top:0;transform:translate(-50%)}.fin-balances{gap:14px}.fin-balance-block{gap:3px;display:grid}.fin-balance-foot{gap:8px;margin-top:auto;display:grid}.fin-split-bar{background:#f1f5f9;border-radius:999px;height:6px;display:flex;overflow:hidden}.fin-split-bar i{height:100%;display:block}.fin-split-bar i.is-paid{background:#10b981}.fin-split-bar i.is-debt{background:#f43f5e}.fin-split-legend{gap:4px;margin:0;display:grid}.fin-split-legend div{justify-content:space-between;align-items:center;gap:8px;display:flex}.fin-split-legend dt{color:#64748b;align-items:center;gap:6px;font-size:12.5px;display:inline-flex}.fin-split-legend dt i{background:#cbd5e1;border-radius:999px;width:7px;height:7px}.fin-split-legend dt i.is-paid{background:#10b981}.fin-split-legend dt i.is-debt{background:#f43f5e}.fin-split-legend dd{color:#0f172a;margin:0;font-size:12.5px;font-weight:600}.fin-goal-percent{color:#0f172a;letter-spacing:-.01em;font-size:14px;font-weight:700}.fin-goal-body{text-align:center;justify-items:center;gap:6px;margin:auto 0;display:grid}.fin-goal-amount{font-size:24px}.fin-gauge{width:100%;max-width:160px;margin:0 auto;display:block;position:relative}.fin-gauge svg{width:100%;height:auto;margin:0 auto;display:block}.fin-gauge-center{text-align:center;justify-items:center;gap:0;display:grid;position:absolute;bottom:8%;left:0;right:0}.fin-gauge-center strong{color:#0f172a;letter-spacing:-.02em;white-space:nowrap;font-size:19px;font-weight:700;line-height:1.1}.fin-gauge-center span{color:#94a3b8;text-transform:uppercase;letter-spacing:.06em;font-size:10.5px}.fin-goal-note{color:#94a3b8;font-size:11.5px;line-height:1.4}.fin-goal-note.is-strong{color:#334155;margin-top:4px;font-size:12.5px;font-weight:500}.fin-goal-body.is-empty{text-align:left;justify-items:start}.fin-goal-body.is-empty .fin-goal-amount{color:#cbd5e1}.fin-goal-link{color:#0f172a;align-items:center;gap:4px;font-size:12.5px;font-weight:600;text-decoration:none;display:inline-flex}.fin-goal-link:hover{text-decoration:underline}.fin-earnings-body{flex:auto;grid-template-columns:190px minmax(0,1fr);gap:20px;min-height:0;margin-top:10px;display:grid}.fin-earnings-side{flex-direction:column;gap:2px;min-width:0;display:flex}.fin-minis{grid-template-columns:1fr 1fr;gap:8px;margin-top:auto;display:grid}.fin-mini{background:#f8fafc;border-radius:12px;gap:2px;min-width:0;padding:10px 9px;display:grid}.fin-mini strong{letter-spacing:-.01em;white-space:nowrap;text-overflow:ellipsis;font-size:15px;font-weight:700;line-height:1.1;overflow:hidden}.fin-mini span{color:#64748b;font-size:11px;line-height:1.3}.fin-chart{grid-template-rows:minmax(0,1fr) auto;gap:6px;min-width:0;display:grid;position:relative}.fin-chart-svg{width:100%;height:calc(100% - 24px);display:block;position:absolute;inset:0}.fin-chart-dots{height:calc(100% - 24px);position:absolute;inset:0}.fin-dot{background:#0f172a;border:2px solid #fff;border-radius:999px;width:9px;height:9px;position:absolute;transform:translate(-50%,-50%);box-shadow:0 0 0 1px #0f172a1a}.fin-dot.is-active{background:#0f172a;box-shadow:0 0 0 3px #a3e63573}.fin-dot-tip{color:#1a2e05;white-space:nowrap;background:#d9f99d;border-radius:999px;padding:3px 8px;font-size:11.5px;font-weight:600;position:absolute;bottom:12px;left:50%;transform:translate(-50%)}.fin-dot.is-last .fin-dot-tip{left:auto;right:0;transform:none}.fin-dot.is-first .fin-dot-tip{left:0;transform:none}.fin-dot.is-plan{box-shadow:none;background:#fff;border-color:#94a3b8}.fin-dot-tip.is-plan{color:#475569;background:#f1f5f9}.fin-chart-legend{color:#94a3b8;white-space:nowrap;align-items:center;gap:5px;font-size:11px;display:inline-flex}.fin-chart-legend i{border-top:2px solid #334155;width:14px;display:inline-block}.fin-chart-legend i.is-plan{border-top:2px dashed #94a3b8;margin-left:6px}.fin-chart-axis{color:#94a3b8;justify-content:space-between;align-self:end;font-size:11px;display:flex}.fin-chart-axis span{text-align:center;flex:1 1 0}.fin-chart-axis span:first-child{text-align:left}.fin-chart-axis span:last-child{text-align:right}.fin-directions{padding:24px;overflow:hidden}.fin-donut-row{align-items:center;gap:0;min-width:0;margin-top:14px;display:flex}.fin-donut{flex:none;position:relative}.fin-donut svg{width:100%;height:100%;display:block}.fin-donut-center{text-align:center;place-content:center;gap:1px;display:grid;position:absolute;inset:0}.fin-donut-center strong{letter-spacing:-.02em;font-size:22px;font-weight:700;line-height:1}.fin-donut-center span{color:#64748b;max-width:80px;font-size:11px}.fin-donut-legend{flex:1 1 0;gap:8px;min-width:0;margin:0;padding:0 0 0 12px;list-style:none;display:grid}.fin-donut-legend li{justify-content:space-between;align-items:center;gap:8px;min-width:0;font-size:12.5px;display:flex}.fin-donut-legend li span{color:#475569;text-overflow:ellipsis;white-space:nowrap;align-items:center;gap:8px;min-width:0;display:inline-flex;overflow:hidden}.fin-donut-legend li i{border-radius:999px;flex:none;width:8px;height:8px}.fin-donut-legend li strong{flex:none;font-weight:600}.fin-direction-stats{text-align:center;border-top:1px solid #f1f5f9;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;width:100%;margin-top:auto;padding-top:12px;display:grid}.fin-direction-stats div{gap:2px;min-width:0;display:grid}.fin-direction-stats span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.fin-direction-stats strong{letter-spacing:-.01em;font-size:18px;font-weight:700;line-height:1.1}.fin-direction-stats span{color:#94a3b8;letter-spacing:.06em;text-transform:uppercase;font-size:10.5px;font-weight:600}.fin-history{padding:8px 22px 14px}.fin-history .empty-state{margin:20px 0}@media (max-width:1100px){.finance-bento{grid-template:"summary load""summary earn""balances goal""dirs dirs"/minmax(0,1fr) minmax(0,1fr)}.fin-card{min-height:280px}.fin-summary{min-height:0}.fin-earnings-body{grid-template-columns:minmax(0,1fr)}.fin-chart{min-height:170px}.fin-minis{margin-top:6px}}@media (max-width:760px){.finance-page{padding-top:12px}.finance-bar{flex-wrap:wrap;align-items:flex-start}.finance-bar-actions{width:100%}.finance-bar-actions .button{flex:1 1 0}.finance-title-row h1{font-size:22px}.finance-bento{grid-template-columns:minmax(0,1fr);grid-template-areas:"summary""goal""balances""load""earn""dirs"}.fin-card{min-height:0}.fin-summary-hero{font-size:28px}.fin-earnings-body{grid-template-columns:minmax(0,1fr)}.fin-chart{min-height:170px}.fin-minis{margin-top:6px}.fin-bars{height:156px;margin-top:18px}}.lesson-wizard .field-label{color:#334155;margin-bottom:6px;font-size:13px;font-weight:500;display:block}.field-optional{color:#94a3b8;margin-left:6px;font-size:11.5px;font-weight:400}.wizard-actions.is-end{justify-content:flex-end}.lesson-toggle{background:#f1f5f9;border-radius:12px;flex-wrap:wrap;gap:4px;width:max-content;max-width:100%;padding:4px;display:inline-flex}.lesson-toggle-option{color:#475569;font:inherit;cursor:pointer;background:0 0;border:0;border-radius:9px;padding:7px 14px;font-size:13px;font-weight:500;transition:background .15s,color .15s,box-shadow .15s}.lesson-toggle-option:hover{color:#0f172a}.lesson-toggle-option.is-on{color:#0f172a;background:#fff;font-weight:600;box-shadow:0 1px 2px #0f172a14}.lesson-skip-review{color:#94a3b8;width:max-content;font:inherit;cursor:pointer;text-underline-offset:3px;background:0 0;border:0;margin:8px 0 0 4px;padding:0;font-size:12.5px;-webkit-text-decoration:underline dotted;text-decoration:underline dotted;display:block}.lesson-skip-review:hover,.lesson-skip-review.is-on{color:#0f172a}.lesson-homework-title{color:#0f172a;margin:0 0 8px;font-size:13.5px;font-weight:500;line-height:1.4}.lesson-homework-title small{color:#64748b;margin-top:2px;font-size:12px;font-weight:400;display:block}.lesson-homework-none{color:#64748b;background:#f8fafc;border-radius:10px;margin:0;padding:10px 12px;font-size:13px}.lesson-due{max-width:220px}.lesson-topics{gap:10px;margin-bottom:10px;display:grid}.lesson-topic{background:#fff;border:1px solid #e2e8f0;border-radius:12px;padding:12px 12px 12px 14px}.lesson-topic-head{align-items:flex-start;gap:10px;display:flex}.lesson-topic-index{color:#fff;background:#0f172a;border-radius:999px;flex:none;place-items:center;width:22px;height:22px;margin-top:8px;font-size:11px;font-weight:700;display:grid}.lesson-topic-select{flex:auto;gap:4px;min-width:0;display:grid}.lesson-topic-remove{color:#94a3b8;flex:none;width:30px;height:30px;margin-top:4px}.lesson-topic-remove:hover{color:#0f172a;background:#f1f5f9}.lesson-topic-body{flex-wrap:wrap;align-items:center;gap:10px 16px;margin-top:10px;padding-left:32px;display:flex}.lesson-check,.field label.lesson-check{cursor:pointer;color:#334155;align-items:center;gap:8px;margin:0;font-size:13px;font-weight:500;display:inline-flex}.lesson-check input,.field .lesson-check input[type=checkbox]{accent-color:#0f172a;cursor:pointer;border-radius:4px;flex:none;width:16px;height:16px;min-height:0;margin:0;padding:0}.lesson-check.is-inline,.field label.lesson-check.is-inline{color:#64748b;font-size:12.5px;font-weight:500}.lesson-field-row{align-items:center}.lesson-mini{color:#64748b;align-items:center;gap:6px;font-size:12.5px;display:inline-flex}.lesson-mini input{text-align:center;width:56px;padding:6px 8px;font-size:14px;font-weight:600}.lesson-add-topic{color:#334155;font:inherit;cursor:pointer;background:0 0;border:1px dashed #cbd5e1;border-radius:10px;align-items:center;gap:6px;margin:0 0 18px;padding:8px 12px;font-size:13px;font-weight:500;transition:border-color .15s,background .15s;display:inline-flex}.lesson-add-topic:hover{background:#f8fafc;border-color:#94a3b8}.lesson-field-row{justify-content:space-between;align-items:center;gap:12px;margin-bottom:6px;display:flex}.lesson-field-row label:first-child{margin:0}.date-field{align-items:center;max-width:220px;display:flex;position:relative}.date-field>svg{color:#64748b;pointer-events:none;position:absolute;left:12px}.date-field input{width:100%;padding-left:36px}.date-field.is-disabled{opacity:.55}.lesson-bill-card{background:#fff;border:1px solid #e2e8f0;border-radius:14px;gap:0;padding:4px 16px;display:grid}.lesson-bill-row{justify-content:space-between;align-items:center;gap:12px;padding:12px 0;display:flex}.lesson-bill-row>label,.lesson-bill-row>span:first-child{color:#64748b;margin:0;font-size:13px;font-weight:500}.lesson-bill-row.is-status{border-top:1px solid #e2e8f0}.lesson-bill-amount{color:#64748b;align-items:center;gap:8px;font-size:14px;font-weight:600;display:inline-flex}.lesson-bill-amount input{text-align:right;letter-spacing:-.01em;color:#0f172a;background:#fff;border:1px solid #e2e8f0;border-radius:9px;outline:none;width:96px;min-height:36px;padding:6px 10px;font-size:16px;font-weight:700}.lesson-bill-amount input:focus{border-color:#94a3b8;box-shadow:0 0 0 3px #0f172a0f}.plain-number{appearance:textfield}.plain-number::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.plain-number::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.lesson-bill-reset{color:#64748b;width:max-content;font:inherit;cursor:pointer;text-underline-offset:3px;background:0 0;border:0;align-items:center;gap:5px;margin:-6px 0 10px;padding:0;font-size:12px;-webkit-text-decoration:underline dotted;text-decoration:underline dotted;display:inline-flex}.lesson-bill-reset:hover{color:#0f172a}.lesson-bill-line{color:#0f172a;text-align:right;align-items:center;gap:8px;min-width:0;font-size:13.5px;font-weight:600;display:inline-flex}.lesson-bill-line i{background:#94a3b8;border-radius:999px;flex:none;width:8px;height:8px}.lesson-bill-line.is-advance i{background:#10b981}.lesson-bill-line.is-partial i{background:#f59e0b}.lesson-bill-line.is-debt i{background:#f43f5e}.lesson-paid,.lesson-bill-card .lesson-paid{border-top:1px solid #e2e8f0;align-items:flex-start;padding:12px 0;display:flex}.lesson-paid input{width:18px;height:18px;margin-top:1px}.lesson-paid span{color:#0f172a;gap:2px;font-size:13.5px;font-weight:500;display:grid}.lesson-paid small{color:#64748b;font-size:12px;font-weight:400;line-height:1.4}.lesson-report{margin-top:18px}.field textarea.lesson-report-text{color:#0f172a;resize:vertical;background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;padding:14px;font-size:14px;line-height:1.6}.field textarea.lesson-report-text:focus{background:#fff;border-color:#94a3b8;box-shadow:0 0 0 3px #0f172a0f}.lesson-report-reset{color:#64748b;font:inherit;cursor:pointer;text-underline-offset:3px;background:0 0;border:0;align-items:center;gap:5px;padding:0;font-size:12px;-webkit-text-decoration:underline dotted;text-decoration:underline dotted;display:inline-flex}.lesson-report-reset:hover{color:#0f172a}.lesson-report-actions{flex-wrap:wrap;align-items:center;gap:10px 14px;margin-top:8px;display:flex}.lesson-copy{gap:6px}.lesson-finish-row{align-items:stretch}.lesson-finish-row .button.quiet{flex:none}.button.primary.lesson-finish{background:#0f172a;border-color:#0f172a;border-radius:12px;flex:auto;justify-content:center;min-height:44px;font-weight:600}.button.primary.lesson-finish:hover{background:#1e293b}@media (max-width:640px){.lesson-topic-body{padding-left:0}.lesson-finish-row{flex-wrap:wrap}.button.primary.lesson-finish{flex:100%}}.toast{z-index:60;color:#fff;background:#0f172a;border-radius:12px;align-items:center;gap:10px;max-width:min(92vw,420px);padding:10px 12px 10px 14px;font-size:13.5px;font-weight:500;animation:.22s toast-in;display:flex;position:fixed;bottom:28px;left:50%;transform:translate(-50%);box-shadow:0 12px 32px #0f172a47}.toast svg:first-child{color:#86efac;flex:none}.toast span{min-width:0}.toast-close{color:#ffffffb3;cursor:pointer;background:0 0;border:0;border-radius:999px;place-items:center;width:24px;height:24px;margin-left:4px;padding:0;display:grid}.toast-close:hover{color:#fff;background:#ffffff1f}@keyframes toast-in{0%{opacity:0;transform:translate(-50%,10px)}to{opacity:1;transform:translate(-50%)}}@media (max-width:760px){.toast{bottom:calc(76px + env(safe-area-inset-bottom))}}.admin-page{max-width:1280px;margin:0 auto;padding-top:18px}.admin-bar{align-items:flex-end;margin-bottom:16px}.admin-bar-title{gap:6px;min-width:0;display:grid}.admin-bar .breadcrumb{color:#64748b;margin:0;font-size:13.5px}.admin-bar .breadcrumb a{color:#64748b;text-decoration:none}.admin-bar .breadcrumb a:hover{color:var(--ink);text-decoration:underline}.admin-bar h1{letter-spacing:-.02em;align-items:center;gap:10px;margin:0;font-size:26px;font-weight:600;line-height:1.15;display:inline-flex}.admin-bar h1 svg{color:#64748b}.admin-stats{flex-wrap:wrap;gap:8px;display:flex}.admin-stats span{color:#64748b;background:#fff;border:1px solid #e2e8f0cc;border-radius:999px;align-items:baseline;gap:6px;padding:8px 12px;font-size:12.5px;display:inline-flex}.admin-stats strong{color:#0f172a;font-size:15px;font-weight:700}.admin-table-wrap{background:#fff;border:1px solid #e2e8f099;border-radius:16px;overflow-x:auto;box-shadow:0 1px 2px #0000000d}.admin-table{border-collapse:collapse;width:100%;min-width:980px}.admin-table th{color:#94a3b8;letter-spacing:.06em;text-align:left;text-transform:uppercase;white-space:nowrap;border-bottom:1px solid #f1f5f9;padding:12px 16px;font-size:11px;font-weight:600}.admin-table td{vertical-align:middle;border-bottom:1px solid #f1f5f9;padding:14px 16px;font-size:13.5px}.admin-table tbody tr:last-child td{border-bottom:0}.admin-table tbody tr:hover td{background:#fcfdfe}.admin-table tr.is-blocked td:not(.admin-actions){opacity:.7}.admin-table tr.is-read-only td:first-child{box-shadow:inset 3px 0 #f59e0b}.admin-th-actions{text-align:right!important}.admin-user strong{color:#0f172a;align-items:center;gap:6px;font-size:14px;font-weight:600;display:flex}.admin-flag{color:#fff;letter-spacing:.04em;text-transform:uppercase;background:#0f172a;border-radius:999px;padding:1px 6px;font-size:10px;font-weight:600}.admin-email{color:#64748b;margin-top:2px;font-size:12.5px;display:block}.admin-email em{color:#d97706;font-style:normal}.admin-dates{color:#334155;white-space:nowrap;gap:3px;display:grid}.admin-activity{color:#64748b;align-items:center;gap:6px;font-size:12.5px;display:inline-flex}.admin-activity i{background:#cbd5e1;border-radius:999px;width:7px;height:7px}.admin-activity.is-online{color:#047857;font-weight:600}.admin-activity.is-online i{background:#10b981}.admin-activity.is-recent i{background:#94a3b8}.admin-practice strong{color:#0f172a;font-size:13.5px;font-weight:600;display:block}.admin-practice span{color:#64748b;margin-top:2px;font-size:12.5px;display:block}.admin-practice .is-empty{color:#94a3b8}.admin-badge{color:#475569;white-space:nowrap;background:#f1f5f9;border-radius:999px;padding:3px 9px;font-size:12px;font-weight:600;display:inline-block}.admin-badge.is-active{color:#047857;background:#ecfdf5}.admin-badge.is-blocked{color:#be123c;background:#fff1f2}.admin-badge.is-read-only,.admin-badge.is-expired{color:#b45309;background:#fffbeb}.admin-badge.is-pro{color:#047857;letter-spacing:.04em;background:#ecfdf5}.admin-badge.is-free{color:#475569;letter-spacing:.04em;background:#f1f5f9}.admin-plan{white-space:nowrap}.admin-plan-until{color:#64748b;margin-top:4px;font-size:12px;display:block}.admin-inline-form{gap:4px;margin-left:8px;display:inline-grid}.admin-block{color:#be123c;gap:6px;min-height:32px;padding:0 10px;font-size:12.5px}.admin-block:hover{background:#fff1f2}.admin-block.is-blocked{color:#047857}.admin-block.is-blocked:hover{background:#ecfdf5}.admin-extend-item.is-reset{color:#64748b}.admin-actions{text-align:right;white-space:nowrap}.admin-actions>*{vertical-align:middle;display:inline-flex}.admin-extend{position:relative}.admin-extend-button{gap:6px;min-height:32px;padding:0 10px;font-size:12.5px}.admin-extend-popup{z-index:40;text-align:left;background:#fff;border:1px solid #e2e8f0;border-radius:12px;gap:2px;min-width:200px;padding:6px;display:grid;position:fixed;box-shadow:0 12px 32px #0f172a1f}.admin-extend-popup form{display:block}.admin-extend-item{color:#0f172a;width:100%;font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:8px;align-items:center;gap:8px;padding:8px 10px;font-size:13px;display:flex}.admin-extend-item:hover{background:#f1f5f9}.admin-extend-item:disabled{opacity:.5;cursor:wait}.admin-extend-popup .field-error{padding:4px 10px}.access-support{color:#334155;margin:18px 0 0;font-size:14px}.access-support a{color:#0f172a;font-weight:600}.access-account{color:#64748b;margin:8px 0 16px;font-size:12.5px}@media (max-width:760px){.admin-bar{flex-wrap:wrap}.admin-stats{width:100%}}.readonly-banner{z-index:30;color:#92400e;background:#fffbeb;border-bottom:1px solid #fde68a;align-items:center;gap:10px;margin:0 0 4px;padding:10px 28px;font-size:13px;line-height:1.4;display:flex;position:sticky;top:0}.readonly-banner svg{color:#d97706;flex:none}.readonly-banner span{flex:auto;min-width:0}.readonly-banner-link{color:#fff;white-space:nowrap;background:#0f172a;border-radius:999px;flex:none;padding:6px 12px;font-size:12.5px;font-weight:600;text-decoration:none}.readonly-banner-link:hover{background:#1e293b}.paywall-card{background:#fffdf5;border-color:#fde68a}.paywall-card h2{color:#92400e}.paywall-actions{flex-wrap:wrap;gap:10px;margin-top:14px;display:flex}@media (max-width:760px){.readonly-banner{flex-wrap:wrap;padding:10px 16px}.readonly-banner-link{margin-left:25px}}.auth-ground{background:var(--card);grid-template-columns:minmax(0,1fr) minmax(0,1fr);min-height:100dvh;padding:0;display:grid}.auth-main{flex-direction:column;min-width:0;padding:32px 48px 28px;display:flex}.auth-screen{flex-direction:column;flex:1;display:flex}.auth-brand{color:var(--ink);letter-spacing:-.01em;align-self:flex-start;align-items:center;gap:10px;font-size:18px;font-weight:600;text-decoration:none;display:inline-flex}.auth-brand .auth-mark{border-radius:11px;width:36px;height:36px}.auth-card{width:100%;max-width:400px;padding:calc(40px * var(--air,1)) 0;margin:auto}.auth-intro{text-align:left}.auth-intro h1{font-size:34px}.auth-legal{text-align:left;margin:0}.auth-email{max-width:100%;color:var(--ink);text-overflow:ellipsis;white-space:nowrap;vertical-align:bottom;font-weight:600;display:inline-block;overflow:hidden}.resend-form .button{justify-self:stretch;width:100%}.auth-showcase{border-left:1px solid var(--line);background:#f1f2f5;height:100dvh;position:sticky;top:0;overflow:hidden}.showcase-device{width:max(1000px,87% + 240px);height:max(860px,83% + 160px);color:var(--ink);background:#16181d;border-radius:38px;padding:12px;font-size:14px;position:absolute;top:17%;left:13%;box-shadow:0 40px 80px -32px #10182859}.showcase-screen{clip-path:inset(0 round 26px);background:var(--card);border-radius:26px;grid-template-columns:64px 260px minmax(0,1fr);height:100%;display:grid;overflow:hidden}.showcase-rail{border-right:1px solid var(--line);color:var(--muted);background:#fafbfc;flex-direction:column;align-items:center;gap:10px;padding:18px 0;display:flex}.showcase-rail>span{border-radius:11px;place-items:center;width:38px;height:38px;display:grid}.showcase-rail>span.is-active{background:var(--surface-strong);color:var(--ink)}.showcase-rail-logo{border-radius:10px;width:38px;height:38px;margin-bottom:14px;display:block;box-shadow:0 0 0 1px #dfe5ec,0 2px 6px #1018280f}.showcase-nav{border-right:1px solid var(--line);padding:26px 18px}.showcase-main{padding:26px 28px}.showcase-title{letter-spacing:-.02em;margin:0;font-size:22px;font-weight:600}.showcase-sub{color:var(--muted);margin:4px 0 0;font-size:13px}.showcase-tabs{border-bottom:1px solid var(--line);color:var(--muted);gap:18px;margin:16px 0 18px;font-size:13px;font-weight:500;display:flex}.showcase-tabs span{padding-bottom:9px}.showcase-tabs .is-active{color:var(--ink);box-shadow:inset 0 -2px 0 var(--accent)}.showcase-search{height:38px;color:var(--meta);border:1px solid #e3e7ec;border-radius:11px;align-items:center;gap:8px;padding:0 12px;font-size:13px;display:flex}.showcase-section{color:var(--meta);margin:18px 0 6px;font-size:11.5px;font-weight:600}.showcase-list{gap:2px;margin:12px 0 0;padding:0;list-style:none;display:grid}.showcase-list li{white-space:nowrap;height:36px;color:var(--ink-dense);border-radius:10px;align-items:center;gap:10px;padding:0 10px;font-size:13.5px;font-weight:500;display:flex}.showcase-list li.is-active{background:var(--surface-strong);color:var(--ink)}.showcase-list b{background:var(--surface);min-width:22px;height:22px;color:var(--ink-dense);border-radius:999px;place-items:center;margin-left:auto;padding:0 6px;font-size:12px;display:grid}.showcase-list b.is-alert{background:var(--coral-soft);color:var(--coral)}.showcase-card{border:1px solid var(--line);border-radius:18px;max-width:420px;margin-top:16px;padding:18px 20px}.showcase-card>p{color:var(--ink-dense);margin:0;font-size:13px;font-weight:600}.showcase-card.is-accent{background:#eef1fb;border-color:#0000}.showcase-card strong{letter-spacing:-.03em;margin-top:8px;font-size:34px;font-weight:600;display:block}.showcase-delta{color:var(--ink-dense);border:1px solid #c9d1e4;border-radius:999px;margin-top:8px;padding:3px 9px;font-size:12px;font-weight:500;display:inline-block}.showcase-card svg{width:100%;height:56px;margin-top:12px;display:block}.showcase-card path{fill:none;stroke:var(--accent);stroke-width:2px;stroke-linecap:round}.showcase-lessons{color:var(--ink-dense);gap:10px;margin:12px 0 0;padding:0;font-size:13.5px;list-style:none;display:grid}.showcase-lessons time{width:50px;color:var(--ink);font-variant-numeric:tabular-nums;font-weight:600;display:inline-block}.code-form{margin-top:calc(28px * var(--air,1));gap:12px;display:grid}.code-label{color:var(--ink-dense);font-size:13px;font-weight:500}.code-cells{cursor:text;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px;display:grid;position:relative}.code-native{z-index:1;color:#0000;-webkit-text-fill-color:transparent;caret-color:#0000;cursor:text;background:0 0;border:0;outline:none;width:100%;height:100%;padding:0;font-size:16px;position:absolute;inset:0}.code-native::selection{background:0 0}.code-cell{background:var(--card);min-height:64px;color:var(--ink);font-variant-numeric:tabular-nums;border:1.5px solid #dfe3e9;border-radius:14px;place-items:center;font-size:30px;font-weight:600;transition:border-color .15s,background-color .25s,color .25s,box-shadow .15s;display:grid}.code-cell.is-filled{background:var(--surface-strong);border-color:#0000}.code-cell.is-active{border-color:var(--accent);box-shadow:0 0 0 4px #24304414}.code-digit{animation:.2s cubic-bezier(.2,.9,.3,1.35) both code-pop}.code-caret{background:var(--ink);width:2px;height:30px;animation:1s step-end infinite code-blink}.code-cells.is-checking .code-cell{animation:.9s ease-in-out infinite code-wait;animation-delay:calc(var(--i) * 70ms)}.code-cells.is-error{animation:.38s code-shake}.code-cells.is-error .code-cell{border-color:var(--coral);background:var(--coral-soft);color:var(--coral)}.code-cells.is-success .code-cell{color:#067647;transition-delay:calc(var(--i) * 40ms);animation:.4s both code-ok;animation-delay:calc(var(--i) * 40ms);background:#ecfdf3;border-color:#12b76a}.code-status{color:#067647;min-height:18px;font-size:13px;font-weight:500}.auth-submit.is-success,.auth-submit.is-success:disabled{color:#fff;opacity:1;background:#12b76a;border-color:#12b76a}@keyframes code-pop{0%{opacity:0;transform:translateY(8px)scale(.6)}to{opacity:1;transform:none}}@keyframes code-blink{50%{opacity:0}}@keyframes code-wait{50%{transform:translateY(-3px)}}@keyframes code-shake{20%{transform:translate(-7px)}40%{transform:translate(6px)}60%{transform:translate(-4px)}80%{transform:translate(3px)}}@keyframes code-ok{50%{transform:scale(1.07)}}@media (prefers-reduced-motion:reduce){.code-cells,.code-cells *{transition:none!important;animation:none!important}}@media (max-width:1100px){.auth-ground{grid-template-columns:1fr}.auth-showcase{display:none}}@media (max-width:560px){.auth-main{padding:20px 16px 24px}.auth-intro h1{font-size:28px}.code-cells{gap:7px}.code-cell{border-radius:12px;min-height:54px;font-size:26px}}.onboarding-intro{text-align:left}.onboarding-intro h1{font-size:34px}@media (max-width:560px){.onboarding-intro h1{font-size:28px}}.manage-lesson{gap:14px;display:grid}.manage-lesson .form-card{margin-bottom:0}.manage-lesson .field{gap:8px;margin-top:18px;display:grid}.manage-lesson .field-label,.manage-lesson .field label{color:var(--muted);font-size:12.5px;font-weight:500}.manage-lesson .lesson-bill-card{margin-top:12px}.manage-reason{color:var(--ink-dense);margin:8px 0 0;font-size:13.5px}.manage-restore-hint{margin:14px 0 0;display:block}.conflicts-board{margin-bottom:14px}.conflicts-board h2{margin:0}.student-page .conflicts-board{margin-bottom:18px}.conflict-list{gap:10px;margin:12px 0 0;padding:0;list-style:none;display:grid}.conflict-item{border-radius:var(--r-block-s);background:var(--coral-soft);padding:12px 14px}.conflict-head{flex-wrap:wrap;align-items:center;gap:8px 10px;margin-bottom:4px;display:flex}.conflict-head strong{font-size:14.5px;font-weight:600}.conflict-head .pill{background:var(--card)}.conflict-side{border-top:1px solid var(--coral-mid);grid-template-columns:96px minmax(0,1fr) auto;align-items:center;gap:12px;padding:8px 0;display:grid}.conflict-head+.conflict-side{border-top:0}.conflict-time{color:var(--ink-dense);font-variant-numeric:tabular-nums;font-size:13.5px}.conflict-name{text-overflow:ellipsis;white-space:nowrap;font-size:14.5px;font-weight:600;overflow:hidden}.conflict-name:hover{color:var(--accent)}.conflict-actions{flex-wrap:wrap;justify-content:flex-end;gap:6px;display:flex}.conflict-actions .button.quiet{background:0 0}.conflict-foot{color:var(--muted);margin:6px 0 0;font-size:12.5px}@media (max-width:760px){.conflict-side{grid-template-columns:1fr;gap:6px}.conflict-name{white-space:normal}.conflict-actions{justify-content:stretch}.conflict-actions .button{flex:1;justify-content:center}}.conflict-warning{background:var(--coral-soft);color:var(--coral-dark);border-radius:12px;gap:10px;margin:14px 0 0;padding:12px 14px;font-size:13px;line-height:1.45;display:flex}.conflict-warning>svg{flex:none;margin-top:2px}.conflict-warning strong{font-weight:600;display:block}.conflict-warning ul{color:var(--ink);margin:4px 0 6px;padding-left:18px}.conflict-warning span{color:var(--muted)}.lesson-card.has-conflict{box-shadow:inset 0 0 0 1.5px var(--coral), 0 1px 2px #1018280f}.lesson-card-conflict{color:var(--coral);opacity:1}.lesson-popover-conflict{background:var(--coral-soft);color:var(--coral-dark);border-radius:10px;align-items:flex-start;gap:6px;margin:0;padding:8px 10px;font-size:12.5px;line-height:1.4;display:flex}.lesson-popover-conflict svg{flex:none;margin-top:2px}.sidebar-search kbd{background:var(--control);color:var(--muted);font:inherit;border-radius:6px;margin-left:6px;padding:1px 6px;font-size:11px;font-weight:600}@media (max-width:760px){.topbar .command-button{border:1px solid var(--accent-line);background:var(--card);width:40px;height:40px;color:var(--ink);border-radius:13px;flex:none;place-items:center;margin-left:auto;padding:0;display:grid}.topbar .account-menu{margin-left:8px}}.assessment-item.with-rubric{flex-wrap:wrap}.assessment-item.with-rubric .essay-criteria{flex-basis:100%}.essay-summary{align-items:center;gap:10px;display:flex}.essay-summary strong{font-variant-numeric:tabular-nums}.essay-criteria{gap:14px;display:grid}.essay-criteria+.essay-criteria{border-top:1px solid var(--line);margin-top:22px;padding-top:18px}.essay-work-switch{margin:6px 0 16px}.essay-criteria-head{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.essay-words{color:var(--muted);align-items:center;gap:8px;font-size:12px;display:flex}.essay-words input{border:1px solid #d9ddd6;border-radius:6px;width:76px;min-height:34px;padding:0 8px}.essay-void{flex-wrap:wrap;gap:6px;display:flex}.essay-void button{min-height:34px;color:var(--ink-dense);cursor:pointer;background:#fff;border:1px solid #d9ddd6;border-radius:6px;padding:0 10px;font-size:12px}.essay-void button.selected{border-color:var(--accent);background:var(--accent);color:#fff}.essay-void-note{color:var(--muted);margin:0;font-size:12px}.essay-group{border:0;gap:2px;min-width:0;margin:0;padding:0;display:grid}.essay-group:disabled{opacity:.55}.essay-group legend{color:var(--meta);letter-spacing:.09em;text-transform:uppercase;padding:0 0 6px;font-size:10px;font-weight:750}.essay-row{background:var(--accent-soft);border-radius:10px;grid-template-columns:minmax(0,1fr) auto 52px;align-items:center;gap:4px 14px;padding:9px 12px;display:grid}.essay-row.zeroed{opacity:.6}.essay-row-title{align-items:baseline;gap:8px;min-width:0;display:flex}.essay-row-title strong{font-size:13px;font-weight:600}.essay-code{color:var(--meta);font-variant-numeric:tabular-nums;font-size:11px;font-weight:700}.essay-row-score{text-align:right;font-variant-numeric:tabular-nums;font-size:13px;font-weight:650}.essay-row-hint,.essay-row-note{color:var(--muted);grid-column:1/-1;font-size:11px;line-height:1.4}.essay-row-note summary{cursor:pointer;width:fit-content;font-weight:550}.essay-row-note p{margin:4px 0 0}.essay-row .score-buttons button.wide{width:auto;padding:0 12px}.essay-row .score-buttons button:disabled{cursor:default}.essay-stepper{align-items:center;gap:5px;display:flex}.essay-stepper button{width:34px;height:34px;color:var(--ink);cursor:pointer;background:#fff;border:1px solid #d9ddd6;border-radius:6px;justify-content:center;align-items:center;display:inline-flex}.essay-stepper button:disabled{opacity:.45;cursor:default}.essay-stepper input{text-align:center;font-variant-numeric:tabular-nums;-moz-appearance:textfield;border:1px solid #d9ddd6;border-radius:6px;width:46px;height:34px}.essay-stepper input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.essay-stepper input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.essay-stepper-label{min-width:72px;color:var(--muted);font-size:12px}@media (max-width:760px){.essay-row{grid-template-columns:minmax(0,1fr) auto}.essay-row-title{grid-column:1/2}.essay-row-score{grid-area:1/2}.essay-row .score-buttons,.essay-stepper{grid-column:1/-1}.essay-summary{justify-content:space-between;width:100%}}.subject-picker legend{flex-wrap:wrap;justify-content:space-between;gap:4px 12px;width:100%;display:flex}.subject-count{color:var(--muted);font-size:12.5px;font-weight:400}.subject-group{gap:10px;margin-top:6px;display:grid}.subject-group-title{color:var(--muted);letter-spacing:.08em;font-size:12px;font-weight:600}.subject-chips{flex-wrap:wrap;gap:8px;display:flex}.subject-chip{border-radius:var(--r-chip);background:var(--card);min-height:42px;box-shadow:inset 0 0 0 1px var(--plan-mark);color:var(--ink);cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:6px;padding:0 18px;font-size:14.5px;font-weight:500;transition:background .15s,box-shadow .15s,color .15s;display:inline-flex;position:relative}.subject-chip input{opacity:0;cursor:inherit;margin:0;position:absolute;inset:0}.subject-chip:hover{box-shadow:inset 0 0 0 1px var(--accent-mid)}.subject-chip:has(input:focus-visible){outline:2px solid var(--accent);outline-offset:2px}.subject-chip.is-on{background:var(--accent);box-shadow:none;color:#fff}.subject-chip:has(input:disabled){color:var(--on-disabled);box-shadow:inset 0 0 0 1px var(--line);cursor:not-allowed}.onboarding-settings{border-top:1px solid var(--line);margin-top:24px;padding-top:18px}.onboarding-settings-summary{color:var(--muted);flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:6px 12px;font-size:13.5px;display:flex}.onboarding-settings-summary .text-link{cursor:pointer;color:var(--accent);font:inherit;background:0 0;border:0;padding:0;font-weight:500}.onboarding-settings-fields{gap:18px;display:grid}.onboarding-settings-fields[hidden]{display:none}@media (max-width:520px){.subject-chip{min-height:40px;padding:0 14px;font-size:14px}}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-ordinal{syntax:"*";inherits:false}@property --tw-slashed-zero{syntax:"*";inherits:false}@property --tw-numeric-figure{syntax:"*";inherits:false}@property --tw-numeric-spacing{syntax:"*";inherits:false}@property --tw-numeric-fraction{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}
