:root{color:#e8eef5;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;--bg:#101418;--surface:#171d23;--surface-2:#202832;--surface-3:#26313c;--line:#334250;--text:#e8eef5;--muted:#95a5b7;--green:#2fc282;--blue:#3795db;--red:#ef5b66;--purple:#8c72e6;--yellow:#e5b94f;--gray:#7d8792;background:#101418;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}:root[data-theme=light]{color:#17202a;--bg:#edf2f6;--surface:#fff;--surface-2:#f5f8fb;--surface-3:#edf2f6;--line:#d6e0ea;--text:#17202a;--muted:#637487;background:#edf2f6}*{box-sizing:border-box}html{scroll-behavior:smooth}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}body{background:var(--bg);min-width:320px;margin:0}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled{cursor:wait;opacity:.68}.app-shell{min-height:100vh;color:var(--text);grid-template-columns:252px minmax(0,1fr);display:grid}.sidebar{border-right:1px solid var(--line);background:color-mix(in srgb, var(--surface) 88%, #000 12%);height:100vh;padding:20px;position:sticky;top:0}.brand{align-items:center;gap:12px;margin-bottom:28px;display:flex}.brand-mark{color:#fff;background:linear-gradient(135deg,#2377c9,#2fc282);border-radius:8px;place-items:center;width:44px;height:44px;display:grid}.brand strong{color:var(--muted);font-size:17px;line-height:1.05;display:block}.brand span{color:var(--text);margin-top:3px;font-size:22px;font-weight:900;line-height:1.05;display:block}.resource-cell span,.metric span,.suggestion-card span,.fleet-row small{color:var(--muted);font-size:13px}.nav-list{gap:8px;display:grid}.nav-list button,.segmented button,.icon-button,.primary,.switch,.suggestion-card button{border:1px solid var(--line);background:var(--surface-2);color:var(--text);border-radius:8px}.nav-list button{text-align:left;align-items:center;gap:10px;min-height:42px;padding:10px 12px;display:flex}.nav-list .active{border-color:color-mix(in srgb, var(--blue) 58%, var(--line));background:color-mix(in srgb, var(--blue) 18%, var(--surface-2))}.side-panel{border:1px solid var(--line);background:var(--surface-2);border-radius:8px;margin-top:22px;padding:14px}.panel-title,.eyebrow{color:var(--muted);text-transform:uppercase;letter-spacing:0;font-size:12px;font-weight:800}.signal{color:var(--green);align-items:center;gap:8px;margin-top:10px;font-size:14px;display:flex}.workspace{min-width:0;padding:24px}.topbar,.board-toolbar,.panel-header,.resource-page-header,.planner-hero,.drawer-header,.card-line{justify-content:space-between;align-items:center;gap:16px;display:flex}.topbar{margin-bottom:18px}.topbar h1{letter-spacing:0;margin:2px 0 0;font-size:32px;line-height:1.1}.top-actions{align-items:center;gap:10px;margin-left:auto;display:flex}.user-menu{margin-left:auto;position:relative}.user-button{border:1px solid color-mix(in srgb, var(--blue) 58%, var(--line));background:color-mix(in srgb, var(--blue) 22%, var(--surface));width:40px;height:40px;color:var(--text);border-radius:999px;place-items:center;font-weight:900;display:grid}.user-dropdown{z-index:20;border:1px solid var(--line);background:var(--surface);border-radius:8px;gap:4px;min-width:190px;padding:8px;display:grid;position:absolute;top:calc(100% + 8px);right:0;box-shadow:0 18px 44px #00000052}.user-dropdown strong{color:var(--muted);padding:8px 10px;font-size:12px}.user-dropdown button{text-align:left;min-height:36px;color:var(--text);background:0 0;border:0;border-radius:6px;padding:8px 10px}.user-dropdown button:hover{background:var(--surface-2)}.user-theme-toggle{grid-template-columns:1fr auto auto;align-items:center;gap:10px;width:100%;display:grid}.user-theme-toggle em{color:var(--muted);font-size:12px;font-style:normal}.user-theme-switch{border:1px solid var(--line);background:var(--surface-2);border-radius:999px;align-items:center;width:34px;height:20px;padding:2px;display:inline-flex}.user-theme-switch span{background:var(--muted);border-radius:999px;width:14px;height:14px;transition:transform .16s,background .16s}.user-theme-switch.on{background:color-mix(in srgb, var(--blue) 20%, var(--surface-2));border-color:color-mix(in srgb, var(--blue) 52%, var(--line))}.user-theme-switch.on span{background:var(--blue);transform:translate(14px)}.primary{color:#fff;background:#2377c9;border-color:#4f98d6;justify-content:center;align-items:center;gap:8px;min-height:40px;padding:10px 14px;font-weight:800;display:inline-flex}.icon-button{place-items:center;width:40px;height:40px;display:inline-grid}.board-toolbar{border:1px solid var(--line);background:var(--surface);border-radius:8px;flex-wrap:wrap;margin-bottom:12px;padding:10px}.toolbar-spacer{flex:auto}.segmented{border:1px solid var(--line);background:var(--surface-2);border-radius:8px;padding:4px;display:inline-flex}.segmented button{text-transform:capitalize;color:var(--muted);background:0 0;border:0;padding:8px 13px}.segmented .selected{background:var(--surface-3);color:var(--text)}input[type=date]{height:40px;color:var(--text);background:var(--surface-2);border:1px solid var(--line);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;border-radius:8px;padding:0 12px}:root[data-theme=light] input[type=date],:root[data-theme=light] input[type=datetime-local]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}:root[data-theme=light] input[type=date]::-webkit-calendar-picker-indicator{filter:none;opacity:.9}:root[data-theme=light] input[type=datetime-local]::-webkit-calendar-picker-indicator{filter:none;opacity:.9}.switch{align-items:center;gap:8px;height:40px;padding:0 12px;display:inline-flex}.conflict{z-index:20;border:1px solid color-mix(in srgb, var(--red) 48%, var(--line));max-width:min(520px,100vw - 32px);color:var(--red);background:color-mix(in srgb, var(--red) 10%, var(--surface));text-align:left;border-radius:8px;align-items:center;gap:8px;padding:11px 13px;display:flex;position:fixed;top:18px;right:18px;box-shadow:0 18px 44px #00000047}.dispatch-board{border:1px solid var(--line);background:var(--surface);border-radius:8px;grid-template-columns:240px minmax(0,1fr);display:grid;overflow:hidden}.resource-column{border-right:1px solid var(--line);background:var(--surface);z-index:2}.resource-cell,.lane{height:76px}.corner-cell{height:46px;color:var(--muted);text-transform:uppercase;align-items:center;padding:0 14px;font-size:13px;font-weight:800;display:flex}.resource-cell{border-top:1px solid var(--line);grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px;padding:0 14px;display:grid}.resource-cell-main{gap:4px;min-width:0;display:grid}.resource-cell-main strong,.resource-cell-main span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.resource-send-button{border:1px solid color-mix(in srgb, var(--blue) 48%, var(--line));background:color-mix(in srgb, var(--blue) 14%, var(--surface));width:34px;height:34px;color:var(--blue);border-radius:8px;place-items:center;display:inline-grid}.resource-send-button:hover{background:color-mix(in srgb, var(--blue) 24%, var(--surface))}.resource-send-button.sent{border-color:color-mix(in srgb, var(--green) 58%, var(--line));background:color-mix(in srgb, var(--green) 14%, var(--surface-2));color:var(--green)}.resource-send-button.sending{opacity:.72}.resource-send-actions{flex-shrink:0;gap:6px;display:flex}.timeline-scroll{overflow:auto}.timeline{position:relative}.time-header{z-index:1;grid-auto-flow:column;grid-auto-columns:var(--hour-width,86px);background:var(--surface);border-bottom:1px solid var(--line);height:46px;display:grid;position:sticky;top:0}.hour-cell{border-right:1px solid var(--line);color:var(--muted);align-items:center;padding-left:10px;font-size:12px;font-weight:700;display:flex}.lane{border-bottom:1px solid var(--line);background-image:repeating-linear-gradient(to right, transparent 0, transparent calc(var(--hour-width,86px) - 1px), color-mix(in srgb, var(--line) 70%, transparent) calc(var(--hour-width,86px) - 1px), color-mix(in srgb, var(--line) 70%, transparent) var(--hour-width,86px));position:relative}.available-slot{background:color-mix(in srgb, var(--blue) 16%, transparent);border:1px dashed color-mix(in srgb, var(--blue) 46%, transparent);border-radius:6px;position:absolute;top:10px;bottom:10px}.available-slot.blocked{background:color-mix(in srgb, var(--red) 20%, transparent);border-color:color-mix(in srgb, var(--red) 55%, transparent)}.lesson-block{-webkit-user-select:none;user-select:none;touch-action:none;border:1px solid #ffffff38;border-radius:8px;min-height:54px;padding:8px 11px 8px 32px;transition:left .12s,width .12s,transform .16s,box-shadow .16s;position:absolute;top:11px;overflow:hidden;box-shadow:0 18px 34px #0000003d}.lesson-block:hover{transform:translateY(-2px);box-shadow:0 24px 42px #00000052}.lesson-grip{opacity:.8;position:absolute;top:10px;left:8px}.resize-handle{z-index:3;cursor:ew-resize;width:10px;position:absolute;top:0;bottom:0}.resize-handle.left{left:0}.resize-handle.right{right:0}.resize-handle:hover{background:#ffffff2e}.lesson-block strong,.lesson-block span{white-space:nowrap;text-overflow:ellipsis;display:block;overflow:hidden}.lesson-block strong{font-size:13px}.lesson-block span{opacity:.9;margin-top:4px;font-size:12px}.lesson-block.road,.lesson-block.highway,.lesson-block.examprep{color:#fff;background:linear-gradient(135deg,#1e6fb8,#2d9adf)}.lesson-block.backups{color:#fff;background:linear-gradient(135deg,#6c55d9,#9a76ea)}.lesson-block.yard{color:#06251a;background:linear-gradient(135deg,#239b68,#36ca88)}.lesson-block.roadtest{color:#30220a;background:linear-gradient(135deg,#d7a936,#f1d06d)}.lesson-block.maintenance-block{color:#111827;background:linear-gradient(135deg,#6b7280,#9ca3af)}.lesson-block.exam-block{color:#30220a;background:linear-gradient(135deg,#d7a936,#f1d06d)}.lesson-block.conflict{z-index:4;text-align:left;color:#fff;background:linear-gradient(135deg,#a83a44,#ef5b66);gap:0;max-width:none;padding:8px 11px 8px 32px;display:block;position:absolute;right:auto}.lesson-block.exception:after{content:"";background:color-mix(in srgb, var(--yellow) 90%, white);border-radius:999px;width:7px;height:7px;position:absolute;top:7px;right:7px;box-shadow:0 0 0 2px #0003}.dashboard-grid{grid-template-columns:repeat(5,minmax(140px,1fr));gap:12px;display:grid}.metric{border:1px solid var(--line);background:var(--surface);border-radius:8px;min-height:118px;padding:16px}.metric-icon{border-radius:8px;place-items:center;width:34px;height:34px;margin-bottom:15px;display:grid}.metric svg{width:18px;height:18px}.metric strong{margin-top:6px;font-size:28px;line-height:1;display:block}.metric.blue .metric-icon{background:color-mix(in srgb, var(--blue) 20%, transparent);color:var(--blue)}.metric.green .metric-icon{background:color-mix(in srgb, var(--green) 20%, transparent);color:var(--green)}.metric.purple .metric-icon{background:color-mix(in srgb, var(--purple) 20%, transparent);color:var(--purple)}.metric.yellow .metric-icon{background:color-mix(in srgb, var(--yellow) 22%, transparent);color:var(--yellow)}.metric.red .metric-icon{background:color-mix(in srgb, var(--red) 20%, transparent);color:var(--red)}.wide-panel{grid-column:1/-1}.ops-panel,.resource-page,.planner-page,.reports-page{border:1px solid var(--line);background:var(--surface);border-radius:8px;padding:18px}.ops-panel h2,.resource-page h2,.planner-page h2,.reports-page h2{letter-spacing:0;margin:0;font-size:22px}.resource-page-header{margin-bottom:14px}.resource-page-header.compact{margin-top:14px}.settings-tabs{border:1px solid var(--line);background:var(--surface-2);border-radius:8px;gap:4px;margin-bottom:14px;padding:4px;display:inline-flex}.settings-tabs button{min-height:36px;color:var(--muted);background:0 0;border:0;border-radius:6px;padding:8px 12px;font-weight:800}.settings-tabs button.selected{background:var(--surface-3);color:var(--text)}.settings-grid{grid-template-columns:repeat(2,minmax(180px,1fr));gap:12px;display:grid}.settings-card{gap:12px;display:grid}.resource-actions{align-items:center;gap:10px;display:flex}.resource-page p,.planner-page p,.reports-page p{color:var(--muted);margin:4px 0 0}.resource-extra-controls{margin-bottom:14px}.search-box{border:1px solid var(--line);background:var(--surface-2);min-height:42px;color:var(--muted);border-radius:8px;align-items:center;gap:8px;margin-bottom:14px;padding:0 12px;display:flex}.search-box input{width:100%;color:var(--text);background:0 0;border:0;outline:0}.resource-grid{grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:12px;display:grid}.resource-grid.list-view{grid-template-columns:1fr}.resource-grid.list-view .resource-card{grid-template-columns:minmax(180px,1fr) minmax(220px,1.2fr) minmax(220px,1.6fr) auto;align-items:center;gap:12px;display:grid}.resource-grid.list-view .resource-card span,.resource-grid.list-view .resource-card p{margin:0}.resource-card,.empty-state{border:1px solid var(--line);background:var(--surface-2);border-radius:8px;padding:14px}.resource-card strong,.resource-card span,.resource-card p{display:block}.resource-card span{color:var(--muted);margin-top:6px}.resource-card p{margin-top:10px;font-size:13px}.empty-state{color:var(--muted)}.secondary-action{border:1px solid var(--line);background:var(--surface-3);min-height:34px;color:var(--text);border-radius:8px;justify-content:center;align-items:center;gap:7px;margin-top:12px;padding:7px 10px;font-weight:700;display:inline-flex}.resource-grid.list-view .secondary-action{margin-top:0}.tag{background:var(--surface-3);min-height:24px;color:var(--muted);border-radius:999px;align-items:center;padding:0 8px;font-size:12px;display:inline-flex}.planner-hero{border-bottom:1px solid var(--line);margin-bottom:14px;padding-bottom:14px}.suggestion-list{gap:10px;display:grid}.suggestion-card{border:1px solid var(--line);background:var(--surface-2);border-radius:8px;grid-template-columns:minmax(0,1fr) 56px 124px;align-items:center;gap:12px;padding:14px;display:grid}.suggestion-card strong,.suggestion-card span{display:block}.suggestion-card b{color:var(--green);text-align:right}.suggestion-card button{border-color:color-mix(in srgb, var(--green) 50%, var(--line));background:color-mix(in srgb, var(--green) 16%, var(--surface));justify-content:center;align-items:center;gap:7px;min-height:36px;font-weight:800;display:inline-flex}.fleet-row{border-top:1px solid var(--line);grid-template-columns:18px 100px 88px minmax(0,1fr);align-items:center;gap:10px;padding:12px 0;display:grid}.dot{background:var(--green);border-radius:999px;width:10px;height:10px}.dot.maintenance{background:var(--gray)}.dot.roadtest{background:var(--yellow)}.dot.outofservice{background:var(--red)}.drawer{z-index:10;border-left:1px solid var(--line);background:var(--surface);width:min(420px,100vw);height:100vh;padding:20px;position:fixed;top:0;right:0;overflow:auto;box-shadow:-24px 0 60px #00000057}.drawer-header{align-items:flex-start;margin-bottom:18px}.drawer-header h2{margin:4px 0 0;font-size:24px}.modal-backdrop{z-index:30;background:#03060a94;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.confirm-modal{border:1px solid color-mix(in srgb, var(--yellow) 46%, var(--line));background:var(--surface);border-radius:8px;grid-template-columns:44px minmax(0,1fr);gap:16px;width:min(520px,100%);padding:20px;display:grid;box-shadow:0 24px 70px #0000006b}.confirm-modal h2{margin:4px 0 8px;font-size:22px}.confirm-modal p{color:var(--muted);margin:0;line-height:1.45}.confirm-modal .confirm-question{color:var(--text);margin-top:10px;font-weight:800}.password-modal{width:min(460px,100%)}.schedule-email-modal{border:1px solid var(--line);background:var(--surface);border-radius:8px;gap:14px;width:min(680px,100%);padding:20px;display:grid;box-shadow:0 24px 70px #0000006b}.schedule-email-recipient{border:1px solid var(--line);background:var(--surface-2);min-height:38px;color:var(--muted);border-radius:8px;align-items:center;gap:9px;padding:8px 10px;font-weight:800;display:flex}.schedule-email-body{min-height:260px;line-height:1.45}.password-fields{gap:10px;margin-top:10px;display:grid}.modal-icon{width:42px;height:42px;color:var(--yellow);background:color-mix(in srgb, var(--yellow) 14%, transparent);border-radius:8px;place-items:center;display:grid}.modal-actions{grid-column:1/-1;justify-content:flex-end;gap:10px;padding-top:4px;display:flex}.danger-action{border:1px solid color-mix(in srgb, var(--red) 55%, var(--line));background:color-mix(in srgb, var(--red) 18%, var(--surface));min-height:38px;color:var(--text);border-radius:8px;justify-content:center;align-items:center;gap:7px;padding:8px 12px;font-weight:800;display:inline-flex}.drawer-actions .secondary-action,.drawer-actions .danger-action{width:100%;min-height:42px;margin-top:0}.lesson-reminder-panel{gap:8px;display:grid}.reminder-status{border:1px solid var(--line);background:var(--surface-2);min-height:38px;color:var(--muted);border-radius:8px;align-items:center;gap:8px;padding:8px 10px;font-weight:800;display:flex}.reminder-status.sent{border-color:color-mix(in srgb, var(--green) 44%, var(--line));color:var(--green)}.reminder-status.failed{border-color:color-mix(in srgb, var(--red) 44%, var(--line));color:var(--red)}.reminder-log-list{gap:6px;display:grid}.reminder-log-list button{border:1px solid color-mix(in srgb, var(--green) 36%, var(--line));background:color-mix(in srgb, var(--green) 10%, var(--surface-2));min-height:36px;color:var(--text);text-align:left;border-radius:8px;grid-template-columns:84px minmax(0,1fr) 20px;align-items:center;gap:8px;padding:7px 9px;display:grid}.reminder-log-list button.failed{border-color:color-mix(in srgb, var(--red) 40%, var(--line));background:color-mix(in srgb, var(--red) 10%, var(--surface-2))}.reminder-log-list span{color:var(--muted);font-size:12px}.reminder-log-list strong{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:13px;overflow:hidden}.reminder-preview-frame{border:1px solid var(--line);background:#f8fafc;border-radius:8px;max-height:58vh;overflow:auto}.reminder-preview-frame>*{margin:0 auto}.reminder-error{border:1px solid color-mix(in srgb, var(--red) 50%, var(--line));background:color-mix(in srgb, var(--red) 12%, var(--surface));color:var(--red);border-radius:8px;padding:9px 10px;font-weight:800}.quick-form{gap:10px;display:grid}.student-picker,.availability-editor,.availability-summary-panel{border:1px solid var(--line);background:var(--surface-2);border-radius:8px;gap:8px;padding:10px;display:grid}.availability-summary-table{gap:6px;display:grid}.availability-summary-row{border-left:3px solid var(--blue);background:var(--surface);border-radius:8px;grid-template-columns:90px minmax(0,1fr) auto;align-items:center;gap:8px;min-height:34px;padding:7px 9px;display:grid}.availability-summary-row.blocked{border-left-color:var(--red)}.availability-summary-row span,.availability-summary-row small{color:var(--muted)}.availability-modal{border:1px solid var(--line);background:var(--surface);border-radius:8px;grid-template-rows:auto auto minmax(0,1fr) auto;gap:12px;width:min(860px,100%);max-height:min(780px,100vh - 36px);padding:18px;display:grid;box-shadow:0 24px 70px #0000006b}.availability-modal .availability-list{min-height:0;overflow:auto}.availability-actions{grid-template-columns:1fr 1fr;gap:8px;display:grid}.availability-list{gap:8px;display:grid}.availability-row{border-left:3px solid var(--blue);background:var(--surface);border-radius:8px;grid-template-columns:minmax(154px,.8fr) minmax(0,1.4fr) 38px;align-items:center;gap:8px;padding:10px;display:grid}.availability-row.blocked{border-left-color:var(--red)}.availability-row.daily{background:color-mix(in srgb, var(--blue) 8%, var(--surface))}.availability-row.blocked.daily{background:color-mix(in srgb, var(--red) 8%, var(--surface))}.availability-kind{gap:7px;min-width:0;display:grid}.availability-mode{border:1px solid var(--line);background:var(--surface-2);border-radius:8px;grid-template-columns:1fr 1fr;gap:4px;padding:3px;display:grid}.availability-mode button{min-height:28px;color:var(--muted);background:0 0;border:0;border-radius:6px;font-size:12px;font-weight:800}.availability-mode button.selected{background:var(--surface-3);color:var(--text)}.availability-date-range,.availability-time-range{grid-template-columns:1fr 1fr;gap:8px;min-width:0;display:grid}.availability-date-range label,.availability-time-range label{gap:4px;min-width:0;display:grid}.availability-date-range span,.availability-time-range span{color:var(--muted);text-transform:uppercase;font-size:11px;font-weight:800}.danger-inline{border-color:color-mix(in srgb, var(--red) 45%, var(--line));background:color-mix(in srgb, var(--red) 14%, var(--surface))}.picker-row{grid-template-columns:minmax(0,1fr) auto;gap:8px;display:grid}.selected-chips{flex-wrap:wrap;gap:6px;min-height:28px;display:flex}.selected-chips button{border:1px solid color-mix(in srgb, var(--blue) 44%, var(--line));background:color-mix(in srgb, var(--blue) 15%, var(--surface));min-height:28px;color:var(--text);border-radius:999px;align-items:center;gap:5px;padding:4px 8px;display:inline-flex}.muted-text{color:var(--muted);font-size:13px}.compact-check-list{gap:5px;max-height:190px;display:grid;overflow:auto}.compact-check-list span{color:var(--muted);margin-left:auto;font-size:12px}.student-grid-modal{border:1px solid var(--line);background:var(--surface);border-radius:8px;grid-template-rows:auto auto minmax(0,1fr) auto;gap:12px;width:min(820px,100%);max-height:min(760px,100vh - 36px);padding:18px;display:grid;box-shadow:0 24px 70px #0000006b}.report-modal{border:1px solid var(--line);background:var(--surface);border-radius:8px;grid-template-rows:auto minmax(0,1fr);gap:12px;width:min(1180px,100%);max-height:min(820px,100vh - 36px);padding:18px;display:grid;box-shadow:0 24px 70px #0000006b}.report-modal .reports-page{min-height:0;overflow:hidden}.autoplanner-modal{border:1px solid var(--line);background:var(--surface);border-radius:8px;width:min(1680px,100vw - 36px);min-width:min(1120px,100vw - 36px);max-height:min(860px,100vh - 36px);padding:18px;overflow:auto;box-shadow:0 24px 70px #0000006b}.planner-summary{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:14px;display:flex}.planner-summary span{border:1px solid var(--line);background:var(--surface-2);min-height:32px;color:var(--muted);border-radius:8px;align-items:center;gap:7px;padding:6px 10px;font-size:12px;font-weight:800;display:inline-flex}.planner-layout{grid-template-columns:300px minmax(430px,.85fr) minmax(680px,1.35fr);align-items:start;gap:14px;display:grid}.planner-column{border:1px solid var(--line);background:var(--surface-2);border-radius:8px;align-content:start;gap:12px;min-width:0;padding:14px;display:grid}.planner-column h3{margin:0;font-size:14px}.planner-section-title{border-bottom:1px solid var(--line);grid-template-columns:30px minmax(0,1fr);align-items:center;gap:10px;padding-bottom:10px;display:grid}.planner-section-title.compact{margin-top:6px}.planner-section-title.action-title{grid-template-columns:30px minmax(0,1fr) auto}.planner-section-title b{background:color-mix(in srgb, var(--blue) 20%, var(--surface));width:30px;height:30px;color:var(--blue);border-radius:8px;place-items:center;font-size:13px;display:grid}.planner-section-title span{color:var(--muted);margin-top:2px;font-size:12px;font-weight:700;display:block}.planner-list-header{justify-content:space-between;align-items:center;gap:8px;display:flex}.planner-list-header span{color:var(--muted);font-size:12px;font-weight:800}.planner-search{border:1px solid var(--line);background:var(--surface);min-height:36px;color:var(--muted);border-radius:8px;align-items:center;gap:7px;padding:0 10px;display:flex}.planner-search input{width:100%;min-width:0;color:var(--text);background:0 0;border:0;outline:0}.planner-check-list{gap:7px;max-height:190px;display:grid;overflow:auto}.planner-check-list.tall{max-height:360px}.planner-bulk-actions{grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:8px;display:grid}.planner-bulk-actions span{min-width:0;color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:12px;font-weight:800;overflow:hidden}.planner-bulk-actions .secondary-action{white-space:nowrap;margin-top:0}.planner-virtual-list{height:360px;max-height:360px;display:block;overflow:auto}.planner-virtual-spacer{min-height:100%;position:relative}.planner-virtual-option{height:51px;position:absolute;top:0;left:0;right:0}.planner-option{border:1px solid var(--line);background:var(--surface);border-radius:8px;grid-template-columns:18px minmax(0,1fr) auto;align-items:center;gap:7px;min-height:36px;padding:7px 8px;display:grid}.planner-option strong{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:13px;overflow:hidden}.planner-option span,.planner-option small{color:var(--muted);font-size:12px}.planner-option small{grid-column:2/-1}.planner-student-grid,.planner-preview-list,.planner-conflicts{gap:8px;display:grid}.planner-column.preview{min-width:0}.planner-preview-list{min-width:0;padding-bottom:2px;overflow-x:auto}.planner-student-grid{max-height:260px;padding-right:2px;overflow:auto}.planner-student-row{border:1px solid var(--line);background:var(--surface);border-radius:8px;align-items:center;gap:10px;padding:10px;display:flex}.planner-student-name{flex:145px;gap:3px;min-width:0;display:grid}.planner-student-row strong{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:13px;overflow:hidden}.planner-student-name span,.planner-mini-field span{color:var(--muted);font-size:11px;font-weight:800}.planner-mini-field{flex:0 0 112px;gap:4px;min-width:0;display:grid}.planner-mini-field.minutes{flex-basis:82px}.planner-mini-field .quick-input{width:100%;min-width:0}.planner-preview-row{border:1px solid var(--line);background:var(--surface);border-radius:8px;grid-template-columns:minmax(130px,1fr) minmax(170px,1fr) minmax(170px,1fr) minmax(120px,.9fr) minmax(92px,.6fr);align-items:center;gap:7px;min-width:680px;padding:8px;display:grid}.planner-preview-row.has-conflict{border-color:color-mix(in srgb, var(--red) 55%, var(--line))}.planner-empty-state{border:1px dashed var(--line);min-height:48px;color:var(--muted);background:color-mix(in srgb, var(--surface) 70%, transparent);border-radius:8px;place-items:center;padding:12px;font-size:13px;font-weight:800;display:grid}.icon-button.small{flex:0 0 32px;width:32px;height:32px}.planner-preview-row small,.planner-conflicts span{white-space:normal;overflow-wrap:anywhere;min-width:0;color:var(--red);grid-column:1/-1;font-weight:800;line-height:1.35}.student-grid-modal h2{margin:4px 0 0;font-size:24px}.student-grid-list{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:10px;display:grid;overflow:auto}.student-grid-item{border:1px solid var(--line);background:var(--surface-2);border-radius:8px;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:4px 8px;padding:12px;display:grid}.student-grid-item.selected{border-color:color-mix(in srgb, var(--blue) 55%, var(--line));background:color-mix(in srgb, var(--blue) 14%, var(--surface-2))}.student-grid-item strong,.student-grid-item span,.student-grid-item small{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.student-grid-item span,.student-grid-item small{color:var(--muted);grid-column:2}.report-toolbar{grid-template-columns:minmax(260px,1fr) auto auto 170px auto;align-items:center;gap:10px;margin-bottom:14px;display:grid}.report-toolbar .search-box{margin:0}.report-summary{grid-template-columns:repeat(2,minmax(160px,220px));gap:12px;margin-bottom:14px;display:grid}.report-table{border:1px solid var(--line);border-radius:8px;overflow:auto}.report-head,.report-row{grid-template-columns:130px 120px 110px minmax(220px,1.5fr) minmax(180px,1fr) 110px 70px;min-width:1060px;display:grid}.report-head{background:var(--surface-3);color:var(--muted);text-transform:uppercase;font-size:12px;font-weight:800;position:sticky;top:0}.report-head span,.report-row span,.report-row strong{border-right:1px solid var(--line);border-bottom:1px solid var(--line);padding:11px 12px}.report-row{background:var(--surface-2)}.report-row:nth-child(odd){background:var(--surface)}.full-width{width:100%}.full-width button{flex:1}.quick-input{border:1px solid var(--line);width:100%;min-width:0;min-height:38px;color:var(--text);background:var(--surface-2);resize:vertical;border-radius:8px;padding:8px 10px}.field-label{gap:5px;display:grid}.field-label span{color:var(--muted);font-size:12px;font-weight:800}.two-fields{grid-template-columns:1fr 1fr;gap:8px;display:grid}.check-row{color:var(--muted);align-items:center;gap:8px;font-size:13px;display:flex}.capability-grid{grid-template-columns:1fr 1fr;gap:5px;display:grid}.quick-submit{color:#fff;background:#2377c9;border:1px solid #4f98d6;border-radius:8px;justify-content:center;align-items:center;gap:7px;min-height:42px;font-weight:800;display:inline-flex}.landing-shell{color:#102033;background:radial-gradient(circle at 12% 12%,#2fc28238,#0000 30%),radial-gradient(circle at 88% 18%,#2377c933,#0000 28%),#f4f8fb;min-height:100vh;overflow-x:hidden}.landing-hero{color:#fff;background-position:50%;background-size:cover;grid-template-rows:auto 1fr;min-height:92vh;padding:24px clamp(18px,4vw,66px) clamp(34px,5vw,78px);display:grid;position:relative}.landing-hero:after{content:"";pointer-events:none;background:linear-gradient(#0000,#f4f8fb);height:120px;position:absolute;inset:auto 0 0}.landing-nav{z-index:2;justify-content:space-between;align-items:center;gap:18px;width:min(1240px,100%);margin:0 auto;display:flex;position:relative}.landing-brand,.landing-links,.landing-actions,.landing-proof,.landing-login-links,.landing-contact-actions{align-items:center;gap:12px;display:flex}.landing-brand span{color:#0e6f58;background:linear-gradient(135deg,#fff,#a7f4d1);border-radius:8px;place-items:center;width:42px;height:42px;display:grid;box-shadow:0 16px 42px #0000003d}.landing-brand strong{letter-spacing:0;font-size:22px}.landing-links a,.landing-login-links a,.landing-contact-actions a{color:inherit;font-weight:800;text-decoration:none}.landing-links a{color:#ffffffdb;border-radius:8px;padding:9px 10px}.landing-links a:hover{color:#fff;background:#ffffff1f}.landing-hero-grid{z-index:1;grid-template-columns:minmax(0,760px);justify-content:start;align-items:center;gap:clamp(28px,5vw,70px);width:min(1240px,100%);margin:0 auto;display:grid;position:relative}.landing-copy{padding:clamp(42px,9vh,100px) 0 60px}.landing-copy h1{letter-spacing:0;text-shadow:0 20px 70px #0000006b;margin:10px 0 16px;font-size:clamp(60px,10vw,138px);line-height:.84}.landing-copy p:not(.eyebrow){color:#ffffffe0;max-width:680px;margin:0;font-size:clamp(19px,2.15vw,26px);line-height:1.38}.landing-actions{margin-top:28px}.landing-primary,.landing-secondary{min-height:46px;color:inherit;border:0;border-radius:8px;justify-content:center;align-items:center;padding:0 18px;font-weight:900;text-decoration:none;display:inline-flex}.landing-primary{color:#071410;background:linear-gradient(135deg,#67f0ad,#2fc282);box-shadow:0 18px 48px #2fc28261}.landing-secondary{color:#fff;background:#ffffff1a;border:1px solid #ffffff57}.landing-login-links{color:#ffffffc7;justify-content:space-between;padding-top:2px;font-size:13px}.landing-section,.landing-contact{width:min(1240px,100% - 36px);margin:0 auto;padding:clamp(52px,7vw,94px) 0}.landing-section h2,.landing-contact h2{max-width:840px;margin:6px 0 0;font-size:clamp(36px,5vw,64px);line-height:.98}.landing-feature-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-top:32px;display:grid}.landing-feature-grid article{color:#fff;background:#ffffff14;border:1px solid #ffffff1f;border-radius:8px;min-height:210px;padding:20px}.landing-feature-grid svg{color:#67f0ad}.landing-feature-grid h3{margin:18px 0 8px;font-size:20px}.landing-feature-grid p{color:#ffffffb3;margin:0;line-height:1.5}.landing-device{-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#091018c7;border:1px solid #ffffff38;border-radius:8px;justify-self:end;width:min(720px,100%);overflow:hidden;box-shadow:0 36px 100px #00000070}.landing-device-bar,.landing-screen-toolbar{background:#ffffff0f;border-bottom:1px solid #ffffff1a;align-items:center;gap:8px;min-height:44px;padding:0 14px;display:flex}.landing-device-bar span,.landing-screen-toolbar i{background:#ef5b66;border-radius:999px;width:10px;height:10px}.landing-device-bar span:nth-child(2),.landing-screen-toolbar i:nth-child(2){background:#e5b94f}.landing-device-bar span:nth-child(3),.landing-screen-toolbar i:nth-child(3){background:#2fc282}.landing-device-bar strong,.landing-screen-toolbar strong{color:#ffffffc2;margin-left:8px;font-size:13px}.landing-timeline{padding:18px}.landing-time-head,.landing-time-row{border-bottom:1px solid #ffffff14;grid-template-columns:92px repeat(4,1fr);align-items:center;min-height:46px;display:grid}.landing-time-head{color:#ffffff94;font-size:12px;font-weight:900}.landing-time-row{position:relative}.landing-time-row strong{color:#fff;font-size:13px}.landing-lesson-pill{color:#06120f;border-radius:8px;grid-column:2/-1;align-content:center;min-height:34px;padding:5px 11px;display:grid;box-shadow:0 12px 32px #00000038}.landing-lesson-pill small{opacity:.72;font-weight:800}.landing-lesson-pill.blue{background:#7bc7ff}.landing-lesson-pill.green{background:#67f0ad}.landing-lesson-pill.yellow{background:#f7d66f}.landing-lesson-pill.red{background:#ff8b8b}.landing-showcase{grid-template-columns:1.05fr .95fr;gap:18px;margin-top:34px;display:grid}.landing-value-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-top:34px;display:grid}.landing-value-grid article{background:#fff;border:1px solid #d5e2eb;border-radius:8px;min-height:250px;padding:22px;box-shadow:0 20px 60px #1831481a}.landing-value-grid svg{color:#0e7b5f}.landing-value-grid h3{margin:18px 0 9px;font-size:22px}.landing-value-grid p{color:#5d6c78;margin:0;line-height:1.55}.landing-section-lead{color:#5d6c78;max-width:820px;margin:12px 0 0;font-size:18px;line-height:1.55}.landing-demo-section{width:min(1320px,100% - 28px)}.landing-demo-strengths{flex-wrap:wrap;gap:10px;margin-top:18px;display:flex}.landing-demo-strengths span{color:#173047;background:#fff;border:1px solid #cfe0eb;border-radius:8px;align-items:center;gap:8px;min-height:38px;padding:8px 12px;font-weight:900;display:inline-flex;box-shadow:0 12px 34px #18314814}.landing-demo-strengths svg{color:#0e7b5f}.landing-schedule-demo{color:#e8eef5;background:#101923;border:1px solid #ffffff38;border-radius:8px;justify-self:end;width:min(720px,100%);overflow:hidden;box-shadow:0 36px 100px #00000070}.landing-schedule-demo.wide{border-color:#d5e2eb;width:100%;margin-top:32px;box-shadow:0 26px 80px #1831482e}.landing-demo-top{background:linear-gradient(135deg,#172535,#113f45);border-bottom:1px solid #ffffff1a;justify-content:space-between;align-items:center;gap:14px;padding:14px;display:flex}.landing-demo-top>div:first-child{align-items:center;gap:10px;min-width:210px;display:flex}.landing-demo-top small{color:#9fb0c2;font-weight:700}.demo-dot{background:#2fc282;border-radius:999px;width:11px;height:11px;box-shadow:0 0 0 5px #2fc28229}.landing-demo-actions{flex-wrap:wrap;justify-content:flex-end;gap:7px;display:flex}.landing-demo-actions button,.landing-demo-form button:not(.quick-submit){color:#e8eef5;background:#ffffff14;border:1px solid #ffffff24;border-radius:8px;justify-content:center;align-items:center;gap:6px;min-height:34px;font-size:12px;font-weight:900;display:inline-flex}.landing-demo-actions button.active{color:#b9ffd9;background:#2fc28233;border-color:#67f0adad}.landing-demo-controls{background:#0c141d;border-bottom:1px solid #ffffff14;grid-template-columns:repeat(2,minmax(180px,1fr));gap:12px;padding:12px 14px;display:grid}.landing-demo-controls label{color:#95a5b7;gap:7px;font-size:12px;font-weight:900;display:grid}.landing-demo-controls span{justify-content:space-between;gap:10px;display:flex}.landing-demo-controls b{color:#67f0ad}.landing-demo-controls input{accent-color:#67f0ad;width:100%}.landing-demo-body{grid-template-columns:minmax(0,1fr) 280px;gap:0;display:grid}.landing-demo-board{min-width:0;padding:14px}.landing-demo-head{color:#95a5b7;text-transform:uppercase;grid-template-columns:138px repeat(5,minmax(76px,1fr));gap:8px;padding:0 0 8px;font-size:11px;font-weight:900;display:grid}.landing-demo-row{border-top:1px solid #ffffff14;grid-template-columns:138px minmax(0,1fr);gap:8px;min-height:72px;display:grid}.landing-demo-resource{align-content:center;gap:4px;display:grid}.landing-demo-resource small{color:#95a5b7}.landing-demo-lane{background:repeating-linear-gradient(90deg,#0000 0 calc(20% - 1px),#ffffff0f calc(20% - 1px) 20%);grid-template-columns:repeat(5,minmax(76px,1fr));align-items:center;gap:8px;transition:min-width .16s;display:grid}.landing-demo-lesson{color:#06120f;cursor:grab;-webkit-user-select:none;user-select:none;touch-action:none;border-radius:8px;align-content:center;gap:2px;min-height:46px;padding:7px 10px;transition:box-shadow .14s,transform .14s,outline-color .14s;display:grid;box-shadow:0 10px 28px #00000042}.landing-demo-lesson.dragging{cursor:grabbing;transform:translateY(-2px);box-shadow:0 18px 40px #00000057}.landing-demo-lesson.conflict{outline-offset:2px;outline:2px solid #ef5b66}.landing-demo-lesson.conflict:after{content:"Conflict";color:#fff;background:#ef5b66eb;border-radius:999px;justify-self:start;margin-top:3px;padding:2px 6px;font-size:10px;font-weight:900}.landing-demo-lesson span{opacity:.72;font-size:11px;font-weight:800}.landing-demo-lesson.blue{background:#7bc7ff}.landing-demo-lesson.green{background:#67f0ad}.landing-demo-lesson.yellow{background:#f7d66f}.landing-demo-lesson.red{background:#ff8b8b}.landing-demo-side{background:#ffffff0a;border-left:1px solid #ffffff14;min-width:0;padding:14px}.landing-demo-form,.landing-demo-json,.landing-conflict-list{gap:10px;display:grid}.landing-demo-form strong,.landing-demo-json strong,.landing-conflict-list strong{font-size:17px}.landing-demo-form label:not(.field-label){color:#95a5b7;gap:5px;font-size:12px;font-weight:900;display:grid}.landing-demo-form input:not(.quick-input),.landing-demo-form select:not(.quick-input){color:#e8eef5;background:#172535;border:1px solid #ffffff1f;border-radius:8px;min-width:0;min-height:34px;padding:6px 8px}.landing-demo-form input[type=range]:not(.quick-input){accent-color:#67f0ad;padding:0}.landing-slider-label{justify-content:space-between;align-items:center;gap:10px;display:flex}.landing-slider-label b{color:#67f0ad}.landing-mini-preview{color:#95a5b7;gap:7px;font-size:12px;font-weight:900;display:grid}.landing-mini-preview div{background:#091018;border:1px solid #ffffff1a;border-radius:8px;height:28px;padding:4px}.landing-mini-preview i{background:linear-gradient(90deg,#7bc7ff,#67f0ad);border-radius:6px;height:100%;transition:width .16s;display:block}.landing-demo-form button:not(.quick-submit){background:#2377c9;border-color:#4f98d6}.landing-demo-json pre{color:#a7f4d1;background:#091018;border:1px solid #ffffff1a;border-radius:8px;margin:0;padding:12px;font-size:12px;line-height:1.42;overflow:auto}.landing-conflict-list span{color:#ffd1d5;background:#ef5b661a;border:1px solid #ef5b6638;border-radius:8px;align-items:flex-start;gap:8px;padding:10px;font-size:13px;line-height:1.35;display:flex}.landing-screen{background:#0e1722;border:1px solid #d5e2eb;border-radius:8px;margin:0;overflow:hidden;box-shadow:0 28px 70px #1831482e}.landing-screen figcaption{color:#173047;background:#fff;align-items:center;gap:8px;padding:13px 14px;font-weight:900;display:flex}.landing-screen figcaption span{color:#0e7b5f;background:#e6f6ef;border-radius:8px;place-items:center;width:30px;height:30px;display:grid}.landing-screen-body{gap:10px;padding:16px;display:grid}.landing-screen-row{color:#ffffffb3;background:#ffffff0f;border:1px solid #ffffff14;border-radius:8px;grid-template-columns:repeat(4,minmax(0,1fr));align-items:center;gap:10px;min-height:46px;padding:0 12px;display:grid}.landing-screen-row strong{color:#fff}.landing-section-dark{color:#fff;background:linear-gradient(135deg,#0d1723,#143347 52%,#0f604d);width:100%;max-width:none;padding-left:max(18px,50vw - 620px);padding-right:max(18px,50vw - 620px)}.landing-analytics-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-top:30px;display:grid}.landing-kpi{background:#ffffff14;border:1px solid #ffffff24;border-radius:8px;gap:8px;padding:18px;display:grid}.landing-kpi svg{color:#67f0ad}.landing-kpi strong{font-size:36px;line-height:1}.landing-kpi span{color:#ffffffb8}.landing-docs{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:30px 0 18px;display:grid}.landing-doc-step{background:#fff;border:1px solid #d5e2eb;border-radius:8px;padding:20px}.landing-doc-step strong{color:#0e7b5f;margin-bottom:18px;font-size:32px;line-height:1;display:inline-flex}.landing-doc-step h3{margin:0 0 8px;font-size:20px}.landing-doc-step p{color:#5d6c78;margin:0;line-height:1.52}.landing-contact{background:linear-gradient(135deg,#0e7b5f1f,#2377c914),#fff;border:1px solid #d7e1e9;border-radius:8px;grid-template-columns:minmax(0,.86fr) minmax(360px,.74fr);align-items:stretch;gap:22px;width:min(1240px,100% - 28px);margin:0 auto 52px;padding:28px;display:grid;box-shadow:0 28px 80px #18314824}.landing-contact-copy{align-content:center;gap:12px;min-width:0;display:grid}.landing-contact-copy h2{margin:0;font-size:clamp(34px,4vw,62px);line-height:1}.landing-contact-copy p:not(.eyebrow){color:#5d6c78;max-width:650px;margin:0;font-size:18px;line-height:1.55}.landing-contact-actions{flex-wrap:wrap;gap:10px;margin-top:12px;display:flex}.landing-contact-actions a{color:#1f3345;background:#fff;border:1px solid #c8d5df;border-radius:8px;align-items:center;min-height:44px;padding:0 14px;font-weight:900;display:inline-flex}.landing-contact-form{background:#ffffffe0;border:1px solid #cfe0eb;border-radius:8px;gap:12px;min-width:0;padding:18px;display:grid;box-shadow:0 18px 50px #1831481a}.landing-contact-form .quick-input{color:#13212f;background:#fff}.landing-contact-form .quick-submit{width:100%}.landing-contact-status{border-radius:8px;margin:0;padding:10px 12px;font-weight:900}.landing-contact-status.sent{border:1px solid color-mix(in srgb, var(--green) 45%, #cfe0eb);background:color-mix(in srgb, var(--green) 12%, white);color:#0e6049}.landing-contact-status.error{border:1px solid color-mix(in srgb, var(--red) 45%, #cfe0eb);background:color-mix(in srgb, var(--red) 10%, white);color:#9f2731}.landing-login-backdrop{z-index:60;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#070e16b8;place-items:center;padding:18px;display:grid;position:fixed;inset:0}.landing-login-modal{color:#fff;background:#101923;border:1px solid #ffffff2e;border-radius:8px;gap:13px;width:min(430px,100%);padding:22px;display:grid;box-shadow:0 32px 90px #0000006b}.landing-modal-head{justify-content:space-between;align-items:flex-start;gap:14px;display:flex}.landing-modal-head h2{margin:0;font-size:28px}.landing-login-modal .quick-input{color:#13212f;background:#fffffff5;border-color:#fff3}.auth-shell{background:var(--bg);place-items:center;min-height:100vh;padding:20px;display:grid}.auth-panel{border:1px solid var(--line);background:var(--surface);border-radius:8px;gap:14px;width:min(420px,100%);padding:24px;display:grid;box-shadow:0 24px 70px #00000057}.auth-panel h1{margin:4px 0 0;font-size:30px}.auth-error{color:var(--red);margin:0;font-weight:800}.drawer-actions{grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:8px;display:grid}.report-panel{border:1px solid var(--line);background:var(--surface-2);border-radius:8px;gap:10px;margin-top:4px;padding:12px;display:grid}.report-panel h3{align-items:center;gap:7px;margin:0;font-size:16px;display:inline-flex}.report-list{max-height:180px;color:var(--muted);gap:6px;font-size:13px;display:grid;overflow:auto}.pagination-row{color:var(--muted);justify-content:flex-end;align-items:center;gap:10px;font-size:13px;display:flex}.payments-panel{border-top:1px solid var(--line);gap:12px;margin-top:18px;padding-top:16px;display:grid}.payment-summary{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.payment-actions{border:1px solid var(--line);background:var(--surface-2);border-radius:8px;flex-wrap:wrap;justify-content:flex-start;gap:10px;padding:12px;display:flex}.payment-modal-fields{gap:10px;display:grid}.payment-form{border:1px solid var(--line);background:var(--surface-2);border-radius:8px;grid-template-columns:1fr auto 1fr 1fr 1fr auto;align-items:end;gap:10px;padding:12px;display:grid}.payment-form .secondary-action{min-height:40px;margin-top:0}.payments-table{border:1px solid var(--line);border-radius:8px;max-height:360px;overflow:auto}.payments-head{z-index:1;position:sticky;top:0}.payments-head,.payments-row{grid-template-columns:160px minmax(0,1fr) 130px;gap:0;display:grid}.payments-head span{background:var(--surface-3);color:var(--text);padding:9px 10px;font-size:12px;font-weight:900}.payments-row span,.payments-row strong{border-top:1px solid var(--line);padding:9px 10px}.payments-row.empty{color:var(--muted);grid-template-columns:1fr}.payments-total-row{border-top:1px solid var(--line);background:var(--surface-2);justify-content:flex-end;gap:24px;padding:10px;display:flex}.admin-users-head,.admin-users-row{grid-template-columns:minmax(140px,1fr) minmax(180px,1.3fr) 140px 140px 110px 110px;align-items:center;display:grid}.admin-users-head span,.admin-users-row span,.admin-users-row strong{border-top:1px solid var(--line);padding:10px}.admin-users-head span{background:var(--surface-3);border-top:0;font-size:12px;font-weight:900}.admin-users-row .secondary-action{margin:6px}.admin-user-modal{width:min(720px,100%)}.resource-edit-actions{gap:8px;display:grid}@media (width<=980px){.landing-hero{min-height:auto}.landing-hero-grid{grid-template-columns:1fr;align-items:start;padding-top:70px}.landing-device{justify-self:stretch}.landing-copy{padding-bottom:0}.landing-showcase{grid-template-columns:1fr}.landing-value-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.landing-demo-body{grid-template-columns:1fr}.landing-demo-side{border-top:1px solid #ffffff14;border-left:0}.landing-analytics-grid,.landing-feature-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.landing-docs,.landing-contact{grid-template-columns:1fr}.landing-contact-actions{justify-content:flex-start}.app-shell{grid-template-columns:1fr}.sidebar{border-right:0;border-bottom:1px solid var(--line);height:auto;position:relative}.nav-list,.dashboard-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.dispatch-board{grid-template-columns:190px minmax(0,1fr)}.report-toolbar{grid-template-columns:1fr 1fr}.planner-layout{grid-template-columns:1fr}.autoplanner-modal{max-height:calc(100vh - 20px)}}@media (width<=640px){.landing-nav{flex-direction:column;align-items:flex-start}.landing-links{flex-wrap:wrap}.landing-hero-grid{padding-top:44px}.landing-actions{flex-direction:column;align-items:stretch}.landing-value-grid{grid-template-columns:1fr}.landing-demo-top{flex-direction:column;align-items:flex-start}.landing-demo-actions{justify-content:flex-start}.landing-demo-controls{grid-template-columns:1fr}.landing-demo-head{display:none}.landing-demo-row{grid-template-columns:1fr;gap:2px;padding:8px 0}.landing-demo-lane{background:0 0;grid-template-columns:1fr}.landing-demo-lesson{grid-column:auto!important}.landing-time-head{display:none}.landing-time-row{grid-template-columns:76px minmax(0,1fr)}.landing-lesson-pill{width:auto!important;margin-left:0!important}.landing-screen-row{grid-template-columns:1fr;padding:10px 12px}.landing-analytics-grid,.landing-feature-grid{grid-template-columns:1fr}.landing-contact{padding:18px}.landing-contact-form .two-fields{grid-template-columns:1fr}.landing-contact-actions{flex-direction:column;align-items:stretch;width:100%}.workspace{padding:14px}.topbar{flex-direction:column;align-items:flex-start}.top-actions{justify-content:space-between;width:100%}.nav-list,.dashboard-grid,.resource-grid{grid-template-columns:1fr}.dispatch-board{grid-template-columns:150px minmax(0,1fr)}.suggestion-card,.fleet-row{grid-template-columns:1fr}.suggestion-card b{text-align:left}.report-toolbar,.report-summary{grid-template-columns:1fr}.planner-summary{align-items:stretch}.planner-summary span{flex:140px}.planner-bulk-actions{grid-template-columns:1fr}.planner-bulk-actions .secondary-action{width:100%}.planner-student-row{flex-wrap:wrap;align-items:stretch}.planner-student-name{flex-basis:100%}.planner-mini-field{flex:120px}.planner-mini-field.minutes{flex-basis:90px}}
