:root{color-scheme:light;--canvas:#f4f6f8;--surface:#ffffff;--surface-soft:#f8fafc;--surface-subtle:#f8fafc;--ink:#0f172a;--ink-strong:#020617;--ink-secondary:#334155;--ink-muted:#64748b;--border:#cbd5e1;--border-strong:#94a3b8;--line:#cbd5e1;--line-strong:#94a3b8;--action:#1d4ed8;--action-hover:#1e40af;--action-soft:#dbeafe;--focus:#2563eb;--success-bg:#dcfce7;--success-text:#166534;--warning-bg:#fef3c7;--warning-text:#92400e;--danger-bg:#fee2e2;--danger-text:#991b1b;--info-bg:#e0f2fe;--info-text:#075985;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:16px;line-height:1.5;color:var(--ink);background:var(--canvas)}.workflow-expander{margin-top:24px;border:1px solid var(--border);border-radius:16px;background:#fff}.workflow-expander>summary{min-height:56px;padding:16px;font-size:16px;font-weight:800;cursor:pointer}.profile-quick-actions{display:flex;justify-content:flex-start;margin:0 0 16px}.profile-quick-actions button{min-height:48px}.reminder-policy-card,.reply-policy-note,.room-management-panel{display:grid;grid-gap:16px;gap:16px;margin:16px;padding:20px;border:1px solid var(--border);border-radius:16px;background:var(--surface);color:var(--ink)}.reminder-options{display:grid;grid-gap:8px;gap:8px;grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.room-management-panel form{display:grid;grid-gap:12px;gap:12px;padding:16px;border:1px solid var(--border);border-radius:12px;background:var(--surface-soft)}.room-list{display:grid;grid-gap:8px;gap:8px}.room-list article{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:12px 0;border-bottom:1px solid var(--border)}.room-list small{display:block;color:var(--ink-muted)}.delivery-toggle{padding:12px;border:1px solid var(--border);border-radius:10px;background:var(--surface-soft)}.template-library-v2 .template-editor-heading small{display:block;margin-top:4px;color:var(--ink-muted)}.admin-workspace{display:grid;grid-gap:24px;gap:24px;padding:16px;color:#18181b}.admin-workspace form,.admin-workspace>article{padding:16px;border:1px solid #d4d4d8;border-radius:16px;background:#fff}.admin-grid,.admin-split{display:grid;grid-gap:16px;gap:16px}.admin-list{display:grid;grid-gap:8px;gap:8px;align-content:start}.admin-list>article,.admin-list>button{width:100%;min-height:64px;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 16px;border:1px solid #d4d4d8;border-radius:12px;background:#fafafa;color:#18181b;text-align:left}.admin-list small,.admin-list span,.attendance-roll small,.attendance-roll span{display:block}.admin-list small,.attendance-roll small{margin-top:4px;color:#52525b}.attendance-roll{display:grid;grid-gap:8px;gap:8px}.attendance-roll article{display:grid;grid-template-columns:64px 1fr;grid-gap:8px 16px;gap:8px 16px;align-items:center;padding:16px;border:1px solid #d4d4d8;border-radius:12px;background:#fff}.segmented{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr;grid-gap:8px;gap:8px}.segmented button{min-height:48px;background:#f4f4f5;color:#27272a;border:2px solid transparent}.segmented button.active{border-color:#166534;background:#dcfce7;color:#14532d}.segmented button.active.absent{border-color:#9f1239;background:#ffe4e6;color:#881337}.sticky-action{position:-webkit-sticky;position:sticky;bottom:88px;z-index:2;width:100%;min-height:52px}.template-apply{margin-bottom:16px;border-color:#93c5fd;background:#eff6ff}@media (min-width:760px){.admin-workspace{padding:24px}.admin-split{grid-template-columns:minmax(280px,.9fr) minmax(360px,1.1fr)}.admin-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.attendance-roll article{grid-template-columns:80px 1fr minmax(220px,.7fr)}.segmented{grid-column:auto}.sticky-action{width:auto;min-width:240px;justify-self:end;bottom:24px}}.student-directory-v2,.student-profile-v2,.student-workflow-form,.student-workflow-page{display:grid;grid-gap:24px;gap:24px;color:#18181b}.student-directory-v2 button,.student-profile-v2 button,.student-workflow-form button,.student-workflow-page button{min-height:44px}.directory-heading h2,.profile-hero h2,.workflow-heading h2{margin:4px 0 8px;color:#09090b}.directory-controls{display:grid;grid-gap:16px;gap:16px;padding:16px;background:#f4f4f5;border:1px solid #d4d4d8;border-radius:12px}.directory-controls label,.form-columns label{margin:0}.results-line{display:flex;align-items:center;justify-content:space-between;min-height:44px}.student-card-v2{background:#fff;color:#18181b;border:1px solid #a1a1aa;text-align:left;box-shadow:0 1px 2px rgba(0,0,0,.06)}.student-card-v2:focus-visible,.student-card-v2:hover{border-color:#18181b;box-shadow:0 0 0 3px #dbeafe}.student-card-v2 b,.student-card-v2 em,.student-card-v2 h3,.student-card-v2 p,.student-card-v2 small{color:#18181b}.student-card-v2 .student-card-head p,.student-card-v2 .student-card-section small{color:#52525b}.status-chip{display:inline-flex;align-items:center;min-height:28px;padding:4px 10px;border:1px solid;border-radius:999px;font-size:14px;font-weight:800;text-transform:capitalize;white-space:nowrap}.student-active{background:#dcfce7;color:#166534}.student-paused{background:#fef3c7;color:#92400e}.student-withdrawn{background:#f4f4f5;color:#3f3f46}.card-alert{display:grid;grid-gap:4px;gap:4px;padding:12px 16px;background:#eff6ff;border-left:4px solid #2563eb;border-radius:8px;color:#1e3a8a}.open-row{display:flex;justify-content:space-between;align-items:center;min-height:44px;padding-top:8px;border-top:1px solid #e4e4e7;font-weight:800;color:#18181b}.bulk-message-panel{display:grid;grid-gap:16px;gap:16px;padding:16px;background:#fff;border:2px solid #27272a;border-radius:12px}.bulk-message-panel h3{margin:0}.message-preview{display:grid;grid-gap:4px;gap:4px;padding:12px 16px;background:#eff6ff;border-radius:8px;color:#1e3a8a}.student-workflow-form,.student-workflow-page>article,.student-workflow-page>form,.student-workflow-page>section{max-width:760px}.student-workflow-form fieldset,.student-workflow-page fieldset{display:grid;grid-gap:16px;gap:16px;margin:0;padding:16px;border:1px solid #d4d4d8;border-radius:12px;background:#fff}.student-workflow-form legend,.student-workflow-page legend{padding:0 8px;font-weight:900;color:#18181b}.embedded-card,.form-columns{display:grid;grid-gap:16px;gap:16px}.embedded-card{padding:16px;background:#f4f4f5;border:1px solid #d4d4d8;border-radius:12px}.embedded-card h3{margin:0}.profile-hero{display:grid;grid-gap:16px;gap:16px;background:#fff;border:1px solid #d4d4d8;border-left:6px solid #27272a;border-radius:12px}.profile-hero p{margin:8px 0 0}.student-action-summary{display:grid;grid-gap:12px;gap:12px}.student-action-summary article{display:grid;grid-gap:6px;gap:6px;padding:16px;background:#fff;border:1px solid #d4d4d8;border-radius:12px}.student-action-summary small{font-weight:900;color:#52525b}.student-action-summary b{font-size:18px;color:#09090b}.profile-grid-v2{display:grid;grid-gap:16px}.profile-grid-v2>article{min-width:0;padding:16px;background:#fff;border:1px solid #d4d4d8;border-radius:12px}.profile-grid-v2 h3{margin:0;color:#18181b}.profile-list-button{min-height:56px}.profile-list-button small,.profile-record small{display:block;color:#52525b;line-height:1.5}.profile-record{display:grid;grid-gap:4px;gap:4px;border-bottom:1px solid #e4e4e7}.profile-record:last-child{border-bottom:0}.full-width{width:100%}.audit-timeline{display:grid;max-height:560px;overflow:auto}.audit-timeline>div{display:grid;grid-template-columns:16px 1fr;grid-gap:8px;gap:8px;padding:12px 0;border-bottom:1px solid #e4e4e7}.audit-dot{width:10px;height:10px;margin-top:7px;border-radius:50%;background:#2563eb}.audit-timeline p{display:grid;grid-gap:4px;gap:4px;margin:0}.audit-timeline b{text-transform:capitalize}.audit-timeline small{color:#52525b}.document-list article,.record-with-action{display:grid;grid-gap:12px;gap:12px;padding:12px 0;border-bottom:1px solid #d4d4d8}.document-list a,.record-with-action span{display:grid;grid-gap:4px;gap:4px;min-width:0}.document-list small,.record-with-action small{color:#52525b}.document-list{display:grid;grid-gap:8px;gap:8px;margin-top:24px}.document-list h3{margin:0}@media (min-width:700px){.directory-controls{grid-template-columns:2fr 1fr 1fr 1fr}.form-columns{grid-template-columns:1fr 1fr}.student-action-summary{grid-template-columns:repeat(3,1fr)}.profile-grid-v2{grid-template-columns:repeat(2,minmax(0,1fr))}.profile-hero{grid-template-columns:1fr auto;align-items:start}.hero-actions{grid-template-columns:auto auto}.document-list article,.record-with-action{grid-template-columns:1fr auto;align-items:center}}.schedule-detail,.schedule-form,.schedule-workspace{display:grid;grid-gap:24px;gap:24px;color:#18181b}.schedule-tabs{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:8px;gap:8px;position:-webkit-sticky;position:sticky;bottom:72px;z-index:4;padding:8px;background:#fff;border:1px solid #d4d4d8;border-radius:12px}.schedule-tabs button{min-height:44px;background:#f4f4f5;color:#27272a}.schedule-tabs button.active{background:#27272a;color:#fff}.schedule-date-controls,.schedule-filters{display:grid;grid-gap:12px;gap:12px;padding:16px;background:#f4f4f5;border:1px solid #d4d4d8;border-radius:12px}.schedule-date-controls label,.schedule-filters label{margin:0}.schedule-work-queue{display:grid;grid-template-columns:1fr 1fr;grid-gap:12px;gap:12px}.schedule-work-queue article{display:grid;grid-gap:4px;gap:4px;padding:16px;background:#fff;border:1px solid #d4d4d8;border-radius:12px}.schedule-work-queue small{font-weight:900;color:#52525b}.schedule-work-queue b{font-size:28px;color:#09090b}.attention-list{background:#fff7ed;border:1px solid #fdba74;border-radius:12px}.attention-list summary{min-height:44px;font-weight:900;color:#9a3412;cursor:pointer}.schedule-row{display:grid;grid-template-columns:64px minmax(0,1fr) auto 20px;grid-gap:12px;gap:12px;align-items:center;width:100%;min-height:72px;padding:12px 8px;background:#fff;color:#18181b;border:0;border-bottom:1px solid #e4e4e7;text-align:left}.schedule-row:focus-visible,.schedule-row:hover{background:#f4f4f5}.schedule-row time,.schedule-row>span{display:grid;grid-gap:2px;gap:2px}.schedule-row b{color:#09090b}.schedule-row small{color:#52525b}.schedule-detail-actions{display:grid;grid-gap:8px;gap:8px}.lesson-detail-card{display:grid;grid-gap:20px;gap:20px;padding:20px;background:#fff;border:1px solid #d4d4d8;border-left:6px solid #27272a;border-radius:12px}.schedule-form fieldset{display:grid;grid-gap:16px;gap:16px;margin:0;padding:16px;background:#fff;border:1px solid #d4d4d8;border-radius:12px}.slot-suggestions{display:flex;flex-wrap:wrap;gap:8px;padding:12px;background:#eff6ff;border-radius:8px}.slot-suggestions b{width:100%;color:#1e3a8a}.slot-suggestions button{min-width:72px;background:#fff;color:#1e3a8a;border:1px solid #93c5fd}.schedule-setup-grid{display:grid;grid-gap:16px;gap:16px}.calendar-connections,.schedule-setup-grid>form{display:grid;align-content:start;grid-gap:16px;gap:16px;padding:16px;background:#fff;border:1px solid #d4d4d8;border-radius:12px}.calendar-connections h3,.schedule-setup-grid h3{margin:0}.setup-record{display:grid;grid-gap:4px;gap:4px;margin:0;padding:12px 0;border-bottom:1px solid #e4e4e7}.setup-record small,.setup-record span{color:#52525b}.calendar-connections section{display:grid;grid-gap:12px;gap:12px;padding:16px;background:#f4f4f5;border-radius:12px}.calendar-connections input{font-size:14px}.desktop-calendar{display:none}.status-no_reply{background:#fff7ed;color:#9a3412}.status-awaiting_confirmation{background:#eff6ff;color:#1e40af}.status-confirmed{background:#dcfce7;color:#166534}.status-cancelled,.status-declined{background:#fee2e2;color:#991b1b}.status-completed{background:#dcfce7;color:#166534}.status-no_show{background:#fef3c7;color:#92400e}@media (min-width:760px){.schedule-tabs{position:static;max-width:520px}.schedule-date-controls{grid-template-columns:auto minmax(180px,1fr) auto auto;align-items:end}.schedule-filters{grid-template-columns:repeat(4,1fr)}.schedule-detail-actions{grid-template-columns:repeat(3,minmax(0,1fr))}.schedule-setup-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (min-width:1000px){.desktop-calendar{display:grid;grid-template-columns:72px repeat(7,minmax(120px,1fr));overflow:auto;border:1px solid #d4d4d8;border-radius:12px;background:#fff}.calendar-corner,.calendar-day-head{position:-webkit-sticky;position:sticky;top:0;z-index:2;display:grid;align-content:center;min-height:64px;padding:8px;background:#27272a;color:#fff;text-align:center}.calendar-hour-row{display:contents}.calendar-hour-row>time{padding:8px;background:#f4f4f5;border-top:1px solid #d4d4d8;color:#52525b}.calendar-drop-cell{min-height:80px;padding:4px;border-top:1px solid #e4e4e7;border-left:1px solid #e4e4e7}.calendar-drop-cell:hover{background:#eff6ff}.calendar-event{display:grid;grid-gap:2px;gap:2px;width:100%;min-height:44px;padding:6px 8px;background:#e0e7ff;color:#1e1b4b;border:1px solid #a5b4fc;border-radius:8px;text-align:left;cursor:-webkit-grab;cursor:grab}.calendar-event span{font-size:12px}.schedule-setup-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}.mobile-week-calendar{display:grid;grid-gap:16px;gap:16px}.mobile-calendar-day{overflow:hidden;background:#fff;border:1px solid #d4d4d8;border-radius:12px}.mobile-calendar-day.today{border:2px solid var(--action)}.mobile-calendar-day-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:64px;padding:12px 16px;background:#f4f4f5;border-bottom:1px solid #d4d4d8}.mobile-calendar-day.today .mobile-calendar-day-heading{background:#eff6ff}.mobile-calendar-day-heading time{display:grid;grid-gap:2px;gap:2px}.mobile-calendar-day-heading time b{color:#09090b;font-size:18px}.mobile-calendar-day-heading time span,.mobile-calendar-day-heading>span{color:#52525b;font-size:14px;font-weight:700}.mobile-calendar-empty{margin:0;padding:16px;color:#71717a}.schedule-row{grid-template-columns:64px minmax(0,1fr) 20px}.schedule-row>.status{grid-column:2;justify-self:start;margin:0}.schedule-row>span:last-child{grid-column:3;grid-row:1/span 2}.template-original{padding:20px;background:#f8fafc;border:1px solid #cbd5e1;border-left:4px solid var(--action);border-radius:12px}.template-original,.template-original-heading{display:grid;grid-gap:12px;gap:12px}.template-original-heading h3{margin:4px 0 0}.template-original-heading button{width:100%}.template-original pre{margin:0;padding:16px;overflow:auto;white-space:pre-wrap;overflow-wrap:anywhere;background:#fff;border:1px solid #d4d4d8;border-radius:8px;color:#18181b;font:500 15px/1.5 ui-monospace,SFMono-Regular,Menlo,monospace}.template-used-variables{display:grid;grid-gap:8px;gap:8px}.template-used-variables>div{display:flex;flex-wrap:wrap;gap:8px}.template-used-variables code{padding:6px 8px;background:#e0f2fe;border:1px solid #7dd3fc;border-radius:6px;color:#0c4a6e;font-size:14px;font-weight:800}@media (min-width:600px){.schedule-row{grid-template-columns:64px minmax(0,1fr) auto 20px}.schedule-row>.status,.schedule-row>span:last-child{grid-column:auto;grid-row:auto}.template-original-heading{display:flex;align-items:flex-start;justify-content:space-between}.template-original-heading button{width:auto}}@media (min-width:1000px){.mobile-week-calendar{display:none}}*{box-sizing:border-box}body,html{min-width:320px;background:var(--canvas)}body{margin:0;color:var(--ink);font-size:1rem}h1,h2,h3,h4,p{color:inherit}h1{margin:0;font-size:1.75rem;line-height:1.2;letter-spacing:-.02em}h2{font-size:1.25rem;line-height:1.3}h3,h4{line-height:1.35}small{line-height:1.45}a{color:#1d4ed8;text-decoration-thickness:2px;text-underline-offset:2px}a,button,summary{-webkit-tap-highlight-color:transparent}button{cursor:pointer;transition:background-color .12s ease,border-color .12s ease,transform .12s ease,box-shadow .12s ease}button:active{transform:scale(.97);background:#000}button:disabled,button[aria-busy=true]{cursor:wait;opacity:.55;transform:none}.placeholder,.secondary{background:var(--surface);color:var(--ink);border-color:var(--border-strong)}.placeholder:hover,.secondary:hover{background:var(--action-soft);color:var(--ink);border-color:#71717a}.back,.link{background:transparent;color:var(--ink);border-color:transparent;padding:10px 0;text-decoration:underline;text-underline-offset:3px}.back:hover,.link:hover{background:transparent;color:#000}input,select,textarea{width:100%;padding:12px;border:1px solid var(--border-strong);line-height:1.4}textarea{min-height:96px;resize:vertical}input::placeholder,textarea::placeholder{color:#71717a}label{display:grid;grid-gap:8px;gap:8px;font-size:1rem}.check{min-height:48px;display:flex;gap:12px;align-items:center;font-weight:500}.check input{width:24px;height:24px;min-height:24px;flex:0 0 24px}.app-shell>aside{height:72px;border-top:1px solid var(--border);box-shadow:0 -4px 20px rgb(24 24 27/8%)}.app-shell aside nav button{min-height:56px;grid-gap:0;gap:0;border-radius:8px;font-size:1rem;line-height:1}.app-shell aside nav button span{margin:2px 0 0;line-height:1.1}.app-shell aside nav button.active{color:var(--ink)}.app-shell aside nav button:active{transform:scale(.95);background:#d4d4d8}.app-shell main{padding:24px 16px calc(104px + env(safe-area-inset-bottom))}.section-kicker,header .eyebrow{font-weight:800;letter-spacing:.08em}.subtle{margin:8px 0 16px;font-size:1rem}.notice{margin:0 0 16px;padding:12px 16px;border:1px solid #b45309;border-left-width:4px;border-radius:8px;color:#713f12;font-weight:650}.app-notice{display:flex;align-items:center;justify-content:space-between;gap:12px}.app-notice>button{flex:0 0 44px;width:44px;min-height:44px;padding:0;border-color:transparent;background:transparent;color:#713f12;font-size:1.5rem;line-height:1}.app-notice>button:hover{background:#fde68a}.loading-state{margin:0 0 16px;padding:12px 16px;border:1px solid var(--border);border-radius:8px;background:var(--surface);color:var(--ink-secondary);font-weight:700}.empty,.schedule-empty,.student-directory-empty{padding:32px 24px;border:1px dashed var(--border-strong);border-radius:12px;background:var(--surface-soft);color:var(--ink-secondary);text-align:center}.coming,.demo,.roadmap,.student-directory,.today-panel,article,form{background:var(--surface);color:var(--ink);border:1px solid var(--border);border-radius:12px;box-shadow:none}fieldset,form{display:grid;grid-gap:16px;gap:16px}fieldset{min-width:0;margin:0;border:1px solid var(--border);border-radius:10px;padding:16px}legend{color:var(--ink);font-size:1.05rem;font-weight:800;padding:0 8px}.row{display:grid;grid-template-columns:1fr;grid-gap:8px;gap:8px}.row>button{width:100%}.work-queue{display:grid;grid-gap:16px;gap:16px;border:1px solid #3f3f46;background:#27272a;color:#fff}.work-queue h2{margin:4px 0 8px;color:#fff}.work-queue p:not(.section-kicker){margin:0;color:#e4e4e7}.work-queue .section-kicker{color:#d4d4d8}.work-queue button{width:100%;background:#fff;color:#18181b;border-color:#fff}.metrics{display:grid;grid-template-columns:1fr;grid-gap:8px;margin-top:16px}.metrics article{padding:16px}.metrics article p{margin:0}.metrics article strong{margin:8px 0;color:var(--ink);font-size:1.75rem;line-height:1.2}.today-panel{margin-top:16px}.panel-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:8px;margin-bottom:8px}.panel-heading h2{margin:4px 0}.lesson-row,.today-list{display:grid}.lesson-row{width:100%;min-height:64px;grid-template-columns:64px minmax(0,1fr);grid-gap:12px;gap:12px;align-items:center;padding:12px 0;border:0;border-top:1px solid var(--border);border-radius:0;text-align:left}.lesson-row:hover{background:var(--surface-soft)}.lesson-row span b,.lesson-row time{color:var(--ink);font-weight:800}.lesson-row small{display:block;color:var(--ink-muted)}.lesson-row em{grid-column:2;font-style:normal}.demo{margin-top:16px;padding:16px;display:grid;grid-gap:16px;gap:16px}.demo p{margin:4px 0 0;color:var(--ink-secondary)}.demo button{width:100%}.roadmap{margin-top:16px;padding:0;overflow:hidden}.roadmap summary{min-height:48px;padding:14px 16px;color:var(--ink);font-weight:800;cursor:pointer}.roadmap>div{display:grid;grid-gap:8px;gap:8px;padding:0 16px 16px}.roadmap .placeholder{width:100%;display:flex;align-items:center;justify-content:space-between;gap:8px}.page-action{position:fixed;z-index:40;right:16px;bottom:calc(88px + env(safe-area-inset-bottom));width:auto;margin:0;box-shadow:0 8px 24px rgb(24 24 27/24%)}.student-directory{max-width:none;padding:16px;background:var(--surface-soft)}.directory-heading{display:grid;grid-gap:8px;gap:8px;margin:0 0 16px}.directory-heading h2{margin:4px 0}.directory-heading>span{width:max-content;padding:4px 8px;background:var(--action-soft);color:var(--ink);border:1px solid var(--border-strong);border-radius:999px;font-size:.875rem;font-weight:800}.directory-filter{max-width:320px;margin-bottom:16px}.student-card-grid{grid-template-columns:1fr}.student-card{width:100%;min-height:0;display:grid;grid-gap:16px;gap:16px;padding:16px;background:var(--surface);color:var(--ink);border:1px solid var(--border-strong);border-radius:10px;text-align:left}.student-card-grid>button.student-card{background:#ffffff;color:#18181b;border-color:#a1a1aa}.student-card-grid>button.student-card:focus-visible,.student-card-grid>button.student-card:hover{background:#f4f4f5;color:#09090b;border-color:#52525b}.student-card-grid>button.student-card .open-student,.student-card-grid>button.student-card .student-card-footer b,.student-card-grid>button.student-card h3{color:#18181b}.student-card-grid>button.student-card em,.student-card-grid>button.student-card p,.student-card-grid>button.student-card small{color:#3f3f46}.student-card:hover{background:var(--surface-soft);border-color:#52525b}.student-card-head{display:grid;grid-template-columns:48px minmax(0,1fr) auto;grid-gap:12px;gap:12px;align-items:center}.student-avatar{width:48px;height:48px;display:grid;place-items:center;border-radius:50%;background:#3f3f46;font-weight:800}.student-card h3{margin:0;color:var(--ink);font-size:1.125rem}.student-card p{margin:2px 0 0;color:var(--ink-secondary);font-size:1rem;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.open-student{color:var(--ink);font-size:.875rem;font-weight:800;text-decoration:underline}.student-card-footer,.student-card-section{padding-top:16px;border-top:1px solid var(--border)}.student-card small{color:var(--ink-muted);font-size:.75rem;font-weight:800}.instrument-pills{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px}.instrument-pills span{padding:8px 12px;border:1px solid #52525b;border-radius:999px;background:#3f3f46;color:#fff;font-size:.875rem}.student-labels{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px}.student-labels>span{padding:6px 10px;border:2px solid var(--border-strong);border-radius:999px;background:#fff;color:var(--ink);font-size:.875rem;font-weight:800}.student-card-footer{display:grid;grid-template-columns:1fr 1fr;grid-gap:16px;gap:16px}.student-card-footer--single{grid-template-columns:1fr}.student-card-footer b{display:block;margin-top:4px;color:var(--ink);font-size:1rem}.priority-active{color:var(--warning-text);background:var(--warning-bg);border:1px solid #d97706;border-radius:4px;padding:4px;width:max-content}.invoice-index,.invoice-view,.schedule-screen{max-width:none}.billing-toolbar,.schedule-heading{display:grid;grid-gap:16px;gap:16px;margin-bottom:16px}.billing-toolbar h2,.schedule-heading h2{margin:4px 0}.billing-toolbar>button,.schedule-heading>button{width:100%}.schedule-days{display:grid;grid-gap:24px;gap:24px}.schedule-day>h3{margin:0 0 8px;padding:12px 16px;border-radius:8px;color:var(--ink);font-size:1rem}.schedule-lesson{display:grid;grid-template-columns:1fr;grid-gap:16px;gap:16px;margin-bottom:8px;padding:16px;border:1px solid var(--border);border-radius:10px;background:var(--surface);color:var(--ink)}.schedule-lesson>time{display:flex;justify-content:space-between;align-items:baseline;color:var(--ink)}.schedule-lesson>time b{font-size:1.5rem}.schedule-lesson-main h4{margin:0;color:var(--ink);font-size:1.125rem}.schedule-lesson-main p{margin:4px 0;color:var(--ink-secondary)}.schedule-actions{display:grid;grid-gap:8px;gap:8px;justify-items:stretch}.schedule-actions>div{display:grid;grid-template-columns:1fr 1fr;grid-gap:8px;gap:8px}.schedule-actions>div .link{grid-column:1/-1}.attendance-state,.category,.status{display:inline-flex;align-items:center;gap:6px;width:max-content;margin:4px 0;padding:6px 10px;border-radius:999px;color:var(--ink);background:var(--action-soft);font-size:.75rem;text-transform:uppercase}.attendance-state:before,.category:before,.status:before{content:"●";font-size:.65rem}.attendance-state.present,.lesson-completed,.lesson-confirmed,.status-paid,.status-sent{background:var(--success-bg);color:var(--success-text)}.attendance-state.pending,.lesson-awaiting_confirmation,.status-partially_paid,.status-pending{background:var(--warning-bg);color:var(--warning-text)}.attendance-state.absent,.lesson-cancelled,.lesson-declined,.status-failed,.status-overdue{background:var(--danger-bg);color:var(--danger-text)}.invoice-index-list{display:grid;grid-gap:8px;gap:8px}.invoice-index-row{display:grid;grid-gap:16px;gap:16px;padding:16px;background:var(--surface);border:1px solid var(--border);border-radius:10px;color:var(--ink)}.invoice-index-row h3{margin:4px 0;color:var(--ink)}.invoice-index-row>div:last-child{display:grid;grid-gap:8px;gap:8px;justify-items:stretch;text-align:left}.invoice-paper{max-width:none;padding:16px;background:var(--surface);border:1px solid var(--border);border-radius:12px;color:var(--ink);box-shadow:none}.invoice-paper-head{display:grid;grid-gap:16px;gap:16px;padding-bottom:16px;border-bottom:2px solid var(--ink)}.invoice-paper-head>div:last-child{display:grid;grid-gap:8px;gap:8px;justify-items:start}.invoice-items{margin:16px 0;border-top:1px solid var(--border)}.invoice-attendance h3,.invoice-items h3{color:var(--ink)}.attendance-line,.invoice-items>div{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-gap:16px;gap:16px;padding:12px 0;border-bottom:1px solid var(--border);color:var(--ink)}.attendance-line time{color:var(--ink);font-weight:750}.invoice-attendance{margin-top:16px;padding-top:16px;border-top:1px solid var(--border)}.invoice-section-head{display:flex;justify-content:space-between;gap:8px}.payment-list{display:grid;grid-gap:8px;gap:8px;margin-top:16px}.payment-list small{color:var(--ink-secondary)}.profile-head{margin-bottom:16px;border-left:4px solid var(--ink)}.profile-head h2{color:var(--ink)}.profile-head p{color:var(--ink-secondary)}.profile-head{display:grid;grid-gap:12px;gap:12px;padding:16px}.profile-title-row{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.profile-title-row button{flex:0 0 auto}.profile-head p{margin:0}.profile-completeness{display:grid;grid-gap:4px;gap:4px;padding:12px;border:1px solid #d97706;border-radius:8px;background:var(--warning-bg);color:#713f12}.profile-completeness span{line-height:1.5}.profile-completeness button{width:max-content;max-width:100%;margin-top:8px;color:#713f12;border-color:#b45309;background:#fff}.profile-grid{display:grid;grid-template-columns:1fr;grid-gap:8px;gap:8px}.profile-grid>article{min-height:0;padding:16px}.profile-grid h2{margin:0 0 12px;font-size:1.05rem}.profile-section-head{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:8px}.profile-section-head h2{margin:0}.profile-section-head button{min-height:44px;padding:8px 12px}.compact-actions{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end}.compact-actions button{min-height:44px}.profile-record{margin:0;padding:12px 0;border-top:1px solid var(--border);color:var(--ink-secondary)}.profile-record:first-of-type{border-top:0}.profile-record b{color:var(--ink)}.record-label{display:inline-block;margin-left:8px;padding:2px 6px;border-radius:999px;background:var(--info-bg);color:var(--info-text);font-size:.75rem;font-weight:800}.delivery-label{background:var(--success-bg);color:var(--success-text)}.context-note{margin:16px 0 0;padding:12px;border-radius:8px;background:var(--surface-soft);color:var(--ink-secondary);font-size:.875rem}.package-history{display:grid}.package-history-item{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-gap:12px;gap:12px;align-items:center;padding:12px 0;border-top:1px solid var(--border)}.package-history-item>div{display:grid;grid-gap:4px;gap:4px}.package-history-item:first-child{border-top:0}.package-history-item b{color:var(--ink)}.package-history-item span{color:var(--ink-secondary)}.package-history-item small{color:var(--ink-muted)}.package-history-item .history-delete{min-height:44px;padding:8px 12px;background:#fff;color:var(--danger-text);border:1px solid #dc2626}.package-history-item .history-delete:hover{background:var(--danger-bg)}.profile-action-list{display:grid;grid-gap:8px;gap:8px}.profile-history-list{max-height:360px;overflow-y:auto;overscroll-behavior:contain;padding-right:4px;scrollbar-gutter:stable}.profile-action-list>button.profile-list-button{width:100%;min-height:64px;display:grid;grid-template-columns:minmax(0,1fr) auto;grid-gap:12px;gap:12px;align-items:center;padding:12px;border:1px solid var(--border);border-radius:8px;background:#fff;color:var(--ink);text-align:left}.profile-action-list>button.profile-list-button:hover{background:var(--surface-soft);border-color:var(--border-strong)}.profile-list-button b,.profile-list-button small{display:block;color:var(--ink)}.profile-list-button small{margin-top:4px;color:var(--ink-secondary);font-weight:500}.profile-payment-card{display:grid;grid-gap:8px;gap:8px;padding:10px 0;border-bottom:1px solid var(--border)}.profile-payment-card:last-child{border-bottom:0}.profile-payment-card>.profile-list-button{width:100%}.profile-payment-actions{display:flex;flex-wrap:wrap;gap:8px;padding-left:4px}.profile-payment-actions button{min-height:44px}.billing-tab-content,.billing-workspace,.schedule-page-content,.schedule-page-workspace{display:grid;grid-gap:16px;gap:16px}.profile-subpage{max-width:760px}.stacked-forms{display:grid;grid-gap:16px;gap:16px}.tag-dot{width:16px;height:16px;border:1px solid rgb(0 0 0/25%)}.profile-subpage>.back{margin-bottom:8px}.detail-sheet{padding:16px}.detail-sheet h2{margin:4px 0 16px;font-size:1.75rem}.detail-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.danger-button{width:100%;background:#fff;color:var(--danger-text);border:2px solid #dc2626}.danger-button:hover,.destructive-zone{background:var(--danger-bg)}.destructive-zone{margin-top:32px;padding:16px;border:1px solid #fca5a5;border-radius:8px}.destructive-zone h3{margin:0 0 8px;color:var(--danger-text);font-size:1rem}.destructive-zone p{margin:0 0 16px;color:#7f1d1d}.detail-sheet dl{margin:0;display:grid;grid-gap:0;gap:0}.detail-sheet dl>div{display:grid;grid-gap:4px;gap:4px;padding:12px 0;border-top:1px solid var(--border)}.detail-sheet dt{color:var(--ink-muted);font-size:.75rem;font-weight:800;text-transform:uppercase;letter-spacing:.05em}.detail-sheet dd{margin:0;color:var(--ink)}.detail-lines{margin-top:16px}.detail-lines h3,.receipt-preview h3{font-size:1rem}.detail-lines p{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-gap:16px;gap:16px;padding:12px 0;margin:0;border-top:1px solid var(--border)}.receipt-preview{margin-top:24px}.receipt-preview a{display:grid;grid-gap:8px;gap:8px;width:max-content;max-width:100%}.receipt-preview img{display:block;width:100%;max-width:420px;max-height:420px;object-fit:contain;border:1px solid var(--border);border-radius:8px;background:var(--surface-soft)}.history-grid{display:grid;grid-template-columns:1fr;grid-gap:8px;gap:8px}.history-grid article{min-height:0;padding:16px}.history-grid h2{margin:0 0 8px;color:var(--ink)}.history-grid p{color:var(--ink-secondary)}.more-menu{display:grid;grid-gap:8px;gap:8px}.more-menu>button{width:100%;min-height:72px;display:grid;grid-template-columns:32px minmax(0,1fr) auto;grid-gap:12px;gap:12px;align-items:center;padding:12px 16px;background:var(--surface);color:var(--ink);border-color:var(--border);text-align:left}.more-menu>button:hover{background:var(--surface-soft);border-color:var(--border-strong)}.more-menu b,.more-menu small{display:block;color:var(--ink)}.more-menu small{color:var(--ink-secondary);font-weight:500}.coming{padding:24px}@media (min-width:600px){.app-shell main{padding-inline:24px}form{padding:24px}.row{grid-template-columns:1fr 1fr}.metrics{grid-template-columns:repeat(3,minmax(0,1fr))}.demo{grid-template-columns:1fr auto;align-items:center}.demo button{width:auto}.student-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.billing-toolbar,.schedule-heading{grid-template-columns:1fr auto;align-items:start}.billing-toolbar>button,.schedule-heading>button{width:auto}.schedule-lesson{grid-template-columns:112px minmax(160px,1fr)}.schedule-actions{grid-column:1/-1}.invoice-index-row{grid-template-columns:minmax(0,1fr) auto;align-items:center}.invoice-index-row>div:last-child{justify-items:end;text-align:right}.invoice-paper-head{grid-template-columns:1fr auto}.invoice-paper-head>div:last-child{justify-items:end}.history-grid,.profile-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.detail-sheet{padding:24px}}@media (min-width:900px){.app-shell{display:grid;grid-template-columns:240px minmax(0,1fr)}.app-shell>aside{position:-webkit-sticky;position:sticky;inset:0 auto auto;height:100vh;padding:24px 16px;display:flex;flex-direction:column;background:#27272a;color:#fff;border:0;box-shadow:none}.brand{display:flex;align-items:center;gap:12px;margin:0 8px 32px;color:#fff}.brand span{background:#fff;color:#27272a;border-radius:8px;padding:8px}.nav-label{display:block;margin:0 8px 8px;color:#d4d4d8}.sidebar-foot{display:block;margin-top:auto;padding:12px;border-radius:8px;background:#3f3f46;color:#fff}.sidebar-foot small{color:#e4e4e7}.app-shell aside nav{display:grid;grid-template-columns:1fr;grid-gap:8px;gap:8px}.app-shell aside nav button{min-height:48px;display:flex;justify-content:flex-start;gap:8px;padding:12px;color:#e4e4e7}.app-shell aside nav button span{margin:0;font-size:1rem}.app-shell aside nav button.active{background:#52525b;color:#fff;box-shadow:inset 3px 0 0 #fff}.app-shell main{max-width:1120px;padding:40px 48px 80px}.page-action{position:static;float:none;margin:-72px 0 24px auto;display:block;box-shadow:none}.student-directory{padding:24px}.directory-heading{grid-template-columns:1fr auto;align-items:start}.student-card-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.schedule-lesson{grid-template-columns:120px minmax(180px,1fr) auto;align-items:center}.schedule-actions{grid-column:auto;justify-items:end}.invoice-paper{padding:32px}}.workspace-manage{display:grid;grid-gap:12px;gap:12px}.workspace-manage article,.workspace-manage form,.workspace-manage section{max-width:100%}@media (min-width:1200px){.student-card-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}.professional-invoice{display:grid;grid-gap:24px;gap:24px}.invoice-brand{display:grid;grid-gap:16px;gap:16px;padding-bottom:24px;border-bottom:3px solid var(--ink)}.invoice-identity{display:flex;align-items:center;gap:12px}.invoice-identity img,.logo-preview img{width:72px;height:72px;object-fit:contain;border:1px solid var(--border);border-radius:8px;background:#fff}.invoice-logo-placeholder{width:56px;height:56px;display:grid;place-items:center;border-radius:8px;background:var(--ink);color:#fff;font-weight:900}.invoice-identity h2,.invoice-identity p{margin:0}.invoice-identity p{color:var(--muted)}.invoice-title{display:grid;justify-items:start;grid-gap:4px;gap:4px}.invoice-title span{font-size:1.5rem;font-weight:900;letter-spacing:.08em}.invoice-title strong{color:var(--muted)}.invoice-parties{display:grid;grid-gap:24px;gap:24px}.invoice-parties small{font-weight:900;letter-spacing:.08em;color:var(--muted)}.invoice-parties h3{margin:8px 0 4px}.invoice-parties p{margin:0;color:var(--muted)}.invoice-parties dl{margin:0;display:grid;grid-gap:8px;gap:8px}.invoice-parties dl div{display:grid;grid-template-columns:1fr auto;grid-gap:16px;gap:16px}.invoice-parties dt{color:var(--muted)}.invoice-parties dd{margin:0;font-weight:700}.invoice-charge-table{border:1px solid var(--border);border-radius:8px;overflow:hidden}.invoice-charge-table>div{display:grid;grid-template-columns:minmax(0,1fr) 48px auto;grid-gap:12px;gap:12px;padding:12px;border-top:1px solid var(--border)}.invoice-charge-table>div:first-child{border-top:0}.invoice-table-head{background:#f4f4f5;font-size:.8rem;font-weight:900;text-transform:uppercase;letter-spacing:.04em}.invoice-charge-table span:last-child{text-align:right;font-weight:700}.invoice-evidence{padding-top:8px}.invoice-summary{width:100%;margin-left:auto;display:grid;grid-gap:8px;gap:8px}.invoice-summary>div{display:flex;justify-content:space-between;gap:16px;padding:8px 0}.invoice-summary .balance{padding-top:16px;border-top:2px solid var(--ink);font-size:1.2rem}.invoice-footer{padding-top:16px;border-top:1px solid var(--border);text-align:center}.invoice-footer p{margin:0 0 4px;font-weight:700}.invoice-footer small{color:var(--muted)}.invoice-actions{bottom:72px;display:grid;grid-template-columns:1fr 1fr;grid-gap:8px;gap:8px;padding:8px;background:rgba(250,250,250,.96);border:1px solid var(--border);border-radius:12px;z-index:2}.settings-stack{display:grid;grid-gap:24px;gap:24px}.logo-preview{display:flex;align-items:center;gap:16px;margin-bottom:16px;font-weight:700}.invoice-edit-form{max-width:820px}.invoice-edit-item{display:grid;grid-gap:12px;gap:12px;padding:16px 0;border-bottom:1px solid var(--border)}.invoice-note{padding:16px;border-left:4px solid var(--ink);background:#f4f4f5}.invoice-note h3,.invoice-note p{margin:0}.invoice-note p{margin-top:8px;white-space:pre-wrap}.pending-invoices{margin-bottom:32px;padding:16px;border:1px solid var(--border);border-radius:12px;background:var(--surface)}.receipt-dispatch-panel{margin-bottom:24px;padding:16px;border:2px solid #166534;border-radius:12px;background:#f0fdf4;color:#14532d}.receipt-dispatch-panel h2{margin:4px 0;color:#14532d}.receipt-dispatch-panel .subtle,.receipt-dispatch-panel small{color:#166534}.receipt-dispatch-list{display:grid;grid-gap:8px;gap:8px;margin-top:16px}.receipt-dispatch-list article{display:grid;grid-gap:12px;gap:12px;padding:12px;border:1px solid #86efac;border-radius:8px;background:#fff;color:#14532d}.receipt-dispatch-list article>div{display:grid;grid-gap:4px;gap:4px}.receipt-dispatch-list button{background:#166534;color:#fff;border-color:#166534;width:100%}.receipt-dispatch-list button:hover{background:#14532d}.pending-invoices h2{margin:4px 0 0}.pending-invoice-list{margin-top:16px}.pending-invoice-list article{padding:12px;border:1px solid var(--border);border-radius:8px;background:#fafafa}.pending-invoice-list article>div{display:grid;grid-gap:4px;gap:4px}.pending-invoice-list article>div:last-child{justify-items:start;text-align:left}.pending-invoice-list small{color:var(--muted)}.billing-operations{display:grid;grid-gap:16px;gap:16px;margin-bottom:24px}.billing-operations details{border:1px solid var(--border);border-radius:12px;background:var(--surface);overflow:hidden}.billing-operations summary{min-height:48px;padding:14px 16px;cursor:pointer;font-weight:800}.billing-operations details>:not(summary){margin:0 16px 16px}.currency-summary{display:flex;flex-wrap:wrap;align-items:center;gap:12px;padding:16px;border-radius:12px;background:#27272a;color:#fff}.currency-summary .section-kicker{width:100%;color:#d4d4d8}.currency-summary strong{padding:8px 12px;border-radius:8px;background:#fff;color:#18181b}.billing-generator,.invoice-preview article{display:grid;grid-gap:12px;gap:12px}.invoice-preview article{padding:12px 0;border-bottom:1px solid var(--border)}.invoice-preview article>div{display:grid;grid-gap:4px;gap:4px}.invoice-preview small{color:var(--muted)}.invoice-preview .preview-skipped{opacity:.65}.billing-history{max-height:360px;overflow:auto}.billing-history p{display:grid;grid-gap:4px;gap:4px;padding:12px 0;margin:0;border-bottom:1px solid var(--border)}.billing-history small{color:var(--muted)}.button-link{min-height:44px;display:inline-flex;align-items:center;justify-content:center;padding:8px 12px;border:1px solid var(--border);border-radius:8px;color:var(--ink);font-weight:700;text-decoration:none}.home-operations-expander{margin-top:24px}.home-operations-expander>summary{min-height:52px;display:flex;align-items:center;padding:12px 16px;color:var(--ink);background:var(--surface);font-size:1rem;font-weight:800;cursor:pointer}.home-operations-expander>.operations-center{margin:0;padding:16px;border-top:1px solid var(--border)}@media (min-width:720px){.billing-generator{grid-template-columns:1fr 1fr auto;align-items:end}.invoice-parties{grid-template-columns:1fr 1fr}.invoice-summary{width:360px}.invoice-actions{position:static;grid-template-columns:max-content max-content}.invoice-edit-item{grid-template-columns:minmax(0,1fr) 100px 180px auto;align-items:end}}.automation-workspace,.operations-center,.replacement-center,.team-workspace{display:grid;grid-gap:24px;gap:24px;margin-bottom:32px}.operations-heading{display:flex;flex-direction:column;gap:16px}.automation-workspace h2,.operations-heading h2,.team-workspace h2{margin:4px 0}.operations-queue-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:8px;gap:8px}.operations-queue-grid button{min-height:112px;display:grid;align-content:center;grid-gap:4px;gap:4px;text-align:left;background:#fff;color:#18181b;border:1px solid #d4d4d8}.operations-queue-grid button.needs-attention{border-left:6px solid #b45309;background:#fffbeb}.operations-queue-grid strong{font-size:28px}.operations-queue-grid small{color:#52525b}.operations-health{display:grid;grid-gap:8px;gap:8px}.currency-operations,.exception-list article,.inbox-review,.integration-control,.operations-health article{background:#fff;color:#18181b;border:1px solid #d4d4d8;border-radius:12px;padding:16px}.operations-health article{display:grid;grid-gap:4px;gap:4px}.operations-health span{font-size:16px;font-weight:800}.currency-operations{display:flex;flex-wrap:wrap;align-items:center;gap:16px}.currency-operations h3{width:100%;margin:0}.exception-list{display:grid;grid-gap:8px;gap:8px}.exception-list article{display:grid;grid-gap:12px;gap:12px}.exception-list article div{display:grid;grid-gap:4px;gap:4px}.exception-list article button{flex:0 0 auto}.automation-workspace{grid-template-columns:1fr}.automation-workspace>article,.automation-workspace>details,.automation-workspace>form,.automation-workspace>section{min-width:0}.integration-control{display:grid;grid-gap:16px;gap:16px}.pairing-qr{width:min(100%,320px);height:auto;border:8px solid #fff;margin:auto}.inbox-review article{display:grid;grid-gap:12px;gap:12px;margin-top:8px}.inbox-review article p{margin:4px 0}.replacement-options{display:grid;grid-gap:8px;gap:8px;padding:16px;background:#f4f4f5;border-radius:12px}.auth-shell{min-height:100vh;display:grid;place-items:center;padding:24px;background:#f4f4f5}.auth-card{width:min(100%,480px);background:#fff;border:1px solid #d4d4d8;border-radius:16px;padding:24px;box-shadow:0 16px 48px #18181b18}.auth-card form{margin:24px 0 16px}.auth-brand{color:#18181b;margin-bottom:32px}.auth-switch{width:100%}@media (min-width:760px){.operations-heading{flex-direction:row;justify-content:space-between;align-items:end}.operations-queue-grid{gap:16px}.operations-health,.operations-queue-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.automation-workspace{grid-template-columns:repeat(2,minmax(0,1fr))}.automation-workspace>.inbox-review,.automation-workspace>details{grid-column:1/-1}.exception-list article,.inbox-review article,.invoice-preview article,.pending-invoice-list article,.receipt-dispatch-list article{display:flex;align-items:center;justify-content:space-between}.receipt-dispatch-list button{width:auto}.pending-invoice-list article>div:last-child{justify-items:end;text-align:right}}@media (min-width:720px){.invoice-brand{display:flex;justify-content:space-between;align-items:flex-start}.invoice-title{justify-items:end}}body,html{background:var(--canvas);color:var(--ink)}body{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:16px;line-height:1.5}*,:after,:before{box-sizing:border-box}b,dd,dt,h1,h2,h3,h4,label,legend,li,p,span,strong{color:inherit}h1{font-size:clamp(1.75rem,4vw,2.25rem);line-height:1.15;letter-spacing:-.025em}h2{font-size:clamp(1.25rem,3vw,1.5rem);line-height:1.25}h3{font-size:1.05rem;line-height:1.35}p{color:var(--ink-secondary);line-height:1.55}small{color:var(--ink-muted);font-size:.875rem}a{color:var(--action);text-underline-offset:3px}button,input,select,summary,textarea{font:inherit}button{min-width:44px;min-height:48px;padding:12px 16px;border:1px solid var(--action);border-radius:10px;background:var(--action);color:#fff;font-weight:750;line-height:1.2;text-align:center;transition:background .15s ease,border-color .15s ease,transform .12s ease,box-shadow .15s ease}button:hover{background:var(--action-hover);border-color:var(--action-hover)}button:active{transform:scale(.98)}button:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible,textarea:focus-visible{outline:3px solid var(--focus);outline-offset:2px}button:disabled{opacity:.55;cursor:wait}.placeholder,.secondary,button.placeholder,button.secondary{background:var(--surface);color:var(--ink);border-color:var(--line-strong)}.placeholder:hover,.secondary:hover,button.placeholder:hover,button.secondary:hover{background:var(--surface-subtle);border-color:var(--ink-secondary)}.back,.link,button.back,button.link{min-height:44px;padding:10px 4px;background:transparent;color:var(--action);border-color:transparent;text-decoration:underline}.back:hover,.link:hover,button.back:hover,button.link:hover{background:var(--action-soft);color:var(--action-hover)}input,select,textarea{min-height:48px;padding:12px 14px;border:1px solid var(--line-strong);border-radius:8px;background:var(--surface);color:var(--ink);font-size:1rem}input::placeholder,textarea::placeholder{color:#64748b;opacity:1}label{color:var(--ink);font-weight:700}.helper,label small{color:var(--ink-muted);font-weight:500}.app-shell{min-height:100dvh;display:block;background:var(--canvas)}.app-shell>aside{position:fixed;z-index:50;inset:auto 0 0;width:100%;height:76px;display:block;padding:6px 8px max(6px,env(safe-area-inset-bottom));background:var(--surface);color:var(--ink);border-top:1px solid var(--line);box-shadow:0 -6px 24px rgb(15 23 42/9%)}.brand,.nav-label,.sidebar-foot{display:none}.app-shell aside nav{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));grid-gap:8px;gap:8px;margin:0;padding:0;overflow:visible}.app-shell aside nav button{min-width:0;min-height:58px;display:grid;place-items:center;grid-gap:3px;gap:3px;padding:6px 4px;border:0;border-radius:10px;background:transparent;color:var(--ink-muted);font-size:1.05rem}.app-shell aside nav button span{display:block;margin:0;color:inherit;font-size:.72rem}.app-shell aside nav button.active{background:var(--action-soft);color:var(--action-hover);box-shadow:inset 0 3px 0 var(--action)}.app-shell aside nav button:hover{background:var(--surface-subtle);color:var(--ink)}.app-shell main{width:100%;max-width:none;margin:0;padding:24px 16px calc(108px + env(safe-area-inset-bottom));color:var(--ink)}header{margin:0 0 24px}header h1{color:var(--ink-strong)}.section-kicker,header .eyebrow{color:var(--ink-muted);font-size:.75rem;font-weight:850;letter-spacing:.09em}.subtle{color:var(--ink-secondary)}.admin-workspace form,.admin-workspace>article,.coming,.demo,.roadmap,.student-directory,.today-panel,.workflow-expander,article,form{background:var(--surface);color:var(--ink);border:1px solid var(--line);border-radius:12px;box-shadow:0 1px 2px rgb(15 23 42/4%)}form{padding:16px}fieldset{border-color:var(--line);background:var(--surface)}legend{color:var(--ink-strong)}.empty,.loading-state,.schedule-empty,.student-directory-empty{background:var(--surface-subtle);color:var(--ink-secondary);border-color:var(--line-strong)}.notice{background:var(--warning-bg);border-color:#d97706}.app-notice>button,.notice,.notice *,.notice span{color:var(--warning-text)}.work-queue{padding:24px;border:1px solid #93c5fd;border-radius:12px}.metrics{gap:12px}.metrics article{min-height:0;padding:18px}.metrics article p{color:var(--ink-secondary)}.metrics article strong{color:var(--ink-strong)}.today-panel{padding:16px}.lesson-row{background:transparent;color:var(--ink);border-color:var(--line)}.lesson-row:hover{background:var(--surface-subtle)}.lesson-row b,.lesson-row time{color:var(--ink-strong)}.lesson-row span small,.lesson-row time small{color:var(--ink-muted)}.student-directory-v2,.student-profile-v2,.student-workflow-form,.student-workflow-page{color:var(--ink)}.directory-controls{background:var(--surface-subtle);border-color:var(--line)}.student-card,.student-card-v2{background:var(--surface);color:var(--ink);border:1px solid var(--line-strong);box-shadow:0 2px 5px rgb(15 23 42/6%)}.student-card-v2:focus-visible,.student-card-v2:hover,.student-card:focus-visible,.student-card:hover{background:#f8fbff;color:var(--ink);border-color:var(--action);box-shadow:0 0 0 3px var(--action-soft),0 8px 20px rgb(15 23 42/10%)}.student-card b,.student-card h3,.student-card p,.student-card small,.student-card-v2 b,.student-card-v2 em,.student-card-v2 h3,.student-card-v2 p,.student-card-v2 small{color:inherit}.student-card .student-card-head p,.student-card .student-card-section small,.student-card-v2 .student-card-head p,.student-card-v2 .student-card-section small{color:var(--ink-secondary)}.student-avatar{background:var(--ink-strong);color:#fff;border:2px solid #fff;box-shadow:0 0 0 2px var(--ink-strong)}.student-card-footer,.student-card-section{border-color:var(--line)}.instrument-pills span{background:var(--info-bg);color:var(--info-text);border:1px solid #7dd3fc;font-weight:800}.instrument-pills em{color:var(--ink-secondary)}.open-row,.open-student{color:var(--action-hover)}.student-labels span{background:var(--surface-subtle);color:var(--ink-secondary);border:1px solid var(--line-strong)}.status-chip{border-width:1px}.student-active{background:var(--success-bg);color:var(--success-text)}.student-paused{background:var(--warning-bg);color:var(--warning-text)}.student-withdrawn{background:#e2e8f0;color:var(--ink-secondary)}.attendance-card,.invoice-card,.invoice-index-row,.invoice-paper,.schedule-lesson,.schedule-row{background:var(--surface);color:var(--ink);border-color:var(--line)}.schedule-row:focus-visible,.schedule-row:hover{background:var(--surface-subtle)}.schedule-lesson>time,.schedule-lesson>time b,.schedule-row b,.schedule-row time{color:var(--ink-strong)}.schedule-lesson-main p,.schedule-lesson>time small,.schedule-row small{color:var(--ink-muted)}.schedule-day>h3{background:var(--action-soft);color:var(--info-text);border-color:var(--action)}.attendance-card>.lesson-time,.attendance-card>.lesson-time *{color:var(--ink-strong)}.invoice-head,.invoice-paper-head{background:var(--surface-subtle);border-color:var(--ink-strong)}.invoice-head strong,.invoice-head>b,.invoice-paper-head strong{color:var(--ink-strong)}.invoice-attendance,.invoice-charge-table,.invoice-items,.invoice-summary>div{border-color:var(--line)}.invoice-items>div:first-child,.invoice-table-head{color:var(--ink-secondary);background:var(--surface-subtle)}.invoice-card strong,.invoice-index-row strong{color:var(--ink-strong)}.attendance-state,.category,.status{border:1px solid;font-weight:800}.lesson-confirmed,.status-completed,.status-confirmed,.status-paid{background:var(--success-bg);color:var(--success-text)}.lesson-awaiting_confirmation,.status-awaiting_confirmation,.status-no_reply,.status-partially_paid,.status-pending{background:var(--warning-bg);color:var(--warning-text)}.lesson-cancelled,.lesson-declined,.status-cancelled,.status-declined,.status-failed,.status-overdue{background:var(--danger-bg);color:var(--danger-text)}.lesson-planned,.status-draft,.status-issued,.status-processing{background:var(--info-bg);color:var(--info-text)}.admin-list>article,.admin-list>button,.more-menu>button,.operations-queue-grid button,.profile-action-list>button.profile-list-button{background:var(--surface);color:var(--ink);border-color:var(--line)}.more-menu>button:hover,.operations-queue-grid button:hover,.profile-action-list>button.profile-list-button:hover{background:var(--surface-subtle);border-color:var(--action)}.lesson-detail-card,.profile-hero{background:var(--surface);color:var(--ink);border-color:var(--line);border-left-color:var(--action)}.profile-action-list b,.profile-grid-v2 h3,.profile-hero h2{color:var(--ink-strong)}.student-profile-v2{display:grid;grid-gap:20px;gap:20px}.profile-hero{padding:20px}.hero-actions{display:grid;grid-template-columns:1fr;grid-gap:8px;gap:8px;width:100%}.hero-actions button{width:100%}.student-action-summary article{min-height:0;padding:18px}.student-action-summary article small{color:var(--ink-secondary);font-size:.875rem}.student-action-summary article span{color:var(--ink-secondary);font-size:.95rem}.profile-grid-v2{align-items:start;gap:16px}.profile-grid-v2>article{display:grid;align-content:start;grid-gap:8px;gap:8px;min-height:0;padding:20px;overflow:hidden}.profile-grid-v2 .profile-section-head{display:grid;grid-template-columns:1fr;align-items:center;grid-gap:12px;gap:12px;margin:0 0 4px;padding-bottom:12px;border-bottom:1px solid var(--line)}.profile-grid-v2 .profile-section-head h3{font-size:1.125rem}.profile-grid-v2 .profile-section-head button{width:100%;min-height:44px;padding:10px 12px;background:var(--action-soft);color:var(--action-hover);border-color:#93c5fd;white-space:nowrap}.profile-grid-v2 .profile-section-head button:hover{background:#bfdbfe;border-color:var(--action)}.profile-grid-v2>article>.profile-list-button{width:100%;min-height:76px;margin:0;padding:14px 16px;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;grid-gap:12px;gap:12px;background:var(--surface);color:var(--ink);border:1px solid var(--line-strong);border-radius:10px;text-align:left;text-decoration:none;box-shadow:0 1px 2px rgb(15 23 42/5%)}.profile-grid-v2>article>.profile-list-button:focus-visible,.profile-grid-v2>article>.profile-list-button:hover{background:var(--surface-subtle);border-color:var(--action);box-shadow:0 0 0 3px var(--action-soft)}.profile-grid-v2>article>.profile-list-button b{display:block;color:var(--ink-strong);font-size:1rem;line-height:1.4}.profile-grid-v2>article>.profile-list-button small{display:block;margin-top:4px;color:var(--ink-secondary);font-size:.9375rem;line-height:1.5;font-weight:550}.profile-grid-v2>article>.profile-list-button>span:last-child{color:var(--action-hover);font-size:1.25rem}.profile-grid-v2>article>.profile-list-button .row-action-label{font-size:.9375rem;font-weight:800;text-decoration:underline;text-underline-offset:3px}.profile-grid-v2 .student-labels{display:flex;flex-wrap:wrap;gap:8px;padding-top:4px}.profile-grid-v2 .student-labels span{min-height:32px;display:inline-flex;align-items:center;padding:5px 10px;color:var(--ink);font-size:.9375rem;font-weight:750}.form-action-row,.record-actions{display:grid;grid-template-columns:1fr;grid-gap:8px;gap:8px}.form-action-row button,.record-actions button{width:100%;margin:0}.label-library,.label-manager,.progress-manager,.record-list{display:grid;grid-gap:16px;gap:16px}.label-library,.record-list{padding:20px;background:var(--surface);color:var(--ink);border:1px solid var(--line);border-radius:12px}.label-library h2,.record-list h3{margin:0;color:var(--ink-strong)}.label-library>article,.record-list .record-with-action{min-height:0;display:grid;grid-gap:12px;gap:12px;align-items:center;margin:0;padding:16px 0;border:0;border-bottom:1px solid var(--line);border-radius:0;box-shadow:none}.label-library>article:last-child,.record-list .record-with-action:last-child{border-bottom:0}.label-library small,.record-list small{color:var(--ink-secondary);font-size:.9375rem;line-height:1.5}.label-library>article>span{display:grid;grid-template-columns:16px minmax(0,1fr);grid-gap:4px 8px;gap:4px 8px;align-items:center}.label-library>article>span small{grid-column:2}.tag-dot{width:14px;height:14px;border-radius:50%;border:1px solid rgb(15 23 42/25%)}.tag-choice{min-height:48px;grid-template-columns:24px 16px minmax(0,1fr);gap:10px;padding:4px 0}.card-alert,.message-preview,.profile-completeness{background:var(--info-bg);color:var(--info-text);border-color:var(--action)}.card-alert *,.message-preview *,.profile-completeness *{color:var(--info-text)}.danger-button,.destructive-zone button{background:var(--surface);color:var(--danger-text);border-color:#dc2626}.danger-button:hover,.destructive-zone button:hover{background:var(--danger-bg)}.attention-list{padding:16px;background:#fffaf0}.attention-list summary{display:flex;align-items:center;min-height:48px;padding:4px 0 12px;color:var(--warning-text);font-size:1.05rem}.attention-list .schedule-row{grid-template-columns:minmax(0,1fr) auto;min-height:112px;padding:16px 8px;gap:12px;border-top:1px solid var(--line)}.attention-list .schedule-row time{grid-column:1/-1;display:grid;grid-template-columns:1fr auto;align-items:end;grid-gap:2px 12px;gap:2px 12px}.attention-list .schedule-row-date{grid-column:1/-1;color:var(--ink-strong);font-size:1rem;line-height:1.4;font-weight:800}.attention-list .schedule-row time b{color:var(--ink-strong);font-size:1.25rem}.attention-list .schedule-row time small,.attention-list .schedule-row>span small{color:var(--ink-secondary);font-size:.9375rem}.attention-list .schedule-row>span b{color:var(--ink-strong);font-size:1rem}.attention-list .schedule-row>span[aria-hidden=true]{display:none}.auth-shell{background:var(--canvas)}.auth-card{background:var(--surface);border-color:var(--line);box-shadow:0 18px 48px rgb(15 23 42/10%)}.auth-card,.auth-card h1,.auth-card p{color:var(--ink)}.error-state{background:var(--danger-bg);color:var(--danger-text);border:1px solid #fca5a5;border-radius:8px;padding:12px}@media (min-width:900px){.app-shell{display:grid;grid-template-columns:248px minmax(0,1fr)}.app-shell>aside{position:-webkit-sticky;position:sticky;inset:0 auto auto;width:auto;height:100vh;padding:24px 16px;display:flex;flex-direction:column;background:var(--surface);color:var(--ink);border:0;border-right:1px solid var(--line);box-shadow:none}.brand{display:flex;color:var(--ink-strong);margin:0 8px 32px}.brand span{background:var(--action-soft);color:var(--action-hover)}.nav-label{display:block;color:var(--ink-muted);margin:0 8px 8px}.sidebar-foot{display:block;margin-top:auto;background:var(--surface-subtle);color:var(--ink);border:1px solid var(--line)}.sidebar-foot small{color:var(--ink-muted)}.app-shell aside nav{grid-template-columns:1fr;gap:8px}.app-shell aside nav button{min-height:48px;display:flex;justify-content:flex-start;gap:10px;padding:12px;color:var(--ink-secondary)}.app-shell aside nav button span{font-size:1rem}.app-shell aside nav button.active{background:var(--action-soft);color:var(--action-hover);box-shadow:inset 3px 0 0 var(--action)}.app-shell aside nav button:hover{background:var(--surface-subtle);color:var(--ink-strong)}.app-shell main{padding:40px 48px 80px}}@media (min-width:600px){.hero-actions{grid-template-columns:auto auto;width:auto}.profile-grid-v2 .profile-section-head{grid-template-columns:minmax(0,1fr) auto}.profile-grid-v2 .profile-section-head button{width:auto}.form-action-row{grid-template-columns:repeat(2,max-content);justify-content:start}.record-actions{grid-template-columns:repeat(2,minmax(96px,auto));justify-content:end}.label-library>article,.record-list .record-with-action{grid-template-columns:minmax(0,1fr) auto}.attention-list .schedule-row{grid-template-columns:160px minmax(0,1fr) auto 20px;min-height:92px}.attention-list .schedule-row time{grid-column:auto;display:grid;grid-template-columns:1fr}.attention-list .schedule-row-date{grid-column:auto}.attention-list .schedule-row>span[aria-hidden=true]{display:block;color:var(--action-hover)}}.work-queue{gap:12px;padding:16px}.work-queue h2{font-size:1.35rem}.work-queue p:not(.section-kicker){display:none}.metrics{gap:8px}.metrics article{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-gap:2px 12px;gap:2px 12px;align-items:center;padding:12px 16px}.metrics article p{grid-column:1}.metrics article strong{grid-column:1;margin:0;font-size:1.25rem}.metrics article button{grid-column:2;grid-row:1/3;min-height:44px}.directory-search{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-gap:8px;gap:8px;align-items:end}.directory-search>label{margin:0}.directory-filter-panel{position:relative}.directory-filter-panel>summary{min-height:44px;display:flex;align-items:center;padding:8px 12px;border:1px solid var(--line-strong);border-radius:9px;background:var(--surface);color:var(--ink-strong);font-weight:800;cursor:pointer}.directory-filter-panel[open]{grid-column:1/-1}.directory-filter-panel[open]>summary{margin-left:auto;width:max-content}.directory-filter-panel .directory-controls{margin-top:8px}.schedule-page-heading>button{min-height:44px;padding-inline:12px}.schedule-period-summary strong{font-size:1.05rem}.schedule-date-picker>summary{min-height:44px;display:flex;align-items:center;color:var(--action-hover);font-weight:800;cursor:pointer}.schedule-date-picker>label{margin:8px 0 0}.schedule-filter-panel>summary{min-height:44px;padding-block:8px}.pending-invoices{margin-bottom:0}@media (min-width:600px){.work-queue{grid-template-columns:minmax(0,1fr) auto;align-items:center;padding:24px}.work-queue p:not(.section-kicker){display:block}.metrics{grid-template-columns:repeat(3,minmax(0,1fr))}.metrics article{display:block;padding:18px}.metrics article strong{margin:8px 0;font-size:1.75rem}.directory-search{grid-template-columns:minmax(280px,1fr) auto}.directory-filter-panel[open]{grid-column:auto;min-width:520px}.schedule-page-heading{padding:18px}.schedule-page-heading .subtle{display:block}.schedule-page-heading h2{font-size:1.5rem}.schedule-period-toolbar{grid-template-columns:minmax(180px,1fr) auto minmax(220px,.7fr)}.schedule-date-picker{grid-column:auto}}@media (min-width:1200px){.app-shell main{padding-inline:64px}}.template-library{display:grid;grid-gap:20px;gap:20px;max-width:1040px}.template-library-header{display:grid;grid-gap:12px;gap:12px}.template-library-header h2{margin:4px 0 8px;color:var(--ink-strong)}.template-count,.template-state{display:inline-flex;align-items:center;min-height:32px;padding:5px 10px;border-radius:999px;background:var(--action-soft);color:var(--info-text);border:1px solid #93c5fd;font-size:.82rem;font-weight:800;white-space:nowrap}.template-state.custom{background:var(--success-bg);color:var(--success-text);border-color:#86efac}.template-variable-note{display:grid;grid-gap:6px;gap:6px;padding:14px 16px;border:1px solid #7dd3fc;border-left:4px solid var(--action);border-radius:10px;background:var(--info-bg);color:var(--info-text)}.template-variable-note *{color:var(--info-text)}.template-variable-note span{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.82rem;line-height:1.7}.template-library-grid{display:grid;grid-gap:16px;gap:16px}.template-list{display:grid;grid-gap:8px;gap:8px;align-content:start}.template-list button{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;min-height:72px;padding:12px 16px;background:var(--surface);color:var(--ink);border:1px solid var(--line);text-align:left}.template-list button:hover{background:var(--surface-subtle);border-color:var(--action)}.template-list button.active{background:var(--action-soft);color:var(--action-hover);border-color:var(--action);box-shadow:inset 4px 0 0 var(--action)}.template-list button span:first-child{display:grid;grid-gap:4px;gap:4px;min-width:0}.template-list button b{color:inherit}.template-list button small{color:var(--ink-muted)}.template-list button.active small{color:var(--info-text)}.template-editor{display:grid;grid-gap:16px;gap:16px;min-width:0}.template-editor form,.template-preview{padding:20px;background:var(--surface);border:1px solid var(--line);border-radius:12px}.template-editor-heading{display:grid;grid-gap:12px;gap:12px}.template-editor-heading h3{margin:4px 0 0;color:var(--ink-strong)}.template-actions{display:grid;grid-gap:8px;gap:8px}.template-preview h3{margin:4px 0 14px;color:var(--ink-strong)}.whatsapp-preview{max-width:460px;padding:14px 16px;border:1px solid #86efac;border-radius:10px 10px 10px 3px;background:var(--success-bg)}.whatsapp-preview-label{margin-bottom:8px;color:var(--success-text);font-size:.75rem;font-weight:850;letter-spacing:.05em;text-transform:uppercase}.whatsapp-preview p{margin:0;white-space:pre-wrap;color:#14532d}.actual-time-form{display:grid;grid-gap:16px;gap:16px;margin-top:16px;padding:20px;background:var(--surface);border:1px solid var(--line);border-left:4px solid var(--action);border-radius:12px}.actual-time-form h3{margin:4px 0 6px;color:var(--ink-strong)}.actual-time-summary{padding:12px 16px;border-radius:10px;background:var(--info-bg)}.actual-time-summary,.actual-time-summary b,.actual-time-summary br+*{color:var(--info-text)}@media (min-width:760px){.template-library-grid{grid-template-columns:minmax(250px,.8fr) minmax(0,1.4fr);align-items:start}.template-list{position:-webkit-sticky;position:sticky;top:20px}.template-actions{grid-template-columns:1fr 1fr}}@media (min-width:600px){.template-editor-heading,.template-library-header{display:flex;align-items:flex-start;justify-content:space-between}}.page-primary-action{display:flex;margin:0 0 16px}.page-primary-action .page-action{position:static;width:100%;margin:0;box-shadow:none}.student-directory-v2>.bulk-message-panel,.student-directory-v2>.directory-heading>button{display:none}.student-admin-expander{margin-top:24px;overflow:hidden}.student-admin-expander>summary{min-height:52px;display:flex;align-items:center;padding:12px 16px;color:var(--ink);background:var(--surface);font-size:1rem;font-weight:800;cursor:pointer}.secondary-workflows{display:grid;grid-gap:16px;gap:16px;padding:16px;border-top:1px solid var(--line)}.workspace-heading{display:grid;grid-gap:16px;gap:16px;align-items:start}.workspace-heading h2{margin:4px 0 8px;color:var(--ink-strong)}.workspace-heading>button{width:100%}.operations-page,.whatsapp-tab-content,.whatsapp-workspace{display:grid;grid-gap:20px;gap:20px}.section-intro h2{margin-bottom:6px}.whatsapp-bulk-panel{max-width:760px;margin:0;padding:20px;background:var(--surface);border:1px solid var(--line);border-radius:12px}.whatsapp-bulk-panel h2{margin:4px 0 8px}.schedule-page-workspace{gap:20px}.schedule-page-heading{padding:18px;background:var(--surface);border:1px solid var(--line);border-left:4px solid var(--action);border-radius:12px}.schedule-period-toolbar{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-gap:16px;gap:16px;align-items:center;padding:16px;background:var(--surface);border:1px solid var(--line);border-radius:12px}.schedule-period-summary{display:grid;grid-gap:2px;gap:2px}.schedule-period-summary small{color:var(--ink-muted);font-size:.75rem;font-weight:850;letter-spacing:.07em}.schedule-period-summary strong{color:var(--ink-strong);font-size:1.2rem}.schedule-period-actions{display:grid;grid-template-columns:44px auto 44px;grid-gap:8px;gap:8px}.schedule-period-actions button{min-width:44px;min-height:44px;margin:0;padding:8px 10px}.schedule-date-picker{grid-column:1/-1;margin:0}.schedule-filter-panel{overflow:hidden;background:var(--surface);border:1px solid var(--line);border-radius:12px}.schedule-filter-panel>summary{min-height:52px;display:flex;align-items:center;padding:12px 16px;color:var(--ink);font-weight:800;cursor:pointer}.schedule-filter-panel[open]>summary{border-bottom:1px solid var(--line)}.schedule-filter-panel .schedule-filters{margin:0;padding:16px;border:0;border-radius:0;background:var(--surface-subtle)}.home-admin-link{display:grid;grid-gap:16px;gap:16px;margin-top:24px;padding:20px;background:var(--surface);border:1px solid var(--line);border-left:4px solid var(--ink-muted);border-radius:12px}.home-admin-link h2{margin:4px 0 8px;font-size:1.25rem}.home-admin-link button{width:100%}@media (min-width:600px){.page-primary-action{justify-content:flex-end}.page-primary-action .page-action{width:auto}.workspace-heading{grid-template-columns:minmax(0,1fr) auto}.workspace-heading>button{width:auto}.schedule-period-toolbar{grid-template-columns:minmax(180px,1fr) auto minmax(220px,.7fr)}.schedule-date-picker{grid-column:auto}.home-admin-link{grid-template-columns:minmax(0,1fr) auto;align-items:center}.home-admin-link button{width:auto}}.schedule-page-workspace{gap:12px}.schedule-page-heading{grid-template-columns:minmax(0,1fr) auto;gap:8px;padding:12px 16px;align-items:center}.schedule-page-heading .subtle{display:none}.schedule-page-heading h2{margin:2px 0 0;font-size:1.2rem}.schedule-page-heading>button{width:auto}.schedule-period-toolbar{gap:8px;padding:12px}.pending-invoice-list .row{grid-template-columns:repeat(2,minmax(0,1fr))}@media (min-width:600px){.schedule-page-heading{padding:18px}.schedule-page-heading .subtle{display:block}.schedule-page-heading h2{font-size:1.5rem}.schedule-period-toolbar{gap:16px;padding:16px}.pending-invoice-list .row{grid-template-columns:repeat(4,minmax(0,auto))}}.app-page-header{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-gap:16px;gap:16px;align-items:start;margin:0 0 20px}.app-page-header h1{margin:4px 0 6px;color:var(--ink-strong)}.app-page-header .subtle{max-width:620px;margin:0}.header-studio-button{min-width:72px;min-height:44px;padding:8px 12px}.billing-more,.today-command{display:grid;grid-gap:20px;gap:20px}.studio-tools>.section-intro{display:none}.today-command-heading{display:flex;gap:16px;align-items:center;justify-content:space-between}.today-command-heading h2{margin:4px 0 0;color:var(--ink-strong)}.today-command-heading button{min-height:44px}.next-lesson-card{display:grid;grid-gap:20px;gap:20px;padding:20px;overflow:hidden;background:var(--surface);border:1px solid var(--line);border-left:4px solid var(--action);border-radius:14px;box-shadow:0 4px 12px rgb(15 23 42/7%)}.next-lesson-card time{display:grid;grid-gap:2px;gap:2px;margin:4px 0 12px;color:var(--ink-strong);font-size:clamp(2rem,11vw,3rem);font-weight:850;line-height:1;letter-spacing:-.04em}.next-lesson-card time small{color:var(--ink-secondary);font-size:1rem;font-weight:700;letter-spacing:0;line-height:1.5}.next-lesson-card h3{margin:0 0 4px;color:var(--ink-strong);font-size:1.35rem}.next-lesson-card p{margin:0;color:var(--ink-secondary)}.next-lesson-actions{grid-template-columns:1fr 1fr;grid-gap:8px;gap:8px}.next-lesson-actions button{min-height:48px}.attention-panel,.today-panel{overflow:hidden;background:var(--surface);border:1px solid var(--line);border-radius:14px}.attention-panel .panel-heading,.today-panel .panel-heading{padding:18px 18px 12px}.attention-panel h2,.today-panel h2{margin:4px 0 0;color:var(--ink-strong);font-size:1.2rem}.attention-list{display:grid;border-top:1px solid var(--line)}.attention-list>button,button.attention-row{display:flex;min-height:72px;width:100%;align-items:center;justify-content:space-between;padding:12px 18px;text-align:left;background:var(--surface);border:0;border-bottom:1px solid var(--line);border-radius:0;box-shadow:none;color:var(--ink)}.attention-list>button:last-child{border-bottom:0}.attention-list>button:active,.attention-list>button:hover{background:var(--surface-subtle)}.attention-list>button span:first-child{display:grid;grid-gap:2px;gap:2px}.attention-list>button b{color:var(--ink-strong);font-size:1.15rem}.attention-list>button small{color:var(--ink-secondary);font-size:.94rem}.mobile-calendar-compact{display:grid;grid-gap:16px;gap:16px}.mobile-day-strip{display:grid;grid-template-columns:repeat(7,minmax(44px,1fr));grid-gap:4px;gap:4px;padding:6px;overflow-x:auto;background:var(--surface);border:1px solid var(--line);border-radius:14px}.mobile-day-strip button{position:relative;display:grid;min-width:44px;min-height:68px;place-content:center;grid-gap:2px;gap:2px;padding:6px 2px;background:transparent;border:1px solid transparent;border-radius:10px;box-shadow:none;color:var(--ink-secondary)}.mobile-day-strip button span{font-size:.75rem;font-weight:800;text-transform:uppercase}.mobile-day-strip button b{color:inherit;font-size:1.05rem}.mobile-day-strip button i{position:absolute;right:4px;bottom:3px;min-width:14px;color:inherit;font-size:.68rem;font-style:normal;font-weight:800}.mobile-day-strip button.today{border-color:var(--line-strong)}.mobile-day-strip button.selected{background:var(--action);color:#fff}.mobile-day-agenda{overflow:hidden;background:var(--surface);border:1px solid var(--line);border-radius:14px}.mobile-day-agenda>header{display:flex;gap:12px;align-items:center;justify-content:space-between;padding:16px;border-bottom:1px solid var(--line)}.mobile-day-agenda h3{margin:3px 0 0;color:var(--ink-strong);font-size:1.16rem}.mobile-day-agenda>header>span{padding:6px 10px;color:var(--ink-secondary);background:var(--surface-subtle);border:1px solid var(--line);border-radius:999px;font-size:.82rem;font-weight:800;white-space:nowrap}.mobile-day-lessons{display:grid}.mobile-day-lessons .schedule-row{border:0;border-bottom:1px solid var(--line);border-radius:0}.mobile-day-lessons .schedule-row:last-child{border-bottom:0}.student-card-grid{display:grid;grid-template-columns:minmax(0,1fr);grid-gap:8px;gap:8px}button.student-card-v2{min-height:112px;padding:16px;text-align:left;background:var(--surface);border:1px solid var(--line);border-radius:12px;box-shadow:none;color:var(--ink)}button.student-card-v2:active,button.student-card-v2:hover{background:var(--surface-subtle);border-color:var(--line-strong);transform:none}.student-card-v2 .student-card-head{grid-template-columns:48px minmax(0,1fr) auto;gap:12px}.student-card-v2 .student-avatar{min-width:48px;width:48px;height:48px;color:#fff;background:#334155}.student-card-v2 h3{color:var(--ink-strong);font-size:1.08rem}.student-card-v2 .student-card-head p{overflow:hidden;color:var(--ink-secondary);font-size:.94rem;text-overflow:ellipsis;white-space:nowrap}.student-card-v2 .student-card-section{margin:10px 0 0;padding:10px 0 0}.student-card-v2 .student-card-section>small{display:none}.student-card-v2 .instrument-pills{gap:6px}.student-card-v2 .instrument-pills span{padding:5px 8px;color:var(--ink);background:var(--surface-subtle);border:1px solid var(--line);font-size:.85rem}.student-card-v2 .open-row{min-height:44px;margin-top:8px;color:var(--action-hover);font-size:.94rem}.pending-invoice-list{display:grid;grid-gap:8px;gap:8px}.pending-invoice-list article{display:grid;grid-gap:12px;gap:12px;padding:16px;align-items:center;background:var(--surface);border:1px solid var(--line);border-radius:12px}.pending-invoice-list article>div:first-child{display:grid;grid-gap:3px;gap:3px}.pending-invoice-list article b{color:var(--ink-strong);font-size:1.05rem}.pending-invoice-list article small{color:var(--ink-secondary)}.pending-invoice-summary{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-gap:8px 12px;gap:8px 12px;align-items:center}.pending-invoice-summary strong{text-align:right}.pending-invoice-summary button{grid-column:1/-1;min-height:44px}.invoice-actions{position:-webkit-sticky;position:sticky;bottom:76px;z-index:5;padding:12px;background:rgb(255 255 255/96%);border:1px solid var(--line);border-radius:14px;box-shadow:0 -6px 20px rgb(15 23 42/10%);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.whatsapp-inbox,.whatsapp-inbox-list,.whatsapp-inbox-list article{display:grid;grid-gap:16px;gap:16px}.whatsapp-inbox-list article{padding:16px;background:var(--surface);border:1px solid var(--line);border-left:4px solid var(--warning);border-radius:12px}.whatsapp-inbox-list article p{margin:6px 0;color:var(--ink);font-size:1rem}.whatsapp-inbox-list article small{color:var(--ink-secondary)}.whatsapp-inbox-list article button{width:100%}@media (min-width:760px){.next-lesson-card{grid-template-columns:minmax(0,1fr) auto;align-items:end;padding:24px}.next-lesson-actions{min-width:280px}.pending-invoice-list article{grid-template-columns:minmax(0,1fr) minmax(300px,auto)}.pending-invoice-summary button{grid-column:auto}.pending-invoice-summary{grid-template-columns:auto auto auto}.whatsapp-inbox-list article{grid-template-columns:minmax(0,1fr) auto;align-items:center}.whatsapp-inbox-list article button{width:auto}}@media (min-width:900px){.header-studio-button{display:none}.sidebar-studio-button{display:flex;width:calc(100% - 24px);margin:auto 12px 12px;justify-content:center;color:#fff;background:rgb(255 255 255/10%);border-color:rgb(255 255 255/24%)}.invoice-actions{bottom:16px}}@media (min-width:1000px){.mobile-calendar-compact{display:none}}.nav-icon,.tool-icon{display:block;width:24px;height:24px;flex:0 0 24px}.tool-icon{color:var(--action)}.session-exit{display:grid;grid-gap:16px;gap:16px;margin-top:24px;padding:16px;align-items:center;background:var(--surface);border:1px solid var(--line);border-radius:14px}.session-exit div{display:grid;grid-gap:4px;gap:4px}.session-exit b{color:var(--ink-strong);font-size:1rem}.session-exit small{color:var(--ink-secondary);font-size:.94rem}.session-exit button{min-height:44px}.fatal-error,.route-loading{min-height:100vh;padding:24px;display:grid;place-items:center;background:var(--canvas)}.fatal-error>section{width:min(100%,560px);padding:24px;background:var(--surface);border:1px solid var(--line);border-radius:16px}.fatal-error h1{color:var(--ink-strong);font-size:clamp(1.6rem,7vw,2.2rem)}.fatal-error code{display:block;margin-top:8px;overflow-wrap:anywhere;color:var(--danger)}.fatal-error .row{margin-top:20px}.profile-action-list b,.profile-list-button b{color:var(--ink-strong);font-size:1rem}.profile-action-list small,.profile-list-button small{color:var(--ink-secondary);font-size:.94rem;line-height:1.5}button:active{transform:translateY(1px)}@media (prefers-reduced-motion:reduce){*,:after,:before{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@media (min-width:760px){.session-exit{grid-template-columns:minmax(0,1fr) auto}}.calendar-mode-toggle{display:grid;grid-template-columns:1fr 1fr;grid-gap:8px;gap:8px;padding:6px;background:var(--surface-subtle);border:1px solid var(--line);border-radius:12px}.calendar-mode-toggle button{min-height:44px;color:var(--ink);background:var(--surface);border:1px solid var(--line);box-shadow:none}.calendar-mode-toggle button.active{color:#fff;background:var(--action);border-color:var(--action)}.calendar-day-view{overflow:hidden;background:var(--surface);border:1px solid var(--line);border-radius:14px}.calendar-day-view>header{display:flex;min-height:72px;gap:16px;align-items:center;justify-content:space-between;padding:16px;border-bottom:1px solid var(--line)}.calendar-day-view>header h3{margin:4px 0 0;color:var(--ink-strong);font-size:1.18rem}.calendar-day-view>header>span{padding:6px 10px;color:var(--ink-secondary);background:var(--surface-subtle);border:1px solid var(--line);border-radius:999px;font-size:.88rem;font-weight:800;white-space:nowrap}.calendar-day-timeline{max-height:min(64vh,720px);overflow-y:auto;overscroll-behavior:contain}.calendar-time-row{display:grid;grid-template-columns:56px minmax(0,1fr);min-height:72px;border-bottom:1px solid var(--line)}.calendar-time-row:last-child{border-bottom:0}.calendar-time-row>time{padding:10px 8px;color:var(--ink-muted);background:var(--surface-subtle);border-right:1px solid var(--line);font-size:.78rem;font-weight:800;text-align:right;white-space:nowrap}.calendar-time-slot{display:grid;grid-gap:8px;gap:8px;align-content:start;min-width:0;padding:6px 8px;background-image:linear-gradient(90deg,transparent,transparent)}.calendar-day-view .calendar-event{display:grid;grid-gap:3px;gap:3px;width:100%;min-height:52px;padding:8px 10px;color:var(--info-text);background:var(--info-bg);border:1px solid #93c5fd;border-left:4px solid var(--action);border-radius:8px;box-shadow:none;text-align:left}.calendar-day-view .calendar-event b{overflow:hidden;color:#172554;font-size:.94rem;text-overflow:ellipsis;white-space:nowrap}.calendar-day-view .calendar-event span{overflow:hidden;color:var(--info-text);font-size:.82rem;text-overflow:ellipsis;white-space:nowrap}.available-time-finder{display:grid;grid-gap:20px;gap:20px}.available-time-finder h2{margin:4px 0 8px;color:var(--ink-strong)}.available-time-finder>form{display:grid;grid-gap:16px;gap:16px;padding:16px}.available-slot-results,.available-time-finder>form{background:var(--surface);border:1px solid var(--line);border-radius:14px}.available-slot-results{overflow:hidden}.available-slot-results>header{display:flex;min-height:72px;align-items:center;justify-content:space-between;gap:16px;padding:16px;border-bottom:1px solid var(--line)}.available-slot-results>header h3,.available-slot-results>header p{margin:0}.available-slot-results>header h3{color:var(--ink-strong)}.available-slot-results>header p{margin-top:4px;color:var(--ink-secondary)}.available-slot-results>header>span{padding:6px 10px;color:var(--ink-secondary);background:var(--surface-subtle);border:1px solid var(--line);border-radius:999px;font-weight:800;white-space:nowrap}.available-slot-list{display:grid;max-height:min(56vh,640px);overflow-y:auto;overscroll-behavior:contain}.available-slot-list>button{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-gap:16px;gap:16px;width:100%;min-height:72px;padding:12px 16px;align-items:center;color:var(--ink);background:var(--surface);border:0;border-bottom:1px solid var(--line);border-radius:0;box-shadow:none;text-align:left}.available-slot-list>button:last-child{border-bottom:0}.available-slot-list>button:active,.available-slot-list>button:hover{color:var(--ink);background:var(--surface-subtle)}.available-slot-list>button span{display:grid;grid-gap:4px;gap:4px;min-width:0}.available-slot-list>button b{color:var(--ink-strong);font-size:1rem}.available-slot-list>button small{color:var(--ink-secondary);font-size:.9rem}.available-slot-list>button strong{color:var(--action-hover);font-size:.94rem}.attendance-date-control{display:grid;grid-gap:8px;gap:8px}.attendance-date-control label{margin:0}.attendance-date-control button{width:100%}@media (min-width:600px){.available-time-finder>form{grid-template-columns:minmax(0,1fr) auto;align-items:end;padding:20px}.available-time-finder>form .form-columns{min-width:460px}.available-time-finder>form>button{min-width:180px}.attendance-date-control{grid-template-columns:minmax(200px,1fr) auto;align-items:end}.attendance-date-control button{width:auto}}@media (min-width:1000px){.calendar-mode-toggle{max-width:280px}.calendar-day-view:not(.mobile-calendar-compact .calendar-day-view){max-width:960px}.calendar-time-row{grid-template-columns:72px minmax(0,1fr);min-height:80px}.calendar-time-slot{grid-template-columns:repeat(2,minmax(0,1fr))}}input,select,textarea{font-size:16px;min-width:0;max-width:100%}.form-columns,.form-columns>*,label{min-width:0}input[type=date],input[type=datetime-local],input[type=month],input[type=time]{display:block;width:100%;min-width:0;max-width:100%}.billing-action-queues,.billing-queue{display:grid;grid-gap:16px;gap:16px}.billing-queue{padding:16px;border:1px solid var(--line);border-left:4px solid var(--line-strong);border-radius:12px;background:var(--surface)}.billing-queue-overdue{border-left-color:var(--danger-text)}.billing-queue-partial{border-left-color:var(--warning-text)}.billing-queue-drafts{border-left-color:var(--info-text)}.billing-queue .pending-invoice-list article{min-height:0}.billing-queue-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.billing-queue-heading h3,.billing-queue-heading p{margin:0}.billing-queue-heading p{color:var(--ink-secondary)}.billing-queue-heading>span{min-width:32px;padding:4px 8px;border-radius:999px;background:var(--surface-subtle);color:var(--ink-strong);text-align:center;font-weight:800}.pending-invoice-summary{grid-template-columns:1fr;align-items:start}.pending-invoice-summary .status{width:max-content}.pending-invoice-summary strong{display:grid;grid-gap:2px;gap:2px;color:var(--ink-strong);font-size:1.15rem;line-height:1.3;text-align:left}.pending-invoice-summary strong small{color:var(--ink-secondary);font-size:.82rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em}.pending-invoice-summary button{grid-column:auto;width:100%}.all-clear{display:grid;grid-gap:4px;gap:4px;min-height:72px;padding:16px 18px;align-content:center;background:var(--success-bg)}.all-clear,.all-clear small{color:var(--success-text)}@media (min-width:760px){.pending-invoice-summary{grid-template-columns:auto auto auto;align-items:center}.pending-invoice-summary strong{text-align:right}.pending-invoice-summary button{width:auto}}.header-studio-button{display:inline-flex}.sidebar-studio-button{display:none}.app-shell main .student-directory-v2 .student-card-grid button.student-card.student-card-v2{color:var(--ink);background:var(--surface);border-color:var(--line)}.app-shell main .student-directory-v2 .student-card-grid button.student-card.student-card-v2:active,.app-shell main .student-directory-v2 .student-card-grid button.student-card.student-card-v2:focus-visible,.app-shell main .student-directory-v2 .student-card-grid button.student-card.student-card-v2:hover{color:var(--ink);background:var(--surface-subtle);border-color:var(--line-strong)}.app-shell main .student-directory-v2 button.student-card-v2 b,.app-shell main .student-directory-v2 button.student-card-v2 h3{color:var(--ink-strong)}.app-shell main .student-directory-v2 button.student-card-v2 p,.app-shell main .student-directory-v2 button.student-card-v2 small{color:var(--ink-secondary)}.work-queue{background:#eff6ff;color:var(--ink);border-color:#93c5fd}.work-queue h2{color:var(--ink-strong)}.work-queue p:not(.section-kicker){color:var(--ink-secondary)}.work-queue .section-kicker{color:var(--info-text)}.work-queue button{background:var(--action);color:#fff;border-color:var(--action)}.admin-list>button,.attention-list>button,.mobile-day-strip button,.operations-queue-grid button,.profile-action-list>button.profile-list-button,.profile-grid-v2>article>button.profile-list-button,.schedule-row,.schedule-tabs button,.student-card,.student-card-v2,.template-list button,button.attention-row{background:var(--surface);color:var(--ink)}.admin-list>button:active,.admin-list>button:hover,.attention-list>button:active,.attention-list>button:hover,.mobile-day-strip button:active,.mobile-day-strip button:hover,.operations-queue-grid button:active,.operations-queue-grid button:hover,.profile-action-list>button.profile-list-button:active,.profile-action-list>button.profile-list-button:hover,.profile-grid-v2>article>button.profile-list-button:active,.profile-grid-v2>article>button.profile-list-button:hover,.schedule-row:active,.schedule-row:hover,.student-card-v2:active,.student-card-v2:hover,.student-card:active,.student-card:hover,.template-list button:active,.template-list button:hover,button.attention-row:active,button.attention-row:hover{background:var(--surface-subtle);color:var(--ink)}.mobile-day-strip button.selected,.schedule-tabs button.active,.template-list button.active{background:var(--action-soft);color:var(--action-hover);border-color:#93c5fd}.admin-list>button b,.admin-list>button span,.attention-list>button b,.attention-list>button span,.operations-queue-grid button b,.operations-queue-grid button span,.template-list button b,.template-list button span,button.attention-row b,button.attention-row span{color:inherit}.admin-list>button small,.attention-list>button small,.operations-queue-grid button small,.template-list button small,button.attention-row small{color:var(--ink-secondary)}.attendance-card>.lesson-time{background:var(--action-soft);color:var(--ink-strong);border-color:#93c5fd}.attendance-card>.lesson-time *{color:var(--ink-strong)}.calendar-corner,.calendar-day-head{background:#eff6ff;color:var(--ink-strong);border-bottom:1px solid #93c5fd}.currency-summary{background:var(--surface-subtle);color:var(--ink);border:1px solid var(--line)}.currency-summary .section-kicker{color:var(--ink-muted)}.currency-summary strong{background:#eff6ff;color:var(--ink-strong);border:1px solid #93c5fd}.invoice-logo-placeholder,.student-avatar,.student-card-v2 .student-avatar{background:var(--action-soft);color:var(--action-hover);border-color:#93c5fd;box-shadow:none}.instrument-pills span,.student-card-v2 .instrument-pills span{background:var(--info-bg);color:var(--info-text);border-color:#7dd3fc}button:active{background:var(--action-hover)}button.back:active,button.link:active,button.placeholder:active,button.secondary:active{background:var(--action-soft);color:var(--ink-strong)}@media (min-width:900px){.app-shell>aside{background:var(--surface);color:var(--ink);border-right:1px solid var(--line)}.app-shell>aside .brand{color:var(--ink-strong)}.app-shell>aside .brand span{background:var(--action-soft);color:var(--action-hover)}.app-shell>aside .nav-label{color:var(--ink-muted)}.app-shell>aside nav button{color:var(--ink-secondary)}.app-shell>aside nav button.active{background:var(--action-soft);color:var(--action-hover);box-shadow:inset 3px 0 0 var(--action)}.app-shell>aside nav button:hover{background:var(--surface-subtle);color:var(--ink-strong)}.app-shell>aside .sidebar-foot{background:var(--surface-subtle);color:var(--ink);border:1px solid var(--line)}.app-shell>aside .sidebar-foot small{color:var(--ink-muted)}.header-studio-button{display:none}.sidebar-studio-button{display:flex;color:var(--action-hover);background:var(--action-soft);border-color:#93c5fd}}.app-shell main .helper,.app-shell main small,.attention-list .schedule-row time small,.attention-list .schedule-row>span small,.label-library small,.profile-list-button small,.record-list small,.student-card-v2 .instrument-pills span,.student-card-v2 .open-row,.student-card-v2 .student-card-head p{font-size:1rem;line-height:1.5}.schedule-row-badges{grid-column:2/4;display:flex;flex-wrap:wrap;gap:8px;align-items:center;justify-self:start}.schedule-row-badges .status{margin:0}.schedule-row>span:last-child{grid-column:4;grid-row:1/span 3}.lesson-row-state{display:grid;justify-items:end;grid-gap:4px;gap:4px}.lesson-row-state .category{margin:0}.attendance-indicator,.calendar-attendance{display:inline-flex;width:max-content;align-items:center;min-height:28px;padding:4px 8px;border:1px solid;border-radius:999px;font-size:.875rem;line-height:1.2;font-weight:800}.attendance-present{background:var(--success-bg);color:var(--success-text);border-color:#86efac}.attendance-absent{background:var(--warning-bg);color:var(--warning-text);border-color:#fbbf24}.attendance-summary{display:grid;grid-gap:4px;gap:4px;padding:16px;border:1px solid;border-radius:12px}.attendance-summary b,.attendance-summary small{color:inherit}.attendance-unmarked{background:var(--surface-subtle);color:var(--ink-secondary);border-color:var(--line-strong)}.calendar-event .calendar-attendance{margin-top:4px;font-size:.75rem}.calendar-subscription-actions{display:grid;grid-gap:8px;gap:8px}.calendar-subscription-actions>*{display:inline-flex;min-height:44px;align-items:center;justify-content:center}.header-studio-button{width:48px;min-width:48px;height:48px;min-height:48px;padding:12px;align-items:center;justify-content:center}.header-studio-button .tool-icon{color:currentColor}@media (min-width:760px){.calendar-subscription-actions{grid-template-columns:max-content max-content}.schedule-row>span:last-child{grid-column:auto;grid-row:auto}}@media (min-width:1000px){.schedule-row-badges{grid-column:auto}}.app-shell main article,.app-shell main details,.app-shell main form,.app-shell main section,.app-shell main>*{min-width:0;max-width:100%}.section-kicker{display:block;margin:0 0 4px;line-height:1.35}.billing-toolbar,.directory-heading,.panel-heading,.schedule-heading,.section-intro,.template-library-header,.workspace-heading{min-width:0}.section-intro>:last-child,.template-library-header>div>:last-child,.workspace-heading>div>:last-child{margin-bottom:0}.settings-category{display:grid;grid-gap:12px;gap:12px;margin:24px 0;padding:16px;background:var(--surface-subtle);border:1px solid var(--line);border-radius:14px}.settings-category>.section-intro{padding:4px 0 8px}.settings-category>.section-intro h2{margin:4px 0;color:var(--ink-strong)}.ui-disclosure-content>.reminder-policy-card,.ui-disclosure-content>.room-management-panel,.ui-disclosure-content>.schedule-workspace,.ui-disclosure-content>.template-library,.ui-disclosure-content>.template-variable-note{margin:0}.ui-disclosure-content>.reminder-policy-card,.ui-disclosure-content>.room-management-panel{padding:0;border:0;border-radius:0}.schedule-day>h3{margin:8px 0 0;padding:8px 4px;background:transparent;color:var(--ink-strong);border:0;border-bottom:2px solid var(--line);border-radius:0}.attendance-indicator,.calendar-attendance,.category,.status,.status-chip,.template-count,.template-state{position:static;margin:0;align-self:center;vertical-align:middle}.next-lesson-actions{display:grid;grid-template-columns:1fr;width:100%}.next-lesson-actions button{width:100%}.app-notice{position:relative;align-items:flex-start}.app-notice>span{min-width:0;padding-top:8px;overflow-wrap:anywhere}.calendar-subscription-url input,.template-original pre,.template-variable-note span{overflow-wrap:anywhere;word-break:break-word}@media (min-width:760px){.settings-category{padding:24px}.next-lesson-actions{min-width:168px}}.billing-queue-intro{display:grid;grid-gap:8px;gap:8px;min-width:0}.billing-queue-intro h2,.billing-queue-intro p{margin:0}.billing-queue-title-row{display:flex;min-width:0;align-items:center;justify-content:space-between;gap:12px}.billing-queue-title-row h2{color:var(--ink-strong);font-size:1.45rem}.billing-queue-title-row>span{flex:0 0 auto;min-height:32px;display:inline-flex;align-items:center;padding:5px 10px;color:var(--action-hover);background:var(--action-soft);border:1px solid #93c5fd;border-radius:999px;font-size:.875rem;font-weight:800;white-space:nowrap}.actual-time-form,.actual-time-form .form-columns,.actual-time-form label,.actual-time-form>*,.lesson-detail-card,.schedule-detail{min-width:0;max-width:100%}.detail-heading>div{width:100%;min-width:0}.lesson-detail-label-row{display:flex;min-height:32px;align-items:center;justify-content:space-between;gap:12px}.lesson-detail-label-row .section-kicker{margin:0}.lesson-detail-label-row .status{flex:0 0 auto}.actual-time-form{width:100%;overflow:hidden;padding:16px}.actual-time-form .form-columns{width:100%;grid-template-columns:minmax(0,1fr)}.actual-time-form label{width:100%;overflow:hidden}.actual-time-form input[type=datetime-local]{box-sizing:border-box;inline-size:100%;min-inline-size:0;max-inline-size:100%}.actual-time-form>button{width:100%}@supports (-webkit-touch-callout:none){.actual-time-form input[type=datetime-local]{inline-size:-webkit-fill-available;width:-webkit-fill-available}}@media (min-width:760px){.actual-time-form{padding:20px}.actual-time-form .form-columns{grid-template-columns:repeat(2,minmax(0,1fr))}}.connection-card-list,.connections-tab-content,.connections-workspace,.settings-data-stack,.settings-tab-content,.settings-workspace{display:grid;min-width:0;grid-gap:16px;gap:16px}.mobile-view-picker{display:grid;grid-gap:8px;gap:8px;margin:0;color:var(--ink-strong);font-weight:800}.workspace-tab-shell{display:none}.ui-tabs{display:flex;gap:8px;overflow-x:auto;padding:4px;background:var(--surface-subtle);border:1px solid var(--line);border-radius:12px;scrollbar-width:thin}.ui-tabs button{flex:0 0 auto;min-height:44px;padding:8px 16px;background:transparent;color:var(--ink-secondary);border:1px solid transparent;box-shadow:none}.ui-tabs button.active{background:var(--surface);color:var(--action-hover);border-color:var(--line-strong);box-shadow:0 1px 3px rgb(15 23 42/8%)}.automation-rules-form,.integration-control,.integration-history{display:grid;min-width:0;grid-gap:16px;gap:16px;padding:20px;background:var(--surface);color:var(--ink);border:1px solid var(--line);border-radius:14px}.integration-heading{display:flex;min-width:0;gap:12px;align-items:flex-start;justify-content:space-between}.integration-heading h2{margin:4px 0 0;color:var(--ink-strong)}.integration-heading .status{flex:0 0 auto}.pairing-panel{display:grid;justify-items:center;grid-gap:12px;gap:12px;padding:16px;background:var(--surface-subtle);border:1px solid var(--line);border-radius:12px}.pairing-panel p{margin:0}.whatsapp-pairing-actions{display:grid;grid-template-columns:minmax(0,1fr);grid-gap:8px;gap:8px}.whatsapp-pairing-actions>button{width:100%;min-height:44px}.connection-detail{display:grid;grid-gap:2px;gap:2px;margin:0;padding:12px;background:var(--surface-subtle);border:1px solid var(--line);border-radius:10px;overflow-wrap:anywhere}.connection-detail small{color:var(--ink-secondary)}.attention-panel .attention-list{padding:0;background:transparent;border:0;border-top:1px solid var(--line);border-radius:0}.available-time-finder,.available-time-finder .form-columns,.available-time-finder input,.available-time-finder label,.available-time-finder>form,.connections-workspace label,.settings-workspace label{min-inline-size:0;max-inline-size:100%}.available-time-finder input[type=date],.available-time-finder input[type=datetime-local],.settings-workspace input[type=date],.settings-workspace input[type=datetime-local]{display:block;box-sizing:border-box;inline-size:100%;width:100%;min-width:0;max-width:100%}@supports (-webkit-touch-callout:none){.available-time-finder input[type=date],.available-time-finder input[type=datetime-local],.settings-workspace input[type=date],.settings-workspace input[type=datetime-local]{inline-size:-webkit-fill-available;width:-webkit-fill-available}}.today-panel .lesson-row{grid-template-columns:88px minmax(0,1fr);gap:8px 12px;align-items:start;padding:16px 4px}.today-panel .lesson-row time{display:grid;grid-gap:2px;gap:2px;font-size:1.15rem;line-height:1.25}.today-panel .lesson-row time small{margin:0;white-space:nowrap;font-size:.875rem}.today-panel .lesson-row>span:nth-child(2){min-width:0;padding-top:1px}.today-panel .lesson-row>span:nth-child(2) b{font-size:1.05rem;line-height:1.35}.today-panel .lesson-row-state{grid-column:2;display:flex;flex-wrap:wrap;justify-items:start;justify-content:flex-start;gap:6px}.today-panel .lesson-row-state .attendance-indicator,.today-panel .lesson-row-state .category{min-height:28px;padding:4px 8px;font-size:.78rem;line-height:1.2}.app-shell main{padding-top:calc(24px + env(safe-area-inset-top))}.available-time-finder>form .form-columns,.integration-control .row{grid-template-columns:minmax(0,1fr)}@media (min-width:760px){.app-shell main{padding-top:44px}.mobile-view-picker{display:none}.workspace-tab-shell{display:block}.connection-card-list{grid-template-columns:repeat(2,minmax(0,1fr))}.connection-card-list>:last-child:nth-child(odd){grid-column:1/-1}.available-time-finder>form .form-columns,.integration-control .row,.whatsapp-pairing-actions{grid-template-columns:repeat(2,minmax(0,1fr))}.whatsapp-pairing-actions>.link{grid-column:1/-1;width:max-content;justify-self:start}.today-panel .lesson-row{grid-template-columns:104px minmax(0,1fr) auto;align-items:center}.today-panel .lesson-row-state{grid-column:auto;justify-content:flex-end}}