:root{--ink:#132443;--ink-2:#24354f;--bronze:#b28247;--bronze-deep:#7b512d;--blue:#1063a6;--paper:#f3f4f1;--surface:#fff;--cool:#e9ece8;--line:#d6dcd7;--muted:#667085;--success:#16735a;--success-bg:#dff1e9;--warning:#9a5c08;--warning-bg:#fff0cf;--danger:#a43d3d;--danger-bg:#fde7e4;--radius:14px;--shadow:0 12px 34px #13244314;--font:"Noto Sans TC", "Microsoft JhengHei", "PingFang TC", system-ui, sans-serif;--type-body:16px;--type-control:14px;--type-meta:13px}*{box-sizing:border-box}::selection{color:#fff;background:var(--bronze-deep)}*{scrollbar-width:thin;scrollbar-color:#9aa6a0 transparent}html{background:var(--paper);scroll-behavior:smooth;min-height:100%}body{min-height:100vh;color:var(--ink);background:var(--paper);font-family:var(--font);font-size:var(--type-body);-webkit-font-smoothing:antialiased;margin:0;line-height:1.6}button,input,select,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}a{color:inherit;text-decoration:none}button{color:inherit}button:disabled{cursor:not-allowed;opacity:.5}:focus-visible{outline:3px solid color-mix(in srgb, var(--blue) 75%, white);outline-offset:3px}.skip-link{z-index:500;color:#fff;background:var(--ink);border-radius:9px;align-items:center;min-height:44px;padding:10px 14px;font-weight:900;transition:transform .15s;display:inline-flex;position:fixed;top:12px;left:12px;transform:translateY(calc(-100% - 24px));box-shadow:0 10px 26px #1324433d}.skip-link:focus{transform:none}.offline-banner{z-index:200;color:#fff;background:var(--warning);text-align:center;padding:9px 16px;font-size:13px;font-weight:800;position:fixed;inset:0 0 auto}.eyebrow{color:var(--bronze);letter-spacing:.16em;margin:0;font-size:13px;font-weight:900}.auth-page{grid-template-columns:minmax(380px,.9fr) minmax(520px,1.1fr);min-height:100vh;display:grid}.auth-brand{color:#fff;background:var(--ink);place-items:center;padding:64px;display:grid;position:relative;overflow:hidden}.auth-brand:before{content:"";border:1px solid #b2824747;border-radius:50%;width:540px;height:540px;position:absolute;top:-180px;right:-260px;box-shadow:0 0 0 70px #b282470a,0 0 0 140px #b2824708}.auth-brand:after{content:"";background:#b2824773;height:1px;position:absolute;inset:auto 0 0}.auth-brand-inner{z-index:1;width:min(520px,100%);position:relative}.auth-brand-inner>img{border-radius:50%;box-shadow:0 12px 30px #0000003d}.auth-brand .eyebrow{margin-top:26px}.auth-brand h1{letter-spacing:-.05em;max-width:500px;margin:24px 0 20px;font-size:clamp(42px,5vw,68px);line-height:1.12}.auth-brand-inner>p:last-of-type{color:#d7dfeb;max-width:460px;margin:0;font-size:16px;line-height:1.8}.security-note{border-top:1px solid #ffffff26;align-items:center;gap:14px;margin-top:64px;padding-top:24px;display:flex}.security-note svg{color:#e4b773;width:28px;height:28px}.security-note strong,.security-note small{display:block}.security-note small{color:#9fb0c7;margin-top:4px}.auth-panel{background:linear-gradient(135deg,#f8f8f5 0%,#ecefeb 100%);place-items:center;padding:48px;display:grid}.auth-card{background:#fff;border-radius:20px;width:min(480px,100%);padding:38px;box-shadow:0 26px 70px #13244321}.auth-heading{justify-content:space-between;align-items:center;gap:16px;margin-bottom:28px;display:flex}.auth-heading p{color:var(--muted);margin:0;font-size:13px;font-weight:800}.brand-mini{font-family:var(--font);align-items:center;gap:10px;font-weight:800;display:inline-flex}.brand-mini img{border-radius:50%}.segmented{background:#e9eeeb;border-radius:11px;grid-template-columns:1fr 1fr;padding:4px;display:grid}.segmented button{color:#4b586b;cursor:pointer;background:0 0;border:0;border-radius:8px;min-height:44px;font-weight:800}.segmented button.active{color:#fff;background:var(--ink);box-shadow:0 5px 14px #13244333}.auth-form{margin-top:28px;display:grid}.auth-form h2{letter-spacing:-.03em;margin:0;font-size:28px}.auth-form>div>p{color:var(--muted);margin:8px 0 20px;line-height:1.6}.auth-form label{color:#445166;margin:14px 0 7px;font-size:13px;font-weight:900}.auth-form input,.branch-control select{width:100%;min-height:48px;color:var(--ink);background:#fff;border:1px solid #bfc8c1;border-radius:10px;padding:11px 13px}.auth-form input:focus{border-color:var(--blue);outline:0;box-shadow:0 0 0 3px #1063a61a}.password-field{position:relative}.password-field input{padding-right:50px}.password-field button{cursor:pointer;background:0 0;border:0;width:40px;position:absolute;inset:5px 5px 5px auto}.password-field svg{width:19px}.primary-button,.secondary-button{cursor:pointer;border:1px solid #0000;border-radius:10px;justify-content:center;align-items:center;gap:8px;min-height:44px;padding:10px 16px;font-weight:900;display:inline-flex}.primary-button{color:#fff;background:var(--ink);margin-top:22px}.primary-button:hover{background:var(--ink-2)}.primary-button svg,.secondary-button svg{width:18px}.secondary-button{color:var(--ink);background:#fff;border-color:#b9c3c8}.secondary-button:hover{background:#eef1ef}.link-button{color:var(--blue);cursor:pointer;background:0 0;border:0;margin-top:16px;font-size:13px;font-weight:800}.form-message{background:var(--danger-bg);border-radius:9px;padding:11px 13px;font-size:13px;font-weight:800;color:var(--danger)!important;margin:14px 0 0!important}.form-actions{align-items:stretch;gap:10px;display:flex}.form-actions .primary-button{flex:1}.form-actions .secondary-button{margin-top:22px}.step-label{color:var(--bronze-deep);letter-spacing:.08em;margin-bottom:9px;font-size:13px;font-weight:900;display:inline-block}.support-copy{border-top:1px solid var(--line);color:var(--muted);text-align:center;margin:28px 0 0;padding-top:20px;font-size:13px}.setup-page{background:var(--ink);place-items:center;min-height:100vh;padding:28px;display:grid}.setup-card{background:#fff;border-radius:18px;width:min(520px,100%);padding:40px;box-shadow:0 26px 70px #0000004d}.setup-card>img{border-radius:50%}.setup-card h1{margin:14px 0 10px}.field-help{color:var(--muted);margin:7px 0 0;font-size:13px}.success-box{color:var(--success);background:var(--success-bg);border-radius:12px;margin-top:28px;padding:22px}.success-box strong{font-size:20px}.success-box .primary-button{width:100%}.operations-app{grid-template-columns:250px minmax(0,1fr);min-height:100vh;display:grid}.app-sidebar{color:#fff;background:var(--ink);z-index:60;flex-direction:column;height:100vh;padding:24px 18px 18px;display:flex;position:sticky;top:0}.sidebar-brand{border-bottom:1px solid #ffffff24;align-items:center;gap:12px;padding:0 8px 22px;display:flex}.sidebar-brand img{border-radius:50%}.sidebar-brand strong,.sidebar-brand small{display:block}.sidebar-brand strong{font-family:var(--font);font-size:16px}.sidebar-brand small{color:#9fb0c7;letter-spacing:.12em;margin-top:4px;font-size:13px}.sidebar-nav{gap:5px;margin-top:24px;display:grid}.sidebar-nav button{color:#c4cfde;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:10px;align-items:center;gap:12px;min-height:46px;padding:10px 12px;font-weight:800;display:flex}.sidebar-nav button:hover,.sidebar-nav button.active{color:#fff;background:#293d5d}.sidebar-nav svg{width:20px}.sidebar-nav b{color:#34210c;background:#d7a45a;border-radius:50%;place-items:center;min-width:22px;height:22px;margin-left:auto;font-size:13px;display:grid}.sidebar-foot{border-top:1px solid #ffffff24;grid-template-columns:auto 1fr auto;align-items:center;gap:10px;margin-top:auto;padding:18px 8px 2px;display:grid}.user-avatar{color:#281c10;background:#e4b773;border-radius:50%;place-items:center;width:36px;height:36px;font-weight:900;display:grid}.sidebar-foot strong,.sidebar-foot small{display:block}.sidebar-foot small{color:#9fb0c7;margin-top:3px;font-size:13px}.sidebar-foot button,.mobile-close{color:#c4cfde;cursor:pointer;background:0 0;border:0;border-radius:9px;place-items:center;width:38px;height:38px;display:grid}.sidebar-foot svg{width:18px}.mobile-close,.sidebar-scrim{display:none}.app-workspace{min-width:0}.workspace-header{z-index:40;border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#f8f9f6f0;align-items:center;gap:16px;min-height:104px;padding:20px clamp(20px,3vw,44px);display:flex;position:sticky;top:0}.workspace-header:after{content:"";background:var(--bronze);width:64px;height:3px;position:absolute;bottom:0;left:clamp(20px,3vw,44px)}.workspace-header p{color:var(--muted);margin:0 0 5px;font-size:13px;font-weight:800}.workspace-header h1{letter-spacing:-.035em;margin:0;font-size:30px}.header-actions{align-items:center;gap:12px;margin-left:auto;display:flex}.header-feedback{max-width:280px;color:var(--danger);font-size:13px;font-weight:800;line-height:1.35}.branch-control{color:var(--muted);align-items:center;gap:9px;font-size:13px;font-weight:800;display:flex}.branch-control select{min-width:140px;min-height:40px;padding:7px 10px}.header-logout,.menu-button{cursor:pointer;background:#fff;border:1px solid #bdc6c0;border-radius:10px;align-items:center;gap:7px;min-height:40px;padding:8px 12px;font-weight:800;display:inline-flex}.header-logout svg,.menu-button svg{width:18px}.menu-button{display:none}.notification-button{width:42px;height:42px;color:var(--ink);cursor:pointer;background:#fff;border:1px solid #bdc6c0;border-radius:11px;place-items:center;display:grid;position:relative}.notification-button svg{width:19px}.notification-button b{color:#fff;background:#a73c35;border:2px solid #f8f9f6;border-radius:999px;place-items:center;min-width:20px;height:20px;padding:0 5px;font-size:13px;display:grid;position:absolute;top:-6px;right:-6px}.workspace-main{max-width:1500px;margin:0 auto;padding:30px clamp(20px,3vw,44px) 76px}.metric-rail{border-radius:var(--radius);color:#fff;background:var(--ink);grid-template-columns:repeat(4,1fr);display:grid;overflow:hidden}.metric-rail article{border-right:1px solid #ffffff24;min-height:126px;padding:22px 20px}.metric-rail article:last-child{border-right:0}.metric-rail span,.metric-rail small{color:#c6d3e4;font-size:13px;display:block}.metric-rail strong{letter-spacing:-.03em;margin:13px 0 7px;font-size:26px;display:block}.today-attendance-rail{border:1px solid var(--line);background:#fff;border-radius:13px;grid-template-columns:repeat(4,1fr);margin-top:14px;display:grid;box-shadow:0 6px 18px #10233f09}.today-attendance-rail>div{border-right:1px solid var(--line);min-height:92px;padding:17px 20px}.today-attendance-rail>div:last-child{border-right:0}.today-attendance-rail span,.today-attendance-rail small{color:var(--muted);font-size:13px;display:block}.today-attendance-rail strong{color:var(--ink);letter-spacing:-.03em;margin:7px 0 5px;font-size:22px;display:block}.operations-grid{grid-template-columns:1.2fr .8fr;gap:24px;margin-top:26px;display:grid}.panel{border-radius:var(--radius);box-shadow:var(--shadow);background:#fff;overflow:hidden}.panel-head{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:16px;min-height:80px;padding:18px 20px;display:flex}.panel-head h2{margin:0;font-size:18px}.panel-head p{color:var(--muted);margin:5px 0 0;font-size:13px}.ledger-row{border-top:1px solid var(--line);grid-template-columns:auto minmax(0,1fr) auto auto;align-items:center;gap:14px;min-height:84px;padding:15px 20px;display:grid}.ledger-row:first-of-type{border-top:0}.ledger-row strong,.ledger-row small{display:block}.ledger-row small{color:var(--muted);margin-top:5px;font-size:13px;line-height:1.5}.ledger-row time{color:var(--muted);font-size:13px}.row-icon{width:38px;height:38px;color:var(--blue);background:#e3eef8;border-radius:10px;place-items:center;display:grid}.row-icon.danger{color:var(--danger);background:var(--danger-bg)}.row-icon svg{width:18px}.ledger-row .secondary-button{min-height:36px;padding:7px 10px;font-size:13px}.status{white-space:nowrap;border-radius:7px;align-items:center;gap:6px;min-height:25px;padding:4px 8px;font-size:13px;font-weight:900;display:inline-flex}.status:before{content:"";background:currentColor;border-radius:50%;width:6px;height:6px}.status.success{color:var(--success);background:var(--success-bg)}.status.warning,.status.pending{color:var(--warning);background:var(--warning-bg)}.status.danger{color:var(--danger);background:var(--danger-bg)}.empty-inline{text-align:center;padding:38px 22px}.empty-inline strong{font-size:15px;display:block}.empty-inline p{max-width:48ch;color:var(--muted);margin:8px auto 0;font-size:13px;line-height:1.6}.empty-section{border-radius:var(--radius);text-align:center;background:#ffffff7a;border:1px dashed #bdc7bf;place-content:center;justify-items:center;min-height:360px;margin-top:24px;padding:32px;display:grid}.empty-section span{width:56px;height:56px;color:var(--blue);background:#e3eef8;border-radius:15px;place-items:center;display:grid}.empty-section h2{margin:20px 0 7px}.empty-section p{color:var(--muted);margin:0}.course-list{display:grid}.course-row{border-top:1px solid var(--line);grid-template-columns:145px minmax(0,1fr) auto;align-items:center;gap:16px;min-height:80px;padding:15px 20px;display:grid}.course-row:first-child{border-top:0}.course-row time{color:var(--bronze-deep);font-size:13px;font-weight:900}.course-row strong,.course-row small{display:block}.course-row small{color:var(--muted);margin-top:5px;font-size:13px}.page-intro{border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);background:#fff;margin-bottom:22px;padding:26px 28px}.page-intro h2{margin:9px 0 7px;font-size:26px}.page-intro>p{max-width:70ch;color:var(--muted);margin:0;line-height:1.7}.calendar-shell{border-radius:var(--radius);box-shadow:var(--shadow);background:#fff;overflow:clip}.calendar-heading{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:24px;min-height:108px;padding:24px 28px;display:flex}.calendar-heading h2{letter-spacing:-.025em;margin:0;font-size:25px}.calendar-heading p{max-width:72ch;color:var(--muted);margin:7px 0 0;font-size:13px;line-height:1.65}.week-switcher{background:#edf0ed;border-radius:12px;flex:none;align-items:center;gap:5px;padding:4px;display:flex}.week-switcher button{cursor:pointer;background:0 0;border:0;border-radius:9px;place-items:center;min-width:42px;height:40px;display:grid}.week-switcher button:hover{background:#fff}.week-switcher button:active{transform:translateY(1px)}.week-switcher svg{width:18px}.week-switcher .today-button{color:#fff;background:var(--ink);width:auto;padding:0 14px;font-size:13px;font-weight:900}.week-switcher .today-button:hover{background:var(--ink-2)}.calendar-context{color:#fff;background:var(--ink);justify-content:flex-end;align-items:center;min-height:52px;padding:10px 28px;display:flex}.calendar-facts{align-items:center;display:flex}.calendar-facts span{color:#c6d3e4;border-left:1px solid #ffffff2e;padding:2px 15px;font-size:13px}.calendar-facts span:first-child{border-left:0}.calendar-facts strong{color:#fff;font-size:14px}.calendar-filters{z-index:12;border-bottom:1px solid var(--line);background:#f7f8f5;grid-template-columns:repeat(3,minmax(180px,1fr));gap:14px;padding:18px 28px;display:grid;position:sticky;top:104px;box-shadow:0 6px 14px #0000000d}.calendar-filters label,.booking-selection-controls label,.booking-time-controls label{color:#46546a;gap:7px;font-size:13px;font-weight:900;display:grid}.calendar-filters select,.booking-selection-controls select,.booking-time-controls input{width:100%;min-height:44px;color:var(--ink);background:#fff;border:1px solid #bdc6c0;border-radius:10px;padding:9px 12px}.operations-calendar-filters{grid-template-columns:repeat(4,minmax(130px,1fr)) auto;align-items:end}.calendar-filter-reset{min-width:76px;min-height:44px;color:var(--ink);cursor:pointer;background:#fff;border:1px solid #bdc6c0;border-radius:10px;justify-content:center;align-items:center;gap:6px;padding:8px 12px;font-size:13px;font-weight:900;display:inline-flex}.calendar-filter-reset:disabled{opacity:.42;cursor:not-allowed}.calendar-filter-reset svg{width:16px}.operations-course-detail{border-top:1px solid var(--line);background:#f7f8f5;grid-template-columns:minmax(220px,.8fr) minmax(0,1.2fr);gap:24px;padding:22px 28px;display:grid}.operations-course-detail-head{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.operations-course-detail-head span{color:#81500d;background:#ffe9bc;border-radius:999px;margin-bottom:8px;padding:4px 8px;font-size:13px;font-weight:900;display:inline-flex}.operations-course-detail-head h3{margin:0;font-size:20px}.operations-course-detail-head p{color:var(--muted);margin:6px 0 0;font-size:13px}.operations-course-detail-head button{border:1px solid var(--line);cursor:pointer;background:#fff;border-radius:10px;flex:none;place-items:center;width:44px;height:44px;display:grid}.operations-course-detail-head button svg{width:18px}.operations-course-detail dl{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:0;display:grid}.operations-course-detail dl div{border:1px solid var(--line);background:#fff;border-radius:10px;padding:12px 14px}.operations-course-detail dt{color:var(--muted);font-size:13px;font-weight:900}.operations-course-detail dd{margin:5px 0 0;font-size:13px;font-weight:900}.operations-course-detail>small{color:var(--muted);grid-column:1/-1;font-size:13px}.calendar-desktop{overscroll-behavior-inline:contain;overflow-x:auto}.week-board{background:var(--line);grid-template-columns:68px repeat(7,minmax(140px,1fr));gap:1px;min-width:1080px;display:grid}.time-column,.calendar-day{background:#fff;min-width:0}.calendar-corner,.calendar-day-head{height:76px}.calendar-corner{color:var(--muted);place-items:end center;padding-bottom:13px;font-size:13px;font-weight:900;display:grid}.time-track,.calendar-day-track{background-color:#fbfcfa;background-image:repeating-linear-gradient(#0000 0 59px,#e1e6e1 60px);position:relative}.time-track time{color:#778195;font-variant-numeric:tabular-nums;font-size:13px;position:absolute;right:9px;transform:translateY(-50%)}.calendar-day-head{cursor:pointer;background:#fff;border:0;flex-direction:column;justify-content:center;align-items:center;gap:3px;width:100%;padding:8px;display:flex}.calendar-day-head:hover{background:#f4f6f3}.calendar-day-head[aria-pressed=true]{color:var(--ink);background:#eef2ef}.calendar-day-head span{color:var(--muted);font-size:13px;font-weight:900}.calendar-day-head strong{font-size:14px}.calendar-day-head small{margin-top:3px;font-size:13px;font-weight:900}.calendar-day-head .needs-duty{color:var(--warning)}.calendar-day-head .no-duty{color:#7a877e}.calendar-day.is-today .calendar-day-head strong{color:#fff;background:var(--bronze-deep);border-radius:7px;padding:3px 8px}.calendar-time-slot{z-index:1;cursor:crosshair;background:0 0;border:0;border-radius:0;position:absolute;left:0;right:0}.calendar-time-slot:not(:disabled):hover,.calendar-time-slot:focus-visible{outline-offset:-1px;background:#e4b7732e;outline:1px solid #ae743380}.calendar-time-slot:disabled{cursor:not-allowed}.calendar-event{z-index:3;text-align:left;border:0;border-radius:9px;flex-direction:column;align-items:flex-start;padding:7px 8px;display:flex;position:absolute;left:5px;right:5px;overflow:hidden}.calendar-event strong,.calendar-event span,.calendar-event small{text-overflow:ellipsis;white-space:nowrap;max-width:100%;overflow:hidden}.calendar-event strong{font-size:13px;line-height:1.25}.calendar-event span,.calendar-event small{margin-top:3px;font-size:13px;line-height:1.25}.course-event{color:#173354;background:#dce8f2;box-shadow:0 3px 10px #13244314}.course-event.pending{color:#784b08;background:var(--warning-bg)}.course-event.completed{color:#22604e;background:var(--success-bg)}.course-event.cancelled{color:#7a7773;box-shadow:none;background:#ececea;text-decoration:line-through}.course-event b{color:#6f451e;align-items:center;gap:4px;margin-top:auto;font-size:13px;display:inline-flex}.course-event b svg{width:11px;height:11px}.desired-time-event{z-index:4;pointer-events:none;color:#fff;background:var(--ink);box-shadow:0 7px 18px #1324432e}.desired-time-event.needs-match{color:#6e470f;box-shadow:none;background:#fff0cc;border:1px solid #d8a65d}.calendar-mobile{display:none}.booking-zone{border-top:1px solid var(--line);background:#f7f8f5}.booking-selection{justify-content:space-between;align-items:center;gap:24px;min-height:112px;padding:20px 28px;display:flex}.booking-selection h3,.mobile-agenda h3{margin:0;font-size:17px}.booking-selection p{max-width:64ch;color:var(--muted);margin:6px 0 0;font-size:13px;line-height:1.6}.booking-time-controls{grid-template-columns:1.15fr .85fr;gap:10px;min-width:min(360px,44%);display:grid}.teacher-match{border-top:1px solid var(--line);background:#edf6f1;justify-content:space-between;align-items:center;gap:24px;min-height:94px;padding:18px 28px;display:flex}.teacher-match.needs-match{background:#fff7e7}.match-copy strong{font-size:14px;display:block}.match-copy p{max-width:62ch;color:var(--muted);margin:5px 0 0;font-size:13px;line-height:1.55}.teacher-match>.secondary-button{flex:none}.booking-selection-controls{align-items:end;gap:10px;min-width:min(440px,48%);display:flex}.booking-selection-controls label{flex:1}.booking-selection-controls .primary-button{flex:none;margin:0}.purchase-gate{background:#fff7e7;border-top:1px solid #ead5aa;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:15px;min-height:98px;padding:18px 28px;display:grid}.purchase-gate>span{color:#81500d;background:#ffe9bc;border-radius:10px;place-items:center;width:40px;height:40px;display:grid}.purchase-gate svg{width:19px}.purchase-gate strong{font-size:14px}.purchase-gate p{color:#6f5a3f;max-width:65ch;margin:5px 0 0;font-size:13px;line-height:1.55}.purchase-gate .primary-button{margin:0}.selection-placeholder{min-width:190px;color:var(--muted);justify-content:center;align-items:center;gap:9px;padding:18px 28px;font-size:13px;font-weight:800;display:flex}.selection-placeholder svg{width:18px}.booking-message{color:var(--success);background:var(--success-bg);margin:0;padding:14px 28px;font-size:13px;font-weight:900}.booking-message.error{color:var(--danger);background:var(--danger-bg)}.teacher-profile-preview{background:#fff;border-top:1px solid #cddbd2;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:13px;min-height:92px;padding:15px 28px;display:grid}.teacher-preview-avatar{color:#fff;background:var(--bronze-deep);border-radius:11px;place-items:center;width:42px;height:42px;font-size:15px;font-weight:900;display:grid}.teacher-profile-preview strong{font-size:14px}.teacher-profile-preview p{color:#46546a;margin:4px 0 0;font-size:13px;line-height:1.5}.teacher-profile-preview small{color:var(--muted);margin-top:5px;font-size:13px;line-height:1.5;display:block}.batch-booking{border-top:1px solid var(--line);background:#fff;padding:20px 28px 24px}.batch-heading{justify-content:space-between;align-items:flex-start;gap:20px;display:flex}.batch-heading strong{font-size:15px;display:block}.batch-heading p{color:var(--muted);margin:5px 0 0;font-size:13px;line-height:1.55}.batch-heading>span{color:#5f451f;background:#f5e7ce;border-radius:999px;flex:none;padding:7px 10px;font-size:13px;font-weight:900}.batch-date-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-top:16px;display:grid}.batch-date-grid label{border:1px solid var(--line);cursor:pointer;background:#fbfcfa;border-radius:10px;align-items:center;gap:10px;min-height:68px;padding:12px;display:flex}.batch-date-grid label:has(input:checked){background:#fff8ec;border-color:#bc8944;box-shadow:0 0 0 1px #bc894424}.batch-date-grid input{accent-color:#a8712f;flex:none;width:18px;height:18px}.batch-date-grid strong,.batch-date-grid small{display:block}.batch-date-grid strong{color:var(--ink);font-size:13px}.batch-date-grid small{color:var(--muted);margin-top:3px;font-size:13px}.batch-actions{justify-content:flex-end;align-items:center;gap:10px;margin-top:16px;display:flex}.path-schedule-x{--sx-color-primary:#254d75;--sx-color-on-primary:#fff;--sx-color-primary-container:#e4edf6;--sx-color-on-primary-container:#183855;--sx-color-surface:#fff;--sx-color-surface-container:#f5f7f8;--sx-color-surface-container-high:#edf1f3;--sx-color-on-surface:#172b49;--sx-color-outline:#aeb9c0;--sx-color-outline-variant:#d9dfdc;border-top:1px solid var(--line);background:#fff}.path-schedule-x .sx-react-calendar-wrapper{width:100%;height:760px}.path-schedule-x .sx__calendar{border:0;border-radius:0;max-height:none;font-family:inherit}.path-schedule-x .sx__calendar-header{min-height:76px;padding:14px 22px}.path-schedule-x .sx__range-heading{color:var(--ink);font-size:18px;font-weight:900}.path-schedule-x .sx__button,.path-schedule-x .sx__date-input,.path-schedule-x .sx__view-selection-selected-item{min-height:40px;font-family:inherit;font-size:13px;font-weight:800}.path-schedule-x .sx__week-grid__day-name,.path-schedule-x .sx__week-grid__date-number,.path-schedule-x .sx__week-grid__hour-text{font-size:13px;font-weight:800}.path-schedule-x .sx__time-grid-event-title{font-size:13px;font-weight:900;line-height:1.25}.path-schedule-x .sx__time-grid-event-time,.path-schedule-x .sx__time-grid-event-people,.path-schedule-x .sx__time-grid-event-location{font-size:13px;line-height:1.35}.path-schedule-x-booking .sx__time-grid-day{cursor:crosshair}.path-schedule-x-booking .sx__time-grid-day:hover{background:#b47e4209}.path-schedule-x .path-custom-event{padding:0}.path-calendar-event{color:#173957;background:#dce9f6;width:100%;height:100%;padding:6px 7px;overflow:hidden}.path-calendar-event-head{align-items:center;gap:5px;min-width:0;display:flex}.path-calendar-event-head strong{min-width:0;color:inherit;text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:900;line-height:1.25;overflow:hidden}.path-calendar-event-head span{white-space:nowrap;background:#ffffff9e;border-radius:4px;flex:none;padding:1px 4px;font-size:13px;font-weight:900;line-height:1.35}.path-calendar-event time,.path-calendar-event small{color:inherit;text-overflow:ellipsis;white-space:nowrap;font-size:13px;line-height:1.35;display:block;overflow:hidden}.path-calendar-event time{font-variant-numeric:tabular-nums;margin-top:2px}.path-calendar-event small{opacity:.82}.path-calendar-event[data-tone=pending],.path-calendar-event[data-tone=selectionPending]{color:#62400f;background:#fff0c8}.path-calendar-event[data-tone=completed],.path-calendar-event[data-tone=selectionReady]{color:#174d3b;background:#dff2ea}.path-calendar-event[data-tone=cancelled]{color:#4e5459;background:#eceeef}.path-calendar-event[data-tone=open],.path-calendar-event[data-tone=leave],.path-calendar-event[data-tone=late_leave],.path-calendar-event[data-tone=selectionBlocked]{color:#6d2c27;background:#fae8e5}.path-schedule-x .sx__button.sx__chevron-wrapper{font-size:0}.mobile-day-strip{border-bottom:1px solid var(--line);grid-template-columns:repeat(7,1fr);gap:5px;padding:12px 14px;display:grid}.mobile-day-strip button{min-width:0;min-height:58px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:10px;align-content:center;place-items:center;gap:2px;padding:5px;display:grid;position:relative}.mobile-day-strip button.active{color:#fff;background:var(--ink)}.mobile-day-strip span{font-size:13px;font-weight:900}.mobile-day-strip strong{font-size:15px}.mobile-day-strip i{background:var(--bronze);border-radius:50%;width:4px;height:4px;position:absolute;bottom:5px}.mobile-day-strip button.active i{background:#f1c98d}.mobile-agenda{padding:20px 16px}.agenda-list{gap:8px;margin-top:14px;display:grid}.agenda-item{min-height:76px;color:var(--ink);text-align:left;background:#eef3f7;border:0;border-radius:11px;grid-template-columns:90px minmax(0,1fr) auto;align-items:center;gap:12px;padding:12px 13px;display:grid}.agenda-item.pending{background:var(--warning-bg)}.agenda-item.completed{background:var(--success-bg)}.agenda-item.cancelled{opacity:.68;background:#ececea}.agenda-item time{color:var(--bronze-deep);font-variant-numeric:tabular-nums;font-size:13px;font-weight:900}.agenda-item strong,.agenda-item small{display:block}.agenda-item strong{font-size:14px}.agenda-item small{color:var(--muted);margin-top:4px;font-size:13px}.agenda-item>span{font-size:13px;font-weight:900}.agenda-empty{text-align:center;min-height:230px;color:var(--muted);place-content:center;justify-items:center;display:grid}.agenda-empty svg{width:30px;color:var(--bronze-deep)}.agenda-empty strong{color:var(--ink);margin-top:12px}.agenda-empty p{max-width:34ch;margin:6px 0 0;font-size:13px;line-height:1.6}.definition-grid{border:1px solid var(--line);border-radius:var(--radius);background:var(--line);grid-template-columns:repeat(3,1fr);gap:1px;display:grid;overflow:hidden}.definition-grid article{background:#fff;min-height:170px;padding:22px}.definition-grid span{color:var(--muted);font-size:13px;font-weight:800}.definition-grid strong{margin:18px 0 8px;font-size:27px;display:block}.definition-grid p{color:var(--muted);margin:0;font-size:13px;line-height:1.6}.integration-grid{grid-template-columns:repeat(3,1fr);gap:18px;display:grid}.integration-card{border-radius:var(--radius);min-height:240px;box-shadow:var(--shadow);background:#fff;padding:24px}.integration-icon{width:46px;height:46px;color:var(--blue);background:#e3eef8;border-radius:12px;place-items:center;display:grid}.integration-card h3{margin:24px 0 9px}.integration-card p{min-height:58px;color:var(--muted);margin:0 0 22px;font-size:13px;line-height:1.6}.guardian-account-view{gap:22px;display:grid}.purchase-info{border-radius:var(--radius);background:#fff8e9;border:1px solid #e2cfa9;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:16px;min-height:110px;padding:20px 22px;display:grid}.purchase-info>span{color:#81500d;background:#ffe5b0;border-radius:11px;place-items:center;width:44px;height:44px;display:grid}.purchase-info svg{width:21px}.purchase-info strong{font-size:16px}.purchase-info p{color:#6f5a3f;max-width:78ch;margin:6px 0 0;font-size:13px;line-height:1.6}.student-account-filter{color:var(--muted);gap:6px;font-size:13px;font-weight:900;display:grid}.student-account-filter select{min-width:190px;min-height:42px;color:var(--ink);background:#fff;border:1px solid #bdc6c0;border-radius:9px;padding:8px 11px}.subject-catalog-list article{border-top:1px solid var(--line);grid-template-columns:auto minmax(0,1fr) auto auto;align-items:center;gap:14px;min-height:84px;padding:14px 20px;display:grid}.subject-catalog-list article:first-child{border-top:0}.subject-catalog-list article.selected{background:#fff8e9}.subject-catalog-list strong,.subject-catalog-list small{display:block}.subject-catalog-list small{color:var(--muted);margin-top:5px;font-size:13px;line-height:1.5}.subject-catalog-list .row-icon.owned{color:var(--success);background:var(--success-bg)}.subject-catalog-list .secondary-button{min-width:116px;font-size:13px}.renewal-billing{gap:22px;display:grid}.invoice-count{color:#754810;background:#fff0cc;border-radius:999px;padding:8px 11px;font-size:13px;font-weight:900}.renewal-list{gap:12px;padding:0 20px 20px;display:grid}.renewal-card{border:1px solid var(--line);background:#fcfdfb;border-radius:12px;overflow:hidden}.renewal-card.open{border-color:#dcc28c}.renewal-card.cancelled{opacity:.72}.renewal-title{border-bottom:1px solid var(--line);grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:13px;min-height:74px;padding:14px 16px;display:grid}.renewal-title>span{color:#704615;background:#fff0cf;border-radius:10px;place-items:center;width:40px;height:40px;display:grid}.renewal-title svg{width:20px}.renewal-title strong,.renewal-title small{display:block}.renewal-title strong{font-size:15px}.renewal-title small{color:var(--muted);margin-top:4px;font-size:13px}.renewal-title em{font-style:normal}.renewal-plan-summary{background:#fff;grid-template-columns:repeat(4,minmax(0,1fr));padding:15px 16px;display:grid}.renewal-plan-summary>div{border-left:1px solid var(--line);padding:0 14px}.renewal-plan-summary>div:first-child{border-left:0;padding-left:0}.renewal-plan-summary span,.renewal-plan-summary strong{display:block}.renewal-plan-summary span{color:var(--muted);font-size:13px;font-weight:800}.renewal-plan-summary strong{margin-top:5px;font-size:16px}.renewal-actions{border-top:1px solid var(--line);background:#f7f8f5;grid-template-columns:minmax(250px,1fr) minmax(180px,.7fr) auto;align-items:end;gap:10px;padding:15px 16px;display:grid}.renewal-actions label{color:var(--muted);gap:6px;font-size:13px;font-weight:900;display:grid}.renewal-actions select,.renewal-actions input{width:100%;min-height:44px;color:var(--ink);background:#fff;border:1px solid #bdc6c0;border-radius:9px;padding:9px 11px}.danger-text{color:var(--danger)}.payment-note{color:#6c542f;background:#fff8e9;border-top:1px solid #e9d8af;align-items:flex-start;gap:8px;margin:0;padding:13px 16px;font-size:13px;line-height:1.55;display:flex}.payment-note svg{flex:none;width:18px;margin-top:1px}.plan-reference-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;padding:0 20px 20px;display:grid}.plan-reference-grid article{border:1px solid var(--line);background:#fbfcfa;border-radius:11px;flex-direction:column;align-items:flex-start;min-height:112px;padding:16px;display:flex}.plan-reference-grid strong{font-size:14px}.plan-reference-grid span{color:var(--muted);margin-top:7px;font-size:13px;line-height:1.5}.plan-reference-grid b{margin-top:auto;padding-top:14px;font-size:18px}.payment-history-list{padding:0 20px 20px}.payment-history-list article{border-top:1px solid var(--line);grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:20px;min-height:68px;padding:12px 0;display:grid}.payment-history-list article:first-child{border-top:0}.payment-history-list strong,.payment-history-list small{display:block}.payment-history-list small{color:var(--muted);margin-top:4px;font-size:13px}.payment-history-list span{color:var(--success);font-size:13px;font-weight:900}.payment-history-list b{font-size:15px}.trial-plan-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;padding:0 20px 20px;display:grid}.trial-plan-grid>article{background:linear-gradient(145deg,#fffdf7,#f8f4ea);border:1px solid #d9c59b;border-radius:12px;gap:14px;padding:17px;display:grid}.trial-plan-title{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.trial-plan-title strong,.trial-plan-title small{display:block}.trial-plan-title strong{font-size:16px}.trial-plan-title small{color:var(--muted);margin-top:5px;font-size:13px}.trial-plan-title>span{color:#714510;background:#f6dfa9;border-radius:999px;padding:5px 9px;font-size:13px;font-weight:900}.trial-plan-grid label{color:var(--muted);gap:6px;font-size:13px;font-weight:900;display:grid}.trial-plan-grid select{width:100%;min-height:44px;color:var(--ink);background:#fff;border:1px solid #b8c2bc;border-radius:9px;padding:9px 11px}.trial-plan-grid .primary-action{justify-content:center;width:100%}.trial-rule{color:var(--muted);font-size:13px;line-height:1.55}.trial-status-list{background:#fff;border-radius:9px;gap:6px;padding:10px 12px;display:grid}.trial-status-list p{justify-content:space-between;gap:10px;margin:0;font-size:13px;display:flex}.trial-status-list span{color:#82520f;font-weight:900}.trial-records{padding:0 20px 20px}.trial-records article{border-top:1px solid var(--line);grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:18px;min-height:68px;padding:12px 0;display:grid}.trial-records article:first-child{border-top:0}.trial-records strong,.trial-records small{display:block}.trial-records small{color:var(--muted);margin-top:4px;font-size:13px}.trial-records span{color:#805013;font-size:13px;font-weight:900}.trial-teacher-preview{background:#fff;border-radius:9px;padding:12px}.trial-teacher-preview strong{font-size:13px;display:block}.trial-teacher-preview p{color:#46546a;margin:5px 0 0;font-size:13px;line-height:1.5}.trial-teacher-preview small{color:var(--muted);margin-top:5px;font-size:13px;line-height:1.45;display:block}.availability-manager{gap:18px;margin-top:24px;display:grid}.availability-manager-head{border-radius:var(--radius);color:#fff;background:var(--ink);justify-content:space-between;align-items:center;gap:20px;min-height:112px;padding:24px 28px;display:flex}.availability-manager-head h2{margin:8px 0 5px;font-size:24px}.availability-manager-head p{color:#c9d4e3;max-width:72ch;margin:0;font-size:13px;line-height:1.6}.availability-manager-head>svg{color:#efbd70;width:34px}.availability-columns{grid-template-columns:1fr 1fr;gap:20px;display:grid}.availability-card{min-width:0}.availability-card .panel-head h3{margin:0;font-size:18px}.availability-form{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;padding:0 20px 20px;display:grid}.availability-form label{color:#46546a;gap:6px;font-size:13px;font-weight:900;display:grid}.availability-form input,.availability-form select{width:100%;min-height:43px;color:var(--ink);font:inherit;background:#fff;border:1px solid #bdc6c0;border-radius:9px;padding:8px 10px}.availability-form .primary-button{grid-column:1/-1;justify-content:center;width:100%;margin:0}.availability-form .primary-button svg{width:17px}.availability-rule-list,.availability-exception-list{border-top:1px solid var(--line)}.availability-rule-list>div>strong{color:var(--bronze-deep);background:#f7f8f5;padding:10px 20px;font-size:13px;display:block}.availability-rule-list article,.availability-exception-list article{border-top:1px solid var(--line);align-items:center;gap:12px;min-height:65px;padding:11px 20px;display:flex}.availability-rule-list article:first-of-type{border-top:0}.availability-rule-list article>div,.availability-exception-list article>div{flex:1;min-width:0}.availability-rule-list b,.availability-rule-list span,.availability-exception-list strong,.availability-exception-list small{display:block}.availability-rule-list b,.availability-exception-list strong{font-size:13px}.availability-rule-list span,.availability-exception-list small{color:var(--muted);margin-top:4px;font-size:13px;line-height:1.45}.availability-rule-list .text-button,.availability-exception-list .text-button{flex:none}.availability-kind{text-align:center;border-radius:7px;min-width:58px;padding:6px 8px;font-size:13px;font-weight:900}.availability-kind.closed{color:var(--danger);background:var(--danger-bg)}.availability-kind.extra{color:var(--success);background:var(--success-bg)}.availability-feedback{color:var(--success);background:var(--success-bg);border-radius:10px;margin:0;padding:14px 18px;font-size:13px;font-weight:900}.booking-admin-workbench{gap:20px;margin-top:24px;display:grid}.booking-admin-head{border-radius:var(--radius);color:#fff;background:var(--ink);justify-content:space-between;align-items:center;gap:20px;min-height:112px;padding:24px 28px;display:flex}.booking-admin-head h2{margin:8px 0 5px;font-size:24px}.booking-admin-head p{color:#c9d4e3;max-width:75ch;margin:0;font-size:13px;line-height:1.6}.booking-admin-head>svg{color:#efbd70;width:34px}.booking-admin-workbench .panel-head h3{margin:0;font-size:18px}.booking-admin-feedback{color:var(--success);background:var(--success-bg);border-radius:10px;margin:0;padding:14px 18px;font-size:13px;font-weight:900}.booking-work-list>article{border-top:1px solid var(--line)}.booking-work-main{grid-template-columns:150px minmax(0,1fr) auto;align-items:center;gap:16px;min-height:76px;padding:13px 20px;display:grid}.booking-work-main time{color:var(--bronze-deep);font-size:13px;font-weight:900}.booking-work-main strong,.booking-work-main small{display:block}.booking-work-main strong{font-size:14px}.booking-work-main small{color:var(--muted);margin-top:5px;font-size:13px}.booking-work-main .secondary-button{margin:0}.booking-work-main .secondary-button svg{width:15px}.booking-change-editor{background:#f7f8f5;border-top:1px dashed #c8cec9;grid-template-columns:minmax(220px,.8fr) minmax(260px,1fr);gap:13px;padding:16px 20px 20px;display:grid}.change-action-tabs{grid-column:1/-1;gap:5px;display:flex}.change-action-tabs button{min-height:44px;color:var(--muted);cursor:pointer;background:#fff;border:1px solid #bdc6c0;border-radius:8px;padding:8px 13px;font-size:13px;font-weight:900}.change-action-tabs button.active{color:#fff;border-color:var(--ink);background:var(--ink)}.change-action-tabs button.active.danger{border-color:var(--danger);background:var(--danger)}.change-time-fields{grid-column:1/-1;grid-template-columns:minmax(120px,.7fr) minmax(110px,.6fr) minmax(120px,.65fr) minmax(210px,1.2fr) auto;align-items:end;gap:10px;display:grid}.change-time-fields label,.change-teacher,.change-reason{color:#46546a;gap:6px;font-size:13px;font-weight:900;display:grid}.change-time-fields input,.change-time-fields select,.change-teacher select,.change-reason textarea{width:100%;min-height:44px;color:var(--ink);font:inherit;background:#fff;border:1px solid #bdc6c0;border-radius:9px;padding:8px 10px}.change-time-fields .secondary-button{white-space:nowrap;margin:0}.change-time-fields svg{width:15px}.change-reason textarea{resize:vertical;min-height:74px}.change-submit{grid-column:1/-1;justify-content:flex-end;align-items:center;gap:9px;display:flex}.change-submit .primary-button,.change-submit .danger-button{margin:0}.danger-button{color:#fff;background:var(--danger);cursor:pointer;border:0;border-radius:9px;min-height:44px;padding:9px 16px;font-weight:900}.danger-button:disabled{opacity:.55;cursor:not-allowed}.booking-audit-list article{border-top:1px solid var(--line);grid-template-columns:70px minmax(180px,1fr) minmax(250px,1.2fr) 130px;align-items:center;gap:14px;min-height:72px;padding:12px 20px;display:grid}.booking-audit-list>article>span{color:#724511;background:#fff0cc;border-radius:7px;justify-self:start;padding:5px 8px;font-size:13px;font-weight:900}.booking-audit-list strong,.booking-audit-list small,.booking-audit-list b{display:block}.booking-audit-list strong,.booking-audit-list b{font-size:13px}.booking-audit-list small{color:var(--muted);margin-top:4px;font-size:13px}.booking-audit-list time{color:var(--muted);text-align:right;font-size:13px}.notification-head{align-items:flex-start}.notification-controls{align-items:center;gap:8px;display:flex}.notification-controls .secondary-button{align-items:center;gap:6px;display:inline-flex}.notification-controls svg{width:17px}.notification-list{padding:0 20px 20px}.notification-list article{border-top:1px solid var(--line);grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:14px;min-height:94px;padding:16px;display:grid}.notification-list article:first-child{border-top:0}.notification-list article.read{opacity:.66}.notification-list article.unread{background:#fffaf0;margin:0 -1px}.notification-list article.urgent.unread{background:#fff5f3}.notification-icon{color:#76511d;background:#fff0cf;border-radius:11px;place-items:center;width:42px;height:42px;display:grid}.notification-list .urgent .notification-icon{color:var(--danger);background:var(--danger-bg)}.notification-icon svg{width:20px}.notification-copy>div{align-items:center;gap:10px;margin-bottom:5px;display:flex}.notification-copy em{color:#664716;background:#f5e8cf;border-radius:999px;padding:3px 7px;font-size:13px;font-style:normal;font-weight:900}.notification-copy time{color:var(--muted);font-size:13px}.notification-copy strong{font-size:15px;display:block}.notification-copy p{color:#46546a;margin:5px 0 0;font-size:13px;line-height:1.55}.notification-list .text-button{align-items:center;gap:5px;display:inline-flex}.notification-list .text-button svg{width:16px}.leave-page{gap:22px;display:grid}.leave-columns{grid-template-columns:1fr 1fr;gap:22px;display:grid}.leave-form-grid{grid-template-columns:minmax(240px,1.2fr) minmax(220px,.8fr) auto;align-items:end;gap:16px;padding:20px;display:grid}.leave-form-grid label{color:#46546a;gap:7px;font-size:13px;font-weight:900;display:grid}.leave-form-grid select,.leave-form-grid input,.leave-form-grid textarea,.admin-case-list input,.admin-case-list textarea,.admin-case-list select{width:100%;min-height:44px;color:var(--ink);background:#fff;border:1px solid #bdc6c0;border-radius:10px;padding:9px 12px}.leave-form-grid textarea,.admin-case-list textarea{resize:vertical;min-height:74px}.leave-form-grid .leave-reason{grid-column:1/3}.leave-form-grid .check-field{align-self:center;align-items:center;gap:9px;min-height:44px;display:flex}.leave-form-grid .check-field input{width:18px;min-height:18px}.leave-form-grid .primary-button{margin:0}.form-feedback{color:var(--success);background:var(--success-bg);border-top:1px solid #bedccc;align-items:center;gap:8px;margin:0;padding:13px 20px;font-size:13px;font-weight:900;display:flex}.form-feedback svg{width:18px}.case-list article{border-top:1px solid var(--line);grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:13px;min-height:96px;padding:15px 20px;display:grid}.case-list article:first-child{border-top:0}.case-list strong,.case-list small{display:block}.case-list small{color:var(--muted);margin-top:4px;font-size:13px}.case-list p{color:#46546a;margin:6px 0 0;font-size:13px;line-height:1.5}.row-icon.owned{color:var(--success);background:var(--success-bg)}.admin-case-list article{border-top:1px solid var(--line);grid-template-columns:minmax(220px,1fr) minmax(220px,.8fr) auto;align-items:center;gap:14px;padding:16px 20px;display:grid}.admin-case-list article:first-child{border-top:0}.admin-case-list strong,.admin-case-list small{display:block}.admin-case-list small{color:var(--muted);margin-top:5px;font-size:13px}.admin-case-list p{margin:7px 0 0;font-size:13px}.case-actions{align-items:center;gap:8px;display:flex}.case-actions .primary-button{margin:0}.danger-button,.text-button{cursor:pointer;border-radius:9px;min-height:44px;padding:9px 13px;font-weight:900}.danger-button{color:var(--danger);background:var(--danger-bg);border:1px solid #d49b96}.text-button{color:var(--muted);background:0 0;border:0}.makeup-case-list article{grid-template-columns:minmax(180px,.7fr) minmax(270px,1fr) minmax(240px,.85fr)}.makeup-time-fields,.makeup-match-fields{align-items:end;gap:10px;display:flex}.makeup-time-fields label,.makeup-match-fields label{color:#46546a;flex:1;gap:6px;font-size:13px;font-weight:900;display:grid}.makeup-time-fields .secondary-button,.makeup-match-fields .primary-button,.makeup-match-fields .secondary-button{white-space:nowrap;flex:none;margin:0}.makeup-match-fields>p{color:var(--muted);flex:1;margin:0}.journal-page{gap:22px;display:grid}.journal-summary{border-radius:var(--radius);color:#fff;background:var(--ink);grid-template-columns:repeat(3,1fr);display:grid;overflow:hidden}.journal-summary article{border-right:1px solid #ffffff24;align-items:center;gap:14px;min-height:106px;padding:20px 22px;display:flex}.journal-summary article:last-child{border-right:0}.journal-summary svg{color:#efbd70;width:24px}.journal-summary span{color:#becbdd;font-size:13px;font-weight:900}.journal-summary strong{color:#fff;margin-top:6px;font-size:24px;display:block}.journal-layout{grid-template-columns:minmax(250px,.34fr) minmax(0,1fr);align-items:start;gap:22px;display:grid}.journal-task-list{max-height:690px;overflow:auto}.journal-task-list button{border:0;border-top:1px solid var(--line);width:100%;min-height:82px;color:var(--ink);text-align:left;cursor:pointer;background:#fff;justify-content:space-between;align-items:center;gap:12px;padding:14px 18px;display:flex}.journal-task-list button:first-child{border-top:0}.journal-task-list button:hover,.journal-task-list button.active{background:#eef3f7}.journal-task-list button.active{box-shadow:inset 3px 0 var(--blue)}.journal-task-list strong,.journal-task-list small{display:block}.journal-task-list small{color:var(--muted);margin-top:5px;font-size:13px}.journal-task-list b{color:var(--danger);flex:none;font-size:13px}.journal-form{gap:0;display:grid}.journal-form fieldset{border:0;border-top:1px solid var(--line);grid-template-columns:repeat(2,minmax(0,1fr));gap:15px;margin:0;padding:20px;display:grid}.journal-form legend{float:left;width:100%;color:var(--bronze-deep);grid-column:1/-1;margin:0 0 2px;font-size:13px;font-weight:900}.journal-form label,.progress-filters label,.review-student,.review-notes{color:#46546a;gap:7px;font-size:13px;font-weight:900;display:grid}.journal-form input,.journal-form select,.journal-form textarea,.progress-filters input,.progress-filters select,.review-student select,.review-notes textarea{width:100%;min-height:44px;color:var(--ink);font:inherit;background:#fff;border:1px solid #bdc6c0;border-radius:9px;padding:9px 12px}.journal-form textarea{resize:vertical;min-height:82px;line-height:1.55}.journal-form .span-two{grid-column:1/-1}.journal-form-actions{border-top:1px solid var(--line);background:#f7f9f7;justify-content:flex-end;align-items:center;gap:10px;min-height:72px;padding:14px 20px;display:flex}.journal-form-actions span{color:var(--success);margin-right:auto;font-size:13px;font-weight:900}.journal-form-actions button{margin:0}.journal-form-actions svg,.review-submit svg{width:17px}.journal-history-list details{border-top:1px solid var(--line)}.journal-history-list details:first-child{border-top:0}.journal-history-list summary{cursor:pointer;justify-content:space-between;align-items:center;gap:14px;min-height:78px;padding:14px 20px;list-style:none;display:flex}.journal-history-list summary::-webkit-details-marker{display:none}.journal-history-list summary strong,.journal-history-list summary small{display:block}.journal-history-list summary small{color:var(--muted);margin-top:5px;font-size:13px}.journal-detail-grid{background:var(--line);grid-template-columns:repeat(3,1fr);gap:1px;padding:1px 20px 20px;display:grid}.journal-detail-grid article{background:#f9faf8;min-height:130px;padding:15px}.journal-detail-grid span{color:var(--muted);font-size:13px;font-weight:900}.journal-detail-grid p{margin:9px 0 5px;font-size:13px;line-height:1.55}.journal-detail-grid strong{font-size:13px;line-height:1.5}.progress-filters{border-top:1px solid var(--line);background:#f7f9f7;grid-template-columns:repeat(5,1fr);gap:12px;padding:16px 20px;display:grid}.admin-progress-list article{border-top:1px solid var(--line);grid-template-columns:auto minmax(0,1fr) auto 120px;align-items:center;gap:13px;min-height:78px;padding:13px 20px;display:grid}.admin-progress-list strong,.admin-progress-list small{display:block}.admin-progress-list small{color:var(--muted);margin-top:4px;font-size:13px}.admin-progress-list b{font-size:13px}.admin-progress-list time{color:var(--muted);text-align:right;font-size:13px}.review-body{gap:18px;padding:20px;display:grid}.review-student{width:min(320px,100%)}.recent-journal-strip{grid-template-columns:repeat(3,1fr);gap:12px;display:grid}.recent-journal-strip article{border:1px solid var(--line);background:#f9faf8;border-radius:11px;min-height:136px;padding:16px}.recent-journal-strip small,.recent-journal-strip strong,.recent-journal-strip span{display:block}.recent-journal-strip small{color:var(--muted);font-size:13px}.recent-journal-strip strong{margin-top:8px;font-size:13px}.recent-journal-strip p{color:#46546a;margin:9px 0;font-size:13px;line-height:1.55}.recent-journal-strip span{color:var(--bronze-deep);font-size:13px;font-weight:900}.review-flags{flex-wrap:wrap;gap:8px;display:flex}.review-flags label{border:1px solid var(--line);color:#46546a;background:#fff;border-radius:9px;align-items:center;gap:8px;min-height:40px;padding:8px 12px;font-size:13px;font-weight:900;display:flex}.review-flags input{width:17px;height:17px;accent-color:var(--blue)}.review-notes textarea{resize:vertical;min-height:92px}.review-submit{justify-content:flex-end;align-items:center;gap:14px;display:flex}.review-submit span{color:var(--success);margin-right:auto;font-size:13px;font-weight:900}.review-submit .primary-button{margin:0}.family-progress-head{justify-content:space-between;align-items:center;gap:22px;min-height:132px;padding:24px;display:flex}.family-progress-head h2{margin:5px 0 7px;font-size:25px}.family-progress-head p{color:var(--muted);margin:0;font-size:13px}.family-progress-head label{color:var(--muted);gap:6px;font-size:13px;font-weight:900;display:grid}.family-progress-head select{min-width:200px;min-height:44px;color:var(--ink);background:#fff;border:1px solid #bdc6c0;border-radius:9px;padding:8px 11px}.progress-overview{border:1px solid var(--line);border-radius:var(--radius);background:var(--line);grid-template-columns:repeat(4,1fr);gap:1px;display:grid;overflow:hidden}.progress-overview article{background:#fff;min-height:132px;padding:20px}.progress-overview span,.progress-overview small{color:var(--muted);font-size:13px;font-weight:900}.progress-overview strong{margin:17px 0 7px;font-size:19px;display:block}.progress-overview small{color:var(--bronze-deep)}.payroll-page{gap:22px;display:grid}.payroll-summary{border-radius:var(--radius);color:#fff;background:var(--ink);grid-template-columns:repeat(4,1fr);display:grid;overflow:hidden}.payroll-summary article{border-right:1px solid #ffffff24;align-items:center;gap:13px;min-height:106px;padding:20px;display:flex}.payroll-summary article:last-child{border-right:0}.payroll-summary svg{color:#efbd70;width:23px}.payroll-summary span{color:#becbdd;font-size:13px;font-weight:900}.payroll-summary strong{color:#fff;margin-top:7px;font-size:21px;display:block}.payroll-summary .danger svg,.payroll-summary .danger strong{color:#ffb4aa}.payroll-close-row{border-top:1px solid var(--line);grid-template-columns:210px minmax(0,1fr) auto;align-items:end;gap:18px;min-height:92px;padding:18px 20px;display:grid}.payroll-close-row label,.payroll-adjust-grid label{color:#46546a;gap:7px;font-size:13px;font-weight:900;display:grid}.payroll-close-row input,.payroll-adjust-grid input,.payroll-adjust-grid select,.payroll-adjust-grid textarea,.pay-ledger-filters input,.pay-ledger-filters select,.settlement-actions input{width:100%;min-height:44px;color:var(--ink);font:inherit;background:#fff;border:1px solid #bdc6c0;border-radius:9px;padding:9px 12px}.payroll-close-row strong,.payroll-close-row small{display:block}.payroll-close-row small{color:var(--muted);margin-top:5px;font-size:13px}.payroll-close-row .primary-button{margin:0}.payroll-close-row svg,.payroll-adjust-grid svg{width:17px}.payroll-adjust-grid{border-top:1px solid var(--line);grid-template-columns:repeat(4,minmax(0,1fr));align-items:end;gap:14px;padding:20px;display:grid}.payroll-adjust-grid textarea{resize:vertical;min-height:75px}.payroll-adjust-grid .span-two{grid-column:1/4}.payroll-adjust-grid .secondary-button{margin:0}.rate-table{border-top:1px solid var(--line)}.rate-table>div{border-bottom:1px solid var(--line);grid-template-columns:160px repeat(3,1fr);align-items:center;gap:14px;min-height:64px;padding:10px 20px;display:grid}.rate-table>div:first-child{min-height:46px;color:var(--muted);background:#f7f9f7;font-size:13px}.rate-table label{background:#fff;border:1px solid #bdc6c0;border-radius:9px;align-items:center;display:flex}.rate-table label span{color:var(--muted);padding-left:10px;font-size:13px;font-weight:900}.rate-table input{width:100%;min-height:42px;color:var(--ink);background:0 0;border:0;padding:8px}.rate-actions{justify-content:flex-end;align-items:center;gap:14px;padding:14px 20px;display:flex}.rate-actions span{color:var(--success);margin-right:auto;font-size:13px;font-weight:900}.rate-actions .primary-button{margin:0}.pay-ledger .panel-head{gap:20px}.pay-ledger-filters{gap:8px;display:flex}.pay-line-list article{border-top:1px solid var(--line);grid-template-columns:150px minmax(0,1fr) 120px 100px 90px;align-items:center;gap:12px;min-height:74px;padding:12px 20px;display:grid}.pay-line-list time{color:var(--bronze-deep);font-size:13px;font-weight:900}.pay-line-list strong,.pay-line-list small{display:block}.pay-line-list small{color:var(--muted);margin-top:4px;font-size:13px}.pay-line-list>article>span{color:var(--muted);font-size:13px}.pay-line-list b{text-align:right;font-size:14px}.pay-line-list em{justify-self:end;font-style:normal}.settlement-list article{border-top:1px solid var(--line);grid-template-columns:minmax(230px,1fr) minmax(280px,1fr) 110px 120px;align-items:center;gap:14px;min-height:90px;padding:15px 20px;display:grid}.settlement-title strong,.settlement-title small{display:block}.settlement-title small{color:var(--muted);margin-top:5px;font-size:13px}.settlement-hours{flex-wrap:wrap;gap:6px;display:flex}.settlement-hours span{color:#46546a;background:#eef2ef;border-radius:6px;padding:5px 7px;font-size:13px;font-weight:900}.settlement-list>article>b{text-align:right;font-size:16px}.settlement-list>article>em{justify-self:end;font-style:normal}.settlement-actions{border-top:1px dashed var(--line);grid-column:1/-1;justify-content:flex-end;align-items:center;gap:8px;padding-top:10px;display:flex}.settlement-actions input{max-width:320px}.settlement-actions button{margin:0}.settlement-actions svg{width:15px}.reports-page{gap:20px;display:grid}.report-toolbar{border:1px solid var(--line);border-radius:var(--radius);background:#fff;justify-content:space-between;align-items:center;gap:24px;min-height:116px;padding:24px 26px;display:flex}.report-toolbar h2{letter-spacing:-.025em;margin:7px 0 5px;font-size:25px}.report-toolbar p{color:var(--muted);margin:0;font-size:13px}.report-actions{align-items:flex-end;gap:10px;display:flex}.report-actions label{color:#46546a;gap:6px;font-size:13px;font-weight:900;display:grid}.report-actions select{min-width:166px;min-height:44px;color:var(--ink);background:#fff;border:1px solid #b9c3c8;border-radius:10px;padding:9px 12px}.report-actions .secondary-button{white-space:nowrap}.report-tabs{border:1px solid var(--line);scrollbar-width:none;background:#e8ece9;border-radius:12px;gap:4px;padding:5px;display:flex;overflow-x:auto}.report-tabs::-webkit-scrollbar{display:none}.report-tabs button{min-height:42px;color:var(--muted);white-space:nowrap;cursor:pointer;background:0 0;border:0;border-radius:8px;flex:1;padding:8px 18px;font-size:13px;font-weight:900}.report-tabs button.active{color:#fff;background:var(--ink);box-shadow:0 5px 14px #1324432e}.report-metrics{border-radius:var(--radius);color:#fff;background:var(--ink);grid-template-columns:repeat(4,minmax(0,1fr));display:grid;overflow:hidden}.report-metrics article{border-right:1px solid #ffffff24;min-height:116px;padding:20px}.report-metrics article:last-child{border-right:0}.report-metrics span,.report-metrics small{color:#c6d3e4;font-size:13px;display:block}.report-metrics strong{letter-spacing:-.03em;margin:12px 0 7px;font-size:25px;display:block}.report-overview-grid{grid-template-columns:minmax(0,1.45fr) minmax(300px,.75fr);gap:20px;display:grid}.report-two-columns{grid-template-columns:1fr 1fr;gap:20px;display:grid}.report-panel{min-width:0}.report-panel .panel-head svg{width:24px;color:var(--bronze-deep)}.report-alert-grid{background:var(--line);grid-template-columns:repeat(2,1fr);gap:1px;display:grid}.report-alert-grid article{background:#fff;min-height:118px;padding:20px}.report-alert-grid span,.report-alert-grid small{color:var(--muted);font-size:13px;display:block}.report-alert-grid strong{margin:10px 0 7px;font-size:27px;display:block}.report-alert-grid article.has-alert strong{color:var(--warning)}.report-rules{gap:0;padding:8px 22px 18px;display:grid}.report-rules p{border-bottom:1px solid var(--line);color:var(--muted);margin:0;padding:13px 0;font-size:13px;line-height:1.55}.report-rules p:last-child{border-bottom:0}.report-rules b{color:var(--ink)}.report-table,.report-teacher-table{overflow-x:auto}.report-table>div{border-top:1px solid var(--line);grid-template-columns:minmax(220px,1.5fr) repeat(3,minmax(120px,1fr));align-items:center;gap:14px;min-width:680px;min-height:62px;padding:11px 22px;display:grid}.report-table .report-table-head,.report-teacher-table .report-table-head{min-height:44px;color:var(--muted);background:#f7f9f7;font-size:13px;font-weight:900}.report-table strong,.report-table strong small{display:block}.report-table strong small{color:var(--muted);margin-top:4px;font-size:13px;font-weight:500}.report-table span,.report-table b{font-size:13px}.report-table b{text-align:right}.report-table em{color:var(--danger);background:var(--danger-bg);border-radius:5px;margin-left:7px;padding:3px 6px;font-size:13px;font-style:normal;font-weight:900;display:inline-block}.report-ranking article{border-top:1px solid var(--line);grid-template-columns:34px minmax(0,1fr) auto;align-items:center;gap:12px;min-height:65px;padding:11px 20px;display:grid}.report-ranking article>span{color:var(--bronze-deep);font-size:13px;font-weight:900}.report-ranking strong,.report-ranking small{display:block}.report-ranking strong{font-size:14px}.report-ranking small{color:var(--muted);margin-top:4px;font-size:13px;font-weight:500}.report-ranking b{font-size:15px}.report-ranking .warning-dot{width:9px;height:9px;box-shadow:0 0 0 5px var(--warning-bg);background:#d49434;border-radius:50%}.status-distribution{gap:17px;padding:20px 22px 24px;display:grid}.status-distribution article>div{justify-content:space-between;gap:16px;margin-bottom:8px;font-size:13px;display:flex}.status-distribution article>span{background:#e8ece9;border-radius:999px;height:8px;display:block;overflow:hidden}.status-distribution i{border-radius:inherit;background:var(--bronze);height:100%;display:block}.report-teacher-table>div{border-top:1px solid var(--line);grid-template-columns:minmax(180px,1.2fr) repeat(3,minmax(130px,1fr)) minmax(130px,1fr);align-items:center;gap:14px;min-width:850px;min-height:64px;padding:11px 22px;font-size:13px;display:grid}.report-teacher-table>div>b{text-align:right}.report-attendance-list article{border-top:1px solid var(--line);grid-template-columns:150px minmax(0,1fr) auto;align-items:center;gap:16px;min-height:70px;padding:12px 22px;display:grid}.report-attendance-list time{color:var(--bronze-deep);font-size:13px;font-weight:900}.report-attendance-list strong,.report-attendance-list small{display:block}.report-attendance-list strong{font-size:14px}.report-attendance-list small{color:var(--muted);margin-top:4px;font-size:13px;font-weight:500}.report-attendance{text-align:center;border-radius:999px;min-width:70px;padding:6px 10px;font-size:13px;font-weight:900}.report-attendance.present{color:var(--success);background:var(--success-bg)}.report-attendance.absent{color:var(--danger);background:var(--danger-bg)}.report-attendance.missing{color:var(--warning);background:var(--warning-bg)}.stability-list article{border-top:1px solid var(--line);grid-template-columns:minmax(220px,1fr) 120px 120px 90px;align-items:center;gap:16px;min-height:78px;padding:12px 22px;display:grid}.stability-list article.unstable{background:linear-gradient(90deg,#fff8f6,#fff 48%)}.stability-person{align-items:center;gap:12px;display:flex}.stability-person>span{color:#fff;background:var(--ink);border-radius:50%;place-items:center;width:36px;height:36px;font-weight:900;display:grid}.stability-person strong,.stability-person small{display:block}.stability-person small{color:var(--muted);margin-top:3px;font-size:13px;font-weight:500}.stability-count span,.stability-count b{display:block}.stability-count span{color:var(--muted);font-size:13px}.stability-count b{margin-top:4px;font-size:14px}.stability-list em{justify-self:end;font-style:normal}.report-empty{text-align:center;min-height:210px;color:var(--muted);place-content:center;justify-items:center;padding:28px;display:grid}.report-empty svg{width:28px;color:var(--bronze-deep)}.report-empty strong{color:var(--ink);margin-top:12px;font-size:14px}.report-empty p{margin:6px 0 0;font-size:13px}.attendance-workbench{min-width:0}.attendance-feedback{color:var(--success);background:var(--success-bg);border-bottom:1px solid #b9dfd2;margin:0;padding:13px 18px;font-size:13px;font-weight:900;line-height:1.55}.attendance-case-list>article{border-top:1px solid var(--line);grid-template-columns:minmax(230px,1fr) minmax(240px,.95fr);gap:14px 18px;padding:18px 20px;display:grid}.attendance-case-list>article:first-child{border-top:0}.attendance-case-summary{grid-template-columns:auto minmax(0,1fr);align-items:start;gap:12px;min-width:0;display:grid}.attendance-case-summary strong,.attendance-case-summary small{overflow-wrap:anywhere;display:block}.attendance-case-summary small{color:var(--muted);margin-top:5px;font-size:13px;line-height:1.5}.attendance-case-summary p{color:var(--danger);margin:9px 0 0;font-size:13px;font-weight:800;line-height:1.5}.attendance-reason{color:#46546a;gap:6px;min-width:0;font-size:13px;font-weight:900;display:grid}.attendance-reason textarea{width:100%;min-height:78px;color:var(--ink);font:inherit;resize:vertical;background:#fff;border:1px solid #bdc6c0;border-radius:9px;padding:10px 11px}.attendance-resolution-actions{grid-column:2;justify-content:flex-end;gap:8px;display:flex}.attendance-resolution-actions button{margin:0}.attendance-resolution-actions svg{width:16px}.attendance-rule-notes{border-top:1px dashed var(--line);flex-wrap:wrap;grid-column:1/-1;gap:8px 16px;padding-top:12px;display:flex}.attendance-rule-notes span{color:var(--muted);align-items:center;gap:6px;font-size:13px;font-weight:800;display:inline-flex}.attendance-rule-notes svg{width:15px;color:var(--bronze-deep)}.family-attendance{gap:18px;margin-top:24px;display:grid}.family-attendance-head{border-radius:var(--radius);color:#fff;background:var(--ink);justify-content:space-between;align-items:center;gap:20px;min-height:112px;padding:22px 24px;display:flex}.family-attendance-head h2{margin:0 0 7px;font-size:23px}.family-attendance-head p{color:#c9d4e3;margin:0;font-size:13px;line-height:1.6}.family-attendance-head label{color:#c9d4e3;gap:6px;font-size:13px;font-weight:900;display:grid}.family-attendance-head select{min-width:210px;min-height:44px;color:var(--ink);background:#fff;border:1px solid #ffffff4d;border-radius:9px;padding:8px 11px}.attendance-summary{border:1px solid var(--line);border-radius:var(--radius);background:var(--line);grid-template-columns:repeat(3,1fr);gap:1px;display:grid;overflow:hidden}.attendance-summary article{background:#fff;align-items:center;gap:14px;min-height:92px;padding:18px 20px;display:flex}.attendance-summary svg{width:23px;color:var(--success)}.attendance-summary article:nth-child(2) svg{color:var(--bronze-deep)}.attendance-summary article.warning svg,.attendance-summary article.warning strong{color:var(--danger)}.attendance-summary span{color:var(--muted);font-size:13px;font-weight:900}.attendance-summary strong{margin-top:5px;font-size:22px;display:block}.attendance-history-panel .panel-head h3{margin:0;font-size:18px}.attendance-history-list article{border-top:1px solid var(--line);grid-template-columns:180px minmax(0,1fr) auto;align-items:center;gap:16px;min-height:68px;padding:12px 20px;display:grid}.attendance-history-list time{color:var(--bronze-deep);font-size:13px;font-weight:900}.attendance-history-list strong,.attendance-history-list small{overflow-wrap:anywhere;display:block}.attendance-history-list small{color:var(--muted);margin-top:4px;font-size:13px}.attendance-state{text-align:center;border-radius:7px;min-width:92px;padding:6px 9px;font-size:13px;font-weight:900}.attendance-state.present{color:var(--success);background:var(--success-bg)}.attendance-state.excused{color:var(--bronze-deep);background:#f5eadb}.attendance-state.absent{color:var(--danger);background:var(--danger-bg)}.attendance-state.cancelled{color:var(--muted);background:#e9eeeb}.attendance-resolution-actions button{white-space:nowrap;padding-inline:10px;font-size:13px}.attendance-student-name{background:#ffffff0f;border:1px solid #ffffff2e;border-radius:10px;min-width:180px;padding:12px 15px}.attendance-student-name span,.attendance-student-name strong{display:block}.attendance-student-name span{color:#c9d4e3;font-size:13px;font-weight:900}.attendance-student-name strong{color:#fff;margin-top:4px;font-size:15px}.people-page{gap:18px;display:grid}.people-hero{border-radius:var(--radius);color:#fff;background:var(--ink);justify-content:space-between;align-items:center;gap:28px;min-height:146px;padding:26px 28px;display:flex}.people-hero h2{margin:8px 0 7px;font-size:27px}.people-hero p{color:#c9d4e3;max-width:72ch;margin:0;font-size:13px;line-height:1.65}.people-hero-stats{background:#ffffff24;border:1px solid #ffffff29;border-radius:11px;flex:none;gap:1px;display:flex;overflow:hidden}.people-hero-stats span{background:var(--ink);color:#c9d4e3;min-width:142px;padding:17px;font-size:13px}.people-hero-stats b{color:#efbd70;margin-bottom:4px;font-size:22px;display:block}.people-tabs{border:1px solid var(--line);box-shadow:var(--shadow);background:#fff;border-radius:11px;gap:6px;padding:5px;display:flex}.people-tabs button{min-height:46px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:8px;justify-content:center;align-items:center;gap:8px;padding:9px 17px;font-size:13px;font-weight:900;display:flex}.people-tabs button.active{color:#fff;background:var(--ink)}.people-tabs svg{width:18px}.people-feedback{color:var(--success);background:var(--success-bg);border-radius:10px;align-items:center;gap:8px;margin:0;padding:13px 16px;font-size:13px;font-weight:900;display:flex}.people-feedback svg{width:18px}.people-layout{grid-template-columns:320px minmax(0,1fr);align-items:start;gap:18px;min-width:0;display:grid}.people-directory{min-width:0;position:sticky;top:18px}.directory-actions{border-bottom:1px solid var(--line);grid-template-columns:minmax(0,1fr) 44px;gap:8px;padding:14px;display:grid}.directory-actions label{background:#fff;border:1px solid #bdc6c0;border-radius:9px;align-items:center;gap:8px;min-width:0;padding:0 11px;display:flex}.directory-actions label svg{width:17px;color:var(--muted);flex:none}.directory-actions input{width:100%;min-width:0;min-height:42px;color:var(--ink);font:inherit;background:0 0;border:0;outline:0;font-size:13px}.directory-actions>button{color:#fff;background:var(--bronze-deep);cursor:pointer;border:0;border-radius:9px;place-items:center;display:grid}.directory-actions>button svg{width:19px}.directory-list{max-height:660px;overflow:auto}.directory-list>button{border:0;border-top:1px solid var(--line);width:100%;min-height:76px;color:var(--ink);text-align:left;cursor:pointer;background:#fff;grid-template-columns:auto minmax(0,1fr) auto auto;align-items:center;gap:10px;padding:11px 12px;display:grid}.directory-list>button:first-child{border-top:0}.directory-list>button.active{box-shadow:inset 3px 0 var(--blue);background:#eef3f7}.directory-list>button>span:nth-child(2){min-width:0}.directory-list strong,.directory-list small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.directory-list strong{font-size:14px}.directory-list small{color:var(--muted);margin-top:5px;font-size:13px}.directory-list em{white-space:nowrap;border-radius:999px;padding:5px 7px;font-size:13px;font-style:normal;font-weight:900}.directory-list em.online{color:var(--success);background:var(--success-bg)}.directory-list em.offline{color:#775213;background:#fff0cc}.directory-list>button>svg{color:#87949c;width:16px}.directory-avatar{color:#184268;background:#deebf5;border-radius:50%;place-items:center;width:38px;height:38px;font-size:14px;font-weight:900;display:grid}.directory-avatar.teacher{color:#6d4519;background:#f3e3cc}.people-detail{min-width:0}.profile-header{border-bottom:1px solid var(--line);grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:16px;min-height:118px;padding:20px 22px;display:grid}.profile-monogram{color:#fff;background:var(--blue);border-radius:16px;place-items:center;width:58px;height:58px;font-size:21px;font-weight:900;display:grid}.teacher-profile .profile-monogram{background:var(--bronze-deep)}.profile-title{align-items:center;gap:10px;display:flex}.profile-title h3{margin:0;font-size:22px}.profile-header p{color:var(--muted);margin:6px 0 0;font-size:13px;line-height:1.5}.profile-metrics{border-bottom:1px solid var(--line);background:var(--line);grid-template-columns:repeat(4,1fr);gap:1px;display:grid}.profile-metrics article{background:#fff;min-height:105px;padding:17px}.profile-metrics span,.profile-metrics small{color:var(--muted);font-size:13px;display:block}.profile-metrics strong{margin:8px 0 5px;font-size:22px;display:block}.profile-columns{background:var(--line);grid-template-columns:1fr 1fr;gap:1px;display:grid}.profile-columns>div,.profile-columns>.profile-section{background:#fff;min-width:0}.profile-section{border-bottom:1px solid var(--line)}.profile-section:last-child{border-bottom:0}.profile-section-head{border-bottom:1px solid var(--line);background:#f8f9f7;align-items:center;min-height:58px;padding:13px 18px;display:flex}.profile-section-head h4{align-items:center;gap:8px;margin:0;font-size:14px;display:flex}.profile-section-head svg{width:18px;color:var(--bronze-deep)}.profile-definition{margin:0;padding:8px 18px 18px;display:grid}.profile-definition>div{border-bottom:1px solid var(--line);padding:11px 0}.profile-definition>div:last-child{border-bottom:0}.profile-definition dt{color:var(--muted);font-size:13px;font-weight:900}.profile-definition dd{color:var(--ink);white-space:pre-wrap;overflow-wrap:anywhere;margin:5px 0 0;font-size:13px;line-height:1.55}.profile-course-list article{border-bottom:1px solid var(--line);grid-template-columns:128px minmax(0,1fr) auto;align-items:center;gap:12px;min-height:66px;padding:11px 18px;display:grid}.profile-course-list article:last-child{border-bottom:0}.profile-course-list time{color:var(--bronze-deep);font-size:13px;font-weight:900}.profile-course-list strong,.profile-course-list small{display:block}.profile-course-list strong{font-size:13px}.profile-course-list small{color:var(--muted);margin-top:4px;font-size:13px}.profile-course-list em{color:var(--muted);font-size:13px;font-style:normal;font-weight:900}.guardian-list article{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:12px;min-height:60px;padding:10px 18px;display:flex}.guardian-list strong,.guardian-list small{display:block}.guardian-list strong{font-size:13px}.guardian-list small{color:var(--muted);margin-top:4px;font-size:13px}.guardian-list em{color:var(--success);background:var(--success-bg);border-radius:999px;padding:5px 7px;font-size:13px;font-style:normal;font-weight:900}.profile-empty{color:var(--muted);margin:0;padding:20px 18px;font-size:13px;line-height:1.6}.guardian-quick-form{padding-bottom:16px}.compact-form-grid{grid-template-columns:1fr 1fr;gap:10px;padding:15px 18px 0;display:grid}.compact-form-grid label,.people-form label,.qualification-editor label{color:#46546a;gap:6px;font-size:13px;font-weight:900;display:grid}.compact-form-grid input,.people-form input,.people-form select,.people-form textarea,.qualification-editor select{width:100%;min-height:44px;color:var(--ink);font:inherit;background:#fff;border:1px solid #b8c2bc;border-radius:9px;padding:9px 11px;font-size:13px}.compact-form-grid .span-two,.people-form-grid .span-two{grid-column:1/-1}.checkbox-row{align-items:center;gap:8px;display:flex!important}.checkbox-row input{width:18px;min-height:18px}.compact-form-grid button{justify-content:center;width:100%;margin:0}.qualification-display{flex-wrap:wrap;gap:8px;padding:18px;display:flex}.qualification-display>span,.qualification-display>button{color:#68451c;background:#fff8ea;border:1px solid #d6c097;border-radius:8px;align-items:center;gap:6px;min-height:34px;padding:7px 9px;font-size:13px;display:inline-flex}.qualification-display b{font-weight:900}.qualification-display.editable button{cursor:pointer}.qualification-display.editable button span{color:var(--danger);margin-left:2px;font-size:16px;line-height:1}.editor-header{border-bottom:1px solid var(--line);align-items:center;min-height:106px;padding:20px 22px;display:flex}.editor-header h3{margin:6px 0 5px;font-size:21px}.editor-header p{color:var(--muted);margin:0;font-size:13px;line-height:1.6}.people-form{display:grid}.form-section-title{align-items:center;gap:11px;padding:18px 20px 11px;display:flex}.form-section-title>span{color:#fff;background:var(--ink);border-radius:8px;place-items:center;width:31px;height:31px;font-size:13px;font-weight:900;display:grid}.form-section-title strong,.form-section-title small{display:block}.form-section-title strong{font-size:14px}.form-section-title small{color:var(--muted);margin-top:3px;font-size:13px}.people-form-grid{grid-template-columns:1fr 1fr;gap:12px;padding:0 20px 20px;display:grid}.people-form textarea{resize:vertical;line-height:1.5}.checkbox-card{background:#fbfcfa;border:1px solid #b8c2bc;border-radius:9px;align-items:center;gap:11px;min-height:64px;padding:10px 12px;display:flex!important}.checkbox-card input{width:18px;min-height:18px}.checkbox-card strong,.checkbox-card small{display:block}.checkbox-card small{color:var(--muted);margin-top:3px;font-size:13px}.editor-actions{border-top:1px solid var(--line);background:#f8f9f7;justify-content:flex-end;align-items:center;gap:9px;padding:16px 20px;display:flex}.editor-actions button{margin:0}.editor-actions svg{width:17px}.qualification-editor{border:1px solid var(--line);border-radius:10px;margin:0 20px 20px;overflow:hidden}.qualification-editor>div:first-child{background:#f8f9f7;grid-template-columns:minmax(180px,1fr) minmax(130px,.7fr) auto;align-items:end;gap:10px;padding:14px;display:grid}.qualification-editor .secondary-button{margin:0}.qualification-editor .secondary-button svg{width:16px}.visibility-toggle{align-self:end}.directory-empty{text-align:center;place-content:center;justify-items:center;min-height:430px;padding:30px;display:grid}.directory-empty>svg{width:42px;color:var(--bronze-deep)}.directory-empty h3{margin:16px 0 7px}.directory-empty p{max-width:36ch;color:var(--muted);margin:0;font-size:13px;line-height:1.6}.hour-account-strip{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:14px 18px 0;display:grid}.hour-account-strip>span{border:1px solid var(--line);background:#fbfcfa;border-radius:9px;min-width:0;padding:11px}.hour-account-strip b,.hour-account-strip strong,.hour-account-strip small{display:block}.hour-account-strip b{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:13px;overflow:hidden}.hour-account-strip strong{margin:5px 0 3px;font-size:18px}.hour-account-strip small{color:var(--muted);font-size:13px}.hour-transfer-form{grid-template-columns:1fr 1fr;gap:10px;padding:14px 18px 18px;display:grid}.hour-transfer-form label{color:#46546a;gap:6px;font-size:13px;font-weight:900;display:grid}.hour-transfer-form input,.hour-transfer-form select,.hour-transfer-form textarea{width:100%;min-height:44px;color:var(--ink);font:inherit;background:#fff;border:1px solid #b8c2bc;border-radius:9px;padding:9px 11px;font-size:13px}.hour-transfer-form textarea{resize:vertical;line-height:1.5}.hour-transfer-form .span-two{grid-column:1/-1}.hour-transfer-form button{width:100%;margin:0}.hour-transfer-form>small{color:var(--muted);font-size:13px;line-height:1.6}.notification-preferences{border-bottom:1px solid var(--line);background:#f8f9f7;justify-content:space-between;align-items:center;gap:24px;min-height:104px;padding:16px 20px;display:flex}.notification-preferences strong{font-size:14px}.notification-preferences p{color:var(--muted);margin:5px 0 0;font-size:13px;line-height:1.5}.preference-switches{flex-wrap:wrap;justify-content:flex-end;gap:7px;display:flex}.preference-switches label{min-height:38px;color:var(--muted);cursor:pointer;background:#fff;border:1px solid #bdc6c0;border-radius:9px;align-items:center;gap:7px;padding:7px 10px;font-size:13px;font-weight:900;display:flex}.preference-switches label:has(input:checked){color:#155b43;background:#edf7f2;border-color:#8dc2ad}.preference-switches label.locked{cursor:default}.preference-switches input{width:16px;height:16px;accent-color:var(--success)}.access-link-result{background:#f0f8f4;border:1px solid #b9d9cb;border-radius:10px;align-items:end;gap:10px;padding:14px 16px;display:flex}.access-link-result label{color:#315e4c;flex:1;gap:6px;min-width:0;font-size:13px;font-weight:900;display:grid}.access-link-result input{width:100%;min-width:0;min-height:42px;color:var(--ink);font:inherit;background:#fff;border:1px solid #a9c4b8;border-radius:8px;padding:8px 10px;font-size:13px}.access-link-result button{margin:0}.profile-header-actions{align-items:center;gap:7px;display:flex}.profile-header-actions button{margin:0}.guardian-list article>div{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:6px;display:flex}.guardian-list .text-button{min-height:34px;padding:6px 8px;font-size:13px}.access-approval-panel{overflow:hidden}.access-approval-panel>header{border-bottom:1px solid var(--line);background:#fbf7ef;justify-content:space-between;align-items:center;gap:20px;padding:18px 20px;display:flex}.access-approval-panel h3{margin:5px 0 4px;font-size:19px}.access-approval-panel header p{color:var(--muted);margin:0;font-size:13px}.access-approval-panel header>strong{color:#6d4519;text-align:center;background:#f4dfbb;border-radius:999px;min-width:58px;padding:9px 11px;font-size:13px}.access-approval-list article{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:18px;min-height:82px;padding:14px 18px;display:flex}.access-approval-list article:last-child{border-bottom:0}.access-approval-person{align-items:center;gap:12px;min-width:0;display:flex}.access-approval-person>span{color:#76501f;background:#fff0cf;border-radius:11px;flex:none;place-items:center;width:40px;height:40px;display:grid}.access-approval-person svg{width:19px}.access-approval-person strong,.access-approval-person p,.access-approval-person time{display:block}.access-approval-person strong{font-size:14px}.access-approval-person strong small{color:var(--bronze-deep);margin-left:5px;font-size:13px}.access-approval-person p{color:var(--muted);overflow-wrap:anywhere;margin:4px 0;font-size:13px}.access-approval-person time{color:#77818d;font-size:13px}.access-approval-actions,.access-approval-decision{flex:none;justify-content:flex-end;align-items:end;gap:8px;display:flex}.access-approval-actions button,.access-approval-decision button{margin:0}.access-approval-actions svg{width:17px}.access-approval-decision label{color:#46546a;gap:5px;min-width:250px;font-size:13px;font-weight:900;display:grid}.access-approval-decision input{min-height:42px;color:var(--ink);font:inherit;background:#fff;border:1px solid #b8c2bc;border-radius:8px;padding:8px 10px;font-size:13px}.account-help{gap:18px;padding-top:8px;display:grid}.account-help-icon{color:#714811;background:#f6e4c6;border-radius:12px;place-items:center;width:50px;height:50px;display:grid}.account-help-icon svg{width:24px}.account-help h2{margin:0;font-size:25px}.account-help p{color:var(--muted);margin:7px 0 0;font-size:13px;line-height:1.65}.account-help ol{color:#46546a;background:#f5f7f5;border-radius:10px;gap:10px;margin:0;padding:15px 15px 15px 36px;font-size:13px;line-height:1.55;display:grid}.account-help .secondary-button{justify-content:center;width:100%;margin:0}.access-page{background:#eef1ed;place-items:center;min-height:100vh;padding:28px;display:grid}.access-card{background:#fff;border-radius:18px;width:min(560px,100%);overflow:hidden;box-shadow:0 24px 70px #12233e29}.access-brand{color:#fff;background:var(--ink);align-items:center;gap:12px;min-height:80px;padding:16px 22px;display:flex}.access-brand strong,.access-brand small{display:block}.access-brand strong{font-size:16px}.access-brand small{color:#bdcbe0;letter-spacing:.15em;margin-top:4px;font-size:13px}.access-form{grid-template-columns:1fr 1fr;gap:13px;padding:24px;display:grid}.access-intro{grid-column:1/-1;align-items:flex-start;gap:13px;padding-bottom:8px;display:flex}.access-intro>span{color:#714811;background:#f6e4c6;border-radius:11px;flex:none;place-items:center;width:42px;height:42px;display:grid}.access-intro svg{width:21px}.access-intro small{color:var(--bronze-deep);letter-spacing:.08em;font-size:13px;font-weight:900}.access-intro h1{margin:5px 0 6px;font-size:22px}.access-intro p{color:var(--muted);margin:0;font-size:13px;line-height:1.6}.access-form label{color:#46546a;gap:6px;font-size:13px;font-weight:900;display:grid}.access-form input{width:100%;min-height:45px;color:var(--ink);font:inherit;background:#fff;border:1px solid #b8c2bc;border-radius:9px;padding:9px 11px}.access-form>.primary-button,.access-form>.form-message{grid-column:1/-1;justify-content:center;width:100%;margin:0}.access-state{text-align:center;place-content:center;justify-items:center;min-height:390px;padding:34px;display:grid}.access-state>svg{width:44px;color:var(--bronze-deep)}.access-state.success>svg{color:var(--success)}.access-state h1{margin:18px 0 7px;font-size:25px}.access-state p{max-width:42ch;color:var(--muted);margin:0;font-size:13px;line-height:1.65}.access-state a{margin-top:22px;text-decoration:none}.access-state .primary-button svg{width:17px}.mobile-nav{display:none}.local-test-toolbar{z-index:120;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#fffffff0;border:1px solid #1324431f;border-radius:12px;align-items:center;gap:4px;padding:5px;display:flex;position:fixed;bottom:18px;right:18px;box-shadow:0 12px 36px #1324432e}.local-test-toolbar span{color:var(--muted);padding:0 8px;font-size:13px;font-weight:900}.local-test-toolbar button{min-height:34px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:8px;padding:6px 10px;font-size:13px;font-weight:900}.local-test-toolbar button.active{color:#fff;background:var(--ink)}@media (max-width:1080px){.operations-app{grid-template-columns:218px minmax(0,1fr)}.operations-grid,.availability-columns{grid-template-columns:1fr}.definition-grid{grid-template-columns:repeat(2,1fr)}.integration-grid{grid-template-columns:1fr 1fr}.people-layout{grid-template-columns:270px minmax(0,1fr)}.profile-metrics{grid-template-columns:1fr 1fr}.profile-columns{grid-template-columns:1fr}}@media (max-width:780px){body{padding-bottom:calc(74px + env(safe-area-inset-bottom))}.auth-page{grid-template-columns:1fr}.auth-brand{display:none}.auth-panel{min-height:100vh;padding:20px}.auth-card{box-shadow:none;padding:26px 22px}.auth-form h2{font-size:25px}.operations-app{display:block}.app-sidebar{width:min(300px,86vw);height:100dvh;transition:transform .22s;position:fixed;inset:0 auto 0 0;transform:translate(-102%);box-shadow:0 0 50px #00000047}.app-sidebar.mobile-open{transform:none}.mobile-close{margin-left:auto;display:grid}.sidebar-scrim{z-index:55;background:#09122194;border:0;display:block;position:fixed;inset:0}.workspace-header{min-height:82px;padding:14px 16px}.workspace-header:after{width:50px;left:58px}.workspace-header h1{font-size:24px}.workspace-header p{max-width:190px}.menu-button{place-items:center;width:44px;min-height:44px;padding:0;display:grid}.header-feedback,.header-logout,.branch-control span{display:none}.branch-control select{min-width:116px;max-width:130px}.workspace-main{padding:22px 16px calc(100px + env(safe-area-inset-bottom))}.metric-rail,.today-attendance-rail{grid-template-columns:1fr 1fr}.metric-rail article{border-bottom:1px solid #ffffff24;min-height:108px;padding:18px 16px}.metric-rail article:nth-child(2n){border-right:0}.metric-rail article:nth-child(n+3){border-bottom:0}.metric-rail strong{font-size:22px}.today-attendance-rail>div{border-bottom:1px solid var(--line);min-height:88px;padding:15px 16px}.today-attendance-rail>div:nth-child(2n){border-right:0}.today-attendance-rail>div:nth-child(n+3){border-bottom:0}.today-attendance-rail strong{font-size:20px}.ledger-row{grid-template-columns:auto 1fr}.ledger-row time,.ledger-row .secondary-button,.ledger-row>b{grid-column:2}.course-row{grid-template-columns:1fr auto}.course-row time{grid-column:1/-1}.definition-grid,.integration-grid{grid-template-columns:1fr}.definition-grid article{min-height:135px}.panel-head{padding:16px}.page-intro{padding:22px}.calendar-heading{flex-direction:column;align-items:flex-start;min-height:0;padding:20px 16px 16px}.calendar-heading h2{font-size:21px}.calendar-heading p{margin-top:6px}.week-switcher{justify-content:space-between;width:100%}.week-switcher .today-button{flex:1}.calendar-context{min-height:48px;padding:8px 16px}.calendar-facts{gap:10px}.calendar-facts span{border:0;padding:0;display:none}.calendar-facts span:first-child,.calendar-facts span:last-child{display:block}.calendar-filters{box-shadow:none;grid-template-columns:1fr;gap:11px;padding:16px;position:static}.calendar-filter-reset{width:100%}.operations-course-detail{grid-template-columns:1fr;padding:18px 16px}.operations-course-detail dl{grid-template-columns:1fr}.calendar-desktop{display:none}.calendar-mobile{display:block}.booking-selection,.teacher-match{flex-direction:column;align-items:stretch;padding:18px 16px}.booking-time-controls,.booking-selection-controls{width:100%;min-width:0}.booking-time-controls{grid-template-columns:1fr 1fr}.booking-selection-controls{flex-direction:column;align-items:stretch}.booking-selection-controls .primary-button,.teacher-match>.secondary-button{width:100%}.teacher-profile-preview{padding:15px 16px}.purchase-gate{grid-template-columns:auto 1fr;padding:18px 16px}.purchase-gate .primary-button{grid-column:1/-1;width:100%}.selection-placeholder{justify-content:flex-start;min-height:48px;padding-inline:16px}.booking-message{padding:13px 16px}.batch-booking{padding:18px 16px 20px}.batch-heading{flex-direction:column;gap:10px}.batch-date-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.batch-actions{flex-direction:column-reverse;align-items:stretch}.batch-actions button{width:100%}.purchase-info{grid-template-columns:auto 1fr;padding:18px 16px}.purchase-info .secondary-button{grid-column:1/-1;width:100%}.subject-catalog .panel-head{flex-direction:column;align-items:stretch}.student-account-filter select{width:100%}.subject-catalog-list article{grid-template-columns:auto minmax(0,1fr);padding:14px 16px}.subject-catalog-list article>.status,.subject-catalog-list article>.secondary-button{grid-column:2;justify-self:start}.subject-catalog-list article>.secondary-button{width:100%}.availability-manager-head{align-items:flex-start;padding:20px 18px}.availability-manager-head h2{font-size:21px}.availability-form{grid-template-columns:1fr;padding:0 16px 16px}.availability-rule-list article,.availability-exception-list article,.availability-rule-list>div>strong{padding-inline:16px}.booking-admin-head{align-items:flex-start;padding:20px 18px}.booking-admin-head h2{font-size:21px}.booking-work-main{grid-template-columns:1fr auto;padding:14px 16px}.booking-work-main time{grid-column:1/-1}.booking-change-editor{grid-template-columns:1fr;padding:15px 16px 18px}.change-action-tabs{overflow-x:auto}.change-action-tabs button{flex:none}.change-time-fields{grid-template-columns:1fr 1fr}.change-time-fields .secondary-button{grid-column:1/-1;width:100%}.change-submit{flex-direction:column-reverse;align-items:stretch}.change-submit button{width:100%}.booking-audit-list article{grid-template-columns:auto 1fr;padding:14px 16px}.booking-audit-list article>div:nth-of-type(2),.booking-audit-list time{grid-column:2}.booking-audit-list time{text-align:left}.renewal-list,.plan-reference-grid,.payment-history-list,.trial-plan-grid,.trial-records{padding-left:16px;padding-right:16px}.renewal-title{grid-template-columns:auto minmax(0,1fr)}.renewal-title>.status{grid-column:2;justify-self:start}.renewal-plan-summary{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 0}.renewal-plan-summary>div:nth-child(3){border-left:0;padding-left:0}.renewal-actions{grid-template-columns:1fr}.renewal-actions button{width:100%}.plan-reference-grid,.trial-plan-grid{grid-template-columns:1fr}.payment-history-list article,.trial-records article{grid-template-columns:minmax(0,1fr) auto;gap:8px 14px}.payment-history-list span{grid-column:1}.payment-history-list b{grid-area:1/2/-1}.notification-head{flex-direction:column;align-items:stretch}.notification-controls{width:100%}.notification-controls button{flex:1}.notification-list{padding-left:0;padding-right:0}.notification-list article{grid-template-columns:auto minmax(0,1fr);padding:15px 16px}.notification-list article>.text-button{grid-column:2;justify-self:start}.leave-columns{grid-template-columns:1fr}.leave-form-grid{grid-template-columns:1fr;padding:16px}.leave-form-grid .leave-reason{grid-column:auto}.leave-form-grid .primary-button{width:100%}.case-list article{grid-template-columns:auto 1fr;padding:14px 16px}.case-list article>.status{grid-column:2;justify-self:start}.admin-case-list article{grid-template-columns:1fr;padding:16px}.case-actions,.makeup-time-fields,.makeup-match-fields{flex-direction:column;align-items:stretch}.case-actions>*,.makeup-time-fields button,.makeup-match-fields button{width:100%}.journal-summary{grid-template-columns:1fr 1fr}.journal-summary article{border-bottom:1px solid #ffffff24;min-height:88px;padding:15px}.journal-summary article:nth-child(2){border-right:0}.journal-summary article:last-child{border-bottom:0;grid-column:1/-1}.journal-layout{grid-template-columns:1fr}.journal-task-list{max-height:280px}.journal-form fieldset{grid-template-columns:1fr;padding:16px}.journal-form .span-two{grid-column:auto}.journal-form-actions{flex-direction:column;align-items:stretch;padding:16px}.journal-form-actions span{margin:0}.journal-form-actions button{width:100%}.journal-detail-grid{grid-template-columns:1fr;padding:1px 16px 16px}.journal-history-list summary{padding:14px 16px}.progress-filters{grid-template-columns:1fr 1fr;padding:16px}.progress-filters label:last-child{grid-column:1/-1}.admin-progress-list article{grid-template-columns:auto 1fr;padding:13px 16px}.admin-progress-list article b,.admin-progress-list article time{text-align:left;grid-column:2}.recent-journal-strip{scroll-snap-type:x mandatory;display:flex;overflow:auto}.recent-journal-strip article{scroll-snap-align:start;min-width:82%}.review-body{padding:16px}.review-submit{flex-direction:column;align-items:stretch}.review-submit span{margin:0}.review-submit .primary-button{width:100%}.family-progress-head{flex-direction:column;align-items:stretch;padding:20px}.family-progress-head select{width:100%}.progress-overview{grid-template-columns:1fr 1fr}.progress-overview article{min-height:112px;padding:16px}.payroll-summary{grid-template-columns:1fr 1fr}.payroll-summary article{border-bottom:1px solid #ffffff24;min-height:88px;padding:15px}.payroll-summary article:nth-child(2n){border-right:0}.payroll-summary article:nth-child(n+3){border-bottom:0}.payroll-close-row{grid-template-columns:1fr;padding:16px}.payroll-close-row .primary-button{width:100%}.payroll-adjust-grid{grid-template-columns:1fr 1fr;padding:16px}.payroll-adjust-grid .span-two{grid-column:1/-1}.payroll-adjust-grid .secondary-button{grid-column:1/-1;width:100%}.rate-table{overflow:auto}.rate-table>div{min-width:650px;padding-inline:16px}.rate-actions{flex-direction:column;align-items:stretch;padding:16px}.rate-actions span{margin:0}.rate-actions .primary-button{width:100%}.pay-ledger .panel-head{flex-direction:column;align-items:stretch}.pay-ledger-filters{width:100%}.pay-ledger-filters>*{flex:1;min-width:0}.pay-line-list article{grid-template-columns:1fr auto;padding:14px 16px}.pay-line-list time{grid-column:1/-1}.pay-line-list>article>span{grid-column:1}.pay-line-list b,.pay-line-list em{grid-column:2;justify-self:end}.settlement-list article{grid-template-columns:1fr auto;padding:15px 16px}.settlement-hours{grid-column:1/-1}.settlement-list>article>b{text-align:left;grid-column:1}.settlement-actions{flex-direction:column;align-items:stretch}.settlement-actions input{max-width:none}.settlement-actions button{width:100%}.report-toolbar{flex-direction:column;align-items:stretch;padding:20px 16px}.report-actions{flex-direction:column;align-items:stretch}.report-actions select,.report-actions .secondary-button{width:100%}.report-tabs button{flex:none;padding-inline:16px}.report-metrics{grid-template-columns:1fr 1fr}.report-metrics article{border-bottom:1px solid #ffffff24;min-height:103px;padding:16px}.report-metrics article:nth-child(2n){border-right:0}.report-metrics article:nth-child(n+3){border-bottom:0}.report-metrics strong{font-size:21px}.report-overview-grid,.report-two-columns{grid-template-columns:1fr}.report-alert-grid article{min-height:108px;padding:16px}.report-table>div,.report-teacher-table>div{padding-inline:16px}.report-attendance-list article{grid-template-columns:100px minmax(0,1fr);gap:10px;padding:13px 16px}.report-attendance{grid-column:2;justify-self:start}.stability-list article{grid-template-columns:minmax(0,1fr) auto auto;padding:14px 16px}.stability-person{grid-column:1/-1}.stability-list em{grid-area:2/3;align-self:center}.people-hero{flex-direction:column;align-items:flex-start;padding:22px 18px}.people-hero-stats{width:100%}.people-hero-stats span{flex:1;min-width:0}.people-tabs button{flex:1;padding-inline:8px}.people-layout{grid-template-columns:1fr}.people-directory{position:static}.directory-list{max-height:300px}.profile-header{grid-template-columns:auto minmax(0,1fr);padding:17px 16px}.profile-header .secondary-button{grid-column:1/-1;width:100%}.profile-metrics{grid-template-columns:1fr 1fr}.profile-metrics article{min-height:92px;padding:15px}.profile-course-list article{grid-template-columns:1fr auto;padding:12px 16px}.profile-course-list time{grid-column:1/-1}.compact-form-grid,.people-form-grid{grid-template-columns:1fr;padding-inline:16px}.compact-form-grid .span-two,.people-form-grid .span-two{grid-column:auto}.qualification-editor{margin-inline:16px}.qualification-editor>div:first-child{grid-template-columns:1fr 1fr}.qualification-editor .secondary-button{grid-column:1/-1;width:100%}.editor-actions{flex-direction:column-reverse;align-items:stretch;padding:14px 16px}.editor-actions button{width:100%}.visibility-toggle{min-height:58px}.mobile-nav{z-index:50;min-height:calc(66px + env(safe-area-inset-bottom));padding:6px 5px env(safe-area-inset-bottom);border-top:1px solid var(--line);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#fffffff5;grid-template-columns:repeat(5,1fr);display:grid;position:fixed;inset:auto 0 0}.mobile-nav button{min-width:0;min-height:52px;color:var(--muted);cursor:pointer;background:0 0;border:0;place-items:center;gap:2px;padding:4px;font-size:13px;display:grid}.mobile-nav button.active{color:var(--ink);font-weight:900}.mobile-nav button.active svg{color:var(--bronze-deep)}.mobile-nav svg{width:20px}.path-schedule-x .sx-react-calendar-wrapper{height:520px}.path-schedule-x .sx__calendar-header{min-height:64px;padding:10px 12px}.path-schedule-x .sx__range-heading{font-size:16px}.path-schedule-x .sx__button,.path-schedule-x .sx__date-input,.path-schedule-x .sx__view-selection-selected-item{min-height:38px;font-size:13px}.path-schedule-x .sx__time-grid-event-title,.path-schedule-x .sx__time-grid-event-time,.path-schedule-x .sx__time-grid-event-people{font-size:13px}}@media (max-width:420px){.auth-heading{flex-direction:column;align-items:flex-start}.auth-card{padding:22px 18px}.header-actions{gap:7px;max-width:none}.branch-control select{min-width:100px;max-width:112px}.metric-rail strong{font-size:20px}.course-row{padding:14px 16px}.calendar-facts span:first-child{display:none}.mobile-day-strip{gap:2px;padding-inline:8px}.mobile-day-strip button{min-height:54px}.agenda-item{grid-template-columns:78px minmax(0,1fr)}.agenda-item>span,.agenda-item>svg{grid-column:2}.batch-date-grid{grid-template-columns:1fr}.local-test-toolbar{justify-content:center;bottom:74px;left:8px;right:8px}.local-test-toolbar span{display:none}.local-test-toolbar button{flex:1;min-height:44px;padding-inline:4px}.report-alert-grid,.report-metrics{grid-template-columns:1fr}.report-metrics article{border-right:0;border-bottom:1px solid #ffffff24!important}.report-metrics article:last-child{border-bottom:0!important}}@media (max-width:780px){.attendance-case-list>article{grid-template-columns:1fr;padding:16px}.attendance-resolution-actions{flex-direction:column;grid-column:1;align-items:stretch}.attendance-resolution-actions button{width:100%}.attendance-rule-notes{grid-column:1;display:grid}.family-attendance-head{flex-direction:column;align-items:stretch;padding:20px 18px}.family-attendance-head select{width:100%}.attendance-summary article{min-height:82px;padding:14px}.attendance-history-list article{grid-template-columns:minmax(0,1fr) auto;padding:13px 16px}.attendance-history-list time{grid-column:1/-1}.attendance-state{min-width:0}}@media (max-width:420px){.attendance-summary{grid-template-columns:1fr}.attendance-summary article{border-bottom:1px solid var(--line)}.attendance-summary article:last-child{border-bottom:0}}@media (max-width:780px){.attendance-reason textarea{font-size:16px}.attendance-student-name{min-width:0}.hour-transfer-form{grid-template-columns:1fr;padding-inline:16px}.hour-transfer-form .span-two{grid-column:auto}.hour-account-strip{padding-inline:16px}.notification-preferences{flex-direction:column;align-items:stretch;padding:16px}.preference-switches{grid-template-columns:1fr 1fr;justify-content:stretch;display:grid}.preference-switches label{justify-content:flex-start}.profile-header-actions{flex-direction:column;grid-column:1/-1;align-items:stretch}.profile-header-actions button{width:100%}.access-link-result{flex-direction:column;align-items:stretch}.access-link-result button{width:100%}.access-page{background:#fff;align-items:start;padding:0}.access-card{min-height:100vh;box-shadow:none;border-radius:0}.access-form{grid-template-columns:1fr;padding:22px 18px}.access-intro,.access-form>.primary-button,.access-form>.form-message{grid-column:auto}.access-state{min-height:calc(100vh - 80px)}.guardian-list article{flex-direction:column;align-items:flex-start}.guardian-list article>div{justify-content:flex-start;width:100%}.access-approval-panel>header,.access-approval-list article{flex-direction:column;align-items:flex-start}.access-approval-panel>header{padding:17px 16px}.access-approval-list article{padding:14px 16px}.access-approval-actions,.access-approval-decision{flex-direction:column;align-items:stretch;width:100%}.access-approval-actions button,.access-approval-decision button{width:100%}.access-approval-decision label{width:100%;min-width:0}}@media (max-width:420px){.hour-account-strip{grid-template-columns:1fr}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.eyebrow,.step-label,.field-help,.workspace-header p,.branch-control,.metric-rail span,.metric-rail small,.today-attendance-rail span,.today-attendance-rail small,.panel-head p,.ledger-row small,.ledger-row time,.status,.course-row time,.course-row small,.calendar-facts span,.calendar-filters label,.booking-selection-controls label,.booking-time-controls label,.calendar-filter-reset,.operations-course-detail-head span,.operations-course-detail dt,.operations-course-detail>small,.calendar-corner,.time-track time,.calendar-day-head span,.calendar-day-head small,.calendar-event span,.calendar-event small,.course-event b,.match-copy p,.purchase-gate p,.teacher-profile-preview small,.batch-heading p,.batch-heading>span,.batch-date-grid small,.attendance-case-summary small,.attendance-case-summary p,.attendance-reason,.attendance-rule-notes span,.family-attendance-head label,.attendance-summary span,.attendance-history-list time,.attendance-history-list small,.attendance-state,.attendance-student-name span,.directory-list small,.directory-list em,.profile-metrics span,.profile-metrics small,.profile-definition dt,.profile-course-list time,.profile-course-list small,.profile-course-list em,.guardian-list small,.guardian-list em,.form-section-title small,.checkbox-card small,.hour-account-strip b,.hour-account-strip small,.hour-transfer-form>small,.access-link-result label,.guardian-list .text-button,.access-brand small,.access-intro small,.local-test-toolbar span,.local-test-toolbar button,.mobile-nav button,.path-schedule-x .sx__time-grid-event-time,.path-schedule-x .sx__time-grid-event-people,.sidebar-brand small,.sidebar-foot small{font-size:13px}.sidebar-foot button,.mobile-close,.header-logout,.menu-button,.notification-button,.week-switcher button,.ledger-row .secondary-button,.preference-switches label,.access-link-result input,.access-approval-decision input,.local-test-toolbar button,.path-schedule-x .sx__button,.path-schedule-x .sx__date-input,.path-schedule-x .sx__view-selection-selected-item{min-height:44px}.sidebar-foot button,.mobile-close,.notification-button{min-width:44px}.eyebrow{color:#754b25}.auth-brand .eyebrow,.availability-manager-head .eyebrow,.booking-admin-head .eyebrow,.people-hero .eyebrow{color:#f0c37b}.access-approval-person time{color:var(--muted)}.directory-list>button.active small,.journal-task-list button.active small{color:#596679}.report-tabs button{color:#586475;min-height:44px}.branch-control select,.directory-actions input,.rate-table input,.availability-form input,.availability-form select,.student-account-filter select,.guardian-list .text-button,.review-flags label,.checkbox-row{min-height:44px}.menu-button{flex:0 0 44px;min-width:44px}.path-schedule-x .sx__date-input-chevron-wrapper{width:44px;min-width:44px}@media (max-width:780px){.mobile-nav button{min-height:56px;font-size:13px}.path-schedule-x .sx__time-grid-event-title,.path-schedule-x .sx__time-grid-event-time,.path-schedule-x .sx__time-grid-event-people{font-size:13px}}.operations-app{--ink:#20324c;--ink-2:#304864;--blue:#256c8b;--paper:#edf3f1;--surface:#ffffffad;--cool:#e8f0efb8;--line:#435b652b;--muted:#586978;--bronze:#b47d3e;--bronze-deep:#795028;--shadow:0 18px 52px #3149541c, inset 0 0 0 1px #ffffffb8;color:var(--ink);background-color:#0000;background-image:radial-gradient(circle at 8% 4%,#e2bc864d,#0000 31rem),radial-gradient(circle at 92% 14%,#80bcc945,#0000 36rem),radial-gradient(circle at 72% 88%,#bdccb23d,#0000 31rem),linear-gradient(138deg,#edf4f2 0%,#f7f4ee 48%,#e7eff2 100%);background-position:0 0,0 0,0 0,0 0;background-repeat:repeat,repeat,repeat,repeat;background-size:auto,auto,auto,auto;background-attachment:fixed;background-origin:padding-box,padding-box,padding-box,padding-box;background-clip:border-box,border-box,border-box,border-box}.app-sidebar{color:var(--ink);-webkit-backdrop-filter:blur(28px)saturate(145%);backdrop-filter:blur(28px)saturate(145%);background:#f7fbfaa3;border-right:1px solid #ffffffc7;box-shadow:14px 0 42px #364c5414,inset -1px 0 #53686f14}.sidebar-brand{border-bottom-color:var(--line)}.sidebar-brand img{box-shadow:0 8px 24px #684c2a2e}.sidebar-brand small,.sidebar-foot small{color:var(--muted)}.sidebar-nav button{color:#536675;transition:color .18s,background-color .18s,box-shadow .18s;position:relative}.sidebar-nav button:hover{color:var(--ink);background:#ffffff7a}.sidebar-nav button.active{color:var(--ink);background:#ffffffc2;box-shadow:0 9px 24px #3b505817,inset 0 0 0 1px #ffffffeb}.sidebar-nav button.active:before{content:"";background:var(--bronze);border-radius:3px;width:3px;height:20px;position:absolute;left:0}.sidebar-nav button.active svg{color:var(--bronze-deep)}.sidebar-nav b{color:#4c331b;background:#edcf9d}.sidebar-foot{border-top-color:var(--line)}.sidebar-foot button,.mobile-close{color:#60717d}.sidebar-foot button:hover{color:var(--ink);background:#ffffff9e}.user-avatar{color:#533719;background:linear-gradient(145deg,#f2d6a9,#dfae6c);box-shadow:0 8px 20px #8b5c2b26}.workspace-header{-webkit-backdrop-filter:blur(26px)saturate(140%);backdrop-filter:blur(26px)saturate(140%);background:#f7fbfa8f;border-bottom-color:#ffffffb8;box-shadow:0 12px 34px #334c540f}.workspace-header:after{background:linear-gradient(90deg, var(--bronze), #b47d3e26);height:2px}.workspace-header p{color:#5d6e7a}.branch-control select,.header-logout,.menu-button,.notification-button{-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#ffffffa3;border-color:#0000;box-shadow:0 8px 24px #31485012,inset 0 0 0 1px #ffffffd9}.notification-button b{border-color:#f4f8f6}.panel,.calendar-shell,.page-intro,.report-toolbar,.people-tabs,.today-attendance-rail,.attendance-summary,.local-test-toolbar{box-shadow:var(--shadow);-webkit-backdrop-filter:blur(22px)saturate(135%);backdrop-filter:blur(22px)saturate(135%);background:#ffffff9e}.panel-head,.calendar-heading,.profile-header,.editor-header{border-bottom-color:var(--line)}.panel-head>svg{color:var(--bronze-deep)}.today-attendance-rail{border:0}.today-attendance-rail>div{border-right-color:var(--line);background:#ffffff38}.page-intro,.report-toolbar{border:0}.metric-rail,.journal-summary,.payroll-summary,.report-metrics,.availability-manager-head,.booking-admin-head,.family-attendance-head,.people-hero{color:var(--ink);box-shadow:var(--shadow);-webkit-backdrop-filter:blur(24px)saturate(140%);backdrop-filter:blur(24px)saturate(140%);background:#ffffff8f}.metric-rail article,.journal-summary article,.payroll-summary article,.report-metrics article{border-right-color:var(--line);background:#ffffff29}.metric-rail span,.metric-rail small,.journal-summary span,.payroll-summary span,.report-metrics span,.report-metrics small{color:var(--muted)}.metric-rail strong,.journal-summary strong,.payroll-summary strong,.report-metrics strong{color:var(--ink)}.journal-summary svg,.payroll-summary svg{color:var(--bronze-deep)}.report-metrics article.warning strong{color:var(--warning)}.report-metrics article.danger strong{color:var(--danger)}.availability-manager-head p,.booking-admin-head p,.family-attendance-head p,.people-hero p,.family-attendance-head label{color:var(--muted)}.availability-manager-head>svg,.booking-admin-head>svg{color:var(--bronze-deep)}.people-hero-stats{background:#ffffff57;border-color:#ffffffc2;box-shadow:inset 0 0 0 1px #455b6314}.people-hero-stats span{color:var(--muted);background:#ffffff40}.people-hero-stats b{color:var(--bronze-deep)}.attendance-student-name{background:#ffffff70;border-color:#ffffffd1;box-shadow:inset 0 0 0 1px #4a606814}.attendance-student-name span{color:var(--muted)}.attendance-student-name strong{color:var(--ink)}.calendar-context{color:var(--ink);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#e5efef8a;border-bottom:1px solid #ffffffb8}.calendar-facts span{color:var(--muted);border-left-color:var(--line)}.calendar-facts strong{color:var(--ink)}.calendar-filters,.operations-course-detail,.booking-change-editor,.journal-form-actions,.editor-actions,.profile-section-head,.qualification-editor>div:first-child{-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#f4f9f894}.calendar-filters{box-shadow:0 10px 24px #364c540f}.path-schedule-x{--sx-color-primary:#2f7188;--sx-color-on-primary:#fff;--sx-color-primary-container:#dcecee;--sx-color-on-primary-container:#244755;--sx-color-surface:#fbfdfcb8;--sx-color-surface-container:#f1f7f6bf;--sx-color-surface-container-high:#e8f1f1d1;--sx-color-on-surface:#20324c;--sx-color-outline:#a7b6b8;--sx-color-outline-variant:#6f878b3d;background:#ffffff57}.operations-app input:not([type=checkbox]):not([type=radio]),.operations-app select,.operations-app textarea,.operations-app .secondary-button,.operations-app .text-button,.operations-app .week-switcher,.operations-app .report-tabs{background:#ffffffa8;border-color:#0000;box-shadow:inset 0 0 0 1px #5168702e}.operations-app input:not([type=checkbox]):not([type=radio]):focus,.operations-app select:focus,.operations-app textarea:focus{outline:0;box-shadow:0 0 0 3px #2f718824,inset 0 0 0 1px #2f718880}.operations-app .secondary-button:hover,.operations-app .text-button:hover,.operations-app .week-switcher button:hover{background:#ffffffe6}.operations-app .primary-button,.operations-app .week-switcher .today-button,.operations-app .report-tabs button.active,.operations-app .people-tabs button.active,.operations-app .change-action-tabs button.active,.operations-app .local-test-toolbar button.active{color:#fff;background:#29425d;box-shadow:0 9px 22px #29425d2e}.operations-app .primary-button:hover,.operations-app .week-switcher .today-button:hover{background:#37546e}.operations-app .people-tabs,.operations-app .report-tabs{border:0}.journal-task-list button,.directory-list>button,.profile-metrics article,.profile-columns>div,.profile-columns>.profile-section,.attendance-summary article,.journal-detail-grid article,.plan-reference-grid article,.trial-plan-grid article{background:#ffffff5c}.journal-task-list button:hover,.journal-task-list button.active,.directory-list>button.active{background:#ddedefa8}.journal-task-list button.active,.directory-list>button.active{box-shadow:inset 3px 0 #4d8ca2}.profile-metrics,.profile-columns,.journal-detail-grid,.attendance-summary{background:var(--line)}.mobile-nav{-webkit-backdrop-filter:blur(24px)saturate(140%);backdrop-filter:blur(24px)saturate(140%);background:#f7fbfab3;border-top-color:#ffffffc7;box-shadow:0 -12px 32px #344a5214}.mobile-nav button.active{color:#29425d}.mobile-nav button.active svg{color:var(--bronze-deep)}.local-test-toolbar{border:0}@supports not ((-webkit-backdrop-filter:blur(1px)) or (backdrop-filter:blur(1px))){.app-sidebar,.workspace-header,.panel,.calendar-shell,.page-intro,.report-toolbar,.people-tabs,.today-attendance-rail,.metric-rail,.journal-summary,.payroll-summary,.report-metrics,.availability-manager-head,.booking-admin-head,.family-attendance-head,.people-hero,.mobile-nav,.local-test-toolbar{background:#f7faf9}}@media (max-width:780px){.local-test-toolbar{scrollbar-width:none;flex-wrap:nowrap;justify-content:flex-start;overflow-x:auto}.local-test-toolbar::-webkit-scrollbar{display:none}.local-test-toolbar button{white-space:nowrap;flex:none;min-width:44px}}.panel-head:not(:has(p)){min-height:68px;padding-block:14px}.calendar-heading{min-height:76px;padding-block:18px}.availability-manager-head,.booking-admin-head,.family-attendance-head{min-height:86px;padding-block:18px}.family-progress-head{min-height:96px}.people-hero{justify-content:flex-end;min-height:92px;padding-block:18px}.editor-header{min-height:78px;padding-block:16px}.metric-rail article,.report-metrics article{min-height:104px}.metric-rail article>strong:last-child,.report-metrics article>strong:last-child{margin-bottom:0}.today-attendance-rail>div{min-height:82px}.report-toolbar{justify-content:flex-end;min-height:0;padding:14px 16px}.report-overview-grid>:only-child{grid-column:1/-1}.calendar-facts span:only-child{display:block}.operations-app :is(p,dd,input,select,textarea,button:not(.sx__chevron-wrapper)),.auth-page :is(p,input,select,textarea,button),.access-page :is(p,input,select,textarea,button),.setup-page :is(p,input,select,textarea,button),.operations-app :is(label,legend),.operations-app label>span,.auth-page :is(label,legend),.access-page :is(label,legend),.setup-page :is(label,legend){font-size:var(--type-control)}.operations-app :is(small,time,dt,em,.status,.attendance-state),.auth-page :is(small,time,.eyebrow,.step-label),.access-page :is(small,time,.eyebrow,.step-label),.setup-page :is(small,time,.eyebrow,.step-label){font-size:var(--type-meta)}.operations-app article>span:not(.row-icon),.operations-app .calendar-facts span,.operations-app .attendance-rule-notes span,.operations-app .settlement-hours span,.operations-app .review-flags label,.operations-app .selection-placeholder span,.operations-app .path-calendar-event-head strong,.operations-app .path-calendar-event time,.operations-app .path-calendar-event small{font-size:var(--type-control)}.operations-app .path-calendar-event-head span{font-size:var(--type-meta)}.operations-app .path-schedule-x :is(.sx__week-grid__hour-text,.sx__week-grid__day-name,.sx__week-grid__date-number,.sx__view-selection-label,.sx__date-input-label,.sx__button:not(.sx__chevron-wrapper),.sx__date-input,.sx__view-selection-selected-item){font-size:var(--type-control)}.operations-app .sidebar-brand small,.operations-app .sidebar-foot small,.operations-app .mobile-nav button,.operations-app .local-test-toolbar :is(span,button){font-size:var(--type-meta)}.operations-app :is(.course-row,.ledger-row,.profile-course-list,.guardian-list,.admin-progress-list,.recent-journal-strip,.journal-detail-grid,.booking-work-main,.booking-audit-list,.notification-copy,.renewal-card,.settlement-list) strong{font-size:var(--type-control)}
