:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--ink:#241d1d;--muted:#716666;--surface:#fffdfa;--surface-strong:#fff;--line:#eadfda;--brand-red:#e40814;--brand-red-dark:#b8050e;--brand-red-soft:#ffe8e9;--on-brand-red:#fff;--brand-yellow:#ffd353;--brand-yellow-soft:#fff4cf;--danger:#a30e17;--success:#26734d;--warning:#9a6700;--shadow:0 24px 70px #672e1f1f}.payment-journal{gap:1rem;display:grid}.payment-journal__filters{flex-wrap:wrap;align-items:end;gap:.75rem;display:flex}.payment-journal__filters label{gap:.35rem;min-width:11rem;display:grid}.payment-journal__summary{grid-template-columns:repeat(4,minmax(9rem,1fr));gap:.75rem;display:grid}.payment-journal__summary>div{border:1px solid var(--panel-border);background:var(--panel-surface-solid);border-radius:.8rem;gap:.2rem;padding:.8rem 1rem;display:grid}.payment-journal__summary span{color:var(--muted);font-size:.85rem}.payment-journal__scroll{border:1px solid var(--panel-border);border-radius:.9rem;max-height:calc(100vh - 18rem);overflow:auto}.payment-journal table{border-collapse:separate;border-spacing:0;width:100%;min-width:1250px;font-size:.86rem}.payment-journal th,.payment-journal td{border-right:1px solid var(--panel-border);border-bottom:1px solid var(--panel-border);vertical-align:top;background:var(--panel-surface-solid);padding:.55rem}.payment-journal thead th{z-index:3;background:var(--surface);white-space:nowrap;position:sticky;top:0}.payment-journal__sticky{z-index:2;text-align:left;min-width:12rem;position:sticky;left:0}.payment-journal thead .payment-journal__sticky{z-index:4}.payment-journal td small{color:var(--muted);margin-top:.15rem;display:block}.payment-cell{text-align:left;background:var(--surface);width:100%;min-width:7.4rem;color:inherit;cursor:pointer;border:0;border-radius:.55rem;gap:.2rem;padding:.45rem;display:grid}.payment-cell:disabled{cursor:default;opacity:.7}.payment-cell span{font-size:.75rem}.payment-cell--paid{background:color-mix(in srgb, #4caf50 18%, var(--surface))}.payment-cell--partially_paid{background:color-mix(in srgb, #e7aa2e 20%, var(--surface))}.payment-cell--not_paid{background:color-mix(in srgb, #d75a5a 16%, var(--surface))}.payment-cell--overpaid{background:color-mix(in srgb, #527ee8 16%, var(--surface))}.payment-dialog-backdrop{z-index:100;background:#00000073;place-items:center;padding:1rem;display:grid;position:fixed;inset:0}.payment-dialog{width:min(42rem,100%);max-height:calc(100vh - 2rem);position:relative;overflow:auto}.payment-dialog__close{cursor:pointer;background:0 0;border:0;font-size:1.6rem;position:absolute;top:.6rem;right:.7rem}.payment-dialog__totals{grid-template-columns:repeat(2,1fr);gap:.7rem;display:grid}.payment-dialog__totals div{background:var(--surface);border-radius:.6rem;padding:.65rem}.payment-dialog__totals dt{color:var(--muted);font-size:.8rem}.payment-dialog__totals dd{margin:.2rem 0 0;font-weight:700}.payment-operations{gap:.5rem;padding:0;list-style:none;display:grid}.payment-operations li{background:var(--surface);border-radius:.55rem;gap:.15rem;padding:.6rem;display:grid}.payment-operations span{color:var(--muted);font-size:.85rem}.payment-add-form{gap:.7rem;display:grid}.payment-add-form label{gap:.3rem;display:grid}.payment-add-form textarea{resize:vertical;min-height:4rem}@media (max-width:720px){.payment-journal__summary{grid-template-columns:repeat(2,1fr)}.payment-journal__scroll{max-height:none}.payment-journal__filters label,.payment-journal__filters>button{width:100%}}.feedback-widget{z-index:50;position:fixed;bottom:1.5rem;right:1.5rem}.update-available-notice{z-index:18;background:var(--surface-strong);border:1px solid #c58d1c8c;border-radius:14px;justify-content:space-between;align-items:center;gap:18px;width:min(100% - 32px,620px);padding:13px 15px;display:flex;position:fixed;top:18px;left:50%;transform:translate(-50%);box-shadow:0 14px 35px #1d171138}.update-available-notice strong,.update-available-notice p{display:block}.update-available-notice p{color:var(--muted);margin:3px 0 0;font-size:.9rem}.update-available-notice button{white-space:nowrap;flex:none}@media (max-width:900px){.update-available-notice{top:calc(max(16px, env(safe-area-inset-top)) + 56px)}}@media (max-width:620px){.update-available-notice{flex-direction:column;align-items:stretch;gap:10px}}.feedback-widget__trigger{background:var(--brand-red);width:3.5rem;height:3.5rem;color:var(--on-brand-red);border:0;border-radius:50%;place-items:center;padding:0;display:grid;box-shadow:0 10px 28px #7f050c57}.feedback-widget__trigger:hover,.feedback-widget__trigger:focus-visible{background:var(--brand-red-dark);transform:translateY(-2px)}.feedback-widget__trigger svg{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.8px;width:1.45rem;height:1.45rem}.feedback-widget__panel{border:1px solid var(--line);background:var(--surface);border-radius:1rem;width:min(23rem,100vw - 2rem);max-height:min(40rem,100vh - 7rem);padding:1rem;position:absolute;bottom:4.25rem;right:0;overflow-y:auto;box-shadow:0 12px 32px #0003}.feedback-widget__header{color:var(--brand-red);justify-content:space-between;align-items:center;gap:1rem;display:flex}.feedback-widget__close{width:2rem;height:2rem;color:var(--muted);background:0 0;border:0;border-radius:50%;padding:0;font-size:1.6rem;line-height:1}.feedback-widget__close:hover,.feedback-widget__close:focus-visible{background:var(--brand-red-soft);color:var(--brand-red-dark)}.feedback-widget form{gap:.6rem;margin-top:.75rem;display:grid}.feedback-widget textarea{min-height:6rem}.feedback-widget label{gap:.3rem;font-size:.8rem;font-weight:750;display:grid}@media (max-width:680px){.feedback-widget{bottom:1rem;right:1rem}.feedback-widget__panel{width:min(23rem,100vw - 2rem)}}.app-shell--journal{position:relative}.journal-heading-row{justify-content:space-between;align-items:center;gap:16px;width:min(100%,1180px);display:flex}.journal-tests-link{flex:none;justify-content:center;align-items:center;text-decoration:none;display:inline-flex}.journal-add-participant-button{width:fit-content;margin:16px auto 0;display:block}.journal-participant-panel summary{cursor:pointer;width:fit-content;min-height:40px;padding:9px 14px;display:list-item}.journal-participant-editor{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;width:min(100%,880px);margin:12px auto 0;display:grid}.journal-participant-editor>p,.journal-participant-editor>button{grid-column:1/-1}.journal-participant-editor>label{gap:6px;min-width:0;display:grid}@media (max-width:640px){.journal-participant-editor{grid-template-columns:minmax(0,1fr)}}@media (max-width:680px){.journal-heading-row{flex-wrap:wrap;align-items:flex-start}.journal-tests-link{margin-left:auto}}.journal-workspace{gap:18px;min-width:0;display:grid}.journal-controls{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;display:grid}.journal-controls label,.journal-control,.journal-cell-editor label,.journal-topic-form label{gap:6px;font-weight:700;display:grid}.journal-quarter-tabs,.journal-view-tabs,.journal-content-tabs{flex-wrap:wrap;gap:8px;display:flex}.journal-month-select{gap:6px;width:min(100%,320px);margin:0 0 14px;font-weight:700;display:grid}.journal-quarter-tabs button,.journal-view-tabs button,.journal-content-tabs button{min-height:38px;color:var(--muted);border:1px solid var(--line);box-shadow:none;background:0 0;border-radius:10px;padding:7px 11px}.journal-quarter-tabs button[aria-current=page],.journal-view-tabs button[aria-pressed=true],.journal-tab--active{color:var(--panel-text);background:var(--panel-accent-soft);border-color:var(--panel-accent)}.journal-grid-wrap{border:1px solid var(--line);background:var(--panel-surface-solid);border-radius:14px;overflow-x:auto}.settings-card.journal-table-scroll{border:1px solid var(--line);isolation:isolate;overscroll-behavior-x:contain;min-width:0;padding:0;position:relative;overflow-x:auto}.journal-workspace>.journal-table-scroll{width:min(100%, calc(var(--journal-table-width) + 20px));background:var(--panel-surface-solid);scrollbar-gutter:stable;max-height:max(320px,min(680px,100dvh - 220px));overflow:auto}.journal-grid{border-collapse:collapse;width:100%;min-width:760px}.journal-table{border-collapse:separate;border-spacing:0;width:max-content;min-width:max(100%,760px)}.journal-workspace .journal-table{width:var(--journal-table-width);table-layout:fixed;min-width:0}.journal-table__number-column{width:42px}.journal-table__student-column{width:200px}.journal-table__lesson-column{width:88px}.journal-day-mark+.journal-day-mark{border-top:1px solid var(--line)}.journal-day-mark small{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:.68rem;line-height:1.2;display:block;overflow:hidden}.journal-table__summary-column{width:82px}.journal-grid th,.journal-grid td{text-align:center;vertical-align:middle;border-right:1px solid var(--line);border-bottom:1px solid var(--line);min-width:76px;padding:8px}.journal-table th,.journal-table td{box-sizing:border-box;text-align:center;vertical-align:middle;border-right:1px solid var(--line);border-bottom:1px solid var(--line);min-width:76px;padding:8px}.journal-workspace .journal-table th,.journal-workspace .journal-table td{min-width:0;padding:6px 4px;overflow:hidden}.journal-grid th:first-child,.journal-grid td:first-child{z-index:1;text-align:left;background:var(--panel-surface-solid);min-width:210px;position:sticky;left:0}.journal-table th:first-child,.journal-table td:first-child{z-index:3;text-align:center;background:var(--panel-surface-solid);background-clip:padding-box;width:48px;min-width:48px;max-width:48px;position:sticky;left:0}.journal-workspace .journal-table th:first-child,.journal-workspace .journal-table td:first-child{width:42px;min-width:42px;max-width:42px}.journal-table th:nth-child(2),.journal-table td:nth-child(2){z-index:2;text-align:left;background:var(--panel-surface-solid);width:220px;min-width:220px;max-width:220px;box-shadow:1px 0 0 var(--line), 10px 0 16px #3626160f;background-clip:padding-box;position:sticky;left:48px}.journal-workspace .journal-table th:nth-child(2),.journal-workspace .journal-table td:nth-child(2){width:200px;min-width:200px;max-width:200px;left:42px}.journal-grid th,.journal-table th{color:var(--muted);font-size:.82rem}.journal-workspace .journal-table thead th{z-index:4;background:var(--panel-surface-solid);position:sticky;top:0}.journal-table thead th:first-child,.journal-table thead th:nth-child(2){z-index:4}.journal-workspace .journal-table thead th:first-child{z-index:6}.journal-workspace .journal-table thead th:nth-child(2){z-index:5}.journal-table tbody th:nth-child(2){overflow-wrap:anywhere}.journal-workspace .journal-table tbody th:nth-child(2){overflow-wrap:break-word;line-height:1.25}.journal-workspace .journal-table tbody tr:hover>*,.journal-workspace .journal-table .journal-row--active>*,.journal-workspace .journal-table .journal-column--active{background:color-mix(in srgb, var(--panel-accent-soft) 65%, var(--panel-surface-solid))}.journal-workspace .journal-table tfoot>tr>*{border-top:2px solid var(--line);background:var(--panel-surface-solid);font-weight:700}.journal-workspace .journal-table tfoot th:nth-child(2){overflow-wrap:anywhere}.journal-workspace .journal-table .journal-cell--active{background:var(--panel-accent-soft);box-shadow:inset 0 0 0 2px var(--panel-accent)}.journal-workspace .journal-table tbody tr:hover>:first-child,.journal-workspace .journal-table tbody tr:hover>:nth-child(2),.journal-workspace .journal-table tbody tr.journal-row--active>:first-child,.journal-workspace .journal-table tbody tr.journal-row--active>:nth-child(2){background:color-mix(in srgb, var(--panel-accent-soft) 65%, var(--panel-surface-solid))}.journal-grid th small,.journal-table th small{margin-top:3px;font-weight:500;display:block}.journal-workspace .journal-table th small{overflow-wrap:anywhere;-webkit-line-clamp:2;-webkit-box-orient:vertical;line-height:1.15;display:-webkit-box;overflow:hidden}.journal-table th em{color:var(--danger);font-size:.75rem;font-style:normal;display:block}.journal-cell-button{text-overflow:ellipsis;white-space:nowrap;width:100%;min-width:0;min-height:38px;color:var(--panel-text);background:var(--panel-surface-solid);box-shadow:none;border:1px solid #0000;border-radius:8px;padding:5px 2px;font-size:.84rem;overflow:hidden}.journal-cell-button:hover:not(:disabled),.journal-cell-button:focus-visible:not(:disabled){border-color:var(--panel-accent);outline:2px solid var(--panel-accent);outline-offset:-2px}.journal-cell-button--online,.journal-cell--online .journal-cell-button{color:#fff;background:#2678c7}.journal-cell-empty{color:var(--muted)}.journal-cell-editor{flex-wrap:wrap;align-items:end;gap:12px;display:flex}.journal-cell-editor>div:first-child{flex:220px}.journal-cell-editor>label{flex:170px;max-width:min(100%,320px)}.journal-cell-editor__actions{gap:8px;margin-left:auto;display:flex}.journal-topics-list{gap:14px;display:grid}.journal-topic-form{grid-template-columns:120px minmax(150px,.7fr) minmax(220px,1.2fr) minmax(220px,1.2fr) auto;align-items:end;gap:12px;display:grid}.journal-topic-form header{gap:4px;display:grid}.journal-topic-form header span{color:var(--danger);font-size:.82rem}@media (max-width:780px){.journal-controls,.journal-cell-editor,.journal-topic-form{grid-template-columns:1fr;display:grid}.journal-cell-editor__actions{margin-left:0}}*{box-sizing:border-box}html{background:#fff8e9}body{color:var(--ink);margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}a{color:inherit}button,input,select,textarea{font:inherit}textarea{resize:none}.auto-resize-textarea{resize:none;min-height:2.65rem;overflow-y:hidden}button{cursor:pointer}button:disabled{cursor:wait;opacity:.65}h1,h2,p{margin-top:0}h1{letter-spacing:-.045em;margin-bottom:10px;font-size:clamp(2rem,6vw,3.2rem);line-height:1.03}h2{letter-spacing:-.025em}.login-shell,.app-shell{background:radial-gradient(circle at 8% 8%,#ffd3537a,#0000 27rem),radial-gradient(circle at 92% 15%,#e408141a,#0000 24rem),linear-gradient(150deg,#fffcf3,#fff4df);min-height:100vh}.login-shell{place-items:center;padding:24px;display:grid}.login-card{width:min(100%,460px);box-shadow:var(--shadow);background:#fffdfaf0;border:1px solid #ffffffd9;border-radius:28px;padding:clamp(28px,7vw,48px)}.login-card__illustration{border-radius:16px;width:100%;height:auto;margin-top:22px;display:block}.brand-mark{align-items:center;gap:14px;display:inline-flex}.brand-mark img{border-radius:18px;width:64px;height:64px;box-shadow:0 10px 28px #e408142e}.brand-mark>span{gap:2px;display:grid}.brand-mark strong{letter-spacing:-.035em;font-size:1.25rem}.brand-mark small{color:var(--muted);font-size:.75rem}.brand-mark--compact img{border-radius:13px;width:46px;height:46px}.brand-mark--compact strong{font-size:1.1rem}.brand-link{text-decoration:none}.eyebrow,.status-label{color:var(--brand-red);letter-spacing:.12em;text-transform:uppercase;margin:0 0 8px;font-size:.78rem;font-weight:800}.login-eyebrow{margin-top:30px}.muted,.feature-card p,.privacy-note,.field-help{color:var(--muted);line-height:1.55}.login-form,.settings-form,.password-reset-form{gap:10px;display:grid}.login-form{margin-top:32px}.login-form label,.settings-form label,.password-reset-form label{margin-top:8px;font-size:.92rem;font-weight:750}.password-reset-form label{gap:7px;display:grid}.login-form input,.settings-form input,.password-reset-form input{border:1px solid var(--line);width:100%;min-height:48px;color:var(--ink);background:#fff;border-radius:12px;padding:10px 14px}.confirmation-form input{text-align:center;letter-spacing:.35em;max-width:260px;margin-inline:auto;font-size:2rem;font-weight:800}.confirmation-form input[inputmode=text]{letter-spacing:.08em;font-size:1.1rem}.link-button{color:var(--brand-red);font:inherit;background:0 0;border:0;padding:8px 0;font-weight:750;text-decoration:underline}.link-button:disabled{color:var(--muted);cursor:not-allowed}.email-login-protection{border-top:1px solid var(--line);margin-top:28px;padding-top:20px}.email-login-protection__row{justify-content:space-between;align-items:center;gap:18px;display:flex}.email-login-protection__row p{margin:6px 0 0}.email-change-confirmation{border:1px solid var(--line);background:#fff7eba6;border-radius:14px;margin-top:12px;padding:16px}@media (max-width:560px){.email-login-protection__row{flex-direction:column;align-items:flex-start}}input:focus-visible,select:focus-visible,button:focus-visible,a:focus-visible{outline:3px solid var(--brand-yellow);outline-offset:3px}.login-form button,.settings-form button,.password-request-action button,.password-reset-form button,.secondary-button{border:1px solid var(--brand-red);min-height:46px;color:var(--on-brand-red);background:var(--brand-red);border-radius:12px;padding:0 20px;font-weight:780}.primary-button{border:1px solid var(--brand-red);min-height:40px;color:var(--on-brand-red);background:var(--brand-red);font:inherit;border-radius:12px;padding:0 16px;font-weight:780}.primary-button:hover:not(:disabled){border-color:var(--brand-red-dark);background:var(--brand-red-dark)}.work-log-card{gap:10px;padding:18px}.work-log-card h2{margin-bottom:2px;font-size:1.2rem}.work-log-card p{margin-bottom:0}.app-shell.admin-shifts-page .app-main>*{width:min(100%,960px);margin-inline:auto}.admin-shifts-page .request-card{grid-template-columns:minmax(0,1fr);gap:12px;padding:20px 22px}.admin-shifts-page .request-card>*{overflow-wrap:anywhere;min-width:0;margin-block:0}.admin-shifts-page .request-card>.primary-button{justify-self:start}.task-assignment-picker{border:0;gap:10px;margin:0;padding:0;display:grid}.task-assignment-picker legend{padding:0;font-weight:760}.task-assignment-picker>label{overflow-wrap:anywhere;cursor:pointer;align-items:center;gap:9px;min-width:0;margin:0;display:flex}.task-assignment-picker>label input[type=checkbox]{width:18px;min-width:18px;height:18px;min-height:18px;accent-color:var(--brand-red);flex:none;margin:0;padding:0}.segmented-control{flex-wrap:wrap;gap:6px;display:flex}.segmented-control button{border:1px solid var(--line);min-height:36px;color:var(--ink);font:inherit;background:#fff;border-radius:10px;padding:6px 11px;font-weight:700}.segmented-control button.is-active{border-color:var(--brand-red);color:var(--on-brand-red);background:var(--brand-red)}.task-assignment-picker select[multiple]{min-height:156px}.task-assignment-picker option{padding:8px}.app-shell .task-list{gap:12px}.filter-row{grid-template-columns:repeat(auto-fit,minmax(min(100%,210px),1fr));gap:10px;margin-block:12px;display:grid}.filter-row>select{min-width:0}.app-shell .task-card{grid-template-columns:minmax(0,1fr);gap:12px;padding:20px 22px;display:grid;overflow:hidden}.task-card__header{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.task-card__header .eyebrow,.task-card__header h2,.task-card__due,.task-card__meta,.task-card__description p,.task-card__actions p{margin:0}.task-card__header .eyebrow{margin-bottom:4px}.task-card__header h2{overflow-wrap:anywhere;font-size:clamp(1.05rem,2vw,1.28rem);line-height:1.2}.task-card__due{color:var(--panel-muted);background:var(--panel-canvas);white-space:nowrap;border-radius:999px;flex:none;padding:5px 9px;font-size:.78rem;font-weight:740}.task-card__description,.task-card__actions details{margin:0}.task-card__description summary,.task-card__actions summary{cursor:pointer;width:fit-content;color:var(--brand-red);font-size:.86rem;font-weight:760}.task-card__description summary{grid-template-columns:auto minmax(0,1fr);align-items:baseline;gap:8px;width:100%;display:grid}.task-card__description-preview{color:var(--panel-muted);line-clamp:2;-webkit-line-clamp:2;-webkit-box-orient:vertical;font-weight:500;display:-webkit-box;overflow:hidden}.task-card__description[open] .task-card__description-preview{display:none}.task-card__description p{color:var(--panel-muted);overflow-wrap:anywhere;white-space:pre-wrap;margin-top:8px}.task-card__progress{gap:5px;display:grid}.task-card__progress progress{width:min(100%,300px);height:7px}.task-card__actions{flex-wrap:wrap;align-items:center;gap:10px 16px;display:flex}.task-card__actions>.primary-button{min-height:36px}.task-board{align-items:start}.task-board-column{align-content:start;gap:12px;min-width:0;display:grid}.task-board-column>h2{margin:0 0 2px;font-size:1.12rem}.task-board .task-card{gap:10px;padding:18px}.task-board .task-card__header{gap:8px;display:grid}.task-board .task-card__due{justify-self:start}@media (max-width:720px){.task-card__header{gap:8px;display:grid}.task-card__due{justify-self:start}}.work-log-editor{margin-top:4px}.work-log-editor summary{cursor:pointer;width:fit-content;color:var(--brand-red);font-weight:750}.compact-form{border:1px solid var(--line);background:#ffffffa6;border-radius:12px;gap:9px;max-width:560px;margin-top:12px;padding:14px;display:grid}.compact-form label{gap:5px;font-size:.88rem;font-weight:700;display:grid}.compact-form .task-assignment-picker>label{align-items:center;display:flex}.compact-form label.staff-group-manager__member{align-items:center;gap:9px;display:flex}.compact-form label.staff-group-manager__member input[type=checkbox]{width:18px;min-width:18px;height:18px;min-height:18px;accent-color:var(--brand-red);flex:none;margin:0;padding:0}.login-form button,.settings-form button{margin-top:14px}.login-form button:hover,.settings-form button:hover,.password-request-action button:hover,.password-reset-form button:hover{background:var(--brand-red-dark)}.secondary-button{min-height:40px;color:var(--brand-red);background:0 0;padding-inline:14px}.confirmation-form .secondary-button{color:var(--brand-red);font:inherit;background:0 0;padding:8px 14px;font-weight:750;line-height:1.35;text-decoration:none}.confirmation-form .secondary-button:hover:not(:disabled){background:var(--brand-red-soft)}.confirmation-form .secondary-button:disabled{border-color:var(--line);color:var(--muted);cursor:not-allowed;opacity:1;background:0 0}a.primary-button,a.secondary-button{text-align:center;justify-content:center;align-items:center;max-width:100%;text-decoration:none;display:inline-flex}.account-back-button{align-items:center;width:fit-content;margin-bottom:18px;text-decoration:none;display:inline-flex}.form-error,.form-message--error,.form-success,.form-warning{margin:6px 0 0;font-size:.92rem;font-weight:700}.form-error,.form-message--error{color:var(--danger)}.form-success{color:var(--success)}.form-warning{color:var(--warning)}.privacy-note,.field-help{margin:18px 0 0;font-size:.82rem}.field-help{margin:0}.app-shell{padding:clamp(18px,4vw,56px)}.app-header,.page-heading,.welcome-card,.dashboard-grid,.settings-grid,.request-list{width:min(100%,1120px);margin-inline:auto}.app-header{justify-content:space-between;align-items:center;gap:24px;display:flex}.app-nav{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;display:flex}.app-nav a{color:#574a48;border-radius:10px;padding:10px 12px;font-size:.92rem;font-weight:700;text-decoration:none}.app-nav a:hover{color:var(--brand-red);background:var(--brand-yellow-soft)}.page-heading{margin-top:clamp(44px,8vw,88px);margin-bottom:26px}.page-heading .muted{max-width:680px}.welcome-card{background:var(--surface);box-shadow:var(--shadow);border:1px solid #fffc;border-radius:26px;justify-content:space-between;align-items:center;gap:24px;margin-top:clamp(42px,7vw,76px);padding:clamp(24px,5vw,44px);display:flex}.welcome-person,.request-person{align-items:center;gap:18px;display:flex}.welcome-card h1{margin-bottom:8px;font-size:clamp(1.7rem,4vw,2.7rem)}.user-avatar{width:50px;height:50px;color:var(--on-brand-red);background:var(--brand-red);border-radius:15px;flex:none;place-items:center;font-size:1.2rem;font-weight:850;display:grid}.user-avatar--large{border-radius:21px;width:72px;height:72px;font-size:1.8rem}.status-badge,.request-status{color:#7a5100;background:var(--brand-yellow);border-radius:999px;flex:none;padding:10px 14px;font-size:.88rem;font-weight:800}.dashboard-grid{grid-template-columns:repeat(3,1fr);gap:18px;margin-top:20px;display:grid}.dashboard-updates{border:1px solid var(--line);background:var(--surface);border-radius:18px;margin-top:24px;padding:22px}.dashboard-updates h2{margin:4px 0 0}.dashboard-updates ol{gap:14px;margin:18px 0 0;padding:0;list-style:none;display:grid}.dashboard-updates ol>li{border-left:3px solid var(--brand-red);background:color-mix(in srgb, var(--brand-red) 4%, var(--surface));gap:6px;padding:14px;display:grid}.dashboard-updates time{color:var(--muted);font-size:.84rem}.dashboard-updates ul{color:var(--muted);margin:0;padding-left:18px}.dashboard-resources{border:1px solid var(--line);background:var(--surface);border-radius:18px;width:min(100%,1120px);margin:24px auto 0;padding:22px}.dashboard-resources__heading{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.dashboard-resources__heading h2{margin:4px 0 0}.dashboard-resources__heading .muted{margin:6px 0 0}.dashboard-resources__heading>svg{color:var(--brand-red);flex:none}.resource-status-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:18px;display:grid}.resource-status-grid article{border:1px solid var(--line);background:color-mix(in srgb, var(--brand-red) 4%, var(--surface));border-radius:14px;gap:5px;min-width:0;padding:16px;display:grid}.resource-status-grid article>svg{color:var(--brand-red)}.resource-status-grid h3,.resource-status-grid p{margin:0}.resource-status-grid h3{font-size:.92rem}.resource-status-grid strong{margin-top:4px;font-size:1.5rem}.resource-status-grid p,.dashboard-resources__caption{color:var(--muted);font-size:.84rem}.dashboard-resources__caption{margin:16px 0 0}.feature-card,.settings-card,.request-card,.empty-state{background:#fffdfae0;border:1px solid #ffffffd1;border-radius:22px;box-shadow:0 12px 36px #672e1f12}.feature-card{min-height:250px;padding:28px}.feature-card--accent{background:linear-gradient(145deg,#fff7db,#fffdf8)}.feature-card>span{color:var(--brand-red);margin-bottom:44px;font-weight:850;display:block}.feature-card h2{margin-bottom:8px}.card-link{color:var(--brand-red);text-underline-offset:4px;font-size:.92rem;font-weight:800}.settings-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;display:grid}.settings-card{min-width:0;padding:clamp(24px,4vw,36px)}.settings-form{grid-template-columns:minmax(0,1fr);margin-top:24px}.public-site-editor{gap:24px;display:grid}.public-site-editor>.field-help{margin:0}.public-site-section-heading{justify-content:space-between;align-items:center;gap:18px;display:flex}.public-site-section-heading h2,.public-site-section-heading p{margin:0}.public-site-section-heading p{color:var(--muted);margin-top:4px;font-size:.9rem}.public-site-settings{margin-top:0}.public-site-settings>.public-site-section-heading>button,.public-service-form>button{white-space:nowrap;margin-top:0}.public-site-settings__fields,.public-service-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 16px;display:grid}.public-site-settings__fields label,.public-service-fields label{gap:6px;margin-top:0;display:grid}.public-site-settings__wide,.public-service-fields__description,.public-service-fields__title{grid-column:1/-1}.public-site-settings textarea,.public-service-fields textarea{resize:vertical;min-height:88px}.public-service-section{gap:14px;display:grid}.public-service-list{gap:10px;display:grid}.public-service-card{border:1px solid var(--line);background:var(--surface-strong);border-radius:14px}.public-service-card>summary{cursor:pointer;grid-template-columns:minmax(0,1fr) minmax(150px,auto) auto;align-items:center;gap:16px;padding:13px 16px;list-style:none;display:grid}.public-service-card>summary::-webkit-details-marker{display:none}.public-service-card>summary>span:first-child{gap:2px;min-width:0;display:grid}.public-service-card strong,.public-service-card small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.public-service-card small,.public-service-card__price{color:var(--muted);font-size:.86rem}.public-service-card__price{text-align:right}.public-service-card__status{color:var(--success);background:color-mix(in srgb, var(--success) 12%, transparent);white-space:nowrap;border-radius:999px;padding:4px 8px;font-size:.78rem;font-weight:800}.public-service-card__status--draft{color:var(--muted);background:color-mix(in srgb, var(--muted) 12%, transparent)}.public-service-card[open]>summary{border-bottom:1px solid var(--line)}.public-service-form{margin:0;padding:16px}.public-service-form>button{justify-self:start;max-width:100%}.public-service-fields .public-service-fields__publish{align-self:end;min-height:48px;display:inline-flex}@media (max-width:700px){.public-site-section-heading,.public-service-card>summary{align-items:stretch}.public-site-section-heading,.public-service-card>summary,.public-site-settings__fields,.public-service-fields{grid-template-columns:1fr}.public-site-section-heading{display:grid}.public-site-settings__wide,.public-service-fields__description,.public-service-fields__title{grid-column:auto}.public-service-card__price{text-align:left}}.identity-list{margin:22px 0}.identity-list div{border-block:1px solid var(--line);justify-content:space-between;align-items:baseline;gap:16px;padding:14px 0;display:flex}.identity-list dt{color:var(--muted);font-size:.9rem}.identity-list dd{margin:0;font-weight:800}.request-status{border-radius:12px;margin-bottom:18px;line-height:1.4;display:inline-block}.password-request-action{justify-items:start;gap:8px;display:grid}.request-list{gap:18px;display:grid}.request-card{grid-template-columns:minmax(0,1fr) minmax(280px,380px);gap:32px;padding:clamp(22px,4vw,34px);display:grid}.request-person{align-items:flex-start}.request-person h2{margin-bottom:4px}.request-time{margin-bottom:0;font-size:.88rem;font-weight:700}.request-actions{gap:12px;display:grid}.text-button{text-underline-offset:3px;background:0 0;border:0;justify-self:start;padding:4px 0;font-size:.88rem;font-weight:750;text-decoration:underline}.text-button--danger{color:var(--danger)}.empty-state{text-align:center;padding:clamp(28px,5vw,54px)}.task-empty-state{margin:12px 0;padding:16px}.empty-state p{margin-bottom:0}.notification-link{align-items:center;gap:6px;display:inline-flex}.notification-count{min-width:21px;height:21px;color:var(--on-brand-red);background:var(--brand-red);border-radius:999px;place-items:center;padding-inline:5px;font-size:.72rem;line-height:1;display:grid}.page-heading--actions{justify-content:space-between;align-items:flex-end;gap:24px;display:flex}.notification-list,.user-list{gap:16px;display:grid}.app-shell.notifications-page .page-heading,.notifications-page .notification-list{width:min(100%,960px);margin-inline:auto}.notification-card{border:1px solid var(--line);background:#ffffffc2;border-radius:18px;justify-content:space-between;align-items:flex-start;gap:24px;padding:24px;display:flex}.notification-actions{align-content:start;gap:8px;min-width:0;display:grid}.notification-actions>button{justify-self:start}.notification-actions>.form-error[role=alert]{color:var(--danger);overflow-wrap:anywhere;margin:0}.notification-card--unread{border-left:5px solid var(--brand-red);background:var(--surface-strong);box-shadow:0 10px 30px #672e1f14}.notification-card h2{margin-bottom:6px;font-size:1.15rem}.notification-card p:not(.notification-meta){color:var(--muted);margin-bottom:12px;line-height:1.5}.notification-meta{color:var(--muted);margin-bottom:6px;font-size:.78rem;font-weight:700}.section-card{width:min(100%,1120px);margin:0 auto 20px}.admin-form,.user-edit-form,.person-form,.availability-form{gap:16px;display:grid}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.form-grid label,.person-form label{color:#4e4240;gap:7px;font-size:.9rem;font-weight:750;display:grid}.form-grid input:not([type=checkbox]):not([type=radio]),.form-grid select,.person-form input:not([type=checkbox]):not([type=radio]),.availability-row input[type=time]{border:1px solid var(--line);width:100%;min-height:46px;color:var(--ink);background:#fff;border-radius:11px;padding:9px 12px}.form-grid__wide{grid-column:1/-1}.form-grid__date-field{max-width:270px}.admin-form>button,.user-edit-form>button,.person-form>button,.availability-form>button,.reminder-action>button{border:1px solid var(--brand-red);min-height:46px;color:var(--on-brand-red);background:var(--brand-red);border-radius:12px;justify-self:start;padding:0 20px;font-weight:780}.user-list,.people-grid{width:min(100%,1120px);margin-inline:auto}.user-edit-form__heading{justify-content:space-between;align-items:flex-start;gap:18px;display:flex}.user-edit-form__heading h2,.user-edit-form__heading p{margin-bottom:4px}.switch-label,.availability-toggle{flex-wrap:nowrap;align-items:center;gap:8px;font-size:.9rem;font-weight:750;display:inline-flex}.form-grid .switch-label:not(.switch-label--icon),.person-form .switch-label:not(.switch-label--icon),.schedule-editor .availability-override{flex-wrap:nowrap;grid-template-columns:none;align-items:center;gap:8px;display:inline-flex}.switch-label:not(.switch-label--icon) input,.availability-toggle input{flex:none;margin:0}.switch-label:not(.switch-label--icon) span,.availability-toggle span{white-space:nowrap}.switch-label.permission-toggle{align-items:flex-start;min-width:0}.switch-label.permission-toggle>span{white-space:normal;overflow-wrap:anywhere;gap:4px;min-width:0;display:grid}.permissions-workspace{width:100%;max-width:1100px;margin-inline:auto}.permissions-workspace>label{gap:7px;max-width:360px;display:grid}.permissions-list{grid-template-columns:repeat(2,minmax(0,1fr))}@media (max-width:1000px){.permissions-list{grid-template-columns:minmax(0,1fr)}}.switch-label input,.availability-toggle input{width:18px;height:18px;accent-color:var(--brand-red)}.user-card--inactive{opacity:.72}.user-card--inactive:has(.form-warning,.form-error){opacity:1}.people-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.person-kind{color:var(--brand-red);letter-spacing:.08em;text-transform:uppercase;font-size:.74rem;font-weight:850;display:inline-block}.birthday-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;width:min(100%,1120px);margin-inline:auto;display:grid}.birthday-grid .empty-state{grid-column:1/-1}.birthday-card{background:#fffdfae6;border:1px solid #ffffffd1;border-radius:20px;align-items:center;gap:20px;padding:24px;display:flex;box-shadow:0 12px 36px #672e1f12}.birthday-date{color:#754c00;background:var(--brand-yellow);text-align:center;border-radius:20px;flex:none;place-content:center;width:72px;height:72px;display:grid}.birthday-date strong{font-size:1.7rem;line-height:1}.birthday-date span{text-transform:lowercase;margin-top:4px;font-size:.72rem}.birthday-card h2{margin:4px 0}.birthday-card p{color:var(--muted);margin-bottom:0}.week-grid{grid-template-columns:repeat(7,minmax(160px,1fr));gap:10px;width:min(100%,1400px);margin:0 auto 24px;padding-bottom:8px;display:grid;overflow-x:auto}.day-column{border:1px solid var(--line);background:#ffffffbd;border-radius:16px;min-height:280px;padding:14px}.day-column h2{text-transform:capitalize;margin-bottom:14px;font-size:.95rem}.day-empty{color:var(--muted);font-size:.82rem}.lesson-card{border-left:4px solid var(--brand-red);background:var(--brand-yellow-soft);border-radius:11px;gap:4px;margin-bottom:10px;padding:12px;display:grid}.lesson-card span{font-weight:750}.lesson-card small{color:var(--muted);line-height:1.35}.lesson-status{margin-top:3px;font-weight:750}.schedule-availability{margin-top:28px}.availability-days{gap:8px;display:grid}.availability-row{border-bottom:1px solid var(--line);grid-template-columns:minmax(0,1fr) minmax(0,130px) minmax(0,130px);align-items:center;gap:12px;padding:10px 0;display:grid}.availability-row>label:not(.availability-toggle){min-width:0;color:var(--muted);grid-template-columns:22px minmax(0,1fr);align-items:center;gap:5px;font-size:.8rem;display:grid}.reminder-action{justify-items:end;gap:7px;max-width:390px;display:grid}.reminder-action p{text-align:right;margin-bottom:0}@media (max-width:820px){.app-header{align-items:flex-start}.app-nav{flex-wrap:wrap}.dashboard-grid,.settings-grid{grid-template-columns:minmax(0,1fr)}.request-card,.people-grid,.birthday-grid{grid-template-columns:1fr}.page-heading--actions{flex-direction:column;align-items:flex-start}.reminder-action{justify-items:start}.reminder-action p{text-align:left}}@media (max-width:600px){.app-header,.welcome-card{flex-direction:column;align-items:flex-start}.app-nav{justify-content:flex-start;width:100%}.app-nav a{padding-inline:6px}.welcome-person,.request-person{align-items:flex-start}.user-avatar--large{border-radius:16px;width:54px;height:54px;font-size:1.35rem}.feature-card{min-height:0}.feature-card>span{margin-bottom:24px}.resource-status-grid,.form-grid{grid-template-columns:1fr}.form-grid__wide{grid-column:auto}.availability-row{grid-template-columns:1fr 1fr}.availability-toggle{grid-column:1/-1}.notification-card,.user-edit-form__heading{flex-direction:column;align-items:flex-start}}.app-shell{min-height:100vh;padding:clamp(24px,3vw,52px) clamp(18px,3vw,48px) clamp(40px,5vw,72px) calc(252px + clamp(18px,3vw,48px))}.app-sidebar{z-index:20;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#fffcf7f0;border:1px solid #e8d8c4e6;border-radius:24px;flex-direction:column;width:236px;padding:22px 16px 16px;display:flex;position:fixed;inset:16px auto 16px 16px;box-shadow:0 22px 60px #5b36181a}.sidebar-user{background:var(--brand-yellow-soft);border-radius:16px;align-items:center;gap:10px;margin:24px 0 20px;padding:12px;display:flex}.sidebar-details{flex-direction:column;flex:1;min-height:0;display:flex}.sidebar-details>summary{cursor:pointer;color:var(--brand-red);font-weight:850;display:none}.sidebar-user>span:last-child{gap:2px;min-width:0;display:grid}.sidebar-user strong,.sidebar-user small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.sidebar-user small{color:var(--muted);font-size:.7rem}.sidebar-avatar{height:36px;color:var(--on-brand-red);background:var(--brand-red);border-radius:12px;flex:0 0 36px;place-items:center;font-weight:850;display:grid;position:relative}.avatar-image{border-radius:inherit;object-fit:cover;visibility:hidden;width:100%;height:100%;position:absolute;inset:0}.avatar-image--loaded{visibility:visible}.app-sidebar .app-nav{place-content:start stretch;gap:4px;display:grid}.app-sidebar .app-nav a{justify-content:space-between;padding:10px 12px;display:flex}.nav-group-title{color:#a68d81;letter-spacing:.1em;text-transform:uppercase;margin:16px 12px 3px;font-size:.68rem;font-weight:850}.nav-group-title:first-child{margin-top:0}.sidebar-logout{margin-top:auto;padding-top:18px}.sidebar-logout button{width:100%}.impersonation-banner{color:#754c00;background:var(--brand-yellow-soft);border:1px solid #efb9008c;border-radius:14px;gap:6px;margin-top:14px;padding:12px;font-size:.75rem;display:grid}.impersonation-banner strong{font-size:.8rem}.impersonation-banner button{color:#754c00;background:0 0;border:1px solid #754c00;border-radius:9px;width:100%;min-height:34px;margin-top:3px;font-size:.75rem;font-weight:850}.impersonate-action{justify-items:start;gap:8px;display:grid}.impersonate-action .field-help{max-width:640px;margin:0}.page-heading,.welcome-card,.dashboard-grid,.settings-grid,.request-list,.section-card,.user-list,.people-grid,.directory-create-grid,.schedule-workspace{width:min(100%,1440px);margin-inline:auto}.historical-editor-notice{background:#fff4e2c7;border-color:#be621673}.historical-editor-notice h2{margin:4px 0 8px;font-size:1.05rem}.historical-editor-notice__active{color:#8a3f00;font-weight:700}.historical-confirmation{z-index:100;background:#11182785;place-items:center;padding:18px;display:grid;position:fixed;inset:0}.historical-confirmation__card{background:var(--surface);border-radius:16px;width:min(100%,620px);max-height:calc(100vh - 36px);padding:22px;overflow:auto;box-shadow:0 20px 70px #00000059}.historical-confirmation__card h2{margin:4px 0 10px}.historical-confirmation__card>label{gap:6px;font-weight:750;display:grid}.historical-confirmation__card textarea{resize:vertical;min-height:88px}.historical-confirmation__changes{gap:8px;margin:16px 0;display:grid}.historical-confirmation__changes div{background:var(--surface-strong);border-radius:9px;padding:9px 10px}.historical-confirmation__changes dt{color:var(--muted);font-size:.8rem;font-weight:750}.historical-confirmation__changes dd{margin:3px 0 0;font-weight:700}.historical-confirmation__warning{background:color-mix(in srgb, #c76b15 12%, var(--surface));color:var(--ink);border-left:3px solid #c76b15;padding:9px 10px}.audit-historical-details{border-left:3px solid var(--brand-red);background:#fff5f5b8;margin:10px 0;padding:8px 12px}.audit-historical-details p{margin:5px 0}.page-heading{margin-top:26px}.page-heading--compact{margin-top:36px;margin-bottom:16px}.page-heading--compact h2{font-size:clamp(1.4rem,3vw,2rem)}.account-list,.directory-create-grid{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:16px;display:grid}.account-card{overflow-wrap:anywhere;min-width:0;color:inherit;text-decoration:none;transition:border-color .15s,transform .15s}.app-shell>.section-card.account-create-card{width:min(100%,880px);margin-inline:auto}.account-card:hover{border-color:var(--brand-red);transform:translateY(-2px)}.account-card p{margin-bottom:10px}.account-section{width:min(100%,1440px);margin:28px auto 0}.account-section>h2{margin:0}.account-section>.muted{margin:6px 0 14px}.danger-zone{border-color:#db262a47}.schedule-workspace{grid-template-columns:minmax(820px,1fr) minmax(620px,720px);align-items:start;gap:20px;width:min(100%,1800px);display:grid}.calendar-panel{min-width:0}.schedule-display{border:1px solid var(--line);background:#ffffffb8;border-radius:14px;margin-bottom:14px;padding:14px 16px}.schedule-display__heading{justify-content:space-between;align-items:start;gap:16px;display:flex}.schedule-display__heading h2{margin:3px 0 0;font-size:1rem}.schedule-display__hint{max-width:340px;color:var(--muted);text-align:right;font-size:.82rem}.schedule-display__modes{flex-wrap:wrap;gap:8px;margin-top:12px;display:flex}.schedule-display__mode{border:1px solid var(--line);min-height:40px;color:var(--ink);font:inherit;text-align:center;cursor:pointer;background:0 0;border-radius:9px;justify-content:center;align-items:center;padding:8px 11px;font-size:.84rem;font-weight:750;line-height:1.2;display:inline-flex}.schedule-display__mode--active{border-color:var(--brand-red);background:var(--brand-red);color:var(--on-brand-red)}.schedule-display__content{gap:10px;margin-top:12px;display:grid}.schedule-display__content label{color:var(--muted);gap:5px;font-size:.8rem;font-weight:750;display:grid}.schedule-display__content input{border:1px solid var(--line);background:var(--surface);min-height:38px;color:var(--ink);font:inherit;border-radius:8px;padding:8px 10px}.schedule-display__pedagogue-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px 14px;max-height:132px;padding:2px;display:grid;overflow-y:auto}.schedule-display__pedagogue-list .schedule-display__pedagogue{color:var(--ink);align-items:center;gap:7px;font-size:.82rem;font-weight:650;display:flex}.schedule-display__pedagogue input{min-height:auto;margin:0}.week-navigation{border:1px solid var(--line);background:#ffffffb8;border-radius:14px;justify-content:space-between;align-items:center;gap:16px;margin-bottom:14px;padding:12px 16px;display:flex}.schedule-view-switcher{flex-wrap:wrap;align-items:center;gap:8px;margin:0 0 14px;display:flex}.schedule-view-switcher select{border:1px solid var(--line);background:var(--surface);min-height:38px;color:var(--ink);font:inherit;border-radius:9px;padding:6px 9px}.schedule-view-switcher__date{color:var(--muted);align-items:center;gap:6px;font-size:.82rem;font-weight:750;display:flex}.schedule-compact-view{gap:14px;display:grid}.schedule-compact-view--two-days{grid-template-columns:repeat(2,minmax(0,1fr))}.schedule-compact-view--list{grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.schedule-compact-day{border:1px solid var(--line);background:var(--surface-strong);border-radius:14px;padding:14px}.schedule-compact-day h2{margin:0 0 12px;font-size:1.05rem}.schedule-compact-day h3{color:var(--muted);margin:14px 0 7px;font-size:.82rem}.schedule-compact-lesson{border:1px solid var(--line);background:var(--surface);width:100%;color:var(--ink);font:inherit;text-align:left;cursor:pointer;border-radius:10px;gap:2px;margin-top:7px;padding:10px;line-height:1.35;display:grid}.schedule-compact-lesson time{color:var(--brand-red);font-weight:800}.schedule-compact-lesson span,.schedule-compact-lesson small{color:var(--muted)}.schedule-compact-lesson--non-working{border-color:var(--brand-red);box-shadow:inset 3px 0 0 var(--brand-red)}.schedule-compact-lesson--deleted{cursor:default;opacity:.65}.schedule-compact-lesson em{color:var(--brand-red);font-size:.76rem;font-style:normal;font-weight:780}.week-navigation a{border:1px solid var(--brand-red);min-height:40px;color:var(--brand-red);border-radius:10px;justify-content:center;align-items:center;padding:0 14px;font-weight:800;line-height:1.2;text-decoration:none;display:inline-flex}.week-navigation a:hover{background:var(--panel-accent-soft)}.schedule-deleted-toggle{border:1px solid var(--line);min-height:36px;color:var(--muted);text-align:center;border-radius:10px;justify-content:center;align-items:center;margin:-4px 0 12px;padding:0 12px;font-size:.78rem;font-weight:750;line-height:1.2;text-decoration:none;display:inline-flex}.schedule-deleted-toggle:hover{border-color:var(--brand-red);color:var(--brand-red);background:var(--panel-accent-soft)}.week-grid{grid-template-columns:repeat(7,minmax(100px,1fr));width:100%;margin-bottom:0}.calendar-week{padding-bottom:4px;overflow-x:auto}.schedule-mobile-days,.journal-mobile-list{display:none}.week-grid--timeline{border:1px solid var(--line);background:#ffffffbd;border-radius:14px;grid-template-columns:46px repeat(7,minmax(76px,1fr));gap:0;min-width:578px;display:grid;overflow:visible}.time-column{border-right:1px solid var(--line)}.time-column__header,.day-column__header{border-bottom:1px solid var(--line);height:54px;padding:10px}.time-column__hours{grid-template-rows:repeat(14,60px);display:grid}.time-column__hours span{color:var(--muted);text-align:right;padding-right:8px;font-size:.68rem;position:relative;top:-8px}.day-column--timeline{border:0;border-right:1px solid var(--line);background:0 0;min-height:0;padding:0}.day-column--timeline:last-child{border-right:0}.day-column__header{overflow:hidden}.day-column__header h2{margin:0}.day-column__header .birthday-marker{margin-top:7px;margin-bottom:0;padding:5px}.day-column__header .birthday-marker small{display:none}.day-timeline{background:repeating-linear-gradient(to bottom, transparent 0, transparent 59px, var(--line) 59px, var(--line) 60px);height:840px;position:relative}.availability-block{z-index:0;pointer-events:none;background:#56cd893b;border:1px solid #14854e59;border-left:3px solid #168a53;border-radius:6px;min-height:4px;display:block;position:absolute;left:4px;right:4px}.timeline-hour{height:60px;display:block}.day-timeline .lesson-card--button{z-index:1;background:var(--brand-yellow-soft);border-top:1px solid #db262a40;border-bottom:1px solid #db262a40;border-right:1px solid #db262a40;border-radius:7px;width:calc(100% - 8px);margin:0;padding:5px 7px;font-size:.72rem;position:absolute;left:4px;overflow:hidden}.day-timeline .lesson-card--button strong,.day-timeline .lesson-card--button small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.day-timeline .lesson-card--button small{margin-top:2px}.day-column{min-height:420px;padding:9px}.lesson-card--button{border:0;border-left:4px solid var(--brand-red);width:100%;color:inherit;font:inherit;text-align:left;cursor:pointer;line-height:1.35}.lesson-card--button:hover,.lesson-card--button:focus-visible{outline-offset:2px;outline:2px solid #db262a47}.lesson-card--button:disabled{cursor:default}.lesson-card--deleted{background:color-mix(in srgb, var(--surface) 78%, #777);opacity:.58;border-left-color:#6d6462}.status-cancelled{opacity:.66;border-left-color:#8d817e}.status-confirmed{border-left-color:var(--success)}.status-pending_review{border-left-color:#d88a00}.birthday-marker{background:#fff8cd;border:1px solid #efb90073;border-radius:11px;gap:7px;margin-bottom:9px;padding:9px;font-size:.78rem;font-weight:800;display:flex}.birthday-marker span:last-child{gap:2px;display:grid}.birthday-marker small{color:var(--muted);font-size:.67rem;font-weight:650}.schedule-tools{gap:16px;display:grid;position:sticky;top:20px}.schedule-editor{padding:20px}.schedule-lesson-details{gap:12px;margin:16px 0;display:grid}.invoice-navigation{border:0;width:100%;min-width:0;margin:0;padding:0;display:block}.schedule-lesson-details dt{color:var(--muted);font-size:.82rem}.schedule-lesson-details dd{overflow-wrap:anywhere;white-space:pre-wrap;margin:2px 0 0;font-weight:600}.editor-heading{justify-content:space-between;align-items:start;gap:12px;margin-bottom:18px;display:flex}.editor-heading h2{margin-bottom:0;font-size:1.45rem}.schedule-editor .form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;min-width:0}.schedule-editor .person-form{grid-template-columns:minmax(0,1fr)}.schedule-time-row{grid-template-columns:minmax(0,1.2fr) repeat(2,minmax(0,1fr));gap:12px;display:grid}.schedule-editor .form-grid>*,.schedule-time-row>label,.schedule-time-row input{min-width:0}.group-directory{gap:18px;display:grid}.groups-workspace{gap:16px;width:min(100%,1440px);display:grid}.groups-workspace__toolbar{justify-content:space-between;align-items:end;gap:12px;display:flex}.groups-workspace__toolbar .directory-search{width:min(100%,460px)}.groups-workspace__grid{grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:10px;display:grid}.groups-workspace__card{border:1px solid var(--line);background:var(--surface);min-height:92px;color:var(--panel-text);text-align:left;box-shadow:none;border-radius:14px;gap:4px;padding:13px 15px;display:grid}.groups-workspace__card:hover:not(:disabled),.groups-workspace__card--selected{border-color:var(--brand-red);background:var(--surface-strong);box-shadow:none}.groups-workspace__card strong{text-overflow:ellipsis;white-space:nowrap;font-size:1rem;overflow:hidden}.groups-workspace__card span,.groups-workspace__card small{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:.86rem;overflow:hidden}.groups-workspace__details,.groups-workspace__create{gap:18px;display:grid}.app-shell .groups-workspace__create{width:min(100%,880px);margin-inline:auto}.groups-workspace__detail-heading{justify-content:space-between;align-items:start;gap:14px;display:flex}.groups-workspace__detail-heading h2,.groups-workspace__detail-heading p{margin:0}.groups-workspace__detail-grid{grid-template-columns:minmax(0,1.35fr) minmax(280px,.65fr);gap:24px;display:grid}.groups-workspace__detail-grid>section{align-content:start;gap:12px;display:grid}.groups-workspace__detail-grid h3{margin:0;font-size:1.05rem}.groups-workspace__read-only{gap:5px;margin:0;display:grid}.groups-workspace__read-only dt{color:var(--muted);margin-top:8px;font-size:.85rem}.groups-workspace__read-only dd{margin:0}@media (max-width:860px){.groups-workspace__detail-grid{grid-template-columns:1fr}}@media (max-width:620px){.groups-workspace__toolbar,.groups-workspace__detail-heading{flex-direction:column;align-items:stretch}.groups-workspace__toolbar .directory-search{width:100%}.groups-workspace__grid{grid-template-columns:1fr}}.group-directory #group-directory-items{gap:18px;display:grid}.group-card{gap:18px;font-size:1rem;display:grid}.group-card[hidden]{display:none}.group-card__heading{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.group-card__heading h2,.group-card h3{margin:0}.group-card__heading h2{font-size:1.3rem}.group-card h3{font-size:1.08rem}.group-card__details{gap:5px;display:grid}.group-card__details p{margin:0}.compact-list,.group-break-list{gap:8px;margin:8px 0 0;padding:0;list-style:none;display:grid}.compact-list li{font-size:.95rem}.group-breaks{background:var(--surface-strong);gap:12px;padding:14px;display:grid}.group-breaks h2{margin:0;font-size:1.08rem}.group-breaks .muted{margin:0;font-size:.95rem}.group-break-list li{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:12px;padding-bottom:8px;display:flex}.group-break-list li>span{gap:2px;display:grid}.group-break-list small{color:var(--muted)}.group-break-form{grid-template-columns:repeat(auto-fit,minmax(min(100%,150px),1fr));align-items:end;gap:8px;display:grid}.official-calendar-import{border-bottom:1px solid var(--line);flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:16px;padding-bottom:16px;display:flex}.official-calendar-import>div{flex:280px;gap:5px;min-width:0;display:grid}.official-calendar-import small{color:var(--muted);line-height:1.4}.official-calendar-import>button{flex:none}.group-break-form label{gap:5px;font-size:.9rem;font-weight:750;display:grid}.group-backfill-feedback{scroll-margin-block:80px 16px}.danger-text{color:var(--brand-red)}.lesson-card--non-working{border-color:var(--brand-red);box-shadow:inset 3px 0 0 var(--brand-red)}.lesson-card__warning{color:var(--brand-red);margin-top:3px;font-size:.62rem;font-weight:800;display:block}@media (max-width:760px){.group-card__heading,.group-break-list li{flex-direction:column;align-items:stretch}.group-break-form{grid-template-columns:1fr}}.app-shell{--panel-canvas:#f7f7f8;--panel-surface:#ffffffeb;--panel-surface-solid:#fff;--panel-border:#e5e7eb;--panel-text:#1e2530;--panel-muted:#697386;--panel-accent:var(--brand-red);--panel-accent-soft:#fff0f1;--panel-shadow:0 18px 46px #1f293714;background:radial-gradient(circle at 96% -8%, #e4081412, transparent 30rem), radial-gradient(circle at 15% 110%, #fbbf241a, transparent 34rem), var(--panel-canvas);color:var(--panel-text)}.app-shell .page-heading,.app-shell .welcome-card,.app-shell .dashboard-grid,.app-shell .settings-grid,.app-shell .request-list,.app-shell .section-card,.app-shell .user-list,.app-shell .people-grid,.app-shell .directory-create-grid,.app-shell .schedule-workspace{width:min(100%,1480px)}.app-shell .page-heading{margin-top:clamp(20px,4vw,44px);margin-bottom:30px}.app-shell .page-heading h1{letter-spacing:-.055em;max-width:920px;font-size:clamp(2rem,3.8vw,3.5rem);font-weight:760}.app-shell .eyebrow,.app-shell .status-label{color:var(--panel-accent);letter-spacing:.14em;font-size:.72rem}.app-shell .muted,.app-shell .field-help,.app-shell .feature-card p{color:var(--panel-muted)}.app-shell .welcome-card,.app-shell .feature-card,.app-shell .settings-card,.app-shell .request-card,.app-shell .empty-state,.app-shell .section-card{border:1px solid var(--panel-border);background:var(--panel-surface);box-shadow:var(--panel-shadow)}.app-shell .welcome-card{border-radius:28px;min-height:150px;margin-top:clamp(28px,4vw,50px)}.app-shell .dashboard-grid{grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:16px}.app-shell .feature-card{border-radius:22px;flex-direction:column;min-height:230px;padding:24px;transition:border-color .16s,box-shadow .16s,transform .16s;display:flex;position:relative;overflow:hidden}.app-shell .feature-card:hover{border-color:#e4081447;transform:translateY(-2px);box-shadow:0 20px 44px #1f293721}.app-shell .feature-card--accent{background:linear-gradient(145deg,#fff,#fff4f4);border-color:#e4081433}.app-shell .feature-card__icon{width:44px;height:44px;color:var(--panel-accent);background:var(--panel-accent-soft);border-radius:14px;place-items:center;margin:0 0 28px;display:grid}.app-shell .feature-card h2{letter-spacing:-.03em;margin-bottom:9px;font-size:1.27rem;font-weight:750}.app-shell .feature-card p{margin-bottom:22px;font-size:.92rem;line-height:1.55}.app-shell .card-link{width:fit-content;color:var(--panel-accent);text-underline-offset:4px;margin-top:auto;font-weight:760;text-decoration-thickness:1px;display:inline-flex}.app-shell .section-card,.app-shell .settings-card{border-radius:22px}.app-shell :is(input,select,textarea){background:var(--panel-surface-solid);border-color:#d9dde5}.app-shell :where(input[type=checkbox],input[type=radio]){width:18px;min-width:18px;height:18px;min-height:18px;accent-color:var(--panel-accent);flex:none;margin:0;padding:0}.app-shell :is(input:not([type]),input[type=date],input[type=datetime-local],input[type=email],input[type=month],input[type=number],input[type=password],input[type=search],input[type=tel],input[type=text],input[type=time],input[type=url],textarea){border:1px solid var(--panel-border);width:100%;min-height:46px;color:var(--panel-text);background:var(--panel-surface-solid);border-radius:14px;padding:10px 14px;font-weight:560;box-shadow:inset 0 1px #ffffff14}.app-shell :is(input[type=date],input[type=datetime-local],input[type=month],input[type=time]){--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}.app-shell textarea{min-height:92px;line-height:1.5}.app-shell :is(input,textarea)::placeholder{color:color-mix(in srgb, var(--panel-muted) 74%, transparent);opacity:1}.app-shell :is(input:not([type]),input[type=date],input[type=datetime-local],input[type=email],input[type=month],input[type=number],input[type=password],input[type=search],input[type=tel],input[type=text],input[type=time],input[type=url],textarea):hover:not(:disabled){border-color:color-mix(in srgb, var(--panel-accent) 36%, var(--panel-border));box-shadow:0 8px 20px #1f293712}.app-shell select{appearance:none;border:1px solid var(--panel-border);width:100%;min-height:46px;color:var(--panel-text);background-color:var(--panel-surface-solid);background-image:linear-gradient(45deg, transparent 50%, var(--panel-muted) 50%), linear-gradient(135deg, var(--panel-muted) 50%, transparent 50%);background-position:calc(100% - 20px) calc(50% - 2px),calc(100% - 14px) calc(50% - 2px);background-repeat:no-repeat;background-size:6px 6px;border-radius:14px;padding:10px 44px 10px 14px;font-weight:650;box-shadow:inset 0 1px #ffffff14}.app-shell select:hover:not(:disabled){border-color:color-mix(in srgb, var(--panel-accent) 36%, var(--panel-border));box-shadow:0 8px 20px #1f293712}.app-shell select:disabled{color:var(--panel-muted);background-color:color-mix(in srgb, var(--panel-surface-solid) 88%, var(--panel-border));cursor:not-allowed}.app-shell select option{color:var(--panel-text);background:var(--panel-surface-solid)}.app-shell .group-break-form>button{border:1px solid var(--panel-accent);min-height:46px;color:var(--on-brand-red);background:var(--panel-accent);border-radius:14px;padding:0 16px;font-weight:740;box-shadow:0 9px 18px #e4081433}.app-shell .group-break-form>button:hover:not(:disabled){background:var(--brand-red-dark);box-shadow:0 12px 22px #e4081447}.soft-select{width:100%;position:relative}.soft-select__trigger,.soft-select__option{border:1px solid var(--panel-border);width:100%;color:var(--panel-text);background:var(--panel-surface-solid);font:inherit;text-align:left}.soft-select__trigger{border-radius:14px;justify-content:space-between;align-items:center;gap:12px;min-height:46px;padding:10px 13px 10px 14px;font-weight:650;display:flex;box-shadow:inset 0 1px #ffffff14}.soft-select__trigger:hover:not(:disabled),.soft-select:focus-within .soft-select__trigger{border-color:color-mix(in srgb, var(--panel-accent) 45%, var(--panel-border));box-shadow:0 8px 20px #1f293714}.soft-select__trigger:disabled{color:var(--panel-muted);cursor:not-allowed}.soft-select__trigger svg{color:var(--panel-muted);flex:none;transition:transform .16s}.soft-select:focus-within .soft-select__trigger svg{transform:rotate(180deg)}.soft-select__menu{z-index:20;max-height:min(var(--soft-select-menu-height,320px), 50vh);border:1px solid var(--panel-border);background:color-mix(in srgb, var(--panel-surface-solid) 94%, transparent);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border-radius:16px;gap:4px;padding:6px;display:grid;position:absolute;top:calc(100% + 8px);left:0;right:0;overflow-y:auto;box-shadow:0 18px 42px #0f172a2e}.soft-select__menu--upward{top:auto;bottom:calc(100% + 8px)}.soft-select__option{border-color:#0000;border-radius:10px;justify-content:space-between;align-items:center;gap:12px;min-height:40px;padding:9px 10px;display:flex}.soft-select__option:hover,.soft-select__option:focus-visible{background:var(--panel-accent-soft)}.soft-select__option:focus-visible{outline:3px solid var(--brand-yellow);outline-offset:2px}.soft-select__option[aria-selected=true]{color:var(--panel-accent);background:var(--panel-accent-soft);font-weight:750}.app-shell :is(input,select,textarea):focus{border-color:#e40814a6;outline:none;box-shadow:0 0 0 4px #e408141a}.app-shell :is(button,input,select,textarea){transition:border-color .14s,box-shadow .14s,background .14s}.app-sidebar{-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#ffffffed;border:1px solid #e5e7ebf0;border-radius:22px;width:256px;padding:18px 14px 14px;inset:16px auto 16px 16px;box-shadow:0 18px 48px #0f172a1a}.panel-brand-link{padding:4px 8px}.russian-phone-input{align-items:stretch;display:flex}.russian-phone-input>span{border:1px solid var(--line);min-height:48px;color:var(--muted);background:var(--surface);border-right:0;border-radius:12px 0 0 12px;align-items:center;padding:0 13px;font-weight:760;display:inline-flex}.russian-phone-input>input{border-radius:0 12px 12px 0!important}.temporary-password{border:1px solid color-mix(in srgb, var(--brand-red) 35%, var(--line));color:var(--ink);background:color-mix(in srgb, var(--brand-yellow) 18%, var(--surface));border-radius:12px;gap:8px;padding:12px 14px;display:grid}.temporary-password p{margin:0}.temporary-password .secondary-button{justify-self:start}.profile-username-request{justify-content:center;width:100%;margin:16px 0 20px}.profile-password-title{margin:24px 0 12px;font-size:1.12rem}.panel-brand-row{justify-content:space-between;align-items:center;gap:8px;display:flex}.panel-brand-row .theme-toggle--compact{border-radius:11px;flex:none;width:38px;min-height:38px}.panel-brand-link .brand-mark--compact img{width:42px;height:42px;box-shadow:none;border-radius:12px}.sidebar-user{background:#fff9e9;border:1px solid #f0e7c9;border-radius:16px;margin:22px 4px 16px;padding:11px}.sidebar-avatar{border-radius:12px;flex-basis:38px;height:38px}.app-sidebar .app-nav{scrollbar-width:thin;gap:14px;overflow-y:auto}.panel-nav-group{gap:3px;display:grid}.nav-group-title{color:#98a1b2;letter-spacing:.12em;margin:0 9px 5px;font-size:.66rem}.app-sidebar .panel-nav-link,.app-sidebar .notification-link{color:#485366;border:1px solid #0000;border-radius:11px;justify-content:flex-start;align-items:center;gap:11px;min-height:42px;padding:9px 10px;font-size:.88rem;font-weight:680;text-decoration:none;display:flex}.app-sidebar .panel-nav-link>span,.app-sidebar .notification-link>span:not(.notification-count){text-align:right;margin-left:auto}.app-sidebar .panel-nav-link:hover,.app-sidebar .notification-link:hover{color:#1f2937;background:#f4f5f7}.app-sidebar .panel-nav-link--active,.app-sidebar .panel-nav-link--active:hover,.app-sidebar .notification-link[aria-current=page]{color:#be0711;background:#fff0f1;border-color:#e4081421}.app-sidebar .notification-link{justify-content:flex-start;position:relative}.app-sidebar .notification-count{color:var(--on-brand-red);background:var(--panel-accent);border-radius:999px;margin-left:auto;padding:2px 7px;font-size:.67rem;line-height:1.35}.panel-logout-button{border-color:var(--brand-red);color:var(--on-brand-red);background:var(--brand-red);justify-content:center;align-items:center;gap:8px;display:flex}.panel-logout-button:hover:not(:disabled){border-color:var(--brand-red-dark);color:var(--on-brand-red);background:var(--brand-red-dark)}html[data-theme=dark] .panel-logout-button{color:#fff;background:#b8050e;border-color:#b8050e}html[data-theme=dark] .panel-logout-button:hover:not(:disabled){color:#fff;background:#8f040b;border-color:#8f040b}.panel-menu-toggle,.panel-sidebar-close,.panel-sidebar-backdrop{display:none}.panel-menu-toggle[aria-expanded=true]{visibility:hidden}@media (min-width:901px) and (max-width:1440px){body.panel-sidebar-open{overflow:hidden}.app-shell--journal{padding:82px 18px 38px}.app-shell--journal .app-sidebar{width:min(300px,100vw - 32px);transition:transform .18s;inset:12px auto 12px 12px;transform:translate(calc(-100% - 28px))}.app-shell--journal .app-sidebar--open{transform:translate(0)}.app-shell--journal .panel-menu-toggle{z-index:21;border:1px solid var(--panel-border);min-height:42px;color:var(--panel-text);background:var(--panel-surface-solid);border-radius:12px;align-items:center;gap:8px;padding:0 13px;font-weight:720;display:inline-flex;position:fixed;top:16px;left:16px;box-shadow:0 8px 24px #1f29371f}.app-shell--journal .panel-sidebar-close{width:32px;height:32px;color:var(--panel-muted);background:0 0;border:0;border-radius:9px;flex:none;place-items:center;display:grid;position:static}.app-shell--journal .panel-sidebar-backdrop--visible{z-index:19;background:#0f172a5c;border:0;display:block;position:fixed;inset:0}}html[data-theme=dark] .app-shell{--panel-canvas:#101215;--panel-surface:#1b1e23f0;--panel-surface-solid:#1b1e23;--panel-border:#343941;--panel-text:#f4f5f8;--panel-muted:#aeb4c0;--panel-accent-soft:#3d1d23;--panel-shadow:0 18px 46px #00000045}html[data-theme=dark] .app-shell select{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}.work-type-directory{gap:18px;padding:clamp(18px,2.4vw,28px);display:grid}.work-type-directory__heading{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.work-type-directory__heading h2{letter-spacing:-.02em;margin:0 0 4px;font-size:1.1rem}.work-type-directory__count{min-width:30px;height:30px;color:var(--panel-accent);background:var(--panel-accent-soft);border-radius:999px;place-items:center;padding:0 8px;font-size:.78rem;font-weight:800;display:grid}.work-type-directory__create{border:1px solid var(--panel-border);background:color-mix(in srgb, var(--panel-surface-solid) 84%, var(--panel-accent-soft));border-radius:16px;grid-template-columns:minmax(0,1fr) auto auto;gap:10px;padding:6px;display:grid}.work-type-directory__create input:not([type=checkbox]){min-height:40px!important;box-shadow:none!important;background:0 0!important;border-color:#0000!important}.work-type-directory__create label{align-items:center;gap:7px;display:flex}.work-type-directory__create input[type=checkbox]{width:17px;height:17px;min-height:17px;accent-color:var(--panel-accent);padding:0}.work-type-directory__create input:focus{background:var(--panel-surface-solid)!important;border-color:#e4081480!important}.work-type-directory__create button,.work-type-directory__save{border:1px solid var(--panel-accent);min-height:40px;color:var(--on-brand-red);background:var(--panel-accent);border-radius:11px;justify-content:center;align-items:center;gap:7px;padding:0 14px;font-weight:750;display:inline-flex}.work-type-directory__create button:hover:not(:disabled){background:var(--brand-red-dark)}.work-type-directory__items{border:1px solid var(--panel-border);background:var(--panel-surface-solid);border-radius:16px;grid-auto-rows:max-content;max-height:min(60vh,620px);display:grid;overflow:auto}.work-type-directory__item{border-bottom:1px solid var(--panel-border);grid-template-columns:minmax(0,1fr) auto auto auto;align-items:center;gap:14px;min-height:58px;padding:8px 12px;display:grid}.work-type-directory__item:last-child{border-bottom:0}.work-type-directory__item:hover{background:color-mix(in srgb, var(--panel-accent-soft) 36%, transparent)}.work-type-directory__item>input{font-weight:680;min-height:38px!important;box-shadow:none!important;background:0 0!important;border-color:#0000!important;padding-block:7px!important}.work-type-directory__item>input:hover,.work-type-directory__item>input:focus{border-color:var(--panel-border)!important;background:var(--panel-surface-solid)!important}.work-type-directory__switch{min-width:122px;color:var(--panel-muted);white-space:nowrap;align-items:center;gap:8px;font-size:.84rem;font-weight:680;display:inline-flex}.work-type-directory__switch input{clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.work-type-directory__switch-control{background:#a8afb9;border-radius:999px;flex:none;width:34px;height:20px;transition:background .15s;position:relative;box-shadow:inset 0 1px 2px #0f172a33}.work-type-directory__switch-control:after{content:"";background:#fff;border-radius:50%;width:14px;height:14px;transition:transform .15s;position:absolute;top:3px;left:3px;box-shadow:0 1px 3px #0f172a40}.work-type-directory__switch input:checked+.work-type-directory__switch-control{background:var(--panel-accent)}.work-type-directory__switch input:checked+.work-type-directory__switch-control:after{transform:translate(14px)}.work-type-directory__switch input:focus-visible+.work-type-directory__switch-control{outline:3px solid var(--brand-yellow);outline-offset:3px}.work-type-directory__save{color:var(--panel-accent);background:0 0}.work-type-directory__save:hover:not(:disabled){color:var(--on-brand-red);background:var(--panel-accent)}html[data-theme=dark] .work-type-directory__create{background:#3d1d237a}html[data-theme=dark] .work-type-directory__item:hover{background:#3d1d235c}@media (max-width:640px){.work-type-directory__create{grid-template-columns:minmax(0,1fr)}.work-type-directory__create button{justify-self:start}.work-type-directory__item{grid-template-columns:minmax(0,1fr);gap:8px 10px}.work-type-directory__switch{grid-area:auto}.work-type-directory__save{grid-area:auto;justify-self:start}}.invoice-public-link__expiry{color:var(--muted);align-self:center;font-size:.82rem;font-weight:650}.invoice-link-dialog-backdrop{z-index:30;background:#00000085;place-items:center;padding:1rem;display:grid;position:fixed;inset:0}.invoice-link-dialog{width:min(34rem,100%);padding:clamp(1.35rem,4vw,2rem);position:relative}.invoice-link-dialog h2{margin:.35rem 2rem .4rem 0}.invoice-link-dialog__close{color:var(--muted);cursor:pointer;background:0 0;border:0;font-size:1.8rem;line-height:1;position:absolute;top:.65rem;right:.75rem}.invoice-link-dialog__field{gap:.4rem;margin:1.15rem 0 .8rem;font-weight:700;display:grid}.invoice-link-dialog__field input{min-width:0;font:inherit;font-size:.86rem}.public-receipt-page{background:radial-gradient(circle at top right, #e4081421, transparent 34rem), var(--surface);place-items:center;min-height:100dvh;padding:24px;display:grid}.public-receipt-card{overflow-wrap:anywhere;border:1px solid var(--line);background:var(--surface-strong);width:min(100%,860px);box-shadow:var(--shadow);text-align:center;border-radius:24px;padding:clamp(28px,7vw,52px)}.public-receipt-card__eyebrow{color:var(--brand-red);letter-spacing:.11em;text-transform:uppercase;font-size:.74rem;font-weight:850}.public-receipt-card h1{margin:14px 0 12px;font-size:clamp(1.85rem,7vw,2.6rem);line-height:1.05}.public-receipt-card p{color:var(--muted);margin:0}.public-receipt-card__student{font-weight:780;color:var(--ink)!important;margin-top:5px!important}.public-receipt-card__expiry{font-size:.92rem;margin-top:12px!important}.public-receipt-card__lessons{border:1px solid var(--line);text-align:left;border-radius:16px;margin-top:28px;overflow:hidden}.public-receipt-card__lessons-heading{border-bottom:1px solid var(--line);justify-content:space-between;align-items:start;gap:16px;padding:18px 20px;display:flex}.public-receipt-card__lessons-heading h2{margin:0;font-size:1.04rem}.public-receipt-card__lessons-heading p{margin-top:4px;font-size:.82rem}.public-receipt-card__lessons-heading>span{color:var(--brand-red-dark);background:color-mix(in srgb, var(--brand-red) 9%, transparent);border-radius:999px;flex:none;padding:5px 9px;font-size:.78rem;font-weight:800}.public-receipt-card__lessons-table-wrap{overflow-x:auto}.public-receipt-card__lessons-table{border-collapse:collapse;width:100%;font-size:.88rem}.public-receipt-card__lessons-table th,.public-receipt-card__lessons-table td{border-bottom:1px solid var(--line);vertical-align:middle;padding:13px 14px}.public-receipt-card__lessons-table thead th{color:var(--muted);background:color-mix(in srgb, var(--surface) 70%, transparent);letter-spacing:.04em;text-transform:uppercase;font-size:.72rem;font-weight:800}.public-receipt-card__lessons-table td:not(:nth-child(2)),.public-receipt-card__lessons-table th:not(:nth-child(2)){white-space:nowrap}.public-receipt-card__lesson-name strong,.public-receipt-card__lesson-name span{display:block}.public-receipt-card__lesson-name span{color:var(--muted);margin-top:3px;font-size:.8rem}.public-receipt-card__line-total,.public-receipt-card__lessons-table tfoot td{color:var(--brand-red-dark);font-weight:850}.public-receipt-card__lessons-table tfoot th,.public-receipt-card__lessons-table tfoot td{background:color-mix(in srgb, var(--brand-red) 5%, transparent);border-bottom:0;font-weight:850}.public-receipt-card__additional-charges,.public-receipt-preview__additional-charges{border-top:1px solid var(--line);padding:16px 20px}.public-receipt-card__additional-charges h3,.public-receipt-preview__additional-charges h3{margin:0 0 10px;font-size:.92rem}.public-receipt-card__additional-charges ul,.public-receipt-preview__additional-charges ul{gap:8px;margin:0;padding:0;list-style:none;display:grid}.public-receipt-card__additional-charges li,.public-receipt-preview__additional-charges li{justify-content:space-between;gap:16px;display:flex}.public-receipt-card__comment,.public-receipt-preview__comment{border-top:1px solid var(--line);padding:16px 20px}.public-receipt-card__comment h3,.public-receipt-preview__comment h3{margin:0 0 6px;font-size:.92rem}.public-receipt-card__comment p,.public-receipt-preview__comment p{overflow-wrap:anywhere;margin:0}.public-receipt-card__actions{gap:10px;width:min(100%,360px);margin:28px auto 0;display:grid}.public-receipt-card__primary,.public-receipt-card__secondary{border-radius:12px;justify-content:center;align-items:center;min-height:48px;padding:10px 16px;font-weight:800;text-decoration:none;display:inline-flex}.public-receipt-card__primary{background:var(--brand-red);color:var(--on-brand-red);box-shadow:0 10px 22px #e4081440}.public-receipt-card__primary:hover,.public-receipt-card__primary:focus-visible{background:var(--brand-red-dark)}.public-receipt-card__secondary{border:1px solid var(--line);color:var(--ink)}.public-receipt-preview-page{padding:clamp(16px,4vw,44px)}.public-receipt-preview{overflow-wrap:anywhere;border:1px solid var(--line);background:var(--surface-strong);width:min(100%,860px);box-shadow:var(--shadow);border-radius:24px;padding:clamp(24px,6vw,48px)}.public-receipt-preview__header,.public-receipt-preview__payment,.public-receipt-preview__section-heading,.public-receipt-preview__lines li,.public-receipt-preview__footer{gap:20px;display:flex}.public-receipt-preview__header,.public-receipt-preview__section-heading,.public-receipt-preview__lines li{justify-content:space-between;align-items:start}.public-receipt-preview__header{border-bottom:1px solid var(--line);padding-bottom:24px}.public-receipt-preview__header h1{margin:11px 0 6px;font-size:clamp(1.7rem,5vw,2.45rem);line-height:1.1}.public-receipt-preview__header p,.public-receipt-preview__section-heading p,.public-receipt-preview__qr figcaption,.public-receipt-preview__lines li span{color:var(--muted);margin:0}.public-receipt-preview__header>strong{color:var(--on-brand-red);background:var(--brand-red);border-radius:12px;flex:none;padding:10px 14px;font-size:1.15rem}.public-receipt-preview__payment{background:color-mix(in srgb, var(--surface) 72%, transparent);border-radius:18px;justify-content:space-between;align-items:center;margin:28px 0;padding:22px}.public-receipt-preview__requisites{min-width:0}.public-receipt-preview__requisites dl{gap:12px;margin:0;display:grid}.public-receipt-preview__requisites dl>div{gap:3px;display:grid}.public-receipt-preview__requisites dt{color:var(--muted);letter-spacing:.04em;text-transform:uppercase;font-size:.74rem;font-weight:800}.public-receipt-preview__requisites dd{overflow-wrap:anywhere;margin:0;font-size:.92rem;font-weight:650}.public-receipt-preview__qr{border:1px solid var(--line);text-align:center;background:#fff;border-radius:14px;flex:none;place-items:center;gap:7px;margin:0;padding:10px;display:grid}.public-receipt-preview__qr img{display:block}.public-receipt-preview__qr figcaption{color:#595959;max-width:180px;font-size:.72rem}.public-receipt-preview__lines{border:1px solid var(--line);border-radius:18px;overflow:hidden}.public-receipt-preview__section-heading{border-bottom:1px solid var(--line);padding:18px 20px}.public-receipt-preview__section-heading h2{margin:0;font-size:1.08rem}.public-receipt-preview__section-heading p{margin-top:4px;font-size:.86rem}.public-receipt-preview__section-heading>span{color:var(--brand-red-dark);background:color-mix(in srgb, var(--brand-red) 9%, transparent);border-radius:999px;flex:none;padding:5px 9px;font-size:.78rem;font-weight:800}.public-receipt-preview__lines ul{margin:0;padding:0;list-style:none}.public-receipt-preview__lines li{border-bottom:1px solid var(--line);padding:15px 20px}.public-receipt-preview__lines li:last-child{border-bottom:0}.public-receipt-preview__lines li>div{gap:4px;display:grid}.public-receipt-preview__line-amounts{text-align:right;justify-items:end}.public-receipt-preview__line-amounts strong{color:var(--brand-red-dark)}:root[data-theme=dark] .public-receipt-card__lessons-heading>span,:root[data-theme=dark] .public-receipt-card__line-total,:root[data-theme=dark] .public-receipt-card__lessons-table tfoot td,:root[data-theme=dark] .public-receipt-preview__section-heading>span,:root[data-theme=dark] .public-receipt-preview__line-amounts strong{color:var(--brand-red)}.public-receipt-preview__footer{justify-content:end;margin-top:24px}.public-receipt-preview__footer .public-receipt-card__primary,.public-receipt-preview__footer .public-receipt-card__secondary{min-width:158px}@media (max-width:620px){.public-receipt-page{padding:14px;display:block}.public-receipt-card{padding:28px 18px}.public-receipt-card__lessons-heading{padding:16px}.public-receipt-card__lessons-table,.public-receipt-card__lessons-table tbody,.public-receipt-card__lessons-table tr,.public-receipt-card__lessons-table td{display:block}.public-receipt-card__lessons-table thead{display:none}.public-receipt-card__lessons-table tbody tr{border-bottom:1px solid var(--line);padding:12px 16px}.public-receipt-card__lessons-table tbody td{text-align:right;border:0;justify-content:space-between;align-items:baseline;gap:16px;padding:4px 0;display:flex}.public-receipt-card__lessons-table tbody td:before{color:var(--muted);content:attr(data-label);text-align:left;flex:none;font-size:.74rem;font-weight:750}.public-receipt-card__lessons-table tbody .public-receipt-card__lesson-name{text-align:left;padding:8px 0 10px;display:block}.public-receipt-card__lessons-table tbody .public-receipt-card__lesson-name:before{margin-bottom:4px;display:block}.public-receipt-card__lessons-table tfoot th,.public-receipt-card__lessons-table tfoot td{padding:14px 16px}.public-receipt-preview{padding:22px 16px}.public-receipt-preview__header,.public-receipt-preview__payment{flex-direction:column;align-items:stretch}.public-receipt-preview__header>strong{align-self:start}.public-receipt-preview__payment{padding:16px}.public-receipt-preview__qr{justify-self:center}.public-receipt-preview__lines li{flex-direction:column;align-items:stretch;gap:10px;padding:14px 16px}.public-receipt-preview__line-amounts{text-align:left;justify-items:start}.public-receipt-preview__footer{grid-template-columns:1fr;display:grid}.public-receipt-preview__footer .public-receipt-card__primary,.public-receipt-preview__footer .public-receipt-card__secondary{width:100%}}.invoice-workspace{gap:18px;margin-top:20px;display:grid}.invoice-controls,.invoice-card__heading,.invoice-line{justify-content:space-between;align-items:end;gap:16px;display:flex}.invoice-controls{flex-wrap:wrap}.invoice-primary-button,.invoice-secondary-button,.invoice-clear-button{border-radius:12px;min-height:46px;padding:0 20px;font-weight:800;transition:transform .16s,box-shadow .16s,background .16s}.invoice-primary-button{border:1px solid var(--brand-red);color:var(--on-brand-red);background:var(--brand-red);box-shadow:0 10px 22px #b4050e38}.invoice-primary-button:hover:not(:disabled),.invoice-primary-button:focus-visible:not(:disabled){color:var(--on-brand-red);background:var(--brand-red-dark);transform:translateY(-1px);box-shadow:0 14px 26px #b4050e47}.invoice-secondary-button{border:1px solid var(--panel-border);color:var(--panel-text);background:var(--panel-surface-solid)}.invoice-secondary-button:hover:not(:disabled),.invoice-secondary-button:focus-visible:not(:disabled){border-color:var(--brand-red);color:var(--brand-red);background:var(--panel-accent-soft);transform:translateY(-1px)}.invoice-clear-button{border:1px solid var(--line);color:var(--danger);background:0 0}.invoice-clear-button:hover:not(:disabled),.invoice-clear-button:focus-visible:not(:disabled){color:#fff;border-color:var(--danger);background:var(--danger)}.invoice-controls label{min-width:min(100%,360px)}.invoice-direction-picker{border:1px solid var(--panel-border);border-radius:.75rem;gap:.45rem;min-width:min(100%,18rem);padding:.65rem .8rem .8rem;display:grid}.invoice-direction-picker legend{padding:0 .25rem;font-weight:700}.invoice-direction-picker label{align-items:center;gap:.5rem;font-weight:500;display:flex}.invoice-direction-picker input{width:auto}.invoice-student-picker{z-index:1;min-width:min(100%,360px);position:relative}.invoice-student-picker>label{min-width:0;display:grid}.invoice-student-picker__results{border:1px solid var(--panel-border);background:var(--panel-surface-solid);max-height:240px;box-shadow:var(--shadow);border-radius:12px;display:grid;position:absolute;top:calc(100% + 4px);left:0;right:0;overflow-y:auto}.invoice-student-picker__results button{width:100%;min-height:auto;color:var(--panel-text);text-align:left;background:0 0;border:0;border-radius:0;padding:9px 12px}.invoice-student-picker__results button:hover,.invoice-student-picker__results button:focus-visible{color:var(--panel-text);background:var(--brand-red-soft)}.invoice-list,.invoice-line-list{gap:14px;display:grid}.invoice-card{padding:22px}.invoice-card__heading{border-bottom:1px solid var(--panel-border);align-items:start;padding-bottom:15px}.invoice-card__heading h2{margin:0}.invoice-card__heading strong{color:var(--brand-red);font-size:1.25rem}.invoice-bulk-price{border-bottom:1px solid var(--panel-border);flex-wrap:wrap;align-items:end;gap:.75rem;padding:0 0 .9rem;display:flex}.invoice-additional-charge-controls,.invoice-additional-charge-list{border-bottom:1px solid var(--panel-border);align-items:end;gap:12px;padding:.9rem 0;display:flex}.invoice-additional-charge-controls label{gap:.3rem;font-weight:700;display:grid}.invoice-additional-charge-list{align-items:stretch;display:grid}.invoice-additional-charge-list h3{margin:0;font-size:.95rem}.invoice-bulk-price label{gap:.3rem;font-weight:700;display:grid}.invoice-bulk-price input{max-width:12rem}.invoice-bulk-price .field-help{margin:0 0 .55rem}.invoice-line{border-bottom:1px solid var(--panel-border);align-items:end;gap:10px;padding:9px 0}.invoice-line:last-child{border-bottom:0;padding-bottom:0}.invoice-comment-editor,.invoice-comment-display{border-top:1px solid var(--panel-border);gap:8px;padding-top:16px;display:grid}.invoice-comment-editor label,.invoice-comment-display strong{font-weight:800}.invoice-comment-editor textarea{resize:vertical;width:100%;min-height:80px}.invoice-comment-editor .invoice-secondary-button{justify-self:start}.invoice-comment-display p{overflow-wrap:anywhere;margin:0}.invoice-line__about{flex:280px;gap:1px;display:grid}.invoice-line__about small,.invoice-line__about span{color:var(--muted);font-size:.82rem}.invoice-line label{width:min(100%,128px);font-size:.82rem}.invoice-line input{min-height:38px;padding:7px 9px}.invoice-line output{text-align:right;min-width:76px;font-weight:700}@media (max-width:840px){.invoice-controls,.invoice-line,.invoice-bulk-price,.invoice-additional-charge-controls{flex-direction:column;align-items:stretch}.invoice-controls label,.invoice-line label{width:100%}.invoice-line__about{flex:0 auto}.invoice-line output{text-align:left}}html[data-theme=dark] .app-shell :is(input[type=date],input[type=datetime-local],input[type=month],input[type=time]){--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}html[data-theme=dark] .soft-select__menu{background:#1b1e23f5}html[data-theme=dark] .app-sidebar{background:#1b1e23f0;border-color:#333840}html[data-theme=dark] .sidebar-user{background:#29251b;border-color:#4a4029}html[data-theme=dark] .app-sidebar .panel-nav-link,html[data-theme=dark] .app-sidebar .notification-link{color:#c3c9d3}html[data-theme=dark] .app-sidebar .panel-nav-link:hover,html[data-theme=dark] .app-sidebar .notification-link:hover{color:#fff;background:#262a31}html[data-theme=dark] .app-sidebar .panel-nav-link--active,html[data-theme=dark] .app-sidebar .panel-nav-link--active:hover,html[data-theme=dark] .app-sidebar .notification-link[aria-current=page]{color:#ffb5ba;background:#3a1e24}@media (max-width:900px){body.panel-sidebar-open{overflow:hidden}.app-shell{padding:calc(84px + env(safe-area-inset-top)) max(18px, env(safe-area-inset-right)) calc(38px + env(safe-area-inset-bottom)) max(18px, env(safe-area-inset-left))}.app-sidebar{inset:max(12px, env(safe-area-inset-top)) auto max(12px, env(safe-area-inset-bottom)) max(12px, env(safe-area-inset-left));width:min(300px,100vw - 32px);transition:transform .18s;position:fixed;transform:translate(calc(-100% - 28px))}.app-sidebar--open{transform:translate(0)}.panel-menu-toggle{z-index:21;top:max(16px, env(safe-area-inset-top));left:max(16px, env(safe-area-inset-left));border:1px solid var(--panel-border);min-height:42px;color:var(--panel-text);background:var(--panel-surface-solid);border-radius:12px;align-items:center;gap:8px;padding:0 13px;font-weight:720;display:inline-flex;position:fixed;box-shadow:0 8px 24px #1f29371f}.panel-sidebar-close{width:32px;height:32px;color:var(--panel-muted);background:0 0;border:0;border-radius:9px;flex:none;place-items:center;display:grid;position:static}.panel-sidebar-backdrop--visible{z-index:19;background:#0f172a5c;border:0;display:block;position:fixed;inset:0}}@media (max-width:560px){.app-shell .welcome-card{flex-direction:column;align-items:flex-start;gap:16px;padding:22px}.app-shell .welcome-card h1{font-size:1.65rem}.app-shell .dashboard-grid{grid-template-columns:1fr}.app-shell .feature-card{min-height:200px}}.recurrence-editor{border:1px solid var(--line);border-radius:10px;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:0;padding:13px;display:grid}.recurrence-editor legend{color:var(--ink);padding:0 5px;font-size:.86rem;font-weight:800}.recurrence-weekdays,.recurrence-help{grid-column:1/-1}.recurrence-weekdays>span{margin-bottom:7px;font-size:.82rem;font-weight:750;display:block}.recurrence-weekdays>div{flex-wrap:wrap;gap:7px;display:flex}.recurrence-weekdays label{border:1px solid var(--line);border-radius:7px;align-items:center;gap:5px;margin:0;padding:5px 7px;font-size:.78rem;font-weight:750;display:inline-flex}.recurrence-weekdays input{width:auto;margin:0}.recurrence-help{margin:0}.schedule-people-row{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:8px 12px;display:grid}.schedule-people-row__help{grid-column:1/-1;margin:0;padding-top:2px}.schedule-participant-picker{min-width:0;position:relative}.schedule-participant-picker>label{gap:6px;display:grid}.schedule-participant-picker>input{width:100%}.participant-options{z-index:5;border:1px solid var(--line);background:var(--surface-strong);border-radius:9px;max-height:240px;padding:5px;display:grid;position:absolute;top:calc(100% + 5px);left:0;right:0;overflow-y:auto;box-shadow:0 12px 28px #32161438}.participant-option{width:100%;color:var(--ink);font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:6px;grid-template-columns:22px minmax(0,1fr) auto;align-items:center;gap:7px;padding:9px 8px;font-size:.84rem;font-weight:750;display:grid}.participant-option:hover,.participant-option:focus-visible{background:var(--brand-yellow-soft);outline:none}.participant-option>span:first-child{font-size:1rem}.participant-option>span:nth-child(2){text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.participant-option small{color:var(--muted);font-size:.7rem;font-weight:700}.participant-options>p{color:var(--muted);margin:6px 8px;font-size:.82rem}.group-details{border:1px solid var(--line);color:var(--muted);border-radius:8px;margin-top:8px;padding:8px 10px;font-size:.8rem}.group-details summary{color:var(--brand-red);letter-spacing:-.01em;white-space:normal;overflow-wrap:anywhere;cursor:pointer;font-size:clamp(.7rem,2.5vw,.8rem);font-weight:800}.group-details ul{gap:3px;margin:8px 0 0;padding-left:18px;display:grid}.group-details p{margin:8px 0 0}.historical-roster-choice{border:1px solid var(--brand-red);border-radius:10px;gap:8px;margin:12px 0 0;padding:10px 12px;display:grid}.historical-roster-choice legend{color:var(--brand-red);padding:0 4px;font-size:.78rem;font-weight:800}.historical-roster-choice p{color:var(--muted);margin:0;font-size:.8rem;line-height:1.4}.historical-roster-choice label{color:var(--ink);align-items:flex-start;gap:8px;font-size:.82rem;font-weight:700;line-height:1.35;display:flex}.historical-roster-choice input{flex:none;margin:2px 0 0}.schedule-editor textarea{resize:none;min-height:76px;overflow-y:hidden}.availability-override{white-space:normal;width:fit-content;min-width:0;max-width:100%;margin-top:12px;font-size:.78rem;line-height:1.35}.schedule-editor .switch-label:not(.switch-label--icon)>span{white-space:normal;min-width:0}.button-row{flex-wrap:wrap;gap:9px;margin-top:16px;display:flex}.schedule-editor__actions{justify-items:center;gap:12px;margin-top:20px;display:grid}.schedule-editor__utility-actions,.schedule-editor__submit-actions{flex-wrap:wrap;justify-content:center;gap:10px;width:100%;display:flex}.schedule-editor__actions .secondary-button,.schedule-editor__save-button,.schedule-editor__cancel-button,.schedule-editor__actions .danger-button{border-radius:12px;min-height:44px;padding:0 18px;font-weight:780}.schedule-workspace .secondary-button{max-width:100%;font:inherit;text-align:center;justify-content:center;align-items:center;line-height:1.2;text-decoration:none;display:inline-flex}.schedule-workspace .secondary-button:hover{text-decoration:none}.schedule-primary-action{border:1px solid var(--panel-accent);min-height:44px;color:var(--on-brand-red);background:var(--panel-accent);font:inherit;text-align:center;border-radius:12px;justify-content:center;align-items:center;padding:0 18px;font-weight:780;line-height:1.2;display:inline-flex;box-shadow:0 9px 18px #e408142e}.schedule-primary-action:hover:not(:disabled){background:var(--brand-red-dark);box-shadow:0 12px 22px #e4081440}.schedule-editor__save-button{border:1px solid var(--panel-accent);color:var(--on-brand-red);background:var(--panel-accent);box-shadow:0 9px 18px #e408142e}.schedule-editor__save-button:hover:not(:disabled){background:var(--brand-red-dark);box-shadow:0 12px 22px #e4081440}.schedule-editor__cancel-button{border:1px solid var(--panel-accent);color:var(--panel-accent);background:0 0}.schedule-editor__cancel-button:hover:not(:disabled){color:var(--panel-accent);background:var(--panel-accent-soft)}.schedule-editor__group-action{border-width:2px;justify-content:center;align-items:center;width:fit-content;margin-top:8px;padding-inline:18px;text-decoration:none;display:inline-flex}.schedule-editor__group-action:hover{text-decoration:none}.selected-student-chips{flex-wrap:wrap;gap:7px;margin-top:9px;display:flex}.selected-student-chip{border:1px solid var(--line);background:var(--panel-surface-solid);min-height:32px;color:var(--panel-text);border-radius:999px;align-items:center;gap:7px;padding:4px 6px 4px 10px;font-size:.8rem;font-weight:720;line-height:1.2;display:inline-flex}.selected-student-chip__remove{width:22px;height:22px;color:var(--panel-muted);font:inherit;background:0 0;border:0;border-radius:50%;place-items:center;padding:0;font-size:1rem;font-weight:800;line-height:1;display:inline-grid}.selected-student-chip__remove:hover:not(:disabled){color:var(--on-brand-red);background:var(--panel-accent)}.danger-button{color:#fff;background:#6e5b57}.birthday-sidebar{padding:20px}.birthday-sidebar h2{font-size:1.2rem}.birthday-sidebar ul{gap:10px;margin:0;padding:0;list-style:none;display:grid}.birthday-sidebar li{border-top:1px solid var(--line);gap:9px;padding-top:10px;display:flex}.birthday-sidebar li>span:last-child{gap:2px;display:grid}.birthday-sidebar small{color:var(--muted)}.theme-toggle{border:1px solid var(--line);min-height:40px;color:var(--ink);background:var(--surface);border-radius:12px;justify-content:center;align-items:center;gap:9px;padding:8px 12px;font-size:.82rem;font-weight:800;display:inline-flex}.theme-toggle:hover{border-color:var(--brand-red)}.theme-toggle--compact{width:42px;padding-inline:0}.login-theme-toggle{z-index:5;position:fixed;inset:20px 20px auto auto}.directory-jump-nav{z-index:10;border:1px solid var(--line);background:color-mix(in srgb, var(--surface) 92%, transparent);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);border-radius:16px;gap:8px;width:min(100%,1440px);margin:22px auto 38px;padding:8px;display:flex;position:sticky;top:16px;overflow-x:auto;box-shadow:0 12px 34px #00000014}.directory-jump-nav a{border-radius:10px;flex:none;align-items:center;gap:8px;min-height:40px;padding:8px 12px;font-size:.86rem;font-weight:750;text-decoration:none;display:inline-flex}.directory-jump-nav a:hover,.directory-jump-nav a:focus-visible{background:var(--brand-red-soft)}.directory-jump-nav strong{min-width:24px;height:24px;color:var(--on-brand-red);background:var(--brand-red);border-radius:999px;place-items:center;padding-inline:6px;font-size:.7rem;display:grid}.directory-section{width:min(100%,1440px);margin:0 auto 54px;scroll-margin-top:96px}.directory-section__heading{justify-content:space-between;align-items:end;gap:20px;margin-bottom:16px;display:flex}.directory-section__heading h2{margin:5px 0 6px;font-size:clamp(1.65rem,3vw,2.3rem)}.directory-section__heading p{max-width:800px;color:var(--muted);margin-bottom:0;line-height:1.55}.directory-search{min-width:min(100%,320px);color:var(--muted);gap:5px;font-size:.84rem;font-weight:800;display:grid}.directory-search>label{gap:5px;display:grid}.directory-search input,.member-search input{border:1px solid var(--line);min-height:44px;color:var(--ink);background:var(--surface-strong);border-radius:10px;padding:9px 12px;font-size:.96rem}.student-directory{gap:18px;width:min(100%,1440px);margin:24px auto 54px;display:grid}.student-directory__filters,.directory-pagination{flex-wrap:wrap;align-items:end;gap:12px;display:flex}.directory-pagination{justify-content:center;align-items:center;margin:14px 0 28px}.directory-pagination a{color:var(--brand-red);font-weight:750}.directory-search--global{width:min(100%,640px)}.collapsible-directory{border:1px solid var(--line);background:color-mix(in srgb, var(--surface) 88%, transparent);border-radius:20px;padding:18px}.collapsible-directory>summary{cursor:pointer;justify-content:space-between;align-items:center;gap:12px;font-size:1.25rem;font-weight:850;display:flex}.collapsible-directory>summary::marker{color:var(--brand-red)}.collapsible-directory>summary strong{min-width:29px;height:29px;color:var(--on-brand-red);background:var(--brand-red);border-radius:999px;place-items:center;padding-inline:7px;font-size:.75rem;display:grid}.collapsible-directory[open]>summary{margin-bottom:18px}.collapsible-directory>.field-help{margin:-5px 0 18px}.parent-grid{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:14px;display:grid}.parent-card{padding:20px}.parent-card h3{margin:6px 0 10px;font-size:1.1rem}.parent-card p{margin:0 0 7px}.parent-card a,.group-members{color:var(--muted);font-size:.82rem}.parent-card a{color:var(--brand-red);margin-top:7px;font-weight:800;display:inline-block}.group-members{margin:16px 0 0;line-height:1.45}.created-meta{color:var(--muted);margin:18px 0 0;font-size:.71rem;line-height:1.45}.attendance-layout{grid-template-columns:minmax(280px,390px) minmax(0,1fr);align-items:start;gap:18px;width:min(100%,1440px);margin:24px auto 54px;display:grid}.attendance-lesson-list{position:sticky;top:24px}.attendance-lesson-list h2,.attendance-journal h2,.attendance-history h3{margin:0}.attendance-lesson-list ul,.attendance-history ul{gap:8px;margin:16px 0 0;padding:0;list-style:none;display:grid}.attendance-lesson-link{border:1px solid var(--line);color:var(--ink);border-radius:10px;gap:3px;padding:11px;text-decoration:none;display:grid}.attendance-lesson-link:hover,.attendance-lesson-link:focus-visible,.attendance-lesson-link--selected{border-color:var(--brand-red);background:var(--brand-red-soft)}.attendance-lesson-link span,.attendance-lesson-link small,.attendance-history p,.attendance-history span{color:var(--muted);font-size:.76rem}.attendance-journal__heading{justify-content:space-between;align-items:start;gap:14px;display:flex}.attendance-journal__actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.attendance-journal__return-link{align-items:center;text-decoration:none;display:inline-flex}.attendance-layout .empty-state .attendance-journal__return-link{margin-top:16px}.attendance-journal__rows{gap:8px;margin:20px 0;display:grid}.attendance-row{border:1px solid var(--line);border-radius:10px;justify-content:space-between;align-items:center;gap:14px;min-height:58px;padding:9px 10px;display:flex}.attendance-row>span{gap:3px;display:grid}.attendance-row small{color:var(--muted);font-size:.7rem}.attendance-row select{min-width:190px}.attendance-history{border-top:1px solid var(--line);margin-top:18px;padding-top:16px}.attendance-history h3{font-size:.9rem}.attendance-history li{gap:2px;display:grid}.attendance-history a{color:var(--brand-red);font-size:.78rem;font-weight:750}.contact-fields{border:1px solid var(--line);border-radius:12px;min-width:0;margin:0;padding:14px 16px 16px}.contact-fields legend{padding-inline:6px;font-size:.88rem;font-weight:850}.contact-fields .field-help{margin:0 0 12px;font-size:.78rem}.contact-editor-list{gap:12px;margin-bottom:8px;display:grid}.contact-editor-row{border-bottom:1px solid var(--line);gap:9px;padding:12px 0;display:grid}.contact-editor-row__main{grid-template-columns:minmax(0,1fr);align-items:start;gap:8px;display:grid}.contact-editor-row label,.pedagogue-filters label{min-width:0;color:var(--muted);gap:5px;font-size:.75rem;font-weight:800;display:grid}.contact-editor-row .field-help{margin:0;font-size:.67rem;font-weight:600}.contact-editor-row__actions{justify-content:flex-end;display:flex}.contact-editor-row__remove{min-height:auto}.inline-filter-form,.page-navigation{align-items:end;gap:12px;margin-bottom:18px;display:flex}.inline-filter-form label{min-width:min(100%,280px);color:var(--muted);gap:5px;font-size:.78rem;font-weight:800;display:grid}.inline-filter-form{flex-wrap:wrap}.feedback-status-filter{gap:6px;width:min(100%,340px);margin-bottom:22px;display:grid}.feedback-status-filter label{color:var(--muted);font-size:.78rem;font-weight:800}.feedback-status-filter select{min-height:44px}.attendance-lesson-list .inline-filter-form{grid-template-columns:minmax(0,1fr);align-items:stretch;display:grid}.attendance-lesson-list .inline-filter-form label{min-width:0}.attendance-lesson-list .inline-filter-form button{justify-self:start}.attendance-statistics__heading{justify-content:space-between;align-items:center;gap:12px;display:flex}.attendance-statistics__heading h2{margin:0}.attendance-statistics__toggle{flex:none}.attendance-statistics__filters .inline-filter-form{margin-top:14px}@media (max-width:620px){.attendance-statistics__heading{align-items:flex-start}.attendance-statistics__filters .inline-filter-form{flex-direction:column;align-items:stretch}}.page-navigation{color:var(--muted);justify-content:space-between;align-items:center;font-size:.86rem}.audit-metadata summary{cursor:pointer;color:var(--panel-text);font-weight:800}.audit-metadata pre{white-space:pre-wrap;overflow-wrap:anywhere;max-height:240px;color:var(--muted);font:.78rem/1.45 ui-monospace,SFMono-Regular,Menlo,monospace;overflow:auto}.audit-filters{flex-wrap:wrap;align-items:end}.audit-page .audit-filters,.audit-page .audit-list,.audit-page .page-navigation{width:min(100%,960px);margin-inline:auto}.audit-filters label{flex:280px;min-width:0}.audit-list{gap:16px;display:grid}.audit-card{border:1px solid var(--panel-border);background:var(--panel-surface);box-shadow:var(--panel-shadow);border-radius:22px;padding:clamp(16px,2vw,24px)}.audit-card__header h2{margin:5px 0 0}.audit-card__subject{color:var(--muted);margin:6px 0 0;font-weight:700}.audit-card__changes{gap:10px;margin:20px 0;display:grid}.audit-card__changes div{grid-template-columns:minmax(150px,240px) minmax(0,1fr);gap:12px;display:grid}.audit-card__changes dt{color:var(--muted)}.audit-card__changes dd{overflow-wrap:anywhere;margin:0;font-weight:650}.audit-card__actor{margin:20px 0 0}.audit-card__technical{border-top:1px solid var(--line);margin-top:18px;padding-top:14px}.audit-card__technical summary{cursor:pointer;color:var(--panel-text);font-weight:800}.audit-card__technical dl{grid-template-columns:max-content minmax(0,1fr);gap:6px 12px;margin:14px 0;font:.78rem/1.45 ui-monospace,SFMono-Regular,Menlo,monospace;display:grid}.audit-card__technical dd{overflow-wrap:anywhere;margin:0}.audit-card__technical pre{white-space:pre-wrap;overflow-wrap:anywhere;max-height:240px;color:var(--muted);font:.78rem/1.45 ui-monospace,SFMono-Regular,Menlo,monospace;overflow:auto}@media (max-width:620px){.audit-filters{flex-direction:column;align-items:stretch}.audit-filters label{flex-basis:auto}.audit-filters>button{align-self:flex-start}.audit-card__changes div{grid-template-columns:1fr;gap:2px}}.study-place-picker{gap:10px;display:grid}.selected-tags{flex-wrap:wrap;gap:7px;display:flex}.selected-tag{border:1px solid color-mix(in srgb, var(--brand-red) 42%, var(--line));min-height:30px;color:var(--ink);background:var(--brand-red-soft);border-radius:999px;align-items:center;gap:5px;padding:5px 9px;font-size:.76rem;font-weight:750;display:inline-flex}.selected-tag:hover,.selected-tag:focus-visible{border-color:var(--brand-red)}.selected-tag span{color:var(--brand-red);font-size:1rem;line-height:1}.multi-select-menu{border:1px solid var(--line);background:var(--surface-strong);border-radius:10px;position:relative}.multi-select-menu>summary{cursor:pointer;min-height:42px;color:var(--ink);padding:11px;font-size:.84rem;font-weight:750}.multi-select-menu__content{border-top:1px solid var(--line);gap:8px;padding:10px;display:grid}.pedagogue-filters{grid-template-columns:minmax(190px,1.6fr) repeat(3,minmax(130px,1fr));gap:8px;width:min(100%,730px);display:grid}.pedagogue-filters input,.pedagogue-filters select{border:1px solid var(--line);min-height:40px;color:var(--ink);background:var(--surface-strong);border-radius:10px;padding:8px 10px}.feedback-message{white-space:pre-wrap;margin-bottom:0}.feedback-workspace,.app-shell.account-requests-page .page-heading,.account-requests-page .request-list{width:min(100%,960px);margin-inline:auto}.account-requests-page .request-list+.request-list{margin-top:28px}.account-requests-page .section-heading{justify-content:space-between;align-items:center;gap:16px;display:flex}.account-requests-page .section-heading h2{margin-bottom:0}.account-requests-page .count-badge{background:var(--brand-yellow-soft);border-radius:10px;flex:none;place-items:center;min-width:32px;height:32px;padding-inline:8px;font-weight:800;display:grid}.account-requests-page .request-card,.account-requests-page .request-card>*{overflow-wrap:anywhere;min-width:0}.request-card.username-request-card{grid-template-columns:minmax(0,1fr);gap:12px}.username-request-card>p,.username-request-card>h3{margin:0}.request-card.feedback-card{grid-template-columns:minmax(0,1fr);gap:12px;padding:clamp(16px,2vw,24px)}.feedback-card>h2,.feedback-card>p{overflow-wrap:anywhere;margin:0}.feedback-card .request-actions>label{gap:6px;max-width:340px;display:grid}.account-settings-page .section-card{width:min(100%,960px);padding:clamp(16px,2vw,24px)}.account-settings-page .user-edit-form .form-grid>label:not(.switch-label){align-content:start}.account-password-form>label:not(.switch-label){gap:7px;max-width:420px;display:grid}.app-shell .user-permissions-workspace{width:min(100%,960px);padding:clamp(16px,2vw,24px)}.user-permissions-list{margin-top:16px}.user-permission-row{border-top:1px solid var(--line);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;padding:12px 0;display:flex}.user-permission-copy{overflow-wrap:anywhere;flex:1;min-width:0}.user-permission-copy .field-help{margin:4px 0 0}.user-permission-row .button-row{flex-shrink:0;margin:0}.user-permission-row>p{flex-basis:100%;margin:0}@media (max-width:700px){.user-permission-row{flex-direction:column;align-items:flex-start;gap:8px}.user-permission-row .button-row{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;width:100%;display:grid}.user-permission-row .button-row>button{min-width:0;padding-inline:6px;font-size:.8rem}}.form-grid--single{grid-template-columns:1fr}.person-form__heading{justify-content:space-between;align-items:center;gap:12px;display:flex}.person-form__identity{align-items:center;gap:10px;min-width:0;display:flex}.pedagogue-card-avatar{border:1px solid var(--panel-border);background:var(--brand-red);width:42px;height:42px;color:var(--on-brand-red);border-radius:50%;flex:0 0 42px;place-items:center;font-size:.78rem;font-weight:800;display:inline-grid;position:relative;overflow:hidden}.pedagogue-avatar-editor{border:1px solid var(--panel-border);background:color-mix(in srgb, var(--panel-surface) 88%, var(--brand-red));border-radius:14px;gap:12px;padding:14px;display:grid}.pedagogue-avatar-editor__heading{align-items:center;gap:12px;display:flex}.pedagogue-avatar-editor__heading h3{margin:0}.pedagogue-avatar-editor__heading .field-help{margin:4px 0 0}.avatar-file-input{gap:6px;width:fit-content;display:grid}.avatar-file-input input{max-width:100%}.avatar-file-input input::file-selector-button{border:1px solid var(--brand-red);min-height:40px;color:var(--brand-red);font:inherit;cursor:pointer;background:0 0;border-radius:12px;margin-right:10px;padding:0 14px;font-weight:700}.avatar-file-input input:not(:disabled)::file-selector-button:hover{background:var(--brand-red-soft)}.avatar-cropper{gap:10px;display:grid}.avatar-cropper__canvas{aspect-ratio:1;background:#14100f;border-radius:12px;width:min(100%,360px);position:relative;overflow:hidden}.avatar-cropper label{gap:6px;width:min(100%,360px);display:grid}.avatar-cropper input[type=range]{width:100%}.avatar-cropper__actions{flex-wrap:wrap;gap:8px;display:flex}.person-form__heading .switch-label{white-space:nowrap}.switch-label--icon{cursor:pointer;width:39px;height:23px;position:relative}.switch-label--icon input{opacity:0;width:1px;height:1px;position:absolute}.switch-control{border:1px solid var(--line);background:#857673;border-radius:999px;width:39px;height:23px;transition:background .15s;display:block}.switch-control:after{content:"";background:#fff;border-radius:50%;width:17px;height:17px;margin:2px;transition:transform .15s;display:block}.switch-label--icon input:checked+.switch-control{background:var(--brand-red)}.switch-label--icon input:checked+.switch-control:after{transform:translate(16px)}.switch-label--icon input:focus-visible+.switch-control{outline:3px solid var(--brand-yellow);outline-offset:3px}.member-search{color:var(--muted);gap:5px;margin-bottom:8px;font-size:.75rem;font-weight:800;display:grid}.calendar-weeks{gap:24px;display:grid}.calendar-weeks[hidden]{display:none}.calendar-week{min-width:0}.calendar-week-title{margin-bottom:10px;font-size:1.05rem}.day-availability{color:#754c00;background:var(--brand-yellow-soft);border-radius:8px;margin:-5px 0 12px;padding:6px 8px;font-size:.72rem;font-weight:800}.day-availability--empty{color:var(--muted);background:0 0}.availability-weeks{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;display:grid}.availability-week{border:1px solid var(--line);border-radius:14px;min-width:0;margin:0;padding:14px;container-type:inline-size}.availability-week legend{padding-inline:6px;font-size:.96rem;font-weight:850}.directory-step{color:var(--brand-red);letter-spacing:.11em;text-transform:uppercase;font-size:.72rem;font-weight:900}.directory-layout{grid-template-columns:minmax(280px,360px) minmax(0,1fr);align-items:start;gap:18px;display:grid}.directory-create-card{border-color:color-mix(in srgb, var(--brand-red) 24%, var(--line))}.directory-items{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:16px;display:grid}.directory-items>.empty-state{grid-column:1/-1}.directory-editor-actions{justify-content:flex-end;margin:-2px 0 10px;display:flex}.group-directory-card__heading{justify-content:space-between;align-items:start;gap:12px;display:flex}.group-directory-card__heading h3{margin:3px 0 0;font-size:1.05rem}.group-directory-card__heading .field-help{margin:5px 0 0}.group-directory-card__heading>button{flex:none}.group-directory-card__editor{border-top:1px solid var(--line);margin-top:14px;padding-top:14px}.archive-test-panel{border:1px dashed color-mix(in srgb, var(--brand-red) 48%, var(--line));background:color-mix(in srgb, var(--brand-red) 5%, var(--surface));border-radius:14px;gap:8px;margin-top:16px;padding:14px;display:grid}.archive-test-panel h4,.archive-test-panel p{margin:0}.archive-test-panel__button{border-color:var(--brand-red);background:var(--brand-red);color:var(--on-brand-red);justify-self:start}.archive-test-panel__list{color:var(--muted);gap:4px;margin:4px 0 0;padding-left:18px;font-size:.88rem;display:grid}.directory-person-card{min-width:0;padding:0}.directory-person-card>details>summary{cursor:pointer;justify-content:space-between;align-items:center;gap:12px;padding:15px;list-style:none;display:flex}.directory-person-card>details>summary::-webkit-details-marker{display:none}.directory-person-card__summary{align-items:center;gap:10px;min-width:0;display:flex}.directory-person-card__summary>span:last-child{gap:2px;min-width:0;display:grid}.directory-person-card__summary strong,.directory-person-card__summary small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.directory-person-card__summary small{color:var(--muted)}.directory-person-card__avatar{background:var(--brand-red);width:42px;height:42px;color:var(--on-brand-red);border-radius:50%;flex:none;place-items:center;font-size:.78rem;font-weight:900;display:grid;position:relative;overflow:hidden}.directory-person-card__toggle:before{content:"Раскрыть";color:var(--brand-red);font-size:.78rem;font-weight:850}.directory-person-card>details[open] .directory-person-card__toggle:before{content:"Свернуть"}.directory-person-card__content{border-top:1px solid var(--line);padding:0 15px 15px}.directory-person-card__content>.created-meta:last-child{margin-bottom:0}.compact-create-form h3{margin:0;font-size:1.25rem}.member-choices{border:1px solid var(--line);border-radius:12px;min-width:0;margin:0;padding:12px}.member-choices legend{padding-inline:6px;font-size:.84rem;font-weight:800}.member-choice-grid{gap:4px;max-height:250px;display:grid;overflow-y:auto}.person-form .member-choice{min-height:38px;color:var(--ink);border-radius:9px;align-items:center;gap:9px;padding:7px 8px;display:flex}.person-form .member-choice[hidden]{display:none}.person-form .member-choice:hover{background:var(--brand-yellow-soft)}.person-form .member-choice input{width:17px;height:17px;min-height:17px;accent-color:var(--brand-red);padding:0}.member-choices__more{margin-top:8px}.parent-link-choice{grid-template-columns:minmax(0,1fr) 132px;align-items:center;gap:8px;display:grid}.parent-link-choice[hidden]{display:none}.parent-link-choice select{min-height:36px;padding:6px 8px;font-size:.76rem}.linked-person-list{gap:6px;margin:12px 0 0;padding:0;list-style:none;display:grid}.linked-person-list li{flex-wrap:wrap;gap:7px;font-size:.82rem;display:flex}.linked-person-list span,.parent-slots strong{color:var(--muted)}.linked-person-list a,.parent-slots a{color:var(--brand-red);font-weight:800}.parent-slots{gap:8px;display:grid}.parent-slots p{gap:8px;margin:0;display:flex}.parent-picker{border-top:1px solid var(--line);gap:8px;margin-top:12px;padding-top:12px;display:grid}.parent-picker label{color:var(--muted);gap:5px;font-size:.78rem;font-weight:800;display:grid}.parent-picker__results{gap:5px;max-height:180px;display:grid;overflow-y:auto}.parent-picker__results button{border:1px solid var(--line);min-height:36px;color:var(--ink);background:var(--surface-strong);text-align:left;border-radius:9px}.parent-picker__results button:hover:not(:disabled){border-color:var(--brand-red)}html[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--ink:#f3ece8;--muted:#b9aaa4;--surface:#1d1919;--surface-strong:#252020;--line:#443837;--brand-red:#ff4b55;--brand-red-dark:#e5303b;--brand-red-soft:#3b2023;--on-brand-red:#0a0809;--brand-yellow:#e2b849;--brand-yellow-soft:#342b17;--danger:#ff7c83;--success:#70d3a3;--warning:#ffd353;--shadow:0 24px 70px #00000061;scrollbar-color:#594846 #171314;background:#100e0f}html[data-theme=dark] .login-shell,html[data-theme=dark] .app-shell{background:radial-gradient(circle at 8% 8%,#e2b8491f,#0000 28rem),radial-gradient(circle at 92% 15%,#ff4b5517,#0000 25rem),linear-gradient(150deg,#100e0f,#191415)}html[data-theme=dark] .login-card,html[data-theme=dark] .feature-card,html[data-theme=dark] .settings-card,html[data-theme=dark] .request-card,html[data-theme=dark] .empty-state,html[data-theme=dark] .birthday-card{border-color:var(--line);background:#1e1919f0;box-shadow:0 16px 42px #0000003d}html[data-theme=dark] .segmented-control button{border-color:var(--line);color:var(--ink);background:var(--surface-strong)}html[data-theme=dark] .segmented-control button:hover:not(:disabled),html[data-theme=dark] .segmented-control button:focus-visible:not(:disabled){border-color:var(--brand-red);color:var(--brand-red);background:var(--brand-red-soft)}html[data-theme=dark] .segmented-control button.is-active,html[data-theme=dark] .segmented-control button.is-active:hover:not(:disabled),html[data-theme=dark] .segmented-control button.is-active:focus-visible:not(:disabled),html[data-theme=dark] .work-log-editor .secondary-button{border-color:var(--brand-red);color:var(--on-brand-red);background:var(--brand-red)}html[data-theme=dark] .work-log-editor .secondary-button:hover:not(:disabled),html[data-theme=dark] .work-log-editor .secondary-button:focus-visible:not(:disabled){border-color:var(--brand-red-dark);color:var(--on-brand-red);background:var(--brand-red-dark)}html[data-theme=dark] .work-log-editor .compact-form{border-color:var(--line);background:#1e1919f0}html[data-theme=dark] .work-log-editor .compact-form label,html[data-theme=dark] .work-log-editor .compact-form strong{color:var(--ink)}html[data-theme=dark] .work-log-editor .compact-form input:not([type=checkbox]):not([type=radio]),html[data-theme=dark] .work-log-editor .compact-form textarea{border-color:var(--line);color:var(--ink);background:#171313}html[data-theme=dark] .work-log-editor .compact-form select{border-color:var(--line);color:var(--ink);background-color:#171313}html[data-theme=dark] .feature-card--accent{background:linear-gradient(145deg,#302817,#211c1a)}html[data-theme=dark] .app-sidebar{border-color:var(--line);background:#191515f5;box-shadow:0 22px 60px #0000004d}html[data-theme=dark] .sidebar-user,html[data-theme=dark] .birthday-marker{background:var(--brand-yellow-soft)}html[data-theme=dark] .impersonation-banner{color:#f0cf77;background:#342b17;border-color:#e2b8497a}html[data-theme=dark] .impersonation-banner button{color:#f0cf77;border-color:#f0cf77}html[data-theme=dark] .directory-search input,html[data-theme=dark] .member-search input{border-color:var(--line);color:var(--ink);background:#171313}html[data-theme=dark] .collapsible-directory{border-color:var(--line);background:#1e1919d6}html[data-theme=dark] .day-availability{color:#f0cf77;background:#342b17}html[data-theme=dark] .day-availability--empty{color:var(--muted);background:0 0}html[data-theme=dark] .nav-group-title{color:#9f8e87}html[data-theme=dark] .login-form input,html[data-theme=dark] .settings-form input,html[data-theme=dark] .password-reset-form input,html[data-theme=dark] .form-grid input:not([type=checkbox]):not([type=radio]),html[data-theme=dark] .form-grid select,html[data-theme=dark] .form-grid textarea,html[data-theme=dark] .person-form input:not([type=checkbox]):not([type=radio]),html[data-theme=dark] .person-form select,html[data-theme=dark] .person-form textarea,html[data-theme=dark] .availability-row input[type=time]{border-color:var(--line);color:var(--ink);background:#171313}html[data-theme=dark] .form-grid label,html[data-theme=dark] .person-form label{color:#ded2cd}html[data-theme=dark] .notification-card,html[data-theme=dark] .week-navigation,html[data-theme=dark] .schedule-display{border-color:var(--line);background:#1e1919e0}html[data-theme=dark] .notification-card--unread{background:var(--surface-strong);box-shadow:0 10px 30px #00000047}html[data-theme=dark] .day-column{border-color:var(--line);background:#1d1919}html[data-theme=dark] .week-grid--timeline,html[data-theme=dark] .day-column--timeline{background:#1d1919}html[data-theme=dark] .day-timeline{background:repeating-linear-gradient(to bottom, transparent 0, transparent 59px, var(--line) 59px, var(--line) 60px)}html[data-theme=dark] .schedule-display__content input{border-color:var(--line);background:#171313}html[data-theme=dark] .availability-block{background:#54d28b2e;border-color:#57d38b7a #57d38b7a #57d38b7a #54d28b}html[data-theme=dark] .participant-options{background:#252020;box-shadow:0 12px 28px #00000059}@media (max-width:1600px){.schedule-workspace{grid-template-columns:minmax(0,1fr) minmax(500px,540px)}}@media (max-width:760px){.schedule-display__heading{display:grid}.schedule-display__hint{text-align:left;max-width:none}.schedule-display__pedagogue-list{grid-template-columns:1fr}}html[data-theme=dark] .lesson-card{background:#302817}html[data-theme=dark] .birthday-marker{border-color:#e2b8496b}html[data-theme=dark] .theme-toggle,html[data-theme=dark] .directory-jump-nav{border-color:var(--line);background:#1d1919f0}html[data-theme=dark] .danger-button{color:var(--ink);background:#5b4140}@media (max-width:980px){.directory-layout,.availability-weeks,.attendance-layout{grid-template-columns:1fr}.attendance-lesson-list{position:static}}@media (max-width:860px){.pedagogue-filters{grid-template-columns:repeat(2,minmax(0,1fr));width:100%}.contact-editor-row__remove{justify-self:start}}@media (max-width:1180px){.schedule-workspace{grid-template-columns:1fr}.schedule-tools{grid-template-columns:minmax(0,2fr) minmax(260px,1fr);position:static}}@media (max-width:680px){.app-sidebar .app-nav,.schedule-tools{grid-template-columns:1fr}.schedule-tools{gap:12px}.schedule-editor{padding:14px}.editor-heading{margin-bottom:12px}.editor-heading h2{font-size:1.22rem}.week-navigation{flex-wrap:wrap}.week-navigation strong{text-align:center;order:-1;width:100%}.schedule-editor .form-grid{grid-template-columns:minmax(0,1fr)}.schedule-time-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.schedule-time-row>label:nth-child(3){grid-column:1/-1}.schedule-editor .recurrence-editor{gap:8px;padding:10px}.schedule-people-row{grid-template-columns:1fr}.schedule-people-row__help{grid-column:auto}.attendance-journal__heading,.attendance-row{flex-direction:column;align-items:stretch}.attendance-row select{width:100%;min-height:44px}.feedback-widget{right:max(12px, env(safe-area-inset-right));bottom:calc(env(safe-area-inset-bottom) + 12px)}.feedback-widget__trigger{width:48px;height:48px}.schedule-editor .form-grid__wide{grid-column:auto}.directory-section__heading{flex-direction:column;align-items:stretch}.directory-search{width:100%}.pedagogue-filters{grid-template-columns:1fr}.availability-row{grid-template-columns:1fr 1fr}.availability-row .availability-toggle{grid-column:1/-1}.calendar-weeks{display:none}.schedule-mobile-days{gap:14px;display:grid}.schedule-mobile-days__picker,.journal-mobile-list__lessons{scroll-snap-type:x proximity;gap:8px;padding:2px 1px 8px;display:flex;overflow-x:auto}.schedule-mobile-days__day{text-align:center;justify-content:center;align-items:center;line-height:1.2;display:inline-flex}.schedule-mobile-days__day,.journal-mobile-list__lesson{scroll-snap-align:start;border:1px solid var(--line);min-height:44px;color:var(--ink);background:var(--surface);font:inherit;border-radius:12px;flex:none;padding:8px 12px;font-size:.84rem;font-weight:780}.schedule-mobile-days__day--active,.journal-mobile-list__lesson--active{border-color:var(--brand-red);color:var(--on-brand-red);background:var(--brand-red)}.schedule-mobile-days__list{gap:10px;display:grid}.schedule-mobile-days__list h2,.journal-mobile-list__students h2{margin:0;font-size:1rem}.schedule-mobile-lesson{border:1px solid var(--line);width:100%;min-height:108px;color:var(--ink);background:var(--surface);font:inherit;text-align:left;border-radius:14px;gap:3px;padding:13px 14px;line-height:1.35;display:grid}.schedule-mobile-lesson time{color:var(--brand-red);font-size:.82rem;font-weight:820}.schedule-mobile-lesson strong,.schedule-mobile-lesson span,.schedule-mobile-lesson small{overflow-wrap:anywhere;min-width:0}.schedule-mobile-lesson small,.schedule-mobile-days__empty{color:var(--muted);margin:0}.schedule-mobile-lesson em{color:var(--brand-red);font-size:.76rem;font-style:normal;font-weight:780}.schedule-mobile-lesson--deleted{opacity:.65}.journal-workspace>.journal-table-scroll{display:none}.journal-mobile-list{gap:14px;padding:14px;display:grid}.journal-mobile-list__students{gap:8px;display:grid}.journal-mobile-list__student{border:1px solid var(--line);width:100%;min-height:60px;color:var(--ink);background:var(--surface);text-align:left;border-radius:12px;justify-content:space-between;align-items:center;gap:12px;padding:10px 12px;display:flex}.journal-mobile-list__student>span{gap:3px;min-width:0;display:grid}.journal-mobile-list__student strong,.journal-mobile-list__student small{overflow-wrap:anywhere}.journal-mobile-list__student small{color:var(--muted)}.journal-mobile-list__student b{min-width:44px;min-height:40px;color:var(--brand-red);background:var(--brand-red-soft);border-radius:9px;place-items:center;display:grid}.journal-mobile-list__presence{border-top:2px solid var(--line);justify-content:space-between;gap:12px;padding:12px;font-weight:700;display:flex}.journal-mobile-summary{border-top:2px solid var(--line);padding-top:12px}.journal-mobile-summary>summary{cursor:pointer;font-weight:700}.journal-mobile-summary__student{border-bottom:1px solid var(--line);overflow-wrap:anywhere;gap:6px;padding:12px 0;display:grid}.journal-mobile-summary__student>span{color:var(--muted)}.journal-mobile-summary__student select,.journal-cell-editor :is(select,button){min-height:44px}}html[data-theme=dark] .app-shell :is(input:not([type]),input[type=date],input[type=datetime-local],input[type=email],input[type=month],input[type=number],input[type=password],input[type=search],input[type=tel],input[type=text],input[type=time],input[type=url],textarea){border-color:var(--panel-border);color:var(--panel-text);background:var(--panel-surface-solid)}.app-shell .group-members-dialog.settings-card{background:var(--panel-surface-solid)}.attendance-statistics{padding:16px}.attendance-statistics__table-scroll{min-width:0;max-height:min(420px,55dvh);overflow:auto}.attendance-statistics .journal-table :is(th,td):first-child{text-align:left;white-space:normal;overflow-wrap:anywhere;width:180px;min-width:180px;max-width:180px}.attendance-statistics .journal-table :is(th,td):nth-child(2){position:static;left:auto}.attendance-statistics .journal-table thead th{z-index:4;background:var(--panel-surface-solid);position:sticky;top:0}.attendance-statistics .journal-table thead th:nth-child(2){position:sticky;left:auto}.attendance-statistics .journal-table thead th:first-child{z-index:5}.attendance-lesson-list ul{max-height:min(420px,55dvh);overflow-y:auto}.attendance-lesson-list>.secondary-button{margin-top:12px}.payment-journal .payment-dialog.settings-card{background:var(--panel-surface-solid)}.payment-dialog>h2{padding-right:36px}.invoice-workspace .invoice-link-dialog.settings-card{background:var(--panel-surface-solid)}.not-found-heading{justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px;display:flex}.not-found-heading .eyebrow{margin:0}.not-found-card h1{overflow-wrap:anywhere;font-size:clamp(1.5rem,5vw,2rem);line-height:1.2}.availability-row .availability-toggle,.availability-row input[type=time]{min-width:0}.availability-row .availability-toggle span{white-space:normal;overflow-wrap:anywhere}@container (max-width:440px){.availability-row{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.availability-row .availability-toggle{grid-column:1/-1}}.page-error-actions{flex-wrap:wrap;align-items:center;gap:12px;display:flex}
