@font-face{font-family:Inter;src:url(/fonts/inter-regular.woff)format("woff");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Inter;src:url(/fonts/inter-semibold.woff)format("woff");font-weight:600 900;font-style:normal;font-display:swap}@font-face{font-family:UpheavalPro;src:url(/fonts/upheaval-pro.woff)format("woff");font-weight:500;font-style:normal;font-display:swap}:root{--brand-font-body:"Inter", Arial, Helvetica, sans-serif;--brand-font-display:"UpheavalPro", "Inter", Arial, Helvetica, sans-serif;--bg:#030812;--brand-card:#243341;--brand-text:#f6f6f6;--brand-muted:silver;--brand-accent:#fee7a7;--brand-student-name:#4bdcff;--brand-student-name-hover:#7ee8ff;--surface:#243341e6;--ink:var(--brand-text);--muted:var(--brand-muted);--line:#6fbfff47;--blue:#20a7ff;--green:#26d78b;--amber:#fee7a7;--shadow:0 18px 44px #0000005c}*{box-sizing:border-box}button,a[href],[role=button]{-webkit-user-select:none;user-select:none;caret-color:#0000}input,textarea,select{-webkit-user-select:text;user-select:text;caret-color:auto}body{background:var(--bg);min-height:100vh;color:var(--ink);font-family:var(--brand-font-body);margin:0}html,body{max-width:100%}.offline-status{z-index:120;color:#146c43;background:#e7f7ef;border:1px solid #bfe8d3;border-radius:8px;max-width:min(320px,100vw - 24px);padding:9px 11px;font-size:12px;font-weight:800;line-height:1.25;position:fixed;bottom:12px;right:12px;box-shadow:0 12px 24px #1c2c4824}.offline-status.offline{color:#8a5200;background:#fff4df;border-color:#efd19e}.page-shell{width:min(1240px,100vw - 32px);margin:0 auto;padding:28px 0 44px}.topbar{justify-content:space-between;align-items:flex-start;gap:24px;margin-bottom:22px;display:flex}.eyebrow{color:var(--blue);text-transform:uppercase;margin:0 0 8px;font-size:13px;font-weight:800}h1,h2,p{margin:0}h1{letter-spacing:0;max-width:820px;font-size:42px;line-height:1.04}h2{font-size:20px}.subhead{max-width:760px;color:var(--muted);margin-top:12px;font-size:17px;line-height:1.45}.source-pill{text-align:center;min-width:124px;min-height:36px;color:var(--blue);background:#ecf3ff;border:1px solid #cfe0fb;border-radius:999px;padding:8px 13px;font-size:15px;font-weight:800}.source-pill.supabase{color:var(--green);background:#e7f7ef;border-color:#bfe8d3}.source-pill.import{color:var(--amber);background:#fff4df;border-color:#efd19e}.topbar-actions{flex-wrap:wrap;justify-content:flex-end;align-items:flex-start;gap:8px;width:min(430px,40vw);display:flex}.user-pill{border:1px solid var(--line);background:var(--surface);border-radius:8px;align-items:center;gap:9px;min-width:0;min-height:36px;padding:7px 11px;display:flex;box-shadow:0 10px 22px #1c2c480f}.user-pill span{display:none}.user-pill small{color:var(--muted);text-transform:uppercase;font-size:11px;font-weight:800}.user-pill strong{max-width:145px;color:var(--ink);text-overflow:ellipsis;white-space:nowrap;font-size:14px;overflow:hidden}.user-pill a{color:var(--blue);font-size:13px;font-weight:800;text-decoration:none}.user-pill a:hover,.user-pill a:focus-visible{outline:none;text-decoration:underline}.scope-switchers{flex:100%;place-items:center end;gap:6px;display:grid}.switcher-group{align-items:center;gap:6px;display:flex}.switcher-label{color:var(--muted);text-transform:uppercase;font-size:11px;font-weight:800}.season-switcher{border:1px solid var(--line);background:var(--surface);border-radius:8px;gap:6px;padding:4px;display:flex}.season-switcher a{color:#54637a;text-align:center;border-radius:8px;min-width:82px;padding:7px 10px;font-size:13px;font-weight:800;text-decoration:none}.season-switcher a.active{background:var(--blue);color:#fff}.season-switcher a:not(.active):hover,.season-switcher a:not(.active):focus-visible{color:var(--blue);background:#ecf3ff;outline:none}.workspace-nav{z-index:10;border:1px solid var(--line);background:#fffffff0;border-radius:8px;gap:8px;margin-bottom:14px;padding:8px;display:flex;position:sticky;top:0;overflow-x:auto;box-shadow:0 12px 24px #1c2c4814}.workspace-nav a{color:#32425c;white-space:nowrap;border-radius:8px;flex:none;min-height:38px;padding:10px 13px;font-size:14px;font-weight:800;text-decoration:none}.workspace-nav .nav-action{background:var(--blue);color:#fff;margin-left:0;padding-inline:18px;box-shadow:0 8px 18px #1d62d62e}.nav-branch-switcher{flex:none;align-items:center;gap:5px;margin-left:auto;margin-right:14px;display:flex}.nav-branch-switcher a{border:1px solid var(--line);color:#32425c;background:#fff;border-radius:8px;place-items:center;min-width:44px;min-height:34px;padding:0 9px;font-size:13px;font-weight:900;line-height:1;text-decoration:none;display:grid;box-shadow:0 5px 12px #1c2c4814}.nav-branch-switcher a.active{background:var(--blue);color:#fff;border-color:#1d62d6;box-shadow:0 7px 15px #1d62d633}.workspace-nav a:hover,.workspace-nav a:focus-visible{color:var(--blue);background:#ecf3ff;outline:none}.nav-branch-switcher a:hover,.nav-branch-switcher a:focus-visible{color:var(--blue);background:#ecf3ff;border-color:#9fc0f4;outline:none}.nav-branch-switcher a.active:hover,.nav-branch-switcher a.active:focus-visible,.workspace-nav .nav-action:hover,.workspace-nav .nav-action:focus-visible{color:#fff;background:#164fb3}.kpi-grid{grid-template-columns:minmax(280px,2fr) repeat(4,minmax(120px,1fr));gap:10px;margin-bottom:14px;display:grid}.operations-panel{gap:14px;margin-bottom:18px;display:grid}.operations-panel.deferred{margin-top:18px;margin-bottom:0;padding:16px}.operations-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;display:grid}.task-card{border:1px solid var(--line);min-height:118px;color:var(--ink);background:#fbfdff;border-radius:8px;grid-template-columns:1fr auto;align-content:start;align-items:start;gap:10px;padding:14px;text-decoration:none;display:grid}.task-card.compact{gap:7px;min-height:82px;padding:12px}.task-card span,.task-card small{color:var(--muted)}.task-card span{grid-column:1;min-width:0;font-size:13px;font-weight:800}.task-card strong{text-align:right;grid-column:2;font-size:32px;line-height:1}.task-card.compact strong{font-size:26px}.task-card.compact span,.task-card.compact small{font-size:12px}.task-card small{text-overflow:ellipsis;white-space:nowrap;grid-column:1/-1;overflow:hidden}.task-card.green{background:#f2fbf6;border-color:#bfe8d3}.task-card.amber{background:#fff8ea;border-color:#efd19e}.task-card.red{background:#fff4f3;border-color:#f3b8b2}.mobile-booking-shortcut{display:none}.login-shell{background:var(--bg);place-items:center;min-height:100vh;padding:28px 16px;display:grid}.login-card{border:1px solid var(--line);background:var(--surface);width:min(440px,100%);box-shadow:var(--shadow);border-radius:8px;padding:28px}.login-card h1{max-width:none;font-size:32px;line-height:1.08}.login-copy{color:var(--muted);margin-top:10px;font-size:15px;line-height:1.45}.login-alert{color:#7b4e0e;background:#fff8ea;border:1px solid #efd19e;border-radius:8px;margin-top:16px;padding:11px 12px;font-size:13px;line-height:1.4}.login-alert.danger{color:#9e2f22;background:#fff4f3;border-color:#f3b8b2}.login-form{gap:12px;margin-top:18px;display:grid}.login-form label{gap:6px;display:grid}.login-form label span{color:var(--muted);text-transform:uppercase;font-size:11px;font-weight:800}.login-form input,.login-form select,.login-form button{width:100%;min-height:44px;font:inherit;border-radius:8px}.login-form input,.login-form select{border:1px solid var(--line);color:var(--ink);background:#fbfdff;padding:10px 12px}.login-form input:focus,.login-form select:focus{border-color:#9dbcf1;outline:none;box-shadow:0 0 0 3px #1d62d624}.login-form button{background:var(--blue);color:#fff;cursor:pointer;border:0;font-weight:800}.login-form button:disabled{cursor:not-allowed;background:#9aa8bd}.task-card:hover,.task-card:focus-visible{border-color:#cfe0fb;outline:none;box-shadow:inset 0 0 0 1px #cfe0fb}.payment-day-switch a:focus-visible{outline-offset:2px;outline:2px solid #1d62d659}.operations-detail-grid{grid-template-columns:minmax(280px,300px) minmax(280px,300px) minmax(360px,1fr);justify-content:start;align-items:start;gap:10px;display:grid}.operation-list{border:1px solid var(--line);background:var(--surface);min-height:160px;box-shadow:var(--shadow);border-radius:8px;flex-direction:column;padding:14px;scroll-margin-top:82px;display:flex}.operation-list--leads .lead-workspace{gap:8px;max-height:612px;padding-right:3px}.operation-list--leads .lead-card{gap:8px;padding:9px}.operation-list--leads .lead-card-head{align-items:flex-start}.operation-list--leads .lead-card-head strong,.operation-list--leads .lead-card-head span{font-size:13px;line-height:1.2}.operation-list--leads .lead-meta{gap:6px;font-size:11px}.operation-list--leads .lead-meta span{padding:3px 6px}.operation-list--leads .lead-comment{padding-top:0;font-size:12px}.operation-list--leads .lead-actions-panel{gap:7px}.operation-list-head{justify-content:space-between;align-items:center;gap:10px;margin:0 0 10px;display:flex}.operation-list h3{margin:0 0 10px;font-size:15px}.operation-list-head h3{margin:0}.payment-day-switch{gap:6px;display:flex}.payment-day-switch a{color:#324159;text-align:center;background:#f6f9fd;border:1px solid #d8e4f5;border-radius:999px;place-items:center;min-width:72px;min-height:30px;padding:7px 10px;font-size:12px;font-weight:800;text-decoration:none;display:grid}.payment-day-switch a.active{color:#fff;background:#1d62d6;border-color:#1d62d6}.operation-items{gap:8px;max-height:612px;padding-right:3px;display:grid;overflow-y:auto}.operation-item{min-height:54px;color:var(--ink);background:#fbfdff;border:1px solid #e5edf7;border-radius:8px;justify-content:space-between;align-items:center;gap:10px;padding:9px;text-decoration:none;display:flex}.operation-item:hover,.operation-item:focus-visible{border-color:#cfe0fb;outline:none;box-shadow:inset 0 0 0 1px #cfe0fb}.operation-item strong,.operation-item span{display:block}.operation-item strong{text-overflow:ellipsis;white-space:nowrap;font-size:14px;line-height:1.2;overflow:hidden}.operation-item span{color:var(--muted);margin-top:3px;font-size:12px;line-height:1.25}.operation-badge{border-radius:999px;flex:none;padding:5px 7px;font-size:12px;font-weight:800}.operation-badge.amber{color:var(--amber);background:#fff4df}.operation-badge.red{color:#b42318;background:#fff0ef}.kpi-card,.panel{background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:8px}.kpi-card{flex-direction:column;justify-content:space-between;min-height:118px;padding:18px;display:flex}.kpi-card span{color:var(--muted);font-size:13px;font-weight:700}.kpi-card strong{font-size:34px;line-height:1}.kpi-card.compact strong{font-size:22px;line-height:1.15}.content-grid{grid-template-columns:1.4fr 1fr 1fr;gap:16px;display:grid}.panel{padding:16px}.panel[id]{scroll-margin-top:76px}.panel.wide{grid-column:span 2}.season-preview-panel{margin-bottom:14px}.season-preview-grid,.season-risk-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.season-preview-grid{margin-bottom:12px}.season-preview-metric,.season-risk-list{border:1px solid var(--line);background:#fbfdff;border-radius:8px;min-width:0;padding:10px}.season-preview-metric span,.season-risk-head strong{color:#667085;text-transform:uppercase;font-size:11px;font-weight:900}.season-preview-metric strong{color:var(--ink);margin-top:5px;font-size:28px;line-height:1;display:block}.season-preview-metric small,.season-risk-list li,.season-risk-list p{color:#536179;font-size:12px;font-weight:700;line-height:1.3}.season-risk-head{justify-content:space-between;align-items:center;gap:8px;margin-bottom:8px;display:flex}.season-risk-head span{color:#245fb8;text-align:center;background:#eef4ff;border-radius:999px;min-width:24px;font-size:12px;font-weight:900;line-height:24px}.season-risk-list ul{gap:5px;margin:0;padding-left:16px;display:grid}.season-manager-panel{margin-bottom:14px}.season-manager-copy{grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto;align-items:end;gap:10px;margin-bottom:10px;display:grid}.season-manager-copy label{color:#667085;text-transform:uppercase;gap:5px;min-width:0;font-size:12px;font-weight:800;display:grid}.season-manager-copy select,.season-manager-copy button{border:1px solid var(--line);min-width:0;min-height:38px;font:inherit;border-radius:7px}.season-manager-copy select{width:100%;color:var(--ink);background:#fff;padding:0 10px}.season-manager-copy button{background:var(--blue);color:#fff;padding:0 12px;font-weight:800}.season-manager-copy button:disabled{cursor:not-allowed;opacity:.55}.season-manager-editor,.season-manager-season-editor,.season-manager-bulk-editor{background:#fbfdff;border:1px solid #e5edf7;border-radius:8px;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:12px 0;padding:10px;display:grid}.season-manager-season-editor{grid-template-columns:repeat(5,minmax(0,1fr)) auto auto}.season-manager-bulk-editor{grid-template-columns:minmax(180px,260px) minmax(0,1fr) auto}.season-manager-editor label,.season-manager-season-editor label,.season-manager-bulk-editor label{color:#667085;text-transform:uppercase;gap:5px;min-width:0;font-size:12px;font-weight:800;display:grid}.season-manager-editor input,.season-manager-editor select,.season-manager-editor button,.season-manager-season-editor input,.season-manager-season-editor select,.season-manager-season-editor button,.season-manager-bulk-editor select,.season-manager-bulk-editor textarea,.season-manager-bulk-editor button{border:1px solid var(--line);min-width:0;min-height:38px;font:inherit;border-radius:7px}.season-manager-editor input,.season-manager-editor select,.season-manager-season-editor input,.season-manager-season-editor select,.season-manager-bulk-editor select,.season-manager-bulk-editor textarea{width:100%;color:var(--ink);background:#fff;padding:0 10px}.season-manager-bulk-editor textarea{resize:vertical;min-height:86px;padding:9px 10px}.season-manager-bulk-preview{color:#32425c;background:#fff;border:1px solid #dbe7f5;border-radius:8px;grid-column:1/-1;gap:8px;padding:10px;display:grid}.season-manager-bulk-preview>strong{color:var(--ink);font-size:13px}.season-manager-bulk-impact{flex-wrap:wrap;gap:6px;display:flex}.season-manager-bulk-impact span{color:#46566f;background:#eef5ff;border-radius:999px;padding:4px 7px;font-size:12px;font-weight:800}.season-manager-bulk-warning,.season-manager-field-warning{color:#b45309;margin:0;font-size:12px;font-weight:800}.season-manager-bulk-preview ul{gap:6px;margin:0;padding:0;list-style:none;display:grid}.season-manager-bulk-preview li{background:#f9fbff;border:1px solid #edf2f8;border-radius:7px;gap:2px;padding:7px 9px;display:grid}.season-manager-bulk-preview small{color:#667085;font-weight:700}.season-manager-bulk-errors{color:#b42318;gap:6px;font-weight:800;display:grid}.season-manager-bulk-errors li{background:#fff5f3;border-color:#ffd6d1}.season-manager-editor button,.season-manager-season-editor button,.season-manager-bulk-editor button{background:var(--blue);color:#fff;align-self:end;padding:0 12px;font-weight:800}.season-manager-editor button.secondary,.season-manager-season-editor button.secondary,.season-manager-bulk-editor button.secondary{color:#32425c;background:#f4f7fc}.season-manager-bulk-editor .season-manager-file-button{border:1px solid var(--line);color:#32425c;cursor:pointer;min-height:38px;font-size:inherit;text-align:center;text-transform:none;background:#f4f7fc;border-radius:7px;place-content:center;align-self:end;padding:0 12px;font-weight:800}.season-manager-file-button input{display:none}.parent-portal-shell{min-height:100dvh;color:var(--brand-text);padding:28px}.parent-portal-header,.parent-portal-card{width:min(100%,960px);box-shadow:var(--brand-shadow);background:#12212ff0;border:1px solid #63d9ff2e;border-radius:8px;margin:0 auto 16px}.parent-portal-header{justify-content:space-between;align-items:flex-start;gap:16px;padding:18px;display:flex}.parent-portal-header-body{gap:5px;display:grid}.parent-portal-header h1,.parent-portal-card h1,.parent-portal-card h2,.parent-portal-card h3{color:var(--brand-text);margin:0}.parent-portal-header span,.parent-portal-card p,.parent-portal-card .muted{color:var(--brand-muted)}.parent-portal-header span{margin-top:3px}.parent-portal-card p{margin:0}.parent-portal-subtitle{color:var(--brand-accent);letter-spacing:0;text-transform:uppercase;margin:4px 0 0;font-size:13px;font-weight:900}.parent-portal-header a,.parent-contact-actions a,.parent-login-form button,.parent-portal-link-result button{min-height:38px;color:var(--brand-text);background:#0d1c2be6;border:1px solid #63d9ff47;border-radius:8px;justify-content:center;align-items:center;font-weight:800;text-decoration:none;display:inline-flex}.parent-portal-header-action{align-self:flex-start;min-width:72px;padding:0 14px}.parent-portal-card{padding:18px}.parent-login-card{row-gap:8px;margin-top:12vh;display:grid}.parent-login-card h1{font-size:22px;line-height:1.1}.parent-login-card .parent-portal-subtitle{color:var(--brand-accent);font-size:15px;line-height:1.25}.parent-login-copy{max-width:560px;color:var(--brand-muted);font-size:15px;line-height:1.35}.parent-login-form{gap:10px;margin-top:10px;display:grid}.parent-login-form button{color:#fff;background:linear-gradient(135deg,#0757ff,#18c8ff)}.parent-student-stack,.parent-list,.parent-chip-row,.parent-contact-actions{gap:10px;display:grid}.parent-student-card{gap:22px;display:grid}.parent-student-card section{row-gap:14px;display:grid}.parent-student-head,.parent-list-item,.parent-progress-summary{justify-content:space-between;align-items:center;gap:12px;min-width:0;display:flex}.parent-student-title{min-width:0}.parent-student-title h2{font-size:28px;line-height:1.05}.parent-student-head strong,.parent-metrics span,.parent-chip-row span,.parent-list-item,.parent-subscription-slot,.parent-topic-chip{color:var(--brand-text);background:#0d1c2bdb;border:1px solid #63d9ff29;border-radius:8px}.parent-list-item{padding:10px}.parent-list-item span{color:var(--brand-muted);overflow-wrap:anywhere}.parent-metrics{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.parent-metrics span,.parent-chip-row span{padding:10px}.parent-metrics span{align-content:start;gap:3px;min-height:74px;display:grid}.parent-metrics small{color:var(--brand-muted);text-transform:uppercase;font-size:11px;font-weight:900}.parent-metrics strong{color:var(--brand-accent);font-size:22px;line-height:1.1;display:block}.parent-metrics .parent-plan-value{color:var(--brand-text);font-size:18px;line-height:1.15}.parent-metrics em{color:var(--brand-muted);font-size:12px;font-style:normal;font-weight:800}.parent-chip-row{grid-template-columns:repeat(auto-fit,minmax(160px,1fr))}.parent-schedule-list{flex-wrap:wrap;gap:8px;display:flex}.parent-schedule-chip{color:#fee7a7;background:#4435126b;border:1px solid #ffd770b8;border-radius:999px;width:fit-content;margin:0;padding:6px 10px;font-size:13px;font-weight:900}.parent-current-subscription{background:#091f317a;border:1px solid #49df9e57;border-radius:8px;gap:10px;padding:10px;display:grid}.parent-current-subscription.unpaid{border-color:#fee7a77a}.parent-current-subscription.unpaid .parent-current-subscription-head b{color:#fee7a7;border-color:#fee7a7b8}.parent-current-subscription-head{justify-content:space-between;align-items:start;gap:10px;display:flex}.parent-current-subscription-head div,.parent-current-subscription-copy{gap:4px;display:grid}.parent-current-subscription-head strong{color:var(--brand-text);font-size:15px;font-weight:900}.parent-current-subscription-head span{color:var(--brand-muted);font-size:12px;font-weight:900}.parent-current-subscription-head b{color:#9af7cb;border:1px solid #49df9eb8;border-radius:999px;width:fit-content;padding:6px 10px;font-size:12px}.parent-subscription-progress{background:#94a3b847;border-radius:999px;height:8px;overflow:hidden}.parent-subscription-progress i{border-radius:inherit;background:linear-gradient(90deg,#1478ff,#24c8f4);height:100%;display:block}.parent-subscription-grid{grid-template-columns:repeat(auto-fill,minmax(136px,1fr));gap:8px;display:grid}.parent-subscription-slot{gap:4px;min-height:96px;padding:10px;display:grid}.parent-subscription-slot strong{width:26px;height:26px;color:var(--brand-accent);background:#63d9ff1f;border-radius:999px;place-items:center;font-size:12px;display:grid}.parent-subscription-slot span{color:var(--brand-text);font-weight:900}.parent-subscription-slot small{color:var(--brand-muted);font-size:12px;font-weight:700;line-height:1.35}.parent-subscription-slot.visited,.parent-subscription-slot.makeup{background:#06392f85;border-color:#49df9e61}.parent-subscription-slot.no-show{background:#4b141c8f;border-color:#f871716b}.parent-subscription-slot.excused,.parent-subscription-slot.cancelled{background:#2a35488f;border-color:#94a3b859}.parent-subscription-slot.pending{background:#44351261;border-style:dashed;border-color:#ffd77057}.parent-progress-grid{grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:10px;display:grid}.parent-progress-summary{margin-top:8px}.parent-topic-chip{border-left-width:5px;min-height:58px;padding:10px;font-weight:900}.parent-topic-chip.tone-0{background:#47556952;border-left-color:#94a3b8}.parent-topic-chip.tone-1{background:#7f1d1d47;border-left-color:#ef4444}.parent-topic-chip.tone-2{background:#78350f4d;border-left-color:#f59e0b}.parent-topic-chip.tone-3{background:#14532d47;border-left-color:#22c55e}.parent-topic-chip.tone-4{background:#155e7547;border-left-color:#06b6d4}.parent-topic-chip.tone-5{background:#4c1d9547;border-left-color:#8b5cf6}.parent-topic-chip.tone-6{background:#1e40af47;border-left-color:#3b82f6}.parent-contact-actions{grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}.parent-rules-card,.parent-contact-card{row-gap:12px;display:grid}.parent-portal-link-result{background:#06392f61;border:1px solid #49df9e38;border-radius:8px;gap:8px;min-width:0;padding:10px;display:grid}.parent-portal-link-result input{width:100%;min-width:0;color:var(--brand-text);background:#0c192ff0;border:1px solid #63d9ff2e;border-radius:8px}@media (max-width:720px){.parent-portal-shell{padding:12px}.parent-portal-header,.parent-portal-card{padding:16px}.parent-portal-header,.parent-student-head,.parent-list-item,.parent-progress-summary{flex-direction:column;align-items:stretch}.parent-portal-header h1{font-size:30px;line-height:1}.parent-portal-subtitle{font-size:10px}.parent-portal-header span{font-size:15px}.parent-portal-header-action{align-self:flex-start;min-width:68px;min-height:34px;padding:0 12px;font-size:13px}.parent-login-card h1{font-size:24px;line-height:1.08}.parent-login-card .parent-portal-subtitle{font-size:11px;line-height:1.2}.parent-login-copy{font-size:19px;line-height:1.28}.parent-metrics{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.parent-contact-actions{grid-template-columns:1fr}.parent-student-card{gap:20px}.parent-student-card section{row-gap:12px}.parent-student-card h3{font-size:16px;line-height:1.15}.parent-student-title h2{font-size:19px;line-height:1.12}.parent-metrics span{gap:2px;min-height:0;padding:8px 7px}.parent-metrics small{font-size:8px}.parent-metrics strong{font-size:15px;line-height:1}.parent-metrics .parent-plan-value{font-size:12px;line-height:1.1}.parent-metrics em{font-size:10px}.parent-schedule-chip{padding:6px 9px;font-size:11px}.parent-current-subscription-head strong,.parent-subscription-slot span{font-size:12px}.parent-current-subscription-head b{padding:5px 9px;font-size:10px}.parent-subscription-slot small{font-size:10px}}.admin-schedule-page{gap:18px;width:100%;min-width:0;max-width:100%;display:grid}.admin-schedule-season-summary{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.admin-schedule-season-card{min-width:0;color:var(--brand-text);text-align:left;background:linear-gradient(145deg,#081c2bf0,#09111ff5);border:1px solid #72e2ff38;border-radius:12px;gap:6px;padding:18px;display:grid}.admin-schedule-season-card.future{background:linear-gradient(145deg,#362b0fb8,#0c1420f5);border-color:#fee7a757}.admin-schedule-season-card.selected{box-shadow:0 0 0 2px #72e2ff6b}.admin-schedule-season-card:disabled{opacity:.55}.admin-schedule-season-card span,.admin-schedule-control-label,.admin-schedule-editor label>span,.admin-schedule-bulk-controls label>span,.admin-schedule-section-head span{color:var(--brand-muted);letter-spacing:.06em;text-transform:uppercase;font-size:11px;font-weight:800}.admin-schedule-season-card strong{color:#f7fbff;font-size:18px}.admin-schedule-season-card p,.admin-schedule-season-card small{color:#aebdca;margin:0;line-height:1.45}.admin-schedule-toolbar{background:#07101dd1;border:1px solid #8097ab33;border-radius:12px;grid-template-columns:minmax(240px,1.3fr) minmax(240px,1fr) minmax(180px,.7fr);gap:14px;padding:14px;display:grid}.admin-schedule-toolbar>div{align-content:start;gap:7px;min-width:0;display:grid}.admin-schedule-switcher{flex-wrap:wrap;gap:6px;display:flex}.admin-schedule-switcher button{color:#c9d4df;background:#101d2bf0;border:1px solid #8097ab52;border-radius:7px;min-height:34px;padding:7px 10px;font-size:12px;font-weight:800}.admin-schedule-switcher button.active{color:#ebfbff;background:#184959db;border-color:#72e2ffb8}.admin-schedule-future-note,.admin-schedule-message{color:#fee7a7;background:#45340e57;border:1px solid #fee7a752;border-radius:10px;padding:12px 14px;line-height:1.45}.admin-schedule-selection-bar{color:#c9d4df;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;display:flex}.admin-schedule-selection-bar label,.admin-schedule-group-card-head label{align-items:center;gap:8px;font-weight:800;display:flex}.admin-schedule-grid-scroll{scrollbar-color:#2c6678 #09131f;width:100%;min-width:0;padding-bottom:8px;overflow-x:auto}.admin-schedule-grid{grid-template-columns:repeat(7,minmax(150px,1fr));gap:10px;min-width:1160px;display:grid}.admin-schedule-day{background:#07101db8;border:1px solid #8097ab33;border-radius:10px;align-content:start;gap:9px;min-width:0;padding:10px;display:grid}.admin-schedule-day>header{color:#edf7ff;justify-content:space-between;align-items:center;gap:8px;min-height:28px;font-size:12px;display:flex}.admin-schedule-day>header span{color:#72e2ff;background:#72e2ff1f;border-radius:999px;place-items:center;min-width:24px;min-height:24px;display:grid}.admin-schedule-empty-day{color:#78899a;text-align:center;margin:8px 0;font-size:12px}.admin-schedule-group-card{background:#0c1a28f2;border:1px solid #72e2ff33;border-radius:9px;gap:7px;min-width:0;padding:10px;display:grid}.admin-schedule-group-card.inactive{opacity:.68;border-color:#8097ab33}.admin-schedule-group-card.overfilled{border-color:#ff8b7894}.admin-schedule-group-card-head,.admin-schedule-section-head{justify-content:space-between;align-items:center;gap:10px;display:flex}.admin-schedule-group-card-head button{min-height:26px;padding:4px 6px;font-size:9px}.admin-schedule-group-card>strong,.admin-schedule-group-card>p,.admin-schedule-group-card>small{overflow-wrap:anywhere;min-width:0;margin:0}.admin-schedule-group-card>strong{color:#f4fbff;font-size:12px;line-height:1.3}.admin-schedule-group-card>p,.admin-schedule-group-card>small{color:#9fb0bf;font-size:10px;line-height:1.35}.admin-schedule-capacity{background:#030b14a8;border-radius:7px;justify-content:space-between;align-items:center;gap:6px;padding:7px;display:flex}.admin-schedule-capacity span{color:#fee7a7;font-weight:900}.admin-schedule-capacity small{color:#aebdca;text-align:right;font-size:9px}.admin-schedule-statuses{flex-wrap:wrap;gap:5px;display:flex}.admin-schedule-statuses span{color:#b7c5d1;background:#56687838;border-radius:999px;padding:3px 5px;font-size:8px;font-weight:900}.admin-schedule-statuses span.ok,.admin-schedule-statuses span.public{color:#91e4bb;background:#368b6438}.admin-schedule-statuses span.closed{color:#ffd097;background:#995c2c3d}.admin-schedule-list-scroll{border:1px solid #8097ab33;border-radius:10px;width:100%;min-width:0;overflow-x:auto}.admin-schedule-list{border-collapse:collapse;background:#07101dc7;width:100%;min-width:980px}.admin-schedule-list th,.admin-schedule-list td{color:#c9d4df;text-align:left;vertical-align:middle;border-bottom:1px solid #8097ab24;padding:9px;font-size:11px}.admin-schedule-list th{color:#7f95a8;letter-spacing:.05em;text-transform:uppercase;font-size:9px}.admin-schedule-editor,.admin-schedule-bulk-panel,.admin-schedule-readiness{background:#07101ddb;border:1px solid #8097ab38;border-radius:12px;gap:14px;min-width:0;padding:16px;display:grid}.admin-schedule-section-head>div{gap:4px;display:grid}.admin-schedule-section-head strong{color:#f3f9ff}.admin-schedule-section-head a{color:#72e2ff;font-size:12px;font-weight:800}.admin-schedule-editor-grid,.admin-schedule-bulk-controls{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;display:grid}.admin-schedule-editor label,.admin-schedule-bulk-controls label{align-content:start;gap:6px;min-width:0;display:grid}.admin-schedule-editor input,.admin-schedule-editor select,.admin-schedule-editor textarea,.admin-schedule-bulk-controls input,.admin-schedule-bulk-controls select{color:#edf7ff;background:#0c1a28;border:1px solid #8097ab57;border-radius:7px;width:100%;min-width:0}.admin-schedule-bulk-reason{grid-column:span 2}.admin-schedule-preview{background:#0a1926cc;border:1px solid #72e2ff33;border-radius:10px;gap:12px;padding:12px;display:grid}.admin-schedule-preview-summary{flex-wrap:wrap;gap:7px;display:flex}.admin-schedule-preview-summary span{color:#c8f5ff;background:#72e2ff1a;border-radius:999px;padding:5px 7px;font-size:10px;font-weight:800}.admin-schedule-conflicts{color:#ffc3b8;background:#51201b6b;border:1px solid #ff8b7859;border-radius:8px;margin:0;padding:10px 10px 10px 28px}.admin-schedule-preview-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.admin-schedule-preview-list article{background:#030b1485;border-radius:8px;gap:4px;min-width:0;padding:9px;display:grid}.admin-schedule-preview-list p,.admin-schedule-preview-list small{overflow-wrap:anywhere;margin:0}.admin-schedule-preview-list p{color:#c9d4df;font-size:10px;line-height:1.35}.admin-schedule-preview-list small{color:#72889b;text-transform:uppercase;font-size:8px;font-weight:900}.admin-schedule-check-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;display:grid}.admin-schedule-check-grid>div{background:#192835b3;border-radius:8px;gap:6px;min-width:0;padding:9px;display:grid}.admin-schedule-check-grid>div.blocking{background:#55221c7a}.admin-schedule-check-grid>div.info{background:#2c3c4c94}.admin-schedule-check-grid span{color:#9fb0bf;overflow-wrap:anywhere;min-width:0;font-size:9px;line-height:1.25}.admin-schedule-check-grid strong{color:#f3f9ff;font-size:17px}.admin-schedule-readiness>p,.admin-schedule-preview>p{color:#aebdca;margin:0;font-size:11px;line-height:1.45}@media (max-width:980px){.admin-schedule-toolbar,.admin-schedule-editor-grid,.admin-schedule-bulk-controls{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-schedule-check-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (max-width:600px){.admin-schedule-page{gap:12px;width:100%;min-width:0}.admin-schedule-season-summary,.admin-schedule-toolbar,.admin-schedule-editor-grid,.admin-schedule-bulk-controls,.admin-schedule-preview-list{grid-template-columns:minmax(0,1fr)}.admin-schedule-season-card,.admin-schedule-editor,.admin-schedule-bulk-panel,.admin-schedule-readiness{padding:12px}.admin-schedule-bulk-reason{grid-column:auto}.admin-schedule-check-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-schedule-section-head{flex-direction:column;align-items:flex-start}}.admin-center-heading-actions,.finance-week-toolbar,.finance-section-heading,.finance-row-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.admin-center-heading-actions,.finance-section-heading{justify-content:space-between}.admin-center-secondary-link,.finance-week-toolbar button,.finance-operation-form button,.finance-row-actions button{min-height:38px;color:var(--brand-text);font:inherit;cursor:pointer;background:#0d1c2beb;border:1px solid #6fbfff52;border-radius:8px;padding:8px 12px;font-size:13px;font-weight:800;text-decoration:none}.admin-center-card-link{color:inherit;text-decoration:none}.admin-center-card-link:hover,.admin-center-card-link:focus-visible,.admin-center-secondary-link:hover,.admin-center-secondary-link:focus-visible{border-color:#20a7ff;outline:none}.finance-week-stack,.finance-settings-stack{gap:14px;min-width:0;display:grid}.finance-settings-tabs{border:1px solid var(--line);background:#152738d1;border-radius:10px;gap:6px;min-width:0;max-width:100%;padding:6px;display:flex;overflow-x:auto}.finance-settings-tabs a{color:var(--brand-muted);white-space:nowrap;border-radius:7px;flex:none;padding:9px 12px;font-size:13px;font-weight:800;text-decoration:none}.finance-settings-tabs a.active{color:#fff;background:#20a7ff}.finance-settings-card-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;min-width:0;display:grid}.finance-settings-item{background:#1c3144d1;border:1px solid #6fbfff3d;border-radius:10px;gap:12px;min-width:0;padding:13px;display:grid}.finance-settings-item h3{margin:7px 0 4px}.finance-settings-item p,.finance-settings-item small,.finance-settings-hint{color:var(--brand-muted);line-height:1.4}.finance-settings-state{text-transform:uppercase;border:1px solid #6fbfff4d;border-radius:999px;padding:4px 7px;font-size:10px;font-weight:900;display:inline-flex}.finance-settings-state.active{color:#91efc5;border-color:#26d78b73}.finance-settings-state.scheduled{color:#a9dfff}.finance-settings-state.paused{color:#fee7a7;border-color:#fee7a773}.finance-settings-state.archived,.finance-settings-state.expired{color:#b7c1ca}.finance-settings-actions{flex-wrap:wrap;gap:7px;display:flex}.finance-settings-actions button{min-height:34px;color:var(--brand-text);font:inherit;cursor:pointer;background:#081724b8;border:1px solid #6fbfff4d;border-radius:7px;padding:7px 9px;font-size:11px;font-weight:800}.finance-week-toolbar{border:1px solid var(--line);background:#152738d1;border-radius:10px;min-width:0;padding:10px}.finance-opening-balances-control{min-width:0}.finance-opening-balances-control[open]{flex:1 0 100%}.finance-opening-balances-summary{min-height:38px;color:var(--brand-text);cursor:pointer;background:#0d1c2beb;border:1px solid #6fbfff52;border-radius:8px;justify-content:space-between;align-items:center;gap:10px;padding:8px 12px;font-weight:700;list-style:none;display:flex}.finance-opening-balances-summary::-webkit-details-marker{display:none}.finance-opening-balances-summary:after{content:"▾";color:var(--brand-cyan);transition:transform .16s}.finance-opening-balances-control[open] .finance-opening-balances-summary:after{transform:rotate(180deg)}.finance-opening-balances-panel{gap:8px;min-width:0;margin-top:10px;display:grid}.finance-opening-balance-row{background:#09182694;border:1px solid #6fbfff2e;border-radius:8px;grid-template-columns:minmax(120px,.65fr) repeat(2,minmax(0,1fr)) auto;align-items:end;gap:8px;min-width:0;padding:10px;display:grid}.finance-opening-balance-person,.finance-opening-balance-row label{gap:5px;min-width:0;display:grid}.finance-opening-balance-person span,.finance-opening-balance-row label{color:var(--brand-muted);font-size:12px}.finance-opening-balance-row input{width:100%;min-height:38px;color:var(--brand-text);background:#081724eb;border:1px solid #6fbfff47;border-radius:7px;padding:8px 10px}.finance-week-toolbar .primary-action,.finance-operation-form button{background:#137ac0;border-color:#20a7ffc7}.finance-week-toolbar .danger-action{background:#661e27e6;border-color:#f5747480}.finance-week-toolbar button:disabled,.finance-operation-form button:disabled,.finance-row-actions button:disabled{opacity:.52;cursor:not-allowed}.finance-status{color:#fee7a7;border:1px solid #fee7a761;border-radius:999px;margin-right:auto;padding:6px 10px;font-size:12px;font-weight:900}.finance-status.closed{color:#7cebb8;border-color:#26d78b6b}.finance-message{color:#8cf0c0;background:#12483359;border:1px solid #26d78b6b;border-radius:8px;padding:10px 12px}.finance-message.error{color:#ffb0b0;background:#5f1d266b;border-color:#f5747485}.finance-week-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;min-width:0;display:grid}.finance-metric,.finance-section-card,.finance-operation-card{border:1px solid var(--line);background:#1c3144d1;border-radius:10px;min-width:0}.finance-metric{align-content:space-between;gap:12px;min-height:104px;padding:13px;display:grid}.finance-metric span{color:var(--brand-muted);font-size:12px;font-weight:800}.finance-metric strong{overflow-wrap:anywhere;font-size:clamp(18px,2vw,27px);line-height:1.1}.finance-metric.ok{border-color:#26d78b80}.finance-metric.warning{border-color:#fee7a77a}.finance-metric.error{border-color:#f5747485}.finance-section-card{gap:13px;padding:15px;display:grid}.finance-section-heading h2,.finance-section-card h2,.finance-operation-card h3,.finance-operation-form h3{margin:0}.finance-table-scroll{border:1px solid #6fbfff33;border-radius:8px;min-width:0;max-width:100%;overflow-x:auto}.finance-table{border-collapse:collapse;width:100%;min-width:680px;font-size:12px}.finance-table th,.finance-table td{text-align:left;vertical-align:top;border-bottom:1px solid #6fbfff24;padding:9px 10px}.finance-table th{color:var(--brand-muted);text-transform:uppercase;white-space:nowrap;font-size:10px}.finance-table td:last-child,.finance-table th:last-child{text-align:right}.finance-table tr.negative td{color:#faa}.finance-payment-list{gap:10px;min-width:0;display:grid}.finance-payment-card{background:#09192670;border:1px solid #6fbfff38;border-radius:9px;gap:10px;min-width:0;padding:12px;display:grid}.finance-payment-card.manual{border-color:#fee7a77a}.finance-payment-heading{justify-content:space-between;align-items:flex-start;gap:12px;min-width:0;display:flex}.finance-payment-heading>div{gap:3px;min-width:0;display:grid}.finance-payment-heading>div:last-child{text-align:right}.finance-payment-heading span,.finance-override-reason,.finance-hint{color:var(--brand-muted);font-size:11px}.finance-payment-override{border:1px solid #6fbfff33;border-radius:8px;padding:9px 10px}.finance-payment-override summary{color:#8fd3ff;cursor:pointer;font-size:12px;font-weight:800}.finance-payment-override[open] summary{margin-bottom:10px}.finance-detail-row>td{background:#07182757;padding:8px 10px 12px}.finance-ledger-list{gap:6px;margin-bottom:8px;display:grid}.finance-ledger-list>span{color:var(--brand-muted);flex-wrap:wrap;align-items:center;gap:6px;font-size:11px;display:flex}.finance-inline-delete{color:#ffd0d0;cursor:pointer;background:#68192373;border:1px solid #ff878759;border-radius:7px;min-height:28px;margin-left:auto;padding:4px 8px}.finance-inline-delete:disabled{opacity:.52;cursor:not-allowed}.finance-recurring-list,.finance-period-list,.finance-cash-list{gap:8px;min-width:0;display:grid}.finance-recurring-row{border:1px solid #6fbfff33;border-radius:8px;grid-template-columns:minmax(150px,1fr) minmax(100px,140px) auto auto;align-items:center;gap:8px;min-width:0;padding:10px;display:grid}.finance-recurring-row>div:first-child{gap:3px;min-width:0;display:grid}.finance-recurring-row span,.finance-operation-status{color:var(--brand-muted);font-size:11px}.finance-form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;min-width:0;display:grid}.finance-operation-card{gap:10px;padding:12px;display:grid}.finance-operation-form{grid-template-columns:repeat(2,minmax(0,1fr));align-items:end;gap:8px;min-width:0;display:grid}.finance-operation-form.compact{grid-template-columns:repeat(4,minmax(0,1fr))}.finance-operation-form label{min-width:0;color:var(--brand-muted);gap:5px;font-size:11px;font-weight:800;display:grid}.finance-operation-form .wide{grid-column:1/-1}.finance-operation-form input,.finance-operation-form select,.finance-recurring-row input{width:100%;min-width:0;min-height:38px;color:var(--brand-text);font:inherit;background:#081724e0;border:1px solid #6fbfff4d;border-radius:7px;padding:8px 9px}.finance-period-row,.finance-cash-list>div{min-width:0;color:var(--brand-text);border:1px solid #6fbfff33;border-radius:8px;justify-content:space-between;align-items:center;gap:12px;padding:11px 12px;text-decoration:none;display:flex}.finance-period-row.current{border-color:#20a7ffa6}.finance-check-list{gap:7px;margin:0;padding:0;list-style:none;display:grid}.finance-check-list li{border:1px solid #6fbfff2e;border-radius:7px;align-items:flex-start;gap:8px;min-width:0;padding:9px 10px;font-size:12px;display:flex}.finance-check-list li span{text-align:center;flex:0 0 20px;width:20px;font-weight:900}.finance-check-list li.ok{color:#91efc5;border-color:#26d78b4d}.finance-check-list li.error{color:#ffb0b0;border-color:#f5747459}@media (max-width:980px){.finance-week-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.finance-form-grid{grid-template-columns:1fr}.finance-operation-form.compact{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:640px){.finance-week-grid,.finance-settings-card-grid{grid-template-columns:1fr}.finance-metric{min-height:82px}.finance-section-card{padding:10px}.finance-opening-balances-control{flex:1 0 100%;max-width:100%}.finance-opening-balance-row,.finance-recurring-row,.finance-operation-form,.finance-operation-form.compact{grid-template-columns:1fr}.finance-operation-form .wide{grid-column:auto}.finance-row-actions,.finance-row-actions button,.finance-operation-form button{width:100%}.finance-payment-heading{display:grid}.finance-payment-heading>div:last-child{text-align:left}}.admin-center-shell{background:var(--bg,#0f1f2d);grid-template-columns:230px minmax(0,1fr);min-height:100vh;display:grid}.admin-center-sidebar{background:#0a1723;border-right:1px solid #294a61;flex-direction:column;gap:18px;height:100vh;padding:20px 14px;display:flex;position:sticky;top:0}.admin-center-brand{color:#72dfff;font-size:18px;font-weight:800}.admin-center-nav{gap:5px;display:grid}.admin-center-nav a,.admin-center-nav span{color:#a9becb;border-radius:8px;padding:10px 12px;text-decoration:none}.admin-center-nav a.active{color:#fff0b8;background:#18364a}.admin-center-nav span.disabled{opacity:.45;cursor:not-allowed}.admin-center-back{color:#72dfff;margin-top:auto;text-decoration:none}.admin-center-main{min-width:0;padding:22px}.admin-center-main .season-manager-season-head{flex-wrap:wrap}.admin-center-topbar{justify-content:flex-end;margin-bottom:18px;display:flex}.admin-center-heading{justify-content:space-between;align-items:center;gap:16px;margin-bottom:18px;display:flex}.admin-center-heading h1{margin:0}.admin-center-heading p{color:#a9becb;margin:4px 0 0}.admin-center-primary-link{color:#fff;background:#315a70;border-radius:8px;padding:10px 13px;font-weight:700;text-decoration:none}.admin-center-card-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.admin-center-card{background:#132b3b;border:1px solid #31536a;border-radius:12px;padding:16px}.admin-center-card span,.admin-center-card strong{display:block}.admin-center-card strong{margin-top:6px;font-size:20px}@media (max-width:760px){.admin-center-shell{grid-template-columns:1fr}.admin-center-sidebar{border-bottom:1px solid #294a61;border-right:0;height:auto;position:static}.admin-center-nav{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-center-back{margin-top:0}.admin-center-main{padding:14px}.admin-center-heading{flex-direction:column;align-items:flex-start}.admin-center-card-grid{grid-template-columns:1fr}}.season-manager-editor button:disabled,.season-manager-season-editor button:disabled,.season-manager-bulk-editor button:disabled{cursor:not-allowed;opacity:.55}.season-manager-message{color:#225ea8;margin:0 0 10px;font-weight:700}.season-manager-group-list{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.season-manager-season{background:#fbfdff;border:1px solid #e5edf7;border-radius:8px;min-width:0;padding:10px}.season-manager-season-head{justify-content:space-between;gap:8px;margin-bottom:8px;display:flex}.season-manager-season-head span{color:#667085;flex:none;font-size:12px;font-weight:800}.season-manager-readiness{color:#46566f;flex-wrap:wrap;gap:6px;margin:0 0 8px;font-size:12px;font-weight:800;display:flex}.season-manager-readiness strong,.season-manager-readiness span{background:#eef5ff;border-radius:999px;padding:4px 7px}.season-manager-readiness strong{color:var(--blue)}.season-manager-activation-warning{color:#b45309;margin:0 0 8px;font-size:12px;font-weight:800}.season-manager-season ul{gap:6px;margin:0;padding:0;list-style:none;display:grid}.season-manager-season li{background:#f4f8ff;border-radius:7px;gap:2px;min-width:0;padding:7px;display:grid}.season-manager-season li span{color:var(--muted);font-size:12px;line-height:1.25}.season-manager-group-actions{flex-wrap:wrap;gap:6px;margin-top:4px;display:flex}.season-manager-group-actions button{color:#32425c;min-height:30px;font:inherit;background:#fff;border:1px solid #d7e1ef;border-radius:7px;padding:0 8px;font-size:12px;font-weight:800}.season-manager-inactive-groups{border-top:1px dashed #d7e1ef;gap:6px;margin-top:10px;padding-top:8px;display:grid}.season-manager-inactive-groups>strong{color:#667085;font-size:12px}.season-manager-inactive-groups li{background:#fff7ed}.season-manager-inactive-groups button{color:#9a3412;min-height:30px;font:inherit;background:#fff;border:1px solid #fed7aa;border-radius:7px;justify-self:start;padding:0 8px;font-size:12px;font-weight:800}.group-capacity-panel{grid-column:span 2}.students-panel{--schedule-head-offset:176px;grid-column:1/-1;overflow:visible}.section-head{justify-content:space-between;align-items:flex-start;gap:14px;margin-bottom:14px;display:flex}.students-panel>.section-head{z-index:8;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#fbfdfff5;border-bottom:1px solid #cfe0fbbd;border-radius:8px 8px 0 0;margin:-12px -12px 0;padding:12px 12px 10px;position:sticky;top:54px;box-shadow:0 10px 20px #1c2c480f}.section-head p,.muted{color:var(--muted);line-height:1.45}.group-grid{grid-template-columns:repeat(auto-fit,minmax(112px,1fr));gap:8px;display:grid}.group-day-column{align-content:start;gap:7px;min-width:0;display:grid}.group-day-head{border:1px solid var(--line);background:#eef4fb;border-radius:8px;justify-content:space-between;align-items:center;gap:6px;min-height:36px;padding:8px;display:flex}.group-day-head strong{font-size:15px}.group-day-head span{color:var(--muted);font-size:12px;font-weight:800}.group-day-list{gap:7px;display:grid}.group-card,.mini-card{border:1px solid var(--line);background:#fbfdff;border-radius:8px}.group-card{min-width:0;min-height:88px;color:inherit;font:inherit;text-align:left;cursor:pointer;border-left-width:4px;align-content:start;gap:5px;padding:8px;transition:border-color .16s,box-shadow .16s,transform .16s;display:grid}.group-card:hover,.group-card:focus-visible,.group-card.selected{transform:translateY(-1px);box-shadow:0 8px 18px #172b4d1f}.group-card:focus-visible{outline-offset:2px;outline:3px solid #2563eb3d}.group-card.free{background:#f5fbf7;border-color:#cfe8d8 #cfe8d8 #cfe8d8 #76b98b}.group-card.full{border-color:#efd19e;border-left-color:var(--amber);background:#fffaf0}.group-card.over{background:#fff7f6;border-color:#f3b8b2 #f3b8b2 #f3b8b2 #b42318}.group-card div:first-child{justify-content:space-between;align-items:baseline;gap:6px;display:flex}.group-card strong,.mini-card strong{display:block}.group-card strong{font-size:15px;line-height:1.15}.group-card div:first-child span{color:#53637c;text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.group-card span,.mini-card span,.mini-card small,.group-card p{color:var(--muted)}.group-card p{text-overflow:ellipsis;white-space:nowrap;min-height:16px;font-size:11px;line-height:1.25;overflow:hidden}.group-place-note{overflow-wrap:anywhere;border-radius:999px;width:fit-content;max-width:100%;padding:3px 7px;font-size:10px;font-weight:800;line-height:1.12}.group-place-note.free{color:#2f7650;background:#e8f6ed}.group-place-note.full{color:var(--amber);background:#fff4df}.group-place-note.over{color:#b42318;background:#fff0ef}.lead-comment{color:var(--ink);padding-top:4px;line-height:1.35}.lead-workspace{gap:12px;max-height:720px;padding-right:3px;display:grid;overflow-y:auto}.lead-card{border:1px solid var(--line);background:#fbfdff;border-radius:8px;gap:10px;padding:12px;display:grid}.lead-card.closed{background:#f7f9fc}.lead-card-head,.lead-meta,.lead-action-row{align-items:center;gap:8px;display:flex}.lead-card-head{justify-content:space-between}.lead-card-head div{gap:3px;min-width:0;display:grid}.lead-card-head strong{color:var(--ink)}.lead-card-head span,.lead-card-head small,.lead-meta{color:var(--muted)}.lead-meta{flex-wrap:wrap;font-size:12px}.lead-meta span{background:#f1f5fb;border-radius:999px;padding:4px 7px}.lead-status{width:fit-content;color:var(--blue);white-space:nowrap;background:#f1f5fb;border-radius:999px;padding:5px 8px;font-size:12px;font-weight:800}.lead-status.new{color:var(--amber);background:#fff4df}.lead-status.in_progress,.lead-status.scheduled_trial{color:var(--blue);background:#ecf3ff}.lead-status.cancelled,.lead-status.failed{color:#b42318;background:#fff0ef}.lead-actions-panel{gap:9px;display:grid}.lead-action-row{flex-wrap:wrap}.lead-action-row button{flex:130px}.operation-list--leads .lead-action-row button.danger{flex:none;padding-inline:12px}.capacity{color:#2f7650;background:#e8f6ed;border-radius:999px;width:fit-content;padding:5px 8px;font-size:12px;font-weight:800}.capacity.full{color:var(--amber);background:#fff4df}.capacity.over{color:#b42318;background:#fff0ef}.summary-chip{color:var(--green);background:#e7f7ef;border-radius:999px;flex:none;padding:8px 10px;font-size:13px;font-weight:800}.schedule-toolbar{flex:none;justify-items:end;gap:7px;display:grid}.week-switcher{flex-wrap:wrap;justify-content:flex-end;gap:7px;display:flex}.week-switcher button{border:1px solid var(--line);color:#32425c;min-height:34px;font:inherit;cursor:pointer;background:#f4f7fc;border-radius:8px;padding:0 10px;font-size:12px;font-weight:800}.week-switcher button:hover{color:var(--blue);background:#ecf3ff;border-color:#cfe0fb}.week-switcher button.active{border-color:var(--blue);color:#fff;background:#1d62d6}.week-switcher button:disabled{opacity:.48;cursor:not-allowed}.schedule-day-filter{flex-wrap:wrap;justify-content:flex-end;gap:6px;max-width:620px;display:flex}.schedule-day-filter button{border:1px solid var(--line);color:#32425c;min-height:32px;font:inherit;cursor:pointer;background:#f8fbff;border-radius:8px;grid-auto-flow:column;align-items:center;gap:5px;padding:5px 9px;font-size:12px;font-weight:800;display:inline-grid}.schedule-day-filter button:hover,.schedule-day-filter button.active{color:var(--blue);background:#ecf3ff;border-color:#cfe0fb}.schedule-day-filter small{color:inherit;opacity:.72;font-size:10px;font-weight:700}.schedule-summary{flex-wrap:wrap;justify-content:flex-end;gap:7px;display:flex}.schedule-summary span{color:#32425c;background:#eef4fb;border-radius:999px;width:fit-content;padding:8px 10px;font-size:13px;font-weight:800}.schedule-board{grid-template-columns:repeat(7,minmax(160px,1fr));gap:8px;padding:8px 0 2px;display:grid;overflow-x:auto}.schedule-board.single-day{grid-template-columns:1fr;overflow-x:visible}.schedule-board.single-day .schedule-day-stack{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));align-items:start}.schedule-board.single-day .schedule-slot{min-height:100%}.schedule-day{align-content:start;gap:8px;min-width:160px;display:grid}.schedule-day-head{border:1px solid var(--line);background:#eef4fb;border-radius:8px;justify-content:space-between;align-items:center;gap:8px;min-height:44px;padding:8px 9px;display:flex}.schedule-board.single-day .schedule-day-head{top:var(--schedule-head-offset);z-index:6;position:sticky;box-shadow:0 6px 14px #1c2c4814}.schedule-day-head>div{min-width:0}.schedule-day-head strong{font-size:18px;line-height:1.1;display:block}.schedule-day-head small{color:var(--muted);margin-top:2px;font-size:11px;line-height:1.1;display:block}.schedule-day-head span{color:var(--muted);flex:none;font-size:11px;font-weight:800}.schedule-day-stack{gap:8px;display:grid}.schedule-slot{border:1px solid var(--line);width:100%;min-width:0;color:var(--ink);font:inherit;text-align:left;cursor:pointer;background:#fbfdff;border-radius:8px;gap:8px;padding:10px;display:grid}.schedule-slot:hover,.schedule-slot.selected{background:#f3f8ff;border-color:#b9cff1}.schedule-slot.needs-attendance{background:#fffaf0;border-color:#f0c36d;box-shadow:inset 0 0 0 1px #f0c36d59}.schedule-slot.attendance-complete{background:#fbfff0;border-color:#d2e8a4;box-shadow:inset 0 0 0 1px #d2e8a473}.schedule-slot.attendance-complete:hover,.schedule-slot.attendance-complete.selected{background:#f3fbdc;border-color:#b8d47b}.schedule-slot:focus-visible{border-color:var(--blue);outline:3px solid #1d62d62e}.schedule-slot-head{justify-content:space-between;align-items:flex-start;gap:8px;display:flex}.schedule-slot-head>div{min-width:0}.schedule-slot-head .capacity{flex:none}.schedule-slot-head strong{font-size:19px;line-height:1;display:block}.schedule-slot-head span,.schedule-slot-meta span{color:var(--muted);font-size:11px;line-height:1.2}.schedule-slot-meta{flex-wrap:wrap;gap:6px;min-width:0;display:flex}.schedule-slot-meta span{background:#f4f7fc;border-radius:999px;width:fit-content;padding:4px 6px;font-weight:800}.schedule-slot-meta .attendance-needed{color:#8a5200;background:#ffe8b8}.schedule-slot-meta .attendance-complete-chip{color:#5a7414;background:#eef8cf}.schedule-people{gap:4px;display:grid}.schedule-people+.schedule-people{border-top:1px solid #e8eef7;padding-top:6px}.schedule-people h3{color:var(--muted);text-transform:uppercase;margin:0;font-size:11px;font-weight:800}.schedule-person-list{flex-wrap:wrap;gap:4px;display:flex}.schedule-person{color:#32425c;overflow-wrap:anywhere;background:#eef4fb;border:0;border-radius:7px;max-width:100%;padding:3px 5px;font-family:inherit;font-size:11px;font-weight:700;line-height:1.15}.schedule-person.clickable{cursor:pointer}.schedule-person.clickable:hover,.schedule-person.clickable:focus-visible{color:var(--blue);background:#dbeaff;outline:none}.schedule-person.more{color:var(--green);background:#e7f7ef}.lesson-detail-backdrop{z-index:40;cursor:pointer;background:#18223538;border:0;position:fixed;inset:0}.lesson-detail-drawer{z-index:41;background:var(--surface);border:1px solid #cfe0fb;border-radius:10px;width:auto;min-width:0;position:fixed;inset:18px;overflow:auto;box-shadow:0 26px 70px #1822353d}.lesson-detail-drawer .lesson-detail{box-shadow:none;border:0;border-radius:0;margin-top:0}.lesson-detail{border:1px solid var(--line);background:#fbfdff;border-radius:8px;gap:12px;min-width:0;margin-top:14px;padding:14px;display:grid}.lesson-detail-head{justify-content:space-between;align-items:flex-start;gap:14px;display:flex}.lesson-detail-head>div:first-child{min-width:0}.lesson-title-row{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.lesson-title-row h3{margin-bottom:0}.lesson-group-nav{align-items:center;gap:6px;display:inline-flex}.lesson-group-nav button{color:#1456c8;width:34px;height:34px;font:inherit;cursor:pointer;background:#eaf2ff;border:1px solid #9fc0f4;border-radius:8px;font-size:15px;font-weight:800;box-shadow:0 5px 14px #1d62d61f}.lesson-group-nav button:hover,.lesson-group-nav button:focus-visible{color:#0f4bb2;background:#dbeafe;border-color:#1d62d6;outline:none;box-shadow:0 0 0 3px #1d62d629,0 7px 16px #1d62d629}.lesson-group-nav button:disabled{color:#9aa8bd;box-shadow:none;opacity:.46;cursor:not-allowed;background:#f4f7fc;border-color:#d7e1ef}.lesson-group-nav span{color:#32425c;background:#eef4fb;border-radius:999px;padding:6px 8px;font-size:12px;font-weight:800}.lesson-detail-head-actions{flex:none;justify-items:end;gap:8px;display:grid}.lesson-detail-close,.lesson-detail-refresh{border:1px solid var(--line);color:#32425c;min-height:36px;font:inherit;cursor:pointer;background:#f4f7fc;border-radius:8px;padding:0 12px;font-size:13px;font-weight:800}.lesson-detail-close{color:#b42318;background:#fff4f3;border-color:#f3b8b2}.lesson-detail-refresh{min-height:32px;font-size:12px}.lesson-detail-refresh:hover,.lesson-detail-refresh:focus-visible{background:#ecf3ff;border-color:#b9cff1;outline:none}.lesson-detail-refresh:disabled{opacity:.55;cursor:not-allowed}.lesson-detail-head h3{overflow-wrap:anywhere;margin:0 0 5px;font-size:22px;line-height:1.15}.lesson-detail-head p{max-width:760px;color:var(--muted);overflow-wrap:anywhere;line-height:1.35}.lesson-detail-stats{flex-wrap:wrap;justify-content:flex-end;gap:7px;display:flex}.lesson-detail-stats span{color:#32425c;background:#eef4fb;border-radius:999px;width:fit-content;padding:6px 8px;font-size:12px;font-weight:800}.capacity-warning{color:#8a5b00;background:#fff8ec;border:1px solid #ffe0b4;border-radius:8px;margin:0;padding:10px 12px;font-size:13px;font-weight:700;line-height:1.35}.capacity-warning.over{color:#b42318;background:#fff7f6;border-color:#ffd6d2}.lesson-admin-row{border:1px solid var(--line);background:#fbfdff;border-radius:8px;grid-template-columns:minmax(150px,.22fr) minmax(0,1fr);align-items:start;gap:10px;padding:10px;display:grid}.lesson-admin-compact-actions{grid-template-columns:minmax(130px,.42fr) minmax(120px,.58fr);align-items:start;gap:8px;display:grid}.lesson-capacity-details{min-width:0}.lesson-capacity-details summary{border:1px solid var(--line);color:#32425c;cursor:pointer;text-align:center;background:#f4f7fc;border-radius:8px;min-height:40px;padding:10px 12px;font-size:13px;font-weight:800;list-style:none}.lesson-capacity-details summary::-webkit-details-marker{display:none}.lesson-capacity-details .capacity-editor{margin-top:8px}.capacity-editor{grid-template-columns:72px 70px;align-items:end;gap:7px;padding:0;display:grid}.capacity-reason-control{grid-column:1/-1}.lesson-admin-row:has(.capacity-reason-control){grid-template-columns:minmax(260px,.3fr) minmax(0,1fr)}.capacity-editor:has(.capacity-reason-control){grid-template-columns:72px minmax(130px,1fr) 70px}.capacity-editor:has(.capacity-reason-control) .capacity-reason-control{grid-column:auto}.capacity-editor:has(.capacity-reason-control) .capacity-reason-control input{text-overflow:ellipsis;min-width:0;overflow:hidden}.lesson-add-student{grid-template-columns:minmax(210px,1.2fr) minmax(120px,.65fr) minmax(120px,.65fr) minmax(180px,.9fr) minmax(170px,auto);align-items:end;gap:8px;padding:0;display:grid}.lesson-add-student .primary-action{min-width:96px}.lesson-booking-modes{grid-column:1/-1}.lesson-overflow-reason{grid-column:auto}.lesson-overflow-reason textarea{min-height:68px}.student-suggestions{gap:5px;max-height:210px;margin-top:6px;display:grid;overflow:auto}.student-suggestions button,.suggestions-empty,.selected-student-pill{border:1px solid var(--line);color:#32425c;text-align:left;background:#f4f7fc;border-radius:8px;width:100%;min-height:34px;padding:7px 8px}.student-suggestions button{font:inherit;cursor:pointer;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px 12px;display:grid}.student-suggestions button strong{overflow-wrap:anywhere;min-width:0;line-height:1.2}.student-suggestions button:hover{background:#ecf3ff;border-color:#b9cff1}.student-suggestions span,.suggestions-empty{color:var(--muted);font-size:12px}.student-suggestions button>span{white-space:nowrap;justify-content:flex-end;align-items:center;gap:6px;min-width:0;line-height:1.2;display:inline-flex}.student-status-badge{color:#9a5b00;white-space:nowrap;background:#fff4df;border-radius:999px;flex:none;align-items:center;width:fit-content;margin-left:0;padding:2px 6px;font-size:11px;font-weight:800;line-height:1;display:inline-flex}.suggestions-empty{display:block}.lesson-add-actions{grid-template-columns:repeat(2,minmax(82px,auto));gap:7px;display:grid}.lesson-add-student--extra .lesson-add-actions,.lesson-add-student--makeup .lesson-add-actions{grid-column:3/-1;grid-template-columns:minmax(96px,auto) minmax(170px,1fr);align-items:end}.lesson-add-actions .selected-student-pill{grid-column:1/-1}.lesson-add-student--extra .lesson-add-actions .selected-student-pill,.lesson-add-student--makeup .lesson-add-actions .selected-student-pill{order:2;grid-column:auto}.selected-student-pill{justify-content:space-between;align-items:center;gap:8px;display:flex}.selected-student-pill strong{overflow-wrap:anywhere}.selected-student-pill button{border:1px solid var(--line);background:var(--surface);color:#32425c;min-height:28px;font:inherit;cursor:pointer;border-radius:8px;flex:none;padding:0 8px;font-size:12px;font-weight:800}.lesson-add-student .selected-student-pill button{color:#ffd6d6;background:#48191fe6;border-color:#ff6f6f75}.lesson-add-student .selected-student-pill button:hover,.lesson-add-student .selected-student-pill button:focus-visible{color:#ffe8e8;background:#5b1e26f0;border-color:#ff88889e}.lesson-add-student .selected-student-pill button:disabled{color:#ffd6d694;cursor:not-allowed;background:#48191f6b;border-color:#ff6f6f3d}.quick-booking-panel{scroll-margin-top:82px}.booking-mode-row{grid-template-columns:repeat(auto-fit,minmax(104px,1fr));gap:8px;margin-bottom:12px;display:grid}.booking-mode-row button{border:1px solid var(--line);color:#32425c;min-height:38px;font:inherit;cursor:pointer;background:#f4f7fc;border-radius:8px;font-size:13px;font-weight:800}.booking-mode-row button.active{color:var(--blue);background:#ecf3ff;border-color:#b9cff1}.group-action-mode-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.group-action-mode-grid button{white-space:normal;min-width:0;padding-inline:8px;line-height:1.15}@media (max-width:520px){.group-action-mode-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.group-action-mode-grid button:nth-child(3){grid-column:1/-1}}.quick-booking-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.quick-booking-wide{grid-column:1/-1}.student-suggestions.compact{max-height:160px}.selected-student-pill.inline{width:auto}.quick-booking-submit{width:100%}.secondary-action{border:1px solid var(--line);color:#32425c;min-height:40px;font:inherit;cursor:pointer;background:#f4f7fc;border-radius:8px;font-weight:800}.secondary-action:disabled{opacity:.55;cursor:not-allowed}.secondary-action.danger{color:#b42318;background:#fff0ef;border-color:#ffd9d6}.secondary-action.compact{min-height:32px;padding:0 10px;font-size:12px}.lesson-roster-grid{grid-template-columns:minmax(720px,1.9fr) minmax(230px,.55fr) minmax(230px,.55fr);align-items:start;gap:10px;display:grid}.lesson-section{border:1px solid var(--line);background:var(--surface);border-radius:8px;gap:9px;min-width:0;padding:12px;display:grid}.lesson-section h4{margin:0;font-size:14px}.lesson-row-list{gap:8px;display:grid}.lesson-row{border:1px solid var(--line);background:#fbfdff;border-radius:8px;grid-template-columns:1fr;align-items:start;gap:10px;padding:9px;display:grid}.makeup-row.makeup-visited{background:#f1fbf6;border-color:#b9ebce}.makeup-row.makeup-no_show{background:#fff8eb;border-color:#f5d7a4}.regular-section .lesson-row{grid-template-columns:minmax(180px,1fr) minmax(50px,.18fr) minmax(56px,.2fr) minmax(78px,.28fr) minmax(150px,.4fr) minmax(130px,.46fr) minmax(70px,.22fr);align-items:center;gap:8px}.lesson-row-header{min-height:34px;color:var(--muted);text-transform:uppercase;background:#eef4fb;padding-block:7px;font-size:11px;font-weight:800}.lesson-row-header span{color:inherit;font-size:inherit;margin-top:0}.lesson-row>div:first-child,.lesson-person-main{min-width:0}.lesson-person-button{width:100%;min-width:0;color:inherit;font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;padding:0}.lesson-person-button strong{width:fit-content;color:var(--blue);border-radius:6px;padding:2px 5px}.lesson-person-button:hover strong,.lesson-person-button:focus-visible strong{background:#ecf3ff}.lesson-person-button:focus-visible{outline-offset:3px;outline:3px solid #1d62d62e}.lesson-person-title{justify-content:space-between;align-items:center;gap:8px;display:flex}.lesson-person-title strong{overflow-wrap:anywhere;min-width:0}.lesson-balance-chip{background:#eef4fb;border-radius:999px;flex:none;width:fit-content;padding:4px 7px;font-weight:800;color:#32425c!important;margin-top:0!important;font-size:12px!important;line-height:1!important}.lesson-balance-chip.low{background:#fff4df;color:var(--amber)!important}.lesson-subline{font-weight:800;color:#41516c!important}.lesson-table-muted{color:var(--muted);font-size:12px}.lesson-row-topics{justify-items:start;gap:5px;min-width:0;max-width:170px;display:grid}.lesson-topic-chip{color:#32425c;width:fit-content;min-width:0;max-width:150px;min-height:26px;font:inherit;text-align:center;cursor:pointer;background:#f4f8ff;border:1px solid #cfe0fb;border-radius:8px;place-items:center;padding:4px 7px;display:grid}.lesson-topic-chip strong{color:#263754;text-overflow:ellipsis;white-space:nowrap;min-width:0;max-width:100%;font-size:11px;font-weight:800;line-height:1.15;overflow:hidden}.lesson-topic-chip.tone-2{background:#f7f7ff;border-color:#d7d9fb}.lesson-topic-chip.tone-2 strong{color:#34406c}.lesson-topic-chip:hover,.lesson-topic-chip:focus-visible{background:#ecf3ff;border-color:#9fc0f4;outline:none}.lesson-topic-chip:disabled{opacity:.58;cursor:not-allowed}.lesson-row-comment{gap:5px;min-width:0;display:grid}.lesson-row-comment .comment-text{color:#41516c;-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:12px;line-height:1.3;display:-webkit-box;overflow:hidden}.lesson-row-comment button{border:1px solid var(--line);color:#32425c;width:fit-content;min-height:28px;font:inherit;cursor:pointer;background:#f4f7fc;border-radius:8px;padding:0 8px;font-size:11px;font-weight:800}.lesson-row-comment button:hover,.lesson-row-comment button:focus-visible{color:var(--blue);background:#ecf3ff;border-color:#b9cff1;outline:none}.lesson-row-comment button:disabled{opacity:.55;cursor:not-allowed}.lesson-row strong,.lesson-row span{display:block}.lesson-row strong{overflow-wrap:anywhere;word-break:normal;line-height:1.25}.lesson-row span{color:var(--muted);margin-top:3px;font-size:12px;line-height:1.3}.lesson-student-detail-panel{background:#f8fbff;border:1px solid #cfe0fb;border-radius:8px;margin-top:12px;padding:8px}.lesson-student-detail-head{justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:6px;display:flex}.lesson-student-detail-head h4{margin:0;font-size:16px}.lesson-student-detail-head button{border:1px solid var(--line);color:#32425c;min-height:34px;font:inherit;cursor:pointer;background:#f4f7fc;border-radius:8px;padding:0 10px;font-size:12px;font-weight:800}.lesson-student-detail-panel .student-detail-card{background:#fff;position:static}.student-detail-card.compact{gap:9px;padding:10px}.student-detail-card.compact .detail-head{align-items:center}.student-detail-card.compact .detail-kicker{margin-bottom:2px;font-size:10px}.student-detail-card.compact .detail-head h3{font-size:18px}.student-detail-card.compact .status-tag{padding:5px 7px;font-size:11px}.student-detail-card.compact .detail-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:6px}.student-detail-card.compact .detail-item{gap:2px;min-height:58px;padding:8px}.student-detail-card.compact .detail-item span,.student-detail-card.compact .metadata-row span{font-size:10px}.student-detail-card.compact .detail-item strong{font-size:15px}.student-detail-card.compact .detail-item small{font-size:11px;line-height:1.2}.student-detail-card.compact .detail-block{padding:9px}.student-detail-card.compact .detail-block h4{margin-bottom:7px;font-size:13px}.student-detail-card.compact .action-block{gap:8px}.student-detail-card.compact .action-head{display:none}.student-detail-card.compact .action-tabs{grid-template-columns:repeat(5,minmax(0,1fr));gap:6px}.student-detail-card.compact .action-tabs button,.student-detail-card.compact .primary-action{min-height:34px;font-size:12px}.student-detail-card.compact .action-form{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.student-detail-card.compact .action-form>.field-control,.student-detail-card.compact .action-form>.form-row,.student-detail-card.compact .action-form>.field-hint,.student-detail-card.compact .action-form>.primary-action,.student-detail-card.compact .action-form>.discount-current,.student-detail-card.compact .action-form>.balance-adjustment-current,.student-detail-card.compact .action-form>.action-section-title{min-width:0}:is(.student-detail-card.compact .action-form>.field-control:has(textarea),.student-detail-card.compact .action-form>.field-hint,.student-detail-card.compact .action-form>.primary-action,.student-detail-card.compact .action-form>.discount-current,.student-detail-card.compact .action-form>.action-section-title){grid-column:1/-1}.student-detail-card.compact .field-control{gap:4px}.student-detail-card.compact .field-control span{font-size:11px}.student-detail-card.compact .field-control input,.student-detail-card.compact .field-control select,.student-detail-card.compact .field-control textarea{min-height:36px;padding:7px 9px;font-size:13px}.student-detail-card.compact .field-control textarea{min-height:58px}.student-detail-card.compact .form-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.student-detail-card.compact .schedule-list{flex-wrap:wrap;display:flex}.student-detail-card.compact .history-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.lesson-student-empty-panel{color:var(--muted);background:#fbfdff;border:1px dashed #cfe0fb;border-radius:8px;margin-top:12px;padding:14px;font-size:14px}.attendance-tag{color:#32425c;background:#eef4fb;border-radius:999px;width:fit-content;margin-top:7px;padding:4px 7px;font-size:12px;font-weight:800}.attendance-tag.visited{color:var(--green);background:#e7f7ef}.attendance-tag.no_show{color:var(--amber);background:#fff4df}.attendance-tag.excused{color:#40506a;background:#eef4fb}.attendance-tag.cancelled{color:#b42318;background:#fff0ef}.lesson-actions{flex-wrap:wrap;justify-content:flex-start;gap:6px;min-width:0;display:flex}.lesson-actions button{border:1px solid var(--line);color:#32425c;min-height:32px;font:inherit;cursor:pointer;background:#f4f7fc;border-radius:8px;flex:58px;padding:0 9px;font-size:12px;font-weight:800}.lesson-actions button:hover{color:var(--blue);background:#ecf3ff;border-color:#b9cff1}.lesson-actions button:disabled{opacity:.55;cursor:not-allowed}.lesson-more-actions{min-width:0;position:relative}.regular-section .lesson-more-actions[open]{border:1px solid var(--line);background:#fbfdff;border-radius:8px;grid-column:1/-1;padding:8px}.lesson-more-actions summary{border:1px solid var(--line);color:#32425c;cursor:pointer;text-align:center;background:#f4f7fc;border-radius:8px;place-items:center;width:100%;min-height:32px;padding:8px 9px;font-size:12px;font-weight:800;list-style:none;display:grid}.lesson-more-actions summary::-webkit-details-marker{display:none}.lesson-more-actions-panel{flex-wrap:wrap;gap:6px;margin-top:6px;display:flex}.regular-section .lesson-more-actions[open] .lesson-more-actions-panel{align-items:center}.trial-conversion-form{grid-template-columns:minmax(150px,1.3fr) minmax(84px,.6fr);gap:7px;display:grid}.trial-conversion-form label{gap:4px;min-width:0;display:grid}.trial-conversion-form label:first-child,.trial-conversion-form button{grid-column:1/-1}.trial-conversion-form label span{color:var(--muted);text-transform:uppercase;font-size:11px;font-weight:800}.trial-conversion-form input,.trial-conversion-form select,.trial-conversion-form button{border:1px solid var(--line);min-width:0;min-height:34px;font:inherit;border-radius:8px;font-size:12px}.trial-conversion-form input,.trial-conversion-form select{background:var(--surface);color:var(--ink);padding:0 8px}.trial-conversion-form button{background:var(--blue);color:#fff;cursor:pointer;font-weight:800}.trial-conversion-form button:disabled{opacity:.55;cursor:not-allowed}.lesson-transfer-row{grid-template-columns:minmax(0,1fr) auto;gap:8px;margin-top:6px;display:grid}.lesson-transfer-row select,.lesson-transfer-row button{border:1px solid var(--line);min-height:36px;font:inherit;border-radius:8px;font-size:13px}.lesson-transfer-row select{background:var(--surface);min-width:0;color:var(--ink);padding:0 9px}.lesson-transfer-row button{color:var(--blue);cursor:pointer;background:#ecf3ff;padding:0 10px;font-weight:800}.lesson-transfer-row button:disabled{opacity:.55;cursor:not-allowed}.lesson-comment-form{background:#f4f8ff;border:1px solid #cfe0fb;border-radius:8px;grid-column:1/-1;grid-template-columns:minmax(260px,1fr) minmax(150px,auto);align-items:end;gap:8px;padding:9px;display:grid}.lesson-comment-form label{gap:4px;min-width:0;display:grid}.lesson-comment-form label span{color:var(--muted);text-transform:uppercase;font-size:11px;font-weight:800}.lesson-comment-form textarea{border:1px solid var(--line);background:var(--surface);min-height:58px;color:var(--ink);font:inherit;resize:vertical;border-radius:8px;padding:8px 9px;font-size:13px}.lesson-comment-form button{min-height:36px;color:var(--blue);font:inherit;cursor:pointer;background:#ecf3ff;border:1px solid #cfe0fb;border-radius:8px;padding:0 10px;font-size:12px;font-weight:800}.lesson-comment-form button:disabled{opacity:.55;cursor:not-allowed}.regular-payment-form{background:#f4f8ff;border:1px solid #cfe0fb;border-radius:8px;grid-column:1/-1;grid-template-columns:minmax(170px,1.25fr) minmax(82px,.4fr) minmax(74px,.32fr) minmax(58px,.24fr) minmax(112px,.45fr) minmax(135px,.85fr) minmax(128px,auto);align-items:end;gap:8px;padding:9px;display:grid}.regular-payment-form label{gap:4px;min-width:0;display:grid}.regular-payment-form label span{color:var(--muted);text-transform:uppercase;font-size:11px;font-weight:800}.regular-payment-form input,.regular-payment-form select,.regular-payment-form button{min-width:0;min-height:34px;font:inherit;border-radius:8px;font-size:12px}.regular-payment-form input,.regular-payment-form select{border:1px solid var(--line);background:var(--surface);color:var(--ink);padding:0 8px}.regular-payment-form button{padding:0 10px}.students-workspace{gap:12px;display:grid}.student-tools{grid-template-columns:1.35fr .85fr 1.35fr .8fr .8fr;gap:10px;display:grid}.field-control{gap:6px;min-width:0;display:grid}.field-control span{color:var(--muted);text-transform:uppercase;font-size:12px;font-weight:800}.field-control input,.field-control select,.field-control textarea{border:1px solid var(--line);width:100%;min-height:42px;color:var(--ink);font:inherit;background:#fbfdff;border-radius:8px;padding:9px 11px;font-size:14px}.field-control input:focus,.field-control select:focus,.field-control textarea:focus,.student-name-button:focus-visible,.detail-quick-actions button:focus-visible{border-color:var(--blue);outline:3px solid #1d62d62e}.field-control textarea{resize:vertical;min-height:76px}.field-control input:disabled,.field-control select:disabled,.field-control textarea:disabled{color:var(--muted);cursor:not-allowed;background:#f1f4f8}.student-summary-row{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.student-stat-card{border:1px solid var(--line);background:#fbfdff;border-radius:8px;align-content:space-between;min-height:76px;padding:12px;display:grid}.student-stat-card span{color:var(--muted);text-transform:uppercase;font-size:12px;font-weight:800}.student-stat-card strong{font-size:28px;line-height:1}.student-work-grid{grid-template-columns:minmax(0,1fr);align-items:start;gap:12px;display:grid}.mobile-student-results,.mobile-student-detail-backdrop,.mobile-student-detail-panel{display:none}.student-detail-desktop-shell{display:contents}.table-wrap{border:1px solid var(--line);border-radius:8px;overflow:auto}.students-workspace .table-wrap{max-height:620px}.duplicate-students-panel{grid-column:1/-1;margin-top:18px}.duplicate-table-wrap{max-height:360px;overflow:auto}.duplicate-search-control{max-width:360px;margin:-2px 0 10px}.backup-export-box{background:#f8fbff;border:1px solid #2563eb29;border-radius:8px;justify-content:space-between;align-items:center;gap:12px;margin-top:14px;padding:12px;display:flex}.backup-export-box div{gap:3px;min-width:0;display:grid}.backup-export-box strong{color:var(--ink);font-size:13px}.backup-export-box span{color:var(--muted);font-size:12px}.backup-export-box button{background:var(--blue);color:#fff;cursor:pointer;border:1px solid #2563eb4d;border-radius:7px;flex-shrink:0;padding:9px 12px;font-weight:800}.backup-export-box button:disabled{cursor:default;opacity:.55}.table-scroll{border:1px solid var(--line);border-radius:8px;overflow-x:auto}.payment-journal-scroll{max-height:498px;overflow:auto}.makeup-journal-scroll{max-height:586px;overflow:auto}.students-table{border-collapse:collapse;background:#fbfdff;width:100%;min-width:860px;font-size:13px}.duplicate-students-table td{vertical-align:top}.merge-student-summary{gap:3px;min-width:180px;display:grid}.merge-student-summary strong{color:#24344d}.merge-student-summary span{color:var(--muted);font-size:12px}.archive-table-wrap{max-height:520px;overflow:auto}.archive-workspace{gap:10px;display:grid}.archive-tools{grid-template-columns:minmax(260px,520px)}.archive-table{min-width:720px}.journal-table{border-collapse:collapse;background:#fbfdff;width:100%;min-width:920px;font-size:14px}.payment-journal-table{min-width:760px}.payment-journal-table td:nth-child(3) strong{white-space:nowrap}.students-table th,.students-table td,.journal-table th,.journal-table td{border-bottom:1px solid var(--line);text-align:left;vertical-align:middle;padding:8px 10px}.students-table th,.journal-table th{z-index:3;color:#32425c;text-transform:uppercase;background:#eef4fb;font-size:12px;font-weight:800;position:sticky;top:0}.students-table tr:last-child td,.journal-table tr:last-child td{border-bottom:0}.journal-table tr.editing-row td{background:#f3f8ff}.journal-table input,.journal-table select{border:1px solid var(--line);background:var(--surface);width:100%;min-height:34px;color:var(--ink);font:inherit;border-radius:8px;padding:6px 8px;font-size:13px}.journal-table input:focus,.journal-table select:focus{border-color:#b9cff1;outline:3px solid #1d62d624}.students-table tr.selected-row td{background:#f3f8ff}.journal-table td strong,.journal-table td span,.journal-table td small{display:block}.journal-table td span,.journal-table td small{color:var(--muted);margin-top:3px}.journal-stats{flex-wrap:wrap;flex:none;justify-content:flex-end;gap:7px;display:flex}.journal-stats span,.journal-status{border-radius:999px;width:fit-content;padding:6px 8px;font-size:12px;font-weight:800}.journal-stats span{color:#32425c;background:#eef4fb}.journal-edit-toggle{min-height:30px;color:var(--blue);cursor:pointer;font:inherit;background:#f4f8ff;border:1px solid #cfe0fb;border-radius:8px;padding:0 10px;font-size:12px;font-weight:900}.journal-edit-toggle:hover,.journal-edit-toggle:focus-visible{border-color:#9fc0f4;outline:none}.journal-filter-row{justify-content:space-between;align-items:center;gap:10px;margin:-2px 0 10px;display:flex}.journal-filter-row>div:first-child{gap:3px;display:grid}.journal-filter-row .filter-label{color:var(--muted);text-transform:uppercase;font-size:12px;font-weight:800}.journal-filter-row strong{color:var(--ink);font-size:14px}.journal-search-control{flex:220px;max-width:340px}.week-switcher.compact{flex:none}.week-switcher.compact button{min-height:34px;padding:0 10px;font-size:13px}#payments .week-switcher.compact{grid-template-columns:minmax(88px,auto) minmax(72px,auto) 36px minmax(96px,auto) 36px;align-items:center;gap:6px;display:grid}#payments .week-switcher.compact button{border-radius:8px;min-height:30px;padding:0 8px;font-size:12px}#payments .week-switcher.compact .week-nav-button{width:36px;padding:0;font-size:17px;line-height:1}#payments .week-switcher.compact button:not(.active){color:var(--brand-text);background:#0d1c2bd1;border-color:#63d9ff2e}.journal-toolbar{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.journal-export-button{min-height:34px;color:var(--green);font:inherit;cursor:pointer;background:#e7f7ef;border:1px solid #b9d2bd;border-radius:8px;padding:0 12px;font-size:13px;font-weight:800}.journal-export-button:disabled{opacity:.55;cursor:not-allowed}.journal-status.booked{color:var(--blue);background:#ecf3ff}.journal-status.visited{color:var(--green);background:#e7f7ef}.journal-status.no_show,.journal-status.cancelled{color:var(--amber);background:#fff4df}.journal-actions{flex-wrap:wrap;gap:7px;display:flex}.journal-actions button{border:1px solid var(--line);color:#32425c;min-height:34px;font:inherit;cursor:pointer;background:#f4f7fc;border-radius:8px;padding:0 10px;font-size:13px;font-weight:800}.journal-actions button:disabled{opacity:.55;cursor:not-allowed}.journal-actions button.danger{color:#b42318;background:#fff0ef;border-color:#ffd9d6}.journal-message{color:#32425c;background:#eef4fb;border-radius:8px;margin-top:10px;padding:9px 10px;font-size:13px;line-height:1.4}.journal-message.success{color:#167443;background:#e7f7ef}.journal-message.error{color:#b42318;background:#fff0ef}.student-name-button{color:var(--blue);font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;margin:0;padding:0;font-weight:800}.student-name-button:hover{text-decoration:underline}.students-table td strong,.students-table td span{display:block}.students-table td span{color:var(--muted);margin-top:2px;font-size:12px;line-height:1.25}.students-table td:nth-child(4),.students-table td:nth-child(6){width:76px}.students-table td:nth-child(4) strong,.students-table td:nth-child(6) strong{font-size:17px;line-height:1}.lesson-balance,.makeup-count{color:#32425c;text-align:center;background:#eef4fb;border-radius:999px;width:fit-content;min-width:30px;padding:3px 7px}.lesson-balance.low{color:var(--amber);background:#fff4df}.makeup-count.available{color:var(--green);background:#e7f7ef}.detail-quick-actions button{border:1px solid var(--line);color:#32425c;min-height:34px;font:inherit;cursor:pointer;background:#f4f7fc;border-radius:8px;font-size:12px;font-weight:800}.detail-quick-actions button:hover,.detail-quick-actions button.active{color:var(--blue);background:#ecf3ff;border-color:#cfe0fb}.schedule-list{gap:5px;display:grid}.schedule-list span{color:#32425c;background:#eef4fb;border-radius:999px;width:fit-content;margin:0;padding:4px 7px;font-size:12px;font-weight:700}.student-detail-card{border:1px solid var(--line);background:#fbfdff;border-radius:8px;gap:14px;padding:14px;display:grid;position:sticky;top:12px}.student-detail-drawer{grid-template-columns:minmax(0,1fr);align-content:start;gap:16px;width:min(100vw - 32px,980px);max-width:980px;height:calc(100dvh - 36px);margin:0 auto;padding:18px;display:grid;position:fixed;inset:18px;overflow-x:hidden}.student-detail-drawer>.student-drawer-head,.student-detail-drawer>.student-detail-card{min-width:0}.student-drawer-head{z-index:3;border-bottom:1px solid var(--line);background:#12212ffa;justify-content:space-between;align-items:flex-start;gap:12px;margin:-18px -18px 0;padding:18px 18px 12px;display:flex;position:sticky;top:0;box-shadow:0 10px 22px #00000029}.student-drawer-head h3{margin:0;font-size:26px;line-height:1.15}.student-detail-drawer .student-detail-card{box-shadow:none;background:0 0;border:0;gap:16px;padding:0;position:static;top:auto}.student-detail-drawer .student-detail-card>.detail-head{display:none}.student-detail-drawer .detail-grid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:10px}.student-detail-drawer .detail-item{min-height:112px;padding:14px}.student-detail-drawer .action-form>*,.student-detail-drawer .action-tabs button,.student-detail-drawer .detail-item{min-width:0}.student-detail-drawer .detail-item strong{font-size:20px}.student-detail-drawer .student-detail-card>.detail-grid{grid-template-columns:repeat(5,minmax(120px,1fr));gap:8px}.student-detail-drawer .student-detail-card>.detail-grid .detail-item{gap:3px;min-height:74px;padding:10px}.student-detail-drawer .student-detail-card>.detail-grid .detail-item span{font-size:11px;line-height:1.1}.student-detail-drawer .student-detail-card>.detail-grid .detail-item strong{font-size:17px;line-height:1.15}.student-detail-drawer .student-detail-card>.detail-grid .detail-item small{font-size:11px;line-height:1.2}.student-detail-drawer .action-block{background:#f8fbff;border-color:#cfe0fb;padding:14px}.student-detail-drawer .action-tabs{grid-template-columns:repeat(auto-fit,minmax(136px,1fr))}.student-detail-drawer .action-form{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:10px}:is(.student-detail-drawer .action-form>.field-control:has(textarea),.student-detail-drawer .action-form>.field-hint,.student-detail-drawer .action-form>.primary-action,.student-detail-drawer .action-form>.discount-current,.student-detail-drawer .action-form>.balance-adjustment-current,.student-detail-drawer .action-form>.action-section-title){grid-column:1/-1}.student-detail-shell{min-width:0}.detail-head{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.detail-kicker{color:var(--muted);text-transform:uppercase;margin-bottom:5px;font-size:12px;font-weight:800;display:block}.detail-head h3{margin:0;font-size:22px;line-height:1.15}.status-tag{color:#32425c;background:#eef4fb;border-radius:999px;flex:none;padding:6px 8px;font-size:12px;font-weight:800}.status-tag.active{color:var(--green);background:#e7f7ef}.detail-quick-actions{grid-template-columns:repeat(4,minmax(0,1fr));gap:7px;display:grid}.detail-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;display:grid}.detail-item,.detail-block{border:1px solid var(--line);background:var(--surface);border-radius:8px}.detail-item{border:1px solid var(--line);text-align:left;align-content:start;gap:5px;min-height:92px;padding:11px;display:grid}.detail-item-button{color:inherit;font:inherit;cursor:pointer}.detail-item-button:hover{background:#f4f8ff;border-color:#b9cff1}.detail-item-button:focus-visible{outline-offset:2px;outline:2px solid #2f6fed47}.detail-item span,.metadata-row span{color:var(--muted);text-transform:uppercase;font-size:12px;font-weight:800}.detail-item strong{overflow-wrap:anywhere;font-size:18px;line-height:1.2}.detail-item small{color:var(--muted);line-height:1.35}.detail-block{padding:12px}.detail-block h4{margin:0 0 10px;font-size:14px}.metadata-row,.history-head{justify-content:space-between;align-items:center;gap:12px;display:flex}.history-head-actions{justify-content:flex-end;align-items:center;gap:7px;min-width:0;display:flex}.subscription-edit-toggle{min-width:0;min-height:30px;color:var(--blue);cursor:pointer;background:#f4f8ff;border:1px solid #cfe0fb;border-radius:7px;padding:0 9px;font-size:11px;font-weight:900;line-height:1.15}.subscription-edit-toggle:hover,.subscription-edit-toggle:focus-visible{border-color:#9fc0f4;outline:none}.history-head h4{margin-bottom:0}.history-head span{color:var(--muted);font-size:12px;font-weight:800}.history-head.secondary{border-top:1px solid var(--line);margin-top:14px;padding-top:12px}.subscription-history-list{gap:10px;margin-top:10px;display:grid}.subscription-correction-panel{color:#7c2d12;background:#fff7ed;border:1px solid #fed7aa;border-radius:8px;gap:5px;padding:9px;display:grid}.subscription-correction-panel strong{font-size:13px}.subscription-correction-panel span{font-size:12px;font-weight:900}.subscription-correction-panel p{color:#9a3412;margin:0;font-size:12px;line-height:1.3}.subscription-card{background:#fffaf0;border:1px solid #d6e2f2;border-radius:8px;gap:10px;padding:11px;display:grid}.subscription-card.open{background:#f1fff7;border-color:#b9ead2}.subscription-card-head{justify-content:space-between;align-items:flex-start;gap:10px;display:flex}.subscription-card-head>div{gap:3px;display:grid}.subscription-card-head strong{color:var(--ink);font-size:14px}.subscription-card-head span{color:#536179;font-size:12px;font-weight:700}.subscription-status{color:#8a5b00;background:#fff3c4;border-radius:999px;flex:none;padding:5px 8px;font-size:12px;font-weight:900}.subscription-status.open{color:#06734b;background:#dff8ea}.subscription-card.unpaid,.subscription-status.unpaid{color:var(--brand-accent);background:#473813d1;border-color:#fee7a77a}.subscription-progress{gap:5px;display:grid}.subscription-progress span{color:#536179;font-size:12px;font-weight:800}.subscription-progress div{background:#e8eef7;border-radius:999px;height:7px;overflow:hidden}.subscription-progress i{border-radius:inherit;background:#2d66d8;height:100%;display:block}.subscription-lesson-grid{grid-template-columns:repeat(auto-fit,minmax(142px,1fr));gap:7px;display:grid}.subscription-lesson-slot{background:#f8fbff;border:1px solid #d7e1ef;border-radius:8px;gap:3px;min-width:0;padding:8px;display:grid}.subscription-lesson-slot strong{color:#1f3e72;background:#e7eefb;border-radius:999px;place-items:center;width:24px;height:24px;font-size:12px;display:grid}.subscription-lesson-slot span{color:var(--ink);font-size:12px;font-weight:900}.subscription-lesson-slot small{color:#536179;font-size:11px;font-weight:700;line-height:1.3}.admin-correction-controls{min-width:0;margin-top:4px}.admin-status-controls{grid-template-columns:repeat(3,minmax(0,1fr));gap:4px;min-width:0;margin-top:6px;display:grid}.admin-status-controls button{color:#2d5fa8;cursor:pointer;background:#f8fbff;border:1px solid #cfe0fb;border-radius:6px;min-width:0;padding:5px 3px;font-size:10px;font-weight:900;line-height:1.1}.admin-status-controls button.active{color:#19784a;background:#eafaf1;border-color:#bdebd0}.admin-status-controls button:disabled{cursor:default;opacity:.6}.admin-correction-controls button{color:#a21c1c;cursor:pointer;text-align:center;white-space:normal;background:#fff7f7;border:1px solid #f2b8b5;border-radius:6px;width:100%;min-width:0;padding:6px;font-size:10px;font-weight:900;line-height:1.2}.admin-correction-controls button:disabled{cursor:wait;opacity:.65}.subscription-lesson-slot.visited,.subscription-lesson-slot.makeup{background:#f4fff8;border-color:#bdebd0}.subscription-lesson-slot.no-show{background:#fff7f7;border-color:#f5c5c5}.subscription-lesson-slot.excused{background:#f5f7fb;border-color:#d8dded}.subscription-lesson-slot.pending{background:#fbfdff;border-style:dashed}.history-list{gap:8px;margin-top:10px;display:grid}.history-item{border:1px solid var(--line);background:#fbfdff;border-radius:8px;gap:5px;padding:9px;display:grid}.history-item-head,.history-meta{justify-content:space-between;align-items:flex-start;gap:10px;display:flex}.history-item strong{color:var(--ink);font-size:13px;line-height:1.25}.history-item time,.history-meta small{color:var(--muted);white-space:nowrap;font-size:11px;font-weight:800}.history-item span{color:#45546b;font-size:12px;line-height:1.35}.student-detail-drawer .history-list,.student-detail-drawer .history-item,.student-detail-drawer .history-item span{min-width:0;max-width:100%}.student-detail-drawer .history-item span{overflow-wrap:anywhere;word-break:break-word}.action-block{gap:11px;display:grid}.action-head{justify-content:space-between;align-items:center;gap:10px;display:flex}.mode-warning{color:var(--amber);background:#fff4df;border-radius:999px;padding:5px 7px;font-size:12px;font-weight:800}.action-tabs{grid-template-columns:repeat(auto-fit,minmax(86px,1fr));gap:7px;display:grid}.action-tabs button,.primary-action{border:1px solid var(--line);min-height:40px;font:inherit;cursor:pointer;border-radius:8px;font-weight:800}.action-tabs button{color:#32425c;background:#f4f7fc}.action-tabs button.active{color:var(--blue);background:#ecf3ff;border-color:#cfe0fb}.primary-action.active{color:#146c3b;background:#ecf9f1;border-color:#75c69a}.action-form{gap:9px;display:grid}.edit-action-stack{gap:10px;display:grid}.edit-section{background:#fbfdff;border:1px solid #d9e4f5;border-radius:8px;padding:10px}.action-section-title{gap:3px;display:grid}.action-section-title strong{color:var(--ink);font-size:13px}.action-section-title span{color:var(--muted);font-size:12px;line-height:1.35}.field-hint{color:var(--muted);margin:-2px 0 0;font-size:12px;line-height:1.35}.field-hint.warning{color:var(--amber);font-weight:800}.discount-current{background:#f4f8ff;border:1px solid #cfe0fb;border-radius:8px;justify-content:space-between;align-items:center;gap:10px;padding:10px;display:flex}.discount-current div{gap:3px;min-width:0;display:grid}.discount-current strong{color:var(--ink);font-size:13px}.discount-current span{color:var(--muted);font-size:12px;line-height:1.35}.discount-current button{color:#b42318;min-height:34px;font:inherit;cursor:pointer;background:#fff0ef;border:1px solid #ffd9d6;border-radius:8px;padding:0 10px;font-size:12px;font-weight:800}.discount-current button:disabled{opacity:.55;cursor:not-allowed}.topics-panel{gap:12px;display:grid}.topics-empty{border:1px dashed #94a3b880;border-radius:8px;padding:14px}.topic-note-card{background:#fbfdff;border:1px solid #94a3b847;border-radius:8px;gap:8px;padding:10px;display:grid}.topic-note-card label{gap:6px;display:grid}.topic-note-card label span{color:var(--muted);text-transform:uppercase;font-size:11px;font-weight:800}.topic-note-card textarea{resize:vertical;border:1px solid var(--line);width:100%;min-height:66px;color:var(--ink);font:inherit;background:#fff;border-radius:8px;padding:9px 10px;font-size:13px;line-height:1.35}.topic-note-card textarea:focus{border-color:#9dbcf1;outline:none;box-shadow:0 0 0 3px #1d62d61f}.topic-note-actions{justify-content:space-between;align-items:center;gap:8px;display:flex}.topic-note-actions small{min-width:0;color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:11px;overflow:hidden}.topic-note-actions button{min-height:30px;color:var(--blue);cursor:pointer;background:#ecf3ff;border:1px solid #cfe0fb;border-radius:8px;flex:none;padding:6px 11px;font-weight:800}.topic-note-actions button:disabled{color:#7d8ca3;cursor:not-allowed;opacity:.68}.topic-block-list{gap:10px;display:grid}.topic-block{border:1px solid #94a3b859;border-left:5px solid var(--topic-block-color,#94a3b8);background:#fff;border-radius:8px;overflow:hidden}.topic-block-head{background:color-mix(in srgb, var(--topic-block-color,#94a3b8) 18%, #fff);justify-content:space-between;align-items:center;gap:10px;padding:9px 11px;display:flex}.topic-block-toggle{min-width:0;color:var(--ink);cursor:pointer;font:inherit;text-align:left;background:0 0;border:0;align-items:center;gap:7px;padding:0;display:inline-flex}.topic-block-toggle span{color:#64748b;width:14px}.topic-block-toggle small{color:var(--blue);white-space:nowrap;background:#2563eb1a;border-radius:999px;padding:2px 6px;font-size:10px}.topic-block-head strong{color:var(--ink);font-size:13px}.topic-block-actions{flex-shrink:0;align-items:center;gap:8px;display:inline-flex}.topic-block-actions span{color:#475569;white-space:nowrap;font-size:12px}.topic-block-actions button{color:var(--blue);cursor:pointer;background:#fff;border:1px solid #2563eb3d;border-radius:7px;padding:5px 8px;font-size:11px;font-weight:700}.topic-block-actions button:disabled{cursor:default;opacity:.45}.topic-list{display:grid}.topic-row{width:100%;color:var(--ink);cursor:pointer;text-align:left;background:#fff;border:0;border-top:1px solid #e2e8f0e6;grid-template-columns:28px minmax(0,1fr);align-items:center;gap:9px;padding:9px 11px;display:grid}.topic-row:disabled{cursor:default}.topic-row.locked{color:#94a3b8}.topic-check{color:#16a34a;background:#fff;border:1px solid #94a3b88c;border-radius:50%;place-items:center;width:24px;height:24px;font-weight:800;line-height:1;display:inline-grid}.topic-row.next .topic-check{border-color:var(--blue)}.topic-row.locked .topic-check{color:#cbd5e1;background:#f1f5f9}.topic-title{gap:2px;min-width:0;display:grid}.topic-title strong{overflow-wrap:anywhere;flex-wrap:wrap;align-items:center;gap:6px;font-size:12px;line-height:1.28;display:flex}.topic-title strong em{color:#9a5b00;background:#fff4d6;border-radius:999px;padding:1px 5px;font-size:10px;font-style:normal;font-weight:800}.topic-title small{color:var(--muted);font-size:11px}.topic-description{color:#334155;white-space:pre-wrap;border-left:2px solid #94a3b866;margin-top:3px;padding-left:8px;font-size:11px;line-height:1.4;display:block}.balance-adjustment-current{background:#f4f8ff;border:1px solid #cfe0fb;border-radius:8px;grid-template-columns:1fr auto;align-items:center;gap:4px 10px;padding:10px;display:grid}.balance-adjustment-current span{color:var(--muted);text-transform:uppercase;font-size:12px;font-weight:800}.balance-adjustment-current strong{color:#32425c;text-align:center;background:#eef4fb;border-radius:999px;grid-row:span 2;min-width:42px;padding:6px 10px;font-size:22px;line-height:1}.balance-adjustment-current small{color:var(--muted);font-size:12px}.form-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;display:grid}.primary-action{background:var(--blue);color:#fff;border-color:var(--blue)}.primary-action:disabled{opacity:.55;cursor:not-allowed}.signup-page{align-items:center;min-height:100vh;padding:32px 16px;display:grid}.signup-shell{grid-template-columns:minmax(0,1fr) minmax(320px,420px);align-items:start;gap:20px;width:min(980px,100%);margin:0 auto;display:grid}.signup-intro{border:1px solid var(--line);background:linear-gradient(135deg,#f7fbff 0%,#eef5ff 100%);border-radius:8px;align-content:start;min-height:520px;padding:28px;display:grid}.signup-form{border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow);border-radius:8px;gap:12px;padding:18px;display:grid}.signup-choice-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.signup-choice-row label{border:1px solid var(--line);color:#32425c;cursor:pointer;background:#f4f7fc;border-radius:8px;align-items:center;gap:8px;min-height:42px;padding:9px 10px;font-weight:800;display:flex}.signup-choice-row input{margin:0}.signup-slot-note{background:#f4f8ff;border:1px solid #cfe0fb;border-radius:8px;gap:4px;padding:10px;display:grid}.signup-slot-note span{color:var(--muted);font-size:13px}.regular-group-list{gap:8px;display:grid}.signup-schedule-diff{background:#0d1c2be6;border:1px solid #6fbfff3d;border-radius:8px;gap:6px;padding:10px;display:grid}.signup-schedule-diff div{grid-template-columns:92px minmax(0,1fr);gap:8px;display:grid}.signup-schedule-diff strong{color:var(--brand-accent)}.signup-schedule-diff span{color:var(--brand-text)}.field-label{color:var(--muted);text-transform:uppercase;font-size:11px;font-weight:800}.regular-group-choice{grid-template-columns:minmax(0,1fr) minmax(80px,80px);align-items:end;gap:8px;display:grid}.regular-group-choice button{color:#ffc4c4;width:100%;height:40px;min-height:40px;font:inherit;cursor:pointer;background:#48191fe6;border:1px solid #ff6f6fad;border-radius:8px;padding:0 10px;font-size:13px;font-weight:800;box-shadow:inset 0 0 0 1px #ff6f6f14}.regular-group-choice button:hover,.regular-group-choice button:focus-visible{color:#ffd9d9;background:#541d24f0;border-color:#ff6f6fc7;outline:none;box-shadow:inset 0 0 0 1px #ff6f6f1f,0 0 0 3px #ff6f6f14}.regular-group-choice button:disabled{opacity:.55;cursor:not-allowed}.signup-consent{border:1px solid var(--line);color:#475569;background:#fbfdff;border-radius:8px;grid-template-columns:24px minmax(0,1fr);align-items:start;gap:9px;padding:10px;font-size:12px;line-height:1.42;display:grid}.signup-consent input{width:22px;height:22px;accent-color:var(--blue);margin-top:2px}.signup-consent a{color:var(--blue);font-weight:800}.signup-confirmation-groups{gap:3px;margin:0;padding-left:18px;display:grid}.signup-confirmation-groups li{font-weight:500;line-height:1.35}.signup-submit{width:100%}.signup-confirmation-backdrop{z-index:1000;background:#02070eb8;place-items:center;padding:18px;display:grid;position:fixed;inset:0}.signup-confirmation-dialog{background:#1c2b39fa;border:1px solid #6c8eb075;border-radius:8px;gap:12px;width:min(520px,100%);max-height:calc(100vh - 36px);padding:18px;display:grid;overflow:auto;box-shadow:0 24px 64px #02070e75}.signup-confirmation-header{gap:6px;display:grid}.signup-confirmation-header h2{letter-spacing:0;margin:0;font-size:22px;font-weight:800;line-height:1.1}.signup-confirmation-header p:not(.eyebrow){color:var(--brand-muted);margin:0;line-height:1.45}.signup-confirmation-summary{background:#0d1c2be6;border:1px solid #36acff5c;border-radius:8px;gap:4px;padding:12px;display:grid}.signup-confirmation-summary strong{color:var(--blue);text-transform:uppercase;font-size:11px;font-weight:800}.signup-confirmation-summary span{color:var(--brand-text);font-size:16px;font-weight:700}.signup-confirmation-list{gap:8px;margin:0;display:grid}.signup-confirmation-list div{border-bottom:1px solid #6c8eb047;grid-template-columns:112px minmax(0,1fr);gap:10px;padding:10px 0;display:grid}.signup-confirmation-list dt{color:var(--brand-muted);text-transform:uppercase;font-size:12px;font-weight:800}.signup-confirmation-list dd{color:var(--brand-text);margin:0;font-weight:500;line-height:1.35}.signup-confirmation-help{color:#ffe9a6;background:#4e380cb8;border:1px solid #ffd37875;border-radius:8px;margin:0;padding:10px;line-height:1.42}.signup-confirmation-close{width:100%}.privacy-page{background:var(--bg);min-height:100vh;padding:24px 16px}.privacy-document{border:1px solid var(--line);background:var(--surface);width:min(920px,100%);box-shadow:var(--shadow);border-radius:8px;margin:0 auto;padding:24px}.privacy-document header{gap:10px;margin-bottom:24px;display:grid}.privacy-document h1{font-size:34px;line-height:1.08}.privacy-document section{border-top:1px solid var(--line);gap:8px;padding-top:18px;display:grid}.privacy-document section+section{margin-top:18px}.privacy-document h2{font-size:20px}.privacy-document p{color:#334155;font-size:14px;line-height:1.58}.public-schedule-page{background:linear-gradient(180deg, #ffffffd6, #f5f7fbf5), var(--bg);min-height:100vh;padding:18px}.public-schedule-shell{gap:14px;width:min(1120px,100%);margin:0 auto;display:grid}.public-schedule-hero{border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow);border-radius:8px;gap:12px;padding:18px;display:grid}.public-schedule-hero h1{font-size:34px;line-height:1.08}.public-schedule-hero p{max-width:720px;color:var(--muted);font-size:16px;line-height:1.45}.public-schedule-hero-actions,.public-schedule-legend{flex-wrap:wrap;gap:8px;display:flex}.public-schedule-hero-actions span,.public-schedule-legend span{border:1px solid var(--line);color:#34425a;background:#f7f9fd;border-radius:999px;align-items:center;gap:7px;min-height:34px;padding:8px 11px;font-size:13px;font-weight:800;display:inline-flex}.public-schedule-legend{border:1px solid var(--line);background:#fffc;border-radius:8px;padding:12px}.public-schedule-legend i{border-radius:4px;width:14px;height:14px;display:inline-block}.public-schedule-legend i.free{background:#bfe0b3}.public-schedule-legend i.full{background:#efa0a4}.public-schedule-legend i.three-d{background:#bfd4f4}.public-schedule-days{grid-template-columns:repeat(5,minmax(0,1fr));align-items:start;gap:10px;display:grid}.public-schedule-branch-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.public-schedule-branch-list a{border:1px solid var(--line);background:var(--surface);min-height:116px;color:var(--ink);border-radius:8px;align-content:center;gap:6px;padding:18px;text-decoration:none;display:grid;box-shadow:0 10px 24px #1c2c4812}.public-schedule-branch-list strong{color:var(--blue);font-size:20px}.public-schedule-branch-list span{color:var(--muted);font-weight:800}.public-schedule-day,.public-schedule-empty{border:1px solid var(--line);background:var(--surface);border-radius:8px;overflow:hidden;box-shadow:0 10px 24px #1c2c4812}.public-schedule-day-head{color:#fff;background:#07111f;justify-content:space-between;align-items:center;gap:10px;min-height:48px;padding:12px;display:flex}.public-schedule-day-head span{color:#ffbc35;font-size:16px;font-weight:900}.public-schedule-day-head strong{background:#ffffff1f;border-radius:999px;justify-content:center;align-items:center;min-width:30px;min-height:30px;display:inline-flex}.public-schedule-slot-list{display:grid}.public-schedule-slot{border-top:1px solid var(--line);grid-template-columns:62px minmax(0,1fr);gap:10px;padding:10px;display:grid}.public-schedule-slot.free{background:#f2faef}.public-schedule-slot.full{background:#fff1f2}.public-schedule-slot.three-d{background:#edf5ff}.public-schedule-slot-time{color:#fff;background:#08111d;border-radius:7px;justify-content:center;align-items:center;min-height:42px;font-size:18px;font-weight:900;display:flex}.public-schedule-slot-body{gap:8px;min-width:0;display:grid}.public-schedule-slot-main,.public-schedule-slot-meta{justify-content:space-between;align-items:center;gap:8px;min-width:0;display:flex}.public-schedule-slot-main{align-items:flex-start}.public-schedule-slot-main strong{color:#1e3658;font-size:15px;line-height:1.2}.public-schedule-slot-main span{max-width:110px;color:var(--muted);text-align:right;font-size:12px;line-height:1.25}.public-schedule-slot-meta span,.public-schedule-slot-meta b{color:#283850;white-space:nowrap;background:#ffffffbd;border-radius:999px;align-items:center;min-height:28px;padding:6px 8px;font-size:13px;line-height:1;display:inline-flex}.public-schedule-slot.free .public-schedule-slot-meta b{color:var(--green)}.public-schedule-slot.full .public-schedule-slot-meta b{color:#a51d2a}.public-schedule-slot.three-d .public-schedule-slot-meta b{color:var(--blue)}.public-schedule-slot-action,.public-schedule-empty a{border:1px solid var(--blue);background:var(--blue);color:#fff;text-align:center;border-radius:8px;justify-content:center;align-items:center;min-height:42px;padding:11px 12px;font-weight:900;text-decoration:none;display:flex}.public-schedule-slot-action.secondary{color:#a51d2a;background:#fff;border-color:#fecdd3}.public-schedule-empty{gap:10px;padding:18px;display:grid}.public-schedule-empty p{color:var(--muted)}.public-schedule-page .public-schedule-shell{gap:12px;width:min(760px,100%)}.public-schedule-page .public-schedule-hero{box-shadow:none;background:0 0;border:0;gap:2px;padding:4px 2px 0}.public-schedule-page .public-schedule-hero h1{font-size:32px;line-height:1.08}.public-schedule-page .public-schedule-hero p{font-size:14px}.public-schedule-page .public-schedule-legend{gap:6px;padding:6px}.public-schedule-page .public-schedule-legend span{min-height:28px;padding:5px 9px;font-size:12px}.public-schedule-page .public-schedule-legend i{width:12px;height:12px}.public-schedule-seasons{gap:18px;display:grid}.public-schedule-season{background:#0b1b2b8a;border:1px solid #f6f6f624;border-radius:14px;gap:10px;min-width:0;padding:12px;display:grid}.public-schedule-season.enrollment_open{border-color:#4bdcff85;box-shadow:inset 0 0 0 1px #4bdcff14}.public-schedule-season-head{gap:4px;min-width:0;padding:4px 4px 2px;display:grid}.public-schedule-season-head span{color:var(--brand-student-name);letter-spacing:.08em;text-transform:uppercase;font-size:12px;font-weight:800}.public-schedule-season-head h2{color:var(--brand-text);margin:0;font-size:22px;line-height:1.15}.public-schedule-season-head p{color:var(--muted);margin:0;font-size:13px}.public-schedule-page .public-schedule-days{grid-template-columns:1fr}.public-schedule-page .public-schedule-day{padding:8px;overflow:visible}.public-schedule-page .public-schedule-day-head{min-height:38px;color:var(--brand-text);background:#1b2c3ffa;border:1px solid #f6f6f624;border-radius:8px;margin-bottom:8px;padding:8px 10px}.public-schedule-page .public-schedule-day-head span{color:var(--brand-text);font-size:17px}.public-schedule-page .public-schedule-day-head strong{color:#5e6c82;background:0 0;border-radius:0;min-width:auto;min-height:auto;font-size:13px}.public-schedule-page .public-schedule-day-head strong:after{content:" гр."}.public-schedule-page .public-schedule-slot-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.public-schedule-page .public-schedule-slot{min-height:70px;color:var(--brand-text);border-top:0;border-radius:8px;grid-template-columns:1fr;align-content:start;gap:6px;padding:8px 9px;text-decoration:none;display:grid}.public-schedule-page .public-schedule-slot.free{background:#06392fdb;border:1px solid #49df9e85;border-left:4px solid #49df9edb}.public-schedule-page .public-schedule-slot.full{background:#473813e6;border:1px solid #fee7a7a8;border-left:4px solid #fee7a7e0}.public-schedule-page .public-schedule-slot.three-d{background:#0d3052e0;border:1px solid #63d9ff6b;border-left:4px solid #63d9ff}.public-schedule-card-head{justify-content:space-between;align-items:flex-start;gap:8px;display:flex}.public-schedule-card-head strong{color:var(--brand-text);font-size:17px;line-height:1}.public-schedule-card-instructor,.public-schedule-card-status,.public-schedule-card-kind{color:#a7ffd8;white-space:nowrap;background:#63d9ff21;border:1px solid #f6f6f614;border-radius:999px;align-items:center;width:fit-content;min-height:20px;padding:4px 7px;font-size:11px;font-weight:900;line-height:1;display:inline-flex}.public-schedule-card-instructor{color:var(--brand-text);font-size:13px;font-weight:900}.public-schedule-card-status{margin-top:0;font-size:12px}.public-schedule-page .public-schedule-slot.full .public-schedule-card-instructor,.public-schedule-page .public-schedule-slot.full .public-schedule-card-status{color:var(--brand-accent)}.public-schedule-page .public-schedule-slot.three-d .public-schedule-card-instructor,.public-schedule-page .public-schedule-slot.three-d .public-schedule-card-status,.public-schedule-card-kind{color:#63d9ff}.public-schedule-page .public-schedule-slot[aria-disabled=true]{cursor:not-allowed}.public-schedule-page .public-schedule-slot:not([aria-disabled=true]):hover,.public-schedule-page .public-schedule-slot:not([aria-disabled=true]):focus-visible{background:#33495df5;border-color:#63d9ffc7;outline:none;box-shadow:0 0 0 3px #2de8ff24}.action-message{border-radius:8px;padding:9px 10px;font-size:13px;line-height:1.4}.action-message.success{color:var(--green);background:#e7f7ef}.action-message.error{color:#b42318;background:#fff0ef}.stack{gap:10px;display:grid}.mini-card{gap:5px;padding:12px;display:grid}@media (max-width:1400px){.lesson-roster-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.regular-section{grid-column:1/-1}.regular-section .lesson-row{grid-template-columns:minmax(200px,1.1fr) minmax(64px,.28fr) minmax(70px,.3fr) minmax(92px,.36fr) minmax(132px,.34fr) minmax(142px,.5fr) minmax(76px,.25fr)}}@media (max-width:1180px){:is(.lesson-admin-row,.lesson-admin-row:has(.capacity-reason-control)){grid-template-columns:1fr}:is(.capacity-editor,.capacity-editor:has(.capacity-reason-control)){grid-template-columns:72px minmax(160px,1fr) 84px}.lesson-add-student{grid-template-columns:minmax(220px,1.2fr) minmax(140px,.7fr) minmax(140px,.7fr)}.lesson-overflow-reason,.lesson-add-actions{grid-column:1/-1}.lesson-add-actions{grid-template-columns:repeat(2,minmax(120px,1fr))}.regular-payment-form{grid-template-columns:minmax(180px,1.3fr) minmax(82px,.45fr) minmax(74px,.36fr)}.regular-payment-comment,.lesson-comment-form,.regular-payment-form button{grid-column:1/-1}.lesson-comment-form{grid-template-columns:1fr}}@media (max-width:980px){.topbar,.group-card div:first-child{flex-direction:column}.topbar-actions,.scope-switchers,.switcher-group{justify-items:stretch}.topbar-actions{justify-content:stretch;width:100%;display:grid}.scope-switchers{justify-content:stretch;display:grid}.switcher-group{gap:4px;display:grid}.user-pill{justify-content:flex-start;min-width:0}.user-pill strong{max-width:none}.kpi-grid,.content-grid,.group-grid,.operations-grid,.operations-detail-grid,.season-preview-grid,.season-risk-grid,.season-manager-copy,.season-manager-editor,.season-manager-season-editor,.season-manager-bulk-editor,.season-manager-group-list,.student-tools,.student-summary-row,.lesson-roster-grid,.quick-booking-grid,.student-work-grid{grid-template-columns:1fr}.panel.wide{grid-column:auto}.lesson-detail-drawer{border-radius:8px;width:auto;inset:8px}.student-detail-drawer{padding:12px}.student-detail-drawer .detail-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.student-detail-drawer .action-tabs{grid-template-columns:repeat(auto-fit,minmax(128px,1fr))}.student-detail-drawer .action-form{grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}.lesson-detail-head{display:grid}.lesson-detail-head-actions{place-items:stretch stretch}.lesson-title-row{align-items:flex-start}.lesson-detail-stats{justify-content:flex-start}.student-detail-card{position:static}.signup-shell{grid-template-columns:1fr}.signup-intro{min-height:auto}.public-schedule-days,.public-schedule-branch-list{grid-template-columns:1fr}.public-schedule-hero h1{font-size:28px}.signup-choice-row,.signup-form .form-row{grid-template-columns:1fr}.signup-confirmation-dialog{padding:16px}.signup-confirmation-list div{grid-template-columns:1fr;gap:4px}.lesson-add-student,.student-suggestions button{grid-template-columns:1fr}.student-suggestions button>span{white-space:normal;flex-wrap:wrap;justify-content:flex-start}:is(.lesson-admin-row,.lesson-admin-row:has(.capacity-reason-control)),:is(.capacity-editor,.capacity-editor:has(.capacity-reason-control)){grid-template-columns:1fr}.capacity-editor:has(.capacity-reason-control) .capacity-reason-control{grid-column:1/-1}.lesson-transfer-row,.regular-payment-form,.regular-section .lesson-row{grid-template-columns:1fr}.lesson-row-header{display:none}.form-row{grid-template-columns:1fr}h1{font-size:32px}}@media (max-width:900px){html,body{overflow-x:clip}.page-shell,.content-grid,.panel,.students-panel,.schedule-board,.schedule-day,.schedule-day-stack,.schedule-slot,.lesson-detail,.lesson-row{min-width:0;max-width:100%}.schedule-board{overflow-x:hidden;grid-template-columns:1fr!important}.schedule-board .schedule-day-stack,.schedule-board.single-day .schedule-day-stack{grid-template-columns:1fr}.lesson-detail-backdrop,.lesson-detail-drawer{left:0;right:0;transform:none}.lesson-detail-backdrop{z-index:90}.lesson-detail-drawer{z-index:91;max-width:100vw;overflow-x:hidden}.lesson-detail{overflow-x:hidden}}@media (max-width:720px){body{background:#f7f9fc}.page-shell{width:100%;padding:12px 8px 24px}.topbar{gap:12px;margin-bottom:10px}.eyebrow{margin-bottom:5px;font-size:11px}h1{font-size:24px;line-height:1.08}h2{font-size:18px}.subhead{margin-top:7px;font-size:13px;line-height:1.35}.topbar-actions{grid-template-columns:1fr;gap:8px}.source-pill{width:fit-content;min-width:0;padding:7px 10px;font-size:12px}.scope-switchers{gap:6px}.switcher-group{justify-items:stretch}.season-switcher{border-radius:8px;width:100%;overflow-x:auto}.season-switcher a{flex:1 0 auto;min-width:94px;min-height:36px;padding:9px 10px}.workspace-nav{z-index:60;margin-inline:-8px;-webkit-overflow-scrolling:touch;background:#fffffffa;border-inline:0;border-radius:0;margin-bottom:10px;padding:7px 8px;scroll-padding-inline:8px;position:sticky;top:0;box-shadow:0 10px 20px #1c2c481f}.workspace-nav a{min-height:40px;padding:10px 11px;font-size:13px}.workspace-nav .nav-action{margin-left:0}.kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-bottom:10px}.task-card.compact{min-height:72px;padding:10px}.task-card span{font-size:12px}.task-card.compact strong{font-size:22px}.task-card small{-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:11px;line-height:1.25;display:-webkit-box;overflow:hidden}.content-grid{gap:10px}.panel{border-radius:8px;padding:12px;box-shadow:0 10px 22px #1c2c4812}.panel[id]{scroll-margin-top:64px}.students-panel{--schedule-head-offset:112px}.students-panel>.section-head{box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;background:0 0;border-bottom:0;border-radius:0;margin:0 0 10px;padding:0;position:static}.section-head{gap:8px;margin-bottom:10px}.section-head p{font-size:13px;line-height:1.3}.summary-chip,.journal-stats span,.schedule-summary span{padding:6px 8px;font-size:11px}.schedule-toolbar{justify-items:stretch;width:100%}.week-switcher,.schedule-day-filter,.schedule-summary{justify-content:flex-start}.week-switcher{flex-wrap:nowrap;padding-bottom:2px;overflow-x:auto}.week-switcher button,.schedule-day-filter button{flex:none;min-height:40px;padding:0 11px}.schedule-day-filter{flex-wrap:nowrap;max-width:none;padding-bottom:2px;overflow-x:auto}.schedule-board{grid-template-columns:1fr;padding-top:4px;overflow-x:visible}.schedule-board.single-day .schedule-day-stack{grid-template-columns:1fr}.schedule-day{min-width:0}.schedule-day-head{min-height:40px}.schedule-board.single-day .schedule-day-head{top:0}.schedule-slot{gap:9px;padding:11px}.schedule-slot-head strong{font-size:21px}.schedule-slot-head span,.schedule-slot-meta span{font-size:12px}.schedule-person-list{gap:5px}.schedule-person{padding:5px 7px;font-size:12px}.lesson-detail-backdrop{background:#18223547}.lesson-detail-drawer{overscroll-behavior:contain;border:0;border-radius:0;inset:0;overflow-y:auto}.lesson-detail{min-height:100%;padding:max(12px, env(safe-area-inset-top)) 10px max(18px, env(safe-area-inset-bottom));gap:10px}.lesson-detail-head{z-index:2;margin:calc(-1 * max(12px, env(safe-area-inset-top))) -10px 0;padding:max(12px, env(safe-area-inset-top)) 10px 10px;border-bottom:1px solid var(--line);background:#fffffffa;gap:10px;position:sticky;top:0;box-shadow:0 8px 20px #18223514}.lesson-title-row h3{font-size:21px;line-height:1.15}.lesson-detail-head p{font-size:13px}.lesson-detail-head-actions{grid-template-columns:repeat(2,minmax(0,1fr));width:100%}.lesson-detail-stats{grid-column:1/-1}.lesson-detail-close,.lesson-detail-refresh{min-height:42px}.lesson-group-nav{grid-template-columns:42px minmax(0,1fr) 42px;align-items:center;gap:8px;width:min(100%,420px);margin-inline:auto;display:grid}.lesson-group-nav button{justify-self:center;width:42px;height:42px}.lesson-group-nav span{text-align:center;place-items:center;min-height:34px;display:grid}.lesson-admin-row{gap:8px}:is(.capacity-editor,.capacity-editor:has(.capacity-reason-control),.lesson-add-student,.regular-payment-form,.one-time-payment-form,.lesson-comment-form){grid-template-columns:1fr;gap:8px;padding:8px}.booking-mode-row{grid-template-columns:repeat(2,minmax(0,1fr));margin-bottom:0}.booking-mode-row button,.primary-action,.secondary-action,.regular-payment-form button,.lesson-comment-form button{min-height:42px}.lesson-add-actions{grid-template-columns:1fr}.selected-student-pill{align-items:stretch}.lesson-section{padding:10px}.lesson-row{gap:9px;padding:10px}.regular-section .lesson-row{gap:10px}.lesson-person-title{align-items:flex-start}.lesson-balance-chip,.attendance-tag{font-size:12px!important}.lesson-actions{grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.lesson-actions button,.lesson-more-actions summary,.lesson-more-actions-panel button{min-height:40px;font-size:12px}.lesson-more-actions-panel{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.lesson-transfer-row{gap:8px}.lesson-transfer-row select,.lesson-transfer-row button{min-height:42px}.lesson-student-detail-panel{padding:6px}.students-workspace .table-wrap{display:none}.mobile-student-results{gap:6px;display:grid}.mobile-student-card{border:1px solid var(--line);width:100%;min-height:54px;color:var(--ink);font:inherit;text-align:left;background:#fbfdff;border-radius:8px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px;padding:8px;display:grid}.mobile-student-card.selected{background:#f3f8ff;border-color:#9fc0f4;box-shadow:inset 0 0 0 1px #cfe0fb}.mobile-student-card-main{gap:2px;min-width:0;display:grid}.mobile-student-card-main strong{text-overflow:ellipsis;white-space:nowrap;font-size:15px;line-height:1.15;overflow:hidden}.mobile-student-card-main span{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:11px;line-height:1.2;overflow:hidden}.mobile-student-card-stats{align-items:center;gap:4px;display:flex}.mobile-student-card-stats .lesson-balance,.mobile-student-card-stats .makeup-count{margin:0;font-size:11px}.student-detail-desktop-shell{display:none}.mobile-student-detail-backdrop{z-index:92;display:block}.mobile-student-detail-panel{z-index:93;overscroll-behavior:contain;width:100vw;max-width:100vw;padding:max(8px, env(safe-area-inset-top)) 8px max(14px, env(safe-area-inset-bottom));background:#fff;border:0;border-radius:0;align-content:start;gap:6px;display:grid;position:fixed;inset:0;overflow:hidden auto}.mobile-student-detail-panel .lesson-student-detail-head{top:calc(-1 * max(8px, env(safe-area-inset-top)));z-index:2;margin:calc(-1 * max(8px, env(safe-area-inset-top))) -8px 0;padding:max(8px, env(safe-area-inset-top)) 8px 8px;border-bottom:1px solid var(--line);background:#fffffffa;position:sticky;box-shadow:0 8px 20px #18223514}.student-detail-card.compact .detail-grid,.student-detail-card.compact .action-form,.student-detail-card.compact .form-row,.student-detail-card.compact .history-list{grid-template-columns:1fr}.mobile-student-detail-panel .student-detail-card,.student-detail-card.compact{width:100%;min-width:0;max-width:100%;overflow-x:hidden}.student-detail-card.compact .detail-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.student-detail-card.compact .detail-item{gap:3px;min-height:auto;padding:8px}.student-detail-card.compact .detail-item span{font-size:10px;line-height:1.1}.student-detail-card.compact .detail-item strong{font-size:14px;line-height:1.15}.student-detail-card.compact .detail-item small{font-size:10px;line-height:1.15}.student-detail-card.compact .action-tabs{grid-template-columns:repeat(2,minmax(0,1fr));gap:5px;padding-bottom:2px;display:grid;overflow-x:hidden}.student-detail-card.compact .action-tabs button{white-space:normal;min-width:0;min-height:32px;padding:0 8px;font-size:12px}.student-detail-card.compact .schedule-list{display:grid}.student-detail-card.compact .subscription-card,.student-detail-card.compact .subscription-card-head,.student-detail-card.compact .subscription-card-head>div,.student-detail-card.compact .subscription-lesson-grid,.student-detail-card.compact .subscription-lesson-slot,.student-detail-card.compact .history-list,.student-detail-card.compact .history-item,.student-detail-card.compact .history-item-head,.student-detail-card.compact .history-meta,.student-detail-card.compact .subscription-history-list{min-width:0;max-width:100%;overflow-x:hidden}.student-detail-card.compact .subscription-lesson-grid{grid-template-columns:repeat(auto-fit,minmax(132px,1fr))}.student-detail-card.compact .subscription-card-head strong,.student-detail-card.compact .subscription-card-head span,.student-detail-card.compact .subscription-lesson-slot span,.student-detail-card.compact .subscription-lesson-slot small,.student-detail-card.compact .history-item strong,.student-detail-card.compact .history-item span{overflow-wrap:anywhere;word-break:break-word;min-width:0;max-width:100%}.student-detail-card.compact .history-head{flex-wrap:wrap;align-items:stretch}.student-detail-card.compact .history-head-actions{justify-content:space-between;width:100%}.student-detail-card.compact .subscription-edit-toggle{white-space:normal;width:100%;min-height:34px}.student-detail-card.compact .admin-correction-controls button{white-space:normal;overflow-wrap:anywhere}.student-detail-card.compact .topics-panel,.student-detail-card.compact .topics-panel,.student-detail-card.compact .topic-note-card,.student-detail-card.compact .topic-block-list,.student-detail-card.compact .topic-block,.student-detail-card.compact .topic-list,.student-detail-card.compact .topic-row,.student-detail-card.compact .topic-title{min-width:0;max-width:100%;overflow-x:hidden}.student-detail-card.compact .topic-row{box-sizing:border-box;inline-size:100%;width:100%;grid-template-columns:28px minmax(0,1fr);min-inline-size:0}.student-detail-card.compact .topic-title{inline-size:100%;min-inline-size:0}.student-detail-card.compact .topic-note-card textarea{overflow-wrap:anywhere;min-width:0;max-width:100%}.student-detail-card.compact .topic-block-head{align-items:flex-start;min-width:0}.student-detail-card.compact .topic-block-toggle{min-width:0}.student-detail-card.compact .topic-block-actions{flex-shrink:0}.student-detail-card.compact .topic-title strong,.student-detail-card.compact .topic-title small,.student-detail-card.compact .topic-description{min-width:0;max-width:100%;overflow-wrap:anywhere;word-break:break-word;min-inline-size:0;display:block}.journal-filter-row,.journal-toolbar{flex-direction:column;align-items:stretch}.journal-toolbar{justify-content:flex-start}.journal-search-control{width:100%;max-width:none}.journal-export-button{min-height:40px}.payment-journal-scroll,.makeup-journal-scroll,.students-workspace .table-wrap,.archive-table-wrap,.duplicate-table-wrap,.lead-workspace,.operation-items{max-height:68vh}}@media (max-width:640px){#payments{padding:12px 10px}#payments .section-head{gap:8px}#payments .section-head h2{font-size:22px;line-height:1.12}#payments .section-head p{font-size:13px;line-height:1.3}#payments .journal-stats{gap:6px}#payments .journal-stats span{padding:6px 8px;font-size:12px}#payments .journal-filter-row{gap:8px;width:100%;margin-bottom:10px;display:grid}#payments .journal-filter-row strong{font-size:18px;line-height:1.2}#payments .journal-search-control{gap:5px;max-width:none}#payments .journal-search-control input{min-height:40px;padding:8px 10px;font-size:16px}#payments .journal-toolbar{gap:8px;width:100%;display:grid}#payments .week-switcher.compact{grid-template-columns:minmax(0,1fr) minmax(0,1fr) 42px 42px;gap:6px;width:100%;display:grid}#payments .week-switcher.compact button{min-width:0;min-height:40px;color:var(--brand-text);background:#0d1c2bdb;border-color:#63d9ff33;padding:0 8px;font-size:13px}#payments .week-switcher.compact button.active{color:var(--brand-accent);background:#fee7a72e;border-color:#fee7a7b3}#payments .week-switcher.compact .week-nav-button{padding:0;font-size:18px;line-height:1}#payments .week-switcher.compact .current-week-button{display:none}#payments .journal-export-button{color:#a7ffd8;background:#06392fad;border-color:#49df9e61;width:100%;min-height:42px}.payment-journal-scroll{border:0;border-radius:0;width:100%;max-height:none;overflow:visible}.payment-journal-table{border-collapse:separate;border-spacing:0 8px;background:0 0;width:100%;min-width:0;font-size:13px}.payment-journal-table thead{display:none}.payment-journal-table tbody,.payment-journal-table tr,.payment-journal-table td{width:100%;display:block}.payment-journal-table tr{border:1px solid var(--line);background:#fbfdff;border-radius:8px;grid-template-columns:minmax(0,1fr) auto;gap:7px 10px;width:100%;padding:10px;display:grid}.payment-journal-table tr.editing-row{background:#f3f8ff;grid-template-columns:1fr}.payment-journal-table td{border-bottom:0;min-width:0;padding:0}.payment-journal-table td:before{content:attr(data-label);color:var(--muted);text-transform:uppercase;margin-bottom:2px;font-size:10px;font-weight:800;line-height:1.1;display:block}.payment-journal-table td[data-label=Дата]{grid-column:1}.payment-journal-table td[data-label=Ученик]{grid-area:1/1/auto/-1;padding-right:92px}.payment-journal-table td[data-label=Сумма]{text-align:right;grid-area:1/2;justify-self:end;min-width:84px}.payment-journal-table td[data-label=Способ]{text-align:right;grid-area:2/2;justify-self:end}.payment-journal-table td[data-label=Комментарий],.payment-journal-table td[data-label=Действия]{grid-column:1/-1}.payment-journal-table td[data-label=Комментарий] span{overflow-wrap:anywhere;display:inline}.payment-journal-table td[data-label=Действия]:before{display:none}.payment-journal-table td strong{font-size:15px;line-height:1.2}.payment-journal-table td[data-label=Ученик] strong{max-width:calc(100% - 92px)}.payment-journal-table td[data-label=Ученик] span{overflow-wrap:anywhere;white-space:normal;max-width:100%;display:block}.payment-journal-table td span,.payment-journal-table td small{margin-top:2px;font-size:12px;line-height:1.25}.payment-journal-table .journal-status{white-space:nowrap;padding:5px 8px;font-size:12px}.payment-journal-table .journal-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;display:grid}.payment-journal-table .journal-actions button{min-height:36px;padding:0 8px;font-size:12px}.payment-journal-table input,.payment-journal-table select{min-height:38px;font-size:16px}}@media (max-width:560px){.page-shell{padding-inline:6px}h1{font-size:21px}.subhead{display:none}.kpi-grid{grid-template-columns:1fr}.task-card.compact{grid-template-columns:1fr auto;align-items:center;min-height:60px}.task-card.compact small{display:none}.section-head{display:grid}.schedule-slot-head{align-items:center}.schedule-slot-meta span{max-width:100%}.lesson-title-row h3{font-size:19px}.lesson-detail{padding-inline:8px}.lesson-detail-stats{gap:5px}.booking-mode-row,.lesson-actions,.lesson-more-actions-panel{grid-template-columns:1fr}.lesson-actions button,.lesson-more-actions summary,.lesson-more-actions-panel button{min-height:44px}.regular-payment-form input,.regular-payment-form select,.regular-payment-form button,.field-control input,.field-control select,.field-control textarea{font-size:16px}.journal-stats{justify-content:flex-start}}@media (max-width:720px){.topbar{gap:7px}.topbar>div:first-child{gap:4px;display:grid}.eyebrow{margin-bottom:0}h1{font-size:20px;line-height:1.1}.source-pill{min-height:30px;padding:6px 9px}.scope-switchers{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.switcher-label{font-size:10px}.season-switcher{gap:3px;padding:3px}.season-switcher a{min-width:0;min-height:34px;padding:8px 7px;font-size:12px}.workspace-nav{padding-block:5px;top:0}.workspace-nav a{min-height:34px;padding:8px 9px;font-size:12px}.kpi-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.mobile-hidden-task{display:none}.mobile-booking-shortcut{color:#fff;background:#2563eb;border-color:#1d4ed8;display:grid}.mobile-booking-shortcut span,.mobile-booking-shortcut strong{color:#fff}.task-card.compact{gap:3px;min-height:64px;padding:7px}.task-card span{font-size:10px;line-height:1.15}.task-card.compact strong{text-align:right;font-size:20px}.task-card small{-webkit-line-clamp:2;font-size:10px;line-height:1.15}.panel{padding:10px}.section-head{margin-bottom:8px}.section-head p{font-size:12px}#schedule .section-head p{display:none}#groups .section-head{margin-bottom:6px}#groups .section-head p{display:none}.group-grid{gap:8px}.group-day-column{gap:6px}.group-day-head{min-height:30px;padding:6px 8px}.group-day-head strong{font-size:17px}.group-day-head span{font-size:12px}.group-day-list{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.group-card{border-left-width:3px;grid-template-columns:minmax(0,1fr) auto;align-content:start;align-items:start;gap:4px;min-height:76px;padding:7px}.group-card div:first-child{gap:2px;min-width:0;display:grid}.group-card strong{font-size:16px}.group-card div:first-child span{font-size:11px}.group-card .capacity{grid-area:1/2;padding:3px 5px;font-size:11px}.group-card p{display:none}.group-place-note{grid-column:1/-1;padding:2px 5px;font-size:10px}.week-switcher{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;display:grid;overflow:visible}.week-switcher button{min-height:34px;padding:0 6px;font-size:12px}.schedule-day-filter{grid-template-columns:repeat(5,minmax(0,1fr));gap:5px;display:grid;overflow:visible}.schedule-day-filter button{justify-content:center;gap:3px;min-width:0;min-height:34px;padding:4px 3px;font-size:11px}.schedule-day-filter small{font-size:9px}.schedule-summary{gap:5px}.schedule-summary span{padding:5px 7px;font-size:11px}.lesson-detail{padding-block:8px max(14px, env(safe-area-inset-bottom));gap:8px}.lesson-detail-head{gap:7px;margin:-8px -10px 0;padding:8px 10px}.detail-kicker{font-size:10px}.lesson-title-row{gap:6px}.lesson-title-row h3{font-size:18px}.lesson-group-nav button{width:38px;height:38px}.lesson-group-nav{grid-template-columns:38px minmax(0,1fr) 38px}.lesson-detail-head p{font-size:12px;line-height:1.25}.lesson-detail-head-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.lesson-detail-close,.lesson-detail-refresh{min-height:36px;font-size:12px}.lesson-detail-stats span{padding:5px 7px;font-size:11px}.lesson-admin-row{gap:7px;padding:7px}.lesson-admin-compact-actions{grid-template-columns:repeat(2,minmax(0,1fr))}.lesson-admin-compact-actions>.primary-action,.lesson-capacity-details summary{min-height:36px;padding:8px;font-size:12px}.lesson-add-student{padding:7px}.booking-mode-row{grid-template-columns:repeat(4,minmax(0,1fr));gap:5px}.booking-mode-row button{min-height:34px;padding:0 4px;font-size:11px}.field-control{gap:4px}.field-control span{font-size:10px}.field-control input,.field-control select,.field-control textarea{min-height:36px;padding:7px 9px;font-size:13px}.lesson-section{gap:7px;padding:8px}.lesson-row-list{gap:7px}.lesson-row{gap:6px;padding:8px}.regular-section .lesson-row{grid-template-columns:minmax(0,1fr) auto auto auto;align-items:center}.regular-section .lesson-row>.lesson-person-main{grid-column:1/-1}.regular-section .lesson-row>div:nth-child(2),.regular-section .lesson-row>div:nth-child(3),.regular-section .lesson-row>div:nth-child(4){min-width:0}.regular-section .lesson-row>.lesson-row-topics{grid-column:1/-1}.regular-section .lesson-row>.lesson-actions{grid-column:1/4}.regular-section .lesson-row>.lesson-more-actions{grid-column:4/5}.regular-section .lesson-row>.lesson-more-actions[open]{grid-column:1/-1}.regular-section .lesson-row>.lesson-more-actions[open] summary{width:fit-content;min-width:92px}.regular-section .lesson-row>.lesson-more-actions[open] .lesson-more-actions-panel{grid-template-columns:repeat(3,minmax(0,1fr));align-items:stretch}.regular-section .lesson-row>.lesson-more-actions[open] .lesson-transfer-row{grid-column:1/-1;grid-template-columns:minmax(0,1fr) minmax(92px,auto);width:100%;min-width:0}.regular-section .lesson-row>.lesson-more-actions[open] .lesson-transfer-row select{text-overflow:ellipsis;width:100%;min-width:0;max-width:100%;overflow:hidden}.lesson-person-title{gap:6px}.lesson-person-button strong{padding-inline:0;font-size:18px}.lesson-row span{margin-top:1px;font-size:11px}.lesson-balance-chip,.attendance-tag{padding:4px 7px;margin-top:0!important}.lesson-row-comment{align-items:center;gap:6px;display:flex}.lesson-row-topics{align-items:center;gap:5px;max-width:none;display:flex}.lesson-topic-chip{width:auto;max-width:165px;min-height:30px;padding:4px 8px}.lesson-topic-chip strong{max-width:135px;font-size:11px}.lesson-actions{grid-template-columns:repeat(3,minmax(0,1fr));gap:5px;display:grid}.lesson-actions button,.lesson-more-actions summary{min-height:34px;padding:0 5px;font-size:11px}.lesson-more-actions-panel{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (max-width:560px){.public-schedule-page{padding:10px}.public-schedule-page .public-schedule-shell{gap:8px}.public-schedule-hero,.public-schedule-legend,.public-schedule-empty{padding:12px}.public-schedule-page .public-schedule-hero{padding:2px 0 0}.public-schedule-page .public-schedule-hero h1{font-size:23px}.public-schedule-page .public-schedule-legend{padding:7px}.public-schedule-hero-actions,.public-schedule-legend{gap:6px}.public-schedule-hero-actions span,.public-schedule-legend span{min-height:32px;padding:7px 9px;font-size:12px}.public-schedule-slot{grid-template-columns:58px minmax(0,1fr);gap:8px}.public-schedule-slot-time{font-size:16px}.public-schedule-slot-main,.public-schedule-slot-meta{align-items:flex-start}.public-schedule-slot-main{gap:3px;display:grid}.public-schedule-slot-main span{text-align:left;max-width:none}.public-schedule-slot-action{min-height:44px}.public-schedule-page .public-schedule-slot-list{grid-template-columns:repeat(2,minmax(0,1fr))}.public-schedule-page .public-schedule-slot{grid-template-columns:1fr;gap:4px;min-height:86px}.public-schedule-page .public-schedule-slot p{font-size:12px}.public-schedule-card-head strong{font-size:18px}.public-schedule-card-instructor,.public-schedule-card-status,.public-schedule-card-kind{padding:5px 7px;font-size:12px}.public-schedule-card-status{font-size:12px}.kpi-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.task-card.compact{grid-template-columns:1fr auto;min-height:58px;padding:6px}.task-card.compact small{display:none}.schedule-day-filter{grid-template-columns:repeat(5,minmax(0,1fr))}.booking-mode-row{grid-template-columns:repeat(2,minmax(0,1fr))}.lesson-actions{grid-template-columns:repeat(3,minmax(0,1fr))}.lesson-more-actions-panel{grid-template-columns:repeat(2,minmax(0,1fr))}.lesson-actions button,.lesson-more-actions summary,.lesson-more-actions-panel button{min-height:34px}.regular-payment-form input,.regular-payment-form select,.regular-payment-form button,.field-control input,.field-control select,.field-control textarea{font-size:16px}}@media (max-width:380px){.group-day-list{grid-template-columns:repeat(2,minmax(0,1fr))}}body{color:var(--ink);font-family:var(--brand-font-body);background-color:#030812;background-image:linear-gradient(#030812cc,#030812cc),url(/brand/starfield.jpg);background-position:50%;background-size:cover;background-attachment:fixed}h1,.signup-intro h1,.public-schedule-hero h1,.login-card h1{font-family:var(--brand-font-display);text-transform:uppercase;font-weight:500}h2,h3,.section-head h2,.schedule-day-head strong,.lead-card-head strong,.student-detail-card h3,.subscription-card-head strong{font-family:var(--brand-font-body);font-weight:800}.page-shell,.signup-page,.public-schedule-page,.login-shell{background:0 0}.topbar,.workspace-nav,.kpi-card,.panel,.login-card,.signup-form,.signup-confirmation-dialog,.signup-intro,.public-schedule-hero,.public-schedule-legend,.public-schedule-day,.public-schedule-empty,.lesson-student-detail-panel,.student-detail-card,.lead-card,.lead-actions-panel,.task-card,.season-preview-card,.season-manager-card,.topic-note-card,.topic-block,.topic-row,.history-item,.subscription-card,.subscription-lesson-slot,.mobile-student-card,.mobile-student-detail-panel{border-color:var(--line);color:var(--ink);box-shadow:var(--shadow);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#091223d6}.workspace-nav{background:#070f1deb}.eyebrow,.workspace-nav a.active,.workspace-nav button.active,.source-pill,.user-pill a,.schedule-person,.student-link,.mobile-student-card-main strong,.lesson-row-name,.public-schedule-card-head strong{color:#63d9ff}.subhead,.section-head p,.login-copy,.kpi-card span,.task-card span,.task-card small,.schedule-slot-head span,.schedule-slot-meta span,.schedule-people h3,.lead-card-head span,.lead-card-head small,.student-detail-card small,.history-item span,.history-meta,.public-schedule-card-status,.public-schedule-card-kind,.public-schedule-card-instructor,.signup-form label span,.signup-consent,.muted,td small{color:var(--muted)}.user-pill,.source-pill,.season-switcher,.branch-switcher,.action-tabs button,.schedule-toolbar button,.schedule-day-filter button,.lesson-actions button,.lesson-more-actions summary,.lesson-more-actions-panel,.lesson-more-actions-panel button,.primary-action,.secondary-action,button,input,select,textarea{color:var(--ink);background:#0d1c34db;border-color:#6fbfff47}.login-form input,.login-form select,.signup-form input,.signup-form select,.signup-form textarea,.signup-choice-row label,.signup-consent,.field-control input,.field-control select,.field-control textarea,.action-form input,.action-form select,.action-form textarea,.regular-payment-form input,.regular-payment-form select,.regular-payment-form textarea{color:var(--ink);background:#0c192feb;border-color:#6fbfff4d}.login-form input:disabled,.login-form select:disabled,.signup-form input:disabled,.signup-form select:disabled,.signup-form textarea:disabled,button:disabled,.primary-action:disabled{color:#dff1ff9e;background:#8497b042;border-color:#7a93b438}.signup-choice-row label.active{color:#63d9ff;background:#0d3052f0;border-color:#2de8ff94}input::placeholder,textarea::placeholder{color:#a9bbd6b8}input:focus,select:focus,textarea:focus,button:focus-visible,a:focus-visible{border-color:#2de8ff;outline:none;box-shadow:0 0 0 3px #2de8ff2e}.primary-action,.login-form button,.season-switcher a.active,.branch-switcher a.active,.schedule-day-filter button.active,.workspace-nav a.active,.workspace-nav button.active,.quick-booking-card{color:#fff;background:linear-gradient(135deg,#0757ff,#18c8ff)}.lesson-detail-drawer .lesson-balance-chip,.lesson-detail-drawer .attendance-tag,.lesson-detail-drawer .lesson-topic-chip,.lesson-detail-drawer .lesson-status{background:#0d1c2be0;border-color:#63d9ff38;box-shadow:inset 0 0 0 1px #ffffff08;color:var(--brand-text)!important}.lesson-detail-drawer .lesson-topic-chip strong{color:var(--brand-text)}.lesson-detail-drawer .lesson-topic-chip.tone-2{background:#473813b3;border-color:#fee7a747}.lesson-detail-drawer .lesson-topic-chip:hover,.lesson-detail-drawer .lesson-topic-chip:focus-visible{background:#0d1c2bf5;border-color:#fee7a7b8;color:var(--brand-accent)!important}.lesson-detail-drawer .lesson-topic-chip:hover strong,.lesson-detail-drawer .lesson-topic-chip:focus-visible strong{color:var(--brand-accent)}.lesson-detail-drawer .attendance-tag.visited,.lesson-detail-drawer .lesson-status.visited{background:#49df9e2e;border-color:#49df9e85;color:#a7ffd8!important}.lesson-detail-drawer .attendance-tag.no_show,.lesson-detail-drawer .attendance-tag.excused{background:#fee7a72e;border-color:#fee7a794;color:var(--brand-accent)!important}.lesson-detail-drawer .attendance-tag.cancelled{background:#ff6f6f29;border-color:#ff6f6f94;color:#ffc4c4!important}.lesson-detail-drawer .lesson-balance-chip.low{background:#fee7a72e;border-color:#fee7a794;color:var(--brand-accent)!important}.lesson-detail-drawer .makeup-row{color:var(--brand-text);background:#0d1c2beb;border-color:#49df9e57}.lesson-detail-drawer .makeup-row.makeup-visited{background:#0d1c2beb;border-color:#49df9e6b}.lesson-detail-drawer .makeup-row.makeup-no_show{background:#0d1c2beb;border-color:#fee7a785}.lesson-detail-drawer .makeup-row .lesson-row-name,.lesson-detail-drawer .makeup-row .lesson-row-name strong{color:#63d9ff}.lesson-detail-drawer .makeup-row .lesson-row-meta{color:#f6f6f6b8}.lesson-detail-drawer .lesson-subline{font-weight:900;color:var(--brand-accent)!important}.topic-note-card textarea{color:var(--brand-text);background:#0d1c2bf5;border-color:#6fbfff57}.topic-note-card textarea::placeholder{color:#c0c0c0a8}.topic-note-actions button,.topic-block-actions button{color:#63d9ff;background:#0d1c2be6;border-color:#6fbfff57}.topic-block{background:#0d1c2bd1;border-color:#f6f6f624}.topic-block.current{box-shadow:0 0 0 1px #fee7a73d}.topic-block-head{color:var(--brand-text);background:#122436f0;border-bottom:1px solid #f6f6f61a}.topic-block.current .topic-block-head{background:linear-gradient(90deg,#fee7a72e,#122436f0)}.topic-block-toggle,.topic-block-head strong,.topic-title strong{color:var(--brand-text)}.topic-block-toggle span,.topic-block-actions span,.topic-title small{color:var(--brand-muted)}.topic-block-toggle small,.topic-title strong em{color:var(--brand-accent);background:#fee7a72e}.topic-row,.topic-row.completed,.topic-row.next,.topic-row.optional:not(.completed):not(.locked),.topic-row.simulator:not(.completed):not(.locked){color:var(--brand-text);background:#0d1c2bdb;border-top-color:#f6f6f61a}.topic-row:hover:not(:disabled){background:#243341f5}.topic-row.completed{background:#49df9e1f}.topic-row.next{background:#20a7ff24}.topic-row.optional:not(.completed):not(.locked){background:#fee7a71a}.topic-row.simulator:not(.completed):not(.locked){background:#63d9ff1a}.topic-row.locked{color:#c0c0c08a;background:#0d1c2b94}.topic-check{color:#a7ffd8;background:#0d1c2bf0;border-color:#6fbfff5c}.topic-row.completed .topic-check{background:#49df9e29;border-color:#49df9ead}.topic-row.next .topic-check{color:#63d9ff;border-color:#63d9ff}.topic-row.locked .topic-check{color:#c0c0c080;background:#0d1c2bad;border-color:#c0c0c033}.topic-description{color:#f6f6f6d1;border-left-color:#fee7a757}@media (max-width:1500px){.lesson-roster-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.regular-section{grid-column:1/-1}}@media (max-width:980px){.lesson-roster-grid{grid-template-columns:1fr}}@media (max-width:640px){.lesson-detail-drawer{border:0;border-radius:0;width:100vw;max-width:100vw;height:100dvh;inset:0;overflow:hidden auto}.lesson-detail-head{background:#12212ffa;border-bottom-color:#63d9ff29;box-shadow:0 8px 20px #0000002e}.lesson-group-nav button,.lesson-detail-close,.lesson-detail-refresh{color:var(--brand-text);box-shadow:none;background:#0d1c2bc7;border-color:#63d9ff33}.lesson-group-nav button:hover,.lesson-group-nav button:focus-visible,.lesson-detail-close:hover,.lesson-detail-close:focus-visible,.lesson-detail-refresh:hover,.lesson-detail-refresh:focus-visible{color:var(--brand-text);box-shadow:none;background:#182735eb;border-color:#63d9ff57}.lesson-group-nav button:disabled{color:#f6f6f66b;background:#8497b029;border-color:#f6f6f61f}}.schedule-day-filter button.active{border-color:#f6f6f675;box-shadow:0 0 0 1px #f6f6f629,0 10px 22px #00000038}.schedule-day-filter button.active:hover,.schedule-day-filter button.active:focus-visible{border-color:#f6f6f694}.workspace-nav a:hover,.workspace-nav a:focus-visible,.workspace-nav button:hover,.workspace-nav button:focus-visible,.nav-branch-switcher a:not(.active):hover,.nav-branch-switcher a:not(.active):focus-visible,.season-switcher a:not(.active):hover,.season-switcher a:not(.active):focus-visible,.branch-switcher a:not(.active):hover,.branch-switcher a:not(.active):focus-visible{border-color:var(--brand-accent);color:var(--brand-accent);background:0 0;box-shadow:inset 0 0 0 1px #fee7a761}.nav-branch-switcher a:not(.active),.season-switcher a:not(.active),.branch-switcher a:not(.active){color:var(--brand-muted);box-shadow:none;background:#0d1c2bdb;border-color:#f6f6f624}.nav-branch-switcher a:not(.active):hover,.nav-branch-switcher a:not(.active):focus-visible,.season-switcher a:not(.active):hover,.season-switcher a:not(.active):focus-visible,.branch-switcher a:not(.active):hover,.branch-switcher a:not(.active):focus-visible{color:var(--brand-accent)}.workspace-nav .nav-action:hover,.workspace-nav .nav-action:focus-visible,.nav-branch-switcher a.active:hover,.nav-branch-switcher a.active:focus-visible,.season-switcher a.active:hover,.season-switcher a.active:focus-visible,.branch-switcher a.active:hover,.branch-switcher a.active:focus-visible{color:#fff;background:linear-gradient(135deg,#0757ff,#18c8ff);border-color:#63d9ff8c;box-shadow:0 0 0 1px #63d9ff47}.schedule-slot.full .capacity,.group-card.full .capacity,.public-schedule-slot.full .capacity,.group-place-note.full,.schedule-slot-meta .attendance-needed,.attendance-needed{background:var(--brand-accent);color:#17202b;border-color:#fee7a7c7}.schedule-slot.full .capacity,.group-card.full .capacity,.public-schedule-slot.full .capacity,.group-place-note.full{font-weight:900}.schedule-slot.selected,.schedule-slot.free.selected,.schedule-slot.full.selected,.schedule-slot.needs-attendance.selected,.schedule-slot.attendance-complete.selected,.schedule-slot:hover,.schedule-slot.free:hover,.schedule-slot.full:hover,.schedule-slot.needs-attendance:hover,.schedule-slot.attendance-complete:hover,.group-card.selected,.group-card.free.selected,.group-card.full.selected,.group-card.over.selected,.group-card:hover,.group-card.free:hover,.group-card.full:hover,.group-card.over:hover{background:#273d4ff5;border-color:#63d9ff6b;box-shadow:inset 0 0 0 1px #63d9ff1f}.schedule-people+.schedule-people{border-top:1px solid #f6f6f61a}.schedule-slot-meta span,.schedule-person,.topic-tag,.lesson-topic-chip,.lesson-balance,.lesson-balance-chip,.attendance-tag,.capacity,.badge,.chip{color:var(--brand-text);background:#0a3a4694;border:1px solid #63d9ff14}.schedule-person.clickable:hover,.schedule-person.clickable:focus-visible,.lesson-person-button:hover strong,.lesson-person-button:focus-visible strong{color:var(--brand-text);background:#63d9ff38;box-shadow:0 0 0 1px #63d9ff47}.lesson-person-button.selected strong{color:var(--brand-student-name-hover);background:#63d9ff33;box-shadow:0 0 0 1px #63d9ff57}.group-card,.mini-card{border-color:#63d9ff33;box-shadow:inset 0 0 0 1px #ffffff08}.group-card.free,.group-card.full,.group-card.over{box-shadow:inset 0 0 0 1px #ffffff0a}.lesson-detail-drawer{max-width:calc(100vw - 36px);overflow-x:hidden}@media (max-width:640px){.lesson-detail-drawer{border:0;border-radius:0;width:100vw;max-width:none;height:100dvh;inset:0}}.lesson-detail,.lesson-detail>*,.lesson-section,.lesson-row-list,.lesson-row,.lesson-admin-row,.lesson-add-student,.lesson-student-detail-panel,.lesson-student-empty-panel{min-width:0;max-width:100%}.lesson-detail{overflow-x:hidden}.lesson-admin-row,.lesson-add-student,.lesson-student-empty-panel,.lesson-row-header,.lesson-capacity-details,.lesson-capacity-panel,.selected-student-pill,.detail-item,.detail-block,.operation-item,.season-preview-metric,.season-risk-list,.season-manager-editor,.season-manager-season-editor,.season-manager-bulk-editor,.season-manager-bulk-preview,.season-manager-season,.season-manager-season li,.season-manager-inactive-groups li,.subscription-edit-toggle,.subscription-card,.subscription-card.open,.subscription-correction-panel,.backup-export-box,.mobile-student-detail-panel .lesson-student-detail-head{color:var(--brand-text);background:#1b2c3ff5;border-color:#63d9ff2e}.operation-item:hover,.operation-item:focus-visible,.detail-item-button:hover,.detail-item-button:focus-visible,.season-manager-group-actions button:hover,.season-manager-group-actions button:focus-visible{color:var(--brand-text);background:#273d4ff5;border-color:#63d9ff6b}.operation-item strong,.season-preview-metric strong,.season-risk-head strong,.season-manager-season-head strong,.season-manager-bulk-preview>strong,.detail-item strong,.detail-block strong,.subscription-card-head strong{color:var(--brand-text)}.operation-item span,.season-preview-metric span,.season-preview-metric small,.season-risk-list li,.season-risk-list p,.season-manager-copy label,.season-manager-editor label,.season-manager-season-editor label,.season-manager-bulk-editor label,.season-manager-season-head span,.season-manager-season li span,.season-manager-bulk-preview small,.detail-item span,.detail-item small,.metadata-row span,.subscription-card-head span{color:var(--brand-muted)}.season-manager-copy select,.season-manager-editor input,.season-manager-editor select,.season-manager-season-editor input,.season-manager-season-editor select,.season-manager-bulk-editor select,.season-manager-bulk-editor textarea,.season-manager-group-actions button,.season-manager-inactive-groups button,.subscription-edit-toggle{color:var(--brand-text);background:#0d1c2bf5;border-color:#f6f6f629}.lesson-row-header,thead th{color:var(--brand-muted)}.kpi-card strong,.task-card strong,.schedule-slot-head strong,.group-card strong,.mini-card strong,.lesson-row-name strong,.student-detail-card strong,.subscription-lesson-slot strong,.history-item strong,table strong{color:#fff}table,thead,tbody,tr,td,th,.table-wrap,.students-table,.payment-journal-table,.makeup-journal-table{border-color:#6fbfff33}thead th,.schedule-day-head{color:#dff8ff;background:#173054eb}tbody tr,.lesson-row,.regular-section,.trial-section,.makeup-section,.oneoff-section{color:var(--ink);background:#0812229e}tbody tr:hover,.lesson-row:hover,.mobile-student-card:hover,.schedule-slot:hover,.group-card:hover,.mini-card:hover{background:#123052d1}.schedule-slot,.group-card,.mini-card,.public-schedule-slot{color:var(--ink);background:#0a172adb;border-color:#6fbfff3d}.schedule-slot.free,.group-card.free,.public-schedule-slot.available,.schedule-slot.attendance-complete{background:#0c3029c7;border-color:#26d78b75}.schedule-slot.over,.group-card.over,.kpi-card.red,.task-card.red{background:#44151bc7;border-color:#ff6b6b94}.task-card.green,.kpi-card.green,.lead-status.converted,.status-chip.active,.lesson-status.visited,.subscription-card.active{background:#0d362bc7;border-color:#26d78b6b}.task-card.amber,.kpi-card.amber,.subscription-card.completed,.lead-status.in_progress{background:#412e0dc7;border-color:#fee7a780}.chip,.badge,.capacity,.schedule-summary span,.schedule-slot-meta span,.schedule-person,.topic-tag,.lesson-balance,.makeup-count,.public-schedule-card-status,.public-schedule-card-kind,.public-schedule-card-instructor{color:#dff8ff;background:#76d1ff1f}.attendance-needed,.schedule-slot-meta .attendance-needed{color:#fee7a7;background:#fee7a729}.attendance-complete-chip,.schedule-slot-meta .attendance-complete-chip{color:#87ffc8;background:#26d78b24}.offline-status{color:#9dffd0;background:#082d23eb;border-color:#26d78b6b}.offline-status.offline,.login-alert,.signup-slot-note,.warning,.form-error{color:#fee7a7;background:#412e0de6;border-color:#fee7a77a}.login-alert.danger,.danger,.error,.lead-error{color:#ffb4b4;background:#44151be6;border-color:#ff6b6b80}.signup-confirmation-backdrop,.modal-backdrop{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#02070fc2}.page-shell{color:var(--brand-text)}.topbar{align-items:center;margin-bottom:18px}.topbar h1{color:var(--brand-text);letter-spacing:0}@media (max-width:720px){.topbar h1{font-size:26px;line-height:.86}}.workspace-nav a,.workspace-nav button,.season-switcher a,.branch-switcher a,.switcher-label,.user-pill,.source-pill{color:var(--brand-text)}.workspace-nav a:not(.active):not(.nav-action),.workspace-nav button:not(.active),.season-switcher a:not(.active),.branch-switcher a:not(.active),.switcher-label,.user-pill span,.user-pill small{color:var(--brand-muted)}.panel,.schedule-board,.lesson-detail,.lesson-detail-drawer,.lesson-student-detail-panel,.lesson-student-detail-panel .student-detail-card,.mobile-student-detail-panel,.mobile-student-detail-panel .student-detail-card,.students-panel>.section-head,.table-wrap,.table-scroll,.students-table,.payment-journal-table,.makeup-journal-table,.archive-table-wrap,.duplicate-table-wrap,.backup-export-box,.lead-card,.quick-booking-panel,.quick-booking-card,.season-preview-card,.season-manager-card,.operations-panel,.group-capacity-panel,.topics-panel,.topic-block,.topic-row,.history-item,.subscription-card,.subscription-lesson-slot,.subscription-correction-panel,.student-detail-card,.mobile-student-card,.lesson-row,.regular-section,.oneoff-section,.makeup-section,.trial-section,.lesson-more-actions-panel,.public-schedule-day,.public-schedule-slot,.public-schedule-legend,.public-schedule-hero,.signup-form,.signup-intro,.signup-confirmation-dialog,.login-card{background:var(--brand-card);color:var(--brand-text);border-color:#f6f6f61f}.schedule-slot,.group-card,.mini-card,.lead-card,.student-detail-stat,.lesson-row,.mobile-student-card,.subscription-lesson-slot,.history-item,.topic-row,.public-schedule-slot{color:var(--brand-text);background:#243341eb;border-color:#f6f6f624}.schedule-slot.free,.group-card.free,.public-schedule-slot.available,.public-schedule-slot.free,.schedule-slot.attendance-complete{background:#06392fdb;border-color:#49df9e85}.schedule-slot.attendance-complete{background:#072823;border-color:#49df9e57}.schedule-slot.full,.group-card.full,.public-schedule-slot.full,.schedule-slot.needs-attendance{background:#473813e6;border-color:#fee7a7a8}.schedule-slot.over,.group-card.over{background:#48191fe6;border-color:#ff6f6fad}.schedule-slot:hover,.schedule-slot.selected,.group-card:hover,.group-card.selected,.mini-card:hover,.lesson-row:hover,.mobile-student-card:hover,tbody tr:hover{background:#33495df5}.schedule-day-head,.group-day-head,thead th,.lesson-detail-head,.mobile-student-detail-panel .lesson-student-detail-head{color:var(--brand-text);background:#1b2c3ffa;border-color:#f6f6f624}table,thead,tbody,tr,td,th{border-color:#f6f6f61f}tbody tr{color:var(--brand-text);background:#243341bd}h1,h2,h3,h4,.section-head h2,.schedule-slot-head strong,.group-card strong,.mini-card strong,.lesson-row-name strong,.student-detail-card strong,.history-item strong,.subscription-card-head strong,.public-schedule-card-head strong,table strong{color:var(--brand-text)}.subhead,.section-head p,.muted,.schedule-slot-head span,.schedule-slot-meta span,.schedule-people h3,.group-card div:first-child span,.lead-card-head span,.lead-card-head small,.student-detail-card small,.history-item span,.history-meta,.public-schedule-card-status,.public-schedule-card-kind,.public-schedule-card-instructor,td,td small,label,.field-hint,.signup-consent,.lesson-detail-head p,.lesson-row-meta,.subscription-correction-panel span,.subscription-correction-panel p{color:var(--brand-muted)}.eyebrow,.schedule-person,.student-link,.mobile-student-card-main strong,.lesson-row-name,.user-pill a,.source-pill,a{color:#63d9ff}.chip,.badge,.capacity,.schedule-summary span,.schedule-slot-meta span,.schedule-person,.topic-tag,.lesson-balance,.makeup-count,.lesson-detail-stats span,.public-schedule-card-status,.public-schedule-card-kind,.public-schedule-card-instructor{color:var(--brand-text);background:#63d9ff21}.lesson-detail-stats .capacity.full{background:var(--brand-accent);color:#17202b;border-color:#fee7a7c7;font-weight:900}.attendance-needed,.schedule-slot-meta .attendance-needed,.task-card.amber,.kpi-card.amber,.subscription-card.completed,.lead-status.in_progress{color:var(--brand-accent);background:#473813e0;border-color:#fee7a79e}.attendance-complete-chip,.schedule-slot-meta .attendance-complete-chip,.task-card.green,.kpi-card.green,.lead-status.converted,.status-chip.active,.lesson-status.visited,.subscription-card.active{color:#a7ffd8;background:#06392fdb;border-color:#49df9e85}.task-card.red,.kpi-card.red,.danger,.error,.lead-error{color:#ffc4c4;background:#48191fe6;border-color:#ff6f6fad}.lesson-detail-close{color:#ffc4c4;background:#48191fe6;border-color:#ff6f6fad;box-shadow:inset 0 0 0 1px #ff6f6f14}.lesson-detail-close:hover,.lesson-detail-close:focus-visible{color:#ffd9d9;background:#541d24f0;border-color:#ff6f6fc7;outline:none;box-shadow:inset 0 0 0 1px #ff6f6f1f,0 0 0 3px #ff6f6f14}.student-detail-card .status-tag{color:var(--brand-muted);background:#0d1c2bd1;border:1px solid #f6f6f629}.student-detail-card .status-tag.active{color:#a7ffd8;background:#49df9e29;border-color:#49df9e94;box-shadow:inset 0 0 0 1px #49df9e14}.student-detail-card .schedule-list{flex-wrap:wrap;gap:7px;display:flex}.student-detail-card .schedule-list span{color:var(--brand-accent);box-shadow:none;background:0 0;border:1px solid #fee7a7b8}.student-detail-card .subscription-card,.student-detail-card .subscription-card.completed,.student-detail-card .subscription-card.open{color:var(--brand-text);background:#1b2c3ff5;border-color:#f6f6f624}.student-detail-card .subscription-card.open{border-color:#49df9e5c;box-shadow:inset 0 0 0 1px #49df9e14}.student-detail-card .subscription-card.completed{border-color:#fee7a75c}.student-detail-card .subscription-card-head strong,.student-detail-card .subscription-lesson-slot span{color:var(--brand-text)}.student-detail-card .subscription-card-head span,.student-detail-card .subscription-progress span,.student-detail-card .subscription-lesson-slot small{color:var(--brand-muted)}.student-detail-card .subscription-status{color:var(--brand-accent);background:#fee7a724;border:1px solid #fee7a794}.student-detail-card .subscription-status.open{color:#a7ffd8;background:#49df9e29;border-color:#49df9e94}.student-detail-card .subscription-progress div{background:#f6f6f629}.student-detail-card .subscription-progress i{background:linear-gradient(90deg,#0757ff,#18c8ff)}.student-detail-card .subscription-lesson-slot{color:var(--brand-text);background:#0d1c2bc7;border-color:#f6f6f624}.student-detail-card .subscription-lesson-slot strong{color:#dff8ff;background:#63d9ff24}.student-detail-card .subscription-lesson-slot.visited,.student-detail-card .subscription-lesson-slot.makeup{color:var(--brand-text);background:#49df9e1f;border-color:#49df9e6b}.student-detail-card .subscription-lesson-slot.no-show{color:var(--brand-text);background:#48191fb8;border-color:#ff6f6f7a}.student-detail-card .subscription-lesson-slot.excused{color:var(--brand-text);background:#243341d1;border-color:#63d9ff42}.student-detail-card .subscription-lesson-slot.pending{color:var(--brand-text);background:#0d1c2bc7;border-color:#f6f6f62e}.student-detail-card .action-block,.student-detail-card .edit-section,.student-detail-card .balance-adjustment-current,.student-detail-card .discount-current{color:var(--brand-text);background:#0d1c2bd1;border-color:#f6f6f624}.student-detail-card .action-section-title strong,.student-detail-card .discount-current strong{color:var(--brand-text)}.student-detail-card .action-section-title span,.student-detail-card .field-hint,.student-detail-card .discount-current span,.student-detail-card .balance-adjustment-current span,.student-detail-card .balance-adjustment-current small{color:var(--brand-muted)}.student-detail-card .action-tabs button:not(.active){color:var(--brand-text);background:#0d1c2be6;border-color:#6fbfff47}.student-detail-card .action-tabs button.active{color:#fff;background:linear-gradient(135deg,#0757ff,#18c8ff);border-color:#63d9ff6b}.student-detail-card .action-tabs button:hover,.student-detail-card .action-tabs button:focus-visible{color:var(--brand-accent);border-color:#fee7a79e}.student-detail-card .action-tabs button.active:hover,.student-detail-card .action-tabs button.active:focus-visible{color:#fff}.student-detail-card .balance-adjustment-current strong{color:var(--brand-text);background:#63d9ff21}.student-detail-card .field-control input:disabled,.student-detail-card .field-control select:disabled,.student-detail-card .field-control textarea:disabled,.student-detail-card .action-form input:disabled,.student-detail-card .action-form select:disabled,.student-detail-card .action-form textarea:disabled{color:#f6f6f69e;background:#8497b02e;border-color:#7a93b438}input,select,textarea,.login-form input,.login-form select,.signup-form input,.signup-form select,.signup-form textarea,.signup-choice-row label,.field-control input,.field-control select,.field-control textarea,.action-form input,.action-form select,.action-form textarea,.regular-payment-form input,.regular-payment-form select,.regular-payment-form textarea{color:var(--brand-text);background:#0d1c2bf5;border-color:#f6f6f629}.primary-action,.login-form button,.backup-export-box button,.season-switcher a.active,.branch-switcher a.active,.schedule-day-filter button.active,.workspace-nav a.active,.workspace-nav button.active,.nav-action,.quick-booking-card{color:#fff;background:linear-gradient(135deg,#0757ff,#18c8ff)}.season-switcher a.active,.branch-switcher a.active,.nav-branch-switcher a.active{color:var(--brand-accent);background:#fee7a733;border-color:#fee7a7c2;box-shadow:inset 0 0 0 1px #fee7a72e,0 0 18px #fee7a72e}.season-switcher a.active:hover,.season-switcher a.active:focus-visible,.branch-switcher a.active:hover,.branch-switcher a.active:focus-visible,.nav-branch-switcher a.active:hover,.nav-branch-switcher a.active:focus-visible{color:#fff4c7;background:#fee7a747;border-color:#fee7a7e0;box-shadow:inset 0 0 0 1px #fee7a742,0 0 22px #fee7a73d}.season-switcher,.season-switcher a,.branch-switcher,.branch-switcher a,.nav-branch-switcher a{border-radius:8px}.payment-journal-table thead th,.makeup-journal-table thead th,.archive-table thead th,.students-table thead th{color:#dff8ff;background:#142638fa;border-color:#63d9ff29}.payment-journal-table tbody tr,.makeup-journal-table tbody tr,.archive-table tbody tr,.students-table tbody tr{color:var(--brand-text);background:#1c2b39eb;border-color:#63d9ff29}.payment-journal-table tbody tr:nth-child(2n),.makeup-journal-table tbody tr:nth-child(2n),.archive-table tbody tr:nth-child(2n),.students-table tbody tr:nth-child(2n){background:#182735eb}.payment-journal-table tbody tr:hover,.makeup-journal-table tbody tr:hover,.archive-table tbody tr:hover,.students-table tbody tr:hover,.payment-journal-table tr.editing-row{background:#2a3d4cf5}.payment-journal-table td,.makeup-journal-table td,.archive-table td,.students-table td{color:var(--brand-text);border-color:#63d9ff29}.payment-journal-table td small,.makeup-journal-table td small,.archive-table td small,.students-table td small,.payment-journal-table td span,.makeup-journal-table td span,.archive-table td span,.students-table td span{color:var(--brand-muted)}.payment-journal-table .journal-status,.makeup-journal-table .journal-status,.lead-status,.status-chip,.operation-badge,.journal-stats span{color:var(--brand-text);background:#0d1c2bdb;border:1px solid #63d9ff2e}.payment-journal-table .journal-status.cash,.payment-journal-table .journal-status.transfer,.payment-journal-table .journal-status.card,.makeup-journal-table .journal-status.visited,.lead-status.scheduled_trial,.lead-status.converted,.status-chip.active,.operation-badge.green{color:#a7ffd8;background:#06392fad;border-color:#49df9e61}.lead-card,.lead-card.closed{color:var(--brand-text);opacity:1;background:#1c2b39f0;border-color:#63d9ff2e}.lead-card.closed .lead-card-head strong,.lead-card.closed .lead-card-head span,.lead-card-head strong,.lead-card-head span,.lead-card-head small,.lead-meta span,.lead-comment{color:var(--brand-text)}.lead-card-head small,.lead-meta span,.lead-comment{color:var(--brand-muted)}.lead-actions-panel,.lead-action-row,.action-message{color:var(--brand-text);background:#0d1c2bb8;border-color:#63d9ff29}.operation-item,.task-card{color:var(--brand-text);background:#182735f0;border-color:#63d9ff2e;box-shadow:inset 0 0 0 1px #ffffff05}.operation-item:hover,.operation-item:focus-visible,.task-card:hover,.task-card:focus-visible{background:#213444f5;border-color:#63d9ff61}.operation-item span,.task-card span,.task-card small{color:var(--brand-muted)}.payment-journal-table .journal-actions button,.makeup-journal-table button,.archive-table button,.lead-action-row button{color:var(--brand-text);background:#0d1c2bf0;border-color:#63d9ff33}.payment-journal-table .journal-actions button:hover,.makeup-journal-table button:hover,.archive-table button:hover,.lead-action-row button:hover{background:#213444f5;border-color:#63d9ff6b}.payment-journal-table .journal-actions button.danger,.makeup-journal-table button.danger,.archive-table button.danger,.lead-action-row button.danger,.secondary-action.danger{color:#ffc4c4;background:#48191fc7;border-color:#ff6f6f6b}#makeups .table-wrap{background:#12212ff5;border-color:#63d9ff2e}#makeups .makeup-journal-table{color:var(--brand-text);background:#12212ff5}#makeups .makeup-journal-table thead th{color:#dff8ff;background:#142638fa;border-color:#63d9ff2e;box-shadow:0 1px #63d9ff29}#makeups .makeup-journal-table tbody tr{color:var(--brand-text);background:#182735eb;border-color:#63d9ff29}#makeups .makeup-journal-table tbody tr:nth-child(2n){background:#1c2b39eb}#makeups .makeup-journal-table tbody tr:hover{background:#2a3d4cf5}#makeups .makeup-journal-table td{color:var(--brand-text);background:#182735eb;border-color:#63d9ff29}#makeups .makeup-journal-table tbody tr:nth-child(2n) td{background:#1c2b39eb}#makeups .makeup-journal-table tbody tr:hover td{background:#2a3d4cf5}#makeups .makeup-journal-table td strong{color:var(--brand-text)}#makeups .makeup-journal-table td span,#makeups .makeup-journal-table td small{color:var(--brand-muted)}#makeups .journal-edit-toggle,#makeups .makeup-journal-table button{color:var(--brand-text);background:#0d1c2bf0;border-color:#63d9ff33}#makeups .journal-edit-toggle:hover,#makeups .journal-edit-toggle:focus-visible,#makeups .makeup-journal-table button:hover,#makeups .makeup-journal-table button:focus-visible{background:#213444f5;border-color:#63d9ff6b;outline:none}.schedule-person,.schedule-person.clickable,.student-link,.student-name-button,.students-table .student-name-button,.archive-table .student-name-button,.mobile-student-card-main strong,.lesson-person-main strong,.lesson-person-button strong,.lesson-row-name,.lesson-row-name strong,.lesson-detail-drawer .lesson-row-name,.lesson-detail-drawer .lesson-row-name strong,.lead-card-head strong,.operation-item strong{color:var(--brand-student-name)}.schedule-person.clickable:hover,.schedule-person.clickable:focus-visible,.student-link:hover,.student-link:focus-visible,.student-name-button:hover,.student-name-button:focus-visible,.lesson-person-button:hover strong,.lesson-person-button:focus-visible strong,.lesson-person-button.selected strong,.lesson-row-name:hover,.lesson-row-name:focus-visible,.operation-item:hover strong,.operation-item:focus-visible strong{color:var(--brand-student-name-hover)}.students-panel .table-wrap{background:#12212ff5;border-color:#63d9ff2e}.students-panel .students-table{color:var(--brand-text);background:#12212ff5}.students-panel .students-table th{color:#dff8ff;background:#142638fa;border-color:#63d9ff2e;box-shadow:0 1px #63d9ff29}.students-panel .students-table td{color:var(--brand-text);background:#182735eb;border-color:#63d9ff29}.students-panel .students-table tbody tr:nth-child(2n) td{background:#152432eb}.students-panel .students-table tbody tr:hover td,.students-panel .students-table tr.selected-row td{background:#263c4bf5}.students-panel .students-table td strong{color:var(--brand-text)}.students-panel .students-table td span,.students-panel .students-table .muted{color:var(--brand-muted)}.students-panel .student-name-button{color:var(--brand-student-name)}.students-panel .student-name-button:hover,.students-panel .student-name-button:focus-visible{color:var(--brand-student-name-hover)}.students-panel .schedule-list span{color:var(--brand-text);background:#0d1c2be6;border:1px solid #f6f6f624}.students-panel .lesson-balance,.students-panel .makeup-count{color:#dff8ff;background:#63d9ff29;border:1px solid #63d9ff33}.students-panel .lesson-balance.low{color:var(--brand-accent);background:#fee7a72e;border-color:#fee7a785}.students-panel .makeup-count.available{color:#a7ffd8;background:#49df9e2e;border-color:#49df9e85}.action-message.idle,.journal-message,.season-manager-message{color:var(--brand-text);background:#0d1c2bdb;border:1px solid #63d9ff2e}.action-message.success,.journal-message.success{color:#a7ffd8;background:#06392fd1;border-color:#49df9e6b}.action-message.error,.journal-message.error{color:#ffc4c4;background:#48191fe0;border-color:#ff6f6f85}.season-manager-bulk-errors{color:#ffc4c4}.season-manager-bulk-errors li{color:#ffc4c4;background:#48191fc7;border-color:#ff6f6f6b}@media (max-width:640px){.lesson-add-student{grid-template-columns:minmax(0,1fr);align-items:stretch;overflow:hidden}.lesson-add-student>.field-control,.lesson-add-student>.lesson-booking-modes,.lesson-add-student>.lesson-overflow-reason,.lesson-add-student>.lesson-add-actions{grid-column:1/-1;min-width:0}.lesson-add-student--extra .lesson-add-actions,.lesson-add-student--makeup .lesson-add-actions{grid-column:1/-1;grid-template-columns:minmax(0,1fr);align-items:stretch}.lesson-add-student--extra .lesson-add-actions .selected-student-pill,.lesson-add-student--makeup .lesson-add-actions .selected-student-pill{grid-column:1/-1}.booking-mode-row{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;margin-bottom:8px}.booking-mode-row button{min-height:34px;color:var(--brand-text);box-shadow:none;background:#0d1c2be6;border-color:#63d9ff33;padding:0 6px;font-size:12px;line-height:1.1}.booking-mode-row button.active{color:#dff8ff;background:#0e4057db;border-color:#63d9ff7a;box-shadow:inset 0 0 0 1px #63d9ff1f}.booking-mode-row button:hover,.booking-mode-row button:focus-visible{color:#dff8ff;background:#182735f5;border-color:#63d9ff66}.booking-mode-row button.active:hover,.booking-mode-row button.active:focus-visible{background:#134b66eb;border-color:#63d9ff94}}@media (min-width:641px){.booking-mode-row{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;margin-bottom:8px}.booking-mode-row button{min-height:34px;color:var(--brand-text);box-shadow:none;background:#0d1c2be6;border-color:#63d9ff33;padding:0 8px;font-size:12px;line-height:1.1}.booking-mode-row button.active{color:#dff8ff;background:#0e4057db;border-color:#63d9ff7a;box-shadow:inset 0 0 0 1px #63d9ff1f}.booking-mode-row button:hover,.booking-mode-row button:focus-visible{color:#dff8ff;background:#182735f5;border-color:#63d9ff66}.booking-mode-row button.active:hover,.booking-mode-row button.active:focus-visible{background:#134b66eb;border-color:#63d9ff94}}@media (max-width:720px){.student-detail-drawer{width:100vw;max-width:100vw;height:100dvh;padding:max(8px, env(safe-area-inset-top)) 8px max(14px, env(safe-area-inset-bottom));overscroll-behavior:contain;border:0;border-radius:0;align-content:start;gap:6px;margin:0;inset:0;overflow:hidden auto}.student-detail-drawer .student-drawer-head{top:calc(-1 * max(8px, env(safe-area-inset-top)));z-index:2;margin:calc(-1 * max(8px, env(safe-area-inset-top))) -8px 0;padding:max(8px, env(safe-area-inset-top)) 8px 8px;border-bottom:1px solid var(--line);background:#12212ffa;position:sticky;box-shadow:0 8px 20px #0000002e}.student-detail-drawer .student-drawer-head h3{font-size:22px;line-height:1.12}.student-detail-drawer .student-detail-card,.student-detail-drawer .action-block,.student-detail-drawer .detail-block{width:100%;min-width:0;max-width:100%;overflow:visible}.student-detail-drawer .student-detail-card{padding-bottom:calc(18px + env(safe-area-inset-bottom))}.student-detail-drawer .student-detail-card>.detail-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.student-detail-drawer .student-detail-card>.detail-grid .detail-item{gap:3px;min-height:auto;padding:8px}.student-detail-drawer .student-detail-card>.detail-grid .detail-item span{font-size:10px;line-height:1.1}.student-detail-drawer .student-detail-card>.detail-grid .detail-item strong{font-size:14px;line-height:1.15}.student-detail-drawer .student-detail-card>.detail-grid .detail-item small{font-size:10px;line-height:1.15}.student-detail-drawer .action-tabs{grid-template-columns:repeat(2,minmax(0,1fr));gap:5px;padding-bottom:2px;display:grid;overflow-x:hidden}.student-detail-drawer .action-tabs button{white-space:normal;min-width:0;min-height:32px;padding:0 8px;font-size:12px}.student-detail-drawer .action-form,.student-detail-drawer .form-row,.student-detail-drawer .history-list,.student-detail-drawer .action-form{grid-template-columns:1fr}.student-detail-drawer .schedule-list{min-width:0;max-width:100%;display:grid;overflow:visible}.student-detail-drawer .subscription-card,.student-detail-drawer .subscription-card-head,.student-detail-drawer .subscription-card-head>div,.student-detail-drawer .subscription-lesson-grid,.student-detail-drawer .subscription-lesson-slot,.student-detail-drawer .history-item,.student-detail-drawer .history-item-head,.student-detail-drawer .history-meta,.student-detail-drawer .topics-panel,.student-detail-drawer .topic-row,.student-detail-drawer .topic-title{min-width:0;max-width:100%;overflow-x:hidden}.student-detail-drawer .subscription-card-head strong,.student-detail-drawer .subscription-card-head span,.student-detail-drawer .subscription-lesson-slot span,.student-detail-drawer .subscription-lesson-slot small,.student-detail-drawer .history-item strong,.student-detail-drawer .history-item span,.student-detail-drawer .topic-title small,.student-detail-drawer .topic-description{overflow-wrap:anywhere;word-break:break-word;min-width:0;max-width:100%}}.source-pill,.nav-branch-switcher a:not(.active),.payment-day-switch a:not(.active),.mini-card,.season-preview-metric,.season-risk-list,.season-manager-editor,.season-manager-season-editor,.season-manager-bulk-editor,.season-manager-preview-card,.lead-actions-panel,.lead-card,.lead-meta span,.lead-status,.task-card,.operation-item,.operation-badge,.group-card,.group-day-head,.group-place-note,.schedule-slot,.schedule-person,.lesson-admin-row,.lesson-add-panel,.lesson-add-actions,.lesson-empty,.lesson-row,.lesson-person-row,.lesson-person-button,.lesson-more-actions-panel,.selected-student-pill,.payment-form,.regular-payment-form,.lesson-comment-form,.student-detail-card,.detail-item,.action-block,.edit-section,.balance-adjustment-current,.discount-current,.subscription-card,.subscription-lesson-slot,.history-item,.mobile-student-card,.trial-conversion-panel,.trial-conversion-row,.makeup-row,.journal-message,.action-message,.season-manager-message{color:var(--brand-text);background:#0d1c2bdb;border-color:#6fbfff3d}.table-wrap,.students-table,.archive-table,.payment-journal-table,.makeup-journal-table{color:var(--brand-text);background:#12212ff5;border-color:#6fbfff3d}.students-table th,.archive-table th,.payment-journal-table th,.makeup-journal-table th,.students-table td,.archive-table td,.payment-journal-table td,.makeup-journal-table td{color:var(--brand-text);background:#12212feb;border-color:#6fbfff29}.field-control input,.field-control select,.field-control textarea,.action-form input,.action-form select,.action-form textarea,.regular-payment-form input,.regular-payment-form select,.regular-payment-form textarea,.lesson-comment-form textarea,.season-manager-copy select,.season-manager-copy input,.payment-journal-filter select,.payment-journal-filter input,.makeup-journal-filter select,.makeup-journal-filter input,.student-search input,.student-search select,.signup-form input,.signup-form select,.signup-form textarea,.login-form input,.login-form select{color:var(--brand-text);background:#0c192ff0;border-color:#6fbfff4d}.login-alert,.offline-status,.capacity-warning,.task-card.amber,.kpi-card.amber,.group-card.full,.schedule-slot.full,.schedule-slot.needs-attendance,.group-place-note.full,.lead-status.in_progress,.subscription-card.completed,.subscription-status.completed{color:var(--brand-accent);background:#473813d1;border-color:#fee7a775}.login-alert.danger,.offline-status.offline,.capacity-warning.over,.task-card.red,.kpi-card.red,.group-card.over,.schedule-slot.over,.group-place-note.over,.lead-status.closed,.subscription-status.cancelled,.attendance-tag.cancelled{color:#ffc4c4;background:#48191fe0;border-color:#ff6f6f7a}.task-card.green,.kpi-card.green,.group-card.free,.schedule-slot.free,.group-place-note.free,.lead-status.new,.subscription-card.open,.subscription-status.open,.attendance-tag.visited,.lesson-status.visited{color:#a7ffd8;background:#06392fc7;border-color:#49df9e61}.source-pill:hover,.source-pill:focus-visible,.nav-branch-switcher a:not(.active):hover,.nav-branch-switcher a:not(.active):focus-visible,.payment-day-switch a:not(.active):hover,.payment-day-switch a:not(.active):focus-visible,.lesson-person-button:hover,.lesson-person-button:focus-visible,.operation-item:hover,.operation-item:focus-visible,.task-card:hover,.task-card:focus-visible{color:#dff8ff;background:#182735f5;border-color:#63d9ff6b}.lesson-row .lesson-person-button:hover,.lesson-row .lesson-person-button:focus-visible{box-shadow:none;color:inherit;background:0 0;border-color:#0000}.lesson-row .lesson-person-button:hover strong,.lesson-row .lesson-person-button:focus-visible strong{box-shadow:none;color:var(--brand-student-name-hover);background:0 0}.lesson-row:hover .lesson-person-button{box-shadow:none;background:0 0}.lesson-row:hover .lesson-person-button strong{box-shadow:none;color:var(--brand-student-name-hover);background:0 0}.week-switcher button,.schedule-day-filter button,.secondary-action,.action-tabs button{color:var(--brand-text);background:#0d1c2be0;border-color:#6fbfff3d}.journal-table,.journal-stats span,.journal-actions button,.journal-status{color:var(--brand-text);background:#12212ff0;border-color:#6fbfff33}.topic-note-card,.topic-block,.topic-row,.topic-check{color:var(--brand-text);background:#0d1c2be0;border-color:#6fbfff38}.signup-choice-row label,.signup-consent,.signup-confirmation-summary,.public-schedule-legend{color:var(--brand-text);background:#0d1c2bdb;border-color:#6fbfff38}.secondary-action.danger,.journal-actions button.danger,.admin-correction-controls button{color:#ffc4c4;background:#48191fe0;border-color:#ff6f6f7a}.lesson-detail,.lesson-detail-head,.lesson-student-detail-panel,.mobile-student-detail-panel{color:var(--brand-text);background:#0d1c2be6;border-color:#6fbfff3d}.season-manager-bulk-preview,.season-manager-season,.season-manager-group-actions button,.season-manager-inactive-groups li,.public-schedule-page,.public-schedule-slot,.public-schedule-slot-meta span,.public-schedule-slot-action.secondary{color:var(--brand-text);background:#0d1c2be0;border-color:#6fbfff38}.capacity,.summary-chip,.lesson-balance,.status-tag{color:var(--brand-text);background:#63d9ff21;border-color:#63d9ff33}.workspace-nav,.season-switcher a:not(.active):hover,.season-switcher a:not(.active):focus-visible,.workspace-nav a:hover,.workspace-nav a:focus-visible,.week-switcher button:hover,.schedule-day-head,.lesson-group-nav button,.lesson-group-nav span,.lesson-detail-refresh,.lesson-detail-refresh:hover,.lesson-detail-refresh:focus-visible,.lesson-detail-stats span,.lesson-capacity-details summary,.lesson-capacity-details[open] summary,.student-suggestions button:hover,.booking-mode-row button,.booking-mode-row button.active,.lesson-topic-chip,.lesson-topic-chip:hover,.lesson-topic-chip:focus-visible,.lesson-student-detail-head button,.lesson-student-empty-panel,.lesson-actions button,.lesson-actions button:hover,.regular-section .lesson-more-actions[open],.lesson-more-actions summary,.lesson-transfer-row button,.student-stat-card,.backup-export-box,.journal-edit-toggle,.detail-quick-actions button,.detail-quick-actions button:hover,.detail-quick-actions button.active,.schedule-list span,.subscription-edit-toggle,.subscription-progress div,.admin-status-controls button,.admin-status-controls button.active,.topic-note-actions button,.signup-intro,.signup-slot-note{color:var(--brand-text);background:#0d1c2be6;border-color:#6fbfff3d}.season-risk-head span,.season-manager-bulk-impact span,.season-manager-readiness strong,.season-manager-readiness span,.schedule-summary span,.student-status-badge,.lesson-topic-chip.tone-2,.attendance-tag.excused,.makeup-count.available,.topic-title strong em{color:var(--brand-text);background:#63d9ff21;border-color:#63d9ff38}.season-manager-bulk-errors li,.lesson-detail-close,.lesson-detail-close:hover,.lesson-detail-close:focus-visible{color:#ffc4c4;background:#48191fe0;border-color:#ff6f6f85}.attendance-tag.no_show,.subscription-correction-panel,.mode-warning,.signup-confirmation-help,.primary-action.active{color:var(--brand-accent);background:#473813d1;border-color:#fee7a775}.season-manager-inactive-groups button,.journal-export-button{color:#a7ffd8;background:#06392fc7;border-color:#49df9e61}body{background-color:#030812}.lesson-capacity-details[open] summary{color:var(--brand-text);background:#0d1c2be6;border-color:#6fbfff3d}.operation-items{scrollbar-color:#63d9ff5c #0d1c2beb}.operation-items::-webkit-scrollbar-track{background:#0d1c2beb}.operation-items::-webkit-scrollbar-corner{background:#0d1c2beb}.operation-items::-webkit-scrollbar-thumb{background:#63d9ff57}.operation-items::-webkit-scrollbar-thumb:hover{background:#63d9ff80}.operation-badge.amber{color:var(--brand-accent);background:#473813d1;border-color:#fee7a775}.operation-badge.red{color:#ffc4c4;background:#48191fe0;border-color:#ff6f6f7a}.schedule-slot.needs-attendance{background:#1e1b14;border-color:#fee7a73d}.schedule-slot.needs-attendance:hover,.schedule-slot.needs-attendance.selected{background:#282317;border-color:#fee7a752}.schedule-slot .capacity.full{color:#fee7a7;background:#0a3a4694;border-color:#fee7a752}.schedule-slot .capacity.over{color:#fee7a7;background:#0a3a4694;border-color:#fee7a761}body *{scrollbar-color:#63d9ff5c #0d1c2beb}body ::-webkit-scrollbar-track{background:#0d1c2beb}body ::-webkit-scrollbar-corner{background:#0d1c2beb}body ::-webkit-scrollbar-thumb{background:#63d9ff57}body ::-webkit-scrollbar-thumb:hover{background:#63d9ff80}.subscription-lesson-grid,.parent-subscription-grid{grid-template-columns:repeat(6,minmax(0,1fr));gap:7px;min-width:0}.parent-subscription-history{gap:10px;min-width:0;display:grid}.parent-subscription-summary{cursor:pointer;border-radius:6px;gap:8px;list-style:none;display:grid}.parent-subscription-summary::-webkit-details-marker{display:none}.parent-subscription-summary:focus-visible{outline-offset:3px;outline:2px solid #63d9ffd1}.parent-subscription-toggle{color:var(--brand-accent);justify-self:end;align-items:center;gap:5px;font-size:11px;font-weight:900;line-height:1;display:inline-flex}.parent-subscription-toggle i{font-size:16px;font-style:normal;transition:transform .16s}.parent-subscription-toggle-open,.parent-subscription-collapsible[open] .parent-subscription-toggle-closed{display:none}.parent-subscription-collapsible[open] .parent-subscription-toggle-open{display:inline}.parent-subscription-collapsible[open] .parent-subscription-toggle i{transform:rotate(180deg)}.subscription-lesson-slot,.parent-subscription-slot{align-content:start;gap:4px;min-width:0;min-height:94px;padding:8px;overflow:hidden}.subscription-lesson-slot-head,.parent-subscription-slot-head{justify-content:space-between;align-items:center;gap:4px;min-width:0;display:flex}.subscription-lesson-slot-head strong,.parent-subscription-slot-head strong{width:auto;min-width:0;height:auto;color:var(--brand-text);overflow-wrap:anywhere;background:0 0;border-radius:0;padding:0;font-size:11px;line-height:1.15;display:block}.subscription-makeup-chip,.parent-subscription-makeup-chip{color:#fee7a7;overflow-wrap:anywhere;text-align:right;border:1px solid #fee7a76b;border-radius:999px;flex:0 auto;min-width:0;padding:2px 4px;font-size:8px;font-style:normal;font-weight:900;line-height:1.1}.subscription-lesson-date,.parent-subscription-date,.subscription-lesson-meta,.parent-subscription-meta,.subscription-pause-note,.parent-subscription-pause-note{min-width:0;color:var(--brand-muted);overflow-wrap:anywhere;font-size:9px;font-weight:700;line-height:1.25}.subscription-lesson-meta,.parent-subscription-meta{color:var(--brand-text)}.subscription-pause-note,.parent-subscription-pause-note{color:#aab7c8;font-size:8px}.subscription-lesson-slot.carryover,.parent-subscription-slot.carryover{background:#3f4b5b47;border-color:#aab7c857}.subscription-ledger-warning{color:#fee7a7;background:#44351261;border:1px solid #fee7a759;border-radius:6px;margin:0;padding:6px 8px;font-size:10px;line-height:1.3}@media (max-width:1100px){.subscription-lesson-grid,.parent-subscription-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}@media (max-width:720px){.subscription-lesson-grid,.parent-subscription-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.subscription-lesson-slot,.parent-subscription-slot{min-height:90px}}.admin-directories-page{gap:16px;min-width:0;display:grid}.admin-directories-tabs{border:1px solid var(--line);background:#091422d1;border-radius:8px;gap:6px;max-width:100%;padding:5px;display:flex;overflow-x:auto}.admin-directories-tabs button,.admin-directories-status-filter button{min-height:38px;color:var(--muted);font:inherit;white-space:nowrap;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:7px;flex:none;padding:8px 12px;font-weight:800}.admin-directories-tabs button.active,.admin-directories-status-filter button.active{color:var(--brand-text);background:#20a7ff29;border-color:#4bdcff8c}.admin-directories-toolbar{justify-content:space-between;align-items:end;gap:12px;display:flex}.admin-directories-toolbar label,.admin-directory-form label,.admin-directory-create label,.admin-directory-merge label,.admin-directory-merge-preview label{gap:6px;min-width:0;display:grid}.admin-directories-toolbar label>span,.admin-directory-form label>span,.admin-directory-create label>span,.admin-directory-merge label>span,.admin-directory-merge-preview label>span{color:var(--muted);text-transform:uppercase;font-size:11px;font-weight:800}.admin-directories-toolbar input,.admin-directory-form input,.admin-directory-form select,.admin-directory-create input,.admin-directory-create select,.admin-directory-merge input,.admin-directory-merge select,.admin-directory-merge-preview input{border:1px solid var(--line);width:100%;min-height:40px;color:var(--brand-text);font:inherit;background:#030812b8;border-radius:7px;padding:8px 10px}.admin-directories-toolbar label{flex:320px;max-width:520px}.admin-directories-status-filter,.admin-directory-actions,.admin-directory-plan-summary{flex-wrap:wrap;gap:7px;display:flex}.admin-directories-message,.admin-directory-note,.admin-directory-warning,.admin-directory-consequence{color:var(--brand-muted);background:#091c2cd1;border:1px solid #4bdcff4d;border-radius:8px;padding:10px 12px;line-height:1.45}.admin-directory-warning{color:var(--brand-accent);border-color:#fee7a76b}.admin-directory-create,.admin-directory-card,.admin-directory-merge,.admin-directory-technical-accounts{border:1px solid var(--line);background:#152230e6;border-radius:10px;min-width:0;padding:16px}.admin-directory-create{grid-template-columns:repeat(4,minmax(0,1fr));align-items:end;gap:12px;display:grid}.admin-directory-create h2,.admin-directory-reason{grid-column:1/-1}.admin-directory-create button,.admin-directory-actions button,.admin-directory-merge button,.admin-directory-merge-preview button{min-height:40px;color:var(--brand-text);font:inherit;cursor:pointer;background:#20a7ff33;border:1px solid #4bdcff8c;border-radius:7px;padding:8px 12px;font-weight:800}.admin-directory-create button:disabled,.admin-directory-actions button:disabled,.admin-directory-merge button:disabled,.admin-directory-merge-preview button:disabled{opacity:.45;cursor:not-allowed}.admin-directory-actions button.secondary{border-color:var(--line);background:#ffffff0d}.admin-directory-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.admin-directory-card.disabled{opacity:.76}.admin-directory-card>header{justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:12px;display:flex}.admin-directory-card>header span{color:var(--muted);text-transform:uppercase;font-size:11px;font-weight:800}.admin-directory-card>header h2{margin-top:4px}.admin-directory-card>header>strong{color:var(--brand-accent);text-align:right}.admin-directory-dependencies{gap:7px;max-width:100%;margin-bottom:12px;padding-bottom:4px;display:flex;overflow-x:auto}.admin-directory-dependencies span,.admin-directory-plan-summary span{border:1px solid var(--line);color:var(--muted);white-space:nowrap;background:#0308127a;border-radius:7px;flex:none;padding:6px 8px;font-size:12px}.admin-directory-dependencies strong{color:var(--brand-text);margin-left:4px}.admin-directory-form{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.admin-directory-form .admin-directory-reason,.admin-directory-form .admin-directory-actions{grid-column:1/-1}.admin-directory-check{color:var(--brand-text);grid-template-columns:auto 1fr;align-content:center;font-size:13px}.admin-directory-check input{width:18px;min-height:18px}.admin-directory-consequence{margin-top:12px;font-size:12px}.admin-directory-merge{gap:12px;display:grid}.admin-directory-merge>p,.admin-directory-technical-accounts p{color:var(--muted)}.admin-directory-merge-grid{grid-template-columns:repeat(2,minmax(0,1fr)) auto;align-items:end;gap:10px;display:grid}.admin-directory-merge-preview{background:#4334104d;border:1px solid #fee7a76b;border-radius:8px;gap:10px;padding:12px;display:grid}.admin-directory-technical-accounts summary{color:var(--brand-text);cursor:pointer;font-weight:800}.admin-directory-technical-accounts ul{color:var(--muted);margin-bottom:0}@media (max-width:900px){.admin-directory-create,.admin-directory-list{grid-template-columns:1fr}}@media (max-width:600px){.admin-directories-toolbar,.admin-directory-card>header{flex-direction:column;align-items:stretch}.admin-directories-toolbar label{flex-basis:auto}.admin-directory-form,.admin-directory-merge-grid{grid-template-columns:1fr}.admin-directory-form .admin-directory-reason,.admin-directory-form .admin-directory-actions{grid-column:1}.admin-directory-card,.admin-directory-create,.admin-directory-merge,.admin-directory-technical-accounts{padding:12px}}@media (max-width:640px){.payment-journal-table tr.editing-row{background:#1c2b39f5;grid-template-columns:minmax(0,1fr);gap:8px}.payment-journal-table tr.editing-row>td{width:100%;min-width:0;color:var(--brand-text);text-align:left;background:0 0;grid-area:auto/1;justify-self:stretch;padding:0}.payment-journal-table tr.editing-row>td[data-label=Ученик]{order:1;padding-right:0}.payment-journal-table tr.editing-row>td[data-label=Сумма]{order:2}.payment-journal-table tr.editing-row>td[data-label=Дата]{order:3}.payment-journal-table tr.editing-row>td[data-label=Способ]{order:4}.payment-journal-table tr.editing-row>td[data-label=Получил]{order:5}.payment-journal-table tr.editing-row>td[data-label=Комментарий]{order:6}.payment-journal-table tr.editing-row>td[data-label=Действия]{order:7}.payment-journal-table tr.editing-row>td[data-label=Ученик] strong{max-width:100%}.payment-journal-table tr.editing-row .journal-inline-field{gap:4px;min-width:0;display:grid}.payment-journal-table tr.editing-row input,.payment-journal-table tr.editing-row select{width:100%;min-width:0;color:var(--brand-text);background:#0d1c2bf5}.payment-journal-table tr.editing-row .journal-actions button{white-space:normal;min-width:0}}@media (max-width:720px){.mobile-student-detail-panel .topic-note-card,.mobile-student-detail-panel .topic-block,.mobile-student-detail-panel .topic-list,.mobile-student-detail-panel .topic-row,.mobile-student-detail-panel .topic-check,.student-detail-drawer .topic-note-card,.student-detail-drawer .topic-block,.student-detail-drawer .topic-list,.student-detail-drawer .topic-row,.student-detail-drawer .topic-check{-webkit-backdrop-filter:none;backdrop-filter:none}}
