:root{--bg:#f5f4f0;--surface:#fff;--surface-2:#faf9f6;--surface-3:#f0efea;--border:#e5e2da;--border-strong:#d5d1c5;--ink:#1b1e24;--ink-muted:#666a72;--ink-faint:#9498a1;--brand:#0c6b68;--brand-strong:#084f4d;--brand-soft:#e2f1ef;--brand-ink:#fff;--good:#157a4a;--good-bg:#e6f6ee;--attn:#8a5a06;--attn-bg:#fdf1d6;--awaiting:#b8480c;--awaiting-bg:#fdeadf;--critical:#b3261e;--critical-bg:#fbe8e7;--active:#1d4ed8;--active-bg:#e9edfd;--draft:#666a72;--draft-bg:#eeece5;--shadow:0 1px 2px #14140f0a, 0 8px 24px -12px #14140f1f;--font-ui:-apple-system, "SF Pro Text", "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--font-mono:ui-monospace, "SF Mono", "Cascadia Mono", "Roboto Mono", Menlo, Consolas, monospace;--radius:10px}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--bg:#12151a;--surface:#191d24;--surface-2:#1e232b;--surface-3:#242a33;--border:#2a303a;--border-strong:#37404c;--ink:#edeef1;--ink-muted:#a2a8b3;--ink-faint:#6c7480;--brand:#39c9bd;--brand-strong:#7ee0d5;--brand-soft:#39c9bd24;--brand-ink:#08201e;--good:#3ecf8e;--good-bg:#3ecf8e21;--attn:#e3b23c;--attn-bg:#e3b23c24;--awaiting:#f4884b;--awaiting-bg:#f4884b24;--critical:#f0665f;--critical-bg:#f0665f24;--active:#6f93ff;--active-bg:#6f93ff24;--draft:#9aa0ab;--draft-bg:#9aa0ab1f;--shadow:0 1px 2px #0000004d, 0 12px 28px -14px #0000008c}}:root[data-theme=dark]{--bg:#12151a;--surface:#191d24;--surface-2:#1e232b;--surface-3:#242a33;--border:#2a303a;--border-strong:#37404c;--ink:#edeef1;--ink-muted:#a2a8b3;--ink-faint:#6c7480;--brand:#39c9bd;--brand-strong:#7ee0d5;--brand-soft:#39c9bd24;--brand-ink:#08201e;--good:#3ecf8e;--good-bg:#3ecf8e21;--attn:#e3b23c;--attn-bg:#e3b23c24;--awaiting:#f4884b;--awaiting-bg:#f4884b24;--critical:#f0665f;--critical-bg:#f0665f24;--active:#6f93ff;--active-bg:#6f93ff24;--draft:#9aa0ab;--draft-bg:#9aa0ab1f;--shadow:0 1px 2px #0000004d, 0 12px 28px -14px #0000008c}*{box-sizing:border-box}html,body{margin:0;padding:0}body{background:var(--bg);color:var(--ink);font-family:var(--font-ui);-webkit-font-smoothing:antialiased;font-size:14px;line-height:1.45}.num{font-family:var(--font-mono);font-variant-numeric:tabular-nums}h1,h2,h3{text-wrap:balance;margin:0}button{font-family:inherit}::selection{background:var(--brand-soft)}a{color:inherit;text-decoration:none}:focus-visible{outline:2px solid var(--brand);outline-offset:2px}.app{grid-template-columns:236px 1fr;min-height:100vh;display:grid}.sidebar{background:var(--surface);border-right:1px solid var(--border);flex-direction:column;height:100vh;display:flex;position:sticky;top:0}.brand{align-items:center;gap:9px;padding:16px 16px 12px;display:flex}.brand-mark{background:linear-gradient(155deg,var(--brand),var(--brand-strong));border-radius:7px;flex:none;justify-content:center;align-items:center;width:26px;height:26px;display:flex}.brand-mark svg{width:15px;height:15px;stroke:var(--brand-ink)}.brand-name{letter-spacing:-.01em;font-size:14.5px;font-weight:700}.brand-sub{color:var(--ink-faint);text-transform:uppercase;letter-spacing:.07em;font-size:10.5px}.org-switch{border:1px solid var(--border);cursor:pointer;background:var(--surface-2);border-radius:9px;align-items:center;gap:8px;margin:2px 12px 14px;padding:8px 10px;display:flex}.org-switch:hover{border-color:var(--border-strong)}.org-switch .dot{background:var(--good);border-radius:50%;flex:none;width:7px;height:7px}.org-switch-text{flex:1;min-width:0}.org-switch-name{font-size:12.5px;font-weight:600}.org-switch-branch{color:var(--ink-muted);font-size:11px}.org-switch svg{width:13px;height:13px;stroke:var(--ink-faint);flex:none}.nav-scroll{flex:1;padding:0 10px 10px;overflow-y:auto}.nav-group{margin-bottom:14px}.nav-label{letter-spacing:.09em;text-transform:uppercase;color:var(--ink-faint);padding:6px 8px 4px;font-size:10px;font-weight:700}.nav-item{color:var(--ink-muted);cursor:pointer;border-radius:7px;align-items:center;gap:9px;padding:7px 8px;font-size:13px;display:flex;position:relative}.nav-item svg{stroke:currentColor;flex:none;width:16px;height:16px}.nav-item:hover{background:var(--surface-2);color:var(--ink)}.nav-item.active{background:var(--brand-soft);color:var(--brand-strong);font-weight:600}.nav-item .badge{font-size:10.5px;font-family:var(--font-mono);background:var(--surface-3);color:var(--ink-muted);border-radius:5px;margin-left:auto;padding:1px 6px}.nav-item.active .badge{background:var(--brand);color:var(--brand-ink)}.sidebar-foot{border-top:1px solid var(--border);align-items:center;gap:9px;padding:11px 14px;display:flex}.sidebar-foot form{margin-left:auto}.avatar{background:var(--surface-3);width:28px;height:28px;color:var(--ink-muted);border:1px solid var(--border);border-radius:50%;flex:none;justify-content:center;align-items:center;font-size:11px;font-weight:700;display:flex}.sidebar-foot-name{font-size:12.5px;font-weight:600}.sidebar-foot-role{color:var(--ink-faint);font-size:11px}.main{flex-direction:column;min-width:0;display:flex}.topbar{border-bottom:1px solid var(--border);background:var(--surface);z-index:5;flex:none;align-items:center;gap:14px;height:56px;padding:0 20px;display:flex;position:sticky;top:0}.crumb{letter-spacing:-.01em;white-space:nowrap;font-size:14.5px;font-weight:700}.searchbox{background:var(--surface-2);border:1px solid var(--border);max-width:420px;color:var(--ink-faint);cursor:pointer;border-radius:8px;flex:1;align-items:center;gap:8px;padding:7px 10px;font-size:12.5px;display:flex}.searchbox input{color:var(--ink);background:0 0;border:none;outline:none;flex:1;font-family:inherit;font-size:12.5px}.searchbox input::placeholder{color:var(--ink-faint)}.searchbox svg{stroke:currentColor;flex:none;width:14px;height:14px}.kbd{font-family:var(--font-mono);background:var(--surface-3);border:1px solid var(--border);border-radius:4px;margin-left:auto;padding:1px 5px;font-size:10.5px}.topbar-actions{align-items:center;gap:6px;margin-left:auto;display:flex}.icon-btn{cursor:pointer;width:32px;height:32px;color:var(--ink-muted);background:0 0;border:1px solid #0000;border-radius:8px;justify-content:center;align-items:center;display:flex;position:relative}.icon-btn:hover{background:var(--surface-2);border-color:var(--border);color:var(--ink)}.icon-btn svg{stroke:currentColor;width:16px;height:16px}.icon-btn .ping{background:var(--awaiting);border-radius:50%;width:6px;height:6px;position:absolute;top:6px;right:6px}.content{flex:1;padding:22px 26px 60px;overflow-y:auto}.page{animation:.18s fade}@keyframes fade{0%{opacity:0;transform:translateY(3px)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){.page{animation:none}}.page-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:16px;margin-bottom:18px;display:flex}.page-title{letter-spacing:-.015em;font-size:21px;font-weight:700}.page-sub{color:var(--ink-muted);margin-top:3px;font-size:12.5px}.page-actions{gap:8px;display:flex}.filter-chip{border:1px solid var(--border);background:var(--surface);color:var(--ink-muted);cursor:pointer;border-radius:7px;align-items:center;gap:6px;padding:6px 11px;font-size:12px;display:flex}.filter-chip:hover{border-color:var(--border-strong);color:var(--ink)}.btn{border:1px solid var(--border-strong);background:var(--surface);color:var(--ink);cursor:pointer;border-radius:8px;align-items:center;gap:6px;padding:7px 13px;font-size:12.5px;font-weight:600;display:inline-flex}.btn:hover{background:var(--surface-2)}.btn.primary{background:var(--brand);border-color:var(--brand);color:var(--brand-ink)}.btn.primary:hover{background:var(--brand-strong);border-color:var(--brand-strong)}.btn svg{stroke:currentColor;width:14px;height:14px}.btn.sm{padding:5px 10px;font-size:11.5px}.btn.ghost{background:0 0;border-color:#0000}.btn.ghost:hover{background:var(--surface-2)}.btn.danger{color:var(--critical)}.btn:disabled{opacity:.5;cursor:not-allowed}.kpi-row{grid-template-columns:repeat(auto-fit,minmax(148px,1fr));gap:12px;margin-bottom:16px;display:grid}.kpi-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);padding:13px 14px}.kpi-label{color:var(--ink-muted);text-transform:uppercase;letter-spacing:.04em;font-size:11px;font-weight:600}.kpi-value{letter-spacing:-.02em;margin-top:6px;font-size:23px;font-weight:700}.kpi-delta{align-items:center;gap:4px;margin-top:5px;font-size:11.5px;display:flex}.kpi-delta.up{color:var(--good)}.kpi-delta.down{color:var(--critical)}.kpi-delta.flat{color:var(--ink-faint)}.kpi-target{margin-top:8px}.progress-track{background:var(--surface-3);border-radius:3px;height:5px;overflow:hidden}.progress-bar{background:var(--brand);border-radius:3px;height:100%}.panel-grid{grid-template-columns:1.3fr 1fr;gap:14px;margin-bottom:14px;display:grid}.panel-grid.thirds{grid-template-columns:1fr 1fr}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);overflow:hidden}.card-head{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:13px 15px 11px;display:flex}.card-title{font-size:13px;font-weight:700}.card-link{color:var(--brand);cursor:pointer;font-size:11.5px;font-weight:600}.card-body{padding:13px 15px 15px}.status-pill{white-space:nowrap;border-radius:999px;align-items:center;gap:5px;padding:3px 9px;font-size:11px;font-weight:600;display:inline-flex}.status-pill:before{content:"";background:currentColor;border-radius:50%;width:6px;height:6px}.status-pill.good{background:var(--good-bg);color:var(--good)}.status-pill.attn{background:var(--attn-bg);color:var(--attn)}.status-pill.awaiting{background:var(--awaiting-bg);color:var(--awaiting)}.status-pill.critical{background:var(--critical-bg);color:var(--critical)}.status-pill.active{background:var(--active-bg);color:var(--active)}.status-pill.draft{background:var(--draft-bg);color:var(--draft)}.list{flex-direction:column;display:flex}.list-item{border-bottom:1px solid var(--border);align-items:center;gap:11px;padding:9px 0;display:flex}.list-item:last-child{border-bottom:none}.list-item-title{font-size:12.5px;font-weight:600}.list-item-sub{color:var(--ink-muted);margin-top:1px;font-size:11.5px}.list-item-meta{text-align:right;color:var(--ink-muted);margin-left:auto;font-size:11.5px}.chart-wrap{padding:6px 4px 0}.chart-legend{color:var(--ink-muted);gap:14px;margin-top:6px;font-size:11px;display:flex}.chart-legend b{color:var(--ink);font-family:var(--font-mono)}.bar-row{grid-template-columns:90px 1fr 34px;align-items:center;gap:9px;padding:6px 0;display:grid}.bar-row .tname{font-size:11.5px;font-weight:600}.bar-track{background:var(--surface-3);border-radius:4px;height:7px;overflow:hidden}.bar-fill{background:var(--brand);border-radius:4px;height:100%}.bar-pct{color:var(--ink-muted);text-align:right;font-size:11px}.funnel-row{grid-template-columns:120px 1fr 30px;align-items:center;gap:9px;padding:5px 0;font-size:11.5px;display:grid}.funnel-track{background:var(--surface-3);border-radius:4px;height:16px;overflow:hidden}.funnel-fill{background:var(--active);border-radius:4px;height:100%}.board{gap:11px;padding-bottom:8px;display:flex;overflow-x:auto}.board-col{background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius);flex-direction:column;flex:0 0 218px;max-height:calc(100vh - 230px);display:flex}.board-col-head{border-bottom:1px solid var(--border);background:var(--surface-2);border-radius:var(--radius) var(--radius) 0 0;align-items:center;gap:7px;padding:10px 11px;display:flex;position:sticky;top:0}.board-col-head .dot{border-radius:50%;flex:none;width:7px;height:7px}.board-col-title{font-size:11.5px;font-weight:700}.board-col-count{font-size:10.5px;font-family:var(--font-mono);color:var(--ink-muted);margin-left:auto}.board-col-body{flex-direction:column;gap:8px;padding:9px;display:flex;overflow-y:auto}.job-card{background:var(--surface);border:1px solid var(--border);cursor:pointer;box-shadow:var(--shadow);border-radius:8px;padding:9px 10px;display:block}.job-card:hover{border-color:var(--border-strong)}.job-card-top{justify-content:space-between;align-items:center;display:flex}.job-card-num{font-family:var(--font-mono);color:var(--ink-faint);font-size:10.5px}.job-card-veh{margin-top:4px;font-size:12.5px;font-weight:700}.job-card-cust{color:var(--ink-muted);margin-top:1px;font-size:11px}.job-card-meta{justify-content:space-between;align-items:center;margin-top:8px;display:flex}.tech-chip{color:var(--ink-muted);align-items:center;gap:5px;font-size:10.5px;display:flex}.tech-dot{background:var(--surface-3);width:16px;height:16px;color:var(--ink-muted);border:1px solid var(--border);border-radius:50%;justify-content:center;align-items:center;font-size:8.5px;font-weight:700;display:flex}.job-card-time{font-family:var(--font-mono);color:var(--ink-faint);font-size:10.5px}.jc-header{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:14px;padding:15px 17px;display:flex}.jc-id{font-family:var(--font-mono);color:var(--ink-faint);font-size:11px}.jc-veh{letter-spacing:-.01em;margin-top:3px;font-size:18px;font-weight:700}.jc-cust{color:var(--ink-muted);margin-top:2px;font-size:12px}.jc-stats{gap:22px;display:flex}.jc-stat-label{color:var(--ink-faint);text-transform:uppercase;letter-spacing:.05em;font-size:10.5px}.jc-stat-val{margin-top:2px;font-size:13.5px;font-weight:700}.jc-layout{grid-template-columns:1fr 300px;gap:14px;display:grid}.tab-bar{border-bottom:1px solid var(--border);gap:4px;margin-bottom:13px;display:flex}.tab{color:var(--ink-muted);cursor:pointer;border-bottom:2px solid #0000;margin-right:16px;padding:8px 4px;font-size:12.5px;font-weight:600}.tab.active{color:var(--ink);border-color:var(--brand)}.insp-item{border-bottom:1px solid var(--border);align-items:flex-start;gap:10px;padding:10px 0;display:flex}.insp-item:last-child{border-bottom:none}.grade-dot{border:none;border-radius:50%;flex:none;width:10px;height:10px;margin-top:3px;padding:0}.grade-dot.g{background:var(--good)}.grade-dot.y{background:var(--attn)}.grade-dot.r{background:var(--critical)}.insp-label{font-size:12.5px;font-weight:600}.insp-note{color:var(--ink-muted);margin-top:2px;font-size:11.5px}.insp-cost{font-family:var(--font-mono);white-space:nowrap;margin-left:auto;font-size:12px;font-weight:600}.photo-row{gap:6px;margin-top:6px;display:flex}.photo-chip{background:var(--surface-3);border:1px solid var(--border);border-radius:6px;justify-content:center;align-items:center;width:34px;height:34px;display:flex}.photo-chip svg{width:14px;height:14px;stroke:var(--ink-faint)}table{border-collapse:collapse;width:100%;font-size:12.5px}th{text-align:left;text-transform:uppercase;letter-spacing:.04em;color:var(--ink-faint);border-bottom:1px solid var(--border);padding:0 16px 8px 0;font-size:10.5px;font-weight:700}td{border-bottom:1px solid var(--border);vertical-align:top;padding:9px 16px 9px 0}th:last-child,td:last-child{padding-right:0}tr:last-child td{border-bottom:none}td.num,th.num{text-align:right}.table-wrap{overflow-x:auto}tbody tr{cursor:default}tbody tr.clickable{cursor:pointer}tbody tr.clickable:hover{background:var(--surface-2)}.totals-row{justify-content:space-between;padding:5px 0;font-size:12.5px;display:flex}.totals-row.grand{border-top:1px solid var(--border);margin-top:6px;padding-top:10px;font-size:15px;font-weight:700}.timeline{padding-left:16px;position:relative}.timeline:before{content:"";background:var(--border);width:1px;position:absolute;top:4px;bottom:4px;left:3px}.timeline-item{padding-bottom:14px;position:relative}.timeline-item:before{content:"";background:var(--brand);border-radius:50%;width:7px;height:7px;position:absolute;top:3px;left:-16px}.timeline-time{color:var(--ink-faint);font-size:10.5px;font-family:var(--font-mono)}.timeline-text{margin-top:1px;font-size:12px}.phone-stage{justify-content:center;padding:10px 0 30px;display:flex}.phone-frame{background:var(--surface);border:1px solid var(--border);border-radius:22px;width:380px;overflow:hidden;box-shadow:0 20px 50px -20px #00000040}.phone-topbar{background:var(--brand);color:var(--brand-ink);padding:16px 18px 14px}.phone-topbar-eyebrow{text-transform:uppercase;letter-spacing:.08em;opacity:.85;font-size:10.5px}.phone-topbar-title{margin-top:3px;font-size:16px;font-weight:700}.phone-topbar-sub{opacity:.9;margin-top:2px;font-size:11.5px}.phone-body{max-height:600px;padding:14px 16px 18px;overflow-y:auto}.est-line{border:1px solid var(--border);border-radius:10px;margin-bottom:9px;padding:11px 12px}.est-line-top{justify-content:space-between;gap:8px;display:flex}.est-line-title{font-size:12.5px;font-weight:700}.est-line-desc{color:var(--ink-muted);margin-top:3px;font-size:11.5px}.est-line-price{font-family:var(--font-mono);white-space:nowrap;font-size:13px;font-weight:700}.est-toggle{gap:6px;margin-top:9px;display:flex}.est-toggle button{border:1px solid var(--border);background:var(--surface);cursor:pointer;color:var(--ink-muted);border-radius:7px;flex:1;padding:6px 0;font-size:11px;font-weight:600}.est-toggle button.approve.on{background:var(--good-bg);color:var(--good);border-color:#0000}.est-toggle button.reject.on{background:var(--critical-bg);color:var(--critical);border-color:#0000}.phone-summary{border-top:1px solid var(--border);margin-top:4px;padding-top:12px}.phone-cta{background:var(--good);color:#fff;cursor:pointer;border:none;border-radius:10px;width:100%;margin-top:12px;padding:12px;font-size:13.5px;font-weight:700}.phone-cta.secondary{color:var(--ink-muted);border:1px solid var(--border);background:0 0;margin-top:8px}.phone-cta:disabled{opacity:.5;cursor:not-allowed}.phone-done{text-align:center;padding:40px 10px}.phone-done svg{width:48px;height:48px;stroke:var(--good);margin-bottom:12px}.pos-layout{grid-template-columns:1fr 320px;gap:14px;display:grid}.pos-tabs{flex-wrap:wrap;gap:6px;margin-bottom:12px;display:flex}.pos-tab{border:1px solid var(--border);cursor:pointer;color:var(--ink-muted);background:var(--surface);border-radius:999px;padding:6px 12px;font-size:12px;font-weight:600}.pos-tab.active{background:var(--ink);color:var(--bg);border-color:var(--ink)}.pos-grid{grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:10px;display:grid}.pos-item{background:var(--surface);border:1px solid var(--border);cursor:pointer;box-shadow:var(--shadow);text-align:left;border-radius:10px;width:100%;padding:12px}.pos-item:hover{border-color:var(--brand)}.pos-item-name{font-size:12.5px;font-weight:700}.pos-item-cat{color:var(--ink-faint);margin-top:2px;font-size:10.5px}.pos-item-price{font-family:var(--font-mono);color:var(--brand);margin-top:9px;font-size:13px;font-weight:700}.cart{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);flex-direction:column;max-height:calc(100vh - 140px);display:flex;position:sticky;top:70px}.cart-head{border-bottom:1px solid var(--border);justify-content:space-between;padding:13px 15px;font-size:13px;font-weight:700;display:flex}.cart-body{flex:1;padding:6px 15px;overflow-y:auto}.cart-line{border-bottom:1px solid var(--border);align-items:center;gap:8px;padding:9px 0;display:flex}.cart-line:last-child{border-bottom:none}.cart-line-name{font-size:12px;font-weight:600}.cart-line-qty{color:var(--ink-muted);align-items:center;gap:6px;font-size:11px;display:flex}.cart-line-qty button{border:1px solid var(--border);background:var(--surface);width:18px;height:18px;color:var(--ink-muted);cursor:pointer;border-radius:5px;font-size:11px;line-height:1}.cart-line-price{font-family:var(--font-mono);margin-left:auto;font-size:12px;font-weight:600}.cart-empty{text-align:center;color:var(--ink-faint);padding:20px 0;font-size:12px}.cart-foot{border-top:1px solid var(--border);padding:13px 15px}.paymethods{grid-template-columns:1fr 1fr;gap:7px;margin:10px 0 12px;display:grid}.paymethod{border:1px solid var(--border);text-align:center;cursor:pointer;color:var(--ink-muted);background:var(--surface);border-radius:8px;padding:8px;font-size:11.5px;font-weight:600}.paymethod.on{border-color:var(--brand);background:var(--brand-soft);color:var(--brand-strong)}.cust-header{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);flex-wrap:wrap;align-items:center;gap:16px;margin-bottom:14px;padding:18px;display:flex}.cust-avatar{background:var(--brand-soft);width:56px;height:56px;color:var(--brand-strong);border-radius:50%;flex:none;justify-content:center;align-items:center;font-size:19px;font-weight:700;display:flex}.cust-name{letter-spacing:-.01em;font-size:18px;font-weight:700}.cust-tags{gap:6px;margin-top:6px;display:flex}.cust-contact{color:var(--ink-muted);flex-wrap:wrap;gap:14px;margin-top:5px;font-size:12px;display:flex}.cust-contact span{align-items:center;gap:5px;display:flex}.cust-contact svg{stroke:currentColor;width:12px;height:12px}.cust-stats{gap:24px;margin-left:auto;display:flex}.cust-stat-val{font-size:16px;font-weight:700}.cust-stat-label{color:var(--ink-faint);text-transform:uppercase;letter-spacing:.05em;font-size:10.5px}.vehicle-card{border:1px solid var(--border);background:var(--surface);text-align:left;cursor:pointer;border-radius:9px;width:100%;padding:11px 12px;display:block}.vehicle-card:hover{border-color:var(--border-strong)}.vehicle-plate{font-family:var(--font-mono);background:var(--surface-3);border:1px solid var(--border);border-radius:5px;margin-top:6px;padding:2px 7px;font-size:11px;font-weight:700;display:inline-block}.toast{background:var(--ink);color:var(--bg);box-shadow:var(--shadow);z-index:50;border-radius:9px;padding:10px 16px;font-size:12.5px;font-weight:600;position:fixed;bottom:20px;left:50%;transform:translate(-50%)}.week-strip{gap:8px;margin-bottom:16px;display:flex}.week-day{text-align:center;border:1px solid var(--border);cursor:pointer;background:var(--surface);border-radius:9px;flex:1;padding:10px 6px}.week-day:hover{border-color:var(--border-strong)}.week-day.active{background:var(--brand);color:var(--brand-ink);border-color:var(--brand)}.week-day .dow{text-transform:uppercase;letter-spacing:.04em;opacity:.75;font-size:10px}.week-day .dom{font-size:15px;font-weight:700;font-family:var(--font-mono);margin-top:2px}.week-day .cnt{opacity:.75;margin-top:2px;font-size:9.5px}.sched{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow);overflow:auto hidden}.sched-hours{border-bottom:1px solid var(--border);min-width:600px;margin-left:118px;display:flex}.sched-hour{text-align:center;color:var(--ink-faint);font-size:10px;font-family:var(--font-mono);flex:1;padding:7px 0}.tech-row{border-bottom:1px solid var(--border);align-items:stretch;min-width:718px;display:flex}.tech-row:last-child{border-bottom:none}.tech-row-label{flex:none;align-items:center;gap:8px;width:118px;padding:10px 12px;font-size:12px;font-weight:600;display:flex}.tech-row-track{background-image:repeating-linear-gradient(to right, var(--border) 0, var(--border) 1px, transparent 1px, transparent 10%);flex:1;min-height:58px;position:relative}.tech-block{color:#fff;white-space:nowrap;border-radius:7px;padding:6px 8px;font-size:10.5px;font-weight:700;position:absolute;top:7px;bottom:7px;overflow:hidden;box-shadow:0 2px 6px #00000026}.tech-block span{opacity:.85;margin-top:1px;font-size:9.5px;font-weight:500;display:block}.settings-layout{grid-template-columns:200px 1fr;gap:16px;display:grid}.settings-nav{flex-direction:column;gap:2px;display:flex}.settings-nav-item{color:var(--ink-muted);cursor:pointer;border-radius:7px;padding:8px 11px;font-size:12.5px}.settings-nav-item:hover{background:var(--surface-2);color:var(--ink)}.settings-nav-item.active{background:var(--brand-soft);color:var(--brand-strong);font-weight:600}.perm-check{border-radius:4px;justify-content:center;align-items:center;width:16px;height:16px;font-size:10px;display:inline-flex}.perm-check.yes{background:var(--good-bg);color:var(--good)}.perm-check.no{background:var(--surface-3);color:var(--ink-faint)}.perm-check.partial{background:var(--attn-bg);color:var(--attn)}.toggle{background:var(--surface-3);cursor:pointer;border:1px solid var(--border);border-radius:999px;flex:none;width:36px;height:20px;display:inline-block;position:relative}.toggle.on{background:var(--brand);border-color:var(--brand)}.toggle:after{content:"";background:#fff;border-radius:50%;width:14px;height:14px;transition:transform .15s;position:absolute;top:2px;left:2px}.toggle.on:after{transform:translate(16px)}.integ-grid{grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:12px;display:grid}.integ-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);padding:14px}.integ-top{align-items:center;gap:10px;display:flex}.integ-icon{background:var(--surface-3);border-radius:9px;flex:none;justify-content:center;align-items:center;width:36px;height:36px;display:flex}.integ-icon svg{width:18px;height:18px;stroke:var(--ink-muted)}.integ-name{font-size:12.5px;font-weight:700}.integ-desc{color:var(--ink-muted);margin-top:6px;font-size:11px;line-height:1.5}.integ-foot{justify-content:space-between;align-items:center;margin-top:12px;display:flex}.login-page{justify-content:center;align-items:center;min-height:100vh;padding:20px;display:flex}.login-card{background:var(--surface);border:1px solid var(--border);width:100%;max-width:380px;box-shadow:var(--shadow);border-radius:16px;padding:32px 30px}.login-mark{background:linear-gradient(155deg,var(--brand),var(--brand-strong));border-radius:12px;justify-content:center;align-items:center;width:44px;height:44px;margin-bottom:18px;display:flex}.login-mark svg{width:24px;height:24px;stroke:var(--brand-ink)}.login-title{letter-spacing:-.01em;font-size:19px;font-weight:700}.login-sub{color:var(--ink-muted);margin-top:4px;margin-bottom:22px;font-size:12.5px}.field{margin-bottom:13px}.field label{color:var(--ink-muted);margin-bottom:6px;font-size:11.5px;font-weight:600;display:block}.field input,.field select,.field textarea{border:1px solid var(--border-strong);background:var(--surface-2);width:100%;color:var(--ink);border-radius:8px;padding:9px 11px;font-family:inherit;font-size:13px}.field input:focus,.field select:focus,.field textarea:focus{outline:2px solid var(--brand);outline-offset:1px}.login-mfa{color:var(--ink-muted);background:var(--surface-2);border-radius:8px;align-items:center;gap:7px;margin:14px 0 18px;padding:9px 11px;font-size:11.5px;display:flex}.login-mfa svg{width:14px;height:14px;stroke:var(--good);flex:none}.login-foot{text-align:center;color:var(--ink-faint);margin-top:16px;font-size:11.5px}.login-error{background:var(--critical-bg);color:var(--critical);border-radius:8px;margin-bottom:14px;padding:9px 11px;font-size:12px;font-weight:600}.login-hint{color:var(--ink-faint);background:var(--surface-2);border-radius:8px;margin-top:14px;padding:9px 11px;font-size:11px}.mobile-shell{background:var(--bg);flex-direction:column;max-width:420px;min-height:100vh;margin:0 auto;display:flex}.mobile-top{padding:20px 18px 14px}.mobile-top-title{font-size:20px;font-weight:700}.mobile-top-sub{color:var(--ink-muted);margin-top:2px;font-size:12px}.mobile-list{flex:1;padding:0 16px 24px}.mjob{background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow);border-radius:14px;margin-bottom:12px;padding:16px}.mjob-veh{font-size:15px;font-weight:700}.mjob-cust{color:var(--ink-muted);margin-top:2px;font-size:12px}.mjob-foot{justify-content:space-between;align-items:center;margin-top:12px;display:flex}.mbtn-big{background:var(--brand);width:100%;color:var(--brand-ink);cursor:pointer;border:none;border-radius:14px;margin-top:8px;padding:16px;font-size:15px;font-weight:700}.mbtn-big.pause{background:var(--attn);color:#1a1300}.mbtn-big.complete{background:var(--good);color:#fff}.mchecklist{margin-top:12px}.mchecklist-item{border-bottom:1px solid var(--border);align-items:center;gap:9px;padding:9px 0;font-size:13px;display:flex}.mchecklist-item:last-child{border-bottom:none}.mgrade{gap:5px;margin-left:auto;display:flex}.mgrade button{border:2px solid var(--border);background:var(--surface-3);cursor:pointer;border-radius:50%;width:24px;height:24px;padding:0}.mgrade button.g.on{background:var(--good);border-color:var(--good)}.mgrade button.y.on{background:var(--attn);border-color:var(--attn)}.mgrade button.r.on{background:var(--critical);border-color:var(--critical)}@media (max-width:980px){.app{grid-template-columns:1fr}.sidebar{display:none}.jc-layout,.pos-layout,.panel-grid,.settings-layout{grid-template-columns:1fr}}
