@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-outline-style:solid;--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;--radius-sm:.25rem;--radius-md:.375rem;--radius-lg:.5rem;--shadow-sm:0 1px 3px 0 #0000001a, 0 1px 2px -1px #0000001a;--shadow-md:0 4px 6px -1px #0000001a, 0 2px 4px -2px #0000001a;--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;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{.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.absolute{position:absolute}.fixed{position:fixed}.static{position:static}.block{display:block}.contents{display:contents}.grid{display:grid}.hidden{display:none}.inline{display:inline}.table{display:table}.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}.lowercase{text-transform:lowercase}.uppercase{text-transform:uppercase}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.sepia{--tw-sepia:sepia(100%);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{color:#121a36;font-synthesis:none;text-rendering:optimizelegibility;--bg:#fff;--surface:#fff;--surface-muted:#f7f9fc;--surface-accent:#f2f6ff;--text:#121a36;--text-muted:#667089;--text-faint:#68748b;--border:#dfe4ee;--border-strong:#c9d1e1;--accent:#2454d7;--accent-strong:#183fae;--accent-soft:#eaf0ff;--teal:#0f9f91;--coral:#ed5d50;--success:#0f715d;--warning:#895000;--danger:#ad3035;--shadow-sm:0 1px 2px #0f1d3d0f;--shadow-md:0 16px 42px #0f1d3d24;--radius-sm:8px;--radius-md:12px;--radius-lg:18px;--focus:0 0 0 3px #2454d733;background:#fff;font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}:root[data-theme=dark]{color:#f5f7ff;--bg:#0d1325;--surface:#121a30;--surface-muted:#18223b;--surface-accent:#172647;--text:#f5f7ff;--text-muted:#aab3c7;--text-faint:#78849e;--border:#26324c;--border-strong:#394763;--accent:#7da0ff;--accent-strong:#a9beff;--accent-soft:#1c2b52;--teal:#51cfbd;--coral:#ff8378;--success:#6ed5bd;--warning:#ffc36b;--danger:#ff8b82;--shadow-sm:0 1px 2px #0000002e;--shadow-md:0 18px 48px #0000006b;background:#0d1325}*{box-sizing:border-box}html{background:var(--bg);min-width:320px}body{background:var(--bg);min-width:320px;min-height:100vh;color:var(--text);margin:0}button,input,textarea,select{font:inherit}button,a{-webkit-tap-highlight-color:transparent}a{color:inherit}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{box-shadow:var(--focus);outline:none}button:disabled{cursor:not-allowed;opacity:.55}::selection{color:var(--text);background:var(--accent-soft)}.skip-link{z-index:200;color:#fff;background:var(--accent);border-radius:8px;padding:10px 14px;font-size:13px;font-weight:700;text-decoration:none;transition:transform .12s ease-out;position:fixed;top:10px;left:12px;transform:translateY(-150%)}.skip-link:focus{box-shadow:var(--focus);transform:translateY(0)}.brand-logo{color:var(--text);letter-spacing:-1px;align-items:center;gap:10px;font-size:27px;font-weight:760;text-decoration:none;display:inline-flex}.brand-mark{object-fit:contain;width:31px;height:31px}.brand-mark-accent{stroke:var(--teal);stroke-width:3.2px}.button{cursor:pointer;white-space:nowrap;border:1px solid #0000;border-radius:9px;justify-content:center;align-items:center;gap:8px;font-size:13.5px;font-weight:650;line-height:1;transition:background .15s,border-color .15s,color .15s,transform .15s;display:inline-flex}.button:hover:not(:disabled){transform:translateY(-1px)}.button-sm{min-height:32px;padding:0 11px;font-size:12.5px}.button-md{min-height:40px;padding:0 16px}.button-lg{min-height:47px;padding:0 20px;font-size:14.5px}.button-icon{width:36px;height:36px;padding:0}.button-primary{background:var(--accent);color:#fff;border-color:var(--accent);box-shadow:var(--shadow-sm)}.button-primary:hover:not(:disabled){background:var(--accent-strong)}.button-secondary{background:var(--surface);color:var(--text);border-color:var(--border-strong)}.button-secondary:hover:not(:disabled),.button-ghost:hover:not(:disabled),.button-quiet:hover:not(:disabled){background:var(--surface-muted)}.button-ghost{color:var(--text-muted);background:0 0}.button-quiet{background:var(--accent-soft);color:var(--accent)}.button-danger{color:#fff;background:var(--danger)}.avatar{background:var(--accent-soft);color:var(--accent);border:1px solid var(--border);border-radius:50%;flex:none;place-items:center;font-weight:650;display:inline-grid;overflow:hidden}.avatar-sm{width:28px;height:28px;font-size:10px}.avatar-md{width:36px;height:36px;font-size:12px}.avatar-lg{width:46px;height:46px;font-size:14px}.avatar-xl{width:88px;height:88px;font-size:22px}.avatar-image,.avatar-fallback{object-fit:cover;place-items:center;width:100%;height:100%;display:grid}.status{border:1px solid var(--border);background:var(--surface-muted);width:fit-content;min-height:24px;color:var(--text-muted);border-radius:999px;align-items:center;padding:0 8px;font-size:11px;font-weight:650;display:inline-flex}.status-accent{color:var(--accent);border-color:var(--accent)}@supports (color:color-mix(in lab,red,red)){.status-accent{border-color:color-mix(in srgb,var(--accent) 28%,var(--border))}}.status-accent{background:var(--accent-soft)}.status-success{color:var(--success);background:var(--success)}@supports (color:color-mix(in lab,red,red)){.status-success{background:color-mix(in srgb,var(--success) 10%,var(--surface))}}.status-success{border-color:var(--success)}@supports (color:color-mix(in lab,red,red)){.status-success{border-color:color-mix(in srgb,var(--success) 25%,var(--border))}}.status-warning{color:var(--warning);background:var(--warning)}@supports (color:color-mix(in lab,red,red)){.status-warning{background:color-mix(in srgb,var(--warning) 10%,var(--surface))}}.status-warning{border-color:var(--warning)}@supports (color:color-mix(in lab,red,red)){.status-warning{border-color:color-mix(in srgb,var(--warning) 25%,var(--border))}}.status-danger{color:var(--danger);background:var(--danger)}@supports (color:color-mix(in lab,red,red)){.status-danger{background:color-mix(in srgb,var(--danger) 10%,var(--surface))}}.status-danger{border-color:var(--danger)}@supports (color:color-mix(in lab,red,red)){.status-danger{border-color:color-mix(in srgb,var(--danger) 25%,var(--border))}}.progress-wrap{gap:6px;min-width:110px;display:grid}.progress-label{color:var(--text-muted);font-size:11.5px}.progress-track{background:var(--border);border-radius:4px;height:4px;overflow:hidden}.progress-fill{border-radius:inherit;background:var(--teal);height:100%;display:block}.field{align-content:start;gap:7px;display:grid}.field-label{color:var(--text);font-size:12.5px;font-weight:650}.field-hint{color:var(--text-muted);font-size:11.5px}.field-error{color:var(--danger);font-size:11.5px}.input{border:1px solid var(--border-strong);width:100%;min-height:42px;color:var(--text);background:var(--surface);border-radius:9px;padding:9px 12px;font-size:13.5px;transition:border-color .15s,box-shadow .15s}.input:hover{border-color:var(--accent)}@supports (color:color-mix(in lab,red,red)){.input:hover{border-color:color-mix(in srgb,var(--accent) 45%,var(--border))}}.input:focus{border-color:var(--accent);box-shadow:var(--focus);outline:0}.input::placeholder{color:var(--text-faint)}.textarea{resize:vertical;min-height:108px}.select{appearance:auto}.switch-label{color:var(--text);cursor:pointer;align-items:center;gap:9px;font-size:13px;display:inline-flex}.switch-label[data-disabled]{opacity:.5;cursor:not-allowed}.switch-root{background:var(--border-strong);cursor:pointer;border:0;border-radius:999px;width:38px;height:22px;padding:2px;transition:background .15s}.switch-root:disabled{cursor:not-allowed}.switch-root[data-state=checked]{background:var(--accent)}.switch-thumb{background:#fff;border-radius:50%;width:18px;height:18px;transition:transform .15s;display:block;box-shadow:0 1px 4px #00000038}.switch-thumb[data-state=checked]{transform:translate(16px)}.dialog-overlay{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);z-index:70;background:#080d1c8c;animation:.15s ease-out fade-in;position:fixed;inset:0}.dialog-content{z-index:71;border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface);width:min(100vw - 32px,620px);max-height:min(88vh,820px);box-shadow:var(--shadow-md);flex-direction:column;animation:.18s ease-out dialog-in;display:flex;position:fixed;top:50%;left:50%;overflow:hidden;transform:translate(-50%,-50%)}.dialog-sm{max-width:430px}.dialog-lg{max-width:820px}.dialog-header{border-bottom:1px solid var(--border);background:var(--surface);flex:none;justify-content:space-between;align-items:flex-start;gap:18px;padding:21px 23px 16px;display:flex}.dialog-title{letter-spacing:-.3px;margin:0;font-size:19px;font-weight:730}.dialog-description{color:var(--text-muted);margin:6px 0 0;font-size:13px;line-height:1.5}.dialog-body{background:var(--surface);min-height:0;padding:22px 23px;overflow:auto}.dialog-footer{border-top:1px solid var(--border);background:var(--surface-muted);flex-wrap:wrap;flex:none;place-content:flex-start flex-end;align-items:center;gap:10px;block-size:fit-content;min-block-size:0;padding:15px 23px;display:flex}.menu-content{background:var(--surface);border:1px solid var(--border);min-width:180px;box-shadow:var(--shadow-md);z-index:90;border-radius:10px;padding:5px}.menu-item{height:34px;color:var(--text);cursor:pointer;border-radius:7px;outline:0;align-items:center;gap:8px;padding:0 9px;font-size:13px;display:flex}.menu-item[data-highlighted]{background:var(--surface-muted)}.menu-item-danger{color:var(--danger)}.tooltip-content{z-index:100;color:#fff;box-shadow:var(--shadow-sm);background:#11182e;border-radius:7px;padding:6px 8px;font-size:11.5px}.page-header{justify-content:space-between;align-items:flex-start;gap:20px;min-height:62px;margin-bottom:22px;display:flex}.page-header>div:first-child{min-width:0}.page-header h1{letter-spacing:-1.1px;margin:0;font-size:clamp(25px,3vw,34px);font-weight:760;line-height:1.1}.page-header p{color:var(--text-muted);overflow-wrap:anywhere;max-width:680px;margin:7px 0 0;font-size:13.5px;line-height:1.55}.page-actions{align-items:center;gap:9px;display:flex}.section-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:16px;min-height:42px;display:flex}.section-header h2{letter-spacing:-.3px;margin:0;font-size:17px}.data-row{border:0;border-bottom:1px solid var(--border);width:100%;min-height:62px;color:var(--text);text-align:left;background:0 0;grid-template-columns:auto minmax(0,1fr) auto auto 36px;align-items:center;gap:12px;padding:10px 8px;display:grid}.data-row-no-avatar{grid-template-columns:minmax(0,1fr) auto auto 36px}.data-row:last-child{border-bottom:0}.data-row-button{cursor:pointer}.data-row-button:hover{background:var(--surface-muted)}.data-row-copy{gap:4px;min-width:0;display:grid}.data-row-copy strong{text-overflow:ellipsis;white-space:nowrap;font-size:13.5px;overflow:hidden}.data-row-copy>span{color:var(--text-muted);text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.data-row-meta{min-width:0;color:var(--text-muted);font-size:12px}.data-row-status{align-items:center;min-width:0;display:flex}.empty-state{text-align:center;align-content:center;place-items:center;min-height:290px;padding:34px;display:grid}.empty-icon{width:54px;height:54px;color:var(--accent);background:var(--accent-soft);border-radius:50%;place-items:center;display:grid}.empty-state h3{margin:16px 0 5px;font-size:17px}.empty-state p{max-width:360px;color:var(--text-muted);margin:0 0 17px;font-size:13px;line-height:1.5}.toast{z-index:110;border:1px solid var(--border);background:var(--surface);max-width:min(420px,100vw - 48px);min-height:44px;color:var(--text);box-shadow:var(--shadow-md);border-radius:10px;align-items:center;gap:9px;padding:7px 8px 7px 15px;font-size:13px;display:flex;position:fixed;bottom:24px;right:24px}.toast-message{overflow-wrap:anywhere;min-width:0;line-height:1.4}.toast-dismiss{width:30px;height:30px;color:var(--text-muted);cursor:pointer;background:0 0;border:0;border-radius:7px;flex:none;place-items:center;margin-left:2px;padding:0;display:grid}.toast-dismiss:hover{color:var(--text);background:var(--surface-muted)}.toast-dismiss:focus-visible{box-shadow:var(--focus);outline:0}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:17px;display:grid}.form-span{grid-column:1/-1}.checkbox-row{color:var(--text-muted);align-items:flex-start;gap:9px;font-size:12.5px;line-height:1.5;display:flex}.checkbox-row input{accent-color:var(--accent);margin-top:3px}.panel{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface);overflow:hidden}.panel-pad{padding:18px}.panel-title{margin:0 0 4px;font-size:16px}.muted{color:var(--text-muted)}.text-danger{color:var(--danger)}.text-success{color:var(--success)}.text-accent{color:var(--accent)}.notice{border:1px solid var(--accent);align-items:flex-start;gap:10px;padding:12px 14px;display:flex}@supports (color:color-mix(in lab,red,red)){.notice{border:1px solid color-mix(in srgb,var(--accent) 25%,var(--border))}}.notice{color:var(--text-muted);background:var(--surface-accent);border-radius:9px;font-size:12.5px;line-height:1.45}.homework-detail{gap:20px;display:grid}.homework-summary{grid-template-columns:auto minmax(0,1fr);align-items:start;gap:12px;display:grid}.homework-summary p,.homework-response p{color:var(--text-muted);white-space:pre-wrap;margin:8px 0 0;line-height:1.6}.homework-response{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-muted);padding:15px}.homework-feedback{border-color:var(--success)}@supports (color:color-mix(in lab,red,red)){.homework-feedback{border-color:color-mix(in srgb,var(--success) 28%,var(--border))}}.homework-feedback{background:var(--success)}@supports (color:color-mix(in lab,red,red)){.homework-feedback{background:color-mix(in srgb,var(--success) 6%,var(--surface))}}.homework-file-picker{border:1px dashed var(--border-strong);border-radius:var(--radius-sm);min-height:48px;color:var(--text-muted);background:var(--surface-muted);cursor:pointer;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:10px;padding:10px 12px;display:grid}.homework-file-picker:hover{border-color:var(--accent);color:var(--accent)}.homework-file-picker span{text-overflow:ellipsis;white-space:nowrap;font-size:12.5px;overflow:hidden}.homework-file-picker input{opacity:0;pointer-events:none;width:1px;height:1px;position:absolute;overflow:hidden}.homework-attachments{gap:9px;display:grid}.homework-attachments>strong{font-size:12px}.homework-attachments>div{gap:7px;display:grid}.homework-attachments button{border:1px solid var(--border);border-radius:var(--radius-sm);width:100%;min-height:54px;color:var(--text);background:var(--surface);text-align:left;cursor:pointer;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;padding:8px 10px;display:grid}.homework-attachments button:hover{border-color:var(--accent);background:var(--accent-soft)}.homework-attachments button>span:nth-child(2){gap:3px;min-width:0;display:grid}.homework-attachments b{text-overflow:ellipsis;white-space:nowrap;font-size:12.5px;overflow:hidden}.homework-attachments small{color:var(--text-muted);font-size:11px}.skeleton{background:var(--surface-muted);border-radius:6px;min-height:14px;position:relative;overflow:hidden}.skeleton:after{content:"";background:linear-gradient(90deg,transparent,var(--text),transparent);position:absolute;inset:0;transform:translate(-100%)}@supports (color:color-mix(in lab,red,red)){.skeleton:after{background:linear-gradient(90deg,transparent,color-mix(in srgb,var(--text) 8%,transparent),transparent)}}.skeleton:after{animation:1.5s infinite shimmer}@keyframes shimmer{to{transform:translate(100%)}}@keyframes fade-in{0%{opacity:0}}@keyframes dialog-in{0%{opacity:0;transform:translate(-50%,-47%)scale(.98)}}@media(max-width:700px){.package-ledger-row{grid-template-columns:minmax(0,1fr) auto;gap:10px}.package-ledger-source{grid-column:1}.package-ledger-row .ledger-status{grid-column:1;justify-content:flex-start}.package-ledger-action{grid-area:1/2}.page-header{flex-direction:column;align-items:stretch;min-height:0}.page-actions{width:100%}.page-actions>*{flex:1}.dialog-content{border-radius:0;width:100%;max-width:none;height:100dvh;max-height:none;animation:.18s ease-out mobile-dialog-in;inset:0;transform:none}.dialog-body{flex:auto}.dialog-footer{padding-bottom:max(15px,env(safe-area-inset-bottom))}.form-grid{grid-template-columns:1fr}.form-span{grid-column:auto}.data-row{grid-template-columns:auto minmax(0,1fr) auto}.data-row-meta{display:none}.data-row-status{grid-column:2}body:has(.dialog-content) .toast{right:12px;bottom:max(140px,calc(env(safe-area-inset-bottom) + 124px));max-width:calc(100vw - 24px)}}@keyframes mobile-dialog-in{0%{opacity:0;transform:translateY(4%)}}@media(prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@media print{.no-print{display:none!important}body{color:#111;background:#fff}}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.app-frame{background:var(--bg);grid-template-columns:226px minmax(0,1fr);min-height:100vh;display:grid}.app-sidebar{z-index:50;border-right:1px solid var(--border);background:var(--surface);flex-direction:column;height:100vh;display:flex;position:sticky;top:0}.sidebar-brand{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;min-height:65px;padding:0 20px;display:flex}.sidebar-brand a{text-decoration:none}.mobile-close,.mobile-menu{display:none}.sidebar-nav{gap:4px;padding:20px 10px;display:grid;overflow-y:auto}.nav-item{min-height:42px;color:var(--text-muted);border-radius:9px;align-items:center;gap:12px;padding:0 13px;font-size:13.5px;font-weight:540;text-decoration:none;display:flex;position:relative}.nav-item:before{content:"";background:0 0;border-radius:0 4px 4px 0;width:3px;height:26px;position:absolute;left:-10px}.nav-item:hover{color:var(--text);background:var(--surface-muted)}.nav-item-active{color:var(--accent);background:var(--surface-accent)}.nav-item-active:before{background:var(--accent)}.nav-badge{color:#fff;background:var(--coral);border-radius:99px;place-items:center;min-width:21px;height:21px;margin-left:auto;padding:0 5px;font-size:10px;font-weight:700;display:grid}.sidebar-bottom{border-top:1px solid var(--border);margin-top:auto;padding:10px}.account-switcher{width:100%;color:var(--text);cursor:pointer;text-align:left;background:0 0;border:0;border-radius:10px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;margin-top:5px;padding:10px 8px;display:grid}.account-switcher:hover{background:var(--surface-muted)}.account-switcher>span{gap:2px;display:grid}.account-switcher strong{font-size:12.5px}.account-switcher small{color:var(--text-muted);font-size:11px}.mode-change{color:var(--text-faint)}.app-stage{min-width:0}.app-topbar{z-index:40;border-bottom:1px solid var(--border);background:var(--surface);align-items:center;gap:10px;height:65px;padding:0 25px;display:flex;position:sticky;top:0}@supports (color:color-mix(in lab,red,red)){.app-topbar{background:color-mix(in srgb,var(--surface) 94%,transparent)}}.app-topbar{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.topbar-spacer{flex:1}.compact-select select{border:1px solid var(--border);min-height:34px;color:var(--text);background:var(--surface);border-radius:8px;padding:0 8px;font-size:12px}.app-content{width:min(100%,1340px);margin:0 auto;padding:28px 32px 48px;animation:.18s ease-out fade-in}.access-banner{border:1px solid var(--warning);align-items:flex-start;gap:10px;width:min(100% - 64px,1276px);margin:18px auto -10px;padding:12px 14px;display:flex}@supports (color:color-mix(in lab,red,red)){.access-banner{border:1px solid color-mix(in srgb,var(--warning) 42%,var(--border))}}.access-banner{color:var(--text);background:var(--warning);border-radius:10px}@supports (color:color-mix(in lab,red,red)){.access-banner{background:color-mix(in srgb,var(--warning) 10%,var(--surface))}}.access-banner>span{gap:2px;display:grid}.access-banner strong{font-size:13px}.access-banner small{color:var(--text-muted);font-size:12px;line-height:1.45}.offline-banner{border-color:var(--accent)}@supports (color:color-mix(in lab,red,red)){.offline-banner{border-color:color-mix(in srgb,var(--accent) 35%,var(--border))}}.offline-banner{background:var(--accent)}@supports (color:color-mix(in lab,red,red)){.offline-banner{background:color-mix(in srgb,var(--accent) 7%,var(--surface))}}.offline-banner>svg{color:var(--accent);flex:none}.public-frame{background:var(--bg);min-height:100vh}.public-header{z-index:45;border-bottom:1px solid var(--border);background:var(--surface);grid-template-columns:1fr 1fr;align-items:center;gap:24px;height:68px;padding:0 clamp(20px,4vw,64px);display:grid;position:sticky;top:0}@supports (color:color-mix(in lab,red,red)){.public-header{background:color-mix(in srgb,var(--surface) 94%,transparent)}}.public-header{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.public-brand{justify-self:start;text-decoration:none}.public-actions{justify-self:end;align-items:center;gap:8px;display:flex}.public-footer{border-top:1px solid var(--border);min-height:94px;color:var(--text-muted);align-items:center;gap:22px;padding:24px clamp(20px,4vw,64px);font-size:12px;display:flex}.sidebar-scrim{display:none}@media(max-width:980px){.app-frame{grid-template-columns:1fr}.app-sidebar{visibility:hidden;pointer-events:none;width:min(86vw,280px);box-shadow:var(--shadow-md);transition:transform .18s,visibility 0s linear .18s;position:fixed;left:0;transform:translate(-102%)}.app-sidebar.sidebar-open{visibility:visible;pointer-events:auto;transition-delay:0s;transform:translate(0)}.sidebar-scrim{z-index:49;background:#050a1885;border:0;display:block;position:fixed;inset:0}.mobile-close,.mobile-menu{display:inline-flex}.app-topbar{padding:0 18px}.app-content{padding:24px 20px 44px}.access-banner{width:calc(100% - 40px)}.public-header{grid-template-columns:1fr auto}}@media(max-width:600px){.app-content{padding-inline:14px}.app-topbar{padding-inline:12px}.public-header{padding-inline:15px}.public-header .button-secondary{display:none}.public-footer{flex-direction:column;align-items:flex-start}}.early-access{margin-bottom:20px}.dashboard-layout{grid-template-columns:minmax(0,1fr) 260px;gap:26px;display:grid}.dashboard-main{min-width:0}.dashboard-section{border-bottom:1px solid var(--border);background:var(--surface);margin-bottom:10px}.timeline-list{border:1px solid var(--border);border-radius:10px;overflow:hidden}.lesson-row{border-bottom:1px solid var(--border);grid-template-columns:72px 18px minmax(0,1fr) auto auto;align-items:center;gap:10px;min-height:62px;padding:8px 10px 8px 14px;display:grid}.lesson-row:last-child{border-bottom:0}.lesson-row-active{background:var(--surface-accent)}.lesson-row time{color:var(--text-muted);font-size:12px;display:grid}.lesson-row time small{font-size:11px}.lesson-node{background:var(--text-faint);border-radius:50%;width:8px;height:8px;position:relative}.lesson-row-active .lesson-node{background:var(--accent)}.lesson-node:after{content:"";background:var(--border-strong);width:1px;height:52px;position:absolute;top:8px;left:3px}.lesson-row:last-child .lesson-node:after{display:none}.lesson-copy{gap:3px;display:grid}.lesson-copy strong{font-size:13.5px}.lesson-copy small{color:var(--text-muted);font-size:11.5px}.section-link,.inline-link{color:var(--accent);cursor:pointer;background:0 0;border:0;font-size:12.5px}.section-link{align-items:center;gap:4px;min-height:38px;display:inline-flex}.dashboard-split{grid-template-columns:1fr 1fr;gap:24px;display:grid}.dashboard-rail{border-left:1px solid var(--border);padding-left:24px}.dashboard-rail h2{margin:1px 0 20px;font-size:16px}.rail-hours{gap:16px;display:grid}.rail-event{border-left:3px solid var(--border-strong);background:var(--surface-muted);border-radius:0 8px 8px 0;grid-template-columns:45px 1fr;align-content:center;gap:2px 9px;min-height:64px;padding:8px 10px;display:grid}.rail-event-active{border-color:var(--accent);background:var(--surface-accent)}.rail-event time{color:var(--text-muted);grid-row:1/3;font-size:11px}.rail-event strong{font-size:12px}.rail-event small{color:var(--text-muted);font-size:10.5px}.rail-upcoming{border-top:1px solid var(--border);margin-top:28px;padding-top:18px}.rail-upcoming h3{margin:0 0 10px;font-size:14px}.rail-upcoming h3 span{color:var(--text-muted);font-weight:400}.upcoming-row{border-bottom:1px solid var(--border);grid-template-columns:38px 1fr auto;align-items:center;gap:9px;min-height:64px;padding:6px 4px;display:grid}.upcoming-row time,.upcoming-row>span{gap:2px;display:grid}.upcoming-row time{justify-items:center}.upcoming-row time strong{font-size:14px}.upcoming-row time small,.upcoming-row>span small{color:var(--text-muted);font-size:9.5px}.upcoming-row>span strong{font-size:11.5px}.dashboard-empty-inline{color:var(--text-muted);padding:18px 8px;font-size:12.5px;display:block}.rail-event,.upcoming-row{color:inherit;font:inherit;text-align:left;cursor:pointer}.rail-event{border:0;border-left:3px solid var(--border-strong)}.upcoming-row{border:0;border-bottom:1px solid var(--border);background:0 0;width:100%}.rail-upcoming-primary{border-top:0;margin-top:0;padding-top:0}.rail-upcoming-primary h2{margin:0 0 10px;font-size:14px}.teacher-filter{scrollbar-width:none;gap:8px;margin:-2px -2px 20px;padding:2px;display:flex;overflow-x:auto}.teacher-filter::-webkit-scrollbar{display:none}.next-lesson{background:var(--surface-accent);grid-template-columns:auto minmax(230px,1fr) minmax(240px,1.2fr) auto;align-items:center;gap:18px;min-height:150px;margin-bottom:24px;padding:22px;display:grid}.learning-line{background:var(--accent);border-radius:2px;align-self:stretch;width:2px;margin-left:8px}.next-lesson small,.next-lesson p{color:var(--text-muted)}.next-lesson h2{margin:4px 0 12px;font-size:22px}.next-lesson p{margin:4px 0 0;font-size:12.5px}.next-meta{color:var(--text-muted);gap:28px;font-size:12px;display:flex}.student-grid{grid-template-columns:minmax(0,1.2fr) minmax(0,1fr) 280px;gap:18px 24px;display:grid}.student-week{grid-column:1/3}.student-rail{grid-area:1/3/3}.student-next-empty{margin-bottom:24px}.student-package-row{grid-template-columns:28px minmax(0,1fr) 36px;align-items:center;row-gap:9px;padding-block:12px}.student-package-row>.avatar{grid-area:1/1}.student-package-row>.data-row-copy{grid-area:1/2}.student-package-row>.data-row-meta{display:none}.student-package-row>.data-row-status{grid-area:2/2/auto/4;width:100%}.student-package-row>.data-row-status .progress-wrap{width:100%;min-width:0}.student-package-row>.data-row-action{grid-area:1/3}@media(max-width:1280px){.student-grid{grid-template-columns:1fr 1fr}.student-week,.student-rail{grid-area:auto}.student-rail{order:3}}@media(max-width:1140px){.dashboard-layout{grid-template-columns:1fr}.dashboard-rail{display:none}.next-lesson{grid-template-columns:auto 1fr auto}.next-meta{display:none}}@media(max-width:740px){.dashboard-split,.student-grid{grid-template-columns:1fr}.student-week,.student-rail{grid-column:auto}.lesson-row{grid-template-rows:auto auto;grid-template-columns:58px 14px minmax(0,1fr) auto}.lesson-row .status{grid-area:2/3;justify-self:start}.lesson-row>.icon-button{grid-area:1/4/span 2}.next-lesson{grid-template-columns:auto 1fr}.next-lesson .button{grid-column:2;justify-self:start}}.module-toolbar{align-items:center;gap:10px;margin-bottom:16px;display:flex}.search-bar{align-items:center;width:min(420px,100%);display:flex;position:relative}.search-bar>svg{z-index:1;color:var(--text-faint);position:absolute;left:12px}.search-bar .input{padding-left:38px}.count-badge{min-width:20px;color:var(--accent);background:var(--accent-soft);border-radius:99px;padding:3px 6px;font-size:10px}.module-panel{border-top:1px solid var(--border);border-bottom:1px solid var(--border)}.invite-purpose-guidance{gap:8px;margin-bottom:14px;display:grid}.invite-purpose-guidance>section{border:1px solid var(--border);background:var(--surface-muted);border-radius:10px;grid-template-columns:auto minmax(0,1fr);gap:10px;padding:10px;display:grid}.invite-purpose-guidance>section>svg{width:18px;color:var(--warning);margin-top:1px}.invite-purpose-guidance strong{font-size:12px;display:block}.invite-purpose-guidance p{color:var(--text);margin:3px 0 0;font-size:11.5px;line-height:1.45}.invite-purpose-guidance .invite-prospect-guidance{border-color:var(--accent)}@supports (color:color-mix(in lab,red,red)){.invite-purpose-guidance .invite-prospect-guidance{border-color:color-mix(in srgb,var(--accent) 32%,var(--border))}}.invite-purpose-guidance .invite-prospect-guidance{background:var(--surface-accent)}.invite-prospect-guidance>svg{color:var(--accent)!important}.invite-prospect-guidance .button{margin-top:8px}.invite-box{justify-items:center;gap:12px;display:grid}.invite-box img{border:1px solid var(--border);border-radius:10px;width:200px;max-width:100%}.invite-link{background:var(--surface-muted);width:100%;min-width:0;color:var(--text-muted);border-radius:8px;align-items:center;gap:8px;padding:10px;font-size:11px;display:flex}.invite-link span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.invite-actions{gap:8px;display:flex}.invite-box small{color:var(--text-muted)}.inquiry-detail{align-items:start;gap:16px;display:grid}.inquiry-detail>.status{justify-self:start}.inquiry-detail>p{margin:0;line-height:1.6}.schedule-board{grid-template-columns:92px minmax(0,1fr);gap:24px;display:grid}.schedule-date-rail{align-content:start;gap:8px;display:grid}.schedule-date-rail>strong{padding:7px;font-size:13px}.date-chip{min-height:62px;color:var(--text-muted);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:10px;place-items:center;gap:1px;display:grid}.date-chip span{text-transform:uppercase;font-size:10px}.date-chip strong{font-size:17px}.date-chip-active{color:var(--accent);border-color:var(--accent);background:var(--accent-soft)}.schedule-list{min-width:0}.messages-layout{grid-template-columns:290px minmax(0,1fr);height:calc(100vh - 182px);min-height:540px;display:grid}.conversation-list{border-right:1px solid var(--border);overflow-y:auto}.conversation-search{border-bottom:1px solid var(--border);padding:12px}.conversation-item{border:0;border-bottom:1px solid var(--border);width:100%;min-height:68px;color:var(--text);text-align:left;cursor:pointer;background:0 0;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;padding:9px 12px;display:grid}.conversation-item:hover,.conversation-item-active{background:var(--surface-accent)}.conversation-item>span:not(.avatar){gap:3px;min-width:0;display:grid}.conversation-item strong,.conversation-item small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.conversation-item strong{font-size:13px}.conversation-item small{color:var(--text-muted);font-size:11.5px}.chat-panel{grid-template-rows:auto minmax(0,1fr) auto;min-width:0;display:grid}.chat-header{border-bottom:1px solid var(--border);align-items:center;gap:10px;min-height:64px;padding:10px 16px;display:flex}.chat-header>span{gap:2px;display:grid}.chat-header strong{font-size:13px}.chat-header small{color:var(--text-muted);font-size:11px}.chat-header .button{margin-left:auto}.chat-messages{flex-direction:column;gap:10px;padding:20px;display:flex;overflow-y:auto}.message-bubble{background:var(--surface-muted);border-radius:4px 12px 12px;width:fit-content;max-width:min(76%,520px);padding:10px 12px}.message-own{background:var(--accent-soft);border-radius:12px 4px 12px 12px;align-self:flex-end}.message-bubble strong{color:var(--text-muted);font-size:10.5px}.message-bubble p{margin:4px 0;font-size:13px;line-height:1.45}.message-bubble time{color:var(--text-faint);font-size:9.5px}.chat-composer{border-top:1px solid var(--border);grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:8px;padding:12px;display:grid}.file-icon{width:36px;height:36px;color:var(--accent);background:var(--accent-soft);border-radius:9px;place-items:center;display:grid}.progress-view-switch{margin-bottom:18px;display:flex}.progress-panel{margin-bottom:24px}.progress-feed{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;padding:14px;display:grid}.progress-card{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface);gap:16px;padding:16px;display:grid}.progress-card-head{grid-template-columns:auto 1fr auto;align-items:center;gap:10px;display:grid}.progress-card-head>span{display:grid}.progress-card-head strong{font-size:13px}.progress-card-head small{color:var(--text-muted);font-size:11px}.progress-card h2{margin:0 0 8px;font-size:16px}.progress-card p{min-height:42px;color:var(--text-muted);margin:0;font-size:13px;line-height:1.55}.progress-card footer{color:var(--text-muted);justify-content:space-between;align-items:center;gap:10px;font-size:11.5px;display:flex}.goal-panel{margin-bottom:24px}.goal-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;padding:14px;display:grid}.goal-card{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface);gap:16px;min-width:0;padding:16px;display:grid}.goal-card header{grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:9px;display:grid}.goal-card header>span{gap:3px;min-width:0;display:grid}.goal-card header strong,.goal-card header small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.goal-card header strong{font-size:12.5px}.goal-card header small{color:var(--text-muted);font-size:10.5px}.goal-card h2{margin:0 0 7px;font-size:15px;line-height:1.35}.goal-card p{min-height:38px;color:var(--text-muted);margin:0;font-size:12px;line-height:1.5}.goal-card footer{color:var(--text-muted);justify-content:space-between;align-items:center;gap:10px;font-size:11.5px;display:flex}.goal-card footer>span{align-items:center;gap:6px;display:inline-flex}.goal-current-summary{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-muted);justify-content:space-between;align-items:center;gap:16px;padding:14px;display:flex}.goal-current-summary span{color:var(--text-muted);font-size:12px}.goal-current-summary strong{font-size:16px}.financial-document{padding:8px}.financial-brand{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding-bottom:22px;display:flex}.financial-brand>span{font-size:22px;font-weight:760}.financial-document>h2{margin:28px 0 2px;font-size:30px}.document-number{color:var(--text-muted);font-size:12px}.financial-grid{grid-template-columns:1fr 1fr;gap:20px;margin:30px 0;display:grid}.financial-grid>span{color:var(--text-muted);gap:5px;font-size:11px;display:grid}.financial-grid strong{color:var(--text);font-size:13px}.line-item{border-top:1px solid var(--border);border-bottom:1px solid var(--border);justify-content:space-between;gap:20px;padding:20px 0;font-size:13px;display:flex}.document-disclaimer{color:var(--text-faint);margin-top:10px;font-size:10px;line-height:1.5}.document-disclaimer p{margin:3px 0 0}.document-actions{justify-content:flex-end;gap:9px;display:flex}.settings-stack{gap:15px;max-width:760px;display:grid}.settings-stack section{justify-items:start;gap:16px;display:grid}.settings-stack h2{margin:0;font-size:16px}.settings-stack p{margin:0}.settings-actions{gap:10px;display:flex}@media(max-width:1280px){.goal-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:800px){.progress-feed,.goal-grid{grid-template-columns:1fr}}@media(max-width:560px){.module-toolbar{flex-direction:column;align-items:stretch}.schedule-board{grid-template-columns:1fr}.schedule-date-rail{display:flex;overflow-x:auto}.schedule-date-rail>strong{display:none}.date-chip{min-width:60px}.messages-layout{border-left:0;border-right:0;border-radius:0;height:calc(100dvh - 170px);margin-inline:-14px}.financial-grid{grid-template-columns:1fr}.settings-actions{flex-direction:column;align-items:stretch}}.landing-page{overflow:hidden}.landing-hero{grid-template-columns:minmax(0,.88fr) minmax(520px,1.12fr);align-items:center;gap:clamp(40px,6vw,100px);min-height:700px;padding:80px clamp(24px,7vw,110px);display:grid}.landing-copy h1{letter-spacing:-4px;max-width:700px;margin:0;font-size:clamp(45px,6.5vw,82px);line-height:.99}.landing-copy>p{max-width:590px;color:var(--text-muted);margin:28px 0;font-size:17px;line-height:1.65}.landing-actions{gap:10px;display:flex}.landing-actions a{text-decoration:none}.landing-copy>small{max-width:590px;color:var(--text-faint);margin-top:20px;font-size:11px;line-height:1.5;display:block}.landing-product{border:1px solid var(--border);background:var(--surface);border-radius:18px;grid-template-columns:65px 1fr;min-height:480px;display:grid;overflow:hidden;transform:perspective(1500px)rotateY(-3deg)rotateX(1deg);box-shadow:0 30px 80px #1e2f5826}.mini-sidebar{border-right:1px solid var(--border);flex-direction:column;align-items:center;gap:16px;padding:22px 14px;display:flex}.mini-sidebar .brand-mark{width:28px}.mini-sidebar>span{width:34px;height:34px;color:var(--text-faint);border-radius:8px;place-items:center;display:grid}.mini-sidebar .mini-nav-active{color:var(--accent);background:var(--accent-soft)}.mini-content{padding:28px}.mini-heading{justify-content:space-between;align-items:center;font-size:21px;display:flex}.mini-heading span{background:var(--accent-soft);border-radius:50%;width:34px;height:34px}.mini-focus{border:1px solid var(--accent);margin:30px 0 16px;padding:20px}@supports (color:color-mix(in lab,red,red)){.mini-focus{border:1px solid color-mix(in srgb,var(--accent) 25%,var(--border))}}.mini-focus{background:var(--surface-accent);border-radius:12px}.mini-focus small,.mini-focus p{color:var(--text-muted)}.mini-focus strong{margin:7px 0;font-size:17px;display:block}.mini-focus p{margin:0;font-size:12px}.mini-row{border-bottom:1px solid var(--border);grid-template-columns:auto 1fr auto;align-items:center;gap:10px;min-height:70px;display:grid}.mini-row>span:not(.status){gap:4px;display:grid}.mini-row strong{font-size:12px}.mini-row small{color:var(--text-muted);font-size:10px}.landing-band{background:var(--surface-muted);padding:100px clamp(24px,7vw,110px)}.landing-band>h2{text-align:center;letter-spacing:-2px;max-width:820px;margin:0 auto 70px;font-size:clamp(32px,4vw,54px);line-height:1.08}.landing-features{grid-template-columns:repeat(3,1fr);gap:60px;display:grid}.landing-features article>svg{color:var(--accent)}.landing-features h3{font-size:19px}.landing-features p{color:var(--text-muted);line-height:1.65}.landing-tools{grid-template-columns:1fr 1fr;gap:100px;padding:110px clamp(24px,7vw,110px);display:grid}.landing-tools h2{letter-spacing:-2px;max-width:560px;margin:0;font-size:clamp(34px,4.5vw,58px);line-height:1.08}.landing-tools p{color:var(--text-muted);line-height:1.6}.tool-links{border-top:1px solid var(--border)}.tool-links a{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;min-height:64px;text-decoration:none;display:flex}.tool-links svg{width:18px}.not-found{text-align:center;align-content:center;justify-items:center;min-height:70vh;display:grid}.not-found h1{margin:30px 0 6px}.not-found p{color:var(--text-muted)}.not-found a{margin-top:14px;text-decoration:none}@media(max-width:1100px){.landing-hero{grid-template-columns:1fr}.landing-copy{text-align:center}.landing-copy>p,.landing-copy h1,.landing-copy>small{margin-left:auto;margin-right:auto}.landing-actions{justify-content:center}.landing-product{width:min(100%,760px);margin:auto;transform:none}}@media(max-width:760px){.landing-hero{min-height:0;padding-block:60px}.landing-copy h1{letter-spacing:-2.5px;font-size:48px}.landing-product{grid-template-columns:52px 1fr;min-height:390px}.mini-content{padding:20px 14px}.mini-sidebar{padding-inline:9px}.landing-features,.landing-tools{grid-template-columns:1fr}.landing-features{gap:30px}.landing-tools{gap:45px}}.tools-page{width:min(100% - 32px,1040px);min-height:72vh;margin:0 auto;padding:42px 0 70px}.tools-nav{gap:8px;margin-bottom:50px;display:flex;overflow-x:auto}.tools-nav a{border:1px solid var(--border);min-height:40px;color:var(--text-muted);border-radius:9px;flex:none;align-items:center;gap:8px;padding:0 13px;font-size:12.5px;text-decoration:none;display:inline-flex}.tools-nav a:hover{color:var(--accent);border-color:var(--accent)}.tools-nav svg{width:16px}.tools-local-note{color:var(--text-faint);text-align:center;margin-top:28px;font-size:11px}.focus-tool{justify-items:center;gap:28px;max-width:600px;margin:auto;padding:40px;display:grid}.focus-tool .field,.focus-duration{width:min(100%,430px)}.focus-ring{--focus-progress:360deg;background:radial-gradient(circle at center,var(--surface) 67%,transparent 68%),conic-gradient(var(--accent) var(--focus-progress),var(--border) 0);border-radius:50%;align-content:center;place-items:center;width:260px;height:260px;display:grid}.focus-ring-complete{background:radial-gradient(circle at center,var(--surface) 67%,transparent 68%),conic-gradient(var(--success) var(--focus-progress),var(--border) 0)}.focus-ring span{letter-spacing:-3px;font-size:54px;font-weight:720}.focus-ring small{color:var(--text-muted)}.focus-ring.focus-ring-complete small{color:var(--success);font-weight:650}.focus-duration{gap:8px;display:grid}.focus-duration-heading{justify-content:space-between;align-items:center;gap:12px;min-height:28px;display:flex}.focus-duration-label,.focus-custom-duration>span{color:var(--text);font-size:12px;font-weight:650}.focus-sound-toggle{border:1px solid var(--border);min-height:28px;color:var(--text-muted);background:var(--surface);font:inherit;cursor:pointer;border-radius:7px;align-items:center;gap:5px;padding:0 8px;font-size:11px;font-weight:600;display:inline-flex}.focus-sound-toggle:hover{color:var(--accent);border-color:var(--accent)}@supports (color:color-mix(in lab,red,red)){.focus-sound-toggle:hover{border-color:color-mix(in srgb,var(--accent) 45%,var(--border))}}.focus-sound-toggle[aria-pressed=true]{color:var(--accent);border-color:var(--accent)}@supports (color:color-mix(in lab,red,red)){.focus-sound-toggle[aria-pressed=true]{border-color:color-mix(in srgb,var(--accent) 40%,var(--border))}}.focus-sound-toggle[aria-pressed=true]{background:var(--accent-soft)}.focus-duration-controls{grid-template-columns:1fr auto;align-items:end;gap:10px;display:grid}.focus-duration-presets{grid-template-columns:repeat(4,1fr);gap:6px;display:grid}.focus-duration-option{border:1px solid var(--border);min-height:40px;color:var(--text-muted);background:var(--surface);font:inherit;cursor:pointer;border-radius:8px;padding:0 9px;font-size:12px;font-weight:600}.focus-duration-option:hover:not(:disabled){color:var(--accent);border-color:var(--accent)}@supports (color:color-mix(in lab,red,red)){.focus-duration-option:hover:not(:disabled){border-color:color-mix(in srgb,var(--accent) 45%,var(--border))}}.focus-duration-option-active{color:var(--accent);border-color:var(--accent);background:var(--accent-soft)}.focus-duration-option:disabled,.focus-custom-input input:disabled{cursor:not-allowed;opacity:.55}.focus-custom-duration{gap:6px;display:grid}.focus-custom-input{border:1px solid var(--border);background:var(--surface);border-radius:8px;align-items:center;gap:5px;height:40px;padding:0 9px;display:flex}.focus-custom-input:focus-within{border-color:var(--accent);box-shadow:var(--focus)}.focus-custom-input input{width:50px;color:var(--text);font:inherit;background:0 0;border:0;outline:0;font-size:12px;font-weight:600}.focus-custom-input small,.focus-duration-note{color:var(--text-faint);font-size:11px}.focus-duration-note{margin-top:-1px}.tool-actions{gap:9px;display:flex}.planner-layout{grid-template-columns:.8fr 1.2fr;gap:18px;display:grid}.planner-add{align-self:end}.planner-list header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;min-height:55px;padding:0 16px;display:flex}.planner-list header span{color:var(--text-muted);font-size:12px}.planner-row{border-bottom:1px solid var(--border);grid-template-columns:auto 1fr auto auto;align-items:center;gap:11px;min-height:56px;padding:8px 10px 8px 15px;display:grid}.task-check{border:1px solid var(--border-strong);color:#fff;cursor:pointer;background:0 0;border-radius:50%;place-items:center;width:22px;height:22px;display:grid}.task-check-done{border-color:var(--success);background:var(--success)}.task-done{color:var(--text-faint);text-decoration:line-through}.planner-row small{color:var(--text-muted)}.planner-empty{min-height:180px;color:var(--text-muted);place-items:center;font-size:13px;display:grid}.calculator-tool{grid-template-columns:1fr .8fr;display:grid;overflow:hidden}.calculator-fields{gap:18px;padding:30px;display:grid}.calculator-result{text-align:center;color:#fff;background:var(--accent);align-content:center;place-items:center;min-height:330px;display:grid}.calculator-result small{opacity:.75;text-transform:uppercase;letter-spacing:1px}.calculator-result strong{letter-spacing:-3px;margin:10px 0;font-size:clamp(42px,7vw,76px)}.calculator-result span{opacity:.8}.tools-index{grid-template-columns:repeat(3,1fr);gap:14px;display:grid}.tools-index a{border:1px solid var(--border);border-radius:12px;grid-template-columns:1fr auto;align-content:space-between;min-height:160px;padding:22px;text-decoration:none;display:grid}.tools-index a>svg:first-child{color:var(--accent)}.tools-index strong{grid-column:1}.tools-index a>svg:last-child{grid-area:2/2;width:18px}.workspace-tool-page{gap:0;display:grid}.tools-index-student{grid-template-columns:repeat(2,minmax(0,1fr));width:min(100%,820px)}.tools-workspace-note{margin-bottom:0}.tools-index-teacher{grid-template-columns:minmax(0,1fr);width:min(100%,520px)}.tools-index-teacher a{min-height:150px}.tools-index-teacher a span{grid-column:1;gap:7px;display:grid}.tools-index-teacher a span strong{grid-column:auto}.tools-index-teacher a span small{max-width:340px;color:var(--text-muted);line-height:1.5}.teacher-tool-quick{width:100%;min-height:82px;color:var(--text);background:var(--surface);text-align:left;font:inherit;cursor:pointer;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:14px;margin:0 0 24px;padding:14px 17px;display:grid}.teacher-tool-quick:hover{border-color:var(--accent)}@supports (color:color-mix(in lab,red,red)){.teacher-tool-quick:hover{border-color:color-mix(in srgb,var(--accent) 45%,var(--border))}}.teacher-tool-quick:hover{background:var(--surface-accent)}.teacher-tool-quick:focus-visible{box-shadow:var(--focus);outline:0}.teacher-tool-quick-icon{width:42px;height:42px;color:var(--accent);background:var(--accent-soft);border-radius:10px;place-items:center;display:grid}.teacher-tool-quick>span:nth-child(2){gap:4px;display:grid}.teacher-tool-quick strong{font-size:13.5px}.teacher-tool-quick small{color:var(--text-muted);font-size:11.5px;line-height:1.45}.teacher-tool-quick>svg{color:var(--text-faint)}.calculator-result small,.calculator-result span{opacity:.9}.auth-page{background:var(--surface);grid-template-columns:1fr 1fr;min-height:100vh;display:grid}.auth-brand{color:#fff;background:#14275e;flex-direction:column;justify-content:center;align-items:flex-start;padding:clamp(40px,8vw,120px);display:flex}.auth-brand a{color:#fff;text-decoration:none}.auth-brand h1{letter-spacing:-3px;max-width:660px;margin:80px 0 20px;font-size:clamp(42px,5vw,72px);line-height:1.02}.auth-brand p{color:#ffffffb8;max-width:610px;line-height:1.7}.auth-brand small{color:#ffffff7a;max-width:610px;margin-top:auto;line-height:1.5}.auth-form-wrap{place-items:center;padding:30px;display:grid}.auth-form,.auth-success{gap:18px;width:min(100%,420px);display:grid}.auth-form>h2,.auth-success h2{margin:0;font-size:30px}.auth-form>p,.auth-success p{color:var(--text-muted);margin:-8px 0 8px;line-height:1.5}.auth-icon,.auth-success>svg{width:40px;height:40px;color:var(--accent)}.input-with-icon{align-items:center;display:flex;position:relative}.input-with-icon>svg{color:var(--text-faint);position:absolute;left:12px}.input-with-icon .input{padding-left:39px}.auth-form>.inline-link{justify-self:center}.auth-success a{text-decoration:none}.invite-page{background:var(--surface-muted);align-content:center;justify-items:center;gap:30px;min-height:100vh;padding:30px;display:grid}.invite-card{text-align:center;justify-items:center;gap:18px;width:min(100%,560px);padding:42px;display:grid}.invite-card h1{margin:4px 0 0;font-size:30px}.invite-card p{color:var(--text-muted);margin:0;line-height:1.6}.invite-card a{color:var(--accent);text-decoration:none}.invite-lock{width:58px;height:58px;color:var(--accent);background:var(--accent-soft);border-radius:50%;place-items:center;display:grid}.invite-success-icon{width:56px;height:56px;color:var(--success)}.invite-page>a{color:var(--text);text-decoration:none}.invite-state{justify-items:center;gap:18px;display:grid}.invite-state-icon,.invite-error-icon{width:52px;height:52px;color:var(--accent)}.invite-error-icon{color:var(--danger)}.invite-eyebrow{color:var(--accent);letter-spacing:.08em;text-transform:uppercase;font-size:11px;font-weight:750}.invite-summary{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface-muted);text-align:left;grid-template-columns:1fr 1fr;width:100%;display:grid}.invite-summary>span{min-width:0;color:var(--text-muted);gap:5px;padding:14px 16px;font-size:12px;display:grid}.invite-summary>span+span{border-left:1px solid var(--border)}.invite-summary strong{color:var(--text);text-transform:uppercase;letter-spacing:.04em;font-size:11px}.invite-auth-actions,.invite-acceptance{gap:10px;width:100%;display:grid}.invite-auth-actions a,.invite-auth-actions .button,.invite-acceptance .button{width:100%}.invite-acceptance{text-align:left;padding-top:4px}.invite-acceptance>.inline-link{justify-self:center}.invite-account{color:var(--text-muted);text-align:center;font-size:12px}.invite-verification{border:1px solid var(--warning);grid-template-columns:auto 1fr;gap:12px;width:100%;padding:16px;display:grid}@supports (color:color-mix(in lab,red,red)){.invite-verification{border:1px solid color-mix(in srgb,var(--warning) 36%,var(--border))}}.invite-verification{border-radius:var(--radius-md);background:var(--warning)}@supports (color:color-mix(in lab,red,red)){.invite-verification{background:color-mix(in srgb,var(--warning) 9%,var(--surface))}}.invite-verification{text-align:left}.invite-verification>svg{color:var(--warning)}.invite-verification strong{font-size:13px}.invite-verification p{margin-top:4px;font-size:12px}.invite-verification-actions{grid-column:1/-1;gap:8px;display:flex}.invite-verification>.inline-link{grid-column:1/-1;justify-self:center}.invite-notice,.invite-feedback{width:100%}.invite-feedback{color:var(--danger)}.auth-brand .brand-logo{color:#fff}.auth-form>.auth-forgot{justify-self:end;margin-top:-10px}.auth-form .inline-link,.auth-success .button{align-items:center;gap:7px;display:inline-flex}@media(max-width:760px){.planner-layout,.calculator-tool,.auth-page,.tools-index,.tools-index-student,.tools-index-teacher{grid-template-columns:1fr}.auth-brand{display:none}.calculator-result{min-height:240px}.focus-tool{padding:28px 18px}.focus-ring{width:220px;height:220px}.focus-ring span{font-size:46px}.focus-duration-controls{grid-template-columns:1fr}.focus-custom-duration{grid-template-columns:auto 1fr;align-items:center}.focus-custom-input{justify-self:stretch}.focus-custom-input input{width:100%}}.tools-nav a[aria-current=page]{color:var(--accent);border-color:var(--accent)}@supports (color:color-mix(in lab,red,red)){.tools-nav a[aria-current=page]{border-color:color-mix(in srgb,var(--accent) 50%,var(--border))}}.tools-nav a[aria-current=page]{background:var(--accent-soft)}.tools-hub{gap:36px;display:grid}.tools-category{border-top:1px solid var(--border);grid-template-columns:minmax(210px,.7fr) minmax(0,1.7fr);gap:42px;padding-top:28px;display:grid}.tools-category-copy{align-items:flex-start;gap:14px;display:flex}.tools-category-copy h2{letter-spacing:-.35px;margin:1px 0 7px;font-size:18px}.tools-category-copy p{color:var(--text-muted);margin:0;font-size:12.5px;line-height:1.55}.tools-category-icon,.tools-hub-card-icon{color:var(--accent);background:var(--accent-soft);flex:none;place-items:center;display:grid}.tools-category-icon{border-radius:10px;width:40px;height:40px}.tools-category-icon svg{width:20px}.tools-category-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.tools-hub-card{border:1px solid var(--border);min-height:138px;color:var(--text);background:var(--surface);border-radius:12px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:16px;padding:20px;text-decoration:none;transition:border-color .16s,box-shadow .16s,transform .16s;display:grid}a.tools-hub-card:hover{border-color:var(--accent)}@supports (color:color-mix(in lab,red,red)){a.tools-hub-card:hover{border-color:color-mix(in srgb,var(--accent) 48%,var(--border))}}a.tools-hub-card:hover{transform:translateY(-2px);box-shadow:0 14px 32px #0f1f4314}a.tools-hub-card:focus-visible{box-shadow:var(--focus);outline:0}.tools-hub-card-icon{border-radius:10px;width:42px;height:42px}.tools-hub-card-icon svg{width:20px}.tools-hub-card-copy{gap:7px;min-width:0;display:grid}.tools-hub-card-copy strong{font-size:14px}.tools-hub-card-copy span{color:var(--text-muted);font-size:12px;line-height:1.5}.tools-hub-card>svg{width:18px;color:var(--text-faint)}.tools-planned-card{background:var(--surface-muted)}.tools-planned-card>small{color:var(--text-muted);letter-spacing:.35px;text-transform:uppercase;align-self:start;font-size:10.5px;font-weight:650}.tools-local-promise{border:1px solid var(--accent);align-items:flex-start;gap:14px;margin-top:36px;padding:22px 24px;display:flex}@supports (color:color-mix(in lab,red,red)){.tools-local-promise{border:1px solid color-mix(in srgb,var(--accent) 22%,var(--border))}}.tools-local-promise{background:var(--surface-accent);border-radius:12px}.tools-local-promise>span{color:var(--accent);flex:none}.tools-local-promise strong{font-size:13.5px}.tools-local-promise p{color:var(--text-muted);margin:5px 0 0;font-size:12px;line-height:1.55}.tool-workspace-bridge{grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:16px;width:min(100%,760px);margin:22px auto 0;padding:20px;display:grid}.tool-workspace-bridge-icon{width:44px;height:44px;color:var(--accent);background:var(--accent-soft);border-radius:11px;place-items:center;display:grid}.tool-workspace-bridge-copy{gap:4px;min-width:0;display:grid}.tool-workspace-bridge-copy strong{font-size:13.5px}.tool-workspace-bridge-copy>span{color:var(--text-muted);font-size:12px;line-height:1.45}.tool-workspace-bridge-copy small{color:var(--text-faint);margin-top:2px;font-size:10.5px;line-height:1.4}.tool-workspace-bridge .marketing-button{white-space:nowrap}@media(max-width:760px){.tools-category{grid-template-columns:1fr;gap:18px}.tools-category-list{grid-template-columns:1fr}.tools-hub-card{min-height:116px;padding:17px}.tool-workspace-bridge{grid-template-columns:auto minmax(0,1fr)}.tool-workspace-bridge .marketing-button{grid-column:1/-1;justify-content:center}}.practice-tool{gap:20px;width:min(100%,760px);margin:0 auto;display:grid}.practice-tool .focus-tool{width:min(100%,600px)}.student-tool-source{min-width:0}.student-tool-source-focus{border:1px solid var(--accent);gap:12px;width:100%;padding:14px;display:grid}@supports (color:color-mix(in lab,red,red)){.student-tool-source-focus{border:1px solid color-mix(in srgb,var(--accent) 28%,var(--border))}}.student-tool-source-focus{background:var(--accent);border-radius:11px}@supports (color:color-mix(in lab,red,red)){.student-tool-source-focus{background:color-mix(in srgb,var(--accent) 4%,var(--surface))}}.student-tool-source-planner{grid-template-columns:1fr;align-items:center;gap:12px;min-height:118px;padding:15px 17px;display:grid}.student-tool-source-copy{grid-template-columns:38px minmax(0,1fr);align-items:center;gap:11px;min-width:0;display:grid}.student-tool-source-copy>span{width:36px;height:36px;color:var(--accent);background:var(--accent-soft);border-radius:10px;place-items:center;display:grid}.student-tool-source-copy>span svg{width:18px}.student-tool-source-copy>div{gap:4px;min-width:0;display:grid}.student-tool-source-copy strong{font-size:12px}.student-tool-source-copy p{color:var(--text-muted);margin:0;font-size:10.5px;line-height:1.45}.student-tool-source-actions{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:9px;min-width:0;display:grid}.student-tool-source .select{min-width:0;height:40px;font-size:11px}.teacher-tool-connection{border-color:var(--accent);grid-template-columns:minmax(0,1fr) minmax(320px,.85fr);align-items:center;gap:18px;min-height:78px;margin-bottom:14px;padding:14px 16px;display:grid}@supports (color:color-mix(in lab,red,red)){.teacher-tool-connection{border-color:color-mix(in srgb,var(--accent) 25%,var(--border))}}.teacher-tool-connection{background:var(--accent)}@supports (color:color-mix(in lab,red,red)){.teacher-tool-connection{background:color-mix(in srgb,var(--accent) 3%,var(--surface))}}.teacher-tool-connection .student-tool-source-actions{grid-template-columns:minmax(0,1fr) auto}.local-work-import-summary{border:1px solid var(--accent);grid-template-columns:38px minmax(0,1fr);align-items:start;gap:12px;padding:14px 15px;display:grid}@supports (color:color-mix(in lab,red,red)){.local-work-import-summary{border:1px solid color-mix(in srgb,var(--accent) 24%,var(--border))}}.local-work-import-summary{background:var(--accent);border-radius:11px}@supports (color:color-mix(in lab,red,red)){.local-work-import-summary{background:color-mix(in srgb,var(--accent) 4%,var(--surface))}}.local-work-import-summary>span{width:36px;height:36px;color:var(--accent);background:var(--accent-soft);border-radius:10px;place-items:center;display:grid}.local-work-import-summary>span svg{width:18px}.local-work-import-summary strong{font-size:12.5px;display:block}.local-work-import-summary p{color:var(--text-muted);margin:4px 0 0;font-size:11px;line-height:1.5}.local-work-import-select-row{justify-content:space-between;align-items:center;gap:12px;margin-top:16px;display:flex}.local-work-import-select-row>strong{font-size:12px}.local-work-import-list{gap:7px;max-height:320px;margin:8px 0 14px;display:grid;overflow:auto}.local-work-import-item{border:1px solid var(--border);background:var(--surface);cursor:pointer;border-radius:10px;grid-template-columns:auto 32px minmax(0,1fr);align-items:center;gap:10px;min-width:0;min-height:58px;padding:10px 12px;display:grid}.local-work-import-item:has(input:checked){border-color:var(--accent)}@supports (color:color-mix(in lab,red,red)){.local-work-import-item:has(input:checked){border-color:color-mix(in srgb,var(--accent) 45%,var(--border))}}.local-work-import-item:has(input:checked){background:var(--accent)}@supports (color:color-mix(in lab,red,red)){.local-work-import-item:has(input:checked){background:color-mix(in srgb,var(--accent) 4%,var(--surface))}}.local-work-import-item input{width:16px;height:16px;accent-color:var(--accent)}.local-work-import-item>span:first-of-type{width:32px;height:32px;color:var(--accent);background:var(--accent-soft);border-radius:9px;place-items:center;display:grid}.local-work-import-item>span:first-of-type svg{width:16px}.local-work-import-item>span:last-child{gap:3px;min-width:0;display:grid}.local-work-import-item strong{text-overflow:ellipsis;white-space:nowrap;font-size:11.5px;overflow:hidden}.local-work-import-item small{color:var(--text-muted);font-size:10.5px}.student-task-import-review{gap:13px;display:grid}.student-task-import-review>div{border:1px solid var(--accent);gap:4px;padding:13px 14px;display:grid}@supports (color:color-mix(in lab,red,red)){.student-task-import-review>div{border:1px solid color-mix(in srgb,var(--accent) 28%,var(--border))}}.student-task-import-review>div{background:var(--accent);border-radius:10px}@supports (color:color-mix(in lab,red,red)){.student-task-import-review>div{background:color-mix(in srgb,var(--accent) 4%,var(--surface))}}.student-task-import-review>div strong{font-size:12px}.student-task-import-review>div p,.student-task-import-review>p{color:var(--text-muted);margin:0;font-size:10.5px;line-height:1.45}.student-task-import-review ul{border:1px solid var(--border);border-radius:10px;max-height:260px;margin:0;padding:0;list-style:none;display:grid;overflow:auto}.student-task-import-review li{border-bottom:1px solid var(--border);align-content:center;gap:4px;min-height:54px;padding:9px 12px;display:grid}.student-task-import-review li:last-child{border-bottom:0}.student-task-import-review li span{font-size:11.5px;font-weight:650}.student-task-import-review li small{color:var(--text-muted);font-size:10px}.focus-mode-switch{border:1px solid var(--border);background:var(--surface-muted);border-radius:9px;grid-template-columns:1fr 1fr;width:min(100%,430px);padding:3px;display:grid}.focus-mode-switch button{min-height:36px;color:var(--text-muted);font:inherit;cursor:pointer;background:0 0;border:0;border-radius:6px;font-size:12px;font-weight:650}.focus-mode-switch button[aria-pressed=true]{color:var(--accent);background:var(--surface);box-shadow:0 1px 4px #182a501a}.focus-mode-switch button:focus-visible{box-shadow:var(--focus);outline:0}.focus-mode-switch button:disabled{cursor:not-allowed;opacity:.62}.focus-open-note{width:min(100%,430px);color:var(--text-muted);text-align:center;margin:-5px 0 0;font-size:12px;line-height:1.55}.practice-fields{grid-template-columns:minmax(0,1.25fr) minmax(0,.75fr);gap:12px;width:min(100%,430px);display:grid}.practice-fields .field{width:100%}.practice-history{overflow:hidden}.practice-history-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:18px;min-height:78px;padding:17px 18px;display:flex}.practice-history-header h2{margin:0;font-size:15px}.practice-history-header p{color:var(--text-muted);margin:5px 0 0;font-size:11.5px;line-height:1.45}.practice-history-actions{flex-wrap:wrap;justify-content:flex-end;gap:2px;display:flex}.practice-history-actions .button svg,.practice-history-footer .button svg{width:14px}.practice-stats{border-bottom:1px solid var(--border);background:var(--surface-muted);grid-template-columns:repeat(3,1fr);display:grid}.practice-stats>div{border-right:1px solid var(--border);align-content:center;gap:6px;min-height:78px;padding:15px 18px;display:grid}.practice-stats>div:last-child{border-right:0}.practice-stats small{color:var(--text-muted);font-size:10.5px}.practice-stats strong{letter-spacing:-.35px;font-size:18px}.practice-session-list{display:grid}.practice-session-row{border-bottom:1px solid var(--border);grid-template-columns:62px minmax(0,1fr) 36px;align-items:center;gap:12px;min-height:78px;padding:12px 10px 12px 17px;display:grid}.practice-session-duration{color:var(--accent);font-size:13px;font-weight:700}.practice-session-copy{gap:3px;min-width:0;display:grid}.practice-session-copy strong{text-overflow:ellipsis;white-space:nowrap;font-size:13px;overflow:hidden}.practice-session-copy>span{color:var(--text-faint);font-size:10.5px}.practice-session-copy p{color:var(--text-muted);margin:3px 0 0;font-size:11px;line-height:1.45}.practice-session-row .button svg{width:15px}.practice-history-empty{min-height:190px;color:var(--text-muted);text-align:center;align-content:center;place-items:center;gap:8px;padding:28px;display:grid}.practice-history-empty>svg{color:var(--accent)}.practice-history-empty strong{color:var(--text);font-size:13px}.practice-history-empty p{max-width:390px;margin:0;font-size:11.5px;line-height:1.5}.practice-history-footer{border-top:1px solid var(--border);justify-content:flex-end;min-height:50px;padding:6px 10px;display:flex}.practice-feedback{color:var(--success);background:var(--success);margin:0;padding:9px 16px}@supports (color:color-mix(in lab,red,red)){.practice-feedback{background:color-mix(in srgb,var(--success) 7%,var(--surface))}}.practice-feedback{text-align:center;font-size:11px}.assignment-planner{gap:20px;width:min(100%,900px);margin:0 auto;display:grid}.assignment-planner-setup{gap:22px;display:grid}.assignment-section-heading h2,.assignment-plan-header h2{letter-spacing:-.25px;margin:0;font-size:16px}.assignment-section-heading p,.assignment-plan-header p{color:var(--text-muted);margin:5px 0 0;font-size:11.5px;line-height:1.5}.assignment-setup-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:15px;display:grid}.assignment-availability{border-top:1px solid var(--border);gap:13px;padding-top:20px;display:grid}.assignment-availability strong{font-size:12px}.assignment-availability p{color:var(--text-muted);margin:4px 0 0;font-size:11px}.weekday-options{grid-template-columns:repeat(7,1fr);gap:6px;display:grid}.weekday-options button{border:1px solid var(--border);min-height:38px;color:var(--text-muted);background:var(--surface);font:inherit;cursor:pointer;border-radius:8px;font-size:11px;font-weight:650}.weekday-options button:hover{color:var(--accent);border-color:var(--accent)}@supports (color:color-mix(in lab,red,red)){.weekday-options button:hover{border-color:color-mix(in srgb,var(--accent) 42%,var(--border))}}.weekday-options button[aria-pressed=true]{color:var(--accent);border-color:var(--accent);background:var(--accent-soft)}.weekday-options button:focus-visible{box-shadow:var(--focus);outline:0}.assignment-unavailable{grid-template-columns:minmax(190px,240px) auto 1fr;align-items:end;gap:10px;display:grid}.unavailable-date-list{flex-wrap:wrap;align-items:center;gap:6px;min-width:0;display:flex}.unavailable-date-list button{border:1px solid var(--border);min-height:31px;color:var(--text-muted);background:var(--surface-muted);font:inherit;cursor:pointer;border-radius:7px;align-items:center;gap:7px;padding:0 9px;font-size:10.5px;display:inline-flex}.unavailable-date-list button:hover{color:var(--danger);border-color:var(--danger)}@supports (color:color-mix(in lab,red,red)){.unavailable-date-list button:hover{border-color:color-mix(in srgb,var(--danger) 35%,var(--border))}}.unavailable-date-list span{font-size:15px;line-height:1}.assignment-generate{align-items:center;gap:13px;display:flex}.assignment-generate small{color:var(--text-faint);font-size:10.5px;line-height:1.45}.assignment-plan{overflow:hidden}.assignment-plan-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:18px;min-height:80px;padding:17px 18px;display:flex}.assignment-plan-actions{flex-wrap:wrap;justify-content:flex-end;gap:2px;display:flex}.assignment-plan-actions .button svg,.assignment-plan-footer .button svg{width:14px}.planner-summary-cards{border-bottom:1px solid var(--border);background:var(--surface-muted);grid-template-columns:repeat(3,1fr);display:grid}.planner-summary-cards>div{border-right:1px solid var(--border);align-content:center;gap:6px;min-height:76px;padding:14px 18px;display:grid}.planner-summary-cards>div:last-child{border-right:0}.planner-summary-cards small{color:var(--text-muted);font-size:10.5px}.planner-summary-cards strong{letter-spacing:-.3px;font-size:17px}.assignment-plan-warning{margin:14px 16px 0}.assignment-block-list{border-top:1px solid var(--border);margin-top:14px;display:grid}.assignment-block{border-bottom:1px solid var(--border);grid-template-columns:24px minmax(170px,1fr) 145px 80px 68px 36px;align-items:center;gap:9px;min-height:66px;padding:9px 9px 9px 15px;display:grid}.assignment-block.is-complete{background:var(--success)}@supports (color:color-mix(in lab,red,red)){.assignment-block.is-complete{background:color-mix(in srgb,var(--success) 4%,var(--surface))}}.assignment-block.is-complete>.input{color:var(--text-muted);text-decoration:line-through}.assignment-block .input{min-width:0;height:38px;padding-inline:10px;font-size:11px}.assignment-block-duration{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);align-items:center;gap:4px;height:38px;padding:0 8px;display:flex}.assignment-block-duration:focus-within{border-color:var(--accent);box-shadow:var(--focus)}.assignment-block-duration input{width:48px;min-width:0;color:var(--text);font:inherit;background:0 0;border:0;outline:0;font-size:11px}.assignment-block-duration small{color:var(--text-faint);font-size:10px}.assignment-block-order{display:flex}.assignment-block-order .button{width:32px;height:32px;min-height:32px}.assignment-block-order svg,.assignment-block>.button svg{width:14px}.assignment-manual-add{border-top:1px solid var(--border);background:var(--surface-muted);grid-template-columns:minmax(180px,1fr) 155px 110px auto;align-items:end;gap:10px;padding:16px;display:grid}.assignment-manual-add .button{margin-bottom:1px}.assignment-plan-footer{border-top:1px solid var(--border);justify-content:flex-end;min-height:50px;padding:6px 10px;display:flex}.assignment-plan .planner-empty{text-align:center;align-content:center;place-items:center;gap:7px;min-height:180px;padding:28px;display:grid}.assignment-plan .planner-empty svg{color:var(--accent)}.assignment-plan .planner-empty strong{color:var(--text);font-size:13px}.assignment-plan .planner-empty p{max-width:380px;margin:0;font-size:11.5px;line-height:1.5}.time-zone-planner{gap:20px;width:min(100%,900px);margin:0 auto;display:grid}.time-zone-setup{gap:22px;display:grid}.time-zone-mode-row{justify-content:space-between;align-items:center;gap:20px;display:flex}.time-zone-mode-row .segmented-control{flex:none}.time-zone-mode-row p{max-width:470px;color:var(--text-muted);text-align:right;margin:0;font-size:11.5px;line-height:1.5}.time-zone-plan-fields{grid-template-columns:minmax(210px,1fr) minmax(160px,.7fr) minmax(140px,.55fr);gap:12px;display:grid}.time-zone-people{grid-template-columns:minmax(0,1fr) 44px minmax(0,1fr);align-items:center;gap:12px;display:grid}.time-zone-person{border:1px solid var(--border);background:var(--surface);border-radius:11px;min-width:0;overflow:hidden}.time-zone-person>header{border-bottom:1px solid var(--border);background:var(--surface-muted);align-items:center;gap:11px;min-height:74px;padding:15px 16px;display:flex}.time-zone-person>header>span{width:34px;height:34px;color:var(--accent);background:var(--accent-soft);border-radius:9px;flex:none;place-items:center;display:grid}.time-zone-person>header svg{width:17px}.time-zone-person h3{margin:0;font-size:13px}.time-zone-person header p{color:var(--text-muted);margin:4px 0 0;font-size:10.5px;line-height:1.4}.time-zone-person-fields{grid-template-columns:1fr 1fr;gap:13px 10px;padding:16px;display:grid}.time-zone-person-fields .field:nth-child(2){grid-column:1/-1}.time-zone-swap{border:1px solid var(--border);width:42px;height:42px;color:var(--accent);background:var(--surface);cursor:pointer;border-radius:50%;place-items:center;display:grid}.time-zone-swap:hover{border-color:var(--accent);background:var(--accent-soft)}.time-zone-swap:focus-visible{box-shadow:var(--focus);outline:0}.time-zone-swap svg{width:17px}.time-zone-search-action{border-top:1px solid var(--border);align-items:center;gap:13px;padding-top:19px;display:flex}.time-zone-search-action small{color:var(--text-faint);font-size:10.5px;line-height:1.45}.time-zone-results{overflow:hidden}.time-zone-results-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:18px;min-height:80px;padding:17px 18px;display:flex}.time-zone-results-header h2{letter-spacing:-.25px;margin:0;font-size:16px}.time-zone-results-header p{color:var(--text-muted);margin:5px 0 0;font-size:11.5px}.time-zone-result-actions{flex-wrap:wrap;justify-content:flex-end;gap:2px;display:flex}.time-zone-result-actions .button svg{width:14px}.time-zone-empty{min-height:220px;color:var(--text-muted);text-align:center;align-content:center;place-items:center;gap:8px;padding:30px;display:grid}.time-zone-empty>svg{color:var(--accent)}.time-zone-empty strong{color:var(--text);font-size:13px}.time-zone-empty p{max-width:430px;margin:0;font-size:11.5px;line-height:1.5}.time-zone-match-list{display:grid}.time-zone-match{border:0;border-bottom:1px solid var(--border);width:100%;min-height:94px;color:var(--text);background:var(--surface);font:inherit;text-align:left;cursor:pointer;grid-template-columns:108px minmax(0,1fr) 30px minmax(0,1fr) 30px;align-items:center;gap:11px;padding:13px 13px 13px 16px;display:grid}.time-zone-match:hover{background:var(--surface-muted)}.time-zone-match.is-selected{background:var(--surface-accent);box-shadow:inset 3px 0 var(--accent)}.time-zone-match:focus-visible{z-index:1;box-shadow:inset var(--focus);outline:0;position:relative}.time-zone-match-status{justify-items:start;gap:6px;display:grid}.time-zone-match-status small{color:var(--warning);font-size:9.5px;line-height:1.35}.time-zone-match-place{gap:4px;min-width:0;display:grid}.time-zone-match-place small{color:var(--text-faint);text-overflow:ellipsis;white-space:nowrap;font-size:9.5px;overflow:hidden}.time-zone-match-place strong{font-variant-numeric:tabular-nums;font-size:12.5px}.time-zone-match-place>span{color:var(--text-muted);font-size:10.5px}.time-zone-match-divider{width:28px;height:28px;color:var(--text-faint);background:var(--surface-muted);border-radius:50%;place-items:center;display:grid}.time-zone-match-divider svg{width:13px}.time-zone-match-check{border:1px solid var(--border);color:#fff;border-radius:50%;place-items:center;width:26px;height:26px;display:grid}.time-zone-match.is-selected .time-zone-match-check{border-color:var(--accent);background:var(--accent)}.time-zone-match-check svg{width:14px}.time-zone-selected{border-top:1px solid var(--success);grid-template-columns:36px minmax(0,1fr) auto;align-items:start;gap:12px;min-height:78px;padding:15px 18px;display:grid}@supports (color:color-mix(in lab,red,red)){.time-zone-selected{border-top:1px solid color-mix(in srgb,var(--success) 25%,var(--border))}}.time-zone-selected{background:var(--success)}@supports (color:color-mix(in lab,red,red)){.time-zone-selected{background:color-mix(in srgb,var(--success) 5%,var(--surface))}}.time-zone-selected>span{color:#fff;background:var(--success);border-radius:50%;place-items:center;width:34px;height:34px;display:grid}.time-zone-selected>span svg{width:16px}.time-zone-selected strong{font-size:12.5px}.time-zone-selected p{color:var(--text-muted);margin:4px 0 0;font-size:11px}.time-zone-selected small{color:var(--warning);margin-top:7px;font-size:10.5px;line-height:1.45;display:block}.time-zone-selected>.button{align-self:center}.rate-planner{gap:16px;display:grid}.rate-planner-topbar{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:22px;min-height:84px;padding:14px 16px 14px 18px;display:grid}.rate-planner-topbar>div:first-child{grid-template-columns:max-content minmax(180px,280px);align-items:center;gap:16px;min-width:0;display:grid}.rate-planner-topbar .segmented-control{flex:none;width:max-content;overflow:visible}.rate-planner-topbar .segmented-control button{white-space:nowrap}.rate-planner-topbar p{color:var(--text-muted);margin:0;font-size:11.5px;line-height:1.45}.rate-planner-actions{border-left:1px solid var(--border);grid-template-columns:repeat(2,minmax(132px,max-content));gap:4px 6px;padding-left:18px;display:grid}.rate-planner-actions .button{justify-content:flex-start}.calculator-field-stack{gap:18px;display:grid}.rate-scenarios{padding:10px}.rate-scenario-tabs{align-items:stretch;gap:8px;display:flex;overflow-x:auto}.rate-scenario-tab{border:1px solid var(--border);min-width:154px;min-height:52px;color:var(--text);background:var(--surface);font:inherit;text-align:left;cursor:pointer;border-radius:9px;align-content:center;justify-items:start;gap:3px;padding:8px 12px;display:grid}.rate-scenario-tab:hover{border-color:var(--accent)}@supports (color:color-mix(in lab,red,red)){.rate-scenario-tab:hover{border-color:color-mix(in srgb,var(--accent) 45%,var(--border))}}.rate-scenario-tab.is-active{border-color:var(--accent);background:var(--accent-soft);box-shadow:inset 0 0 0 1px var(--accent)}@supports (color:color-mix(in lab,red,red)){.rate-scenario-tab.is-active{box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--accent) 20%,transparent)}}.rate-scenario-tab span{font-size:12px;font-weight:680}.rate-scenario-tab small{color:var(--text-muted);font-size:10.5px}.rate-scenario-tabs>.button{flex:none;align-self:center}.rate-planner-layout{grid-template-columns:minmax(0,1.18fr) minmax(320px,.82fr);align-items:start;gap:16px;display:grid}.rate-planner-setup{gap:18px;display:grid}.rate-section-heading{justify-content:space-between;align-items:start;gap:16px;display:flex}.rate-section-heading>div{gap:4px;display:grid}.rate-section-heading h2{letter-spacing:-.25px;margin:0;font-size:15px}.rate-section-heading p{color:var(--text-muted);margin:0;font-size:11.5px;line-height:1.5}.rate-section-divider{border-top:1px solid var(--border);padding-top:18px}.rate-field-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:13px;display:grid}.rate-field-grid-three{grid-template-columns:repeat(3,minmax(0,1fr))}.rate-result{position:sticky;top:80px;overflow:hidden}.rate-result-hero{color:#fff;text-align:center;background:var(--accent);align-content:center;justify-items:center;gap:5px;min-height:240px;padding:28px;display:grid}.rate-result-hero>span{width:38px;height:38px;color:var(--accent);background:#fff;border-radius:10px;place-items:center;margin-bottom:5px;display:grid}.rate-result-hero>span svg{width:20px}.rate-result-hero small{opacity:.82;letter-spacing:.08em;text-transform:uppercase;font-size:10.5px;font-weight:680}.rate-result-hero strong{letter-spacing:-2.8px;font-size:clamp(44px,6vw,66px);line-height:1}.rate-result-hero p{opacity:.82;max-width:320px;margin:5px 0 0;font-size:11.5px;line-height:1.5}.rate-metrics{border-bottom:1px solid var(--border);grid-template-columns:repeat(2,minmax(0,1fr));margin:0;display:grid}.rate-metrics>div{align-content:center;gap:5px;min-height:82px;padding:14px 16px;display:grid}.rate-metrics>div:nth-child(odd){border-right:1px solid var(--border)}.rate-metrics>div:nth-child(n+3){border-top:1px solid var(--border)}.rate-metrics dt{color:var(--text-muted);font-size:10.5px}.rate-metrics dd{letter-spacing:-.35px;margin:0;font-size:17px;font-weight:720}.rate-breakdown{gap:9px;padding:18px;display:grid}.rate-breakdown h3{margin:0 0 4px;font-size:12px}.rate-breakdown>div{color:var(--text-muted);justify-content:space-between;align-items:center;gap:16px;font-size:11.5px;display:flex}.rate-breakdown strong{color:var(--text);font-size:11.5px}.rate-guidance-note{color:var(--text-faint);margin:0;padding:0 18px 18px;font-size:10.5px;line-height:1.45}.rate-sharing{justify-content:space-between;align-items:center;gap:24px;min-height:82px;padding:16px 18px;display:flex}.rate-sharing>div{gap:4px;display:grid}.rate-sharing h2{margin:0;font-size:13px}.rate-sharing p{color:var(--text-muted);margin:0;font-size:11.5px;line-height:1.5}.rate-sharing .switch-label{flex:none}.rate-comparison{overflow:hidden}.rate-comparison>header{border-bottom:1px solid var(--border);align-items:center;min-height:64px;padding:13px 18px;display:flex}.rate-comparison>header>div{gap:3px;display:grid}.rate-comparison h2{margin:0;font-size:14px}.rate-comparison header p{color:var(--text-muted);margin:0;font-size:11px}.rate-comparison-scroll{overflow-x:auto}.rate-comparison-table{border-collapse:collapse;table-layout:fixed;width:100%;min-width:760px}.rate-comparison-table th,.rate-comparison-table td{border-bottom:1px solid var(--border);text-align:right;height:52px;padding:0 18px;font-size:11.5px}.rate-comparison-table th:first-child,.rate-comparison-table td:first-child{text-align:left;width:22%}.rate-comparison-table thead th{height:38px;color:var(--text-muted);background:var(--surface-muted);font-size:10.5px;font-weight:650}.rate-comparison-table tbody tr.is-active{background:var(--accent-soft)}.rate-comparison-table tbody tr:hover{background:var(--surface-muted)}.rate-comparison-table tbody tr.is-active:hover{background:var(--accent-soft)}.rate-comparison-table tbody th{font-weight:650}.rate-comparison-table tbody th button{color:var(--text);font:inherit;cursor:pointer;text-align:left;background:0 0;border:0;padding:5px 0;font-weight:650}.rate-comparison-table tbody th button:hover{color:var(--accent)}.rate-comparison-table tbody th button:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:3px}.rate-comparison-table tbody tr:last-child>*{border-bottom:0}.lesson-builder{gap:16px;display:grid}.lesson-connected-banner{border:1px solid var(--accent);grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:13px;padding:14px 16px;display:grid}@supports (color:color-mix(in lab,red,red)){.lesson-connected-banner{border:1px solid color-mix(in srgb,var(--accent) 35%,var(--border))}}.lesson-connected-banner{border-radius:var(--radius-lg);background:var(--accent)}@supports (color:color-mix(in lab,red,red)){.lesson-connected-banner{background:color-mix(in srgb,var(--accent) 7%,var(--surface))}}.lesson-connected-banner>svg{width:20px;height:20px;color:var(--accent)}.lesson-connected-banner>div{gap:3px;display:grid}.lesson-connected-banner strong{font-size:13px}.lesson-connected-banner p{color:var(--text-muted);margin:0;font-size:11.5px;line-height:1.45}.lesson-plan-source-dialog{gap:18px;display:grid}.lesson-plan-source-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.lesson-plan-source-card{border:1px solid var(--border);background:var(--surface);min-width:0;min-height:136px;color:var(--text);text-align:left;cursor:pointer;border-radius:11px;grid-template-columns:auto minmax(0,1fr);align-content:start;gap:11px;padding:15px;transition:border-color .15s,background .15s,box-shadow .15s;display:grid}.lesson-plan-source-card:hover{border-color:var(--accent)}@supports (color:color-mix(in lab,red,red)){.lesson-plan-source-card:hover{border-color:color-mix(in srgb,var(--accent) 48%,var(--border))}}.lesson-plan-source-card:hover{background:var(--accent)}@supports (color:color-mix(in lab,red,red)){.lesson-plan-source-card:hover{background:color-mix(in srgb,var(--accent) 3%,var(--surface))}}.lesson-plan-source-card.is-selected{border-color:var(--accent);background:var(--accent)}@supports (color:color-mix(in lab,red,red)){.lesson-plan-source-card.is-selected{background:color-mix(in srgb,var(--accent) 8%,var(--surface))}}.lesson-plan-source-card.is-selected{box-shadow:0 0 0 1px var(--accent)}.lesson-plan-source-card>svg{width:20px;height:20px;color:var(--accent)}.lesson-plan-source-card>span{gap:5px;min-width:0;display:grid}.lesson-plan-source-card strong{font-size:13px}.lesson-plan-source-card small{color:var(--text-muted);font-size:11.5px;line-height:1.45}.lesson-plan-source-card>.status{grid-column:2;justify-self:start}.lesson-plan-source-list{border:1px solid var(--border);background:var(--surface-muted);border-radius:11px;gap:10px;padding:15px;display:grid}.lesson-plan-source-list h3{margin:0;font-size:13px}.lesson-plan-source-list>p{color:var(--text-muted);margin:0;font-size:12px}.lesson-plan-source-list>div{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;max-height:250px;display:grid;overflow:auto}.lesson-plan-source-list button{border:1px solid var(--border);background:var(--surface);min-width:0;color:var(--text);text-align:left;cursor:pointer;border-radius:9px;padding:12px 13px}.lesson-plan-source-list button.is-selected{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent)}.lesson-plan-source-list button span{gap:4px;display:grid}.lesson-plan-source-list button strong{text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.lesson-plan-source-list button small{text-overflow:ellipsis;white-space:nowrap;color:var(--text-muted);font-size:11px;overflow:hidden}.lesson-plan-source-privacy{border:1px solid var(--border);background:var(--surface-muted);border-radius:10px;grid-template-columns:auto minmax(0,1fr);gap:12px;padding:14px;display:grid}.lesson-plan-source-privacy>svg{width:18px;height:18px;color:var(--accent)}.lesson-plan-source-privacy>div{gap:4px;display:grid}.lesson-plan-source-privacy strong{font-size:12px}.lesson-plan-source-privacy p{color:var(--text-muted);margin:0;font-size:11.5px;line-height:1.5}.lesson-plan-missing{justify-items:start;gap:14px;display:grid}.lesson-plan-missing p{color:var(--text-muted);margin:0}.lesson-builder-toolbar{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:22px;min-height:82px;padding:14px 16px 14px 18px;display:grid}.lesson-builder-mode{grid-template-columns:max-content minmax(200px,330px);align-items:center;gap:16px;min-width:0;display:grid}.lesson-builder-mode .segmented-control{width:max-content;overflow:visible}.lesson-builder-mode .segmented-control button{white-space:nowrap}.lesson-builder-mode p{color:var(--text-muted);margin:0;font-size:11.5px;line-height:1.45}.lesson-builder-actions{border-left:1px solid var(--border);align-items:center;gap:4px;padding-left:18px;display:flex}.lesson-workflow-bridge{overflow:hidden}.lesson-workflow-bridge>header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:18px;min-height:72px;padding:14px 16px 13px 18px;display:flex}.lesson-workflow-bridge>header>div{gap:4px;display:grid}.lesson-workflow-bridge h2{letter-spacing:-.2px;margin:0;font-size:14px}.lesson-workflow-bridge header p{color:var(--text-muted);margin:0;font-size:11px;line-height:1.5}.lesson-workflow-state{color:var(--success);background:var(--success);border-radius:999px;flex:none;padding:6px 9px}@supports (color:color-mix(in lab,red,red)){.lesson-workflow-state{background:color-mix(in srgb,var(--success) 9%,var(--surface))}}.lesson-workflow-state{font-size:9.5px;font-weight:700}.lesson-workflow-state.is-dirty{color:var(--warning);background:var(--warning)}@supports (color:color-mix(in lab,red,red)){.lesson-workflow-state.is-dirty{background:color-mix(in srgb,var(--warning) 10%,var(--surface))}}.lesson-workflow-actions{grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.lesson-workflow-actions button{border:0;border-right:1px solid var(--border);min-width:0;min-height:82px;color:var(--text);background:var(--surface);font:inherit;text-align:left;cursor:pointer;grid-template-columns:34px minmax(0,1fr) 16px;align-items:center;gap:10px;padding:13px 15px;transition:color .15s,background .15s;display:grid}.lesson-workflow-actions button:last-child{border-right:0}.lesson-workflow-actions button:hover:not(:disabled){color:var(--accent);background:var(--accent)}@supports (color:color-mix(in lab,red,red)){.lesson-workflow-actions button:hover:not(:disabled){background:color-mix(in srgb,var(--accent) 4%,var(--surface))}}.lesson-workflow-actions button:focus-visible{z-index:1;outline:2px solid var(--accent);outline-offset:-2px;position:relative}.lesson-workflow-actions button:disabled{cursor:not-allowed;opacity:.48}.lesson-workflow-actions button>svg:first-child{width:32px;height:32px;color:var(--accent);background:var(--accent-soft);border-radius:9px;padding:7px}.lesson-workflow-actions button>svg:last-child{width:15px;color:var(--text-muted)}.lesson-workflow-actions button>span{gap:3px;min-width:0;display:grid}.lesson-workflow-actions strong{font-size:11.5px}.lesson-workflow-actions small{color:var(--text-muted);font-size:9.5px;line-height:1.4}.lesson-note-publisher{overflow:hidden}.lesson-note-publisher>header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:18px;min-height:76px;padding:15px 17px 14px 18px;display:flex}.lesson-note-publisher>header>div{gap:4px;display:grid}.lesson-note-publisher h2{letter-spacing:-.2px;margin:0;font-size:14px}.lesson-note-publisher header p,.lesson-note-publisher footer p{color:var(--text-muted);margin:0;font-size:10.5px;line-height:1.5}.lesson-note-destinations{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.lesson-note-destinations article{border-right:1px solid var(--border);grid-template-columns:38px minmax(0,1fr) auto;align-items:center;gap:11px;min-width:0;min-height:96px;padding:16px 17px;display:grid}.lesson-note-destinations article:last-child{border-right:0}.lesson-note-destinations article>span:first-child{width:36px;height:36px;color:var(--accent);background:var(--accent-soft);border-radius:10px;place-items:center;display:grid}.lesson-note-destinations article>span:first-child svg{width:18px}.lesson-note-destinations article>div{gap:4px;min-width:0;display:grid}.lesson-note-destinations article strong{font-size:11.5px}.lesson-note-destinations article p{color:var(--text-muted);margin:0;font-size:9.5px;line-height:1.45}.lesson-note-publisher>footer{border-top:1px solid var(--border);background:var(--surface-muted);justify-content:space-between;align-items:center;gap:18px;min-height:64px;padding:11px 15px 11px 18px;display:flex}.lesson-note-publisher>footer>div{grid-template-columns:20px minmax(0,1fr);align-items:center;gap:8px;min-width:0;display:grid}.lesson-note-publisher>footer svg{width:17px;color:var(--accent)}.lesson-note-review{gap:16px;display:grid}.lesson-note-review>section{gap:9px;display:grid}.lesson-note-exact-preview{border:1px solid var(--border);background:var(--surface-muted);border-radius:10px;gap:7px;max-height:190px;padding:13px 14px;display:grid;overflow:auto}.lesson-note-exact-preview.is-shared{border-color:var(--accent)}@supports (color:color-mix(in lab,red,red)){.lesson-note-exact-preview.is-shared{border-color:color-mix(in srgb,var(--accent) 28%,var(--border))}}.lesson-note-exact-preview.is-shared{background:var(--accent)}@supports (color:color-mix(in lab,red,red)){.lesson-note-exact-preview.is-shared{background:color-mix(in srgb,var(--accent) 4%,var(--surface))}}.lesson-note-exact-preview small{color:var(--text-muted);font-size:9.5px;font-weight:700}.lesson-note-exact-preview p{color:var(--text);white-space:pre-wrap;margin:0;font-size:11px;line-height:1.55}.lesson-workflow-dialog-note{margin-bottom:16px}.lesson-linked-materials{border-top:1px solid var(--border);background:var(--surface-muted);grid-template-columns:auto minmax(0,1fr);align-items:center;gap:12px;padding:11px 16px;display:grid}.lesson-linked-materials>strong{color:var(--text-muted);letter-spacing:.02em;font-size:9.5px;font-weight:720}.lesson-linked-materials>div{flex-wrap:wrap;gap:6px;min-width:0;display:flex}.lesson-linked-materials span{border:1px solid var(--border);max-width:100%;color:var(--text);background:var(--surface);border-radius:999px;align-items:center;gap:5px;padding:5px 8px;font-size:9.5px;display:inline-flex}.lesson-linked-materials svg{width:12px;height:12px;color:var(--accent);flex:none}.lesson-material-picker{gap:16px;display:grid}.lesson-material-picker>.segmented-control{width:100%}.lesson-material-picker>.segmented-control button{flex:1}.lesson-material-search{border:1px solid var(--border);height:42px;color:var(--text-muted);background:var(--surface);border-radius:10px;align-items:center;gap:9px;padding:0 12px;display:flex}.lesson-material-search:focus-within{border-color:var(--accent);box-shadow:var(--focus)}.lesson-material-search .input{height:40px;box-shadow:none;background:0 0;border:0;padding:0}.lesson-material-library{border:1px solid var(--border);border-radius:12px;max-height:330px;display:grid;overflow-y:auto}.lesson-material-option{border:0;border-bottom:1px solid var(--border);width:100%;min-height:70px;color:var(--text);background:var(--surface);font:inherit;text-align:left;cursor:pointer;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;padding:10px 12px;transition:background .15s,box-shadow .15s;display:grid}.lesson-material-option:last-child{border-bottom:0}.lesson-material-option:hover:not(:disabled){background:var(--surface-accent)}.lesson-material-option:focus-visible{z-index:1;outline:2px solid var(--accent);outline-offset:-2px;position:relative}.lesson-material-option-selected{background:var(--surface-accent);box-shadow:inset 3px 0 0 var(--accent)}.lesson-material-option:disabled{cursor:not-allowed;opacity:.58}.lesson-material-option-copy{gap:4px;min-width:0;display:grid}.lesson-material-option-copy strong{text-overflow:ellipsis;white-space:nowrap;font-size:12.5px;overflow:hidden}.lesson-material-option-copy small{color:var(--text-muted);font-size:10.5px}.lesson-material-option .status{white-space:nowrap}.lesson-material-notice{margin:0;font-size:11px}.lesson-material-upload{padding-top:2px}.lesson-template-library{overflow:hidden}.lesson-template-library-header{border-bottom:1px solid var(--border);grid-template-columns:42px minmax(0,1fr) auto;align-items:center;gap:13px;min-height:88px;padding:15px 16px;display:grid}.lesson-template-library-icon{width:40px;height:40px;color:var(--accent);background:var(--accent-soft);border-radius:10px;place-items:center;display:grid}.lesson-template-library-icon svg{width:20px}.lesson-template-library-header>div:nth-child(2){gap:4px;min-width:0;display:grid}.lesson-template-library-title-row{align-items:center;gap:9px;display:flex}.lesson-template-library-title-row h2{letter-spacing:-.2px;margin:0;font-size:14px}.lesson-template-library-header p{max-width:620px;color:var(--text-muted);margin:0;font-size:11px;line-height:1.5}.lesson-template-library-actions{align-items:center;gap:7px;display:flex}.lesson-template-list{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;padding:12px 14px;display:grid}.lesson-template-item{border:1px solid var(--border);background:var(--surface);border-radius:10px;grid-template-columns:minmax(0,1fr) auto;align-items:center;min-width:0;display:grid}.lesson-template-item.is-current{border-color:var(--accent);background:var(--accent-soft);box-shadow:inset 0 0 0 1px var(--accent)}@supports (color:color-mix(in lab,red,red)){.lesson-template-item.is-current{box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--accent) 15%,transparent)}}.lesson-template-open{min-width:0;color:var(--text);font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;grid-template-columns:32px minmax(0,1fr);align-items:center;gap:9px;padding:11px 8px 11px 11px;display:grid}.lesson-template-open>svg{width:17px;color:var(--accent)}.lesson-template-open>span{gap:3px;min-width:0;display:grid}.lesson-template-open strong,.lesson-template-open small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.lesson-template-open strong{font-size:11.5px}.lesson-template-open small{color:var(--text-muted);font-size:9.5px}.lesson-template-open:hover strong{color:var(--accent)}.lesson-template-open:focus-visible{outline:2px solid var(--accent);outline-offset:-2px;border-radius:9px}.lesson-template-item-meta{justify-items:end;gap:1px;min-width:38px;padding-right:5px;display:grid}.lesson-template-item-meta small{color:var(--text-muted);white-space:nowrap;font-size:8.5px}.lesson-template-item-meta .button svg{width:15px}.lesson-template-library-state{min-height:70px;color:var(--text-muted);place-items:center;margin:0;font-size:11px;display:grid}.lesson-template-library-empty{grid-template-columns:32px minmax(0,1fr);align-items:center;gap:10px;min-height:76px;padding:14px 18px;display:grid}.lesson-template-library-empty>svg{width:19px;color:var(--accent)}.lesson-template-library-empty>div{gap:3px;display:grid}.lesson-template-library-empty strong{font-size:11.5px}.lesson-template-library-empty p{color:var(--text-muted);margin:0;font-size:10.5px}.lesson-template-privacy{border-top:1px solid var(--border);min-height:46px;color:var(--text-muted);background:var(--surface-muted);grid-template-columns:22px minmax(0,1fr);align-items:center;gap:8px;padding:9px 16px;display:grid}.lesson-template-privacy svg{width:16px;color:var(--accent)}.lesson-template-privacy p{margin:0;font-size:10px;line-height:1.45}.lesson-template-library>.practice-feedback{border-top:1px solid var(--border);background:var(--accent);margin:0;padding:10px 16px}@supports (color:color-mix(in lab,red,red)){.lesson-template-library>.practice-feedback{background:color-mix(in srgb,var(--accent) 4%,var(--surface))}}.lesson-template-import-list{gap:8px;display:grid}.lesson-template-import-item{border:1px solid var(--border);background:var(--surface);cursor:pointer;border-radius:9px;grid-template-columns:18px minmax(0,1fr);align-items:center;gap:11px;min-height:58px;padding:10px 12px;display:grid}.lesson-template-import-item.is-saved{background:var(--surface-muted);cursor:default}.lesson-template-import-item input{width:16px;height:16px;accent-color:var(--accent)}.lesson-template-import-item>span{gap:3px;min-width:0;display:grid}.lesson-template-import-item strong{font-size:11.5px}.lesson-template-import-item small{color:var(--text-muted);font-size:10px}.lesson-template-import-list+.notice{margin-top:14px}.lesson-plan-library{justify-content:space-between;align-items:stretch;gap:12px;min-height:72px;padding:10px;display:flex}.lesson-plan-tabs{align-items:stretch;gap:8px;min-width:0;display:flex;overflow-x:auto}.lesson-plan-tab{border:1px solid var(--border);min-width:154px;min-height:50px;color:var(--text);background:var(--surface);font:inherit;text-align:left;cursor:pointer;border-radius:9px;align-content:center;justify-items:start;gap:3px;padding:8px 12px;display:grid}.lesson-plan-tab:hover{border-color:var(--accent)}@supports (color:color-mix(in lab,red,red)){.lesson-plan-tab:hover{border-color:color-mix(in srgb,var(--accent) 45%,var(--border))}}.lesson-plan-tab.is-active{border-color:var(--accent);background:var(--accent-soft);box-shadow:inset 0 0 0 1px var(--accent)}@supports (color:color-mix(in lab,red,red)){.lesson-plan-tab.is-active{box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--accent) 18%,transparent)}}.lesson-plan-tab span{font-size:12px;font-weight:680}.lesson-plan-tab small{color:var(--text-muted);font-size:10.5px}.lesson-plan-tab.is-active small{color:var(--text)}.lesson-plan-library-actions{flex:none;align-items:center;gap:2px;display:flex}.lesson-builder-layout{grid-template-columns:minmax(0,1.15fr) minmax(340px,.85fr);align-items:start;gap:16px;display:grid}.lesson-builder-editor{gap:22px;display:grid}.lesson-builder-section-heading{justify-content:space-between;align-items:flex-start;gap:18px;display:flex}.lesson-builder-section-heading>div{gap:4px;display:grid}.lesson-builder-section-heading h2{letter-spacing:-.3px;margin:0;font-size:16px}.lesson-builder-section-heading p{color:var(--text-muted);margin:0;font-size:11.5px;line-height:1.5}.lesson-builder-details{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 12px;display:grid}.lesson-builder-details .form-span{grid-column:1/-1}.lesson-builder-details .textarea{min-height:88px}.lesson-date-field{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px;display:grid}.lesson-date-field .button{white-space:nowrap}.lesson-capacity{border:1px solid var(--border);background:var(--surface-muted);border-radius:10px;gap:8px;padding:14px 16px;display:grid}.lesson-capacity>div:first-child{justify-content:space-between;align-items:center;gap:16px;display:flex}.lesson-capacity strong{font-size:12px}.lesson-capacity span,.lesson-capacity small{color:var(--text-muted);font-size:10.5px}.lesson-capacity-track{background:var(--border);border-radius:999px;height:7px;overflow:hidden}.lesson-capacity-track>span{border-radius:inherit;background:var(--accent);height:100%;transition:width .2s;display:block}.lesson-capacity-balanced{border-color:var(--success)}@supports (color:color-mix(in lab,red,red)){.lesson-capacity-balanced{border-color:color-mix(in srgb,var(--success) 30%,var(--border))}}.lesson-capacity-balanced{background:var(--success)}@supports (color:color-mix(in lab,red,red)){.lesson-capacity-balanced{background:color-mix(in srgb,var(--success) 5%,var(--surface))}}.lesson-capacity-balanced .lesson-capacity-track>span{background:var(--success)}.lesson-capacity-over{border-color:var(--danger)}@supports (color:color-mix(in lab,red,red)){.lesson-capacity-over{border-color:color-mix(in srgb,var(--danger) 34%,var(--border))}}.lesson-capacity-over{background:var(--danger)}@supports (color:color-mix(in lab,red,red)){.lesson-capacity-over{background:color-mix(in srgb,var(--danger) 5%,var(--surface))}}.lesson-capacity-over .lesson-capacity-track>span{background:var(--danger)}.lesson-capacity-over small{color:var(--danger)}.lesson-activity-list{gap:10px;display:grid}.lesson-activity{border:1px solid var(--border);background:var(--surface);border-radius:11px;overflow:hidden}.lesson-activity>header{background:var(--surface-muted);grid-template-columns:34px minmax(0,1fr) 88px 34px;align-items:center;gap:9px;min-height:72px;padding:12px 14px;display:grid}.lesson-activity>header>span{width:32px;height:32px;color:var(--accent);background:var(--accent-soft);border-radius:9px;place-items:center;font-size:11px;font-weight:750;display:grid}.lesson-activity header>div{gap:3px;min-width:0;display:grid}.lesson-activity-name{min-width:0;height:34px;min-height:34px;font-size:12.5px;font-weight:680}.lesson-activity header p{color:var(--text-muted);margin:0;font-size:10.5px;line-height:1.4}.lesson-activity header label{color:var(--text-muted);gap:4px;font-size:9.5px;font-weight:650;display:grid}.lesson-activity header .input{height:34px;min-height:34px}.lesson-activity>.textarea{border:0;border-top:1px solid var(--border);min-height:88px;box-shadow:none;resize:vertical;border-radius:0}.lesson-add-activity{justify-self:start}.lesson-builder-details-footer{border-top:1px solid var(--border);padding-top:20px}.lesson-reflection-fields{gap:16px;display:grid}.lesson-reflection-fields .textarea{min-height:112px}.lesson-share-options{border-top:1px solid var(--border);gap:15px;padding-top:20px;display:grid}.lesson-share-options>div:first-child{gap:4px;display:grid}.lesson-share-options h3{margin:0;font-size:13px}.lesson-share-options p{color:var(--text-muted);margin:0;font-size:11px;line-height:1.5}.lesson-share-option-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.lesson-share-option-list .switch-label{border:1px solid var(--border);background:var(--surface-muted);border-radius:9px;min-height:44px;padding:9px 10px}.lesson-preview{position:sticky;top:80px;overflow:hidden}.lesson-preview-header{color:#fff;background:var(--accent);grid-template-columns:44px minmax(0,1fr);align-content:center;gap:14px;min-height:155px;padding:24px;display:grid}.lesson-preview-header>span{width:42px;height:42px;color:var(--accent);background:#fff;border-radius:11px;place-items:center;display:grid}.lesson-preview-header>span svg{width:21px}.lesson-preview-header>div{gap:5px;min-width:0;display:grid}.lesson-preview-header small{opacity:.8;letter-spacing:.09em;text-transform:uppercase;font-size:9.5px;font-weight:720}.lesson-preview-header h2{overflow-wrap:anywhere;letter-spacing:-.8px;margin:0;font-size:24px;line-height:1.08}.lesson-preview-header p{opacity:.82;margin:0;font-size:10.5px;line-height:1.45}.lesson-preview-body{display:grid}.lesson-preview-body>section{border-bottom:1px solid var(--border);gap:7px;padding:17px 18px;display:grid}.lesson-preview-body h3{letter-spacing:.01em;margin:0;font-size:11px}.lesson-preview-body p{color:var(--text-muted);white-space:pre-wrap;margin:0;font-size:11.5px;line-height:1.55}.lesson-preview-section-title{justify-content:space-between;align-items:center;gap:12px;display:flex}.lesson-preview-flow{margin:0;padding:0;list-style:none;display:grid}.lesson-preview-flow li{border-bottom:1px solid var(--border);grid-template-columns:38px minmax(0,1fr);gap:10px;min-height:60px;padding:10px 0;display:grid}.lesson-preview-flow li:last-child{border-bottom:0}.lesson-preview-flow li>span{width:34px;height:34px;color:var(--accent);background:var(--accent-soft);border-radius:50%;place-items:center;font-size:10.5px;font-weight:720;display:grid}.lesson-preview-flow li>div{align-content:start;gap:4px;display:grid}.lesson-preview-flow strong{font-size:11.5px}.lesson-student-preview{align-content:start;min-height:420px}.lesson-student-preview-note{border-bottom:1px solid var(--border);background:var(--surface-muted);grid-template-columns:32px minmax(0,1fr);align-items:center;gap:11px;min-height:74px;padding:15px 18px;display:grid}.lesson-student-preview-note>svg{width:19px;color:var(--accent)}.lesson-student-preview-note strong{font-size:11.5px}.lesson-student-preview-note p{margin-top:3px;font-size:10.5px}.lesson-preview-empty{min-height:210px;color:var(--text-muted);text-align:center;align-content:center;justify-items:center;gap:7px;padding:26px;display:grid}.lesson-preview-empty>svg{color:var(--accent)}.lesson-preview-empty strong{color:var(--text);font-size:12px}.lesson-preview-empty p{max-width:280px;font-size:10.5px}.lesson-private-note{min-height:78px;color:var(--text-muted);background:var(--accent);grid-template-columns:30px minmax(0,1fr);align-items:center;gap:10px;margin-top:auto;padding:15px 18px;display:grid}@supports (color:color-mix(in lab,red,red)){.lesson-private-note{background:color-mix(in srgb,var(--accent) 4%,var(--surface))}}.lesson-private-note>svg{width:17px;color:var(--accent)}.lesson-private-note strong{color:var(--text);font-size:11px}.lesson-private-note p{margin-top:3px;font-size:10.5px}.lesson-preview-exporting{color:#10213f;background:#fff;width:760px!important;max-width:none!important;position:static!important}@media(max-width:980px){.lesson-builder-toolbar{grid-template-columns:1fr;align-items:stretch;gap:12px}.lesson-builder-actions{border-top:1px solid var(--border);border-left:0;padding:10px 0 0}.lesson-builder-layout{grid-template-columns:1fr}.lesson-preview{position:static}.lesson-template-library-header{grid-template-columns:42px minmax(0,1fr)}.lesson-template-library-actions{grid-column:2;justify-content:flex-start}.lesson-template-list{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:760px){.practice-fields,.student-tool-source-planner,.student-tool-source-actions,.teacher-tool-connection,.teacher-tool-connection .student-tool-source-actions{grid-template-columns:1fr}.practice-history-header{flex-direction:column;align-items:flex-start}.practice-history-actions{justify-content:flex-start;width:100%}.practice-stats>div{min-height:70px;padding:12px}.practice-session-row{grid-template-columns:52px minmax(0,1fr) 36px;padding-left:12px}.assignment-setup-grid{grid-template-columns:1fr}.assignment-setup-grid .form-span{grid-column:auto}.assignment-unavailable{grid-template-columns:1fr auto}.unavailable-date-list{grid-column:1/-1}.assignment-plan-header{flex-direction:column;align-items:flex-start}.assignment-plan-actions{justify-content:flex-start;width:100%}.assignment-block{grid-template-columns:24px minmax(120px,1fr) 84px 36px;row-gap:7px}.assignment-block>.input:first-of-type{grid-column:2/4}.assignment-block>.input:nth-of-type(2){grid-area:2/2}.assignment-block-duration{grid-area:2/3}.assignment-block-order{grid-area:2/4}.assignment-block>.button:last-child{grid-area:1/4}.assignment-manual-add{grid-template-columns:1fr 1fr}.assignment-manual-add .field:first-child{grid-column:1/-1}.assignment-manual-add .button{align-self:end}.time-zone-mode-row{flex-direction:column;align-items:flex-start}.time-zone-mode-row p{text-align:left}.time-zone-plan-fields{grid-template-columns:1fr 1fr}.time-zone-plan-fields .field:first-child{grid-column:1/-1}.time-zone-people{grid-template-columns:1fr}.time-zone-swap{justify-self:center;transform:rotate(90deg)}.time-zone-results-header{flex-direction:column;align-items:flex-start}.time-zone-result-actions{justify-content:flex-start;width:100%}.time-zone-match{grid-template-columns:92px minmax(0,1fr) 30px;row-gap:9px}.time-zone-match-status{grid-row:1/3}.time-zone-match-place:nth-of-type(2){grid-area:1/2}.time-zone-match-divider{grid-area:1/3/3}.time-zone-match-place:nth-of-type(4){border-top:1px solid var(--border);grid-area:2/2;padding-top:8px}.time-zone-match-check{grid-area:1/3}.rate-planner-topbar{grid-template-columns:1fr;align-items:stretch;gap:12px}.rate-planner-topbar>div:first-child{grid-template-columns:1fr;align-items:flex-start;gap:10px}.time-zone-selected{grid-template-columns:36px minmax(0,1fr)}.time-zone-selected>.button{grid-column:2;justify-self:start}.rate-planner-actions{border-top:1px solid var(--border);border-left:0;grid-template-columns:repeat(2,minmax(0,1fr));width:100%;padding:10px 0 0}.rate-planner-layout{grid-template-columns:1fr}.rate-result{position:static}.rate-field-grid-three{grid-template-columns:1fr 1fr}.rate-sharing{flex-direction:column;align-items:flex-start}.lesson-builder-mode{grid-template-columns:1fr;align-items:flex-start;gap:10px}.lesson-builder-actions{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.lesson-builder-actions .button{justify-content:flex-start}.lesson-template-library-header{grid-template-columns:38px minmax(0,1fr);align-items:start}.lesson-template-library-icon{width:36px;height:36px}.lesson-template-library-title-row{flex-direction:column;align-items:flex-start;gap:5px}.lesson-template-library-actions{border-top:1px solid var(--border);grid-column:1/-1;grid-template-columns:repeat(2,minmax(0,1fr));width:100%;padding-top:10px;display:grid}.lesson-template-library-actions .button{justify-content:center}.lesson-template-list{grid-template-columns:1fr}.lesson-template-item-meta small{display:none}.lesson-plan-library{flex-direction:column;align-items:stretch}.lesson-plan-library-actions{border-top:1px solid var(--border);justify-content:flex-start;padding-top:8px}.lesson-builder-details,.lesson-share-option-list{grid-template-columns:1fr}.lesson-builder-details .form-span{grid-column:auto}.lesson-date-field{grid-template-columns:1fr}.lesson-date-field .button{justify-self:start}.lesson-activity>header{grid-template-columns:32px minmax(0,1fr) 34px;align-items:start;padding-inline:10px}.lesson-activity>header>span{grid-area:1/1/3}.lesson-activity-copy{grid-area:1/2}.lesson-activity header label{grid-area:2/2;width:88px}.lesson-activity>header>.button{grid-area:1/3}.lesson-plan-source-grid,.lesson-plan-source-list>div{grid-template-columns:1fr}.lesson-plan-source-card{min-height:0}.lesson-connected-banner{grid-template-columns:auto minmax(0,1fr)}.lesson-connected-banner>.status{grid-column:2;justify-self:start}.lesson-workflow-bridge>header,.lesson-note-publisher>header{flex-direction:column;align-items:flex-start;gap:8px}.lesson-note-destinations{grid-template-columns:1fr}.lesson-note-destinations article{border-right:0;border-bottom:1px solid var(--border)}.lesson-note-destinations article:last-child{border-bottom:0}.lesson-note-publisher>footer{flex-direction:column;align-items:stretch}.lesson-note-publisher>footer .button{justify-content:center}}@media(max-width:520px){.lesson-workflow-actions{grid-template-columns:1fr}.lesson-workflow-actions button{border-right:0;border-bottom:1px solid var(--border)}.lesson-workflow-actions button:last-child{border-bottom:0}.lesson-note-destinations article{grid-template-columns:34px minmax(0,1fr)}.lesson-note-destinations article>.status{grid-column:2;justify-self:start}.lesson-linked-materials{grid-template-columns:1fr}.lesson-material-option{grid-template-columns:auto minmax(0,1fr)}.lesson-material-option .status{grid-column:2;justify-self:start}.weekday-options{grid-template-columns:repeat(4,1fr)}.assignment-unavailable,.assignment-manual-add{grid-template-columns:1fr}.unavailable-date-list,.assignment-manual-add .field:first-child{grid-column:auto}.assignment-generate{flex-direction:column;align-items:stretch}.assignment-generate .button{justify-content:center}.planner-summary-cards>div{min-height:68px;padding:11px}.planner-summary-cards strong{font-size:14px}.assignment-block{grid-template-columns:24px minmax(0,1fr) 36px}.assignment-block>.input:first-of-type{grid-column:2}.assignment-block>.input:nth-of-type(2){grid-area:2/2}.assignment-block-duration{grid-area:3/2}.assignment-block-order{flex-direction:column;grid-area:2/3/4;align-self:center}.assignment-block>.button:last-child{grid-column:3}.time-zone-plan-fields,.time-zone-person-fields{grid-template-columns:1fr}.time-zone-plan-fields .field:first-child,.time-zone-person-fields .field:nth-child(2){grid-column:auto}.time-zone-search-action{flex-direction:column;align-items:stretch}.time-zone-search-action .button{justify-content:center}.time-zone-match{grid-template-columns:1fr 28px;padding:14px}.time-zone-match-status{grid-area:auto/1/auto/-1;align-items:center;display:flex}.time-zone-match-place:nth-of-type(2),.time-zone-match-place:nth-of-type(4){grid-area:auto/1}.time-zone-match-divider{grid-area:2/2/4}.time-zone-match-check{grid-area:1/2}.rate-field-grid,.rate-field-grid-three{grid-template-columns:1fr}.rate-result-hero{min-height:220px}.rate-metrics{grid-template-columns:1fr}.rate-metrics>div:nth-child(odd){border-right:0}.rate-metrics>div+div{border-top:1px solid var(--border)}.rate-scenario-tab{min-width:138px}}@media print{.public-header,.app-sidebar,.app-topbar,.tools-nav,.page-header,.focus-tool,.tool-workspace-bridge,.public-footer,.practice-history-actions,.practice-history-footer,.assignment-planner-setup,.assignment-plan-actions,.assignment-manual-add,.assignment-plan-footer,.assignment-block-order,.assignment-block>.button:last-child,.rate-planner .no-print,.lesson-builder .no-print{display:none!important}.tools-page,.workspace-tool-page,.practice-tool,.assignment-planner,.lesson-builder{width:100%;margin:0;padding:0}.practice-history,.assignment-plan,.rate-result,.rate-comparison,.lesson-preview{box-shadow:none;border:0;position:static}}@media(max-width:560px){.invite-page{align-content:start;gap:22px;padding:22px 14px}.invite-card{padding:28px 20px}.invite-card h1{font-size:25px}.invite-summary{grid-template-columns:1fr}.invite-summary>span+span{border-left:0;border-top:1px solid var(--border)}.invite-verification-actions{flex-direction:column}.invite-verification-actions .button{width:100%}}.onboarding-page{background:var(--surface-muted);min-height:100vh;padding:24px clamp(20px,4vw,56px) 64px}.onboarding-header{justify-content:space-between;align-items:center;gap:20px;width:min(100%,1120px);min-height:48px;margin:0 auto 32px;display:flex}.onboarding-header .inline-link{color:var(--text-muted)}.onboarding-shell{border:1px solid var(--border);background:var(--surface);border-radius:20px;justify-items:center;gap:24px;width:min(100%,960px);margin:0 auto;padding:clamp(30px,5vw,56px);display:grid;box-shadow:0 24px 70px #14275e17}.onboarding-progress{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;width:min(100%,660px);margin:0 0 8px;padding:0;list-style:none;display:grid}.onboarding-progress li{border:1px solid var(--border);min-width:0;color:var(--text-faint);border-radius:9px;align-items:center;gap:8px;padding:9px 11px;font-size:11px;font-weight:650;display:flex}.onboarding-progress li>span{width:23px;height:23px;color:var(--text-muted);background:var(--surface-muted);border-radius:50%;flex:none;place-items:center;font-size:10px;display:grid}.onboarding-progress li>span svg{width:13px}.onboarding-progress .onboarding-progress-complete{color:var(--success);border-color:var(--success)}@supports (color:color-mix(in lab,red,red)){.onboarding-progress .onboarding-progress-complete{border-color:color-mix(in srgb,var(--success) 24%,var(--border))}}.onboarding-progress .onboarding-progress-complete{background:var(--success)}@supports (color:color-mix(in lab,red,red)){.onboarding-progress .onboarding-progress-complete{background:color-mix(in srgb,var(--success) 6%,var(--surface))}}.onboarding-progress .onboarding-progress-complete>span{color:#fff;background:var(--success)}.onboarding-progress .onboarding-progress-current{color:var(--accent);border-color:var(--accent)}@supports (color:color-mix(in lab,red,red)){.onboarding-progress .onboarding-progress-current{border-color:color-mix(in srgb,var(--accent) 38%,var(--border))}}.onboarding-progress .onboarding-progress-current{background:var(--surface-accent)}.onboarding-progress .onboarding-progress-current>span{color:#fff;background:var(--accent)}.onboarding-heading{text-align:center;justify-items:center;gap:10px;max-width:680px;display:grid}.onboarding-heading>span{color:var(--accent);letter-spacing:.08em;text-transform:uppercase;font-size:11px;font-weight:750}.onboarding-heading h1{color:var(--text);letter-spacing:-1.6px;margin:0;font-size:clamp(32px,4vw,46px);line-height:1.08}.onboarding-heading p{color:var(--text-muted);margin:0;font-size:15px;line-height:1.65}.onboarding-choices{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;width:100%;display:grid}.onboarding-choice{border:1px solid var(--border);border-radius:var(--radius-md);min-width:0;min-height:214px;color:var(--text);background:var(--surface);font:inherit;text-align:left;cursor:pointer;grid-template-rows:auto 1fr auto;justify-items:start;gap:18px;padding:22px;transition:transform .16s,border-color .16s,box-shadow .16s,background .16s;display:grid}.onboarding-choice:hover{border-color:var(--accent);transform:translateY(-2px)}@supports (color:color-mix(in lab,red,red)){.onboarding-choice:hover{border-color:color-mix(in srgb,var(--accent) 40%,var(--border))}}.onboarding-choice:hover{box-shadow:0 12px 28px #14275e14}.onboarding-choice:focus-visible{box-shadow:var(--focus);outline:0}.onboarding-choice-selected{border-color:var(--accent);background:var(--surface-accent);box-shadow:0 12px 28px #14275e17}.onboarding-choice-icon{width:46px;height:46px;color:var(--accent);background:var(--accent-soft);border-radius:12px;place-items:center;display:grid}.onboarding-choice-icon svg{width:22px}.onboarding-choice-copy{align-content:start;gap:8px;min-width:0;display:grid}.onboarding-choice-copy strong{font-size:17px}.onboarding-choice-copy small{color:var(--text-muted);font-size:12px;line-height:1.55}.onboarding-choice-check{border:1px solid var(--border);color:#fff;background:var(--surface);border-radius:50%;justify-self:end;place-items:center;width:24px;height:24px;display:grid}.onboarding-choice-selected .onboarding-choice-check{border-color:var(--accent);background:var(--accent)}.onboarding-choice-check svg{width:14px}.onboarding-next{border:1px solid var(--border);background:var(--surface-muted);border-radius:11px;align-content:center;gap:5px;width:100%;min-height:78px;padding:15px 18px;display:grid}.onboarding-next strong{font-size:12px}.onboarding-next p{color:var(--text-muted);margin:0;font-size:12px;line-height:1.5}.onboarding-shell>.button{min-width:min(100%,300px)}.onboarding-shell>.button svg{width:17px}.onboarding-footnote{max-width:620px;color:var(--text-faint);text-align:center;margin:-8px 0 0;font-size:11px;line-height:1.55}.onboarding-error{width:100%;color:var(--danger)}@media(prefers-reduced-motion:reduce){.onboarding-choice{transition:none}.onboarding-choice:hover{transform:none}}@media(max-width:760px){.onboarding-page{padding-inline:14px}.onboarding-header{margin-bottom:18px;padding-inline:4px}.onboarding-shell{border-radius:16px;padding:28px 18px}.onboarding-progress{grid-template-columns:1fr}.onboarding-progress li:not(.onboarding-progress-current){display:none}.onboarding-choices{grid-template-columns:1fr}.onboarding-choice{grid-template-rows:auto;grid-template-columns:auto minmax(0,1fr) auto;align-items:start;gap:14px;min-height:0;padding:18px}.onboarding-choice-check{align-self:center}.onboarding-heading h1{letter-spacing:-1px;font-size:32px}}@keyframes rotate{to{transform:rotate(360deg)}}.route-loading{min-height:70vh;color:var(--text-muted);align-content:center;justify-items:center;gap:10px;display:grid}.help-page{width:100%;color:var(--text)}.help-page-public{background:var(--bg)}.help-hero{color:#fff;background:radial-gradient(circle at 82% 18%,#436fe652,#0000 34%),#111d45}.help-hero-inner{text-align:center;align-content:center;justify-items:center;width:min(100% - 48px,1120px);min-height:380px;margin-inline:auto;padding:64px 0;display:grid}.help-eyebrow{color:#9db8ff;letter-spacing:.12em;text-transform:uppercase;align-items:center;gap:8px;margin-bottom:18px;font-size:11px;font-weight:760;display:inline-flex}.help-hero h1{letter-spacing:-.055em;text-wrap:balance;max-width:760px;margin:0;font-size:clamp(42px,5.4vw,68px);font-weight:750;line-height:1.02}.help-hero-inner>p{color:#ffffffb8;text-wrap:balance;max-width:680px;margin:20px 0 30px;font-size:16px;line-height:1.65}.help-search{align-items:center;width:min(100%,720px);display:flex;position:relative}.help-search>svg{color:#6b7590;pointer-events:none;position:absolute;left:19px}.help-search input{color:#111a39;background:#fff;border:1px solid #ffffff3d;border-radius:11px;width:100%;height:58px;padding:0 52px;font-size:15px;box-shadow:0 18px 38px #030a2038}.help-search input::placeholder{color:#747d94}.help-search input:focus-visible{outline:0;box-shadow:0 0 0 4px #82a3ff59,0 18px 38px #030a2038}.help-hero-inner>small{color:#ffffff85;margin-top:13px;font-size:11px}.help-page-app .help-hero{border-radius:18px;overflow:hidden}.help-page-app .help-hero-inner{min-height:310px;padding:46px 28px}.help-page-app .help-hero h1{font-size:clamp(38px,4.7vw,58px)}.help-main{grid-template-columns:250px minmax(0,1fr);align-items:start;gap:64px;width:min(100% - 48px,1120px);margin:0 auto;padding:72px 0 94px;display:grid}.help-topic-rail{min-width:0;position:sticky;top:100px}.help-topic-rail h2{margin:0 0 18px;font-size:15px}.help-category-nav{border-top:1px solid var(--border);display:grid}.help-category-nav button{border:0;border-bottom:1px solid var(--border);min-width:0;min-height:52px;color:var(--text-muted);text-align:left;cursor:pointer;background:0 0;grid-template-columns:20px minmax(0,1fr) auto;align-items:center;gap:10px;padding:8px 5px;font-size:12px;transition:color .15s,padding .15s;display:grid}.help-category-nav button:hover{color:var(--text);padding-left:9px}.help-category-nav button[aria-pressed=true]{color:var(--accent);font-weight:690}.help-category-nav button svg{color:currentColor}.help-category-nav button span{min-width:0}.help-category-nav button small{min-width:22px;color:var(--text-faint);text-align:right;font-size:10px}.help-answers{min-width:0}.help-result-count{color:var(--text-muted);margin:0 0 28px;font-size:12px}.help-result-count strong{color:var(--text);font-size:14px}.help-answer-section+.help-answer-section{margin-top:58px}.help-answer-section>header{grid-template-columns:auto minmax(0,1fr);align-items:start;gap:14px;margin-bottom:17px;display:grid}.help-section-icon{width:40px;height:40px;color:var(--accent);background:var(--accent-soft);border-radius:10px;place-items:center;display:grid}.help-answer-section h2{letter-spacing:-.4px;margin:1px 0 5px;font-size:21px}.help-answer-section header p{color:var(--text-muted);margin:0;font-size:12.5px;line-height:1.55}.help-faq-list{border-top:1px solid var(--border)}.help-faq{border-bottom:1px solid var(--border);scroll-margin-top:100px}.help-faq summary{min-height:68px;color:var(--text);cursor:pointer;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:20px;padding:14px 3px;font-size:14px;font-weight:680;line-height:1.45;list-style:none;display:grid}.help-faq summary::-webkit-details-marker{display:none}.help-faq summary>svg{color:var(--text-faint);transition:transform .18s,color .18s}.help-faq[open] summary>svg{color:var(--accent);transform:rotate(180deg)}.help-faq[open] summary{color:var(--accent)}.help-answer-copy{max-width:720px;padding:0 42px 23px 3px}.help-answer-copy p{color:var(--text-muted);margin:0;font-size:13px;line-height:1.72}.help-answer-copy p+p{margin-top:10px}.help-answer-link{width:fit-content;color:var(--accent);align-items:center;gap:7px;margin-top:14px;font-size:12.5px;font-weight:700;text-decoration:none;display:inline-flex}.help-answer-link:hover{text-underline-offset:3px;text-decoration:underline}.help-empty{border:1px solid var(--border);border-radius:var(--radius-md);min-height:360px;color:var(--text-muted);text-align:center;align-content:center;justify-items:center;padding:40px;display:grid}.help-empty h2{color:var(--text);margin:16px 0 8px;font-size:20px}.help-empty p{max-width:480px;margin:0 0 20px;font-size:13px;line-height:1.6}.help-contact{color:#fff;background:#111d45;border-radius:18px;grid-template-columns:minmax(0,.72fr) minmax(440px,1.28fr);align-items:start;gap:54px;width:min(100% - 48px,1120px);margin:0 auto 100px;padding:clamp(34px,5vw,58px);scroll-margin-top:96px;display:grid;box-shadow:0 24px 65px #111d4524}.help-contact-intro>span{color:#dbe5ff;background:#ffffff1c;border-radius:11px;place-items:center;width:44px;height:44px;margin-bottom:24px;display:grid}.help-contact-intro h2{letter-spacing:-.04em;margin:0;font-size:clamp(29px,3.5vw,43px);line-height:1.06}.help-contact-intro p{color:#ffffffad;max-width:380px;margin:16px 0;font-size:13px;line-height:1.65}.help-contact-intro a{color:#fff;text-underline-offset:3px;font-size:13px;font-weight:700}.help-contact-form,.help-contact-gate{color:#111a39;background:#fff;border:1px solid #ffffff29;border-radius:13px;padding:26px;box-shadow:0 18px 45px #030a202e}.help-contact-form{gap:17px;display:grid}.help-contact-form .field-label{color:#111a39}.help-contact-form .input{color:#111a39;background:#fff;border-color:#dfe4ee}.help-contact-form .field-hint{color:#68748b}.help-signed-in{color:#68748b;align-items:center;gap:7px;margin:0 0 2px;font-size:11px;display:flex}.help-signed-in strong{color:#111a39}.help-email-note,.help-safety-note{grid-template-columns:auto minmax(0,1fr);align-items:start;gap:9px;display:grid}.help-email-note{color:#39549d}.help-safety-note{color:#8b5100}.help-email-note p,.help-safety-note p{margin:0;font-size:10.5px;line-height:1.5}.help-contact-form>.button{justify-self:start}.help-contact-gate{align-content:center;justify-items:start;min-height:300px;display:grid}.help-contact-gate>span{color:#2454d7;background:#eaf0ff;border-radius:50%;place-items:center;width:48px;height:48px;margin-bottom:19px;display:grid}.help-contact-gate h3{margin:0;font-size:22px}.help-contact-gate p{color:#667089;margin:11px 0 22px;font-size:12.5px;line-height:1.6}.help-page-app .help-main{width:100%}.help-page-app .help-contact{width:100%;margin-bottom:0}@media(prefers-reduced-motion:reduce){.help-category-nav button,.help-faq summary>svg{transition:none}.help-category-nav button:hover{padding-left:5px}}@media(max-width:860px){.help-main{grid-template-columns:1fr;gap:38px}.help-topic-rail{position:static}.help-category-nav{scrollbar-width:thin;border:0;grid-auto-columns:minmax(190px,1fr);grid-auto-flow:column;overflow-x:auto}.help-category-nav button{border:1px solid var(--border);border-radius:9px;padding-inline:12px}.help-category-nav button+button{margin-left:8px}.help-category-nav button:hover{padding-left:12px}.help-contact{grid-template-columns:1fr;gap:34px}.help-contact-intro p{max-width:580px}}@media(max-width:600px){.help-hero-inner{width:calc(100% - 28px);min-height:340px;padding-block:48px}.help-hero h1{font-size:42px}.help-hero-inner>p{margin-block:16px 24px;font-size:14px}.help-search input{height:54px;padding-right:18px;font-size:14px}.help-hero-inner>small{max-width:300px;line-height:1.5}.help-page-app .help-hero{border-radius:14px}.help-page-app .help-hero-inner{min-height:330px;padding-inline:17px}.help-main{width:calc(100% - 28px);padding:52px 0 68px}.help-page-app .help-main{width:100%}.help-answer-section+.help-answer-section{margin-top:46px}.help-faq summary{min-height:64px;font-size:13.5px}.help-answer-copy{padding-right:8px}.help-contact{border-radius:14px;width:calc(100% - 28px);margin-bottom:68px;padding:28px 18px}.help-page-app .help-contact{width:100%}.help-contact-form,.help-contact-gate{padding:20px 17px}.help-contact-form>.button,.help-contact-gate .marketing-button{width:100%}}.public-frame{--marketing-ink:#111a39;--marketing-blue:#1d4fd7;--marketing-blue-deep:#173dab;--marketing-pale:#f3f6fd;--marketing-line:#dfe5ef;--marketing-muted:#677189;background:var(--bg);overflow-x:clip}.public-header{border-color:var(--border);grid-template-columns:auto minmax(0,1fr) auto;gap:36px;height:76px;padding-inline:clamp(24px,4.5vw,76px)}@supports (color:color-mix(in lab,red,red)){.public-header{border-color:color-mix(in srgb,var(--border) 82%,transparent)}}.public-header{background:var(--surface)}@supports (color:color-mix(in lab,red,red)){.public-header{background:color-mix(in srgb,var(--surface) 92%,transparent)}}.public-brand .brand-logo{letter-spacing:-.8px;font-size:25px}.public-brand .brand-mark{width:29px;height:29px}.public-nav{justify-content:center;align-items:center;gap:clamp(20px,2.5vw,39px);display:flex}.public-nav a,.public-sign-in{color:var(--text-muted);font-size:13px;font-weight:620;text-decoration:none;transition:color .16s;position:relative}.public-nav a:hover,.public-nav a.active,.public-sign-in:hover{color:var(--text)}.public-nav a.active:after{background:var(--marketing-blue);content:"";border-radius:2px;height:2px;position:absolute;bottom:-13px;left:0;right:0}.public-header-actions{justify-content:flex-end;align-items:center;gap:18px;display:flex}.public-menu-button{border:1px solid var(--border);width:44px;height:44px;color:var(--text);background:var(--surface);cursor:pointer;border-radius:10px;place-items:center;display:none}.public-mobile-menu{z-index:44;border-bottom:1px solid var(--border);background:var(--surface);padding:14px 24px 24px;display:none;position:fixed;top:76px;left:0;right:0;box-shadow:0 26px 48px #111a391f}.public-mobile-menu nav{display:grid}.public-mobile-menu nav a{border-bottom:1px solid var(--border);min-height:50px;color:var(--text);align-items:center;font-weight:650;text-decoration:none;display:flex}.public-mobile-actions{grid-template-columns:1fr 1fr;gap:10px;margin-top:18px;display:grid}.public-footer{align-items:start;justify-content:initial;min-height:260px;color:var(--text-muted);background:var(--surface);grid-template-columns:minmax(220px,1.4fr) 1fr .65fr auto;gap:38px;padding:62px clamp(24px,5vw,80px) 32px;display:grid}.footer-brand{justify-items:start;gap:13px;display:grid}.footer-brand>span{max-width:230px;line-height:1.55}.public-footer .footer-links{gap:13px;display:grid}.public-footer .footer-links a{width:fit-content;text-decoration:none}.public-footer .footer-links a:hover{color:var(--text)}.footer-preferences{justify-content:flex-end;align-items:center;gap:8px;display:flex}.footer-copyright{border-top:1px solid var(--border);grid-column:1/-1;padding-top:26px}.footer-copyright a{color:inherit;font-weight:700;text-decoration-color:currentColor}@supports (color:color-mix(in lab,red,red)){.footer-copyright a{-webkit-text-decoration-color:color-mix(in srgb,currentColor 38%,transparent);text-decoration-color:color-mix(in srgb,currentColor 38%,transparent)}}.footer-copyright a{text-underline-offset:3px}.footer-copyright a:hover{color:var(--accent);text-decoration-color:currentColor}.marketing-page{color:var(--text);background:var(--bg)}.marketing-section{width:min(100% - 48px,1240px);margin-inline:auto;padding-block:126px}.marketing-section-heading{gap:14px;display:grid}.marketing-section-heading.is-centered{text-align:center;max-width:850px;margin-inline:auto}.marketing-section-heading h2,.marketing-teacher-intro h2,.marketing-student-copy h2,.marketing-pricing-intro h2,.pricing-revenue h2,.marketing-closing h2{color:var(--text);letter-spacing:-.052em;text-wrap:balance;margin:0;font-size:clamp(38px,4.6vw,62px);font-weight:740;line-height:1.05}.marketing-eyebrow,.marketing-kicker{color:var(--marketing-blue);letter-spacing:.12em;text-transform:uppercase;font-size:11px;font-weight:780;line-height:1.4}.marketing-kicker{align-items:center;gap:9px;display:inline-flex}.marketing-kicker>span{background:currentColor;width:24px;height:1px}.marketing-button{border:1px solid #0000;border-radius:8px;justify-content:center;align-items:center;gap:9px;min-height:46px;padding:0 18px;font-size:13px;font-weight:720;text-decoration:none;transition:color .16s,background .16s,border-color .16s,transform .16s,box-shadow .16s;display:inline-flex}.marketing-button:hover{transform:translateY(-1px)}.marketing-button-primary{color:#fff;border-color:var(--marketing-blue);background:var(--marketing-blue);box-shadow:0 8px 18px #1d4fd729}.marketing-button-primary:hover{border-color:var(--marketing-blue-deep);background:var(--marketing-blue-deep);box-shadow:0 10px 24px #1d4fd73d}.marketing-button-ghost{color:var(--text);border-color:var(--border-strong);background:var(--surface)}.marketing-button-ghost:hover{border-color:var(--marketing-blue);color:var(--marketing-blue)}.marketing-button-light{color:var(--marketing-blue-deep);background:#fff;border-color:#fff;box-shadow:0 10px 22px #030d2c33}.marketing-text-link{color:var(--marketing-blue);align-items:center;gap:8px;font-size:13px;font-weight:730;text-decoration:none;display:inline-flex}.marketing-hero{border-bottom:1px solid var(--marketing-line);background:linear-gradient(#fff 0% 78%,#f8faff)}:root[data-theme=dark] .marketing-hero{background:linear-gradient(180deg,var(--bg) 0%,var(--bg) 78%,var(--surface-muted) 100%)}.marketing-hero-inner{grid-template-columns:minmax(440px,.82fr) minmax(610px,1.18fr);align-items:center;gap:clamp(44px,5vw,86px);max-width:1420px;min-height:650px;margin-inline:auto;padding:76px clamp(24px,5vw,80px) 64px;display:grid}.marketing-hero-copy{z-index:2;position:relative}.marketing-hero-copy h1{max-width:720px;color:var(--marketing-ink);letter-spacing:-.065em;text-wrap:balance;margin:24px 0 26px;font-size:clamp(54px,5.15vw,78px);font-weight:760;line-height:.98}:root[data-theme=dark] .marketing-hero-copy h1{color:var(--text)}.marketing-hero-copy>p{max-width:610px;color:var(--marketing-muted);margin:0;font-size:17px;line-height:1.7}.marketing-actions{flex-wrap:wrap;gap:10px;margin-top:32px;display:flex}.marketing-access-note{max-width:550px;color:var(--text-faint);margin-top:18px;font-size:11px;line-height:1.55;display:block}.marketing-hero-product{min-width:0;animation:.75s cubic-bezier(.2,.8,.2,1) both marketing-product-in;transform:translate(4%)}.marketing-proof-strip{border-top:1px solid var(--marketing-line);min-height:78px;color:var(--marketing-muted);background:#f7f9fed6;justify-content:center;align-items:center;gap:clamp(34px,7vw,112px);padding:15px 24px;display:flex}.marketing-proof-strip span{align-items:center;gap:9px;font-size:12px;font-weight:670;display:inline-flex}.marketing-proof-strip svg{color:var(--marketing-blue)}.marketing-product-preview{color:#15203f;background:#fff;border:1px solid #dbe2ef;border-radius:13px;grid-template-columns:56px minmax(0,1fr);min-width:590px;min-height:460px;display:grid;overflow:hidden;box-shadow:0 28px 75px #15264f26}.marketing-preview-sidebar{background:#fbfcfe;border-right:1px solid #e6eaf2;flex-direction:column;align-items:center;gap:20px;padding:16px 9px;display:flex}.marketing-preview-sidebar .brand-mark{width:28px;height:28px}.marketing-preview-nav{gap:8px;display:grid}.marketing-preview-nav span{color:#5c667b;border-radius:8px;place-items:center;width:34px;height:34px;display:grid}.marketing-preview-nav .is-active{color:#1d4fd7;background:#eaf0ff}.marketing-preview-avatar{color:#1d4fd7;background:#eaf0ff;border-radius:50%;place-items:center;width:29px;height:29px;margin-top:auto;font-size:8px;font-weight:800;display:grid}.marketing-preview-body{min-width:0;padding:22px 23px}.marketing-preview-header{justify-content:space-between;align-items:center;gap:14px;margin-bottom:19px;display:flex}.marketing-preview-header>div{gap:3px;display:grid}.marketing-preview-header span{color:#5c667b;letter-spacing:.06em;text-transform:uppercase;font-size:8px;font-weight:700}.marketing-preview-header h3{letter-spacing:-.4px;margin:0;font-size:18px}.marketing-preview-header .marketing-preview-action{color:#fff;letter-spacing:0;text-transform:none;background:#1d4fd7;border-radius:6px;align-items:center;min-height:30px;padding:0 10px;font-size:8px;display:inline-flex}.marketing-preview-header .marketing-preview-action.is-outline{color:#1d4fd7;background:#fff;border:1px solid #cfd9f6}.marketing-preview-grid{grid-template-columns:1fr .78fr .78fr;gap:11px;display:grid}.marketing-preview-panel{background:#fff;border:1px solid #e0e5ed;border-radius:8px;min-width:0;overflow:hidden}.marketing-preview-timeline{grid-column:span 2;min-height:224px;padding:14px}.marketing-preview-upcoming{min-height:224px;padding:14px}.marketing-preview-panel-title{border-bottom:1px solid #edf0f5;justify-content:space-between;align-items:center;gap:8px;min-height:22px;padding-bottom:10px;display:flex}.marketing-preview-panel-title strong{font-size:9px}.marketing-preview-panel-title>span,.marketing-preview-panel-title svg{color:#5c667b;font-size:7px}.marketing-timeline-row{border-bottom:1px solid #f0f2f6;grid-template-columns:31px 4px minmax(0,1fr) auto;align-items:center;gap:8px;min-height:52px;display:grid}.marketing-timeline-row time{color:#5c667b;font-size:7px}.marketing-timeline-line{background:#1d4fd7;border-radius:4px;width:3px;height:30px}.marketing-timeline-row>div,.marketing-avatar-row>div,.marketing-task-row>div,.marketing-mini-date>div{gap:3px;min-width:0;display:grid}.marketing-timeline-row strong,.marketing-avatar-row b,.marketing-task-row b,.marketing-mini-date b{text-overflow:ellipsis;white-space:nowrap;font-size:8px;overflow:hidden}.marketing-timeline-row small,.marketing-avatar-row small,.marketing-task-row small,.marketing-mini-date small{color:#5c667b;font-size:7px}.marketing-preview-chip{color:#1d4fd7;background:#eaf0ff;border-radius:10px;align-items:center;min-height:18px;padding:0 6px;font-size:6px;font-weight:750;display:inline-flex}.marketing-preview-chip.is-soft{color:#5c667b;background:#f1f3f7}.marketing-mini-date{border-bottom:1px solid #f0f2f6;grid-template-columns:20px 21px 1fr;align-items:center;gap:6px;min-height:53px;display:grid}.marketing-mini-date>strong{font-size:12px}.marketing-mini-date>span{color:#5c667b;font-size:6px}.marketing-preview-compact-panel{padding:12px}.marketing-avatar-row{border-bottom:1px solid #f0f2f6;grid-template-columns:27px 1fr 6px;align-items:center;gap:7px;min-height:43px;display:grid}.marketing-avatar-row>span{color:#1d4fd7;background:#eaf0ff;border-radius:50%;place-items:center;width:25px;height:25px;font-size:6px;font-weight:800;display:grid}.marketing-avatar-row>i{background:#e4aa38;border-radius:50%;width:5px;height:5px}.marketing-avatar-row>i.is-blue{background:#1d4fd7}.marketing-preview-stat-panel{align-content:start;gap:8px;min-height:115px;padding:14px;display:grid}.marketing-preview-stat-panel>span{color:#5c667b;text-transform:uppercase;font-size:7px;font-weight:700}.marketing-preview-stat-panel>strong{letter-spacing:-.7px;font-size:21px}.marketing-preview-stat-panel>small{color:#5c667b;font-size:7px}.marketing-preview-progress{background:#edf0f5;border-radius:4px;height:4px;overflow:hidden}.marketing-preview-progress i{border-radius:inherit;background:#1d4fd7;width:74%;height:100%;display:block}.student-mode .marketing-next-lesson{grid-column:span 2;min-height:224px;padding:14px}.marketing-next-lesson-main{align-items:center;gap:18px;min-height:166px;padding-inline:8px;display:flex}.marketing-preview-date{color:#fff;background:#1d4fd7;border-radius:8px;align-content:center;place-items:center;width:64px;height:74px;display:grid}.marketing-preview-date b{font-size:24px;line-height:1}.marketing-preview-date small{margin-top:4px;font-size:7px}.marketing-next-lesson-main h4{margin:0 0 5px;font-size:14px}.marketing-next-lesson-main p{color:#5c667b;margin:0 0 12px;font-size:8px}.marketing-learning-progress{text-align:center;align-content:center;place-items:center;min-height:224px;padding:14px;display:grid}.marketing-learning-progress .marketing-preview-panel-title{width:100%;margin-bottom:12px}.marketing-progress-ring{background:conic-gradient(#1d4fd7 72%,#edf0f5 0);border-radius:50%;place-items:center;width:74px;height:74px;display:grid}.marketing-progress-ring:before{content:"";background:#fff;border-radius:50%;width:58px;height:58px}.marketing-progress-ring span{font-size:12px;font-weight:780;position:absolute}.marketing-learning-progress p{margin:10px 0 3px;font-size:9px;font-weight:700}.marketing-learning-progress>small{color:#5c667b;font-size:7px}.marketing-task-row{border-bottom:1px solid #f0f2f6;grid-template-columns:25px 1fr;align-items:center;gap:7px;min-height:43px;display:grid}.marketing-task-row>span{color:#1d4fd7}.marketing-workflow{padding-bottom:116px}.marketing-workflow-grid{border-top:1px solid var(--marketing-line);grid-template-columns:repeat(5,1fr);gap:0;margin-top:72px;display:grid;position:relative}.marketing-workflow-grid article{border-right:1px solid var(--marketing-line);min-height:230px;padding:34px 24px 0 0;position:relative}.marketing-workflow-grid article+article{padding-left:24px}.marketing-workflow-grid article:last-child{border-right:0}.marketing-workflow-index{color:var(--marketing-blue);background:var(--bg);padding-right:9px;font-size:9px;font-weight:800;position:absolute;top:-11px;left:0}.marketing-workflow-grid article+article .marketing-workflow-index{left:24px}.marketing-icon-box{width:40px;height:40px;color:var(--marketing-blue);background:var(--accent-soft);border-radius:8px;place-items:center;display:grid}.marketing-workflow-grid h3{margin:28px 0 9px;font-size:15px}.marketing-workflow-grid p{color:var(--text-muted);margin:0;font-size:12px;line-height:1.65}.marketing-product-section{background:var(--marketing-pale);border-radius:20px;width:min(100% - 48px,1320px);padding:110px clamp(24px,3.2vw,48px)}:root[data-theme=dark] .marketing-product-section{background:var(--surface-muted)}.marketing-product-heading{grid-template-columns:1fr .62fr;align-items:end}.marketing-product-heading>div{gap:14px;display:grid}.marketing-product-heading p{color:var(--text-muted);margin:0 0 5px;line-height:1.7}.marketing-view-switch{border:1px solid var(--marketing-line);background:var(--surface);border-radius:9px;width:fit-content;margin:42px auto 22px;padding:4px;display:flex}.marketing-view-switch button{min-width:126px;min-height:38px;color:var(--text-muted);cursor:pointer;background:0 0;border:0;border-radius:6px;font-size:12px;font-weight:690}.marketing-view-switch button.is-active{color:#fff;background:var(--marketing-blue)}.marketing-product-showcase{grid-template-columns:72px 1fr;width:min(100%,1050px);min-height:570px;margin-inline:auto}.marketing-product-showcase .marketing-preview-sidebar{padding-top:22px}.marketing-product-showcase .marketing-preview-nav span{width:42px;height:42px}.marketing-product-showcase .marketing-preview-body{padding:32px 34px}.marketing-product-showcase .marketing-preview-header h3{font-size:24px}.marketing-product-showcase .marketing-preview-grid{gap:15px}.marketing-product-showcase .marketing-preview-timeline,.marketing-product-showcase .marketing-preview-upcoming,.marketing-product-showcase .student-mode .marketing-next-lesson,.marketing-product-showcase .marketing-learning-progress{min-height:278px}.marketing-product-showcase .marketing-preview-stat-panel,.marketing-product-showcase .marketing-preview-compact-panel{min-height:150px}.marketing-product-showcase .marketing-timeline-row,.marketing-product-showcase .marketing-mini-date{min-height:66px}.marketing-product-showcase .marketing-avatar-row,.marketing-product-showcase .marketing-task-row{min-height:55px}.marketing-product-showcase .marketing-next-lesson-main{min-height:214px}.marketing-teacher-section{grid-template-columns:.85fr 1.15fr;align-items:start;gap:clamp(65px,9vw,140px);display:grid}.marketing-teacher-intro{gap:18px;display:grid;position:sticky;top:118px}.marketing-teacher-intro p{max-width:470px;color:var(--text-muted);margin:2px 0 0;line-height:1.7}.marketing-feature-list{border-top:1px solid var(--marketing-line)}.marketing-feature-list article{border-bottom:1px solid var(--marketing-line);grid-template-columns:28px 40px minmax(0,1fr) auto;align-items:center;gap:19px;min-height:135px;display:grid}.marketing-feature-number{color:var(--text-faint);align-self:start;padding-top:30px;font-size:9px;font-weight:800}.marketing-feature-list h3{margin:0 0 7px;font-size:16px}.marketing-feature-list p{color:var(--text-muted);margin:0;font-size:12px;line-height:1.65}.marketing-feature-list article>svg{color:var(--text-faint);transition:color .16s,transform .16s}.marketing-feature-list article:hover>svg{color:var(--marketing-blue);transform:translate(3px)}.marketing-student-section{background:var(--marketing-ink);overflow:hidden}.marketing-student-inner{grid-template-columns:.76fr 1.24fr;align-items:center;gap:80px;padding-block:118px;display:grid}.marketing-student-copy .marketing-eyebrow{color:#91abff}.marketing-student-copy h2{color:#fff;margin-top:15px}.marketing-student-copy>p{color:#ffffffa3;margin:24px 0 0;line-height:1.75}.marketing-student-points{gap:14px;margin-top:30px;display:grid}.marketing-student-points span{color:#ffffffc7;align-items:center;gap:10px;font-size:12px;display:inline-flex}.marketing-student-points svg{color:#91abff}.marketing-student-preview{transform:translate(6%);box-shadow:0 38px 90px #0000005c}.marketing-pricing-teaser{grid-template-columns:.8fr 1.2fr;align-items:center;gap:clamp(60px,8vw,125px);display:grid}.marketing-pricing-intro{justify-items:start;gap:17px;display:grid}.marketing-pricing-intro>p{color:var(--text-muted);margin:3px 0 5px;line-height:1.7}.marketing-pricing-cards{border:1px solid var(--marketing-line);grid-template-columns:1fr 1fr;display:grid}.marketing-pricing-cards article{background:var(--surface);align-content:start;min-height:310px;padding:35px;display:grid}.marketing-pricing-cards article+article{border-left:1px solid var(--marketing-line)}.marketing-pricing-cards article>span{color:var(--marketing-blue);letter-spacing:.1em;text-transform:uppercase;font-size:10px;font-weight:790}.marketing-pricing-cards article>strong{letter-spacing:-.6px;margin-top:58px;font-size:23px;line-height:1.25}.marketing-pricing-cards article>p{color:var(--text-muted);margin:13px 0;font-size:12px;line-height:1.6}.marketing-pricing-cards article>small{color:var(--text-faint);margin-top:auto;font-size:10px;line-height:1.55}.marketing-pricing-cards .is-student{background:var(--marketing-pale)}:root[data-theme=dark] .marketing-pricing-cards .is-student{background:var(--surface-muted)}.marketing-closing{color:#fff;background:var(--marketing-blue);justify-content:space-between;align-items:center;gap:50px;min-height:300px;padding:60px max(24px,50vw - 620px);display:flex}.marketing-closing h2{color:#fff;max-width:780px}.marketing-closing p{color:#ffffffb3;margin:15px 0 0;line-height:1.6}.pricing-hero{text-align:left;width:min(100% - 48px,1240px);margin-inline:auto;padding:104px 0 78px}.pricing-hero h1{max-width:830px;color:var(--marketing-ink);letter-spacing:-.065em;text-wrap:balance;margin:20px 0 23px;font-size:clamp(54px,6vw,82px);font-weight:760;line-height:.98}:root[data-theme=dark] .pricing-hero h1{color:var(--text)}.pricing-hero p{max-width:690px;color:var(--text-muted);margin:0;font-size:17px;line-height:1.7}.pricing-access-band{border:1px solid var(--marketing-blue);grid-template-columns:auto minmax(0,1fr);align-items:center;gap:20px;width:min(100% - 48px,1240px);min-height:128px;margin-inline:auto;padding:26px 30px;display:grid}@supports (color:color-mix(in lab,red,red)){.pricing-access-band{border:1px solid color-mix(in srgb,var(--marketing-blue) 20%,var(--marketing-line))}}.pricing-access-band{color:var(--text);background:var(--marketing-pale)}.pricing-access-band .marketing-icon-box{color:var(--marketing-blue);background:#fff}.pricing-access-band h2{margin:0 0 7px;font-size:19px}.pricing-access-band p{max-width:720px;color:var(--text-muted);margin:0;font-size:12px;line-height:1.6}.pricing-plans{grid-template-columns:1fr 1fr;align-items:stretch;gap:22px;width:min(100% - 48px,1100px);padding-block:72px 122px;display:grid}.pricing-plan{border:1px solid var(--marketing-line);background:var(--surface);align-content:start;min-height:480px;padding:40px;display:grid}.pricing-plan-teacher{border-top:3px solid var(--marketing-blue)}.pricing-plan-student{background:var(--marketing-pale)}:root[data-theme=dark] .pricing-plan-student{background:var(--surface-muted)}.pricing-plan-heading{gap:9px;display:grid}.pricing-plan-heading>span{color:var(--marketing-blue);letter-spacing:.1em;text-transform:uppercase;font-size:11px;font-weight:790}.pricing-plan-heading>strong{letter-spacing:-1.3px;margin-top:14px;font-size:34px}.pricing-plan-heading>small{color:var(--text-muted)}.pricing-planned-price{border-top:1px solid var(--marketing-line);border-bottom:1px solid var(--marketing-line);grid-template-columns:1fr auto 1fr;align-items:center;gap:20px;margin:34px 0;padding:27px 0;display:grid}.pricing-planned-price>div{gap:4px;display:grid}.pricing-planned-price strong{letter-spacing:-1px;font-size:27px}.pricing-planned-price span,.pricing-planned-price small{color:var(--text-muted);font-size:11px}.pricing-planned-price .is-annual small{color:var(--success);font-weight:720}.pricing-or{text-transform:uppercase;font-size:10px}.pricing-plan ul{grid-template-columns:1fr 1fr;gap:15px 20px;margin:0;padding:0;list-style:none;display:grid}.pricing-plan li{align-items:center;gap:9px;font-size:12px;display:flex}.pricing-plan li svg{color:var(--marketing-blue)}.pricing-mobile-note{color:var(--text-muted);background:var(--surface-muted);margin:30px 0 0;padding:16px;font-size:11px;line-height:1.6}.pricing-plan-student>p{color:var(--text-muted);margin:34px 0 28px;line-height:1.7}.pricing-student-price{align-items:baseline;gap:8px;margin-top:34px;display:flex}.pricing-student-price strong{letter-spacing:-3px;font-size:62px}.pricing-student-price small{color:var(--text-muted)}.pricing-student-mark{color:var(--marketing-blue);align-items:center;gap:13px;margin-top:32px;font-size:13px;font-weight:720;display:flex}.pricing-local-note{color:var(--text-faint);text-align:center;grid-column:1/-1;margin:0;font-size:10px}.pricing-comparison{padding-top:0;scroll-margin-top:96px}.pricing-comparison .marketing-section-heading{max-width:800px;margin-bottom:50px}.pricing-table{border-top:1px solid var(--marketing-line)}.pricing-table-row{border-bottom:1px solid var(--marketing-line);grid-template-columns:minmax(330px,1.3fr) minmax(200px,.75fr) minmax(200px,.75fr);align-items:center;min-height:70px;display:grid}.pricing-table-row>*{padding:0 24px}.pricing-table-row>*+*{border-left:1px solid var(--marketing-line);align-items:center;min-height:70px;display:flex}.pricing-table-row>strong{font-size:12px}.pricing-table-head{min-height:52px;color:var(--text-muted);background:var(--surface-muted)}.pricing-table-head>*+*{min-height:52px}.pricing-capability{color:var(--text-muted);align-items:center;gap:8px;font-size:11px;display:inline-flex}.pricing-capability svg{color:var(--marketing-blue)}.pricing-capability.is-muted{color:var(--text-faint)}.pricing-revenue{color:#fff;background:var(--marketing-ink);grid-template-columns:.55fr 1.45fr;align-items:center;gap:70px;width:min(100% - 48px,1240px);min-height:390px;margin-inline:auto;padding:74px 90px;display:grid}.pricing-revenue .marketing-eyebrow{color:#91abff}.pricing-revenue h2{color:#fff;margin:15px 0 20px}.pricing-revenue p{color:#ffffffa3;max-width:720px;margin:0;line-height:1.75}.pricing-revenue-symbol{color:#fff;letter-spacing:-.08em;font-size:clamp(88px,11vw,160px);font-weight:760;line-height:.8}.pricing-revenue-symbol span{color:#91abff;font-size:.48em}.pricing-faq{grid-template-columns:.65fr 1.35fr;align-items:start;gap:90px;display:grid}.pricing-faq-list{border-top:1px solid var(--marketing-line)}.pricing-faq details{border-bottom:1px solid var(--marketing-line)}.pricing-faq summary{cursor:pointer;justify-content:space-between;align-items:center;gap:20px;min-height:78px;font-size:14px;font-weight:700;list-style:none;display:flex}.pricing-faq summary::-webkit-details-marker{display:none}.pricing-faq-chevron{color:var(--text-faint);place-items:center;transition:transform .18s;display:grid}.pricing-faq details[open] .pricing-faq-chevron{transform:rotate(180deg)}.pricing-faq details p{max-width:690px;color:var(--text-muted);margin:-5px 40px 26px 0;font-size:12px;line-height:1.7}[data-marketing-reveal]{opacity:0;transition:opacity .65s cubic-bezier(.2,.8,.2,1),transform .65s cubic-bezier(.2,.8,.2,1);transform:translateY(24px)}[data-marketing-reveal].is-visible{opacity:1;transform:translateY(0)}@keyframes marketing-product-in{0%{transform:translate(50px)scale(.98)}to{transform:translate(0)scale(1)}}@media(max-width:1180px){.public-header{gap:22px;padding-inline:24px}.public-nav{gap:18px}.public-start-button{padding-inline:13px}.marketing-hero-inner{grid-template-columns:minmax(380px,.8fr) minmax(540px,1.2fr);gap:35px}.marketing-hero-product{transform:translate(2%)}.marketing-student-inner{gap:45px}.marketing-student-preview{transform:translate(2%)}}@media(max-width:960px){.public-header{grid-template-columns:1fr auto}.public-nav,.public-sign-in,.public-start-button{display:none}.public-menu-button{display:grid}.public-mobile-menu.is-open{display:block}.public-footer{grid-template-columns:1.2fr 1fr 1fr}.footer-preferences{grid-column:1/-1;justify-content:flex-start}.marketing-section{padding-block:92px}.marketing-hero-inner{text-align:center;grid-template-columns:minmax(0,1fr);padding-top:78px}.marketing-hero-copy h1,.marketing-hero-copy>p,.marketing-access-note{margin-left:auto;margin-right:auto}.marketing-kicker,.marketing-actions{justify-content:center}.marketing-hero-product{width:min(100%,740px);margin-inline:auto;transform:none}.marketing-workflow-grid{grid-template-columns:repeat(3,1fr)}.marketing-workflow-grid article:nth-child(3){border-right:0}.marketing-workflow-grid article:nth-child(n+4){border-top:1px solid var(--marketing-line)}.marketing-product-heading{grid-template-columns:1fr}.marketing-product-heading p{max-width:650px}.marketing-teacher-section,.marketing-pricing-teaser,.pricing-faq{grid-template-columns:1fr}.marketing-teacher-intro{max-width:680px;position:static}.marketing-student-inner{grid-template-columns:minmax(0,1fr)}.marketing-student-copy{max-width:680px}.marketing-student-preview{width:min(100%,780px);transform:none}.pricing-plans{grid-template-columns:1fr}.pricing-plan{min-height:0}.pricing-revenue{grid-template-columns:.5fr 1.5fr;padding-inline:55px}.pricing-faq{gap:45px}}@media(max-width:720px){.public-header{height:68px;padding-inline:16px}.public-mobile-menu{padding-inline:16px;top:68px}.public-mobile-actions{grid-template-columns:1fr}.public-footer{grid-template-columns:1fr 1fr;gap:34px 24px;padding:46px 22px 28px}.footer-brand,.footer-preferences,.footer-copyright{grid-column:1/-1}.footer-preferences{flex-wrap:wrap}.marketing-section{width:min(100% - 32px,1240px);padding-block:76px}.marketing-section-heading h2,.marketing-teacher-intro h2,.marketing-student-copy h2,.marketing-pricing-intro h2,.pricing-revenue h2,.marketing-closing h2{font-size:39px}.marketing-hero-inner{gap:47px;min-height:0;padding:64px 16px 54px}.marketing-hero,.marketing-product-section,.marketing-student-inner{overflow:hidden}.marketing-hero-copy,.marketing-hero-product,.marketing-product-heading,.marketing-student-copy{min-width:0}.marketing-hero-copy h1{letter-spacing:-.06em;margin-block:20px;font-size:48px}.marketing-hero-copy>p{font-size:15px;line-height:1.65}.marketing-actions{display:grid}.marketing-actions .marketing-button{width:100%}.marketing-proof-strip{flex-direction:column;align-items:flex-start;gap:14px;padding:22px 24px}.marketing-product-preview{transform-origin:0 0;min-width:620px}.marketing-hero-product,.marketing-student-preview{width:620px;height:455px;transform:scale(calc((100vw - 32px) / 620));transform-origin:0 0;margin-bottom:calc((455px * ((100vw - 32px) / 620)) - 455px)}.marketing-workflow-grid{border-top:0;grid-template-columns:1fr;margin-top:50px}.marketing-workflow-grid article,.marketing-workflow-grid article+article{border-top:1px solid var(--marketing-line);border-right:0;grid-template-columns:40px 1fr;column-gap:17px;min-height:0;padding:26px 0;display:grid}.marketing-workflow-grid article h3{margin:0 0 6px}.marketing-workflow-grid article p{grid-column:2}.marketing-workflow-index,.marketing-workflow-grid article+article .marketing-workflow-index{padding-left:8px;padding-right:0;top:-7px;left:auto;right:0}.marketing-product-section{border-radius:0;width:100%;padding:76px 16px}.marketing-view-switch{width:100%}.marketing-view-switch button{flex:1;min-width:0}.marketing-product-showcase{width:730px;min-width:730px;min-height:570px;transform:scale(calc((100vw - 32px) / 730));transform-origin:0 0;margin-bottom:calc((570px * ((100vw - 32px) / 730)) - 570px)}.marketing-feature-list article{grid-template-columns:24px 40px minmax(0,1fr);gap:15px;min-height:0;padding:25px 0}.marketing-feature-number{padding-top:10px}.marketing-feature-list article>svg:last-child{display:none}.marketing-student-section{padding-bottom:18px}.marketing-student-inner{width:100%;padding:76px 16px}.marketing-student-preview{margin-bottom:calc((455px * ((100vw - 32px) / 620)) - 455px)}.marketing-pricing-cards{grid-template-columns:1fr}.marketing-pricing-cards article+article{border-top:1px solid var(--marketing-line);border-left:0}.marketing-closing{flex-direction:column;align-items:flex-start;min-height:0;padding:64px 22px}.marketing-closing .marketing-button{width:100%}.pricing-hero{width:min(100% - 32px,930px);padding:82px 0 64px}.pricing-hero h1{font-size:48px}.pricing-hero p{font-size:15px}.pricing-access-band{grid-template-columns:auto 1fr;width:100%;padding:26px 20px}.pricing-plan{padding:28px 22px}.pricing-planned-price{grid-template-columns:1fr;gap:16px}.pricing-or{display:none}.pricing-plan ul{grid-template-columns:1fr}.pricing-table-head{display:none}.pricing-table-row{grid-template-columns:1fr 1fr;padding:18px 0;display:grid}.pricing-table-row>strong{grid-column:1/-1;padding:0 0 13px}.pricing-table-row>div{border-left:0;grid-template-columns:1fr;align-content:center;gap:5px;min-height:44px;padding:0 10px 0 0;display:grid}.pricing-table-row>div+div{border-left:1px solid var(--marketing-line);padding-left:10px}.pricing-table-row>div:before{color:var(--text-faint);letter-spacing:.08em;text-transform:uppercase;content:attr(data-role);font-size:8px;font-weight:780}.pricing-revenue{grid-template-columns:1fr;gap:42px;width:100%;padding:70px 22px}.pricing-revenue-symbol{font-size:110px}.pricing-faq summary{min-height:70px;font-size:13px}}@media(max-width:420px){.marketing-hero-copy h1,.pricing-hero h1{font-size:42px}.marketing-section-heading h2,.marketing-teacher-intro h2,.marketing-student-copy h2,.marketing-pricing-intro h2,.pricing-revenue h2,.marketing-closing h2{font-size:34px}.marketing-pricing-cards article{min-height:270px;padding:28px 24px}.marketing-pricing-cards article>strong{margin-top:42px}.pricing-student-price strong{font-size:52px}}@media(prefers-reduced-motion:reduce){[data-marketing-reveal],.marketing-hero-product{opacity:1;transition:none;animation:none;transform:none}.marketing-button,.marketing-feature-list article>svg,.pricing-faq-chevron{transition:none}}:root{--accent:#145fcf;--accent-strong:#0f56c9;--accent-soft:#eaf2ff;--surface-accent:#f2f7ff;--focus:0 0 0 3px #1769e833}:root[data-theme=dark]{--accent:#75aaff;--accent-strong:#9dc1ff;--accent-soft:#18345f;--surface-accent:#152a4a}.brand-logo{letter-spacing:-.02em;gap:8px;font-size:18px;font-weight:720}.brand-mark{width:32px;height:26px}.sidebar-brand .brand-logo,.public-brand.brand-logo{font-size:18px}.auth-brand{background:#1f4788}.auth-brand .brand-logo{font-size:21px}.auth-brand .brand-mark{width:38px;height:31px}.auth-brand .brand-mark-accent{stroke:#72b8ff}.select{appearance:none;background-image:linear-gradient(45deg,transparent 50%,var(--text-muted) 50%),linear-gradient(135deg,var(--text-muted) 50%,transparent 50%);background-position:calc(100% - 18px),calc(100% - 13px);background-repeat:no-repeat;background-size:5px 5px,5px 5px;padding-right:42px}.time-zone-picker{gap:6px;min-width:0;display:grid}.time-zone-picker-input{align-items:center;display:flex;position:relative}.time-zone-picker-input>svg{z-index:1;color:var(--text-faint);pointer-events:none;position:absolute;left:12px}.time-zone-picker-input .input{padding-left:38px}.time-zone-picker-input .input::-webkit-search-cancel-button{cursor:pointer}.time-zone-picker-results{overscroll-behavior:contain;border:1px solid var(--border);background:var(--surface);max-height:240px;box-shadow:var(--shadow-sm);border-radius:9px;overflow-y:auto}.time-zone-picker-heading{z-index:1;border-bottom:1px solid var(--border);color:var(--text-faint);background:var(--surface-muted);letter-spacing:.04em;text-transform:uppercase;padding:8px 11px;font-size:10px;font-weight:700;position:sticky;top:0}.time-zone-picker-option{border-bottom:1px solid var(--border);cursor:pointer;grid-template-columns:minmax(0,1fr) 20px;align-items:center;gap:10px;min-height:52px;padding:8px 11px;display:grid}.time-zone-picker-option:last-child{border-bottom:0}.time-zone-picker-option:hover,.time-zone-picker-option.is-active{background:var(--surface-muted)}.time-zone-picker-option[aria-selected=true]{color:var(--accent);background:var(--surface-accent)}.time-zone-picker-option>span{gap:2px;min-width:0;display:grid}.time-zone-picker-option strong{text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.time-zone-picker-option small{color:var(--text-muted);text-overflow:ellipsis;white-space:nowrap;font-size:10.5px;overflow:hidden}.time-zone-picker-option>svg{color:var(--accent);justify-self:end}.time-zone-picker-empty{color:var(--text-muted);text-align:center;padding:22px 14px;font-size:12px}.choice-menu{min-width:208px}.choice-menu-item{padding-right:34px;position:relative}.choice-menu-icon{width:20px;color:var(--text-muted);place-items:center;display:inline-grid}.choice-menu-check{color:var(--accent);display:inline-grid;position:absolute;right:9px}.segmented-control{border:1px solid var(--border);background:var(--surface-muted);border-radius:10px;gap:3px;max-width:100%;padding:3px;display:inline-flex;overflow-x:auto}.segmented-control button{min-height:32px;color:var(--text-muted);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:7px;flex:none;padding:0 13px;font-size:12px;font-weight:620}.segmented-control button:hover{color:var(--text)}.segmented-control .segment-active{color:var(--accent);border-color:var(--border);background:var(--surface);box-shadow:var(--shadow-sm)}.data-row{position:relative}.data-row>:not(.data-row-hit-area){z-index:2;pointer-events:none;position:relative}.data-row-action{justify-content:flex-end;align-items:center;width:36px;display:flex;z-index:3!important;pointer-events:auto!important}.data-row-action-passive{pointer-events:none!important}.data-row-hit-area{z-index:1;border-radius:inherit;cursor:pointer;background:0 0;border:0;position:absolute;inset:0}.data-row:has(.data-row-hit-area:hover){background:var(--surface-muted)}.data-row-hit-area:focus-visible{box-shadow:inset var(--focus);border-radius:8px;outline:0}.module-panel,.dashboard-section{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface);overflow:hidden}.module-panel .section-header,.dashboard-section>.section-header{min-height:50px;padding:0 16px}.module-panel .data-row,.dashboard-section .data-row{padding-inline:16px}.dashboard-section{margin-bottom:16px}.dashboard-section .timeline-list{border:0;border-radius:0}.dashboard-section .lesson-row{padding-inline:16px}.dashboard-section>.section-link{margin-left:16px}.dashboard-split{gap:16px}.topbar-account{min-height:44px;color:var(--text);text-align:left;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:10px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:9px;padding:4px 9px 4px 5px;display:grid}.topbar-account:hover,.topbar-account[data-state=open]{border-color:var(--border);background:var(--surface-muted)}.topbar-account>span{gap:1px;min-width:0;display:grid}.topbar-account strong{text-overflow:ellipsis;white-space:nowrap;max-width:120px;font-size:12.5px;overflow:hidden}.topbar-account small{color:var(--text-muted);text-transform:capitalize;font-size:10.5px}.topbar-notifications{display:inline-flex;position:relative}.topbar-notification-badge{border:2px solid var(--surface);color:#fff;background:var(--coral);pointer-events:none;border-radius:99px;place-items:center;min-width:16px;height:16px;padding:0 4px;font-size:8px;font-weight:750;display:grid;position:absolute;top:1px;right:0}.account-menu{min-width:250px}.account-menu-label{color:var(--text-muted);letter-spacing:.06em;text-transform:uppercase;padding:8px 9px;font-size:10px;font-weight:700}.account-menu .menu-item{height:auto;min-height:46px}.account-menu .menu-item>span:not(.choice-menu-check){gap:2px;display:grid}.account-menu .menu-item small{color:var(--text-muted);font-size:10.5px}.account-menu-separator{background:var(--border);height:1px;margin:5px}.public-footer{justify-content:space-between}.footer-brand{align-items:center;gap:16px;display:flex}.footer-brand .brand-logo{font-size:15px}.footer-brand .brand-mark{width:26px;height:22px}.footer-legal{align-items:center;gap:24px;margin-left:auto;display:flex}.footer-links{gap:18px;display:flex}.footer-links a{color:var(--text-muted);text-decoration:none}.footer-links a:hover{color:var(--accent)}.legal-page{width:min(100% - 36px,900px);margin:0 auto;padding:68px 0 92px}.legal-hero{border-bottom:1px solid var(--border);padding-bottom:32px}.legal-brand{color:var(--text-muted);align-items:center;gap:13px;font-size:12px;font-weight:650;display:inline-flex}.legal-brand .brand-logo{font-size:17px}.legal-page h1{letter-spacing:-.055em;max-width:760px;margin:32px 0 15px;font-size:clamp(38px,6vw,64px)}.legal-hero>p{max-width:760px;color:var(--text-muted);margin:0;font-size:16px;line-height:1.75}.legal-dates{flex-wrap:wrap;gap:24px 46px;margin:27px 0 0;display:flex}.legal-dates>div{gap:4px;display:grid}.legal-dates dt{color:var(--text-faint);letter-spacing:.07em;text-transform:uppercase;font-size:10px;font-weight:750}.legal-dates dd{color:var(--text);margin:0;font-size:12px;font-weight:650}.legal-page section{scroll-margin-top:78px}.legal-summary{border:1px solid var(--accent);margin:32px 0 0;padding:24px 26px}@supports (color:color-mix(in lab,red,red)){.legal-summary{border:1px solid color-mix(in srgb,var(--accent) 24%,var(--border))}}.legal-summary{background:var(--accent);border-radius:16px}@supports (color:color-mix(in lab,red,red)){.legal-summary{background:color-mix(in srgb,var(--accent) 5%,var(--surface))}}.legal-summary h2,.legal-contact h2{margin:0 0 13px;font-size:19px}.legal-summary ul{gap:10px;margin:0;padding-left:19px;display:grid}.legal-summary li,.legal-sections li{color:var(--text-muted);padding-left:4px;line-height:1.65}.legal-contents{border-bottom:1px solid var(--border);margin:20px 0 4px;padding:22px 0}.legal-contents>strong{margin-bottom:13px;font-size:12px;display:block}.legal-contents ol{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 28px;margin:0;padding-left:22px;display:grid}.legal-contents a{color:var(--text-muted);font-size:12px;line-height:1.45;text-decoration:none}.legal-contents a:hover{color:var(--accent);text-underline-offset:3px;text-decoration:underline}.legal-sections>section{border-bottom:1px solid var(--border);padding:29px 0}.legal-sections h2{letter-spacing:-.015em;margin:0 0 13px;font-size:20px}.legal-sections p,.legal-contact p,.legal-language-note{color:var(--text-muted);margin:0 0 13px;line-height:1.75}.legal-sections ul{gap:9px;margin:15px 0 0;padding-left:21px;display:grid}.legal-data-table{border:1px solid var(--border);border-radius:14px;margin:18px 0 0;overflow:hidden}.legal-data-table>div{border-bottom:1px solid var(--border);grid-template-columns:minmax(150px,.7fr) minmax(0,2fr);display:grid}.legal-data-table>div:last-child{border-bottom:0}.legal-data-table dt,.legal-data-table dd{margin:0;padding:14px 16px;line-height:1.55}.legal-data-table dt{color:var(--text);background:var(--surface-muted);font-size:12px;font-weight:700}.legal-data-table dd{color:var(--text-muted);font-size:12px}.legal-contact{border:1px solid var(--border);background:var(--surface-muted);border-radius:16px;margin-top:32px;padding:25px 26px}.legal-contact a{color:var(--accent);font-weight:700;text-decoration:none}.legal-contact a:hover{text-underline-offset:3px;text-decoration:underline}.legal-language-note{margin:20px 2px 0;font-size:11px}@media(max-width:640px){.legal-page{width:min(100% - 28px,900px);padding-block:42px 64px}.legal-hero{padding-bottom:26px}.legal-page h1{margin-top:25px}.legal-hero>p{font-size:14px}.legal-summary{padding:20px}.legal-contents ol,.legal-data-table>div{grid-template-columns:1fr}.legal-data-table dt{padding-bottom:5px}.legal-data-table dd{padding-top:5px}}.localized-warning{--warning-color:var(--accent);border:1px solid var(--warning-color);grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:11px;margin:12px 24px 0;padding:11px 13px;display:grid}@supports (color:color-mix(in lab,red,red)){.localized-warning{border:1px solid color-mix(in srgb,var(--warning-color) 32%,var(--border))}}.localized-warning{color:var(--text);background:var(--warning-color);border-radius:10px}@supports (color:color-mix(in lab,red,red)){.localized-warning{background:color-mix(in srgb,var(--warning-color) 8%,var(--surface))}}.app-content>.localized-warning{margin:0 0 18px}.public-frame>.localized-warning{width:min(100% - 36px,1180px);margin:14px auto 0}.localized-warning>svg{color:var(--warning-color)}.localized-warning>span{gap:2px;min-width:0;display:grid}.localized-warning strong{font-size:12.5px}.localized-warning small{color:var(--text-muted);font-size:11.5px;line-height:1.45}.localized-warning a{color:var(--warning-color);align-items:center;gap:5px;font-size:11px;font-weight:700;text-decoration:none;display:inline-flex}.warning-blue{--warning-color:var(--accent)}.warning-yellow{--warning-color:#aa7a00}.warning-green{--warning-color:#27834a}.warning-mint{--warning-color:#138b78}.warning-teal{--warning-color:#14817d}.warning-cyan{--warning-color:#087f9a}.warning-indigo{--warning-color:#5966d9}.warning-orange{--warning-color:#b86a12}.warning-red{--warning-color:var(--coral)}.warning-purple{--warning-color:#7557cc}.warning-pink{--warning-color:#bd4f83}@media(max-width:640px){.localized-warning{grid-template-columns:auto minmax(0,1fr);margin-inline:14px}.localized-warning a{grid-column:2}.public-frame>.localized-warning{width:calc(100% - 28px)}}.schedule-calendar{min-width:0}.calendar-toolbar{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:18px;min-height:72px;padding:12px 14px;display:flex}.calendar-title{align-items:center;gap:11px;display:flex}.calendar-title>div{gap:3px;display:grid}.calendar-title strong{font-size:14px}.calendar-title small{color:var(--text-muted);font-size:11px}.calendar-controls{align-items:center;gap:7px;display:flex}.calendar-day-list .data-row{padding-inline:16px}.calendar-grid{min-width:0;display:grid}.calendar-week{grid-template-columns:repeat(7,minmax(90px,1fr));overflow-x:auto}.calendar-month{grid-template-columns:repeat(7,minmax(90px,1fr))}.calendar-cell{border-right:1px solid var(--border);border-bottom:1px solid var(--border);background:var(--surface);min-height:150px;padding:8px}.calendar-cell:nth-child(7n){border-right:0}.calendar-cell>header{min-height:34px;color:var(--text-muted);text-transform:uppercase;justify-content:space-between;align-items:center;font-size:10px;display:flex}.calendar-cell>header strong{color:var(--text);font-size:14px}.calendar-cell-muted{background:var(--surface-muted)}.calendar-cell-today{background:var(--accent)}@supports (color:color-mix(in lab,red,red)){.calendar-cell-today{background:color-mix(in srgb,var(--accent) 5%,var(--surface))}}.calendar-cell-today{box-shadow:inset 0 0 0 1px var(--accent)}@supports (color:color-mix(in lab,red,red)){.calendar-cell-today{box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--accent) 20%,transparent)}}.calendar-cell-today>header strong{min-width:26px;height:26px;color:var(--accent-strong);background:var(--accent);border-radius:50%;place-items:center;display:grid}@supports (color:color-mix(in lab,red,red)){.calendar-cell-today>header strong{background:color-mix(in srgb,var(--accent) 10%,transparent)}}.calendar-cell-muted>header strong{color:var(--text-faint)}.calendar-event{width:100%;min-height:calc(38px + (var(--lesson-duration,30) * .22px));border:0;border-left:3px solid var(--accent);color:var(--text);background:var(--accent-soft);text-align:left;cursor:pointer;border-radius:7px;align-content:start;gap:3px;margin-top:5px;padding:8px;display:grid}.calendar-event:hover{background:var(--accent)}@supports (color:color-mix(in lab,red,red)){.calendar-event:hover{background:color-mix(in srgb,var(--accent) 16%,var(--surface))}}.calendar-event strong,.calendar-event span{font-size:11px}.calendar-event small{color:var(--text-muted);text-overflow:ellipsis;white-space:nowrap;font-size:9.5px;overflow:hidden}.calendar-event-compact{text-overflow:ellipsis;white-space:nowrap;min-height:0;font-size:10px;display:block;overflow:hidden}.calendar-event-completed{border-left-color:var(--success);background:var(--success)}@supports (color:color-mix(in lab,red,red)){.calendar-event-completed{background:color-mix(in srgb,var(--success) 10%,var(--surface))}}.calendar-event-cancelled{border-left-color:var(--text-faint);background:var(--surface-muted);opacity:.72}.calendar-event-no_show{border-left-color:var(--warning);background:var(--warning)}@supports (color:color-mix(in lab,red,red)){.calendar-event-no_show{background:color-mix(in srgb,var(--warning) 10%,var(--surface))}}.lesson-detail{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.lesson-detail>div{border:1px solid var(--border);background:var(--surface-muted);border-radius:10px;gap:5px;padding:14px;display:grid}.lesson-detail small{color:var(--text-muted);font-size:11px}.lesson-detail strong{font-size:13px}.lesson-detail>.status{place-self:start}.lesson-audit-note{grid-column:1/-1}.lesson-audit-note p{color:var(--text);margin:0;font-size:13px;line-height:1.55}.lesson-audit-note span{color:var(--text-muted);font-size:11px}.form-stack{gap:18px;display:grid}.messages-page{flex-direction:column;height:calc(100dvh - 121px);min-height:min(600px,100dvh - 121px);display:flex}.messages-page .page-header{flex:none}.messages-layout{flex:1;height:auto;min-height:0}.chat-panel{min-height:0}.chat-messages{overscroll-behavior:contain;scrollbar-gutter:stable;gap:16px;min-height:0;padding:24px}.chat-load-older{align-self:center}.message-group{justify-items:start;gap:5px;max-width:min(78%,560px);display:grid}.message-group-own{align-self:flex-end;justify-items:end}.message-meta{color:var(--text-muted);align-items:center;gap:7px;padding-inline:7px;font-size:10px;display:flex}.message-meta time{color:var(--text-faint)}.message-actions{margin-left:2px;display:inline-flex}.message-actions .button{width:25px;height:25px}.message-bubble{border:1px solid var(--border);background:var(--surface-muted);border-radius:20px 20px 20px 6px;max-width:100%;padding:12px 15px}.message-bubble.message-own{color:#fff;border-color:var(--accent);background:var(--accent);border-radius:20px 20px 6px}.message-bubble p{overflow-wrap:anywhere;margin:0;font-size:13px;line-height:1.55}.message-reply-quote{border-left:3px solid;align-items:center;gap:7px;margin:-3px -4px 9px;padding:8px 9px;display:flex}@supports (color:color-mix(in lab,red,red)){.message-reply-quote{border-left:3px solid color-mix(in srgb,currentColor 38%,transparent)}}.message-reply-quote{background:var(--surface);border-radius:7px}@supports (color:color-mix(in lab,red,red)){.message-reply-quote{background:color-mix(in srgb,var(--surface) 55%,transparent)}}.message-reply-quote{opacity:.88;font-size:11px}.message-own .message-reply-quote{background:#ffffff24}.message-reply-quote span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.message-attachment{border:1px solid var(--border);width:min(100%,340px);min-width:0;color:var(--text);background:var(--surface);border-radius:11px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;margin-top:9px;padding:10px;display:grid}@supports (color:color-mix(in lab,red,red)){.message-attachment{background:color-mix(in srgb,var(--surface) 90%,transparent)}}.message-attachment{text-align:left;cursor:pointer}.message-attachment:hover{border-color:var(--accent)}.message-attachment span{gap:2px;min-width:0;display:grid}.message-attachment strong,.message-attachment small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.message-attachment strong{font-size:11.5px}.message-attachment small{color:var(--text-muted);font-size:9.5px}.message-own .message-attachment{color:#fff;background:#ffffff24;border-color:#ffffff57}.message-own .message-attachment strong{color:#fff}.message-own .message-attachment small{color:#ffffffe0}.message-deleted,.message-bubble.message-own.message-deleted{color:var(--text-muted);background:0 0;border-style:dashed;font-style:italic}.chat-header>span{min-width:0}.chat-header strong,.chat-header small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.chat-composer{z-index:2;padding:12px 12px max(12px,env(safe-area-inset-bottom));background:var(--surface);position:sticky;bottom:0}@supports (color:color-mix(in lab,red,red)){.chat-composer{background:color-mix(in srgb,var(--surface) 97%,transparent)}}.chat-composer{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.composer-context{grid-column:1/-1;gap:8px;display:flex;overflow-x:auto}.composer-context-item{border:1px solid var(--border);background:var(--surface-muted);border-radius:9px;flex:1;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:8px;min-width:0;padding:8px 10px;display:grid}.composer-context-item>span{gap:2px;min-width:0;display:grid}.composer-context-item strong,.composer-context-item small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.composer-context-item strong{font-size:10.5px}.composer-context-item small{color:var(--text-muted);font-size:9.5px}.composer-context-item>button{width:26px;height:26px;color:var(--text-muted);cursor:pointer;background:0 0;border:0;border-radius:6px;place-items:center;padding:0;display:grid}.composer-context-item>button:hover{color:var(--text);background:var(--surface)}.student-picker{border:1px solid var(--border);border-radius:10px;max-height:270px;display:grid;overflow-y:auto}.student-picker-row{border-bottom:1px solid var(--border);cursor:pointer;grid-template-columns:auto auto 1fr;align-items:center;gap:10px;min-height:58px;padding:8px 12px;display:grid}.student-picker-row:last-child{border-bottom:0}.student-picker-row:hover,.student-picker-row-selected{background:var(--surface-accent)}.student-picker-row input{accent-color:var(--accent)}.student-picker-row span{gap:2px;display:grid}.student-picker-row strong{font-size:12.5px}.student-picker-row small{color:var(--text-muted);font-size:10.5px}.material-detail,.relationship-detail{grid-template-columns:auto 1fr auto;align-items:center;gap:14px;display:grid}.material-detail-icon{width:54px;height:54px}.material-detail p,.relationship-detail p{color:var(--text-muted);margin:4px 0}.material-detail small{color:var(--text-faint)}.relationship-item-detail{gap:12px;display:grid}.relationship-item-detail>div:not(.notice){border:1px solid var(--border);background:var(--surface-muted);border-radius:10px;gap:5px;padding:13px 14px;display:grid}.relationship-item-detail small{color:var(--text-muted);font-size:11px}.relationship-item-detail strong{font-size:13px}.relationship-item-detail>p{color:var(--text);margin:0;line-height:1.6}.relationship-item-detail>.status{justify-self:start}.progress-card{position:relative}.progress-card-actions{align-items:center;gap:6px;display:flex}.progress-edit-link{color:var(--accent);cursor:pointer;background:0 0;border:0;margin-top:14px;padding:0;font-size:12px}.rating-control{grid-template-columns:repeat(5,minmax(44px,1fr));gap:7px;display:grid}.rating-control button{border:1px solid var(--border);min-height:42px;color:var(--text-muted);background:var(--surface);cursor:pointer;border-radius:9px}.rating-control button:hover,.rating-control .rating-active{color:#fff;border-color:var(--accent);background:var(--accent)}.financial-document-complete{padding:10px 12px 4px}.dialog-lg{max-height:min(94dvh,940px)}.financial-brand>div{align-items:center;gap:10px;display:flex}.financial-heading{min-height:96px;color:var(--accent);justify-content:space-between;align-items:center;display:flex}.financial-heading h2{color:var(--text);letter-spacing:-1px;margin:0;font-size:32px}.financial-heading p{color:var(--text-muted);margin:5px 0 0;font-size:12px}.financial-parties{border:1px solid var(--border);background:var(--surface-muted);border-radius:10px;grid-template-columns:1fr 1fr;gap:18px;padding:20px;display:grid}.financial-parties section{gap:4px;display:grid}.financial-parties small{color:var(--text-faint);text-transform:uppercase;letter-spacing:.05em;font-size:10px}.financial-parties span{color:var(--text-muted);font-size:11px}.financial-document-complete .financial-grid{margin:20px 0}.financial-items{border:1px solid var(--border);border-radius:10px;min-width:0;overflow:hidden}.financial-items-head,.financial-item-row{grid-template-columns:minmax(0,1fr) minmax(34px,.35fr) minmax(64px,.7fr) minmax(72px,.8fr);align-items:center;gap:clamp(4px,1.4vw,12px);min-width:0;padding:11px clamp(9px,2vw,14px);display:grid}.financial-items-head{color:var(--text-muted);background:var(--surface-muted);text-transform:uppercase;font-size:10px;font-weight:700}.financial-item-row{border-top:1px solid var(--border);min-height:74px;font-size:12px}.financial-item-row>span:first-child{gap:3px;display:grid}.financial-items-head>span,.financial-item-row>span,.financial-item-row>strong{overflow-wrap:anywhere;min-width:0}.financial-items-head>span:not(:first-child),.financial-item-row>span:not(:first-child),.financial-item-row>strong{text-align:right}.financial-item-row small{color:var(--text-muted)}.financial-totals{width:min(100%,320px);margin:18px 0 18px auto;display:grid}.financial-totals span{color:var(--text-muted);justify-content:space-between;padding:8px 0;font-size:12px;display:flex}.financial-totals span:last-child{border-top:1px solid var(--border);color:var(--text);font-size:15px}.financial-note{border:1px solid var(--border);border-radius:9px;padding:13px 15px}.financial-note strong{font-size:12px}.financial-note p{color:var(--text-muted);margin:5px 0 0;font-size:11px;line-height:1.5}.settings-surface{max-width:980px}.settings-surface>.segmented-control{width:calc(100% - 32px);margin:16px}.settings-surface>.segmented-control button{flex:1}.settings-panel{border-top:1px solid var(--border)}.settings-rows{display:grid}.settings-account-section{border:1px solid var(--border);background:var(--surface);border-radius:12px;margin:0 16px 16px;overflow:hidden}.settings-account-section-header{border-bottom:1px solid var(--border);background:var(--surface-subtle);justify-content:space-between;align-items:center;gap:18px;min-height:72px;padding:14px 16px;display:flex}.settings-account-section-header>div{gap:5px;display:grid}.settings-account-section-header strong{font-size:14px}.settings-account-section-header p{color:var(--text-muted);margin:0;font-size:11.5px;line-height:1.5}.settings-account-section .settings-row:last-child{border-bottom:0}.settings-info-row{grid-template-columns:minmax(280px,1fr) minmax(180px,320px) 180px}.settings-row{border-bottom:1px solid var(--border);grid-template-columns:minmax(280px,1fr) 220px 180px;align-items:center;gap:18px;min-height:86px;padding:16px 20px;display:grid}.settings-row:last-child{border-bottom:0}.settings-row>div:first-child{gap:5px;display:grid}.settings-row strong{font-size:13px}.settings-row p{color:var(--text-muted);margin:0;font-size:11.5px;line-height:1.45}.settings-value{color:var(--text-muted);justify-self:start;font-size:12px}.settings-row>.button{justify-self:end}.settings-toggle-row{grid-template-columns:minmax(280px,1fr) 180px}.settings-toggle-row .switch-label{justify-self:end}.settings-toggle-row .switch-label>span:empty{display:none}.settings-avatar-row .avatar{justify-self:start}.settings-avatar-button{cursor:pointer;justify-self:end;position:relative;overflow:hidden}.settings-avatar-button input{opacity:0;pointer-events:none;width:1px;height:1px;position:absolute}.settings-action-value{grid-column:3;justify-self:end}.settings-legal{gap:14px;display:flex}.settings-legal a{color:var(--accent);font-size:12px;text-decoration:none}.settings-export-section{border:1px solid var(--border);border-radius:12px;margin:16px;overflow:hidden}.settings-export-section>header{background:var(--surface-subtle);border-bottom:1px solid var(--border);gap:5px;padding:16px;display:grid}.settings-export-section>header p,.settings-export-row p{color:var(--text-muted);margin:0;font-size:11.5px;line-height:1.45}.settings-export-row{border-bottom:1px solid var(--border);grid-template-columns:36px minmax(0,1fr) 190px;align-items:center;gap:12px;min-height:70px;padding:10px 14px;display:grid}.settings-export-row:last-child{border-bottom:0}.settings-export-row>div{gap:4px;display:grid}.settings-export-row .button{justify-self:stretch;width:100%}.settings-export-icon{width:34px;height:34px;color:var(--accent);background:var(--accent-soft);border-radius:9px;place-items:center;display:grid}.settings-payment-methods{padding:16px}.payment-methods-header{justify-content:space-between;align-items:center;gap:18px;padding:4px 0 16px;display:flex}.payment-methods-header>div{gap:5px;display:grid}.payment-methods-header p,.payment-method-row p{color:var(--text-muted);margin:0;font-size:11.5px;line-height:1.45}.payment-methods-list{border:1px solid var(--border);border-radius:12px;overflow:hidden}.payment-method-row{border-bottom:1px solid var(--border);grid-template-columns:38px minmax(0,1fr) auto;align-items:center;gap:12px;min-height:76px;padding:12px 14px;display:grid}.payment-method-row:last-child{border-bottom:0}.payment-method-row>div{gap:4px;display:grid}.payment-method-row .status{justify-self:start}.payment-method-defaults,.invoice-method-selector{border:1px solid var(--border);border-radius:10px;margin:0;padding:14px}.payment-method-defaults legend,.invoice-method-selector legend{padding:0 6px;font-size:12px;font-weight:700}.payment-method-defaults>p,.invoice-method-selector>p{color:var(--text-muted);margin:0 0 10px;font-size:11.5px;line-height:1.45}.payment-method-defaults label,.invoice-method-selector label{cursor:pointer;align-items:center;gap:10px;min-height:36px;display:flex}.payment-method-defaults input,.invoice-method-selector input{width:16px;height:16px;accent-color:var(--accent)}.invoice-method-selector label span{gap:2px;display:grid}.invoice-method-selector label small{color:var(--text-muted)}.financial-payment-methods{border:1px solid var(--border);border-radius:9px;margin-bottom:18px;padding:14px}.financial-payment-methods>p{color:var(--text-muted);margin:5px 0 12px;font-size:11px;line-height:1.45}.financial-payment-methods>div{gap:9px;display:grid}.financial-payment-methods article{border-top:1px solid var(--border);grid-template-columns:145px minmax(0,1fr);gap:6px 12px;padding-top:9px;display:grid}.financial-payment-methods article>div{gap:2px;display:grid}.financial-payment-methods article small{color:var(--text-muted);font-size:10px}.financial-payment-methods article p{white-space:pre-wrap;margin:0;font-size:11px;line-height:1.45}.financial-payment-methods article a{overflow-wrap:anywhere;color:var(--accent);grid-column:2;font-size:10px}.financial-document.pdf-exporting{--surface:#fff;--surface-muted:#f7f9fc;--surface-subtle:#f7f9fc;--text:#10213f;--text-muted:#5f6f8f;--text-faint:#7c89a4;--border:#d9e1ee;--accent:#0878ed;--danger:#c83d38;--warning:#9a6418;--success:#187a5a;color:var(--text);background:#fff}.pdf-export-host{pointer-events:none;background:#fff;width:760px;padding:0;position:fixed;top:0;left:-10000px}.pdf-export-host .financial-document{width:760px;padding:28px}.financial-document.pdf-exporting .financial-parties{grid-template-columns:1fr 1fr}.financial-document.pdf-exporting .financial-items{overflow:visible}.financial-document.pdf-exporting .financial-items-head,.financial-document.pdf-exporting .financial-item-row{grid-template-columns:minmax(0,1fr) 60px 110px 110px;min-width:0}.financial-document.pdf-exporting .document-status{white-space:nowrap;background:0 0;border:0;border-radius:0;flex:none;min-width:0;height:auto;padding:0;font-size:11px;font-weight:700;line-height:1.2;display:inline-block}.financial-document.pdf-exporting .document-status-pending{color:#8a5a18}.financial-document.pdf-exporting .document-status-cancelled{color:#a23431}.financial-document.pdf-exporting .document-status-paid{color:#176b5a}.financial-document.pdf-exporting .document-disclaimer{color:#7c89a4}.financial-document.pdf-exporting .no-print{display:none!important}.settings-reminder-note{border:1px solid var(--border);color:var(--accent);background:var(--surface-accent);border-radius:10px;align-items:flex-start;gap:10px;margin:16px 20px;padding:13px 15px;display:flex}.settings-reminder-note p{color:var(--text-muted);margin:0;font-size:11.5px;line-height:1.5}.settings-storage{gap:18px;padding:20px;display:grid}.settings-storage>header{grid-template-columns:44px minmax(0,1fr);align-items:center;gap:13px;display:grid}.settings-storage>header>div{gap:5px;display:grid}.settings-storage>header strong{font-size:15px}.settings-storage>header p,.settings-storage article p,.settings-storage-guidance p,.settings-storage-error p{color:var(--text-muted);margin:0;font-size:11.5px;line-height:1.5}.settings-storage-icon{width:44px;height:44px;color:var(--accent);background:var(--accent-soft);border-radius:12px;place-items:center;display:grid}.settings-storage-meters{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.settings-storage-meters article{border:1px solid var(--border);background:var(--surface-subtle);border-radius:12px;gap:12px;padding:16px;display:grid}.settings-storage-meters article>div{justify-content:space-between;align-items:center;gap:16px;display:flex}.settings-storage-meters article span{color:var(--text-muted);font-size:11px;font-weight:650}.settings-storage-meters progress{appearance:none;background:var(--surface-muted);border:0;border-radius:999px;width:100%;height:8px;overflow:hidden}.settings-storage-meters progress::-webkit-progress-bar{background:var(--surface-muted);border-radius:999px}.settings-storage-meters progress::-webkit-progress-value{background:var(--accent);border-radius:999px}.settings-storage-meters progress::-moz-progress-bar{background:var(--accent);border-radius:999px}.settings-storage-guidance{color:var(--accent);border:1px solid var(--border);background:var(--surface-accent);border-radius:11px;grid-template-columns:auto minmax(0,1fr);align-items:start;gap:11px;padding:14px;display:grid}.settings-storage-guidance>div{gap:5px;display:grid}.settings-storage-actions{flex-wrap:wrap;gap:10px;display:flex}.settings-storage-actions a{text-decoration:none}.settings-storage-error{border:1px solid var(--border);border-radius:11px;justify-content:space-between;align-items:center;gap:16px;padding:14px;display:flex}.notification-list .data-row{padding-inline:16px}.notification-icon{width:38px;height:38px;color:var(--accent);background:var(--accent-soft);border-radius:10px;place-items:center;display:grid}.notification-icon svg{width:18px;height:18px}.danger-zone{border:1px solid var(--danger);justify-content:space-between;align-items:center;gap:24px;min-height:108px;margin:18px;padding:18px;display:flex}@supports (color:color-mix(in lab,red,red)){.danger-zone{border:1px solid color-mix(in srgb,var(--danger) 42%,var(--border))}}.danger-zone{background:var(--danger);border-radius:10px}@supports (color:color-mix(in lab,red,red)){.danger-zone{background:color-mix(in srgb,var(--danger) 5%,var(--surface))}}.danger-zone>div{gap:5px;display:grid}.danger-zone strong{color:var(--danger)}.danger-zone p{max-width:600px;color:var(--text-muted);margin:0;font-size:11.5px;line-height:1.5}.delete-account-form{gap:16px;display:grid}.delete-warning{border:1px solid var(--danger);grid-template-columns:auto minmax(0,1fr);align-items:start;gap:11px;padding:13px 14px;display:grid}@supports (color:color-mix(in lab,red,red)){.delete-warning{border:1px solid color-mix(in srgb,var(--danger) 38%,var(--border))}}.delete-warning{color:var(--danger);background:var(--danger);border-radius:10px}@supports (color:color-mix(in lab,red,red)){.delete-warning{background:color-mix(in srgb,var(--danger) 6%,var(--surface))}}.delete-warning svg{width:20px}.delete-warning p{color:var(--text-muted);margin:0;font-size:11.5px;line-height:1.55}@media(max-width:900px){.calendar-toolbar{flex-direction:column;align-items:stretch}.calendar-controls{justify-content:space-between}.calendar-controls .segmented-control{margin-right:auto}.calendar-month{min-width:700px}.schedule-calendar{overflow-x:auto}.settings-row,.settings-info-row{grid-template-columns:1fr auto}.settings-row>div:first-child{grid-column:1/-1}.settings-toggle-row>div:first-child{grid-column:1}.settings-action-value{grid-column:2}}@media(max-width:700px){.topbar-account>span:not(.avatar),.topbar-account>svg{display:none}.topbar-account{grid-template-columns:auto;padding:4px}.public-actions>.choice-trigger{width:36px;padding:0;font-size:0}.footer-brand{flex-direction:column;align-items:flex-start}.footer-legal{flex-wrap:wrap;align-items:flex-start;gap:10px 24px;margin-left:0}.calendar-controls{flex-wrap:wrap;align-items:stretch}.calendar-controls .segmented-control{width:100%}.calendar-controls .segmented-control button{flex:1}.messages-page{height:calc(100dvh - 89px);min-height:min(520px,100dvh - 89px)}.messages-page .page-header{padding-inline:14px}.messages-page .messages-layout{margin-inline:-14px}.chat-messages{padding:18px 12px}.message-group{max-width:88%}.financial-parties,.settings-row{grid-template-columns:1fr}.settings-account-section-header{flex-direction:column;align-items:stretch}.settings-account-section-header .button{width:100%}.settings-info-row{grid-template-columns:1fr}.settings-row>div:first-child{grid-column:auto}.settings-row .button{justify-self:stretch}.settings-action-value{grid-column:auto;justify-self:start}.settings-export-row{grid-template-columns:36px minmax(0,1fr)}.settings-export-row .button{grid-column:1/-1}.danger-zone{flex-direction:column;align-items:stretch}.danger-zone .button{width:100%}.payment-methods-header{flex-direction:column;align-items:stretch}.payment-methods-header .button{width:100%}.financial-payment-methods article{grid-template-columns:1fr}.financial-payment-methods article a{grid-column:auto}.settings-surface>.segmented-control{grid-template-columns:repeat(auto-fit,minmax(120px,1fr));width:100%;display:grid;overflow:visible}.settings-surface>.segmented-control button{white-space:normal;min-width:0;padding-inline:8px}.settings-storage-meters{grid-template-columns:1fr}.settings-storage-actions{display:grid}}@media(max-width:520px){.messages-layout{grid-template-columns:72px minmax(0,1fr)}.conversation-item{padding-inline:8px}.chat-header{padding-inline:10px}.message-group{max-width:94%}}.settings-workspaces{border:1px solid var(--border);background:var(--surface);border-radius:12px;margin:16px;overflow:hidden}.settings-workspaces>header{border-bottom:1px solid var(--border);background:var(--surface-subtle);gap:5px;padding:16px;display:grid}.settings-workspaces>header strong{font-size:14px}.settings-workspaces>header p,.settings-workspace-row p{color:var(--text-muted);margin:0;font-size:11.5px;line-height:1.5}.settings-workspace-row{border-bottom:1px solid var(--border);grid-template-columns:40px minmax(0,1fr) auto 132px;align-items:center;gap:14px;min-height:78px;padding:12px 14px;display:grid}.settings-workspace-row:last-child{border-bottom:0}.settings-workspace-row>div{gap:4px;display:grid}.settings-workspace-icon{width:38px;height:38px;color:var(--accent);background:var(--accent-soft);border-radius:10px;place-items:center;display:grid}.settings-workspace-row .button{justify-self:stretch}.student-private-home{margin-bottom:18px;overflow:hidden}.student-private-copy{border-bottom:1px solid var(--border);background:linear-gradient(120deg,var(--surface-accent),var(--surface));align-items:flex-start;gap:14px;padding:20px;display:flex}.student-private-copy h2{letter-spacing:-.02em;margin:0;font-size:20px}.student-private-copy p{max-width:720px;color:var(--text-muted);margin:6px 0 0;font-size:12.5px;line-height:1.6}.student-private-icon{width:42px;height:42px;color:var(--accent);border:1px solid var(--accent);flex:none;place-items:center;display:grid}@supports (color:color-mix(in lab,red,red)){.student-private-icon{border:1px solid color-mix(in srgb,var(--accent) 18%,var(--border))}}.student-private-icon{background:var(--surface);border-radius:12px}.student-private-actions{grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.student-private-actions button{border:0;border-right:1px solid var(--border);min-height:96px;color:inherit;background:var(--surface);text-align:left;cursor:pointer;grid-template-columns:28px minmax(0,1fr) 16px;align-items:center;gap:10px;padding:15px;display:grid}.student-private-actions button:last-child{border-right:0}.student-private-actions button:hover{background:var(--surface-muted)}.student-private-actions button:focus-visible{box-shadow:inset var(--focus);outline:0;position:relative}.student-private-actions button>svg:first-child{color:var(--accent)}.student-private-actions button>svg:last-child{color:var(--text-faint)}.student-private-actions button span{gap:4px;min-width:0;display:grid}.student-private-actions strong{font-size:12.5px}.student-private-actions small{color:var(--text-muted);font-size:10.5px;line-height:1.35;overflow:hidden}.student-personal-tasks{margin-bottom:18px}.student-personal-empty{min-height:72px;color:var(--text-muted);justify-content:space-between;align-items:center;gap:18px;padding:12px 16px;font-size:12px;display:flex}.student-connect-teacher{grid-template-columns:44px minmax(0,1fr) auto;align-items:center;gap:15px;min-height:104px;padding:18px 20px;display:grid}.student-connect-teacher>span{width:42px;height:42px;color:var(--accent);background:var(--accent-soft);border-radius:12px;place-items:center;display:grid}.student-connect-teacher h2{margin:0;font-size:15px}.student-connect-teacher p{color:var(--text-muted);margin:5px 0 0;font-size:11.5px;line-height:1.5}.personal-task-summary{grid-template-columns:minmax(0,1fr) minmax(260px,.8fr) auto;align-items:center;gap:22px;min-height:92px;margin-bottom:16px;padding:16px 18px;display:grid}.personal-task-summary>div{align-items:center;gap:12px;display:flex}.personal-task-summary>div>div,.personal-task-privacy span{gap:4px;display:grid}.personal-task-summary p{color:var(--text-muted);margin:0;font-size:11.5px}.personal-task-summary-icon{width:42px;height:42px;color:var(--accent);background:var(--accent-soft);border-radius:12px;flex:none;place-items:center;display:grid}.personal-task-privacy{border-left:1px solid var(--border);color:var(--accent);padding-left:20px}.personal-task-privacy strong{color:var(--text);font-size:12px}.personal-task-privacy small{color:var(--text-muted);font-size:10.5px}.personal-task-limit{color:var(--text-muted);white-space:nowrap;font-size:11px}.personal-task-list{min-height:220px}.personal-task-list>.empty-state{min-height:300px}.personal-task-row{border-bottom:1px solid var(--border);grid-template-columns:36px minmax(0,1fr) auto 36px;align-items:center;gap:13px;min-height:76px;padding:11px 14px;display:grid}.personal-task-row:last-child{border-bottom:0}.personal-task-check{width:30px;height:30px;color:var(--success);cursor:pointer;background:0 0;border:0;border-radius:50%;place-items:center;padding:0;display:grid}.personal-task-check span{border:1.5px solid var(--border-strong);border-radius:50%;width:19px;height:19px}.personal-task-check:hover{background:var(--surface-muted)}.personal-task-check:focus-visible{box-shadow:var(--focus);outline:0}.personal-task-check svg{width:21px;height:21px}.personal-task-copy{gap:4px;min-width:0;display:grid}.personal-task-copy strong{font-size:13px}.personal-task-copy p{max-width:720px;color:var(--text-muted);text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:11px;line-height:1.45;overflow:hidden}.personal-task-copy>span{color:var(--text-faint);align-items:center;gap:5px;font-size:10.5px;display:inline-flex}.personal-task-row-complete .personal-task-copy strong{color:var(--text-muted);text-decoration:line-through}.personal-task-row-complete .personal-task-copy p{opacity:.7}.visually-hidden{clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important;width:1px!important;height:1px!important;margin:-1px!important;padding:0!important;position:absolute!important;overflow:hidden!important}@media(max-width:900px){.student-private-actions{grid-template-columns:1fr 1fr}.student-private-actions button:nth-child(2){border-right:0}.student-private-actions button:nth-child(-n+2){border-bottom:1px solid var(--border)}.settings-workspace-row{grid-template-columns:40px minmax(0,1fr) auto}.settings-workspace-row .button{grid-column:2/-1;justify-self:start}.personal-task-summary{grid-template-columns:1fr auto}.personal-task-privacy{border-left:0;grid-column:1;padding-left:0}}@media(max-width:620px){.student-private-actions{grid-template-columns:1fr}.student-private-actions button{border-right:0;border-bottom:1px solid var(--border);min-height:78px}.student-private-actions button:last-child{border-bottom:0}.student-connect-teacher{grid-template-columns:42px minmax(0,1fr)}.student-connect-teacher .button{grid-column:1/-1;justify-self:stretch}.student-personal-empty{flex-direction:column;align-items:stretch}.personal-task-summary{grid-template-columns:1fr}.personal-task-privacy,.personal-task-limit{grid-column:auto}.personal-task-row{grid-template-columns:32px minmax(0,1fr) 34px}.personal-task-row>.status{grid-column:2;justify-self:start}.personal-task-row>.more-menu-root{grid-area:1/3/3}.settings-workspace-row{grid-template-columns:38px minmax(0,1fr)}.settings-workspace-row>.status{grid-column:2;justify-self:start}.settings-workspace-row .button{grid-column:1/-1;justify-self:stretch}}.conversation-item>.nav-badge{aspect-ratio:1;flex:none;width:22px;min-width:22px;height:22px;padding:0}.chat-mobile-back{display:none}.more-menu-root{display:inline-flex;position:relative}.more-menu-content{position:fixed}.more-menu-content.more-menu-contained{z-index:4;position:absolute;top:auto;bottom:calc(100% + 6px);right:0}.more-menu-content .menu-item{text-align:left;background:0 0;border:0;width:100%}.more-menu-content .menu-item:hover,.more-menu-content .menu-item:focus-visible{background:var(--surface-muted)}.payment-record-row{grid-template-columns:minmax(0,1fr) 160px 104px 138px 36px}.payment-record-identity{grid-template-columns:38px minmax(0,1fr);align-items:center;gap:12px;min-width:0;display:grid}.payment-record-receipt{gap:3px;min-width:0;display:grid}.payment-record-amount{width:104px;color:var(--text-muted);text-align:right;font-variant-numeric:tabular-nums;justify-self:end;font-size:12px}.payment-record-status{justify-self:start;align-items:center;width:138px;display:flex}.receipt-available{color:var(--accent);white-space:nowrap;align-items:center;gap:5px;font-size:11px;font-weight:680;display:inline-flex}.payment-proof-panel{border:1px dashed var(--border-strong);border-radius:var(--radius-md);background:var(--surface-muted);gap:12px;margin:18px 0;padding:16px;display:grid}.payment-proof-panel-attached{border-style:solid;border-color:var(--accent)}@supports (color:color-mix(in lab,red,red)){.payment-proof-panel-attached{border-color:color-mix(in srgb,var(--accent) 30%,var(--border))}}.payment-proof-panel-attached{background:var(--accent-soft)}@supports (color:color-mix(in lab,red,red)){.payment-proof-panel-attached{background:color-mix(in srgb,var(--accent-soft) 44%,var(--surface))}}.payment-proof-heading{grid-template-columns:38px minmax(0,1fr);align-items:start;gap:11px;display:grid}.payment-proof-heading>div{gap:4px;min-width:0;display:grid}.payment-proof-heading strong{font-size:13px}.payment-proof-heading p{color:var(--text-muted);margin:0;font-size:11px;line-height:1.5}.payment-proof-file button{border:1px solid var(--border);border-radius:var(--radius-sm);width:100%;min-width:0;color:var(--text);background:var(--surface);text-align:left;cursor:pointer;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;padding:10px 12px;display:grid}.payment-proof-file button:hover{border-color:var(--accent)}.payment-proof-file span{gap:3px;min-width:0;display:grid}.payment-proof-file strong,.payment-proof-file small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.payment-proof-file strong{font-size:12px}.payment-proof-file small,.payment-proof-hint{color:var(--text-muted);font-size:10.5px}.payment-proof-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.payment-proof-actions label{cursor:pointer}.payment-proof-actions input{opacity:0;pointer-events:none;width:1px;height:1px;position:absolute;overflow:hidden}.payment-proof-feedback{color:var(--accent);margin:0;font-size:11px;font-weight:650}.payment-document-switch{justify-content:center;margin:0 0 16px;display:flex}.payment-document-switch .segmented-control button{min-width:112px}@media(max-width:760px){.payment-record-row{grid-template-columns:minmax(0,1fr) auto 36px;row-gap:5px}.payment-record-identity{grid-area:1/1}.payment-record-receipt{grid-area:2/1;padding-left:50px}.payment-record-amount{grid-area:1/2;width:auto}.payment-record-status{grid-area:2/2;justify-self:end;width:auto}.payment-record-row>.data-row-action{grid-area:1/3/3}}@media(max-width:800px){.messages-layout{grid-template-columns:1fr;height:calc(100dvh - 170px);min-height:520px}.messages-layout:not(.messages-mobile-chat) .chat-panel,.messages-layout:not(.messages-mobile-chat)>.empty-state{display:none}.messages-mobile-chat{height:calc(100dvh - 84px);margin-top:-4px}.messages-mobile-chat .conversation-list,.messages-page:has(.messages-mobile-chat)>.page-header{display:none}.conversation-list{border-right:0}.conversation-search{display:block}.conversation-item{grid-template-columns:auto minmax(0,1fr) auto;justify-items:stretch;min-height:76px;padding-inline:14px}.conversation-item>span:not(.avatar){display:grid}.conversation-item .nav-badge{place-items:center;display:grid}.chat-header .button.chat-mobile-back{margin-left:-4px;display:inline-flex}.chat-header{padding-inline:8px 10px}}@media print{body:has(.financial-document-complete)>#root,body:has(.financial-document-complete)>.dialog-overlay,.dialog-header,.dialog-footer,.app-sidebar,.app-topbar,.page-header{display:none!important}body:has(.financial-document-complete)>.dialog-content{width:auto;max-width:none;max-height:none;box-shadow:none;border:0;display:block;position:static;transform:none}.dialog-body{overflow:visible}.financial-document{color:#111;break-inside:avoid;page-break-inside:avoid}}.relationship-back{min-height:34px;color:var(--text-muted);cursor:pointer;background:0 0;border:0;align-items:center;gap:6px;margin:-8px 0 12px;padding:0;font-size:12px;display:inline-flex}.relationship-back:hover{color:var(--accent)}.relationship-archived-notice{margin-bottom:16px}.relationship-hero{justify-content:space-between;align-items:center;gap:24px;min-height:132px;padding:20px;display:flex}.relationship-person{align-items:center;gap:16px;min-width:0;display:flex}.relationship-person>div{min-width:0}.relationship-name-line{align-items:center;gap:10px;display:flex}.relationship-name-line h2{letter-spacing:-.6px;margin:0;font-size:22px}.relationship-person p{color:var(--text-muted);margin:5px 0}.relationship-person>div>span{color:var(--text-faint);font-size:11.5px}.relationship-identity{align-items:center;gap:24px;display:flex}.relationship-identity>span{gap:4px;display:grid}.relationship-identity small{color:var(--text-faint);letter-spacing:.04em;text-transform:uppercase;font-size:10px;font-weight:650}.relationship-identity strong{text-overflow:ellipsis;white-space:nowrap;max-width:160px;font-size:12px;overflow:hidden}.relationship-support-reference{align-items:center;gap:4px;display:flex}.relationship-support-reference-copy{gap:4px;min-width:0;display:grid}.relationship-support-reference-copy small{color:var(--text-faint);letter-spacing:.04em;text-transform:uppercase;font-size:10px;font-weight:650}.relationship-support-reference-copy code{color:var(--text);white-space:nowrap;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:11.5px;font-weight:650}.relationship-support-reference-actions{align-items:center;display:flex}.relationship-support-reference-actions .button-icon{width:30px;height:30px}.relationship-support-reference-full{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-muted);gap:8px;min-width:0;padding:14px;display:grid}.relationship-support-reference-full small{color:var(--text-muted)}.relationship-support-reference-full code{overflow-wrap:anywhere;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:12px;font-weight:650}.relationship-tabs{margin:18px 0}.relationship-tabs .segmented-control{width:100%}.relationship-tabs .segmented-control button{flex:1}.relationship-tab-content{min-width:0}.relationship-section{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface);overflow:hidden}.relationship-section>.section-header{min-height:52px;padding:0 16px}.relationship-section>.data-row{content-visibility:auto;contain-intrinsic-size:62px;padding-inline:16px}.relationship-section>.empty-state{min-height:220px}.relationship-row-actions{align-items:center;gap:6px;display:flex}.relationship-overview{gap:16px;display:grid}.relationship-metrics{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;display:grid}.relationship-metric{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface);grid-template-columns:auto minmax(0,1fr);align-items:start;gap:12px;min-height:118px;padding:17px;display:grid}.relationship-metric>span{width:36px;height:36px;color:var(--accent);background:var(--accent-soft);border-radius:9px;place-items:center;display:grid}.relationship-metric>span svg{width:18px}.relationship-metric>div{gap:5px;min-width:0;display:grid}.relationship-metric small{color:var(--text-muted);font-size:10.5px}.relationship-metric strong{font-size:17px;line-height:1.25;overflow:hidden}.relationship-metric p{color:var(--text-muted);text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:10.5px;overflow:hidden}.relationship-metric-detail{min-width:0;color:var(--text-muted);font-size:10.5px}.relationship-metric .progress-wrap{min-width:0;margin-top:2px}.relationship-metric .progress-label{font-size:10px}.relationship-package-layout{grid-template-columns:1fr;align-items:start;gap:16px;display:grid}.relationship-dual{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start;gap:16px;display:grid}.relationship-package-cards{grid-template-columns:repeat(auto-fit,minmax(min(280px,100%),1fr));gap:10px;padding:14px;display:grid}.relationship-section>.data-row{grid-template-columns:38px minmax(0,1fr) minmax(140px,180px) minmax(105px,135px) 36px}.relationship-section>.data-row .data-row-meta,.relationship-section>.data-row .data-row-status{justify-self:start}.relationship-package-card{border:1px solid var(--border);background:var(--surface-muted);border-radius:10px;gap:14px;padding:15px;display:grid}.relationship-package-card.package-card-expired{border-color:var(--danger)}@supports (color:color-mix(in lab,red,red)){.relationship-package-card.package-card-expired{border-color:color-mix(in srgb,var(--danger) 28%,var(--border))}}.relationship-package-card.package-card-expired{background:var(--danger)}@supports (color:color-mix(in lab,red,red)){.relationship-package-card.package-card-expired{background:color-mix(in srgb,var(--danger) 6%,var(--surface-muted))}}.relationship-package-card header{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.relationship-package-card header>div{gap:4px;display:grid}.relationship-package-card header>.relationship-package-actions{align-items:center;gap:6px;display:flex}.relationship-package-card header strong{font-size:13px}.relationship-package-card header small,.relationship-package-card>small{color:var(--text-muted);font-size:10.5px}.package-card-meta{color:var(--text-muted);flex-wrap:wrap;justify-content:space-between;gap:8px 14px;font-size:10.5px;display:flex}.ledger-status{flex-wrap:wrap;justify-content:flex-start;align-items:center;gap:5px;display:flex}.package-ledger-row{border-bottom:1px solid var(--border);grid-template-columns:minmax(220px,1.25fr) minmax(210px,1fr) minmax(190px,.8fr) 36px;align-items:center;gap:18px;min-height:70px;padding:11px 16px;display:grid}.package-ledger-row:last-child{border-bottom:0}.package-ledger-reason,.package-ledger-source{gap:4px;min-width:0;display:grid}.package-ledger-reason strong,.package-ledger-source strong{text-overflow:ellipsis;white-space:nowrap;font-size:13px;overflow:hidden}.package-ledger-reason small,.package-ledger-source small{color:var(--text-muted);text-overflow:ellipsis;white-space:nowrap;font-size:11px;overflow:hidden}.package-ledger-action{justify-content:flex-end;width:36px;display:flex}.lesson-completion-note{border:1px solid var(--accent);grid-column:1/-1;padding:13px 14px}@supports (color:color-mix(in lab,red,red)){.lesson-completion-note{border:1px solid color-mix(in srgb,var(--accent) 24%,var(--border))}}.lesson-completion-note{background:var(--surface-accent);border-radius:9px}.lesson-completion-note>div{justify-content:space-between;align-items:center;gap:12px;display:flex}.lesson-completion-note p{white-space:pre-wrap;margin:9px 0 0;line-height:1.55}.lesson-row{position:relative}.lesson-row>:not(.lesson-row-hit){z-index:2;position:relative}.lesson-row .menu-content,.lesson-row .icon-button{pointer-events:auto}.lesson-row-hit{z-index:1;border-radius:inherit;cursor:pointer;background:0 0;border:0;position:absolute;inset:0}.lesson-row:has(.lesson-row-hit:hover){background:var(--surface-muted)}.lesson-row-hit:focus-visible{box-shadow:inset var(--focus);outline:0}.package-balance-preview{border:1px solid var(--border);border-radius:var(--radius-sm);min-height:48px;color:var(--text-muted);background:var(--surface-muted);grid-template-columns:auto 1fr auto;align-items:center;gap:10px;padding:0 13px;display:grid}.package-balance-preview svg{color:var(--accent)}.package-balance-preview strong{color:var(--text);font-size:18px}.relationship-inline-loading{min-height:86px;color:var(--text-muted);justify-content:center;align-items:center;gap:8px;font-size:12px;display:flex}.relationship-not-found{place-items:center;min-height:65vh;display:grid}.relationship-loading{min-height:55vh;color:var(--text-muted);align-content:center;place-items:center;gap:10px;display:grid}.list-pagination{border-top:1px solid var(--border);justify-content:center;padding:14px;display:flex}.student-teacher-hero{align-items:center;gap:18px;min-height:122px;padding:20px;display:flex}.student-teacher-hero>div{min-width:0}.student-teacher-hero>.relationship-support-reference{flex:none;margin-left:auto}.student-teacher-hero p{color:var(--text-muted);margin:5px 0}.student-teacher-hero>div>span{color:var(--text-faint);font-size:11.5px}.student-teacher-hub{gap:16px;margin-top:16px;display:grid}.student-teacher-grid{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:16px;display:grid}.student-teacher-span{grid-column:1/-1}.student-teacher-grid>.relationship-section:not(.student-teacher-span)>.data-row{grid-template-columns:38px minmax(0,1fr) auto 36px}.student-teacher-grid>.relationship-section:not(.student-teacher-span)>.data-row>.file-icon,.student-teacher-grid>.relationship-section:not(.student-teacher-span)>.data-row>.avatar{grid-area:1/1/3}.student-teacher-grid>.relationship-section:not(.student-teacher-span)>.data-row .data-row-copy{grid-area:1/2}.student-teacher-grid>.relationship-section:not(.student-teacher-span)>.data-row .data-row-meta{grid-area:2/2}.student-teacher-grid>.relationship-section:not(.student-teacher-span)>.data-row .data-row-status{grid-area:1/3/3}.student-teacher-grid>.relationship-section:not(.student-teacher-span)>.data-row .data-row-action{grid-area:1/4/3}.student-package-list{gap:10px;padding:14px;display:grid}.student-package-list article{border:1px solid var(--border);background:var(--surface-muted);border-radius:10px;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:10px 16px;padding:14px;display:grid}.student-package-list article>div{gap:4px;min-width:0;display:grid}.student-package-list article strong{text-overflow:ellipsis;white-space:nowrap;font-size:13px;overflow:hidden}.student-package-list article small{color:var(--text-muted);font-size:10.5px}.student-package-list .progress-wrap{grid-column:1/-1}.student-credit-history{display:grid}.student-credit-row{border-bottom:1px solid var(--border);grid-template-columns:38px minmax(0,1fr) minmax(170px,auto);align-items:center;gap:12px;min-height:66px;padding:10px 16px;display:grid}.student-credit-row:last-child{border-bottom:0}.student-credit-row>div{gap:4px;min-width:0;display:grid}.student-credit-row strong{font-size:12.5px}.student-credit-row small{color:var(--text-muted);font-size:10.5px}.student-credit-row .status{justify-self:end}.student-inline-empty{min-height:92px;color:var(--text-muted);text-align:center;place-items:center;padding:18px;font-size:12px;display:grid}@media(max-width:1000px){.relationship-metrics{grid-template-columns:1fr 1fr}.relationship-identity{gap:12px}.student-teacher-grid{grid-template-columns:1fr}.student-teacher-span{grid-column:auto}}@media(max-width:760px){.relationship-hero{flex-direction:column;align-items:flex-start}.relationship-identity{border-top:1px solid var(--border);justify-content:space-between;width:100%;padding-top:14px}.relationship-tabs{overflow-x:auto}.relationship-tabs .segmented-control{width:max-content;min-width:100%}.relationship-tabs .segmented-control button{flex:none}.relationship-dual{grid-template-columns:1fr}.relationship-section>.data-row{grid-template-columns:38px minmax(0,1fr) auto 36px}.relationship-section>.data-row>.file-icon,.relationship-section>.data-row>.avatar{grid-area:1/1/3}.relationship-section>.data-row .data-row-copy{grid-area:1/2}.relationship-section>.data-row .data-row-meta{grid-area:2/2}.relationship-section>.data-row .data-row-status{grid-area:1/3/3}.relationship-section>.data-row .data-row-action{grid-area:1/4/3}}@media(max-width:520px){.relationship-person .avatar-xl{width:64px;height:64px}.relationship-name-line{flex-direction:column;align-items:flex-start;gap:6px}.relationship-metrics{grid-template-columns:1fr}.relationship-metric{min-height:92px}.relationship-identity{flex-wrap:wrap}.relationship-identity>.relationship-support-reference{border-bottom:1px solid var(--border);flex:100%;padding-bottom:10px}.student-teacher-hero{flex-wrap:wrap;align-items:flex-start}.student-teacher-hero>.relationship-support-reference{border-top:1px solid var(--border);width:100%;margin-left:0;padding-top:12px}.student-credit-row{grid-template-columns:38px minmax(0,1fr)}.student-credit-row .status{grid-column:2;justify-self:start}}.profile-editor-surface{overflow:hidden}main:has(.profile-editor-surface) .page-header{flex-wrap:wrap;align-items:flex-start}main:has(.profile-editor-surface) .page-actions{flex-wrap:wrap;justify-content:flex-end}.profile-validation-summary{border-bottom:1px solid var(--warning);grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;min-height:70px;padding:14px 16px;display:grid}@supports (color:color-mix(in lab,red,red)){.profile-validation-summary{border-bottom:1px solid color-mix(in srgb,var(--warning) 35%,var(--border))}}.profile-validation-summary{background:var(--warning)}@supports (color:color-mix(in lab,red,red)){.profile-validation-summary{background:color-mix(in srgb,var(--warning) 8%,var(--surface))}}.profile-validation-summary>span{width:34px;height:34px;color:var(--warning);background:var(--warning);border-radius:50%;place-items:center;display:grid}@supports (color:color-mix(in lab,red,red)){.profile-validation-summary>span{background:color-mix(in srgb,var(--warning) 13%,var(--surface))}}.profile-validation-summary>span svg{width:18px}.profile-validation-summary>div{gap:3px;min-width:0;display:grid}.profile-validation-summary strong{font-size:12.5px}.profile-validation-summary p{color:var(--text);margin:0;font-size:11px;line-height:1.5}.profile-validation-summary.is-ready{border-bottom-color:var(--success)}@supports (color:color-mix(in lab,red,red)){.profile-validation-summary.is-ready{border-bottom-color:color-mix(in srgb,var(--success) 30%,var(--border))}}.profile-validation-summary.is-ready{background:var(--success)}@supports (color:color-mix(in lab,red,red)){.profile-validation-summary.is-ready{background:color-mix(in srgb,var(--success) 7%,var(--surface))}}.profile-validation-summary.is-ready>span{color:var(--success);background:var(--success)}@supports (color:color-mix(in lab,red,red)){.profile-validation-summary.is-ready>span{background:color-mix(in srgb,var(--success) 12%,var(--surface))}}.profile-editor-tabs{border-bottom:1px solid var(--border);background:var(--surface-muted);padding:12px}.profile-editor-tabs .segmented-control{width:100%;overflow-x:auto}.profile-editor-tabs .segmented-control button{flex:1 0 auto}.profile-workbench{grid-template-columns:minmax(0,1fr) 310px;min-height:600px;display:grid}.profile-editor-main{border-right:1px solid var(--border);min-width:0;padding:24px}.profile-form-section{gap:22px;display:grid}.profile-form-section+.profile-form-section{border-top:1px solid var(--border);margin-top:30px;padding-top:28px}.profile-form-section>header{justify-content:space-between;align-items:flex-start;gap:18px;display:flex}.profile-form-section>header h2,.profile-section-settings h2{margin:0;font-size:18px}.profile-form-section>header p,.profile-section-settings header p{max-width:650px;color:var(--text-muted);margin:5px 0 0;font-size:12px;line-height:1.55}.profile-item-stack{gap:12px;display:grid}.profile-link-groups{gap:18px;display:grid}.profile-item-editor{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface);overflow:hidden}.profile-item-editor:focus{outline:3px solid var(--accent)}@supports (color:color-mix(in lab,red,red)){.profile-item-editor:focus{outline:3px solid color-mix(in srgb,var(--accent) 25%,transparent)}}.profile-item-editor:focus{outline-offset:2px}.profile-item-editor>header{border-bottom:1px solid var(--border);background:var(--surface-muted);justify-content:space-between;align-items:center;min-height:46px;padding:5px 8px 5px 15px;display:flex}.profile-item-editor>header>strong{color:var(--text-muted);font-size:12px}.profile-item-editor>header>div{align-items:center;gap:2px;display:flex}.profile-item-editor>.form-grid{padding:16px}.profile-review-rating-input{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);align-items:center;gap:2px;min-height:44px;padding:5px 8px;display:flex}.profile-review-rating-input button{width:34px;height:34px;color:var(--border-strong);cursor:pointer;transition:color var(--transition),background var(--transition),transform var(--transition);background:0 0;border:0;border-radius:7px;place-items:center;padding:0;display:grid}.profile-review-rating-input button.is-selected{color:#d99516}.profile-review-rating-input button:hover,.profile-review-rating-input button:focus-visible{color:#d99516;background:#d99516}@supports (color:color-mix(in lab,red,red)){.profile-review-rating-input button:hover,.profile-review-rating-input button:focus-visible{background:color-mix(in srgb,#d99516 10%,var(--surface))}}.profile-review-rating-input button:hover,.profile-review-rating-input button:focus-visible{transform:translateY(-1px)}.profile-review-rating-input button:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.profile-section-settings{background:var(--surface-muted);min-width:0}.profile-section-settings>header{border-bottom:1px solid var(--border);padding:20px}.profile-section-row,.profile-required-row{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:12px;min-height:76px;padding:12px 14px 12px 20px;display:flex}.profile-section-row>span,.profile-required-row>span{gap:3px;min-width:0;display:grid}.profile-section-row strong,.profile-required-row strong{font-size:12px}.profile-section-row small,.profile-required-row small{color:var(--text-muted);font-size:10.5px}.profile-section-row>div{align-items:center;gap:1px;display:flex}.profile-section-row .switch-label{margin-right:4px}.profile-section-row .switch-label>span{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.profile-editor-help{color:var(--text-muted);margin:0;padding:18px 20px;font-size:11px;line-height:1.55}.profile-slug-control{grid-template-columns:minmax(0,1fr) auto;gap:8px;display:grid}.profile-image-upload{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface-muted);grid-template-columns:148px minmax(0,1fr);align-items:center;gap:18px;min-width:0;min-height:176px;padding:14px;display:grid}.profile-image-upload>img,.profile-image-empty{background:var(--surface);border-radius:10px;width:148px;height:148px;overflow:hidden}.profile-image-upload>img{object-fit:cover;display:block}.profile-image-upload-landscape{grid-template-columns:220px minmax(0,1fr);min-height:154px}.profile-image-upload-landscape>img,.profile-image-upload-landscape .profile-image-empty{width:220px;height:124px}.profile-image-upload-portrait{grid-template-columns:112px minmax(0,1fr);min-height:178px}.profile-image-upload-portrait>img,.profile-image-upload-portrait .profile-image-empty{width:112px;height:150px}.profile-image-empty{color:var(--text-muted);align-content:center;place-items:center;gap:7px;font-size:11px;display:grid}.profile-image-actions{flex-wrap:wrap;align-items:center;gap:6px;min-width:0;display:flex}.profile-image-actions .button:not(.button-icon){white-space:normal;width:auto;min-width:0;max-width:100%}.profile-image-actions .button-icon{flex:none}.teacher-profile-page{background:var(--surface);width:min(100%,1500px);margin:auto;padding:18px clamp(22px,4vw,62px) 80px}.teacher-profile-page.profile-accent-indigo{--accent:#2468dc;--accent-soft:#e8f0ff}.teacher-profile-page.profile-accent-teal{--accent:#0f8f84;--accent-soft:#e1f6f2}.teacher-profile-page.profile-accent-coral{--accent:#d45f50;--accent-soft:#fff0ec}.profile-private-preview-notice{margin-bottom:14px}.profile-hero{border:1px solid var(--accent);grid-template-columns:minmax(340px,.9fr) minmax(480px,1.15fr);align-items:center;gap:clamp(38px,6vw,92px);min-height:560px;padding:clamp(44px,6vw,84px);display:grid}@supports (color:color-mix(in lab,red,red)){.profile-hero{border:1px solid color-mix(in srgb,var(--accent) 18%,var(--border))}}.profile-hero{background:linear-gradient(135deg,var(--accent) 0%,var(--teal) 100%);border-radius:22px}@supports (color:color-mix(in lab,red,red)){.profile-hero{background:linear-gradient(135deg,color-mix(in srgb,var(--accent) 10%,var(--surface)),color-mix(in srgb,var(--teal) 7%,var(--surface)))}}.profile-hero-without-video{grid-template-columns:minmax(0,780px);justify-content:start;min-height:460px}.profile-hero-copy{min-width:0;padding:0}.profile-teacher-identity{align-items:center;gap:13px;margin-bottom:26px;display:flex}.profile-teacher-identity .avatar-xl{border:4px solid var(--surface);width:70px;height:70px}@supports (color:color-mix(in lab,red,red)){.profile-teacher-identity .avatar-xl{border:4px solid color-mix(in srgb,var(--surface) 80%,transparent)}}.profile-teacher-identity .avatar-xl{box-shadow:0 8px 28px var(--text)}@supports (color:color-mix(in lab,red,red)){.profile-teacher-identity .avatar-xl{box-shadow:0 8px 28px color-mix(in srgb,var(--text) 12%,transparent)}}.profile-teacher-identity>span{gap:4px;display:grid}.profile-teacher-identity strong{font-size:15px}.profile-teacher-identity .profile-social-links{gap:12px;margin-top:0}.profile-hero-copy h1{letter-spacing:-3px;max-width:680px;margin:0;font-family:Georgia,serif;font-size:clamp(42px,5.4vw,76px);font-weight:500;line-height:.98}.profile-subjects{flex-wrap:wrap;gap:9px 18px;margin:27px 0;display:flex}.profile-subjects span{color:var(--text);align-items:center;gap:6px;font-size:11.5px;display:flex}.profile-hero-actions{flex-wrap:wrap;gap:10px;display:flex}.profile-hero-actions a{text-decoration:none}.profile-social-links{flex-wrap:wrap;gap:16px;display:flex}.profile-social-links a{color:var(--text-muted);align-items:center;gap:5px;font-size:11px;text-decoration:none;display:inline-flex}.profile-social-links a:hover{color:var(--accent)}.profile-video{width:100%;box-shadow:0 25px 60px var(--text);background:#0c1325;border-radius:18px;overflow:hidden}@supports (color:color-mix(in lab,red,red)){.profile-video{box-shadow:0 25px 60px color-mix(in srgb,var(--text) 16%,transparent)}}.profile-video-landscape{aspect-ratio:16/9}.profile-video-portrait{aspect-ratio:9/16;justify-self:center;width:min(100%,320px);max-height:500px}.profile-video iframe,.profile-video>button{border:0;width:100%;height:100%}.profile-video>button{isolation:isolate;color:#fff;cursor:pointer;background:linear-gradient(145deg,#547cab,#173755);align-content:center;place-items:center;gap:14px;display:grid;position:relative;overflow:hidden}.profile-video-poster>img{z-index:-2;object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.profile-video-poster-image:after{content:"";z-index:-1;background:linear-gradient(#09142814,#0914288f);position:absolute;inset:0}.profile-video>button>span{color:#102344;background:#ffffffeb;border-radius:50%;place-items:center;width:64px;height:64px;display:grid}.profile-video small{opacity:.86}.profile-anchor-nav{border-bottom:1px solid var(--border);justify-content:center;align-items:center;gap:28px;min-height:58px;display:flex;overflow-x:auto}.profile-anchor-nav a{color:var(--text-muted);flex:none;font-size:11.5px;text-decoration:none}.profile-anchor-nav a:hover{color:var(--accent)}.profile-content-section{border-bottom:1px solid var(--border);grid-template-columns:minmax(180px,240px) minmax(0,1fr);gap:clamp(36px,7vw,90px);padding:clamp(58px,7vw,92px) 0;scroll-margin-top:20px;display:grid}.profile-content-section>h2,.profile-section-heading h2,.profile-inquiry h2{letter-spacing:-.8px;margin:0;font-family:Georgia,serif;font-size:clamp(30px,3vw,42px);font-weight:400}.profile-content-section>div>p{max-width:820px;color:var(--text-muted);margin:0;font-size:16px;line-height:1.85}.profile-about{padding-block:clamp(50px,6vw,78px)}.profile-about-copy{gap:18px;display:grid}.profile-reviews-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.profile-review{border:1px solid var(--border);background:var(--surface);border-radius:15px;grid-template-rows:auto minmax(0,1fr) auto;min-height:250px;padding:26px;display:grid}.profile-review-stars{color:#d99516;align-items:center;gap:4px;display:flex}.profile-review blockquote{color:var(--text);margin:24px 0 28px;font-family:Georgia,serif;font-size:20px;line-height:1.55}.profile-review footer{align-items:center;gap:12px;display:flex}.profile-review footer .avatar-lg{width:44px;height:44px;color:var(--text);font-weight:700}.profile-review footer strong{font-size:13px}.profile-links-list{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:12px;display:grid}.profile-links-list a{border:1px solid var(--border);min-height:64px;color:var(--text);background:var(--surface);transition:border-color var(--transition),color var(--transition),transform var(--transition);border-radius:12px;justify-content:space-between;align-items:center;gap:14px;padding:16px 18px;text-decoration:none;display:flex}.profile-links-list a:hover{border-color:var(--accent);color:var(--accent);transform:translateY(-1px)}.approach-line{scroll-snap-type:x proximity;grid-auto-columns:minmax(230px,1fr);grid-auto-flow:column;gap:16px;padding-bottom:8px;display:grid;position:relative;overflow-x:auto}.approach-line:before{display:none}.approach-line article{border:1px solid var(--border);text-align:left;scroll-snap-align:start;background:var(--surface);border-radius:14px;min-height:210px;padding:22px}.approach-line article>span{width:auto;height:auto;color:var(--accent);background:0 0;border:0;border-radius:0;margin:0 0 40px;font-family:Georgia,serif;font-size:25px;font-weight:400;display:block}.approach-line h3{margin:0 0 9px;font-size:15px}.approach-line p{color:var(--text-muted);margin:0;font-size:12px;line-height:1.65}.credential-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 30px;display:grid}.credential-row{border-bottom:1px solid var(--border);grid-template-columns:auto 1fr;align-items:center;gap:14px;min-height:78px;display:grid}.credential-copy{gap:6px;min-width:0;display:grid}.credential-row strong{font-size:13px;line-height:1.45;display:block}.credential-row small{color:var(--text-muted);font-size:11px;line-height:1.5;display:block}.profile-courses-section{grid-template-columns:1fr;gap:28px}.profile-section-heading{justify-content:space-between;align-items:end;gap:30px;display:flex}.profile-section-heading p{max-width:520px;color:var(--text-muted);margin:0;font-size:12px;line-height:1.6}.course-rail{scroll-snap-type:x proximity;grid-template-columns:none;grid-auto-columns:minmax(330px,410px);grid-auto-flow:column;gap:18px;padding-bottom:14px;display:grid;overflow-x:auto}.course-rail article{border:1px solid var(--border);scroll-snap-align:start;background:var(--surface);border-radius:15px;grid-template-columns:1fr;gap:0;display:grid;overflow:hidden}.course-image{color:#fff;background:#264f91;border-radius:0;place-items:center;min-height:190px;display:grid;overflow:hidden}.course-image img{object-fit:cover;width:100%;height:100%}.course-rail article>div:last-child{padding:18px}.course-rail h3{color:var(--text);margin:0 0 8px;font-size:16px}.course-rail p{min-height:54px;margin:0 0 16px}.availability-list{grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:10px;display:grid}.availability-list span{border:1px solid var(--border);min-height:76px;color:var(--text-muted);text-align:center;border-radius:10px;place-items:center;padding:18px 22px;font-size:16px;font-weight:400;line-height:1.65;display:grid}.profile-inquiry{grid-template-columns:minmax(180px,240px) minmax(0,1fr);gap:clamp(36px,7vw,90px);padding:clamp(64px,8vw,100px) 0;scroll-margin-top:20px;display:grid}.profile-inquiry>div>p{line-height:1.7}.profile-inquiry form{border:1px solid var(--border);background:var(--surface-muted);border-radius:16px;padding:clamp(20px,3vw,34px)}.profile-inquiry-preview{border:1px solid var(--accent);align-self:start;padding:clamp(22px,3vw,34px)}@supports (color:color-mix(in lab,red,red)){.profile-inquiry-preview{border:1px solid color-mix(in srgb,var(--accent) 24%,var(--border))}}.profile-inquiry-preview{background:var(--accent-soft);border-radius:16px}.profile-inquiry-preview strong{margin-bottom:8px;font-size:15px;display:block}.profile-inquiry-preview p{max-width:620px;color:var(--text-muted);margin:0;line-height:1.7}@media(max-width:1050px){.profile-workbench{grid-template-columns:1fr}.profile-editor-main{border-right:0;border-bottom:1px solid var(--border)}.profile-hero{grid-template-columns:1fr}.profile-video-landscape{justify-self:center;width:min(100%,760px)}.profile-video-portrait{max-height:560px}}@media(max-width:760px){.profile-validation-summary{grid-template-columns:auto minmax(0,1fr)}.profile-validation-summary>.button{grid-column:1/-1;width:100%}.profile-editor-main{padding:16px}.profile-form-section>header,.profile-section-heading{flex-direction:column;align-items:flex-start}.teacher-profile-page{padding-inline:14px}.profile-hero{border-radius:16px;gap:34px;min-height:0;padding:32px 22px}.profile-hero-copy h1{letter-spacing:-2px;font-size:clamp(40px,13vw,58px)}.profile-video-portrait{width:min(100%,280px);max-height:none}.profile-anchor-nav{justify-content:flex-start}.profile-content-section,.profile-inquiry{grid-template-columns:1fr;gap:26px}.profile-reviews-list,.credential-list{grid-template-columns:1fr}.course-rail{grid-auto-columns:minmax(280px,86vw)}}@media(max-width:560px){.profile-slug-control{grid-template-columns:1fr}.profile-slug-control .button{width:100%}.profile-image-upload,.profile-image-upload-landscape,.profile-image-upload-portrait{grid-template-columns:1fr;justify-items:start;gap:12px;min-height:0}.profile-image-upload>img,.profile-image-empty{width:148px;height:148px}.profile-image-upload-landscape>img,.profile-image-upload-landscape .profile-image-empty{aspect-ratio:16/9;width:min(100%,220px);height:auto}.profile-image-upload-portrait>img,.profile-image-upload-portrait .profile-image-empty{width:112px;height:150px}.profile-image-actions{align-items:stretch;width:100%}.profile-image-actions .button:not(.button-icon){width:100%}}.profile-private-preview-notice{text-align:center;flex-wrap:wrap;justify-content:center;align-items:center;gap:10px 26px;margin:18px 0;padding:12px 18px;display:flex}.profile-private-preview-notice a{color:var(--accent);flex:none;font-weight:700;text-decoration:none}.honeypot-field{clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important;width:1px!important;height:1px!important;margin:-1px!important;padding:0!important;position:absolute!important;overflow:hidden!important}@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-outline-style{syntax:"*";inherits:false;initial-value:solid}@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}
