:root{--bg:#f4f6f8;--panel:#fff;--panel-muted:#f8fafc;--ink:#172033;--muted:#667085;--line:#d8dee8;--navy:#10243d;--navy-2:#17385d;--gold:#c59a3d;--green:#207653;--red:#a42121;--shadow:#10243d14;--input-bg:#fff;--button-ink:#fff;--radius-sm:8px;--radius-md:12px;--radius-lg:16px;--shadow-card:0 1px 2px #10243d0d, 0 8px 24px #10243d0f;--shadow-pop:0 12px 32px #10243d29;--focus-ring:0 0 0 3px #2563eb40;--speed:.15s}:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#0f141b;--panel:#171f2a;--panel-muted:#111923;--ink:#f2f6fb;--muted:#aab6c7;--line:#2b394a;--navy:#6da8ff;--navy-2:#9fc6ff;--gold:#f4c95d;--green:#5ed29a;--red:#ff8a8a;--shadow:#00000047;--input-bg:#111923;--button-ink:#09111c;--shadow-card:0 1px 2px #0000004d, 0 8px 24px #00000047;--shadow-pop:0 12px 32px #00000073;--focus-ring:0 0 0 3px #6da8ff59}*{box-sizing:border-box;margin:0;padding:0}html,body{background:var(--bg);color:var(--ink);min-height:100%;overflow-x:hidden}body,button,input,select,textarea{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif}body{-webkit-font-smoothing:antialiased}h1,h2,h3{letter-spacing:-.01em}button,input,select,textarea{font:inherit}button{background:var(--navy);border-radius:var(--radius-sm);color:var(--button-ink);cursor:pointer;min-height:42px;transition:background var(--speed), transform var(--speed), box-shadow var(--speed);border:0;padding:0 16px;font-weight:800}button:hover{background:var(--navy-2)}button:active{transform:scale(.98)}button:focus-visible{box-shadow:var(--focus-ring);outline:none}.secondary-button{background:var(--panel);border:1px solid var(--line);color:var(--ink)}input,select,textarea{background:var(--input-bg);border:1px solid var(--line);border-radius:var(--radius-sm);color:var(--ink);transition:border-color var(--speed), box-shadow var(--speed);width:100%;margin-top:6px;padding:10px 12px}input:focus,select:focus,textarea:focus{border-color:var(--navy);box-shadow:var(--focus-ring);outline:none}textarea{resize:vertical}label{color:var(--muted);font-size:13px;font-weight:800;display:block}.field-label{color:var(--muted);font-size:13px;font-weight:800}a{color:inherit;text-decoration:none}.page-shell{max-width:min(1880px,100vw);margin:0 auto;padding:16px clamp(12px,1.2vw,24px) 36px}.mobile-preview-page{--mobile-preview-page-bg:radial-gradient(circle at 20% 0%, #2563eb2e, transparent 32rem), linear-gradient(135deg, #eef4ff 0%, #f8fafc 44%, #edf2f8 100%);--mobile-preview-stage-heading:#10243d;--mobile-preview-stage-muted:#335270;--mobile-preview-stage-action-bg:#10243d14;--mobile-preview-stage-action-border:#10243d24;--mobile-preview-stage-action-ink:#10243d;--mobile-preview-bg:#0b111a;--mobile-preview-surface:#111a26;--mobile-preview-surface-2:#162231;--mobile-preview-card:#f8fafc;--mobile-preview-card-soft:#edf4ff;--mobile-preview-card-bg:#fff;--mobile-preview-card-muted:#f8fafc;--mobile-preview-phone-bg:#0b111a;--mobile-preview-phone-border:#05070b;--mobile-preview-phone-header-bg:#f8fafcf5;--mobile-preview-phone-notch-bg:#05070b;--mobile-preview-scroll-bg:#edf2f8;--mobile-preview-hero-bg:linear-gradient(135deg, #122742, #204a7b);--mobile-preview-hero-muted:#dbeafe;--mobile-preview-hero-action-bg:#fff;--mobile-preview-hero-action-ink:#12345a;--mobile-preview-ink:#0f172a;--mobile-preview-muted:#667085;--mobile-preview-line:#d7deea;--mobile-preview-blue:#2563eb;--mobile-preview-blue-2:#1e40af;--mobile-preview-blue-soft:#e8f1ff;--mobile-preview-control-bg:#eef4ff;--mobile-preview-control-border:#cddcff;--mobile-preview-chip-bg:#e8f7ef;--mobile-preview-gold:#c9942e;--mobile-preview-green:#16875b;--mobile-preview-green-soft:#e8f7ef;--mobile-preview-red:#b42318;--mobile-preview-red-soft:#fee4e2;--mobile-preview-purple:#7c3aed;--mobile-preview-purple-soft:#f0e8ff;--mobile-preview-priority-bg:#fff7ed;--mobile-preview-priority-border:#fed7aa;--mobile-preview-input-bg:#f8fafc;--mobile-preview-input-border:#cfd8e6;--mobile-preview-request-bg:#f5f0ff;--mobile-preview-request-border:#ddd0ff;--mobile-preview-request-ink:#4c1d95;--mobile-preview-bottom-nav-bg:#fffffffa;background:var(--mobile-preview-page-bg);color:var(--mobile-preview-stage-heading);min-height:100vh;padding:24px}:root[data-theme=dark] .mobile-preview-page{--mobile-preview-page-bg:radial-gradient(circle at 20% 0%, #2563eb47, transparent 32rem), linear-gradient(135deg, #08111d 0%, #111827 44%, #172033 100%);--mobile-preview-stage-heading:#fff;--mobile-preview-stage-muted:#c7d2fe;--mobile-preview-stage-action-bg:#ffffff1a;--mobile-preview-stage-action-border:#ffffff2e;--mobile-preview-stage-action-ink:#fff;--mobile-preview-card-bg:#111923;--mobile-preview-card-muted:#162231;--mobile-preview-card-soft:#162231;--mobile-preview-phone-bg:#05070b;--mobile-preview-phone-border:#02040a;--mobile-preview-phone-header-bg:#111923fa;--mobile-preview-phone-notch-bg:#02040a;--mobile-preview-scroll-bg:#0f141b;--mobile-preview-hero-bg:linear-gradient(135deg, #0f2a4a, #17385d);--mobile-preview-hero-muted:#bfdbfe;--mobile-preview-hero-action-bg:#dbeafe;--mobile-preview-hero-action-ink:#0f172a;--mobile-preview-ink:#f2f6fb;--mobile-preview-muted:#aab6c7;--mobile-preview-line:#2b394a;--mobile-preview-blue:#6da8ff;--mobile-preview-blue-2:#9fc6ff;--mobile-preview-blue-soft:#6da8ff29;--mobile-preview-control-bg:#172033;--mobile-preview-control-border:#2b394a;--mobile-preview-chip-bg:#5ed29a29;--mobile-preview-gold:#f4c95d;--mobile-preview-green:#5ed29a;--mobile-preview-green-soft:#5ed29a29;--mobile-preview-red:#ff8a8a;--mobile-preview-red-soft:#ff8a8a24;--mobile-preview-purple:#c4b5fd;--mobile-preview-purple-soft:#c4b5fd29;--mobile-preview-priority-bg:#24180e;--mobile-preview-priority-border:#6b4418;--mobile-preview-input-bg:#0f141b;--mobile-preview-input-border:#34465a;--mobile-preview-request-bg:#c4b5fd1f;--mobile-preview-request-border:#c4b5fd59;--mobile-preview-request-ink:#ddd6fe;--mobile-preview-bottom-nav-bg:#111923fa}.mobile-preview-stage{flex-direction:column;align-items:center;gap:22px;max-width:1040px;margin:0 auto;display:flex}.mobile-preview-header{justify-content:space-between;align-items:end;width:min(100%,820px);display:flex}.mobile-preview-header h1{color:var(--mobile-preview-stage-heading);margin-top:4px;font-size:clamp(28px,3vw,46px);line-height:1}.mobile-preview-header span{color:var(--mobile-preview-stage-muted);margin-top:8px;font-weight:800;display:block}.mobile-preview-header a{background:var(--mobile-preview-stage-action-bg);border:1px solid var(--mobile-preview-stage-action-border);color:var(--mobile-preview-stage-action-ink);border-radius:999px;align-items:center;min-height:44px;padding:0 18px;font-size:14px;font-weight:900;display:inline-flex}.mobile-preview-header-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:10px;display:flex}.mobile-preview-demo-pill{color:#fde68a;background:#f4c95d29;border:1px solid #f4c95d5c;border-radius:999px;align-items:center;min-height:36px;padding:0 13px;font-size:13px;font-weight:800;display:inline-flex}.mobile-preview-phone{background:var(--mobile-preview-phone-bg);border:10px solid var(--mobile-preview-phone-border);color:var(--mobile-preview-ink);border-radius:42px;flex-direction:column;width:min(430px,100vw - 48px);height:min(860px,100vh - 132px);min-height:700px;max-height:932px;display:flex;position:relative;overflow:hidden;box-shadow:0 34px 90px #0000006b,inset 0 0 0 1px #ffffff14}.mobile-preview-phone:before{background:var(--mobile-preview-phone-notch-bg);content:"";z-index:4;border-radius:0 0 18px 18px;width:112px;height:22px;position:absolute;top:0;left:50%;transform:translate(-50%)}.mobile-preview-phone-header{background:var(--mobile-preview-phone-header-bg);border-bottom:1px solid var(--mobile-preview-line);z-index:3;justify-content:space-between;align-items:center;min-height:82px;padding:26px 16px 12px;display:flex;position:relative}.mobile-preview-brand-row{align-items:center;gap:10px;min-width:0;display:flex}.mobile-preview-brand-row img{object-fit:contain;width:58px;height:42px}.mobile-preview-brand-row strong{color:var(--mobile-preview-ink);font-size:17px;line-height:1.1;display:block}.mobile-preview-brand-row span{color:var(--mobile-preview-muted);margin-top:2px;font-size:12px;font-weight:900;display:block}.mobile-preview-phone-header .theme-toggle button{color:var(--mobile-preview-muted)}.mobile-preview-phone-header .theme-toggle button.active{border-bottom-color:var(--mobile-preview-blue);color:var(--mobile-preview-blue)}.mobile-preview-icon-nav{background:var(--mobile-preview-phone-header-bg);border-bottom:1px solid var(--mobile-preview-line);scrollbar-width:none;z-index:3;gap:8px;padding:10px 12px;display:flex;position:relative;overflow-x:auto}.mobile-preview-icon-nav::-webkit-scrollbar{display:none}.mobile-preview-icon-nav a{color:var(--mobile-preview-muted);flex-direction:column;flex:none;align-items:center;gap:5px;min-width:56px;font-size:11px;font-weight:800;text-decoration:none;display:flex}.mobile-preview-icon-nav a span{background:var(--mobile-preview-control-bg);border:1px solid var(--mobile-preview-control-border);border-radius:13px;justify-content:center;align-items:center;width:42px;height:42px;font-size:19px;display:inline-flex}.mobile-preview-icon-nav a.active{color:var(--mobile-preview-blue)}.mobile-preview-icon-nav a.active span{background:var(--mobile-preview-blue-soft);border-color:var(--mobile-preview-blue)}.mobile-preview-icon-nav a.primary span{background:var(--mobile-preview-blue);border-color:var(--mobile-preview-blue);color:#fff}.mobile-preview-icon-button{background:#e8eef8;border:1px solid #d4dcec;border-radius:15px;flex-direction:column;justify-content:center;align-items:center;gap:4px;width:44px;height:44px;min-height:44px;padding:0;display:inline-flex}.mobile-preview-icon-button:hover{background:#dbe8ff}.mobile-preview-icon-button span{background:#172033;border-radius:999px;width:17px;height:2px;display:block}.mobile-preview-scroll{background:var(--mobile-preview-scroll-bg);scrollbar-width:thin;flex:1;padding:14px 14px 28px;overflow-y:auto}.mobile-preview-hero{background:var(--mobile-preview-hero-bg);color:#fff;border-radius:24px;justify-content:space-between;align-items:center;padding:18px;display:flex;position:relative;overflow:hidden;box-shadow:0 18px 34px #10243d2e}.mobile-preview-hero:after{content:"";background:#ffffff1a;border-radius:999px;width:130px;height:130px;position:absolute;top:-36px;right:-46px}.mobile-preview-hero h2{letter-spacing:0;font-size:27px;line-height:1.05}.mobile-preview-hero span{color:var(--mobile-preview-hero-muted);margin-top:5px;font-weight:900;display:block}.mobile-preview-hero button,.mobile-preview-hero a{background:var(--mobile-preview-hero-action-bg);color:var(--mobile-preview-hero-action-ink);z-index:1;border-radius:16px;justify-content:center;align-items:center;min-height:48px;padding:0 14px;font-weight:800;display:inline-flex;position:relative}.mobile-preview-day-strip{scrollbar-width:none;grid-auto-columns:minmax(52px,1fr);grid-auto-flow:column;gap:8px;margin:14px -2px 0;padding:2px;display:grid;overflow-x:auto}.mobile-preview-day-strip::-webkit-scrollbar{display:none}.mobile-preview-day-strip a{background:var(--mobile-preview-card-bg);border:1px solid var(--mobile-preview-line);color:var(--mobile-preview-ink);text-align:center;border-radius:18px;align-items:center;gap:2px;min-width:52px;min-height:84px;padding:8px 6px;display:grid;position:relative}.mobile-preview-day-strip a.active{background:var(--mobile-preview-blue);border-color:var(--mobile-preview-blue);color:#fff;transform:translateY(-1px)}.mobile-preview-day-strip span{color:inherit;opacity:.78;text-transform:uppercase;font-size:11px;font-weight:900}.mobile-preview-day-strip strong{font-size:20px;line-height:1}.mobile-preview-day-strip em{background:var(--mobile-preview-blue-soft);color:inherit;border-radius:999px;justify-self:center;min-width:22px;padding:2px 6px;font-size:11px;font-style:normal;font-weight:900}.mobile-preview-day-strip a.active em{background:#fff3}.mobile-preview-day-strip i{background:var(--mobile-preview-purple);border:2px solid #fff;border-radius:999px;width:12px;height:12px;position:absolute;top:7px;right:7px}.mobile-preview-section .eyebrow,.mobile-preview-priority-card .eyebrow,.mobile-preview-hero .eyebrow,.mobile-preview-header .eyebrow{color:var(--mobile-preview-gold);letter-spacing:.06em;text-transform:uppercase;font-size:11px;font-weight:800;line-height:1.1}.mobile-preview-priority-card,.mobile-preview-section,.mobile-preview-empty-card{background:var(--mobile-preview-card-bg);border:1px solid var(--mobile-preview-line);border-radius:22px;margin-top:14px;padding:14px;box-shadow:0 10px 22px #10243d0f}.mobile-preview-priority-card{background:var(--mobile-preview-priority-bg);border-color:var(--mobile-preview-priority-border)}.mobile-preview-priority-card h3,.mobile-preview-section h3{color:var(--mobile-preview-ink);margin-top:3px;font-size:19px;line-height:1.1}.mobile-preview-chip-row,.mobile-preview-crew-list{flex-wrap:wrap;gap:8px;margin-top:12px;display:flex}.mobile-preview-chip-row span,.mobile-preview-crew-list span{background:var(--mobile-preview-chip-bg);color:var(--mobile-preview-green);border-radius:999px;padding:9px 12px;font-size:13px;font-weight:800}.mobile-preview-flash{border-radius:18px;margin-top:14px;padding:12px 14px;font-size:14px;font-weight:900;line-height:1.35}.mobile-preview-flash.error{background:var(--mobile-preview-red-soft);border:1px solid var(--mobile-preview-red);color:var(--mobile-preview-red)}.mobile-preview-flash.success{background:var(--mobile-preview-green-soft);border:1px solid var(--mobile-preview-green);color:var(--mobile-preview-green)}.mobile-preview-crew-list span{align-items:center;gap:6px;display:inline-flex}.mobile-preview-crew-list small{color:#5d6b80;font-size:11px;font-weight:900}.mobile-preview-crew-list p{color:var(--mobile-preview-muted);font-size:14px;font-weight:850}.mobile-preview-section-heading{justify-content:space-between;align-items:center;gap:12px;display:flex}.mobile-preview-section-heading button,.mobile-preview-section-heading a{background:var(--mobile-preview-control-bg);border:1px solid var(--mobile-preview-control-border);color:var(--mobile-preview-blue-2);border-radius:14px;justify-content:center;align-items:center;min-height:44px;padding:0 14px;font-weight:800;display:inline-flex}.mobile-preview-agenda{gap:10px;margin-top:12px;display:grid}.mobile-preview-booking{background:var(--mobile-preview-card-bg);border:1px solid var(--mobile-preview-line);border-radius:20px;overflow:hidden;box-shadow:0 10px 20px #10243d0f}.mobile-preview-booking.needs-approval{box-shadow:inset 5px 0 0 var(--mobile-preview-purple), 0 10px 20px #10243d0f;border-color:#7c3aed80}.mobile-preview-booking.needs-worker{box-shadow:inset 5px 0 0 var(--mobile-preview-blue), 0 10px 20px #10243d0f;border-color:#2563eb73}.mobile-preview-booking.past-due{box-shadow:inset 5px 0 0 var(--mobile-preview-gold), 0 10px 20px #10243d0f;border-color:#c9942e80}.mobile-preview-booking.assigned{box-shadow:inset 5px 0 0 var(--mobile-preview-green), 0 10px 20px #10243d0f}.mobile-preview-booking.completed{box-shadow:inset 5px 0 0 var(--mobile-preview-green), 0 10px 20px #10243d0f;opacity:.78}.mobile-preview-legend{flex-wrap:wrap;gap:6px 12px;margin:0 0 12px;padding:0;list-style:none;display:flex}.mobile-preview-legend li{color:var(--mobile-preview-muted);align-items:center;gap:5px;font-size:11px;font-weight:800;display:flex}.mobile-preview-legend .dot{border-radius:999px;flex:none;width:9px;height:9px}.mobile-preview-legend .dot.assigned{background:var(--mobile-preview-green)}.mobile-preview-legend .dot.needs-worker{background:var(--mobile-preview-blue)}.mobile-preview-legend .dot.past-due{background:var(--mobile-preview-gold)}.mobile-preview-legend .dot.needs-approval{background:var(--mobile-preview-purple)}.mobile-preview-hero .mobile-preview-alert-badge{color:#fff;text-align:center;background:#dc2626;border-radius:999px;align-self:center;align-items:center;min-height:44px;padding:0 16px;font-size:12px;font-weight:900;line-height:1.05;text-decoration:none;display:inline-flex}.mobile-preview-bottom-nav .mobile-preview-nav-badge{color:#fff;background:#dc2626;border-radius:999px;min-width:16px;margin-left:4px;padding:1px 5px;font-size:10px;font-style:normal;font-weight:900}.mobile-preview-add-worker{margin-bottom:12px}.mobile-preview-crew-list{gap:10px;display:grid}.mobile-preview-crew-item .mobile-preview-crew-actions{flex-wrap:wrap;align-items:flex-start;gap:8px;display:flex}.mobile-preview-crew-item .mobile-preview-edit-hours{flex:auto;min-width:130px}.mobile-preview-remove-btn{background:var(--mobile-preview-red-soft);border:1px solid var(--mobile-preview-red);color:var(--mobile-preview-red);border-radius:10px;min-height:36px;padding:7px 12px;font-size:12px;font-weight:800}.mobile-preview-extras-list{border:0;gap:6px;min-width:0;margin:4px 0 0;padding:0;display:grid}.mobile-preview-extras-list legend{color:var(--mobile-preview-muted);padding:0;font-size:12px;font-weight:800}.mobile-preview-extras-list label{background:var(--mobile-preview-input-bg);border:1px solid var(--mobile-preview-input-border);border-radius:12px;align-items:center;gap:10px;min-height:48px;padding:8px 12px;display:flex}.mobile-preview-extras-list label span{flex:1;font-weight:700}.mobile-preview-extras-list label strong{color:var(--mobile-preview-ink)}.mobile-preview-field{gap:6px;display:grid}.mobile-preview-estimate{border-top:1px dashed var(--mobile-preview-line);justify-content:space-between;align-items:center;margin-top:10px;padding-top:10px;display:flex}.mobile-preview-estimate span{color:var(--mobile-preview-muted);font-weight:800}.mobile-preview-estimate strong{color:var(--mobile-preview-ink);font-size:20px;font-weight:800}.mobile-preview-booking-end{flex-direction:column;align-items:flex-end;gap:6px;display:flex}.mobile-preview-row-status{background:var(--mobile-preview-green-soft);border:1px solid var(--mobile-preview-green);color:var(--mobile-preview-green);border-radius:999px;min-height:30px;padding:3px 12px;font-size:11px;font-weight:900;position:relative}.mobile-preview-row-status:before{content:"";position:absolute;inset:-7px -6px}.mobile-preview-row-status:disabled{opacity:.55}.mobile-preview-row-status-error{color:var(--mobile-preview-red,#dc2626);text-align:right;max-width:120px;font-size:11px;font-weight:800}.mobile-preview-edit-link{background:var(--mobile-preview-card-muted);border:1px solid var(--mobile-preview-line);color:var(--mobile-preview-ink);text-align:center;border-radius:12px;min-height:44px;padding:11px 14px;font-weight:800;text-decoration:none;display:block}.mobile-preview-usual{color:var(--mobile-preview-green);font-style:normal;font-weight:800}.mobile-preview-crew-item{background:var(--mobile-preview-card-muted);border:1px solid var(--mobile-preview-line);border-radius:12px;padding:0;display:block}.mobile-preview-crew-item>summary{cursor:pointer;align-items:center;gap:8px;min-height:44px;padding:9px 14px;list-style:none;display:flex}.mobile-preview-crew-item>summary::-webkit-details-marker{display:none}.mobile-preview-crew-item>summary strong{color:var(--mobile-preview-ink);font-size:15px}.mobile-preview-crew-item>summary small{color:var(--mobile-preview-muted);margin-left:auto;font-size:12px;font-weight:700}.mobile-preview-crew-item .mobile-preview-crew-edit{gap:8px;padding:0 14px 12px;display:grid}.mobile-preview-loading{justify-content:center;align-items:center;min-height:70vh;display:flex}.mobile-preview-loading-card{color:var(--mobile-preview-stage-muted,#475569);flex-direction:column;align-items:center;gap:12px;font-weight:800;display:flex}.mobile-preview-spinner{border:3px solid #7da0d259;border-top-color:var(--mobile-preview-blue,#2563eb);border-radius:999px;width:34px;height:34px;animation:.7s linear infinite mobile-preview-spin}@keyframes mobile-preview-spin{to{transform:rotate(360deg)}}.mobile-preview-page a:active,.mobile-preview-page button:active,.mobile-preview-page summary:active{opacity:.6;transition:opacity 60ms,transform 60ms;transform:scale(.97)}.mobile-preview-week-nav{align-items:center;gap:8px;margin-bottom:10px;display:flex}.mobile-preview-week-arrow{background:var(--mobile-preview-card-bg);border:1px solid var(--mobile-preview-line);color:var(--mobile-preview-ink);border-radius:10px;flex:none;justify-content:center;align-items:center;min-width:44px;height:44px;font-size:22px;font-weight:900;line-height:1;text-decoration:none;display:inline-flex}.mobile-preview-week-arrow:active{opacity:.6;transform:scale(.97)}.mobile-preview-date-jump{background:var(--mobile-preview-card-bg);border:1px solid var(--mobile-preview-line);color:var(--mobile-preview-ink);border-radius:10px;flex:1;justify-content:center;align-items:center;gap:8px;min-height:42px;padding:0 12px;font-size:14px;font-weight:800;text-decoration:none;display:flex}.mobile-preview-date-jump input{color:inherit;text-align:center;background:0 0;border:0;width:100%;font-size:14px;font-weight:800}:root[data-theme=dark] .mobile-preview-date-jump input::-webkit-calendar-picker-indicator{filter:invert(.85)}.mobile-preview-day-strip .mobile-preview-day-cal{background:var(--mobile-preview-blue-soft);border-color:var(--mobile-preview-blue);color:var(--mobile-preview-blue-2);justify-items:center}.mobile-preview-day-cal span{opacity:1;font-size:20px}.mobile-preview-day-cal strong{font-size:12px}.mobile-preview-month-head{justify-content:space-between;align-items:center;gap:10px;margin-bottom:8px;display:flex}.mobile-preview-month-head strong{color:var(--mobile-preview-ink);font-size:17px;font-weight:800}.mobile-preview-month-back{color:var(--mobile-preview-blue-2);margin-bottom:12px;font-size:13px;font-weight:800;text-decoration:none;display:inline-block}.mobile-preview-month-grid{grid-template-columns:repeat(7,1fr);gap:5px;display:grid}.mobile-preview-month-weekday{color:var(--mobile-preview-muted);text-align:center;text-transform:uppercase;padding-bottom:2px;font-size:10px;font-weight:900}.mobile-preview-month-cell{aspect-ratio:1;background:var(--mobile-preview-card-bg);border:1px solid var(--mobile-preview-line);color:var(--mobile-preview-ink);border-radius:10px;flex-direction:column;justify-content:space-between;padding:5px 6px;font-size:13px;font-weight:800;text-decoration:none;display:flex}.mobile-preview-month-cell.muted{opacity:.4}.mobile-preview-month-cell.today{border-color:var(--mobile-preview-blue);box-shadow:inset 0 0 0 1px var(--mobile-preview-blue)}.mobile-preview-month-cell.has-bookings{background:var(--mobile-preview-blue-soft);border-color:var(--mobile-preview-blue)}.mobile-preview-month-cell.has-bookings strong{color:var(--mobile-preview-blue-2);font-weight:800}.mobile-preview-month-cell.today{background:var(--mobile-preview-blue);border-color:var(--mobile-preview-blue);box-shadow:none;color:#fff}.mobile-preview-month-cell.today strong{color:#fff}.mobile-preview-month-cell.today em{color:var(--mobile-preview-blue-2);background:#fff}.mobile-preview-month-jump{align-items:center;gap:8px;margin-bottom:12px;display:flex}.mobile-preview-month-jump>span{color:var(--mobile-preview-muted);white-space:nowrap;font-size:12px;font-weight:800}.mobile-preview-assign-status{color:var(--mobile-preview-green);margin-top:6px;font-size:12px;font-weight:800}.app-version{color:var(--muted);letter-spacing:.02em;font-size:11px;font-weight:800}.mobile-preview-version{color:var(--mobile-preview-muted);text-align:center;margin:16px 0 4px;font-size:11px;font-weight:800}.mobile-preview-month-cell em{background:var(--mobile-preview-blue);color:#fff;text-align:center;border-radius:999px;align-self:flex-end;min-width:16px;padding:1px 5px;font-size:10px;font-style:normal;font-weight:900}.mobile-preview-month-cell:active{opacity:.6}.mobile-preview-booking summary{cursor:pointer;grid-template-columns:70px minmax(0,1fr) auto;align-items:center;gap:10px;min-height:92px;padding:13px;list-style:none;display:grid}.mobile-preview-booking summary::-webkit-details-marker{display:none}.mobile-preview-booking-time{color:var(--mobile-preview-blue-2);font-size:14px;font-weight:800;line-height:1.1;display:grid}.mobile-preview-booking-time small{color:var(--mobile-preview-muted);margin-top:5px;font-size:11px;font-weight:900}.mobile-preview-booking-main{gap:3px;min-width:0;display:grid}.mobile-preview-booking-main strong{color:var(--mobile-preview-ink);text-overflow:ellipsis;white-space:nowrap;font-size:17px;line-height:1.1;overflow:hidden}.mobile-preview-booking-main em,.mobile-preview-booking-main small{color:var(--mobile-preview-muted);text-overflow:ellipsis;white-space:nowrap;font-size:12px;font-style:normal;font-weight:900;overflow:hidden}.mobile-preview-status{border-radius:999px;padding:7px 9px;font-size:11px;font-weight:800}.mobile-preview-status.status-booked{color:var(--mobile-preview-blue-2);background:#e8f1ff}.mobile-preview-status.status-completed{color:var(--mobile-preview-green);background:#e8f7ef}.mobile-preview-status.status-cancelled{color:var(--mobile-preview-red);background:#fee4e2}.mobile-preview-booking.needs-approval .mobile-preview-status{color:var(--mobile-preview-purple);background:#f0e8ff}:root[data-theme=dark] .mobile-preview-status.status-booked{background:#6da8ff2e}:root[data-theme=dark] .mobile-preview-status.status-completed{background:#34d3992e}:root[data-theme=dark] .mobile-preview-status.status-cancelled{background:#f871712e}:root[data-theme=dark] .mobile-preview-booking.needs-approval .mobile-preview-status{background:#c084fc2e}.mobile-preview-booking-details{border-top:1px solid var(--mobile-preview-line);padding:0 13px 13px}.mobile-preview-booking-details dl{gap:8px;padding-top:12px;display:grid}.mobile-preview-booking-details dl div{grid-template-columns:78px minmax(0,1fr);align-items:start;gap:10px;display:grid}.mobile-preview-booking-details dt{color:var(--mobile-preview-muted);text-transform:uppercase;font-size:12px;font-weight:800}.mobile-preview-booking-details dd{color:var(--mobile-preview-ink);overflow-wrap:anywhere;min-width:0;font-size:14px;font-weight:900}.mobile-preview-action-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:13px;display:grid}.mobile-preview-action-grid form{min-width:0}.mobile-preview-action-grid button{background:var(--mobile-preview-control-bg);border:1px solid var(--mobile-preview-control-border);color:var(--mobile-preview-blue-2);border-radius:14px;width:100%;min-height:46px}.mobile-preview-action-grid form:first-child button{background:var(--mobile-preview-blue);border-color:var(--mobile-preview-blue);color:#fff}.mobile-preview-empty-card{align-items:start;gap:8px;min-height:156px;margin-top:0;display:grid}.mobile-preview-empty-card strong{color:var(--mobile-preview-ink);font-size:18px}.mobile-preview-empty-card span{color:var(--mobile-preview-muted);font-weight:850;line-height:1.35}.mobile-preview-empty-card button,.mobile-preview-empty-card a{background:var(--mobile-preview-control-bg);border:1px solid var(--mobile-preview-control-border);color:var(--mobile-preview-blue-2);border-radius:14px;justify-content:center;justify-self:start;align-items:center;min-height:46px;margin-top:6px;padding:0 14px;font-weight:800;display:inline-flex}.mobile-preview-create-card summary,.mobile-preview-subdetails summary{cursor:pointer;justify-content:space-between;align-items:center;gap:12px;list-style:none;display:flex}.mobile-preview-create-card summary::-webkit-details-marker{display:none}.mobile-preview-subdetails summary::-webkit-details-marker{display:none}.mobile-preview-create-card summary span,.mobile-preview-subdetails summary{color:var(--mobile-preview-blue-2);font-size:13px;font-weight:800}.mobile-preview-form,.mobile-preview-check-form{gap:12px;margin-top:14px;display:grid}.mobile-preview-form-grid{gap:10px;display:grid}.mobile-preview-form-grid.two,.mobile-preview-form-grid.three{grid-template-columns:1fr}.mobile-preview-form label,.mobile-preview-inline-form label{gap:6px;display:grid}.mobile-preview-form label span,.mobile-preview-check-form label span,.mobile-preview-inline-form label span{color:#5d6b80;text-transform:uppercase;font-size:12px;font-weight:800}.mobile-preview-form input,.mobile-preview-form select,.mobile-preview-inline-form input,.mobile-preview-inline-form select,.mobile-preview-check-form input:not([type=checkbox]){background:var(--mobile-preview-input-bg);border:1px solid var(--mobile-preview-input-border);color:var(--mobile-preview-ink);border-radius:14px;width:100%;min-height:48px;padding:0 12px;font-size:16px;font-weight:850}.mobile-preview-form input:disabled,.mobile-preview-form select:disabled,.mobile-preview-inline-form input:disabled,.mobile-preview-inline-form select:disabled{color:#98a2b3}.mobile-preview-form-note{background:var(--mobile-preview-priority-bg);border:1px solid var(--mobile-preview-priority-border);color:var(--mobile-preview-gold);border-radius:14px;margin-top:12px;padding:10px 12px;font-size:13px;font-weight:850;line-height:1.35}.mobile-preview-form-actions{grid-template-columns:minmax(0,1fr) auto;gap:9px;display:grid}.mobile-preview-form-actions button,.mobile-preview-form-actions a,.mobile-preview-check-form button,.mobile-preview-inline-form button,.mobile-preview-danger-button{background:var(--mobile-preview-blue);border:1px solid var(--mobile-preview-blue);color:#fff;border-radius:14px;justify-content:center;align-items:center;min-height:46px;padding:0 14px;font-weight:800;display:inline-flex}.mobile-preview-form-actions a{background:var(--mobile-preview-control-bg);border-color:var(--mobile-preview-control-border);color:var(--mobile-preview-blue-2)}button.mobile-preview-danger-button,.mobile-preview-danger-button{background:var(--mobile-preview-red-soft);border-color:var(--mobile-preview-red);color:var(--mobile-preview-red)}.mobile-preview-form button:disabled,.mobile-preview-check-form button:disabled,.mobile-preview-inline-form button:disabled,.mobile-preview-action-grid button:disabled{cursor:not-allowed;opacity:.55}.mobile-preview-subdetails{background:var(--mobile-preview-card-muted);border:1px solid var(--mobile-preview-line);border-radius:16px;margin-top:12px;padding:12px}.mobile-preview-subdetails summary{min-height:34px}.mobile-preview-inline-form{grid-template-columns:1fr;gap:8px;margin-top:10px;display:grid}.mobile-preview-check-form label{background:var(--mobile-preview-card-bg);border:1px solid var(--mobile-preview-line);border-radius:14px;align-items:center;gap:10px;min-height:46px;padding:0 12px;display:flex}.mobile-preview-check-form input[type=checkbox]{width:18px;height:18px}.mobile-preview-request-card{background:var(--mobile-preview-request-bg);border:1px solid var(--mobile-preview-request-border);color:var(--mobile-preview-purple);border-radius:16px;gap:6px;margin-top:12px;padding:12px;display:grid}.mobile-preview-request-card strong{font-size:14px}.mobile-preview-request-card span{color:var(--mobile-preview-request-ink);font-size:13px;font-weight:850}.mobile-preview-crew-list.expanded{display:grid}.mobile-preview-crew-item{background:var(--mobile-preview-card-muted);border:1px solid var(--mobile-preview-line);border-radius:16px;gap:10px;padding:12px;display:grid}.mobile-preview-crew-item>div{gap:3px;display:grid}.mobile-preview-crew-item strong{color:var(--mobile-preview-ink);font-size:16px}@media (max-width:640px){.mobile-preview-page{background:#edf2f8;padding:0}.mobile-preview-stage{max-width:none;display:block}.mobile-preview-header{display:none}.mobile-preview-phone{box-shadow:none;border:0;border-radius:0;width:100vw;height:100dvh;min-height:100dvh;max-height:none}.mobile-preview-phone:before{display:none}.mobile-preview-phone-header{padding-top:max(12px, env(safe-area-inset-top))}}.login-shell{--bg:#f4f6f8;--button-ink:#fff;--gold:#c59a3d;--ink:#172033;--navy:#10243d;--navy-2:#17385d;--panel:#fff;--panel-muted:#f8fafc;--shadow:#10243d14;background:var(--bg);color:var(--ink);align-items:center;min-height:100vh;padding:24px;display:flex}.login-panel{background:var(--panel);border:1px solid var(--line);box-shadow:0 18px 42px var(--shadow);border-radius:8px;max-width:480px;margin:0 auto;padding:28px}.login-logo-row{justify-content:space-between;align-items:center;gap:18px;margin-bottom:18px;display:flex}.login-logo{object-fit:contain;flex:1 1 0;min-width:0;height:auto;display:block}.empire-login-logo{max-width:170px}.sidekick-login-logo{max-width:220px}.loading-sidekick-logo{object-fit:contain;width:100%;max-width:min(320px,82vw);height:auto;margin:0 auto 18px;display:block}.login-button{background:var(--navy);color:var(--button-ink);border-radius:8px;justify-content:center;align-items:center;min-height:46px;margin-top:20px;padding:0 18px;font-weight:900;display:flex}.privacy-shell{background:var(--bg);color:var(--ink);min-height:100vh;padding:32px clamp(16px,4vw,56px)}.privacy-panel{background:var(--panel);border:1px solid var(--line);box-shadow:0 18px 42px var(--shadow);border-radius:8px;max-width:980px;margin:0 auto;padding:clamp(22px,3vw,42px)}.privacy-header{border-bottom:1px solid var(--line);margin-bottom:24px;padding-bottom:22px}.privacy-updated{color:var(--muted);margin-top:8px;font-size:13px;font-weight:800}.privacy-section{margin-top:24px}.privacy-section h2{margin-bottom:10px}.privacy-section p,.privacy-list{color:var(--ink);font-size:15px;line-height:1.65}.privacy-section p+p{margin-top:12px}.privacy-list{gap:10px;margin-top:10px;padding-left:20px;display:grid}.privacy-list strong{color:var(--navy)}.privacy-footer{border-top:1px solid var(--line);margin-top:30px;padding-top:20px}.privacy-footer a{color:var(--navy);font-weight:900}.support-shell{align-items:center;display:flex}.support-panel{max-width:920px}.support-header img{object-fit:contain;max-width:min(300px,70vw);height:auto;margin-bottom:18px;display:block}.support-form{gap:18px;display:grid}.support-form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.support-trap{opacity:0;width:0;height:0;position:absolute}.delete-ack{flex-direction:row;align-items:flex-start;gap:10px;line-height:1.45;display:flex}.delete-ack input{margin-top:4px}.support-status{border-radius:8px;padding:12px 14px;font-weight:800;line-height:1.45}.support-status.success{color:var(--green);background:#2076531f;border:1px solid #20765352}.support-status.error{color:var(--red);background:#a421211f;border:1px solid #a4212152}.support-footer{flex-wrap:wrap;justify-content:space-between;gap:16px;display:flex}.app-header{justify-content:space-between;align-items:flex-end;gap:16px;margin-bottom:14px;display:flex}.admin-brand{align-items:center;gap:14px;min-width:0;display:flex}.admin-brand-logo{flex:none;width:clamp(88px,7.5vw,132px);height:auto}.admin-header-actions{flex-direction:column;align-items:flex-end;gap:8px;min-width:min(100%,680px);display:flex}.admin-utility-row{justify-content:flex-end;align-items:center;gap:10px;display:flex}.admin-sidekick-logo{object-fit:contain;width:auto;max-width:min(170px,14vw);height:clamp(28px,2.4vw,42px)}.eyebrow,.service-category{color:var(--gold);letter-spacing:.06em;text-transform:uppercase;font-size:12px;font-weight:900}h1{color:var(--navy);margin-top:5px;font-size:30px;line-height:1.1}h2{color:var(--navy);font-size:20px;line-height:1.2}h3{color:var(--navy);font-size:15px}.calendar-row h3{font-size:14px}.lede{color:var(--muted);max-width:700px;margin-top:6px;line-height:1.5}.top-nav,.range-tabs{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.theme-toggle{align-items:center;gap:8px;margin-top:18px;padding:0;display:inline-flex}.theme-toggle.compact{gap:7px;margin-top:0;padding:0}.theme-toggle.compact button{width:20px;height:24px}.theme-toggle.compact .theme-icon{width:14px;height:14px}.theme-toggle button{color:var(--muted);background:0 0;border-bottom:2px solid #0000;border-radius:0;justify-content:center;align-items:center;width:24px;min-width:0;height:28px;padding:0;display:inline-flex}.theme-toggle button.active{border-bottom-color:var(--navy);color:var(--navy);background:0 0}.theme-icon{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:2px;width:16px;height:16px}.theme-icon circle,.theme-icon rect{fill:none}.top-nav a,.range-tabs a{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius-sm);color:var(--navy);transition:background var(--speed), color var(--speed);padding:9px 12px;font-size:13px;font-weight:800}.top-nav a:hover{background:var(--panel-muted)}.top-nav a.active{background:var(--navy);border-color:var(--navy);color:var(--button-ink)}.top-nav{scrollbar-width:none;flex-wrap:nowrap;gap:6px;min-width:0;overflow-x:auto}.top-nav::-webkit-scrollbar{display:none}.top-nav a{white-space:nowrap;flex:none;padding:7px 10px;font-size:12px}.range-tabs a.active{background:var(--navy);border-color:var(--navy);color:#fff}.metric-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-bottom:16px;display:grid}.info-bar{grid-template-columns:repeat(auto-fit,minmax(132px,1fr));gap:10px;min-width:0;display:grid}.dashboard-overview{border:1px solid var(--line);background:#fff;border-radius:8px;grid-template-columns:minmax(220px,.62fr) minmax(0,2.4fr);align-items:stretch;gap:12px;margin-bottom:10px;padding:10px;display:grid;box-shadow:0 12px 28px #10243d0d}.dashboard-overview-copy{border:1px solid var(--line);background:#f8fafc;border-radius:8px;flex-direction:column;justify-content:center;min-width:0;padding:12px;display:flex}.dashboard-overview-copy h2{margin-top:2px;font-size:18px}.dashboard-overview-copy span{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;margin-top:6px;font-size:12px;font-weight:800;line-height:1.35;display:block;overflow:hidden}.management-summary{grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:16px;margin-bottom:12px;display:grid}.config-workspace{grid-template-columns:minmax(340px,.42fr) minmax(0,1fr);align-items:start;gap:14px;display:grid}.access-workspace{grid-template-columns:repeat(auto-fit,minmax(min(100%,620px),1fr));align-items:start;gap:14px;margin-bottom:16px;display:grid}.access-workspace>.panel{container-type:inline-size}.create-panel{position:sticky;top:12px}.management-panel-header{justify-content:space-between;align-items:start;gap:14px;display:flex}.management-panel-header span,.form-section-title span{color:var(--muted);margin-top:5px;font-size:12px;font-weight:700;line-height:1.4;display:block}.settings-page-panel{max-width:980px}.settings-accordion{gap:12px;max-width:980px;display:grid}.settings-section{padding:0}.settings-section>summary{cursor:pointer;align-items:center;gap:10px;padding:14px 16px;list-style:none;display:flex}.settings-section>summary::-webkit-details-marker{display:none}.settings-section>summary:after{color:var(--muted);content:"▸";font-size:14px;font-weight:900}.settings-section[open]>summary:after{content:"▾"}.settings-section>summary h2{margin:0;font-size:18px}.settings-section>summary .eyebrow{letter-spacing:.06em;margin-bottom:2px}.settings-section-hint{color:var(--muted);margin-left:auto;font-size:12px;font-weight:800}.settings-section-body{border-top:1px solid var(--line);padding:16px}.settings-display{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;display:flex}.settings-display strong{color:var(--navy);font-size:15px;display:block}.settings-display span{color:var(--muted);font-size:13px;font-weight:600}.settings-help{color:var(--muted);margin:0 0 14px;font-size:13px;font-weight:600;line-height:1.5}.settings-form{grid-template-columns:repeat(4,minmax(0,1fr))}.form-section-title{border:1px solid var(--line);background:#f8fafc;border-radius:8px;padding:10px 12px}.form-section-title strong{color:var(--navy);font-size:13px;display:block}.form-actions{justify-content:flex-end;align-items:center;gap:8px;display:flex}.form-actions button{width:auto;min-height:38px}.metric-card,.panel,.record-card,.reward-card{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius-md);box-shadow:var(--shadow-card)}.metric-card{box-shadow:none;min-width:0;padding:10px;position:relative}.metric-card:before{background:var(--line);content:"";border-radius:999px;height:4px;position:absolute;top:0;left:10px;right:10px}.metric-card span{color:var(--muted);letter-spacing:.06em;text-transform:uppercase;font-size:10px;font-weight:700;display:block}.metric-card strong{color:var(--navy);letter-spacing:-.02em;margin-top:3px;font-size:26px;font-weight:700;display:block}.metric-clickable{transition:transform var(--speed), box-shadow var(--speed)}.metric-clickable:hover{box-shadow:var(--shadow-card);transform:translateY(-1px)}.metric-primary:before{background:#2ea3f2}.metric-good:before{background:var(--green)}.metric-attention:before{background:var(--gold)}.metric-clickable,.metric-expandable{cursor:pointer}.metric-clickable{color:inherit;text-decoration:none;transition:transform 80ms,box-shadow 80ms;display:block}.metric-clickable:hover{transform:translateY(-1px);box-shadow:0 2px 10px #00000014}.metric-expandable>summary{cursor:pointer;list-style:none;display:block}.metric-expandable>summary::-webkit-details-marker{display:none}.metric-go{color:var(--muted);font-size:14px;font-weight:900;position:absolute;top:11px;right:10px}.metric-detail{color:var(--muted);margin-top:8px;font-size:12px;font-weight:600;line-height:1.4}.metric-attention.metric-clickable strong{color:var(--red)}.customer-rolodex{flex-wrap:wrap;gap:4px;margin-top:12px;display:flex}.customer-rolodex a{border:1px solid var(--line);color:var(--navy);border-radius:8px;justify-content:center;align-items:center;min-width:34px;min-height:34px;font-size:13px;font-weight:800;text-decoration:none;display:inline-flex}.customer-rolodex a.active{background:var(--navy);border-color:var(--navy);color:var(--button-ink)}.customer-rolodex-clear{padding:0 10px;color:var(--muted)!important;min-width:auto!important}.customer-empty-panel{padding:18px}.metric-money:before{background:#1f8f5f}.metric-money strong{color:var(--green)}.metric-card p,.form-help,.calendar-row p{color:var(--muted);font-size:12px;line-height:1.3}.panel{padding:12px}.dashboard-panel,.two-column,.service-list,.page-intro-panel{margin-bottom:16px}.page-intro-panel{container-type:inline-size}.schedule-panel{min-height:0;margin-bottom:14px}.accounting-layout{grid-template-columns:minmax(0,1.45fr) minmax(320px,.75fr);gap:14px;display:grid}.accounting-focus-grid{grid-template-columns:minmax(0,1.1fr) minmax(360px,.9fr);gap:14px;margin-bottom:14px;display:grid}.accounting-import-grid{grid-template-columns:minmax(360px,.9fr) minmax(0,1.1fr);gap:14px;margin-bottom:14px;display:grid}.accounting-panel{min-width:0}.accounting-bucket-grid,.accounting-exception-list,.accounting-import-summary,.accounting-import-row-list{gap:10px;display:grid}.accounting-bucket{background:var(--panel-muted);border:1px solid var(--line);border-left:4px solid var(--navy);border-radius:8px;gap:4px;padding:12px;display:grid}.accounting-bucket span,.accounting-exception-card span,.readonly-note{color:var(--muted);font-size:12px;font-weight:800}.accounting-bucket strong{color:var(--navy);font-size:24px}.accounting-bucket small{color:var(--muted);font-weight:700;line-height:1.35}.accounting-bucket-good{border-left-color:var(--green)}.accounting-bucket-attention{border-left-color:var(--gold)}.accounting-bucket-danger{border-left-color:var(--red)}.accounting-exception-card,.accounting-empty-state{background:var(--panel-muted);border:1px solid var(--line);border-radius:8px;gap:10px;padding:12px;display:grid}.accounting-exception-card{border-left:4px solid var(--gold)}.accounting-exception-card div{gap:3px;display:grid}.accounting-exception-card strong,.accounting-empty-state strong{color:var(--navy)}.accounting-exception-card p,.accounting-empty-state span{color:var(--ink);font-size:13px;line-height:1.4}.accounting-import-form{gap:10px;display:grid}.accounting-import-controls{grid-template-columns:minmax(130px,.45fr) minmax(0,1fr);gap:10px;display:grid}.accounting-import-form textarea{resize:vertical;min-height:140px}.accounting-import-form button{justify-self:start;min-height:38px}.accounting-import-batch,.accounting-import-row{border:1px solid var(--line);border-radius:8px;padding:10px}.accounting-import-batch{background:var(--panel-muted);gap:3px;display:grid}.accounting-import-batch strong,.accounting-import-row strong{color:var(--navy)}.accounting-import-batch span,.accounting-import-batch small,.accounting-import-row small{color:var(--muted);font-size:12px;font-weight:800}.accounting-import-row summary{cursor:pointer;grid-template-columns:minmax(120px,.45fr) minmax(0,1fr);align-items:center;gap:10px;list-style:none;display:grid}.accounting-import-row summary::-webkit-details-marker{display:none}.accounting-import-row summary>span{gap:3px;min-width:0;display:grid}.import-row-matched{border-left:4px solid var(--green)}.import-row-needs_review{border-left:4px solid var(--gold)}.import-row-unmatched{border-left:4px solid var(--red)}.accounting-import-row-detail,.accounting-row-detail-grid{grid-template-columns:repeat(4,minmax(120px,1fr));gap:8px;margin-top:10px;display:grid}.accounting-detail-item{background:var(--panel-muted);border:1px solid var(--line);border-radius:8px;gap:4px;min-width:0;padding:8px;display:grid}.accounting-detail-item span{color:var(--muted);text-transform:uppercase;font-size:11px;font-weight:900}.accounting-detail-item strong{color:var(--navy);overflow-wrap:anywhere;font-size:12px}.quick-status-actions{flex-wrap:wrap;gap:8px;display:flex}.quick-status-actions button{min-height:34px;padding:0 10px}.quick-status-actions button[value=unpaid],.quick-status-actions button[value=refunded],.quick-status-actions button[value=void]{border:1px solid var(--line);color:var(--navy);background:0 0}.quick-status-actions button[value=unpaid]:hover,.quick-status-actions button[value=refunded]:hover,.quick-status-actions button[value=void]:hover{background:var(--panel)}.accounting-table-wrap{overflow-x:auto}.records-rangebar{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:12px;margin:2px 0 14px;display:flex}.records-presets{flex-wrap:wrap;gap:6px;display:inline-flex}.records-presets a{border:1px solid var(--line);color:var(--navy);background:0 0;border-radius:999px;align-items:center;min-height:34px;padding:6px 14px;font-size:12px;font-weight:800;text-decoration:none;display:inline-flex}.records-presets a.active{background:var(--navy);border-color:var(--navy);color:var(--button-ink)}.records-customrange{flex-wrap:wrap;align-items:flex-end;gap:8px;display:inline-flex}.records-customrange label{color:var(--muted);text-transform:uppercase;gap:2px;font-size:11px;font-weight:800;display:grid}.records-customrange input{border:1px solid var(--line);border-radius:8px;min-height:34px;padding:4px 8px}.records-controls{flex-wrap:wrap;gap:8px;margin-bottom:10px;display:flex}.records-search{border:1px solid var(--line);border-radius:8px;flex:220px;min-height:38px;padding:6px 12px}.records-filter{border:1px solid var(--line);border-radius:8px;min-height:38px;padding:6px 10px}.accounting-table.records th{padding:0}.records-sort{color:var(--muted);cursor:pointer;font:inherit;text-transform:uppercase;white-space:nowrap;background:0 0;border:0;align-items:center;gap:4px;width:100%;padding:10px 8px;font-size:11px;font-weight:900;display:inline-flex}.records-sort-caret{opacity:.65;font-size:10px}.records-row{cursor:pointer}.records-row:hover{background:#6da8ff14}.records-row.open{background:#6da8ff1f}.records-row.needs-review td:first-child{box-shadow:inset 3px 0 0 var(--red)}.records-total{white-space:nowrap;font-weight:900}.records-disclosure{color:var(--muted);text-align:center}.records-detail-row>td{background:#6da8ff0f}.records-empty{color:var(--muted);text-align:center;padding:18px 8px;font-weight:700}.accounting-table.records tfoot td{border-top:2px solid var(--line);font-weight:900}.accounting-table{border-collapse:collapse;width:100%;min-width:940px}.accounting-table th,.accounting-table td{border-bottom:1px solid var(--line);color:var(--navy);text-align:left;vertical-align:top;padding:10px 8px}.accounting-table th{color:var(--muted);text-transform:uppercase;font-size:11px;font-weight:900}.accounting-table td small{color:var(--muted);text-transform:capitalize;margin-top:3px;font-size:11px;font-weight:700;display:block}.accounting-table.records tbody tr:nth-child(4n+3){background:var(--panel-muted)}.accounting-table.records tbody tr{transition:background var(--speed)}.accounting-row-needs-review td{background:#c59a3d1a}.accounting-row-details{min-width:0;position:static}.accounting-row-details summary.accounting-row-summary{border:0;border-radius:0;grid-template-columns:70px 130px minmax(130px,1fr) minmax(200px,1.2fr) 160px 170px 80px 92px;align-items:center;gap:8px;width:100%;min-height:44px;padding:0;display:grid}.accounting-row-details summary.accounting-row-summary:hover{color:var(--blue)}.accounting-row-details summary.accounting-row-summary>span{min-width:0}.accounting-row-details .row-disclosure-label{color:var(--muted);text-align:right;text-transform:uppercase;font-size:11px;font-weight:900}.accounting-row-details[open] .row-disclosure-label{color:var(--blue)}.status-pill{border:1px solid var(--line);color:var(--navy);text-transform:capitalize;background:#6da8ff24;border-radius:999px;padding:3px 8px;font-size:11px;font-weight:900;display:inline-flex}.status-void{background:#ff787824;border-color:#ff787873}.audit-event-list{gap:10px;display:grid}.audit-event-card{border:1px solid var(--line);border-radius:8px;padding:10px}.audit-event-card div{justify-content:space-between;align-items:flex-start;gap:8px;display:flex}.audit-event-card strong{color:var(--navy);text-transform:capitalize}.audit-event-card span,.audit-event-card small,.muted-copy{color:var(--muted)}.audit-event-card p{color:var(--navy);margin:8px 0;font-size:12px}.secondary-link{background:var(--navy);border:1px solid var(--line);color:var(--button-ink);border-radius:8px;align-items:center;min-height:38px;padding:0 12px;font-weight:900;text-decoration:none;display:inline-flex}.accounting-export-form,.time-range-form{flex-wrap:wrap;align-items:end;gap:8px;margin:10px 0 12px;display:flex}.accounting-export-form label,.time-range-form label{min-width:140px}.sale-payment-form{gap:6px;min-width:260px;margin-top:8px;display:grid}.sale-payment-form input,.sale-payment-form select{min-height:32px}.sale-payment-form button{min-height:36px}.reconcile-details{min-width:160px;position:relative}.reconcile-details summary{border:1px solid var(--line);color:var(--navy);cursor:pointer;border-radius:8px;min-height:34px;padding:8px 10px;font-size:12px;font-weight:900;list-style:none;display:inline-flex}.reconcile-details summary::-webkit-details-marker{display:none}.reconcile-details[open]{z-index:4}.reconcile-details[open] .sale-payment-form{background:var(--panel);border:1px solid var(--line);box-shadow:0 16px 38px var(--shadow);border-radius:8px;width:min(360px,80vw);padding:10px;position:absolute;top:34px;right:0}.accounting-row-details[open] .sale-payment-form{box-shadow:none;width:min(620px,100%);margin-top:10px;position:static}.customer-workspace,.time-workspace{grid-template-columns:minmax(280px,.8fr) minmax(0,1.6fr);gap:14px;display:grid}.time-cycle-bar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:14px;padding:12px;display:flex}.time-cycle-types{gap:4px;display:inline-flex}.time-cycle-types a{border:1px solid var(--line);color:var(--navy);border-radius:999px;align-items:center;min-height:36px;padding:7px 16px;font-size:13px;font-weight:800;text-decoration:none;display:inline-flex}.time-cycle-types a.active{background:var(--navy);border-color:var(--navy);color:var(--button-ink)}.time-cycle-nav{align-items:center;gap:10px;display:inline-flex}.time-cycle-nav strong{color:var(--navy);text-align:center;min-width:150px;font-size:15px}.time-cycle-arrow{border:1px solid var(--line);color:var(--navy);border-radius:8px;justify-content:center;align-items:center;width:40px;height:40px;font-size:20px;font-weight:900;text-decoration:none;display:inline-flex}.time-cycle-anchor{flex-wrap:wrap;align-items:flex-end;gap:8px;display:inline-flex}.time-cycle-anchor label{color:var(--muted);text-transform:uppercase;gap:2px;font-size:11px;font-weight:800;display:grid}.time-cycle-anchor input{background:var(--input-bg);border:1px solid var(--input-border);color:var(--navy);border-radius:8px;min-height:36px;padding:0 10px}.time-pay-list{gap:8px;display:grid}.time-pay-row{border:1px solid var(--line);border-radius:10px;overflow:hidden}.time-pay-row>summary{cursor:pointer;grid-template-columns:minmax(0,1.6fr) auto auto auto;align-items:center;gap:10px;padding:12px 14px;list-style:none;display:grid}.time-pay-row>summary::-webkit-details-marker{display:none}.time-pay-row>summary strong{color:var(--navy);font-size:15px}.time-pay-row>summary span{color:var(--muted);font-size:12px;font-weight:800}.time-pay-row>summary b{color:var(--navy);text-align:right;font-size:18px}.time-pay-adj{color:var(--gold)!important}.time-pay-detail{border-top:1px solid var(--line);gap:2px;padding:8px 14px 12px;display:grid}.time-pay-day{grid-template-columns:minmax(0,1fr) auto minmax(0,1fr) auto;align-items:center;gap:8px;padding:6px 0;display:grid}.time-pay-day span{color:var(--muted);font-size:13px;font-weight:700}.time-pay-day-adj{text-align:right;color:var(--gold)!important}.time-pay-day b{color:var(--navy);text-align:right}.time-weeks{gap:10px;display:grid}.time-week-grid{grid-template-columns:repeat(7,minmax(0,1fr));gap:6px;display:grid}.time-week-day{background:var(--input-bg);border:1px solid var(--line);border-radius:10px;gap:6px;min-height:92px;padding:8px 6px;display:grid}.time-week-day.today{border-color:var(--navy);box-shadow:inset 0 0 0 1px var(--navy)}.time-week-dow{color:var(--muted);text-transform:uppercase;font-size:11px;font-weight:900}.time-week-chips{gap:4px;display:grid}.time-week-chip{background:var(--navy);color:var(--button-ink);border-radius:8px;padding:4px 6px;text-decoration:none;display:grid}.time-week-chip strong{font-size:12px}.time-week-chip span{opacity:.85;font-size:11px;font-weight:800}.time-week-empty{color:var(--muted);text-align:center;font-size:14px}.time-adjust-panel>summary{cursor:pointer;justify-content:space-between;align-items:center;gap:10px;padding:4px;list-style:none;display:flex}.time-adjust-panel>summary::-webkit-details-marker{display:none}.time-adjust-panel>summary strong{color:var(--navy);font-size:16px}.time-adjust-panel>summary span{color:var(--muted);font-size:12px;font-weight:800}.time-adjust-body{gap:14px;margin-top:12px;display:grid}.time-adjust-body .time-adjustment-form{border-top:0;margin-top:0;padding-top:0}@media (max-width:680px){.time-week-grid{grid-template-columns:none;grid-auto-columns:120px;grid-auto-flow:column;overflow-x:auto}}.customer-result-list,.time-entry-list{gap:8px;display:grid}.customer-result{border:1px solid var(--line);color:var(--navy);border-radius:8px;gap:3px;padding:10px;text-decoration:none;display:grid}.customer-result.selected{border-color:var(--blue);box-shadow:inset 4px 0 0 var(--blue)}.customer-result:hover,.customer-result:focus-visible{border-color:var(--blue);box-shadow:0 8px 20px #10243d14}.customer-result span,.customer-result small,.customer-detail-list dt,.time-entry-row span,.time-entry-row small{color:var(--muted)}.customer-result .customer-result-action{color:var(--blue);text-transform:uppercase;margin-top:4px;font-weight:900}.customer-detail-list{grid-template-columns:max-content minmax(0,1fr);gap:8px 14px;margin:12px 0;display:grid}.customer-detail-list dd{color:var(--navy);margin:0;font-weight:800}.time-range-form.stacked{align-items:stretch;margin-top:0;display:grid}.time-adjustment-form{border-top:1px solid var(--line);gap:10px;margin-top:16px;padding-top:16px;display:grid}.time-adjustment-form h3{color:var(--navy);margin:0;font-size:20px}.time-adjustment-form label{color:var(--muted);gap:6px;font-size:13px;font-weight:800;display:grid}.time-adjustment-form input,.time-adjustment-form select{background:var(--input-bg);border:1px solid var(--input-border);color:var(--navy);border-radius:8px;min-height:44px;padding:0 12px}.time-summary-list{gap:8px;margin-top:14px;display:grid}.time-summary-list div{background:var(--panel-muted);border:1px solid var(--line);border-radius:8px;gap:3px;padding:10px;display:grid}.time-summary-list span,.time-day-card-header span,.time-shift-row span,.time-employee-head span{color:var(--muted);font-size:12px;font-weight:800}.time-summary-list strong,.time-day-card-header strong,.time-shift-row strong,.time-employee-row strong{color:var(--navy)}.time-employee-table{gap:6px;display:grid}.time-employee-head,.time-employee-row{grid-template-columns:minmax(180px,1.35fr) 72px repeat(4,minmax(110px,.8fr));align-items:center;gap:10px;display:grid}.time-employee-head{border-bottom:1px solid var(--line);padding:0 8px 8px}.time-employee-row{background:var(--panel-muted);border:1px solid var(--line);border-radius:8px;padding:10px 8px}.time-day-panel{margin-top:14px}.time-day-list{grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:10px;display:grid}.time-day-card{border:1px solid var(--line);border-radius:8px;gap:10px;padding:12px;display:grid}.time-day-card-header,.time-shift-row{justify-content:space-between;align-items:center;gap:10px;display:flex}.time-day-card-header div,.time-shift-row div{gap:3px;display:grid}.time-day-card-header b,.time-shift-row b{color:var(--navy);white-space:nowrap}.time-shift-list{gap:8px;display:grid}.time-shift-row{background:var(--panel-muted);border:1px solid var(--line);border-radius:8px;padding:8px}.time-shift-row small{color:var(--muted);font-weight:700}.time-adjustment-list{gap:10px;display:grid}.time-adjustment-card{background:var(--panel-muted);border:1px solid var(--line);border-radius:8px;justify-content:space-between;align-items:center;gap:12px;padding:12px;display:flex}.time-adjustment-card>div{gap:4px;display:grid}.time-adjustment-card strong{color:var(--navy)}.time-adjustment-card span,.time-adjustment-card small{color:var(--muted);font-weight:700}.time-entry-row{border:1px solid var(--line);border-radius:8px;justify-content:space-between;align-items:start;gap:12px;padding:10px;display:flex}.time-entry-row>div:first-child{gap:3px;display:grid}.time-entry-actions{flex-wrap:wrap;justify-content:flex-end;gap:6px;display:flex}.time-entry-actions button{min-height:34px;padding:0 10px}.metric-stack{gap:12px;display:grid}.section-header,.record-header{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.dashboard-panel-header{grid-template-columns:minmax(240px,.9fr) minmax(0,1.6fr);align-items:start;gap:14px;display:grid}.dashboard-panel-header span{color:var(--muted);margin-top:5px;font-size:12px;font-weight:700;line-height:1.4;display:block}.dashboard-panel-header .range-tabs{justify-content:flex-end}.dashboard-panel-header .range-tabs a{padding:7px 10px;font-size:12px}.dashboard-analytics-grid{grid-template-columns:1fr;gap:14px;display:grid}.bar-chart{grid-template-columns:repeat(12,minmax(0,1fr));align-items:end;gap:10px;min-height:230px;margin-top:22px;display:grid}.bar-column{flex-direction:column;align-items:center;gap:7px;min-width:0;display:flex}.bar-track{background:#eef2f6;border-radius:8px;align-items:end;width:100%;height:160px;display:flex;overflow:hidden}.bar-fill{background:linear-gradient(180deg, var(--gold), #9f7728);border-radius:8px 8px 0 0;width:100%}.bar-column strong,.bar-column span{font-size:12px}.chart-wrap{margin-top:18px}.interactive-chart-shell{margin-top:14px}.interactive-chart-grid{grid-template-columns:minmax(0,1.9fr) minmax(260px,.72fr);gap:12px;display:grid}.interactive-chart-stage{position:relative}.line-chart{border:1px solid var(--line);background:#f8fafc;border-radius:8px;width:100%;height:auto;min-height:230px;display:block}.interactive-line-chart{min-height:280px}.chart-axis{stroke:#cad2df;stroke-width:1.5px}.chart-grid-line{stroke:#e8edf4;stroke-width:1px}.axis-label,.axis-tick{fill:var(--muted);font-size:12px;font-weight:800}.line-primary,.line-secondary,.line-money{stroke-linecap:round;stroke-linejoin:round;stroke-width:4px}.line-primary{stroke:var(--navy)}.chart-dot{fill:#fff;pointer-events:none;stroke:var(--navy);stroke-width:3px}.chart-dot.selected{fill:var(--gold)}.chart-hit-target{cursor:pointer;fill:#0000;stroke:#0000;outline:none}.chart-hit-target:focus+.chart-dot{stroke:var(--gold);stroke-width:5px}.line-secondary{stroke:var(--gold)}.line-money{stroke:var(--green)}.chart-legend{flex-wrap:wrap;gap:14px;margin-top:12px;display:flex}.chart-legend span{color:var(--muted);align-items:center;gap:7px;font-size:13px;font-weight:800;display:flex}.chart-legend i{border-radius:999px;width:10px;height:10px;display:inline-block}.legend-primary{background:var(--navy)}.legend-secondary{background:var(--gold)}.legend-money{background:var(--green)}.chart-table{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-top:14px;display:grid}.chart-hover-card{border:1px solid var(--line);background:#fff;border-radius:8px;padding:10px 12px;position:absolute;top:14px;left:14px;box-shadow:0 14px 28px #10243d1f}.chart-hover-card strong,.chart-hover-card span{display:block}.chart-hover-card strong{color:var(--navy);font-size:14px}.chart-hover-card span{color:var(--muted);margin-top:4px;font-size:12px}.booking-day-panel{border:1px solid var(--line);background:#f8fafc;border-radius:8px;padding:12px}.day-summary{grid-template-columns:repeat(auto-fit,minmax(110px,1fr));gap:8px;margin-top:10px;display:grid}.day-summary span{border:1px solid var(--line);color:var(--navy);background:#fff;border-radius:8px;padding:8px;font-size:12px;font-weight:900}.booking-detail-list{gap:8px;margin-top:12px;display:grid}.booking-detail-card{border:1px solid var(--line);color:var(--ink);cursor:pointer;text-align:left;background:#fff;border-radius:8px;width:100%;min-height:auto;padding:10px;transition:border-color .15s,box-shadow .15s,transform .15s}.booking-detail-card:hover,.booking-detail-card:focus-visible,.booking-detail-card.expanded{background:#fff;border-color:#9eb8d9;box-shadow:0 8px 18px #10243d14}.booking-detail-card:focus-visible{outline-offset:2px;outline:2px solid #2ea3f2}.booking-detail-card strong,.booking-detail-card span,.booking-detail-card small,.booking-detail-card b,.booking-detail-card em{display:block}.booking-detail-card strong{color:var(--navy);font-size:14px}.booking-detail-card span,.empty-detail{color:var(--muted);margin-top:4px;font-size:12px;line-height:1.45}.booking-detail-card small{color:#2a6f9f;text-transform:uppercase;margin-top:8px;font-size:11px;font-weight:900}.booking-detail-expanded{border-top:1px dashed var(--line);gap:3px;margin-top:10px;padding-top:10px;display:grid}.booking-detail-expanded b{color:var(--navy);text-transform:uppercase;margin-top:3px;font-size:11px;font-weight:900}.booking-detail-expanded em{color:var(--ink);font-size:12px;font-style:normal;line-height:1.4}.chart-table div{border:1px solid var(--line);background:#fff;border-radius:8px;padding:10px}.chart-table strong,.chart-table span{display:block}.chart-table strong{color:var(--navy);font-size:13px}.chart-table span{color:var(--muted);margin-top:4px;font-size:12px}.custom-range-form{grid-template-columns:repeat(2,minmax(0,170px)) auto;align-items:end;gap:10px;margin-top:12px;display:grid}.custom-range-form button{align-self:end;width:auto;min-height:39px;padding:8px 12px}.bar-column span{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;text-align:center;width:100%;overflow:hidden}.two-column{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:16px;display:grid}.service-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.catalog-create-form{grid-template-columns:minmax(220px,1.4fr) minmax(130px,.7fr) minmax(110px,.55fr) minmax(150px,.8fr);align-items:start;gap:14px;display:grid}.create-panel .catalog-create-form{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.reward-create-form{grid-template-columns:minmax(240px,1.3fr) minmax(140px,.65fr) minmax(120px,.55fr)}.create-panel .reward-create-form{grid-template-columns:repeat(2,minmax(0,1fr))}.catalog-list{gap:10px;margin-top:12px;display:grid}.catalog-record{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius-md);box-shadow:var(--shadow-card);overflow:hidden}.catalog-summary{cursor:pointer;transition:background var(--speed);grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:12px;padding:12px 14px;list-style:none;display:grid}.catalog-summary:hover{background:var(--panel-muted)}.catalog-summary:after{color:var(--muted);content:"▾";transition:transform var(--speed);font-size:13px}.catalog-record[open]>.catalog-summary:after{transform:rotate(180deg)}.catalog-summary::-webkit-details-marker{display:none}.catalog-summary-main,.catalog-summary-meta{align-items:center;gap:10px;min-width:0;display:flex}.catalog-summary-main{flex-direction:column;align-items:flex-start;gap:4px}.catalog-summary-main strong{color:var(--navy);font-size:16px}.catalog-summary-main small{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;max-width:680px;font-size:12px;line-height:1.35;overflow:hidden}.catalog-summary-meta span{border:1px solid var(--line);color:var(--navy);white-space:nowrap;background:#f8fafc;border-radius:999px;padding:6px 9px;font-size:12px;font-weight:900}.list-panel .catalog-summary-meta{justify-content:flex-end}.catalog-summary-meta .mini-status.active{color:var(--green);background:#e8f7ef;border-color:#b8e0c9}.catalog-summary-meta .mini-status.inactive{color:var(--red);background:#fff0f0;border-color:#f3c7c7}.catalog-record .record-form,.catalog-record .record-delete-form{border-top:1px solid var(--line);padding:12px 14px}.record-card,.reward-card{flex-direction:column;gap:16px;padding:16px;display:flex}.record-form{flex-direction:column;gap:12px;display:flex}.danger-button{color:var(--red);background:#fff0f0;border:1px solid #f3c7c7;width:100%}.danger-button:hover{background:#ffe3e3}.secondary-button{border:1px solid var(--line);color:var(--navy);background:#fff}.secondary-button:hover{background:#eef4ff}.compact-button{border-radius:7px;width:auto;min-height:32px;padding:0 10px;font-size:12px}.reward-list{gap:14px;margin-top:16px;display:grid}.service-code{color:var(--muted);font-family:var(--font-geist-mono), Consolas, monospace;margin-top:6px;font-size:12px}.active-toggle{color:var(--navy);white-space:nowrap;align-items:center;gap:8px;display:flex}.active-toggle input{width:18px;height:18px;margin:0}.setting-toggle{border:1px solid var(--line);background:#f8fafc;border-radius:8px;align-items:center;min-height:66px;padding:12px}.weekday-selector{border:1px solid var(--line);background:#f8fafc;border-radius:8px;flex-wrap:wrap;gap:8px;padding:10px;display:flex}.weekday-selector .field-label{flex-basis:100%}.weekday-option{border:1px solid var(--line);color:var(--navy);background:#fff;border-radius:8px;justify-content:center;align-items:center;gap:8px;min-width:54px;padding:8px 10px;font-size:13px;display:flex}.weekday-option input{width:16px;height:16px;margin:0}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.compact-form{margin-top:14px}.wide{grid-column:1/-1}.calendar-list{gap:10px;margin-top:16px;display:grid}.compact-calendar-list{gap:6px}.calendar-row{border:1px solid var(--line);background:#f8fafc;border-radius:8px;grid-template-columns:94px minmax(0,1fr) auto;align-items:center;gap:10px;padding:8px 10px;display:grid}.calendar-time strong,.calendar-time span{display:block}.calendar-time strong{font-weight:900}.calendar-time span{color:var(--muted);margin-top:2px;font-size:12px}.status-pill{text-transform:uppercase;border-radius:999px;padding:6px 10px;font-size:12px;font-weight:900}.status-pill.booked{color:var(--navy);background:#e8f1ff}.status-pill.completed{color:var(--green);background:#e8f7ef}.status-pill.cancelled{color:var(--red);background:#fff0f0}.hour-select{grid-template-columns:minmax(0,1fr) 96px;gap:10px;display:grid}.assignment-form{border:1px solid var(--line);background:#fff;border-radius:8px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:8px;margin-top:6px;padding:7px 8px;display:grid}.assignment-title{color:var(--navy);font-size:11px;font-weight:900}.assignment-options{flex-wrap:wrap;gap:6px;margin:0;display:flex}.assignment-option{border:1px solid var(--line);color:var(--navy);background:#f8fafc;border-radius:8px;align-items:center;gap:5px;padding:4px 6px;font-size:11px;display:flex}.assignment-option input{width:12px;height:12px;margin:0}.assignment-option-disabled{opacity:.65}.assignment-warning{color:var(--red);max-width:190px;font-size:10px;font-weight:800;line-height:1.2}.calendar-assignment-card{border:1px solid var(--line);background:#f8fafc;border-radius:8px;padding:7px}.calendar-assignment-card .calendar-row{border:0;padding:0}.schedule-calendar-shell{margin-top:8px}.schedule-calendar-shell :is(a,button,summary,input,select,textarea):focus-visible{outline-offset:2px;outline:3px solid #2ea3f2}.schedule-toolbar{justify-content:space-between;align-items:center;gap:10px;margin-bottom:8px;display:flex}.schedule-toolbar-actions{flex-wrap:nowrap;align-items:center;gap:5px;display:flex}.schedule-toolbar-actions a{border:1px solid var(--line);color:var(--navy);background:#fff;border-radius:8px;min-height:30px;padding:7px 9px;font-size:11px;font-weight:900}.schedule-toolbar-actions a.active,.schedule-picker summary.active{background:var(--navy);border-color:var(--navy);color:#fff}.schedule-picker{position:relative}.schedule-picker summary{border:1px solid var(--line);color:var(--navy);cursor:pointer;background:#fff;border-radius:8px;min-height:30px;padding:7px 9px;font-size:11px;font-weight:900;list-style:none}.schedule-picker summary::-webkit-details-marker{display:none}.schedule-picker-menu{border:1px solid var(--line);z-index:20;background:#fff;border-radius:8px;gap:8px;min-width:220px;padding:10px;display:grid;position:absolute;top:calc(100% + 6px);right:0;box-shadow:0 18px 36px #10243d2e}.schedule-picker-menu strong{color:var(--navy);font-size:12px}.week-picker-heading,.week-picker-row{grid-template-columns:repeat(7,1fr);gap:3px;display:grid}.week-picker-heading span{color:var(--muted);text-align:center;font-size:10px;font-weight:900}.week-picker-row{border:1px solid var(--line);color:var(--navy);background:#f8fafc;border-radius:8px;padding:5px;text-decoration:none}.week-picker-row:hover{border-color:var(--navy);background:#eef4ff}.week-picker-row span{text-align:center;font-size:11px;font-weight:900}.week-picker-row .muted{color:var(--muted);opacity:.55}.month-picker-nav{grid-template-columns:32px minmax(0,1fr) 32px;align-items:center;gap:8px;display:grid}.month-picker-nav a{text-align:center}.month-picker-grid{grid-template-columns:repeat(3,1fr);gap:6px;display:grid}.month-picker-grid a{text-align:center}.schedule-calendar-grid{grid-template-columns:minmax(750px,1fr) minmax(210px,.24fr);gap:10px;display:grid}.schedule-feedback{grid-column:1/-1;margin:0}.date-staffing-panel{border:1px solid var(--line);background:#fff;border-radius:8px;grid-template-columns:minmax(180px,.28fr) minmax(0,1fr);gap:8px;margin-bottom:8px;padding:8px 10px;display:grid}.schedule-legend{border:1px solid var(--line);background:#fff;border-radius:8px;flex-wrap:wrap;align-items:center;gap:6px 10px;margin-bottom:8px;padding:6px 10px;display:flex}.schedule-legend span{color:var(--muted);align-items:center;gap:6px;font-size:11px;font-weight:900;display:inline-flex}.change-request-panel{background:#fff8e7;border:1px solid #ffe0a3;border-radius:8px;gap:10px;margin-bottom:8px;padding:12px;display:grid}.change-request-panel h4{color:var(--navy);font-size:16px}.change-request-list{gap:10px;display:grid}.change-request-card{border:1px solid var(--line);background:#fff;border-radius:8px;gap:10px;padding:12px;display:grid}.change-request-card span{color:var(--muted);margin-top:3px;font-size:12px;display:block}.change-request-card dl{grid-template-columns:70px minmax(0,1fr);gap:5px 10px;display:grid}.change-request-card dt{color:var(--muted);font-size:11px;font-weight:900}.change-request-card dd{color:var(--navy);overflow-wrap:anywhere;font-size:12px;font-weight:800}.change-request-actions{grid-template-columns:minmax(110px,.3fr) minmax(0,1fr);gap:8px;display:grid}.change-request-actions form{align-items:center;gap:8px;display:flex}.change-request-actions input{min-height:38px;margin-top:0}.legend-dot{border-radius:999px;width:9px;height:9px;display:inline-block}.staffed-dot,.assigned-dot{background:var(--green)}.unassigned-dot{background:var(--navy)}.overdue-dot{background:var(--gold)}.approval-dot{background:#7c3aed}.date-staffing-header{justify-content:space-between;align-items:center;gap:8px;min-width:0;display:flex}.date-staffing-header small{color:var(--muted);margin-top:2px;font-size:10px;font-weight:800;line-height:1.2;display:block}.selected-date-chips,.date-staff-list{flex-wrap:nowrap;gap:6px;min-width:0;padding-bottom:1px;display:flex;overflow-x:auto}.selected-date-chips span{color:var(--navy);background:#eef4ff;border:1px solid #cdd7e5;border-radius:999px;padding:6px 9px;font-size:11px;font-weight:900}.date-staff-option{border:1px solid var(--line);color:var(--navy);text-align:left;background:#f8fafc;border-radius:8px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:6px;min-width:142px;padding:6px 7px;display:grid}button.date-staff-option{min-height:42px}.add-selected-workers-button{white-space:nowrap}.date-staff-option label{grid-template-columns:14px minmax(0,1fr);align-items:center;gap:7px;min-width:0;display:grid}.date-staff-option input{width:14px;height:14px;margin:0}.date-staff-option button{border:1px solid var(--line);color:var(--navy);cursor:grab;background:#fff;min-height:28px;padding:0 8px;font-size:11px}.date-staff-option button:hover{background:#eef4ff}.date-staff-option button:active{cursor:grabbing}.date-staff-option strong,.date-staff-option small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.date-staff-option strong{font-size:11px}.date-staff-option .worker-contact,.date-staff-option .worker-drag-hint{color:var(--muted);margin-top:2px;font-size:10px;display:none}.month-board{grid-template-columns:repeat(7,minmax(92px,1fr));gap:1px;min-width:0;display:grid}.month-day{border:1px solid var(--line);color:var(--navy);background:#fff;border-radius:8px;min-height:84px;padding:9px}.month-day:hover,.month-day:focus-visible{border-color:var(--navy);background:#eef4ff}.month-day.staffed{background:#e8f7ef;border-color:#8cc8a8}.month-day.pending-approval{background:#f4e8ff;border-color:#a855f7;box-shadow:inset 0 0 0 1px #7c3aed4d}.month-day.muted{opacity:.45}.month-day strong,.month-day b,.month-day span,.month-day em{display:block}.month-day strong{color:var(--muted);text-transform:uppercase;font-size:11px}.month-day b{color:var(--navy);margin-top:2px;font-size:14px}.month-day span{color:var(--muted);margin-top:20px;font-size:11px;font-weight:900}.month-day em{color:var(--green);margin-top:6px;font-size:10px;font-style:normal;font-weight:900}.month-day .month-approval-needed{color:#6d28d9}.schedule-board{border:1px solid var(--line);-webkit-user-select:none;user-select:none;border-radius:8px;max-height:min(640px,100vh - 330px);overflow:auto}.google-week-board{min-width:0;display:grid}.google-time-gutter{border-right:1px solid var(--line);background:#fff;position:relative}.google-time-gutter span{color:var(--muted);font-size:11px;font-weight:900;position:absolute;left:8px;transform:translateY(-50%)}.google-day-column{border-right:1px solid var(--line);background:#f8fafc;position:relative}.google-day-column.staffed{background:#eefaf3}.google-day-column.selected{background:#eef4ff}.google-day-column.drop-target:hover{background:#fff8e5}.schedule-cell-keyboard-create{background:var(--navy);border:1px solid var(--navy);color:var(--button-ink);opacity:0;z-index:4;border-radius:999px;width:auto;min-height:26px;padding:0 8px;font-size:10px;font-weight:900;transition:opacity .12s,transform .12s;position:absolute;top:6px;right:6px;transform:translateY(-2px)}.google-day-column:hover .schedule-cell-keyboard-create,.schedule-cell-keyboard-create:focus-visible{opacity:1;transform:translateY(0)}.google-hour-line{border-top:1px solid var(--line);pointer-events:none;position:absolute;left:0;right:0}.google-booking-event{border:1px solid #b8c7db;border-left:4px solid var(--navy);color:var(--ink);cursor:grab;text-align:left;z-index:1;background:#fff;border-radius:8px;min-height:34px;padding:5px 6px;display:block;position:absolute;left:4px;right:4px;overflow:hidden;box-shadow:0 10px 18px #10243d14}.google-booking-event.assigned{border-left-color:var(--green);background:#f3faf6}.google-booking-event.unassigned{border-left-color:var(--navy);background:#eef4ff;border-color:#b9cef0}.google-booking-event.unassigned em{color:var(--navy)}.google-booking-event.pending-approval{background:#f4e8ff;border-color:#7c3aed;box-shadow:0 12px 22px #7c3aed38}.google-booking-event.pending-approval strong{color:#4c1d95}.google-booking-event.pending-approval span,.google-booking-event.pending-approval em{color:#5b21b6}.google-booking-event .approval-needed-label{color:#fff;text-transform:uppercase;background:#7c3aed;border-radius:999px;width:fit-content;max-width:100%;margin-top:2px;padding:3px 5px;font-size:8px;font-weight:900;line-height:1;display:inline-block}.google-booking-event:hover,.google-booking-event:focus-visible,.google-booking-event.selected{border-color:var(--navy);z-index:3;background:#eef4ff}.google-booking-event.pending-approval:hover,.google-booking-event.pending-approval.selected{background:#ead5ff;border-color:#6d28d9}.google-booking-event strong,.google-booking-event span,.google-booking-event em{text-overflow:ellipsis;white-space:nowrap;z-index:1;display:block;position:relative;overflow:hidden}.google-booking-event strong{color:var(--navy);font-size:10px;line-height:1.25}.google-booking-event span{color:var(--muted);margin-top:1px;font-size:9px;line-height:1.25}.google-booking-event em{color:var(--green);margin-top:2px;font-size:9px;font-style:normal;font-weight:900}.schedule-header-row,.schedule-hour-row{grid-template-columns:64px repeat(7,minmax(98px,1fr));min-width:0;display:grid}.schedule-header-row{z-index:2;background:#fff;position:sticky;top:0}.schedule-time-header,.schedule-day-header,.schedule-time-cell,.schedule-day-cell{border-bottom:1px solid var(--line);border-right:1px solid var(--line);padding:7px}button.schedule-day-header{border:0;border-bottom:1px solid var(--line);border-right:1px solid var(--line);color:inherit;cursor:pointer;text-align:left;background:#fff;border-radius:0;min-height:0;padding:5px 6px}button.schedule-day-header:hover,button.schedule-day-header:focus-visible,button.schedule-day-header.selected{background:#eef4ff}button.schedule-day-header.staffed{border-top:3px solid var(--green);background:#e8f7ef}button.schedule-day-header.selected.staffed{box-shadow:inset 0 0 0 2px #58a77a}.schedule-time-header,.schedule-time-cell{color:var(--muted);background:#fff;font-size:11px;font-weight:900}.schedule-day-header strong,.schedule-day-header span{display:block}.schedule-day-header strong{color:var(--navy);font-size:12px}.schedule-day-header span{color:var(--muted);margin-top:2px;font-size:10px}.schedule-day-header small{color:var(--green);margin-top:4px;font-size:10px;font-weight:900;display:none}.day-worker-summary{background:#ffffffbd;border:1px solid #58a77a57;border-radius:8px;gap:1px;min-height:26px;margin-top:4px;padding:4px 5px;display:grid}.day-worker-summary b,.day-worker-summary span{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.day-worker-summary b{color:var(--green);font-size:10px}.day-worker-summary span{color:var(--navy);font-size:9px;font-weight:900}.day-worker-summary.empty{border-color:#efc2c2}.day-worker-summary.empty b{color:var(--red)}.schedule-day-cell{background:#f8fafc;min-height:74px}.schedule-day-cell.staffed{background:#eefaf3}.schedule-day-cell.selected{background:#eef4ff}.schedule-day-cell.selected.staffed{background:#e8f7ef;box-shadow:inset 0 0 0 2px #58a77a73}.schedule-day-cell.drop-target{outline-offset:-6px;outline:2px dashed #0e2f542e}.schedule-day-cell.drop-target:hover{background:#fff8e5;outline-color:#d69f2d}.schedule-event{border:1px solid #cdd7e5;border-left:4px solid var(--navy);color:var(--ink);cursor:pointer;text-align:left;background:#fff;border-radius:8px;width:100%;min-height:0;margin-bottom:5px;padding:6px 7px;display:block}.schedule-event[draggable=true]{cursor:grab}.schedule-event[draggable=true]:active{cursor:grabbing}.schedule-event:hover,.schedule-event.selected{border-color:var(--navy);background:#eef4ff}.schedule-event strong,.schedule-event span{display:block}.schedule-event strong{color:var(--navy);font-size:11px;line-height:1.25}.schedule-event span{color:var(--muted);margin-top:2px;font-size:10px;line-height:1.25}.booking-inspector{border:1px solid var(--line);background:#f8fafc;border-radius:8px;max-height:min(640px,100vh - 330px);padding:10px;position:sticky;top:12px;overflow:auto}.day-crew-card{border:1px solid var(--line);background:#fff;border-radius:8px;gap:8px;margin-top:8px;padding:8px;display:grid}.crew-card-title{color:var(--muted);text-transform:uppercase;margin-bottom:6px;font-size:11px;font-weight:900}.crew-chip-list{flex-wrap:wrap;gap:6px;display:flex}.crew-chip{border-radius:999px;align-items:center;gap:5px;padding:6px 8px;font-size:11px;font-weight:900;display:inline-flex}.crew-chip small{opacity:.72;font-size:10px}.crew-chip.working{color:var(--green);background:#e8f7ef}.crew-chip-main{color:inherit;font:inherit;text-align:left;background:0 0;border:0;align-items:center;gap:5px;min-height:auto;padding:0;display:inline-flex}.draggable-crew-chip{cursor:grab}.editable-crew-chip{cursor:pointer}.editable-crew-chip:hover,.editable-crew-chip:focus-visible{color:#145c40;text-underline-offset:2px;outline:none;text-decoration:underline}.draggable-crew-chip:active{cursor:grabbing}.crew-chip.assigned{color:var(--navy);background:#e8f1ff}.booking-assignment-dropzone{background:#f8fafc;border:1px dashed #b8c7dc;border-radius:8px;min-height:34px;padding:4px}.crew-chip.warning{color:var(--red);background:#fff0f0}.crew-chip.empty{border:1px solid var(--line);color:var(--muted);background:#f8fafc}.day-staffing-card{border:1px solid var(--line);background:#fff;border-radius:8px;gap:10px;margin-bottom:14px;padding:12px;display:grid}.day-staffing-header{justify-content:space-between;align-items:start;gap:12px;display:flex}.day-staffing-header span{border:1px solid var(--line);color:var(--navy);white-space:nowrap;background:#f8fafc;border-radius:999px;padding:6px 8px;font-size:11px;font-weight:900}.day-staff-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;display:grid}.day-staff-option{border:1px solid var(--line);color:var(--navy);background:#f8fafc;border-radius:8px;grid-template-columns:14px minmax(0,1fr);align-items:center;gap:8px;padding:7px;display:grid}.day-staff-option input{width:14px;height:14px;margin:0}.day-staff-option strong,.day-staff-option small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.day-staff-option strong{font-size:12px}.day-staff-option small{color:var(--muted);margin-top:2px;font-size:10px}.day-notify-grid{grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:10px;display:grid}.notify-toggle{border:1px solid var(--line);background:#f8fafc;border-radius:8px;min-height:39px;padding:10px}.default-schedule-toggle{white-space:normal;align-items:flex-start;line-height:1.35}.inspector-list{gap:7px;margin-top:12px;display:grid}.inspector-row{border:1px solid var(--line);background:#fff;border-radius:8px;grid-template-columns:82px minmax(0,1fr);align-items:start;gap:8px;padding:8px;display:grid}.inspector-row span{color:var(--muted);font-size:12px;font-weight:800}.inspector-row strong{color:var(--navy);font-size:12px;line-height:1.35}.inspector-assignment-form{grid-template-columns:1fr;align-items:stretch;margin-top:12px}.booking-editor-shell{gap:12px;margin-top:12px;display:grid}.booking-editor-topbar{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;display:flex}.booking-editor-form{gap:9px;display:grid}.booking-editor-actions{justify-content:flex-end;display:flex}.booking-editor-actions button{border-radius:7px;min-height:32px;padding:0 10px;font-size:12px}.booking-editor-form label,.vehicle-adder-fields label{color:var(--navy);gap:5px;font-size:12px;font-weight:900;display:grid}.booking-editor-form input,.booking-editor-form select,.vehicle-adder-fields input,.vehicle-adder-fields select{border:1px solid var(--line);color:var(--ink);font:inherit;background:#fff;border-radius:8px;min-height:38px;padding:8px 10px}.booking-delete-form{gap:8px;display:flex}.booking-employee-assignment{border:1px solid var(--line);background:#fff;border-radius:8px;gap:9px;padding:10px;display:grid}.employee-drag-pool,.assigned-worker-list{gap:7px;display:grid}.employee-drag-pool button,.assigned-worker-row{border:1px solid var(--line);color:var(--navy);text-align:left;background:#f8fafc;border-radius:8px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px;width:100%;min-height:0;padding:7px 8px;display:grid}.employee-drag-pool button{cursor:grab;grid-template-columns:1fr}.employee-drag-pool strong,.employee-drag-pool span,.assigned-worker-row strong,.assigned-worker-row small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.employee-drag-pool strong,.assigned-worker-row strong{font-size:12px}.employee-drag-pool span,.assigned-worker-row small{color:var(--muted);margin-top:2px;font-size:10px}.assigned-worker-row button{border:1px solid var(--line);color:var(--red);background:#fff;min-height:30px;padding:6px 8px}.assigned-worker-row .assignment-feedback{grid-column:1/-1}.revenue-running-total{background:#e8f7ef;border:1px solid #b8e0c9;border-radius:8px;margin:10px 0 12px;padding:10px}.revenue-running-total span,.revenue-running-total strong{display:block}.revenue-running-total span{color:var(--green);text-transform:uppercase;font-size:11px;font-weight:900}.revenue-running-total strong{color:var(--navy);margin-top:3px;font-size:24px}.revenue-selection-label{margin-top:4px}.vehicle-adder-fields{border:1px solid var(--line);background:#f8fafc;border-radius:8px;gap:10px;padding:12px;display:grid}.vehicle-adder-fields legend{color:var(--navy);padding:0 4px;font-size:12px;font-weight:900}.vehicle-adder-grid{grid-template-columns:minmax(0,1fr) minmax(120px,.5fr);gap:10px;display:grid}.vehicle-adder-fields p{color:var(--muted);font-size:11px;line-height:1.35}details.vehicle-adder-fields>summary,details.global-modifier-panel>summary.collapse-summary{cursor:pointer;list-style:none}details.vehicle-adder-fields>summary::-webkit-details-marker{display:none}details.global-modifier-panel>summary::-webkit-details-marker{display:none}details.vehicle-adder-fields>summary{color:var(--navy);align-items:center;padding:2px 0;font-size:12px;font-weight:800;display:flex}details.vehicle-adder-fields[open]>summary{margin-bottom:6px}details.global-modifier-panel>summary.collapse-summary{align-items:flex-start;gap:12px;display:flex}details.vehicle-adder-fields>summary:after,details.global-modifier-panel>summary.collapse-summary:after{color:var(--muted);content:"▾";transition:transform var(--speed);margin-left:auto;font-size:12px}details.vehicle-adder-fields[open]>summary:after,details.global-modifier-panel[open]>summary.collapse-summary:after{transform:rotate(180deg)}.booking-collapse-group{display:block}.booking-collapse-group>.booking-collapse+.booking-collapse{margin-top:10px}.booking-collapse{border:1px solid var(--line);border-radius:var(--radius-sm,8px);overflow:hidden}.booking-collapse>summary{cursor:pointer;align-items:center;gap:8px;padding:9px 10px;font-size:13px;font-weight:700;list-style:none;display:flex}.booking-collapse>summary::-webkit-details-marker{display:none}.booking-collapse>summary:after{color:var(--muted);content:"▾";transition:transform var(--speed)}.booking-collapse[open]>summary:after{transform:rotate(180deg)}.booking-collapse[open]>summary{border-bottom:1px solid var(--line)}.booking-collapse .booking-collapse-hint{color:var(--muted);margin-left:auto;font-size:12px;font-weight:600}.booking-collapse .booking-extras-picker{border:none;border-radius:0}.booking-field-hint{color:var(--muted);margin-top:4px;font-size:11px;line-height:1.35;display:block}.sw{grid-template-columns:236px minmax(0,1fr);align-items:start;gap:20px;margin-top:8px;display:grid}.sw-rail{flex-direction:column;gap:4px;display:flex;position:sticky;top:12px}.sw-navi{text-align:left;cursor:pointer;border-radius:var(--radius-md);color:var(--muted);font:inherit;transition:background var(--speed),border-color var(--speed),color var(--speed);background:0 0;border:1px solid #0000;align-items:center;gap:11px;padding:9px 11px;display:flex}.sw-navi:hover{background:var(--panel-muted)}.sw-navi.is-active{background:var(--navy);border-color:var(--navy);color:#fff}.sw-navi:focus-visible{box-shadow:var(--focus-ring);outline:none}.sw-navi-ico{background:var(--panel-muted);width:30px;height:30px;color:var(--muted);transition:background var(--speed),color var(--speed);border-radius:8px;flex:none;place-items:center;display:grid}.sw-navi.is-active .sw-navi-ico{color:#fff;background:#ffffff29}.sw-navi-ico svg{width:17px;height:17px}.sw-navi-text{flex-direction:column;gap:1px;min-width:0;display:flex}.sw-navi-text strong{font-size:13.5px;font-weight:700}.sw-navi-text small{opacity:.82;font-size:11.5px}.sw-detail{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);min-height:360px;padding:clamp(16px,2.4vw,26px)}.sw-pane-head{margin-bottom:18px}.sw-pane-head h2{margin:0;font-size:19px;font-weight:800}.sw-pane-head p{color:var(--muted);max-width:62ch;margin:5px 0 0;font-size:13px;line-height:1.5}.sw-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:15px 18px;display:grid}.sw-fld{flex-direction:column;gap:6px;min-width:0;display:flex}.sw-fld.sw-wide{grid-column:1/-1}.sw-lbl,.sw-lbl-tip{color:var(--ink);align-items:center;gap:7px;font-size:12.5px;font-weight:700;display:flex}.sw-fld input[type=text],.sw-fld input[type=number],.sw-fld input[type=date],.sw-fld select{width:100%;font:inherit;color:var(--ink);background:var(--panel);border:1px solid var(--line);border-radius:var(--radius-sm);transition:border-color var(--speed),box-shadow var(--speed);padding:9px 11px;font-size:14px}.sw-fld input:focus,.sw-fld select:focus{border-color:var(--navy);box-shadow:var(--focus-ring);outline:none}.sw-fld small{color:var(--muted);font-size:11.5px;line-height:1.35}.sw-disabled{opacity:.6}.sw-money{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius-sm);transition:border-color var(--speed),box-shadow var(--speed);align-items:center;display:flex}.sw-money:focus-within{border-color:var(--navy);box-shadow:var(--focus-ring)}.sw-money .sw-pre{color:var(--muted);flex:none;padding-left:11px;font-size:14px}.sw-fld .sw-money input{width:100%;min-width:0;font:inherit;color:var(--ink);box-shadow:none;background:0 0;border:none;outline:none;flex:1;padding:9px 11px 9px 4px;font-size:14px}.sw-fld .sw-money input:focus{box-shadow:none;border:none;outline:none}.sw-toggle{background:var(--panel-muted);border:1px solid var(--line);border-radius:var(--radius-sm);flex-direction:row;align-items:center;gap:10px;padding:12px 13px}.sw-toggle input{width:16px;height:16px;accent-color:var(--navy);flex:none}.sw-toggle span{color:var(--ink);font-size:13px;font-weight:600}.sw-days{flex-wrap:wrap;gap:8px;display:flex}.sw-day{color:var(--muted);border:1px solid var(--line);background:var(--panel);cursor:pointer;border-radius:999px;align-items:center;gap:6px;padding:7px 12px;font-size:12.5px;font-weight:700;display:flex}.sw-day input{accent-color:var(--navy)}.sw-help{color:var(--muted);margin:2px 0 0;font-size:12px;line-height:1.5}.sw-subtabs{background:var(--panel-muted);border:1px solid var(--line);border-radius:999px;margin-bottom:16px;padding:3px;display:inline-flex}.sw-subtabs button{font:inherit;color:var(--muted);cursor:pointer;transition:background var(--speed),color var(--speed);background:0 0;border:none;border-radius:999px;padding:7px 16px;font-size:12.5px;font-weight:700}.sw-subtabs button.is-active{background:var(--panel);color:var(--navy);box-shadow:0 1px 2px #10243d1f}.sw-sub-desc{color:var(--muted);margin:0 0 14px;font-size:12.5px;line-height:1.5}.sw-save{border-top:1px solid var(--line);justify-content:flex-end;margin-top:20px;padding-top:16px;display:flex}.sw-save button{font:inherit;background:var(--navy);color:#fff;border-radius:var(--radius-sm);cursor:pointer;transition:transform var(--speed);border:none;padding:11px 22px;font-size:13px;font-weight:700}.sw-save button:active{transform:scale(.98)}.sw-save button:focus-visible{box-shadow:var(--focus-ring);outline:none}.sw-tip{cursor:help;display:inline-flex;position:relative}.sw-tip-dot{border:1.4px solid var(--muted);width:16px;height:16px;color:var(--muted);transition:border-color var(--speed),color var(--speed);border-radius:50%;place-items:center;font-size:11px;font-style:italic;font-weight:800;line-height:1;display:grid}.sw-tip:hover .sw-tip-dot,.sw-tip:focus .sw-tip-dot{border-color:var(--navy);color:var(--navy)}.sw-tip:focus{outline:none}.sw-tip:focus .sw-tip-dot{box-shadow:var(--focus-ring)}.sw-tip-bubble{background:var(--navy);color:#fff;letter-spacing:0;border-radius:var(--radius-sm);width:min(280px,72vw);box-shadow:var(--shadow-pop);opacity:0;visibility:hidden;transition:opacity var(--speed),transform var(--speed);z-index:30;text-align:left;padding:11px 13px;font-size:12.5px;font-weight:400;line-height:1.5;position:absolute;bottom:calc(100% + 9px);left:0;transform:translateY(4px)}.sw-tip-bubble:after{content:"";border:6px solid #0000;border-top-color:var(--navy);position:absolute;top:100%;left:14px}.sw-tip:hover .sw-tip-bubble,.sw-tip:focus .sw-tip-bubble,.sw-tip:focus-within .sw-tip-bubble{opacity:1;visibility:visible;transform:translateY(0)}.sw-override-list{gap:10px;margin-top:18px;display:grid}.sw-override{border:1px solid var(--line);border-radius:var(--radius-md);background:var(--panel);gap:4px;padding:13px 15px;display:grid}.sw-override.closed{opacity:.7}.sw-override strong{font-size:14px}.sw-override span,.sw-override p{color:var(--muted);margin:0;font-size:12.5px}.sw-override form{margin-top:4px}.sw-danger{font:inherit;color:#dc2626;border:1px solid var(--line);border-radius:var(--radius-sm);cursor:pointer;background:0 0;padding:6px 12px;font-size:12px;font-weight:700}.sw-empty{color:var(--muted);text-align:center;padding:18px;font-size:13px}.sw-appearance{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;display:flex}.sw-appearance strong{font-size:14px;display:block}.sw-appearance span{color:var(--muted);font-size:12.5px}.services-modifier-note{color:var(--muted);background:var(--panel-muted);border:1px solid var(--line);border-radius:var(--radius-sm);margin:0 0 4px;padding:10px 13px;font-size:12.5px}.services-modifier-note strong{color:var(--ink)}@media (max-width:760px){.sw{grid-template-columns:1fr}.sw-rail{flex-direction:row;padding-bottom:4px;position:static;overflow-x:auto}.sw-navi{flex:none;min-width:150px}.sw-fields{grid-template-columns:1fr}}.assignment-feedback{border-radius:8px;padding:8px;font-size:12px;font-weight:900}.assignment-feedback.success{color:var(--green);background:#e8f7ef}.assignment-feedback.warning{color:var(--red);background:#fff0f0}.admin-invite-form{grid-template-columns:minmax(220px,1fr) auto;align-items:end;gap:10px;display:grid}.role-invite-form{grid-template-columns:minmax(180px,1fr) minmax(180px,.82fr) minmax(116px,auto)}.role-invite-form button{white-space:nowrap;min-width:116px}.role-invite-note{color:var(--muted);grid-column:1/-1;font-size:12px;font-weight:700;line-height:1.4}.access-hero{border:1px solid var(--line);background:#fff;border-radius:8px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:16px;margin-bottom:12px;padding:16px;display:grid;box-shadow:0 12px 28px #10243d0d}.access-hero h2{margin-top:3px;font-size:22px}.access-hero span{color:var(--muted);margin-top:6px;font-size:13px;font-weight:700;line-height:1.45;display:block}.access-guardrails{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.access-guardrails span{border:1px solid var(--line);color:var(--navy);background:#f8fafc;border-radius:999px;margin:0;padding:7px 10px;font-size:12px;font-weight:900}.admin-invite-list{gap:8px;margin-top:14px;display:grid}.admin-invite-row{border:1px solid var(--line);background:#fff;border-radius:8px;justify-content:space-between;align-items:center;gap:12px;padding:9px 10px;display:flex}.admin-invite-row strong,.admin-invite-row span{display:block}.admin-invite-row strong{color:var(--navy);font-size:13px}.admin-invite-row span,.admin-invite-row small{color:var(--muted);margin-top:2px;font-size:11px;font-weight:800}.role-guidance{color:var(--muted);background:#2ea3f214;border:1px solid #2ea3f238;border-radius:8px;align-items:center;gap:10px;margin-bottom:14px;padding:10px 12px;display:flex}.role-guidance strong{color:var(--navy)}.role-readonly-panel{border:1px solid var(--line);background:#f8fafc;border-radius:8px;gap:5px;margin-top:12px;padding:12px;display:grid}.role-readonly-panel strong{color:var(--navy)}.role-readonly-panel span{color:var(--muted);font-size:12px;line-height:1.4}.role-matrix-form{gap:12px;margin-top:12px;display:grid}.role-matrix-toolbar{justify-content:space-between;align-items:center;gap:12px;display:flex}.role-matrix-toolbar h3{margin-top:2px;font-size:16px}.role-matrix-toolbar span{color:var(--muted);margin-top:3px;font-size:12px;font-weight:700;display:block}.auto-save-status{border:1px solid var(--line);color:var(--muted);white-space:nowrap;background:#f8fafc;border-radius:999px;align-items:center;min-height:34px;padding:0 12px;font-size:12px;font-weight:900;display:inline-flex}.auto-save-status.saved{color:var(--green);background:#e8f7ef;border-color:#b8e0c9}.auto-save-status.error{color:var(--red);background:#fff0f0;border-color:#f3c7c7}.role-matrix{border:1px solid var(--line);grid-template-columns:minmax(280px, 1.2fr) repeat(var(--role-count), minmax(150px, 1fr));border-radius:8px;display:grid;overflow-x:auto}.role-matrix-head{border-bottom:1px solid var(--line);border-right:1px solid var(--line);background:#f8fafc;min-width:150px;padding:12px}.permission-head{color:var(--muted);text-transform:uppercase;font-size:12px;font-weight:900}.role-head strong,.role-head span,.role-head small{display:block}.role-head strong{color:var(--navy);font-size:14px}.role-head span{color:var(--green);margin-top:3px;font-size:11px;font-weight:900}.role-head small{color:var(--muted);margin-top:5px;font-size:11px;line-height:1.35}.role-matrix-group{display:contents}.role-matrix-group-label{border-bottom:1px solid var(--line);border-right:1px solid var(--line);color:var(--navy);text-transform:uppercase;background:#eef2f6;grid-column:1/-1;padding:8px 12px;font-size:12px;font-weight:900}.role-matrix-row{display:contents}.role-matrix-permission,.role-matrix-cell{border-bottom:1px solid var(--line);border-right:1px solid var(--line);min-height:86px;padding:10px 12px}.role-matrix-permission{background:#fff}.role-matrix-permission strong,.role-matrix-permission span,.role-matrix-permission em{display:block}.role-matrix-permission strong{color:var(--navy);font-size:13px}.role-matrix-permission span,.role-matrix-permission em{color:var(--muted);margin-top:3px;font-size:11px;font-style:normal;line-height:1.35}.role-matrix-permission b{color:#8a6419;text-transform:uppercase;background:#fff4d8;border:1px solid #ead19a;border-radius:999px;margin-top:7px;padding:3px 7px;font-size:10px;display:inline-block}.role-matrix-cell{color:var(--navy);text-align:center;background:#fff;justify-content:center;align-items:center;gap:8px;font-size:12px;font-weight:900;display:flex}.role-matrix-cell input{width:16px;height:16px;margin:0}.role-matrix-cell.restricted{color:var(--muted);background:#f6f7fa}.role-card-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:10px;display:grid}.role-card{border:1px solid var(--line);background:#fff;border-radius:8px;gap:10px;padding:10px;display:grid}.role-card-header{justify-content:space-between;align-items:start;gap:10px;display:flex}.role-card-header h3{color:var(--navy);margin:2px 0}.role-card-header span{color:var(--muted);font-size:12px;line-height:1.35;display:block}.permission-list{gap:6px;display:grid}.permission-toggle{border:1px solid var(--line);background:#f8fafc;border-radius:8px;grid-template-columns:auto 1fr;align-items:start;gap:8px;padding:8px;display:grid}.permission-toggle input{min-height:auto;margin-top:3px}.permission-toggle strong,.permission-toggle small,.permission-toggle em{display:block}.permission-toggle strong{color:var(--navy);font-size:13px}.permission-toggle small,.permission-toggle em{color:var(--muted);margin-top:2px;font-size:11px;font-style:normal;line-height:1.35}.portal-user-list{gap:7px;display:grid}.portal-user-row{border:1px solid var(--line);background:#fff;border-radius:8px;grid-template-columns:minmax(260px,1fr) auto;align-items:center;gap:8px;padding:8px 10px;display:grid}.portal-user-identity strong,.portal-user-identity span,.portal-user-identity small{display:block}.portal-user-row strong{color:var(--navy);font-size:13px}.portal-user-row span,.role-pill{color:var(--muted);font-size:11px;font-weight:800}.portal-user-actions{flex-wrap:wrap;justify-content:flex-end;align-items:end;gap:8px;display:flex}.inline-role-form{align-items:end;gap:8px;margin:0;display:flex}.inline-role-form label{min-width:180px}.inline-role-form button,.portal-user-actions button{white-space:nowrap;width:auto;min-height:38px}.portal-user-row .assignment-feedback{grid-column:1/-1;margin:0}.danger-secondary{color:var(--red);background:#fff5f5;border:1px solid #ffd5d5}@container (max-width:680px){.role-invite-form{grid-template-columns:repeat(2,minmax(0,1fr))}.role-invite-form button{grid-column:1/-1;width:100%}}@container (max-width:720px){.portal-user-row{grid-template-columns:1fr;align-items:stretch}.portal-user-actions{justify-content:flex-start}.inline-role-form{flex:100%;width:100%}.inline-role-form label{flex:220px;min-width:0}}@container (max-width:460px){.role-invite-form,.inline-role-form{grid-template-columns:1fr;display:grid}.inline-role-form button,.portal-user-actions button{width:100%}}.chart-dot.money{stroke:var(--green)}.money-axis-tick{font-size:11px}.x-date-tick{font-size:9px}.day-summary span:nth-child(3){color:var(--green)}@media (min-width:1500px){.dashboard-analytics-grid:not(.single){grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-analytics-grid:not(.single) .interactive-chart-grid{grid-template-columns:1fr}.dashboard-analytics-grid:not(.single) .booking-day-panel{max-height:360px;overflow-y:auto}}@media (max-width:980px){.app-header,.section-header,.record-header,.dashboard-panel-header,.management-panel-header,.access-hero,.role-matrix-toolbar{display:block}.admin-brand{align-items:flex-start;display:flex}.admin-header-actions{align-items:flex-start;min-width:0;margin-top:14px}.admin-utility-row{justify-content:flex-start}.admin-sidekick-logo{max-width:132px;height:30px}.top-nav,.range-tabs{margin-top:14px}.metric-grid,.info-bar,.dashboard-overview,.management-summary,.config-workspace,.access-workspace,.catalog-create-form,.reward-create-form,.interactive-chart-grid,.dashboard-analytics-grid,.accounting-focus-grid,.accounting-import-grid,.accounting-layout,.accounting-import-controls,.accounting-import-row-detail,.accounting-row-detail-grid,.customer-workspace,.time-workspace,.schedule-calendar-grid,.two-column,.service-list,.form-grid,.chart-table,.admin-invite-form,.custom-range-form{grid-template-columns:1fr}.create-panel{position:static}.settings-page-panel{max-width:none}.time-employee-head{display:none}.time-employee-row{grid-template-columns:1fr;align-items:start}.settings-form,.create-panel .catalog-create-form,.create-panel .reward-create-form{grid-template-columns:1fr}.dashboard-overview-copy span{white-space:normal}.access-guardrails{justify-content:flex-start;margin-top:12px}.role-matrix{grid-template-columns:minmax(240px, 1.2fr) repeat(var(--role-count), minmax(132px, 1fr))}.bar-chart{grid-template-columns:repeat(6,minmax(0,1fr))}.calendar-row{grid-template-columns:1fr;align-items:flex-start}.assignment-form{grid-template-columns:1fr;align-items:stretch}.active-toggle{margin-top:12px}.hour-select{grid-template-columns:1fr}.catalog-summary,.schedule-toolbar,.date-staffing-header,.day-notify-grid{grid-template-columns:1fr;display:block}.schedule-toolbar-actions,.date-staff-list{margin-top:12px}.catalog-summary-meta{flex-wrap:wrap}.catalog-summary-main small{white-space:normal}.day-staff-list{grid-template-columns:1fr}}.schedule-toolbar-actions .today-button{background:var(--navy);color:#fff;letter-spacing:.02em;border-radius:999px;padding:6px 10px;font-weight:800;text-decoration:none}.schedule-toolbar-actions .today-button:hover{background:var(--navy-2)}.schedule-toolbar .keyboard-hint{color:var(--muted);margin-top:4px;font-size:11px;display:none}.schedule-day-header.is-today{background:linear-gradient(#2ea3f229,#2ea3f20a);border-top:3px solid #2ea3f2}.schedule-day-header.is-today strong{color:#2ea3f2}.google-day-column.is-today{background:#2ea3f20d}.schedule-day-header.is-weekend:not(.is-today){background:#00000006}.google-day-column.is-weekend:not(.is-today){background:#00000005}.current-time-line{z-index:2;pointer-events:none;border-top:2px solid #ea4335;height:0;position:absolute;left:0;right:0}.current-time-line:before{content:"";background:#ea4335;border-radius:50%;width:10px;height:10px;position:absolute;top:-6px;left:-5px;box-shadow:0 0 0 2px #ea43352e}.google-booking-event.status-completed{border-left-color:var(--green);background:#dff3e8;border-color:#8cc8a8}.google-booking-event.status-completed strong{color:var(--green)}.google-booking-event .completed-at{color:var(--green);font-weight:800}.google-booking-event.status-cancelled{border-left-color:var(--muted);opacity:.65;background:#f6f7f9}.google-booking-event.status-cancelled strong,.google-booking-event.status-cancelled span{text-decoration:line-through}.google-booking-event.status-completed:after,.google-booking-event.status-cancelled:after{pointer-events:none;z-index:0;justify-content:center;align-items:center;font-size:clamp(54px,9vw,118px);font-weight:900;line-height:1;display:flex;position:absolute;inset:0}.google-booking-event.status-completed:after{color:var(--green);content:"✓";opacity:.26}.google-booking-event.status-cancelled:after{color:var(--red);content:"×";opacity:.38;font-size:clamp(76px,11vw,142px)}.google-booking-event.past-due{border-color:#d69e2e;border-left-color:var(--gold);background:#fff8e5}.google-booking-event.past-due:before{color:var(--gold);content:"△";opacity:.32;pointer-events:none;z-index:0;justify-content:center;align-items:center;font-size:clamp(78px,10vw,148px);font-weight:900;display:flex;position:absolute;inset:-2px 0 0}.google-booking-event.past-due:after{color:var(--gold);content:"!";opacity:.42;pointer-events:none;z-index:0;justify-content:center;align-items:center;font-size:clamp(54px,8vw,108px);font-weight:900;display:flex;position:absolute;inset:0}.event-resize-handle{z-index:2;cursor:ns-resize;z-index:4;background:0 0;border-radius:0 0 6px 6px;height:8px;position:absolute;bottom:0;left:0;right:0}.event-resize-handle:after{content:"";background:#10243d40;border-radius:2px;width:28px;height:3px;margin:2px auto 0;transition:background .12s;display:block}.google-booking-event:hover .event-resize-handle:after{background:#10243d8c}.google-booking-event.resizing{outline-offset:1px;cursor:ns-resize;outline:2px dashed #2ea3f2}.booking-hover-card{border:1px solid var(--line);border-left:4px solid var(--navy);z-index:50;color:var(--ink);pointer-events:none;background:#fff;border-radius:10px;gap:4px;padding:12px 14px;font-size:12px;display:grid;position:fixed;box-shadow:0 18px 36px #10243d2e}.booking-hover-card strong{color:var(--navy);font-size:14px}.booking-hover-card.status-completed{border-left-color:var(--green)}.booking-hover-card.status-cancelled{border-left-color:var(--muted)}.booking-hover-card .booking-hover-service{font-weight:800}.booking-hover-card .booking-hover-time{color:var(--muted)}.booking-hover-card .booking-hover-status{text-transform:capitalize}.draggable-employee{cursor:grab;-webkit-user-select:none;user-select:none}.draggable-employee:active{cursor:grabbing}.draggable-employee.selected{outline-offset:-2px;background:#2ea3f214;outline:2px solid #2ea3f2}.crew-chip-remove{cursor:pointer;color:inherit;opacity:.55;background:0 0;border:none;min-height:auto;margin-left:6px;padding:0 4px;font-size:14px;line-height:1}.crew-chip-remove:hover{opacity:1}.booking-popover{border:1px solid var(--line);border-left:4px solid var(--navy);z-index:60;background:#fff;border-radius:12px;flex-direction:column;gap:0;max-width:calc(100vw - 24px);max-height:80vh;display:flex;position:fixed;overflow:hidden;box-shadow:0 24px 48px #10243d40}.booking-popover.status-completed{border-left-color:var(--green)}.booking-popover.status-cancelled{border-left-color:var(--muted)}.booking-popover-completed{color:var(--green);background:#f3faf6;border:1px solid #b7e4c7;border-radius:8px;margin:0;padding:8px 10px;font-size:12px;font-weight:800;line-height:1.4}.booking-popover.locked{box-shadow:0 20px 48px #10243d47,inset 0 0 0 2px #2076532e}.booking-popover.locked input:disabled,.booking-popover.locked select:disabled,.booking-popover.locked button:disabled{cursor:not-allowed}.booking-contact-gate,.booking-lookup-message{border-radius:8px;padding:8px;font-size:12px;font-weight:800;line-height:1.35}.booking-contact-gate{color:var(--navy);background:#eef4ff;border:1px solid #c8d9f6}.booking-lookup-message{border:1px solid var(--line);color:var(--muted);background:#f8fafc}.booking-popover-header{border-bottom:1px solid var(--line);padding:14px 16px 6px;position:relative}.booking-popover-header .eyebrow{color:var(--muted);letter-spacing:.06em;text-transform:uppercase;font-size:11px;font-weight:800}.booking-popover-header h3{color:var(--navy);margin:2px 0 8px;font-size:16px}.booking-popover-close{color:var(--muted);cursor:pointer;background:0 0;border:none;min-height:auto;padding:4px 8px;font-size:22px;font-weight:400;line-height:1;position:absolute;top:8px;right:8px}.booking-popover-close:hover{color:var(--ink);background:#0000000a;border-radius:6px}.day-shift-popover{border-left-color:var(--green)}.booking-popover-body{gap:10px;min-height:0;padding:12px 16px;display:grid;overflow-y:auto}.booking-popover-body label{color:var(--muted);gap:4px;font-size:12px;font-weight:700;display:grid}.booking-popover-body input,.booking-popover-body select{border:1px solid var(--line);color:var(--ink);background:#fff;border-radius:6px;min-height:auto;padding:8px 10px;font-size:14px;font-weight:500}.booking-popover-body input:focus,.booking-popover-body select:focus{outline-offset:0;border-color:#2ea3f2;outline:2px solid #2ea3f2}.booking-popover-row{grid-template-columns:1fr 1fr;gap:10px;display:grid}.booking-extras-picker{border:1px solid var(--line);border-radius:6px;gap:6px;margin:0;padding:8px;display:grid}.booking-extras-picker legend{color:var(--muted);padding:0 4px;font-size:12px;font-weight:700}.booking-extra-option{color:var(--ink);grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:8px;font-size:13px;display:grid}.booking-extra-option input{width:16px;height:16px;min-height:0;margin:0;padding:0}.booking-extra-option strong{color:var(--navy);font-size:12px}.booking-popover-summary{color:var(--muted);background:#2ea3f214;border-radius:6px;padding:8px 10px;font-size:12px}.booking-popover-summary strong{color:var(--navy)}.booking-extra-pill{align-items:center;gap:6px;margin:2px 6px 2px 0;display:inline-flex}.booking-extra-pill button{color:var(--danger);cursor:pointer;background:#ff7a7429;border:1px solid #ff7a7459;border-radius:999px;justify-content:center;align-items:center;width:18px;height:18px;padding:0;font-size:12px;font-weight:900;line-height:1;display:inline-flex}.booking-extra-pill button:disabled{cursor:not-allowed;opacity:.45}.booking-popover-assigned{border-top:1px dashed var(--line);padding-top:10px}.day-shift-default{color:var(--green);background:#f3faf6;border:1px solid #b7e4c7;border-radius:8px;justify-content:space-between;align-items:center;padding:8px 10px;font-size:12px;font-weight:900;display:flex}.day-shift-default span{color:var(--muted)}.booking-popover-footer{border-top:1px solid var(--line);background:#00000005;justify-content:flex-end;align-items:center;gap:8px;padding:10px 16px;display:flex}.booking-popover-footer small{color:var(--muted);text-align:left;flex:1;font-size:11px}@media (max-width:520px){.booking-popover-row{grid-template-columns:1fr}.booking-popover-footer{flex-wrap:wrap;align-items:stretch}.booking-popover-footer small{flex-basis:100%}}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.customer-search-panel{margin-bottom:14px}.customer-search-form{grid-template-columns:minmax(220px,1fr) auto;align-items:end;gap:12px;margin-top:14px;display:grid}.customer-search-form button{min-height:40px}.customer-list-panel{padding:14px}.customer-merge-panel{margin-bottom:16px;padding:14px}.merge-suggestion-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,360px),1fr));gap:12px;margin-top:14px;display:grid}.merge-suggestion-card{border:1px solid var(--line);background:#fff;border-radius:8px;gap:12px;padding:14px;display:grid}.merge-suggestion-card h3{font-size:16px}.merge-suggestion-card p,.merge-candidate span,.merge-candidate small{color:var(--muted);font-size:12px;line-height:1.4}.merge-candidate-list{gap:8px;display:grid}.merge-candidate{border-left:3px solid var(--gold);gap:3px;padding-left:10px;display:grid}.merge-form{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.merge-form label:nth-of-type(5),.merge-form label:nth-of-type(6),.merge-form button{grid-column:1/-1}.secondary-contact{color:var(--muted);margin-top:3px;font-size:12px;font-weight:700;display:block}.customer-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr));gap:12px;margin-top:14px;display:grid}.customer-card{border:1px solid var(--line);background:#fff;border-radius:8px;gap:12px;padding:14px;display:grid}.customer-card[open]{border-color:#cdd7e5}.customer-card-summary{cursor:pointer;justify-content:space-between;align-items:flex-start;gap:12px;list-style:none;display:flex}.customer-card-summary::-webkit-details-marker{display:none}.customer-card-summary>div{min-width:0}.customer-card-summary>strong{color:var(--navy);background:#eef4ff;border:1px solid #cdd7e5;border-radius:999px;flex:none;padding:6px 9px;font-size:11px}.customer-card h3{font-size:17px}.customer-card p{color:var(--muted);margin-top:4px;font-size:13px;line-height:1.4}.customer-card dl{grid-template-columns:96px minmax(0,1fr);gap:6px 12px;display:grid}.customer-card dt{color:var(--muted);font-size:12px;font-weight:800}.customer-card dd{color:var(--navy);overflow-wrap:anywhere;min-width:0;font-size:13px;font-weight:800}.customer-history{border-top:1px solid var(--line);gap:10px;padding-top:12px;display:grid}.customer-history h4{color:var(--navy);font-size:14px}.customer-history-summary{flex-wrap:wrap;gap:8px;display:flex}.customer-history-summary span{color:var(--navy);background:#eef4ff;border:1px solid #cdd7e5;border-radius:999px;padding:6px 9px;font-size:11px;font-weight:900}.customer-history-years,.customer-history-months{gap:8px;display:grid}.customer-history-year,.customer-history-month{border:1px solid var(--line);border-radius:8px;overflow:hidden}.customer-history-year>summary,.customer-history-month>summary{cursor:pointer;justify-content:space-between;align-items:center;gap:10px;padding:10px 12px;list-style:none;display:flex}.customer-history-year>summary::-webkit-details-marker{display:none}.customer-history-month>summary::-webkit-details-marker{display:none}.customer-history-year>summary{background:#f8fafc}.customer-history-year[open]>summary{background:#eef4ff}.customer-history-month>summary{border-top:1px solid var(--line);background:#fff}.customer-history-year summary strong,.customer-history-month summary strong{color:var(--navy);font-size:13px}.customer-history-year summary span,.customer-history-month summary span{color:var(--muted);text-align:right;font-size:12px;font-weight:800}.customer-history-months{padding:8px}.customer-history-list{gap:8px;padding:8px;display:grid}.customer-history-row{border:1px solid var(--line);background:#f8fafc;border-radius:8px;gap:8px;padding:10px;display:grid}.customer-history-row strong{color:var(--navy);font-size:13px;display:block}.customer-history-row span,.customer-history p{color:var(--muted);font-size:12px}.customer-history-row dl{grid-template-columns:74px minmax(0,1fr);gap:5px 10px}.customer-history-row dt,.customer-history-row dd{font-size:12px}.capacity-overrides-panel{max-width:1180px;margin-top:16px}.disabled-setting-field{color:#98a2b3}.disabled-setting-field input:disabled{color:#98a2b3;cursor:not-allowed;background:#eef2f6;border-color:#d8dee8}.disabled-setting-field small{color:#98a2b3;margin-top:5px;font-size:11px;font-weight:700;line-height:1.3;display:block}.capacity-override-form{margin-top:14px}.capacity-override-list{gap:10px;margin-top:16px;display:grid}.capacity-override-card{border:1px solid var(--line);border-left:4px solid var(--green);background:#fff;border-radius:8px;grid-template-columns:minmax(220px,1.3fr) minmax(180px,1fr) auto;align-items:center;gap:12px;padding:12px;display:grid}.capacity-override-card.closed{border-left-color:var(--red)}.capacity-override-card strong{color:var(--navy);font-size:14px;display:block}.capacity-override-card span,.capacity-override-card p{color:var(--muted);font-size:12px;font-weight:800;line-height:1.4}.capacity-override-card form{justify-self:end}:root[data-theme=dark] .login-panel,:root[data-theme=dark] .metric-card,:root[data-theme=dark] .panel,:root[data-theme=dark] .customer-card,:root[data-theme=dark] .catalog-record,:root[data-theme=dark] .calendar-panel,:root[data-theme=dark] .calendar-sidebar,:root[data-theme=dark] .booking-card,:root[data-theme=dark] .modal-content,:root[data-theme=dark] .capacity-override-card,:root[data-theme=dark] .role-panel,:root[data-theme=dark] .access-card,:root[data-theme=dark] .service-card,:root[data-theme=dark] .management-card,:root[data-theme=dark] .chart-card{background:var(--panel);border-color:var(--line);box-shadow:0 12px 28px var(--shadow)}.top-nav .nav-ico,.header-options{display:none}@media (max-width:640px){.app-header{margin-bottom:10px}.admin-brand-logo{display:none}.admin-brand h1{font-size:19px}.admin-brand .lede,.admin-utility-row{display:none}.admin-header-actions{gap:8px;width:100%;margin-top:10px}.top-nav{-webkit-overflow-scrolling:touch;flex-wrap:nowrap;align-self:stretch;width:100%;max-width:100%;margin-top:8px;scroll-padding-right:22px;overflow-x:auto;-webkit-mask-image:linear-gradient(90deg,#000 calc(100% - 22px),#0000);mask-image:linear-gradient(90deg,#000 calc(100% - 22px),#0000)}.top-nav a{flex:none;padding:8px 11px}.top-nav .nav-txt{display:none}.top-nav .nav-ico{font-size:18px;line-height:1;display:inline}.header-options{order:-1;align-self:flex-end;display:block;position:relative}.header-options>summary{background:var(--panel,#fff);border:1px solid var(--line);cursor:pointer;border-radius:8px;justify-content:center;align-items:center;width:42px;height:36px;font-size:18px;font-weight:900;list-style:none;display:inline-flex}.header-options>summary::-webkit-details-marker{display:none}.header-options-menu{background:var(--panel,#fff);border:1px solid var(--line);z-index:30;border-radius:12px;gap:8px;margin-top:6px;padding:12px;display:grid;position:absolute;right:0;box-shadow:0 12px 28px #10243d2e}.header-options-label{color:var(--muted);letter-spacing:.04em;text-transform:uppercase;font-size:11px;font-weight:800}}:root[data-theme=dark] .metric-card,:root[data-theme=dark] .panel,:root[data-theme=dark] .calendar-grid,:root[data-theme=dark] .calendar-cell,:root[data-theme=dark] .calendar-day,:root[data-theme=dark] .stat-card,:root[data-theme=dark] .summary-card,:root[data-theme=dark] .setting-card,:root[data-theme=dark] .form-section,:root[data-theme=dark] .list-panel,:root[data-theme=dark] .create-panel,:root[data-theme=dark] .customer-history-year,:root[data-theme=dark] .history-month,:root[data-theme=dark] .disabled-setting-field input:disabled{background:var(--panel-muted);border-color:var(--line)}:root[data-theme=dark] .top-nav a,:root[data-theme=dark] .range-tabs a,:root[data-theme=dark] .calendar-controls a,:root[data-theme=dark] .schedule-picker summary,:root[data-theme=dark] .status-pill,:root[data-theme=dark] .history-pill,:root[data-theme=dark] .inline-chip,:root[data-theme=dark] .employee-chip,:root[data-theme=dark] .worker-chip,:root[data-theme=dark] .tag{background:var(--panel);border-color:var(--line);color:var(--ink)}:root[data-theme=dark] .top-nav a:hover,:root[data-theme=dark] .range-tabs a.active,:root[data-theme=dark] .calendar-controls a.active,:root[data-theme=dark] .schedule-picker summary.active{background:var(--navy);color:var(--button-ink)}:root[data-theme=dark] input,:root[data-theme=dark] select,:root[data-theme=dark] textarea{box-shadow:none}:root[data-theme=dark] :is(.top-nav a,.range-tabs a,.dashboard-overview,.access-hero,.admin-invite-row,.catalog-record,.record-card,.reward-card,.customer-card,.merge-suggestion-card,.capacity-override-card,.role-card,.portal-user-row,.schedule-toolbar-actions a,.schedule-picker-menu,.week-picker-row,.date-staffing-panel,.schedule-legend,.change-request-card,.date-staff-option button,.month-day,.google-time-gutter,.google-booking-event,.schedule-header-row,button.schedule-day-header,.schedule-time-header,.schedule-time-cell,.schedule-event,.day-crew-card,.day-staffing-card,.inspector-row,.booking-employee-assignment,.assigned-worker-row button,.role-matrix-permission,.role-matrix-cell,.booking-hover-card,.booking-popover,.day-shift-default,.booking-lookup-message,.customer-history-month>summary,.chart-hover-card,.chart-table div,.booking-detail-card){background:var(--panel);border-color:var(--line);color:var(--ink)}:root[data-theme=dark] :is(.dashboard-overview-copy,.form-section-title,.line-chart,.booking-day-panel,.day-summary span,.catalog-summary-meta span,.setting-toggle,.weekday-selector,.weekday-option,.calendar-row,.assignment-form,.assignment-option,.calendar-assignment-card,.selected-date-chips span,.date-staff-option,.google-day-column,.schedule-day-cell,.booking-inspector,.booking-assignment-dropzone,.crew-chip.empty,.day-staffing-header span,.day-staff-option,.notify-toggle,.employee-drag-pool button,.assigned-worker-row,.vehicle-adder-fields,.access-guardrails span,.role-readonly-panel,.auto-save-status,.role-matrix-head,.role-matrix-group-label,.permission-toggle,.customer-history-year>summary,.customer-history-row,.disabled-setting-field input:disabled,.bar-track){background:var(--panel-muted);border-color:var(--line);color:var(--ink)}:root[data-theme=dark] :is(.booking-editor-form input,.booking-editor-form select,.vehicle-adder-fields input,.vehicle-adder-fields select,.booking-popover-body input,.booking-popover-body select){background:var(--input-bg);border-color:var(--line);color:var(--ink)}:root[data-theme=dark] :is(.secondary-button,.date-staff-option button,.assigned-worker-row button){background:var(--panel-muted);border-color:var(--line)}:root[data-theme=dark] .schedule-toolbar-actions .today-button{background:var(--navy);border-color:var(--navy);color:var(--button-ink)}:root[data-theme=dark] :is(.secondary-button:hover,.date-staff-option button:hover,.booking-detail-card:hover,.booking-detail-card:focus-visible,.booking-detail-card.expanded,.month-day:hover,.google-booking-event:hover,.google-booking-event.selected,.schedule-event:hover,.schedule-event.selected,button.schedule-day-header:hover,button.schedule-day-header.selected){background:#1d2a38;border-color:#40546b}:root[data-theme=dark] :is(.status-pill.booked,.crew-chip.assigned,.customer-card-summary>strong,.customer-history-summary span,.customer-history-year[open]>summary,.selected-date-chips span,.schedule-day-cell.selected,.google-day-column.selected,.booking-contact-gate){color:var(--navy-2);background:#6da8ff24;border-color:#6da8ff57}:root[data-theme=dark] :is(.status-pill.completed,.catalog-summary-meta .mini-status.active,.crew-chip.working,.assignment-feedback.success,.auto-save-status.saved,.revenue-running-total,.month-day.staffed,button.schedule-day-header.staffed,.schedule-day-cell.staffed,.schedule-day-cell.selected.staffed,.google-day-column.staffed,.google-booking-event.status-completed,.booking-popover-completed){color:var(--green);background:#5ed29a24;border-color:#5ed29a57}:root[data-theme=dark] :is(.status-pill.cancelled,.catalog-summary-meta .mini-status.inactive,.danger-button,.danger-secondary,.assignment-feedback.warning,.auto-save-status.error,.crew-chip.warning){color:var(--red);background:#ff8a8a1f;border-color:#ff8a8a4d}:root[data-theme=dark] .google-booking-event.assigned{border-color:#5ed29a52;border-left-color:var(--green);background:#5ed29a1c}:root[data-theme=dark] .google-booking-event.unassigned{border-color:#6da8ff61;border-left-color:var(--navy);background:#6da8ff24}:root[data-theme=dark] .google-booking-event.past-due{border-color:#f4c95d6b;border-left-color:var(--gold);background:#f4c95d24}:root[data-theme=dark] .google-booking-event.status-cancelled{border-color:#aab6c752;border-left-color:var(--muted);color:var(--muted);background:#aab6c71a}:root[data-theme=dark] :is(.change-request-panel,.google-day-column.drop-target:hover,.schedule-day-cell.drop-target:hover,.role-matrix-permission b){background:#f4c95d1f;border-color:#f4c95d5c}:root[data-theme=dark] :is(.month-day.pending-approval,.google-booking-event.pending-approval,.google-booking-event.pending-approval:hover,.google-booking-event.pending-approval.selected){background:#a855f729;border-color:#a855f766}:root[data-theme=dark] :is(.booking-popover-footer,.booking-popover-close:hover,.schedule-day-header.is-weekend:not(.is-today),.google-day-column.is-weekend:not(.is-today),.day-worker-summary){background:#ffffff0a}:root[data-theme=dark] :is(.chart-axis,.chart-grid-line){stroke:var(--line)}:root[data-theme=dark] .chart-dot{fill:var(--panel)}:root[data-theme=dark] img{filter:drop-shadow(0 1px #ffffff14)}@media (max-width:820px){.capacity-override-card{grid-template-columns:1fr;align-items:stretch}.capacity-override-card form{justify-self:start}}@media (max-width:640px){.customer-search-form{grid-template-columns:1fr}button,input,select{min-height:44px}}.mobile-preview-contact-links{gap:10px;display:inline-flex}.mobile-preview-contact-links a{color:var(--mobile-preview-blue);font-weight:800;text-decoration:none}.record-form .form-actions,.settings-form .form-actions{background:var(--panel);border-top:1px solid var(--line);z-index:2;margin-top:12px;padding:10px 0;position:sticky;bottom:0}.empty-state{color:var(--muted);text-align:center;justify-items:center;gap:6px;padding:28px 12px;display:grid}.empty-state strong{color:var(--ink);font-size:15px}@keyframes uplift-fade{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:none}}.page-shell{animation:.2s ease-out uplift-fade}@media (prefers-reduced-motion:reduce){.page-shell{animation:none}}
