:root{color-scheme:light;--dashboard-bg: #edf4fc;--dashboard-glow: #ffffff;--dashboard-ink: #111b32;--dashboard-muted: #5c7193;--dashboard-panel: rgba(255, 255, 255, .86);--dashboard-border: #e7eef8;--dashboard-control: #f0f4fa;--dashboard-blue: #d7e9ff;--dashboard-yellow: #fff0d1;--dashboard-coral: #ffe0e8;--dashboard-green: #d9f1ef;--dashboard-info: #1765d8;--dashboard-warning: #a76308;--dashboard-danger: #c73352;--dashboard-success: #227568;--dashboard-shadow: 0 12px 34px rgba(48, 91, 156, .05);--dashboard-art-opacity: .9;--dashboard-ribbon-opacity: .65;--sidebar-bg: #f8fbff;--sidebar-ink: #142456;--sidebar-muted: #5c7193;--sidebar-border: #dfebfc;--sidebar-hover: #edf4ff;--sidebar-icon-bg: #e6f1ff;--sidebar-active-bg: #e3efff;--sidebar-accent: #1670ff;--sidebar-primary-bg: linear-gradient(135deg, #246de5, #1265ff);--sidebar-primary-border: #4c91ff;--sidebar-primary-shadow: rgba(37, 112, 243, .18);--sidebar-button-bg: #ffffff;--sidebar-brand-bg: linear-gradient(145deg, #d1eaff, #96ceff);--paper: #ffffff;--background: #eef6ff;--surface: #f4f8ff;--card: #ffffff;--ink: #14234c;--muted-strong: #52698d;--muted: #5c7193;--border: #dce8fa;--border-soft: #e9f0fb;--blue: #d5e9ff;--surface-blue: #e7f2ff;--yellow: #ffe7a9;--yellow-soft: #fff5d6;--coral: #e15169;--coral-soft: #ffebef;--green: #e5f8ed;--control: #f0f5fc;--shadow-soft: 0 12px 34px rgba(48, 91, 156, .07);--panel-bg: rgba(255, 255, 255, .88);--tone-danger: #c53650;--tone-success: #247b53;--tone-warning: #936008;--tone-info: #2267cf;--action-bg: #176bfa;--action-ink: #ffffff;--danger-action-ink: #ffffff;--provider-bg: #14234c;--provider-muted: #c4d4ef;--calendar-today: #edf6ff;--calendar-hover: #dfedff;--row-hover: #f0f7ff;--invalid-bg: #fff3f5;--danger-border: #ffcad3;--danger-bg: #fff0f3;--danger-hover-bg: #ffe5eb;--focus-ring: rgba(40, 118, 255, .4);--glow-blue: rgba(128, 190, 255, .2);--glow-yellow: rgba(128, 190, 255, .07);--surface-overlay: rgba(255, 255, 255, .7);--decorative-highlight: rgba(255, 255, 255, .5);--crm-art-opacity: .8;--crm-art-filter: none;--select-arrow: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%231670ff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m7 10 5 5 5-5'/%3E%3C/svg%3E")}:root[data-theme=dark]{color-scheme:dark;--crm-art-opacity: .7;--crm-art-filter: invert(1) hue-rotate(180deg) brightness(1.8) saturate(.65);--dashboard-bg: #171f2b;--dashboard-glow: #223550;--dashboard-ink: #edf3ff;--dashboard-muted: #a7b5cb;--dashboard-panel: rgba(32, 43, 60, .94);--dashboard-border: #35445b;--dashboard-control: #29394e;--dashboard-blue: #294365;--dashboard-yellow: #443b2a;--dashboard-coral: #482f3e;--dashboard-green: #254340;--dashboard-info: #9cc8ff;--dashboard-warning: #f6ce88;--dashboard-danger: #ffb0c2;--dashboard-success: #9adecb;--dashboard-shadow: 0 12px 34px rgba(0, 0, 0, .12);--dashboard-art-opacity: .58;--dashboard-ribbon-opacity: .14;--paper: #202c40;--background: #171f2b;--surface: #26354a;--card: #202c40;--ink: #edf3ff;--muted-strong: #bdcbe1;--muted: #a7b5cb;--border: #35465f;--border-soft: #2e3d54;--blue: #294365;--surface-blue: #273d59;--yellow: #53432c;--yellow-soft: #443b2a;--coral: #f18da3;--coral-soft: #482f3e;--green: #254340;--control: #29394e;--shadow-soft: 0 16px 42px rgba(0, 0, 0, .2);--panel-bg: rgba(32, 43, 60, .96);--sidebar-bg: #1c2533;--sidebar-ink: #e5eeff;--sidebar-muted: #a3b3d0;--sidebar-border: #34435c;--sidebar-hover: #263750;--sidebar-icon-bg: #283d59;--sidebar-active-bg: #273f64;--sidebar-accent: #4b96ff;--sidebar-primary-bg: linear-gradient(135deg, #377bf0, #185cd7);--sidebar-primary-border: #4d8beb;--sidebar-primary-shadow: rgba(0, 0, 0, .16);--sidebar-button-bg: #202d41;--sidebar-brand-bg: linear-gradient(145deg, #4875ad, #315580);--surface-overlay: rgba(255, 255, 255, .06);--decorative-highlight: rgba(255, 255, 255, .04);--tone-danger: #ffb0c2;--tone-success: #9adecb;--tone-warning: #f6ce88;--tone-info: #9cc8ff;--action-bg: #2b78ed;--action-ink: #ffffff;--danger-action-ink: #201a18;--provider-bg: #111d31;--provider-muted: #bac8e0;--calendar-today: #243750;--calendar-hover: #2a4260;--row-hover: #273a55;--invalid-bg: #3b2833;--danger-border: #895366;--danger-bg: #3b2833;--danger-hover-bg: #482f3e;--focus-ring: rgba(94, 160, 255, .65);--glow-blue: rgba(87, 142, 220, .1);--glow-yellow: rgba(87, 142, 220, .04);--select-arrow: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%239cc8ff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m7 10 5 5 5-5'/%3E%3C/svg%3E")}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/fonts/InterVariable.woff2) format("woff2")}:root{font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:var(--ink);background:var(--background);font-synthesis:none;font-optical-sizing:auto;font-size:14px;line-height:1.5}*{box-sizing:border-box}html,body{height:100%;margin:0}body{min-width:0;overflow:hidden;overflow-x:hidden;background:radial-gradient(circle at 92% 2%,var(--glow-blue, rgba(171, 212, 229, .24)),transparent 27rem),radial-gradient(circle at 36% 100%,var(--glow-yellow, rgba(245, 205, 108, .14)),transparent 30rem),var(--background)}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer;font:inherit}.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip-path:inset(50%);white-space:nowrap;border:0}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid var(--focus-ring, rgba(77, 148, 181, .35));outline-offset:2px}.content-page{width:min(100% - 56px,1320px);margin:0 auto;padding:28px 0 42px}.wide-page{width:min(100% - 42px,1500px)}.content-heading,.section-heading-row,.calendar-toolbar,.modal-heading,.modal-actions,.payment-provider-card,.payment-provider-card>div,.settings-card,.settings-card-heading{display:flex;align-items:center}.content-heading{justify-content:space-between;gap:24px;margin-bottom:28px}.content-heading h1{margin:7px 0 0;font-size:clamp(28px,3vw,36px);font-weight:800;letter-spacing:-.035em;line-height:1.15}.content-heading p{margin:8px 0 0;color:var(--muted);font-size:13px}.section-kicker{color:var(--muted);font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase}.button{display:inline-flex;align-items:center;justify-content:center;min-height:43px;padding:0 17px;border:1px solid transparent;border-radius:12px;font:inherit;font-size:13px;font-weight:650;text-decoration:none;transition:.15s ease}.button:disabled{cursor:wait;opacity:.58}.button-primary{background:var(--action-bg, var(--ink));box-shadow:0 10px 24px #30302d26;color:var(--action-ink, white)}.button-primary:hover:not(:disabled){transform:translateY(-1px)}.button-secondary{border-color:var(--border);background:var(--surface-blue);color:var(--ink)}.button-ghost{border-color:var(--border);background:var(--card);color:var(--muted-strong)}.icon-button{display:grid;flex:0 0 auto;place-items:center;width:40px;height:40px;border:1px solid var(--border);border-radius:12px;background:var(--card);color:var(--ink);font-size:18px}.notice{margin:-10px 0 22px;padding:13px 15px;border-radius:12px;font-size:12px;font-weight:700}.notice-error{background:var(--coral-soft);color:var(--tone-danger, #82443b)}.notice-success{background:var(--green);color:var(--tone-success, #38634b)}.toolbar-card{display:flex;align-items:end;justify-content:space-between;gap:18px;margin-bottom:20px;padding:15px 18px;border:1px solid var(--border);border-radius:17px;background:var(--panel-bg, rgba(255, 253, 248, .86))}.toolbar-wide{align-items:center}.search-field{display:grid;gap:6px;width:min(100%,360px)}.search-field span,.field span,.compact-select span{color:var(--muted-strong);font-size:12px;font-weight:600;letter-spacing:0}.search-field input,.field input,.field select,.field textarea,.compact-select select{width:100%;min-height:43px;padding:0 13px;border:1px solid var(--border);border-radius:11px;background:var(--paper);color:var(--ink);font:inherit;font-size:14px}.field .calendar-group-select{-webkit-appearance:none;appearance:none;padding-right:42px;background-image:var(--select-arrow, url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%2368645d' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m7 10 5 5 5-5'/%3E%3C/svg%3E"));background-repeat:no-repeat;background-position:right 14px center;background-size:15px 15px}.field select,.compact-select select{appearance:none;padding-right:42px;background-image:var(--select-arrow, url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%2368645d' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m7 10 5 5 5-5'/%3E%3C/svg%3E"));background-repeat:no-repeat;background-position:right 14px center;background-size:15px 15px}.field input.is-invalid{border-color:var(--coral);background-color:var(--invalid-bg, #fff8f6);box-shadow:0 0 0 3px #d66c5d1f}.calendar-field-error{margin-top:-9px;color:var(--tone-danger, #a14f44);font-size:11px;font-weight:800;line-height:1.4}.result-count,.calendar-toolbar>span,.section-heading-row>span{color:var(--muted);font-size:11px;font-weight:800}.loading-state,.empty-state{display:grid;place-items:center;min-height:280px;padding:30px;border:1px dashed var(--border);border-radius:20px;background:var(--panel-bg, rgba(255, 253, 248, .58));color:var(--muted);text-align:center}.empty-state{align-content:center}.empty-state strong{color:var(--ink);font-size:18px}.empty-state p{margin:8px 0 18px;font-size:12px}.compact-empty{min-height:220px;border:0}.card-grid,.package-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.entity-card,.package-card{overflow:hidden;padding:20px;border:1px solid var(--border);border-radius:20px;background:var(--panel-bg, rgba(255, 253, 248, .9));box-shadow:var(--shadow-soft)}.entity-card-top,.entity-footer,.package-actions,.application-actions{display:flex;align-items:center;justify-content:space-between;gap:10px}.entity-avatar,.small-avatar,.large-avatar{display:grid;flex:0 0 auto;place-items:center;border-radius:15px;background:var(--surface-blue);font-weight:700}.entity-avatar{width:48px;height:48px;font-size:13px}.avatar-yellow{background:var(--yellow-soft)}.avatar-coral{background:var(--coral-soft)}.entity-menu{display:flex;gap:5px}.entity-menu button,.text-danger-button{border:0;background:transparent;color:var(--muted);font-size:11px;font-weight:700}.entity-menu .danger-action,.danger-text,.text-danger-button{color:var(--tone-danger, #a34f44)}.entity-copy{padding:14px 0 16px}.entity-copy h2,.package-card h3{margin:10px 0 0;color:var(--ink);font-size:19px;letter-spacing:-.025em}.entity-copy p,.package-card p{margin:5px 0 0;color:var(--muted);font-size:13px}.status-pill{display:inline-flex;align-items:center;justify-self:start;width:fit-content;max-width:100%;min-height:24px;padding:0 9px;border-radius:999px;background:var(--control);color:var(--muted-strong);font-size:11px;font-weight:700;white-space:nowrap}.status-active{background:var(--green);color:var(--tone-success, #3f6d53)}.status-warning{background:var(--yellow-soft);color:var(--tone-warning, #85651e)}.status-muted{background:var(--control)}.entity-stats{display:grid;grid-template-columns:1fr 1fr;margin:0;padding:14px 0;border-top:1px solid var(--border-soft);border-bottom:1px solid var(--border-soft)}.entity-stats div+div{padding-left:16px;border-left:1px solid var(--border-soft)}.entity-stats dt{color:var(--muted);font-size:11px;font-weight:800}.entity-stats dd{margin:6px 0 0;font-size:18px;font-weight:700}.entity-footer{padding-top:14px;color:var(--muted);font-size:11px;font-weight:700}.card-link,.back-link{color:var(--ink);font-size:11px;font-weight:700;text-decoration:none}.back-link{display:inline-flex;margin-bottom:22px;color:var(--muted-strong)}.group-hero{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:22px;padding:28px;border:1px solid rgba(70,120,140,.12);border-radius:22px;background:radial-gradient(circle at 85% 10%,var(--decorative-highlight, rgba(255, 255, 255, .48)),transparent 17rem),var(--blue)}.group-hero h1{margin:13px 0 0;font-size:clamp(30px,5vw,48px);letter-spacing:-.055em}.group-hero p{margin:7px 0 0;color:var(--muted-strong);font-size:11px;font-weight:700}.group-details-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);gap:18px}.section-heading-padded{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:20px;border-bottom:1px solid var(--border)}.section-heading-padded h2{margin:5px 0 0;font-size:18px}.section-heading-padded>span{color:var(--muted);font-size:11px;font-weight:700}.simple-list{padding:0 18px}.simple-list-row{display:flex;align-items:center;gap:11px;min-height:65px;padding:9px 0;border-bottom:1px solid var(--border-soft)}.simple-list-row:last-child{border-bottom:0}.simple-list-row>span:nth-child(2){min-width:0;flex:1}.simple-list-row strong,.simple-list-row small{display:block}.simple-list-row strong{font-size:11px}.simple-list-row small{margin-top:4px;color:var(--muted);font-size:11px}.lesson-list-row{width:100%;border:0;border-bottom:1px solid var(--border-soft);background:transparent;color:var(--ink);font:inherit;text-align:left}.lesson-list-row:hover{background:var(--surface)}.date-tile{display:grid;flex:0 0 auto;place-items:center;width:42px;height:46px;border-radius:12px;background:var(--yellow-soft)}.date-tile strong{font-size:14px}.date-tile small{margin:-5px 0 0;font-size:11px;text-transform:uppercase}.attendance-modal{width:min(100%,760px)}.attendance-list{max-height:min(520px,58vh);overflow-y:auto}.attendance-row{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:67px;padding:10px 0;border-bottom:1px solid var(--border-soft)}.attendance-row strong,.attendance-row small{display:block}.attendance-row strong{font-size:11px}.attendance-row small{margin-top:4px;color:var(--muted);font-size:11px}.attendance-options{display:flex;gap:5px}.attendance-options button{min-height:32px;padding:0 10px;border:1px solid var(--border);border-radius:9px;background:var(--paper);color:var(--muted);font-size:11px;font-weight:700}.attendance-options button.is-selected{border-color:#4f8967;background:var(--green);color:var(--tone-success, #356248)}.attendance-options button.is-absent{border-color:var(--coral);background:var(--coral-soft);color:var(--tone-danger, #914b42)}.modal-layer,.drawer-backdrop{position:fixed;inset:0;z-index:50;background:#302e2a6b;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.modal-layer{display:grid;place-items:center;padding:20px}.modal-card{width:min(100%,540px);max-height:calc(100vh - 40px);overflow:auto;padding:24px;border:1px solid var(--border);border-radius:22px;background:var(--paper);box-shadow:0 30px 90px #2b28243d}.modal-heading{justify-content:space-between;gap:16px;margin-bottom:24px}.modal-heading h2,.section-heading-row h2,.settings-card h2,.report-builder h2{margin:6px 0 0;font-size:21px;letter-spacing:-.03em}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.field,.compact-select{display:grid;gap:7px}.full-field{grid-column:1/-1}.modal-actions{justify-content:flex-end;gap:10px;padding-top:8px}.filter-pills{display:flex;flex-wrap:wrap;gap:7px}.filter-pills button{min-height:34px;padding:0 12px;border:1px solid var(--border);border-radius:999px;background:var(--paper);color:var(--muted);font-size:11px;font-weight:700}.filter-pills button.is-selected{border-color:var(--ink);background:var(--action-bg, var(--ink));color:var(--action-ink, white)}.table-card{overflow:hidden;border:1px solid var(--border);border-radius:20px;background:var(--panel-bg, rgba(255, 253, 248, .9));box-shadow:var(--shadow-soft)}.data-table{min-width:800px}.table-card:has(.data-table){overflow-x:auto}.table-row{display:grid;grid-template-columns:minmax(240px,1.4fr) minmax(150px,.8fr) 110px 145px 28px;align-items:center;gap:18px;min-height:70px;padding:10px 20px;border:0;border-bottom:1px solid var(--border-soft)}.table-head{min-height:47px;background:var(--surface);color:var(--muted);font-size:11px;font-weight:700;letter-spacing:.05em;text-transform:uppercase}.table-button{width:100%;background:transparent;color:var(--muted-strong);font:inherit;font-size:11px;text-align:left}.table-button:hover{background:var(--row-hover, rgba(229, 242, 247, .42))}.person-cell{display:flex;align-items:center;gap:11px}.person-cell strong,.person-cell small{display:block}.person-cell strong{color:var(--ink);font-size:14px}.person-cell small{margin-top:4px;color:var(--muted);font-size:12px}.small-avatar{width:38px;height:38px;border-radius:12px;font-size:11px}.large-avatar{width:70px;height:70px;border-radius:22px;font-size:17px}.balance-value{color:var(--tone-success, #397653);font-weight:700}.balance-low{color:var(--coral)}.row-arrow{color:var(--muted);font-size:16px}.drawer-backdrop{z-index:59}.detail-drawer{position:fixed;inset:0 0 0 auto;z-index:60;width:min(100%,430px);overflow-y:auto;padding:24px;border-left:1px solid var(--border);background:var(--paper);box-shadow:-24px 0 70px #302d2829}.drawer-heading{display:grid;justify-items:start;padding-bottom:24px;border-bottom:1px solid var(--border)}.drawer-heading .icon-button{justify-self:end;margin-bottom:10px}.drawer-heading h2{margin:14px 0 0;font-size:23px}.drawer-heading p{margin:6px 0 12px;color:var(--muted);font-size:11px}.balance-card{display:grid;grid-template-columns:1fr auto;align-items:center;gap:8px 14px;margin:20px 0;padding:18px;border-radius:17px;background:var(--yellow-soft)}.balance-card span{color:var(--muted-strong);font-size:11px;font-weight:700}.balance-card strong{grid-row:span 2;font-size:35px}.balance-card .button{width:fit-content}.drawer-action-row{display:flex;flex-wrap:wrap;gap:8px}.drawer-section{padding:20px 0;border-top:1px solid var(--border-soft)}.compact-list-row,.history-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 0;border-bottom:1px solid var(--border-soft)}.compact-list-row strong,.compact-list-row small,.history-row strong,.history-row small{display:block}.compact-list-row strong,.history-row strong{font-size:11px}.compact-list-row small,.history-row small,.history-row time,.muted-copy{margin-top:3px;color:var(--muted);font-size:11px}.inline-editor{padding:18px;border-radius:17px;background:var(--surface)}.inline-editor h3{margin:0 0 16px;font-size:15px}.inline-editor .field+.field{margin-top:12px}.calendar-toolbar{justify-content:space-between;gap:18px;margin-bottom:16px}.calendar-toolbar>span{color:var(--muted);font-size:11px;font-weight:800}.calendar-add-button,.lesson-cancel-button,.lesson-danger-button{gap:8px}.calendar-add-button admin-icon,.lesson-cancel-button admin-icon,.lesson-danger-button admin-icon{width:16px;height:16px}.button-group{display:flex;gap:7px}.week-grid{display:grid;grid-template-columns:repeat(7,minmax(150px,1fr));min-height:600px;overflow-x:auto;border:1px solid var(--border);border-radius:20px;background:var(--panel-bg, rgba(255, 253, 248, .8));box-shadow:var(--shadow-soft)}@media(min-width:901px){.calendar-page{display:flex;flex-direction:column;height:100dvh;min-height:640px;padding-top:32px;padding-bottom:32px;overflow:hidden}.calendar-page .content-heading{flex:0 0 auto;margin-bottom:22px}.calendar-page .notice,.calendar-page .calendar-toolbar{flex:0 0 auto}.calendar-page .week-grid{flex:1 1 auto;min-height:0}.calendar-page .day-column{display:flex;min-height:0;flex-direction:column}.calendar-page .day-lessons{flex:1 1 auto;min-height:0;overflow-y:auto;overscroll-behavior:contain}}.day-column{min-width:150px;border-right:1px solid var(--border)}.day-column:last-child{border-right:0}.day-column>header{position:relative;display:grid;gap:4px;min-height:78px;padding:16px;border-bottom:1px solid var(--border);background:var(--surface)}.day-column.is-today>header{background:var(--surface-blue)}.day-column>header span{color:var(--muted);font-size:11px;font-weight:700;text-transform:uppercase}.day-column>header strong{font-size:14px}.day-column>header button{position:absolute;top:18px;right:12px;width:26px;height:26px;border:0;border-radius:8px;background:var(--decorative-highlight, rgba(255, 255, 255, .65));color:var(--muted);transition:.15s ease}.day-column>header button:hover{background:var(--panel-bg, white);color:var(--ink);transform:translateY(-1px)}.day-lessons{display:grid;gap:9px;align-content:start;min-height:500px;padding:10px}.calendar-event{width:100%;padding:12px;border:0;border-left:4px solid #70afd0;border-radius:11px;background:var(--surface-blue);color:var(--ink);font:inherit;text-align:left;box-shadow:0 5px 14px #45413a0d;transition:transform .15s ease,box-shadow .15s ease}.calendar-event:hover{transform:translateY(-2px);box-shadow:0 10px 20px #45413a1c}.calendar-event:focus-visible{outline-offset:1px}.calendar-event:disabled{cursor:wait;opacity:.62}.calendar-event.is-planned{border-left-style:dashed}.calendar-event.event-blue{border-left-color:#70afd0;background:var(--surface-blue)}.calendar-event.event-yellow{border-left-color:#dfae35;background:var(--yellow-soft)}.calendar-event.event-coral{border-left-color:var(--coral);background:var(--coral-soft)}.calendar-event.event-green{border-left-color:#74aa8b;background:var(--green)}.calendar-event time,.calendar-event strong,.calendar-event small{display:block}.calendar-event time{color:var(--muted);font-size:11px;font-weight:700}.calendar-event strong{margin-top:7px;font-size:11px}.calendar-event small{margin-top:4px;color:var(--muted);font-size:11px;line-height:1.4}.calendar-event-heading{display:flex;align-items:center;justify-content:space-between;gap:8px}.calendar-event-tools{display:flex;align-items:center;gap:4px}.calendar-event-repeat,.calendar-event-edit{display:grid;place-items:center;width:22px;height:22px;border-radius:7px;background:var(--decorative-highlight, rgba(255, 255, 255, .58));color:var(--muted-strong)}.calendar-event-repeat admin-icon,.calendar-event-edit admin-icon{width:12px;height:12px}.calendar-event-edit{opacity:0;transition:opacity .15s ease}.calendar-event:hover .calendar-event-edit,.calendar-event:focus-visible .calendar-event-edit{opacity:1}.calendar-event-teacher{display:block;margin-top:9px;padding-top:7px;border-top:1px solid rgba(80,75,67,.1);color:var(--muted-strong);font-size:11px;font-weight:800;line-height:1.35}.free-day{padding-top:20px;color:#aaa49a;font-size:11px;text-align:center}.modal-notice{margin:-8px 0 18px}.lesson-recurrence-field{min-width:0;margin:0;padding:0;border:0}.lesson-recurrence-field legend{margin-bottom:7px;color:var(--muted);font-size:11px;font-weight:700;letter-spacing:.04em}.lesson-recurrence-toggle{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:5px;padding:4px;border:1px solid var(--border);border-radius:12px;background:var(--control)}.lesson-recurrence-toggle button{min-height:38px;border:0;border-radius:9px;background:transparent;color:var(--muted-strong);font:inherit;font-size:11px;font-weight:700;transition:.15s ease}.lesson-recurrence-toggle button.is-active{background:var(--paper);box-shadow:0 3px 10px #3d3b351a;color:var(--ink)}.lesson-recurrence-field>small{display:block;margin-top:7px;color:var(--muted);font-size:11px;font-weight:700;line-height:1.45}.lesson-editor-context,.lesson-editor-hint,.lesson-cancel-panel{display:flex;align-items:center;gap:13px;padding:14px;border:1px solid var(--border-soft);border-radius:14px;background:var(--surface)}.lesson-editor-context-icon,.lesson-cancel-icon{display:grid;flex:0 0 auto;place-items:center;width:38px;height:38px;border-radius:11px;background:var(--surface-blue);color:var(--tone-info, #4e829b)}.lesson-editor-context-icon admin-icon,.lesson-cancel-icon admin-icon{width:19px;height:19px}.lesson-editor-context strong,.lesson-editor-context small{display:block}.lesson-editor-context strong{font-size:13px}.lesson-editor-context small{margin-top:4px;color:var(--muted);font-size:11px}.lesson-editor-hint{align-items:flex-start;background:var(--surface-blue);color:var(--muted-strong);font-size:11px;font-weight:700;line-height:1.55}.lesson-editor-hint admin-icon{flex:0 0 auto;width:16px;height:16px;margin-top:1px;color:var(--tone-info, #4e829b)}.lesson-cancel-panel{align-items:flex-start;border-color:#d66c5d3d;background:var(--coral-soft)}.lesson-cancel-icon{background:var(--decorative-highlight, rgba(255, 255, 255, .56));color:var(--tone-danger, #a14f44)}.lesson-cancel-panel h3{margin:1px 0 5px;font-size:15px}.lesson-cancel-panel p{margin:0;color:var(--tone-danger, #7d5a55);font-size:11px;line-height:1.55}.lesson-cancel-button{border-color:#d66c5d4d;background:transparent;color:var(--tone-danger, #9d4d42)}.lesson-cancel-button:hover:not(:disabled){background:var(--coral-soft)}.lesson-cancel-button:disabled{cursor:not-allowed;opacity:.42}.lesson-danger-button{border-color:transparent;background:var(--coral);color:var(--danger-action-ink, white)}.modal-actions.split-actions{justify-content:flex-start}.modal-action-spacer{flex:1 1 auto}.past-lesson-note{margin-top:-5px;color:var(--muted);font-size:11px;line-height:1.45}.heading-counter{padding:9px 13px;border-radius:999px;background:var(--coral-soft);color:var(--tone-danger, #8e473e);font-size:11px;font-weight:700}.applications-list{display:grid;gap:14px}.application-card{display:grid;grid-template-columns:minmax(260px,1.1fr) minmax(300px,1fr) auto;align-items:center;gap:24px;padding:20px;border:1px solid var(--border);border-radius:19px;background:var(--panel-bg, rgba(255, 253, 248, .9));box-shadow:var(--shadow-soft)}.application-person{display:flex;align-items:center;gap:15px}.application-person h2{margin:8px 0 0;font-size:16px}.application-person p{margin:5px 0 0;color:var(--muted);font-size:11px}.application-details{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin:0}.application-details dt{color:var(--muted);font-size:11px;font-weight:700;text-transform:uppercase}.application-details dd{margin:6px 0 0;font-size:11px;font-weight:800}.application-actions{justify-content:flex-end;flex-wrap:wrap;max-width:260px}.compact-select{min-width:170px}.payment-provider-card{justify-content:space-between;gap:20px;margin-bottom:30px;padding:18px 20px;border:1px solid var(--border);border-radius:17px;background:var(--provider-bg, var(--ink));color:#fff}.payment-provider-card>div{gap:14px}.payment-provider-card strong,.payment-provider-card small{display:block}.payment-provider-card strong{font-size:12px}.payment-provider-card small{margin-top:4px;color:var(--provider-muted, rgba(255, 255, 255, .56));font-size:11px}.provider-logo{display:grid;place-items:center;width:50px;height:38px;border-radius:11px;background:#fff;color:#171717;font-size:13px;font-weight:700}.section-heading-row{justify-content:space-between;margin-bottom:15px}.package-card{position:relative;padding-top:25px}.package-accent{position:absolute;inset:0 0 auto;height:6px;background:var(--blue)}.yellow-accent{background:var(--yellow)}.package-price{display:block;margin-top:20px;font-size:31px;letter-spacing:-.04em}.package-card p{min-height:30px;line-height:1.5}.package-actions{margin-top:20px;padding-top:15px;border-top:1px solid var(--border-soft)}.inactive-card{opacity:.62}.package-create-button,.package-state-actions,.package-toggle-button,.package-delete-button{display:inline-flex;align-items:center}.package-create-button{gap:8px}.package-create-button admin-icon{width:16px;height:16px}.package-state-actions{justify-content:flex-end;gap:7px}.package-toggle-button,.package-delete-button{min-height:35px;padding:0 11px;border:0;border-radius:10px;font:inherit;font-size:11px;font-weight:700}.package-toggle-button{background:var(--control);color:var(--muted-strong)}.package-enable-button{background:var(--green);color:var(--tone-success, #3f6d53)}.package-delete-button{gap:6px;background:var(--coral-soft);color:var(--tone-danger, #9d4d42)}.package-delete-protected{opacity:.58}.package-delete-button admin-icon{width:14px;height:14px}.package-toggle-button:disabled,.package-delete-button:disabled{cursor:not-allowed;opacity:.48}.package-usage{display:inline-flex;min-height:24px;margin-top:10px;padding:5px 8px;border-radius:8px;background:var(--control);color:var(--muted-strong);font-size:11px;font-weight:800}.package-usage-placeholder{visibility:hidden}.reports-layout{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(300px,.85fr);gap:20px}.report-builder,.report-help,.settings-card{padding:26px;border:1px solid var(--border);border-radius:21px;background:var(--panel-bg, rgba(255, 253, 248, .9));box-shadow:var(--shadow-soft)}.report-icon{display:grid;place-items:center;width:44px;height:44px;margin-bottom:16px;border-radius:16px;background:var(--green);color:var(--tone-success, #47745a);font-size:13px;font-weight:700}.report-builder>p{max-width:530px;margin:9px 0 24px;color:var(--muted);font-size:13px;line-height:1.6}.report-help ol{display:grid;gap:0;margin:20px 0 0;padding:0;list-style:none}.report-help li{display:flex;gap:13px;padding:17px 0;border-bottom:1px solid var(--border-soft)}.report-help li>span{display:grid;flex:0 0 auto;place-items:center;width:32px;height:32px;border-radius:10px;background:var(--surface-blue);font-size:11px;font-weight:700}.report-help strong,.report-help small{display:block}.report-help strong{font-size:13px}.report-help small{margin-top:5px;color:var(--muted);font-size:11px;line-height:1.5}.settings-page{max-width:970px}.settings-card{justify-content:space-between;gap:28px;margin-bottom:18px}.settings-card:first-of-type{display:block}.settings-card-heading{justify-content:space-between;gap:20px;margin-bottom:24px;padding-bottom:20px;border-bottom:1px solid var(--border-soft)}.settings-card p{margin:6px 0 0;color:var(--muted);font-size:13px}.danger-zone{box-shadow:none}@media(max-width:1180px){.card-grid,.package-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.application-card{grid-template-columns:1fr 1fr}.application-actions{grid-column:1/-1;max-width:none;justify-content:flex-start}}@media(max-width:800px){.content-page,.wide-page{width:min(100% - 32px,1320px);padding-top:24px}.content-heading{align-items:flex-start;flex-direction:column}.content-heading .button{width:100%}.calendar-toolbar{align-items:flex-start;flex-direction:column}.calendar-toolbar .button{width:auto}.modal-actions.split-actions{align-items:stretch;flex-direction:column}.modal-actions.split-actions .button{width:100%}.modal-actions.split-actions .modal-action-spacer{display:none}.toolbar-card{align-items:stretch;flex-direction:column}.search-field{width:100%}.card-grid,.package-grid,.reports-layout,.application-card{grid-template-columns:1fr}.application-details{grid-template-columns:1fr 1fr}.application-actions{grid-column:auto}.settings-card,.group-hero{align-items:flex-start;flex-direction:column}.group-details-grid{grid-template-columns:1fr}.attendance-row{align-items:flex-start;flex-direction:column}}@media(max-width:560px){.form-grid{grid-template-columns:1fr}.field,.full-field{grid-column:1}.filter-pills{display:grid;grid-template-columns:1fr 1fr}.application-person{align-items:flex-start}.application-details{grid-template-columns:1fr}.application-actions{align-items:stretch;flex-direction:column}.application-actions>*{width:100%}.modal-card{padding:20px}}.clickable-card{cursor:pointer}.clickable-card:hover{border-color:var(--blue)}.compact-fieldset{border:1px solid var(--border);border-radius:12px;padding:14px;min-width:0}.weekday-options{display:flex;flex-wrap:wrap;gap:4px;margin-bottom:12px}.weekday-options [aria-pressed=true]{background:var(--surface-blue)}.student-picker{display:grid;gap:8px;max-height:150px;overflow-y:auto}.time-grid-scroll{overflow-x:auto;border:1px solid var(--border);border-radius:16px;background:var(--paper)}.time-grid{display:grid;grid-template-columns:58px repeat(7,minmax(125px,1fr));min-width:980px}.time-grid header{height:64px;display:flex;flex-wrap:wrap;gap:6px;align-items:center;justify-content:center;padding:8px;border-bottom:1px solid var(--border);font-size:12px}.time-grid header button{border:0;background:transparent;min-width:32px;min-height:32px;cursor:pointer}.time-axis{position:relative}.time-axis>time{display:block;height:72px;padding:4px 8px;font-size:11px;color:var(--muted)}.time-axis>.axis-end{height:20px}.time-day{min-width:0;border-left:1px solid var(--border)}.time-day.is-today{background:var(--calendar-today, #f1f7fc)}.time-day-body{position:relative;height:936px;overflow:hidden}.time-slot{display:block;width:100%;height:72px;border:0;border-bottom:1px solid var(--border);background:transparent;cursor:pointer}.time-slot:hover{background:var(--calendar-hover, #eaf1f8)}.timed-event{display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-start;position:absolute;left:3px;right:3px;width:calc(100% - 6px);min-height:0;padding:7px;margin:0;overflow:hidden;gap:3px;border-radius:9px;font-size:11px}.timed-event time{margin:0;font-size:10px;font-weight:600;line-height:1.2;white-space:nowrap}.timed-event strong{width:100%;margin:0;overflow:hidden;font-size:12px;line-height:1.25;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.timed-event small{margin:0;font-size:10px;line-height:1.3}.timed-event.is-short{padding:3px 5px;gap:2px}.timed-event.is-short strong{display:block;white-space:nowrap;text-overflow:ellipsis}.timed-event.is-short small{display:none}.section-tabs{display:flex;gap:8px;margin-bottom:20px;border-bottom:1px solid var(--border)}.section-tabs button{border:0;background:transparent;color:var(--muted);padding:12px 18px;cursor:pointer;border-bottom:2px solid transparent}.section-tabs [aria-current=page]{color:var(--ink);border-color:var(--blue)}.table-scroll{overflow:auto}.operational-table{border-collapse:collapse;width:100%;text-align:left;font-size:13px;min-width:600px}.operational-table td,.operational-table th{padding:14px;border-bottom:1px solid var(--border);overflow-wrap:anywhere}.operational-table th{color:var(--muted);font-size:12px}.operational-table small{display:block;color:var(--muted);margin-top:4px}.payment-student-picker{max-height:50vh}.reports-layout{grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);align-items:start}.reports-layout>*,.settings-layout>*,.form-grid>*,.entity-copy{min-width:0}.report-builder,.report-help{overflow-wrap:anywhere}.settings-secondary{display:grid;align-content:start;gap:16px}.security-settings{margin-top:0}.security-settings .form-grid{max-width:800px}.settings-secondary .flirt-card{min-height:0;padding:20px}.settings-secondary blockquote{font-size:18px;margin:16px 0}.teacher-onboarding>summary,.flirt-card>summary{cursor:pointer;font-weight:800;min-height:32px}@media(max-width:1100px){.reports-layout{grid-template-columns:minmax(0,1fr)}}.content-page,.wide-page{width:min(100% - 48px,1280px);padding:24px 0 32px}.content-heading{margin-bottom:20px}.toolbar-card{padding:12px 16px;margin-bottom:18px}.entity-card{padding:20px}.empty-state{padding:26px 22px}.compact-empty{min-height:0;padding:18px}.modal-card{padding:24px;width:min(100%,620px);max-height:calc(100dvh - 48px);overflow:auto}.modal-layer{padding:24px}.form-grid{gap:14px}.text-menu-trigger{width:auto;padding:0 10px;font-size:12px;font-weight:800;white-space:nowrap}[role=link]:focus-visible,summary:focus-visible{outline:3px solid var(--focus-ring, rgba(77, 148, 181, .35));outline-offset:3px}button:focus:not(:focus-visible),a:focus:not(:focus-visible){outline:none}.compact-select{min-width:0}.settings-secondary .settings-card,.settings-card.security-settings{display:block}.metric-card{color:inherit;text-decoration:none}.students-table .table-row{grid-template-columns:minmax(170px,1.4fr) minmax(140px,1fr) minmax(120px,.8fr) minmax(90px,.65fr) 44px}@media(max-width:800px){.content-page,.wide-page{width:calc(100% - 32px)}.compact-toolbar{align-items:stretch}.modal-layer{padding:12px}.modal-card{padding:20px;max-height:calc(100dvh - 24px)}}.action-popover{max-height:calc(100dvh - 24px);overflow:auto}admin-student-group-picker .text-menu-trigger{padding:0 10px;white-space:normal;text-align:left;line-height:1.5}.student-picker label{display:flex;align-items:center;gap:8px;min-height:32px}.student-picker input[type=checkbox]{width:18px;height:18px;flex:none}.inline-link{border:0;padding:0;background:transparent;font-size:13px;text-align:left;text-decoration:underline;text-decoration-color:var(--border);text-underline-offset:3px}.inline-link:hover:not(:disabled){text-decoration-color:currentColor}.inline-link:disabled{cursor:default;opacity:.65}.action-popover{position:fixed;inset:auto;width:232px;margin:0;padding:6px;border:1px solid var(--border);border-radius:12px;background:var(--paper);color:var(--ink);box-shadow:var(--shadow-soft)}.action-popover:popover-open{display:grid;gap:2px}.action-popover button{width:100%;min-height:38px;padding:8px 10px;border:0;border-radius:8px;background:transparent;color:inherit;font-size:13px;text-align:left}.action-popover button:hover,.action-popover button:focus-visible{background:var(--surface-blue)}.action-popover .danger-text{color:var(--tone-danger, #a34f44)}.button-danger{border-color:var(--danger-border, #dca39b);background:var(--danger-bg, #fff4f1);color:var(--tone-danger, #9b4439)}.button-danger:hover:not(:disabled){border-color:var(--danger-border, #c46a5e);background:var(--danger-hover-bg, #fde4de)}.confirmation-modal p{margin:0 0 16px;color:var(--muted);line-height:1.55}.danger-kicker{color:var(--tone-danger, #a34f44)}.student-summary{display:block}.student-summary .button-group{flex-wrap:wrap}@media(max-width:800px){.students-table{min-width:0}.students-table .table-head{display:none}.students-table .student-row{grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"person person" "group actions" "balance status";gap:12px;padding:18px 16px}.student-row>.person-cell{grid-area:person;min-width:0}.student-row>.person-cell>span:last-child{min-width:0;overflow-wrap:anywhere}.student-row>span:nth-child(2){grid-area:group;min-width:0}.student-row>span:nth-child(3){grid-area:balance}.student-row>span:nth-child(4){grid-area:status;justify-self:end}.student-row>span:nth-child(5){grid-area:actions;justify-self:end}}.operational-table a{color:var(--ink);font-weight:600;text-decoration-color:var(--border);text-underline-offset:3px}.operational-table a:hover{text-decoration-color:currentColor}.balance-value,.metric-card strong,.entity-stats dd{font-variant-numeric:tabular-nums}.report-builder .form-grid>button{justify-self:start}@media(max-width:560px){.field input,.field select,.field textarea,.search-field input,.compact-select select{font-size:16px}.report-builder .form-grid>button{width:100%}}.status-error{background:var(--coral-soft);color:var(--tone-danger, #82443b)}.payment-date,.payment-amount{white-space:nowrap;font-variant-numeric:tabular-nums}.payment-amount{font-weight:650}@media(max-width:640px){.payment-history{display:block;min-width:0}.payment-history thead{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.payment-history tbody{display:block}.payment-history tbody tr{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.7fr);grid-template-areas:"person amount" "package method" "date status";gap:10px 12px;padding:16px;border-bottom:1px solid var(--border)}.payment-history td{padding:0;border:0;min-width:0}.payment-history .payment-person{grid-area:person}.payment-history .payment-amount{grid-area:amount;text-align:right}.payment-history .payment-package{grid-area:package}.payment-history .payment-method{grid-area:method;text-align:right}.payment-history .payment-date{grid-area:date;align-self:center;color:var(--muted);font-size:11px}.payment-history .payment-status{grid-area:status;justify-self:end}.payment-history td[colspan]{grid-column:1/-1}}.metric-card strong{line-height:1.1}@media(max-width:600px){.metric-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.metric-card{min-height:110px}.metric-card .metric-mascot{display:none}}.group-details-grid{align-items:start}.simple-list-row strong{font-size:13px}.modal-card .modal-actions{position:sticky;bottom:-24px;z-index:2;padding:14px 0;border-top:1px solid var(--border-soft);background:var(--paper)}@media(max-width:800px){.modal-card .modal-actions{bottom:-20px}}.application-person>div{min-width:0;overflow-wrap:anywhere}.application-person .status-pill{white-space:normal;padding-block:4px;line-height:1.4}.balance-history-list{max-height:360px;margin-top:12px;overflow-y:auto;overscroll-behavior:contain;scrollbar-gutter:stable}.balance-history-list:focus-visible{outline:3px solid var(--focus-ring, rgba(77, 148, 181, .35));outline-offset:3px}.compact-list-row{color:var(--ink);text-decoration:none}a.compact-list-row:hover{color:var(--tone-info, #326b84);background:var(--surface-blue)}.table-card>.section-heading-row{padding:18px 20px;margin:0;border-bottom:1px solid var(--border-soft)}.table-card>.section-heading-row .back-link{margin-bottom:0}@media(max-width:640px){.student-payment-history tbody tr{grid-template-areas:"package amount" "date status"}}.group-schedule-toolbar{flex-wrap:wrap;justify-content:flex-start;gap:10px}.group-schedule-toolbar>span{padding:7px 9px;border-radius:8px;background:var(--control);font-size:12px;white-space:nowrap}.group-schedule-toolbar .back-link{margin:0;min-height:36px;align-items:center;font-size:12px}.lesson-list-row .row-arrow{font-size:12px;font-weight:600}@media(max-width:800px){.group-schedule-toolbar{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.group-schedule-toolbar>strong{grid-column:1/-1}}@media(max-width:560px){.simple-list-row:has(>.balance-value){display:grid;grid-template-columns:auto minmax(0,1fr);gap:4px 11px}.simple-list-row>.small-avatar{grid-row:1/3}.simple-list-row>.balance-value{grid-column:2}}button.pointer-restored-focus:focus,a.pointer-restored-focus:focus{outline:none}.time-slot:focus-visible{outline-offset:-3px}button.compact-menu-trigger{width:40px;height:40px;min-width:40px;min-height:40px;padding:0;flex:0 0 40px;font-size:20px;font-weight:600}.payment-picker-dialog{width:min(100%,540px)}.payment-picker-dialog .modal-heading{margin-bottom:8px;align-items:center}.payment-picker-dialog .modal-heading h2{font-size:22px}.payment-picker-help{margin:0 0 18px;color:var(--muted);font-size:13px}.payment-picker-search{margin-bottom:10px}.payment-picker-count{margin:0 0 8px;color:var(--muted);font-size:12px}.payment-student-picker{gap:6px;padding:3px;max-height:min(360px,45dvh)}.payment-candidate{display:grid;grid-template-columns:minmax(0,1fr) auto 16px;align-items:center;gap:12px;width:100%;min-height:58px;padding:10px 12px;border:1px solid var(--border-soft);border-radius:11px;background:var(--paper);color:var(--ink);text-align:left}.payment-candidate:hover{background:var(--surface-blue);border-color:var(--blue)}.payment-candidate-copy{min-width:0;overflow-wrap:anywhere}.payment-candidate-copy strong{display:block;font-size:14px;font-weight:650}.payment-candidate-copy small{display:block;margin-top:2px;color:var(--muted);font-size:12px}.payment-candidate-balance{font-size:12px;color:var(--muted);text-align:right}.payment-picker-empty{margin:0;padding:16px 8px;color:var(--muted);font-size:13px}@media(max-width:560px){.payment-candidate{grid-template-columns:minmax(0,1fr) 16px;gap:4px 10px}.payment-candidate-balance{grid-row:2;text-align:left}.payment-candidate>span:last-child{grid-column:2;grid-row:1/3}}.content-page,.wide-page{width:min(100% - 48px,1440px);padding:32px 0 36px}.content-heading{margin-bottom:26px}.content-heading h1{font-size:clamp(30px,3vw,40px);font-weight:750}.content-heading p{margin-top:10px;font-size:15px;line-height:1.5}.section-kicker{color:var(--muted);letter-spacing:.1em}.button{gap:8px;border-radius:13px}.button-primary{background:var(--sidebar-primary-bg);border-color:var(--sidebar-primary-border);color:#fff;box-shadow:0 8px 22px var(--sidebar-primary-shadow)}.content-heading>.button-primary{min-height:48px;padding-inline:20px;font-size:14px}.button admin-icon{width:18px;height:18px}.button-ghost:hover:not(:disabled),.icon-button:hover:not(:disabled){background:var(--surface-blue);border-color:var(--sidebar-accent)}.icon-button{color:var(--tone-info)}.toolbar-card,.table-card,.entity-card,.package-card,.settings-card,.report-builder,.report-help{border-color:var(--border);border-radius:22px;background:var(--panel-bg);box-shadow:var(--shadow-soft)}.toolbar-card{padding:18px 20px;margin-bottom:20px}input::placeholder,textarea::placeholder{color:var(--muted);opacity:.9}.search-field input,.field input,.field select,.field textarea,.compact-select select{border-radius:12px}.search-field span,.compact-select span,.field span{color:var(--ink)}.search-with-icon{position:relative}.search-with-icon input{padding-left:40px}.search-with-icon:after{content:"";position:absolute;bottom:12px;left:13px;width:19px;height:19px;background:var(--tone-info);-webkit-mask:url(/assets/icons/search-outline.svg) center/contain no-repeat;mask:url(/assets/icons/search-outline.svg) center/contain no-repeat;pointer-events:none}.table-row{min-height:80px;padding:14px 22px;gap:16px}.table-row:last-child{border-bottom:0}.table-head{min-height:50px;padding-block:12px;background:var(--surface)}.student-row:hover{background:var(--row-hover)}.small-avatar{width:44px;height:44px;border-radius:14px;font-size:13px;background:var(--blue)}.person-cell{gap:14px}.person-cell strong{font-size:15px;font-weight:650}.person-cell small{font-size:13px}.students-page .compact-toolbar{display:grid;grid-template-columns:minmax(220px,1.6fr) minmax(150px,.8fr) auto;gap:24px}.students-page .search-field{width:100%;max-width:440px}.students-page .compact-select{width:min(100%,220px)}.students-page .result-count{padding-bottom:12px;white-space:nowrap;font-size:12px}.students-table .table-row{grid-template-columns:minmax(170px,1.35fr) minmax(145px,1fr) minmax(150px,.9fr) minmax(100px,.75fr) 40px}.students-table .balance-value{display:inline-flex;align-items:center;min-height:34px;padding:5px 10px;border:1px solid transparent;border-radius:10px;background:var(--green);color:var(--tone-success);font-size:13px;text-decoration:none;line-height:1.5}.students-table .balance-debt{background:var(--danger-bg);color:var(--tone-danger);border-color:var(--danger-border)}.students-table .balance-low{background:var(--yellow-soft);color:var(--tone-warning)}.students-table .balance-value:hover:not(:disabled){box-shadow:0 0 0 2px var(--border)}.students-table admin-student-group-picker .text-menu-trigger{background:var(--control);color:var(--ink);border:1px solid var(--border-soft);border-radius:11px;font-weight:500;min-height:34px}.status-pill{min-height:28px;gap:7px;padding:4px 10px;font-weight:600}.status-active:before{content:"";width:7px;height:7px;border-radius:50%;background:var(--tone-success);flex:none}.students-table .status-pill{border-radius:11px;font-size:12px}.students-table admin-action-menu .icon-button:not(.text-menu-trigger){color:var(--sidebar-accent)}.operational-table th{background:var(--surface)}.section-tabs [aria-current=page]{color:var(--tone-info);border-color:var(--sidebar-accent);font-weight:650}.filter-pills button.is-selected{border-color:var(--sidebar-accent)}.calendar-toolbar{margin-bottom:18px}.calendar-toolbar .button-group{gap:10px}.calendar-toolbar>span{font-size:12px;font-weight:500}.time-grid-scroll{border-radius:22px;border-color:var(--border);background:var(--panel-bg);box-shadow:var(--shadow-soft)}.time-grid header{height:64px;gap:5px;font-size:12px}.time-grid header strong{color:var(--ink)}.time-grid header>span{color:var(--muted)}.time-grid header button{display:inline-flex;align-items:center;justify-content:center;flex:none;width:30px;height:30px;min-width:30px;min-height:30px;padding:0;margin-left:4px;border:1px solid var(--border);border-radius:50%;background:var(--paper);color:var(--sidebar-accent);box-shadow:0 3px 8px var(--sidebar-primary-shadow);font-size:19px}.time-grid header button:hover{background:var(--surface-blue)}.time-axis>time{color:var(--muted)}.time-slot{border-bottom-style:dashed;border-bottom-color:var(--border)}.calendar-event{border-radius:11px;box-shadow:0 5px 14px var(--sidebar-primary-shadow)}.calendar-event.event-blue{border-left-color:var(--sidebar-accent)}.calendar-event.event-yellow{border-left-color:#efb829}.calendar-event.event-green{border-left-color:var(--tone-success)}.timed-event{padding:6px;gap:2px}.timed-event time{font-size:11px}.timed-event strong{font-size:13px}.timed-event small{overflow:hidden;max-width:100%;white-space:nowrap;text-overflow:ellipsis;line-height:1.2}.timed-event.is-short{padding:2px 5px;gap:1px}.modal-layer,.drawer-backdrop{background:#0e1f3c61}.modal-card{border-radius:22px;box-shadow:0 24px 80px #0e285238}.action-popover{box-shadow:0 12px 32px #0e285229}.group-hero{border-color:var(--border);background:var(--surface-blue)}.report-builder-icon{background:var(--surface-blue);color:var(--tone-info)}@media(max-width:1100px){.students-table{min-width:800px}}@media(max-width:800px){.students-table{min-width:0}.students-table .student-row{grid-template-columns:minmax(0,1fr) auto;gap:12px}.students-page .compact-toolbar{grid-template-columns:minmax(0,1fr) auto;gap:14px}.students-page .search-field{grid-column:1/-1;max-width:none}.students-page .compact-select{width:100%}.students-page .result-count{padding-bottom:12px}}@media(max-width:640px){.content-page,.wide-page{width:calc(100% - 32px);padding:24px 0 28px}.content-heading{gap:16px;margin-bottom:22px}.content-heading h1{font-size:30px}.content-heading p{font-size:14px}.content-heading>.button-primary{min-height:44px;padding-inline:14px;font-size:13px}.toolbar-card{padding:16px;border-radius:18px}.table-row{padding-inline:16px}.students-table .status-pill,.students-table .balance-value{font-size:11px;padding-inline:8px}.calendar-toolbar{align-items:flex-start;gap:12px;flex-wrap:wrap}.calendar-toolbar>span{width:100%}}.dashboard-page .has-empty-schedule .panel-heading{border-bottom:0}.dashboard-page .lesson-empty{display:grid;justify-items:center;gap:14px;min-height:120px;padding:20px 12px;border:1px dashed var(--dashboard-border);border-radius:14px}.dashboard-page .lesson-empty-message{display:flex;align-items:center;gap:18px;font-size:13px}.dashboard-page .lesson-empty-message>admin-icon{width:32px;height:32px;color:var(--dashboard-muted)}.dashboard-page .lesson-empty-message strong{font-weight:550;line-height:1.5}.dashboard-page .lesson-empty-message p{margin:3px 0 0;color:var(--dashboard-muted)}.dashboard-page .lesson-empty-action{display:inline-flex;align-items:center;gap:8px;padding:9px 14px;border:1px solid var(--dashboard-border);border-radius:11px;background:var(--dashboard-blue);color:var(--dashboard-info);font-size:12px;font-weight:600;text-decoration:none}.dashboard-page .lesson-empty-action admin-icon{width:18px;height:18px}.dashboard-page .lesson-empty-action:hover{border-color:var(--sidebar-accent)}
