:root{--navy:#071b30;--navy2:#0d3153;--bg:#eef3f7;--surface:#fff;--text:#172638;--muted:#657689;--line:#d6e0e8;--blue:#1688d8;--orange:#f26b1d;--red:#c93725;--green:#168056;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--text);background:var(--bg)}*{box-sizing:border-box}body{margin:0;min-width:320px;background:var(--bg)}button,input{font:inherit}button{cursor:pointer}.login{min-height:100vh;display:grid;place-items:center;padding:24px;background:radial-gradient(circle at 78% 20%,#124c77 0,transparent 26%),linear-gradient(135deg,var(--navy),#0a2b49 58%,#113f66)}.login-card{width:min(430px,100%);background:#fff;border-radius:18px;padding:28px;box-shadow:0 24px 70px rgba(0,0,0,.3)}.brand{display:flex;align-items:center;gap:14px}.brand img{width:102px;height:78px;object-fit:contain}.brand h1{font-size:22px;margin:0;color:var(--navy)}.brand p{margin:4px 0 0;color:var(--muted);font-size:13px}.field{display:grid;gap:6px;margin-top:15px}.field label{font-size:12px;font-weight:800;color:#536477}.field input{width:100%;border:1px solid #c7d4de;border-radius:9px;padding:12px}.primary,.secondary{border:0;border-radius:9px;padding:12px 15px;font-weight:850}.primary{color:#fff;background:linear-gradient(90deg,#b63721,var(--orange))}.secondary{background:#e8f2f8;color:var(--navy)}.login .primary{width:100%;margin-top:18px}.demo{margin-top:16px;padding:10px;background:#f4f7f9;border-radius:9px;color:var(--muted);font-size:11px}.error{color:#a92217;font-size:12px;margin-top:10px}.shell{min-height:100vh}.topbar{display:grid;grid-template-columns:auto 1fr auto;gap:16px;align-items:center;padding:10px 18px;background:linear-gradient(110deg,var(--navy),var(--navy2));color:#fff;border-bottom:3px solid transparent;border-image:linear-gradient(90deg,var(--red),var(--orange),#c4efff,var(--blue)) 1}.topbar img{width:82px;height:60px;object-fit:contain}.topbar h1{margin:0;font-size:19px}.topbar p{margin:3px 0 0;color:#d7e7f4;font-size:11px}.user{text-align:right}.user strong{display:block;font-size:12px}.user button{border:1px solid #66849c;background:#133d5f;color:#fff;border-radius:8px;padding:7px 9px;margin-top:5px}.layout{display:grid;grid-template-columns:210px 1fr;min-height:calc(100vh - 73px)}.sidebar{background:#0a2138;color:#dbe8f4;padding:14px 10px}.nav-label{font-size:10px;text-transform:uppercase;letter-spacing:.08em;color:#8eacc5;padding:5px 9px}.nav-item{width:100%;border:0;background:transparent;color:#dbe8f4;text-align:left;border-radius:9px;padding:11px;margin:2px 0;font-weight:750}.nav-item.active{background:linear-gradient(90deg,#ad351f,#e9611c);color:#fff}.content{padding:20px;min-width:0}.content-head{display:flex;align-items:flex-start;justify-content:space-between;gap:15px;margin-bottom:16px}.content-head h2{font-size:24px;margin:0;color:var(--navy)}.content-head p{margin:4px 0 0;color:var(--muted);font-size:13px}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:15px}.stat,.card{background:#fff;border:1px solid var(--line);border-radius:11px;box-shadow:0 2px 8px rgba(7,27,48,.05)}.stat{padding:12px}.stat span{font-size:10px;text-transform:uppercase;color:var(--muted);font-weight:800}.stat strong{display:block;font-size:22px;color:var(--navy);margin-top:3px}.jobs{display:grid;gap:11px}.job{padding:15px;display:grid;grid-template-columns:1fr auto;gap:12px}.job h3{margin:0;color:var(--navy);font-size:16px}.job p{margin:5px 0;color:var(--muted);font-size:12px}.job-meta{display:flex;gap:7px;flex-wrap:wrap;margin-top:9px}.chip{font-size:10px;font-weight:850;border-radius:999px;padding:5px 8px;background:#eaf4fa;color:#245a7a}.chip.status{background:#fff2e9;color:#9e451d}.job-actions{display:flex;align-items:center}.empty{padding:32px;text-align:center;color:var(--muted)}.toast{position:fixed;right:20px;top:90px;background:var(--navy);color:#fff;padding:11px 15px;border-radius:9px;box-shadow:0 8px 24px rgba(0,0,0,.22)}@media(max-width:700px){.layout{grid-template-columns:1fr}.sidebar{display:flex;overflow:auto;padding:7px}.nav-label{display:none}.nav-item{min-width:max-content}.content{padding:13px}.stats{grid-template-columns:1fr 1fr}.topbar{padding:8px 10px}.topbar img{width:66px}.job{grid-template-columns:1fr}.job-actions .primary{width:100%}}@media(max-width:430px){.stats{grid-template-columns:1fr}.user strong{display:none}}

select,textarea{font:inherit;color:var(--text)}.field select,.field textarea{width:100%;border:1px solid #c7d4de;border-radius:9px;padding:11px;background:#fff}.field textarea{min-height:76px;resize:vertical}.dispatch-head{align-items:center}.dispatch-tools{display:flex;align-items:center;gap:7px}.dispatch-tools input{border:1px solid #c8d5df;border-radius:9px;padding:10px;background:#fff;color:var(--navy);font-weight:750}.dispatch-tools .secondary{padding:10px 13px;font-size:18px}.dispatch-scroll{overflow-x:auto;padding-bottom:7px}.dispatch-board{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(245px,1fr);gap:10px;min-width:max-content}.dispatch-column{width:270px;background:#e5ebf0;border:1px solid #cbd6df;border-radius:11px;overflow:hidden;transition:.15s}.dispatch-column.drag-over{border-color:var(--orange);background:#fff0e7;box-shadow:0 0 0 3px rgba(242,107,29,.15)}.dispatch-column>header{display:flex;justify-content:space-between;align-items:center;padding:11px 12px;background:var(--navy);color:#fff}.dispatch-column.unscheduled>header{background:#465b6c}.dispatch-column header strong{display:block;font-size:13px}.dispatch-column header span{display:block;font-size:9px;color:#c3d4e2;margin-top:2px}.dispatch-column header b{display:grid;place-items:center;width:25px;height:25px;border-radius:50%;background:#ffffff24;font-size:11px}.dispatch-drop{padding:8px;min-height:420px}.dispatch-card{display:grid;grid-template-columns:28px 1fr;gap:8px;background:#fff;border:1px solid #d5dee5;border-left:4px solid var(--blue);border-radius:9px;padding:9px 8px;margin-bottom:8px;box-shadow:0 2px 7px rgba(7,27,48,.07)}.dispatch-card.priority-high{border-left-color:var(--orange)}.dispatch-card.priority-urgent{border-left-color:var(--red)}.dispatch-card .stop{display:grid;place-items:center;width:25px;height:25px;border-radius:50%;background:#e7f4fb;color:#1b658f;font-weight:900;font-size:11px}.dispatch-card strong{display:block;font-size:11px;color:var(--navy);line-height:1.25}.dispatch-card>div>span{display:block;margin-top:3px;color:var(--muted);font-size:9px}.dispatch-card p{margin:6px 0;font-size:10px;line-height:1.3;color:#4e6070;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.dispatch-card .job-meta{margin-top:5px;gap:4px}.dispatch-card em{font-style:normal;font-size:8px;font-weight:850;text-transform:uppercase;border-radius:999px;padding:3px 5px;background:#edf3f7;color:#536c7e}.drop-empty{border:1px dashed #afbdc8;border-radius:8px;color:#788794;text-align:center;padding:22px 5px;font-size:10px}.dispatch-help{margin:8px 2px 0;color:var(--muted);font-size:10px}.modal-backdrop{position:fixed;inset:0;background:rgba(3,16,29,.62);z-index:20;display:grid;place-items:center;padding:18px;overflow:auto}.modal-card{width:min(540px,100%);max-height:calc(100vh - 36px);overflow:auto;background:#fff;border-radius:14px;padding:18px;box-shadow:0 24px 70px rgba(0,0,0,.3)}.wide-modal{width:min(760px,100%)}.modal-head{display:flex;justify-content:space-between;align-items:flex-start;border-bottom:1px solid var(--line);padding-bottom:11px}.modal-head h2{margin:0;color:var(--navy);font-size:20px}.modal-head p{margin:3px 0 0;color:var(--muted);font-size:11px}.icon-button{border:0;background:#edf2f5;color:var(--navy);border-radius:50%;width:32px;height:32px;font-size:21px}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 12px}.form-grid .field{margin-top:12px}.span-2{grid-column:1/-1}.check-field{display:flex;gap:8px;align-items:center;margin-top:20px;font-size:12px;font-weight:750;color:var(--navy)}.check-field input{width:18px;height:18px;accent-color:var(--orange)}.modal-actions{display:flex;justify-content:flex-end;gap:8px;border-top:1px solid var(--line);margin-top:17px;padding-top:13px}.form-error{color:#9f2418;background:#fff0ec;border:1px solid #efb4a9;border-radius:8px;padding:9px;margin-top:12px;font-size:11px}
@media(max-width:850px){.dispatch-head{display:block}.dispatch-tools{margin-top:12px;flex-wrap:wrap}.dispatch-tools #new-job{margin-left:auto}.dispatch-board{grid-auto-columns:250px}.dispatch-column{width:250px}}
@media(max-width:520px){.form-grid{grid-template-columns:1fr}.span-2{grid-column:auto}.dispatch-tools #new-job{width:100%;margin-left:0}.dispatch-tools input{flex:1}.modal-backdrop{padding:8px}.modal-card{max-height:calc(100vh - 16px);padding:14px}}

.ticket-page{padding:18px;max-width:1500px;margin:0 auto}.ticket-toolbar{display:flex;align-items:center;gap:10px;margin-bottom:14px}.ticket-toolbar>div:not(.grow){display:grid}.ticket-toolbar strong{color:var(--navy);font-size:12px}.ticket-toolbar span{color:var(--muted);font-size:10px}.grow{flex:1}.ticket-grid{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:14px;align-items:start}.ticket-main,.ticket-side{display:grid;gap:12px}.ticket-card{padding:16px}.ticket-card h2{margin:0;color:var(--navy);font-size:16px}.ticket-card>.field:first-of-type{margin-top:13px}.ticket-card .narrative textarea{min-height:90px}.section-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:6px}.section-head p{margin:3px 0 0;color:var(--muted);font-size:10px}.requirement{white-space:nowrap;border-radius:999px;padding:5px 8px;background:#fff0e8;color:#a8471c;font-size:9px;font-weight:900;text-transform:uppercase}.requirement.done{background:#e4f5ed;color:#15704d}.upload-row{display:flex;gap:8px;flex-wrap:wrap;border-top:1px solid var(--line);margin-top:15px;padding-top:13px}.upload-button,.upload-zone{position:relative;overflow:hidden;cursor:pointer;font-size:11px;font-weight:850;color:#fff;background:linear-gradient(90deg,#117bbd,var(--blue));border-radius:9px;padding:11px 13px}.upload-button.subtle{background:#e8f2f8;color:var(--navy)}.upload-button input,.upload-zone input{position:absolute;inset:0;opacity:0;cursor:pointer}.upload-zone{display:grid;place-items:center;min-height:80px;margin-top:12px;border:2px dashed #79acd0;background:#edf8ff;color:#1d628e}.entry-row{display:grid;gap:7px;margin-top:9px}.entry-row input,.entry-row select{min-width:0;border:1px solid #c7d4de;border-radius:8px;padding:9px;background:#fff}.reading-row{grid-template-columns:2fr 1fr 1fr 34px}.material-row{grid-template-columns:1.5fr 1.5fr .7fr .7fr 34px}.remove-entry{border:0;border-radius:8px;background:#fff0ec;color:#a52d20;font-size:20px}.attachment-list{display:grid;gap:6px;margin-top:10px}.attachment-list a{display:grid;text-decoration:none;padding:8px 10px;border:1px solid var(--line);border-radius:8px;background:#f8fafb}.attachment-list strong{font-size:10px;color:var(--navy)}.attachment-list span{font-size:9px;color:var(--muted);margin-top:2px}.customer-toggle{margin-top:12px}.signature-head{display:flex;justify-content:space-between;align-items:center;margin-top:14px}.signature-head label{font-size:12px;font-weight:800;color:#536477}.signature-box{position:relative;border:1px solid #b9cbd8;border-radius:9px;background:#fbfdff;overflow:hidden;margin-top:5px}.signature-box canvas{display:block;width:100%;height:145px;touch-action:none}.signature-box>span{position:absolute;bottom:5px;left:0;right:0;text-align:center;pointer-events:none;color:#8a9aaa;font-size:9px}.field-label{display:flex;justify-content:space-between;align-items:center}.dictate{border:0;background:#e7f4fb;color:#17638f;border-radius:999px;padding:5px 8px;font-size:9px;font-weight:850}.compact{padding:8px 10px;font-size:10px}.block{width:100%;margin-top:11px}.labor-row{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line);padding:9px 0}.labor-row:last-child{border:0}.labor-row strong,.labor-row span{display:block}.labor-row strong{font-size:11px;color:var(--navy)}.labor-row span{font-size:9px;color:var(--muted);margin-top:2px}.labor-row b{font-size:10px;color:var(--green)}.parts-entry{display:grid;border-top:1px solid var(--line);padding-top:9px;margin-top:10px}.parts-entry strong{font-size:10px}.parts-entry span{font-size:9px;color:var(--muted);margin-top:2px}.gate-card{background:#f7fafc}.gate-line{display:flex;gap:8px;align-items:center;margin-top:10px;color:#7d8995}.gate-line.complete{color:var(--green)}.gate-line span{font-size:16px}.gate-line strong{font-size:10px}.muted{color:var(--muted);font-size:10px}.ticket-card .check-field{margin-top:15px}
@media(max-width:980px){.ticket-grid{grid-template-columns:1fr}.ticket-side{grid-template-columns:repeat(3,minmax(0,1fr))}.gate-card{grid-column:auto}}
@media(max-width:720px){.ticket-page{padding:11px}.ticket-toolbar{flex-wrap:wrap}.ticket-toolbar .grow{display:none}.ticket-toolbar .primary{margin-left:auto}.ticket-side{grid-template-columns:1fr}.material-row{grid-template-columns:1fr 1fr}.material-row .remove-entry{grid-column:2}.reading-row{grid-template-columns:1fr 1fr}.reading-row .remove-entry{grid-column:2}.ticket-card{padding:13px}}

.dispatch-card .job-meta button{border:0;border-radius:999px;padding:3px 7px;background:#173e5f;color:#fff;font-size:8px;font-weight:850}.installation-options{margin-top:10px;padding:12px;border-radius:10px;background:#eef7fc;border:1px solid #cfe3ef}.checklist-group{margin-top:15px;border:1px solid var(--line);border-radius:10px;overflow:hidden}.checklist-group h3{margin:0;padding:8px 11px;background:linear-gradient(90deg,var(--navy),#17466c);color:#fff;font-size:10px;text-transform:uppercase;letter-spacing:.06em}.install-check-row{display:grid;grid-template-columns:125px 1fr;gap:10px;align-items:center;padding:10px;border-top:1px solid var(--line)}.install-check-row:first-of-type{border-top:0}.install-check-row select,.install-check-row input{width:100%;border:1px solid #c7d4de;border-radius:8px;padding:8px;background:#fff}.install-check-row strong{display:block;color:var(--navy);font-size:11px}.install-check-row input{margin-top:5px;font-size:10px}.install-check-row:has(select option[value="complete"]:checked){background:#f0faf5}.install-equipment-row{position:relative;display:grid;grid-template-columns:1.1fr 1fr 1.2fr 1.2fr .8fr;gap:8px;padding:12px 42px 12px 12px;margin-top:10px;border:1px solid var(--line);border-left:4px solid var(--blue);border-radius:10px;background:#f9fbfc}.install-equipment-row .field{margin:0}.install-equipment-row .check-field{grid-column:1/-1;margin-top:3px}.install-equipment-row>.remove-entry{position:absolute;right:8px;top:10px;width:28px;height:28px}.day-entry{border-top:1px solid var(--line);padding:10px 0}.day-entry:first-of-type{margin-top:8px}.day-entry strong{font-size:10px;color:var(--navy)}.day-entry p{font-size:10px;margin:4px 0;color:#455a6d}.day-entry span{font-size:9px;color:var(--muted)}.end-day-card{border-top:4px solid var(--orange)}.qc-card{border-top:4px solid var(--blue)}.qc-card>p:not(.muted){font-size:10px;color:#43576a}.qc-actions{display:flex;gap:8px;margin-top:10px}.qc-actions button{flex:1}
@media(max-width:1050px){.install-equipment-row{grid-template-columns:1fr 1fr}.install-equipment-row .check-field{grid-column:1/-1}}
@media(max-width:600px){.install-check-row{grid-template-columns:1fr}.install-equipment-row{grid-template-columns:1fr}.install-equipment-row .check-field{grid-column:auto}}

.nav-item b{float:right;display:grid;place-items:center;min-width:21px;height:21px;border-radius:999px;background:#ffffff20;font-size:9px}.review-list{display:grid;gap:10px}.review-card{display:grid;grid-template-columns:1fr auto;align-items:center;gap:18px;padding:16px;border-left:4px solid var(--orange)}.review-card h3{margin:8px 0 0;color:var(--navy);font-size:15px}.review-card p{margin:4px 0;color:var(--muted);font-size:11px}.review-card-head{display:flex;gap:6px}.review-facts{display:flex;gap:14px;margin-top:9px;color:#456176;font-size:9px;font-weight:800}.review-layout{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:14px;align-items:start}.review-detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:13px}.review-detail-grid>div{display:grid;gap:2px;padding:9px;border-radius:8px;background:#f3f7f9}.review-detail-grid span,.review-section>span{font-size:9px;text-transform:uppercase;color:var(--muted);font-weight:850}.review-detail-grid strong{font-size:11px;color:var(--navy)}.review-narrative{font-size:11px;line-height:1.5;color:#42566a}.review-section{margin-top:12px}.review-section p{margin:4px 0 0;line-height:1.5;font-size:11px;color:#344c61}.review-equipment{display:grid;padding:9px 0;border-bottom:1px solid var(--line)}.review-equipment strong{font-size:11px;color:var(--navy)}.review-equipment span{font-size:9px;color:var(--muted);margin-top:2px}.summary-line,.review-total{display:flex;justify-content:space-between;gap:12px;padding:8px 0;border-bottom:1px solid var(--line);font-size:10px}.summary-line span{color:#4f6274}.summary-line strong,.review-total strong{color:var(--navy)}.review-total{margin-top:8px;padding:11px;border:0;border-radius:8px;background:#eaf5fb}.subhead{margin:14px 0 3px;color:var(--navy);font-size:11px}.invoice-card textarea{min-height:145px}.decision-card{border-top:4px solid var(--orange)}.danger-outline{color:#9b2f21;background:#fff1ed;border:1px solid #efb8ad}.decision-note{text-align:center;margin:9px 0 0;color:var(--muted);font-size:9px}
@media(max-width:950px){.review-layout{grid-template-columns:1fr}.review-layout>.ticket-side{grid-template-columns:1fr 1fr}.decision-card{order:-1}}
@media(max-width:650px){.review-card{grid-template-columns:1fr}.review-card .primary{width:100%}.review-layout>.ticket-side{grid-template-columns:1fr}.review-detail-grid{grid-template-columns:1fr}}

.customer-head{align-items:center}.customer-search{display:flex;gap:8px;margin-bottom:14px}.customer-search input{flex:1;min-width:0;border:1px solid #c7d4de;border-radius:9px;padding:11px;background:#fff}.customer-list{display:grid;gap:9px}.customer-card{display:grid;grid-template-columns:46px 1fr auto;gap:12px;align-items:center;padding:14px}.customer-avatar{display:grid;place-items:center;width:44px;height:44px;border-radius:12px;background:linear-gradient(145deg,var(--navy2),var(--blue));color:#fff;font-size:13px;font-weight:900}.customer-card h3{margin:0;color:var(--navy);font-size:14px}.customer-card p{margin:4px 0;color:var(--muted);font-size:10px}.customer-facts{display:flex;gap:12px;flex-wrap:wrap;margin-top:7px;color:#35566e;font-size:9px;font-weight:800}.customer-detail-grid{display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:14px;align-items:start}.location-card{padding:16px}.location-head{display:flex;justify-content:space-between;gap:12px}.location-head>div:last-child{display:flex;gap:7px;align-items:flex-start}.location-head>div>span{font-size:9px;text-transform:uppercase;color:var(--blue);font-weight:900}.location-head h2{margin:3px 0 0;color:var(--navy);font-size:16px}.location-head p{margin:3px 0;color:var(--muted);font-size:10px}.access-note{margin-top:10px;border-radius:8px;background:#fff6e8;padding:9px;color:#78512f;font-size:10px}.location-section{margin-top:15px}.location-section>h3{margin:0 0 6px;color:var(--navy);font-size:11px;text-transform:uppercase;letter-spacing:.04em}.equipment-record,.job-history-row{display:flex;justify-content:space-between;align-items:center;gap:12px;border-top:1px solid var(--line);padding:9px 0}.equipment-record>div,.job-history-row>div{display:grid;gap:2px}.equipment-record strong,.job-history-row strong{font-size:10px;color:var(--navy)}.equipment-record span,.job-history-row span{font-size:9px;color:var(--muted)}.equipment-record em,.job-history-row em{font-style:normal;font-size:8px;color:#397254}.equipment-record.status-replaced,.equipment-record.status-removed{opacity:.62}.job-history-row>em{white-space:nowrap;border-radius:999px;padding:4px 6px;background:#edf4f8;color:#536a7b;font-weight:850}.modal-card input[required],.modal-card textarea[required]{border-left:3px solid var(--orange)}
@media(max-width:900px){.customer-detail-grid{grid-template-columns:1fr}.customer-detail-grid>.ticket-side{grid-template-columns:1fr 1fr}}
@media(max-width:600px){.customer-card{grid-template-columns:40px 1fr}.customer-card>button{grid-column:1/-1}.customer-search{flex-wrap:wrap}.customer-search input{flex-basis:100%}.location-head{display:grid}.location-head>div:last-child{flex-wrap:wrap}.customer-detail-grid>.ticket-side{grid-template-columns:1fr}}

.existing-job-customer,.new-job-customer{margin-top:4px}.existing-job-customer{padding:12px;border:1px solid #bcd9e9;border-radius:10px;background:#eff8fd}.selection-help{margin:7px 2px 0;color:#4d6b7e;font-size:9px}.new-job-customer{padding:0}.existing-job-customer[hidden],.new-job-customer[hidden]{display:none}

.review-stats{grid-template-columns:repeat(4,1fr)}.survey-measurement-row{display:grid;grid-template-columns:1.4fr .7fr .55fr 1.4fr 34px;gap:7px;margin-top:9px}.survey-measurement-row input{min-width:0;border:1px solid #c7d4de;border-radius:8px;padding:9px}.survey-measurement-row .remove-entry{height:38px}@media(max-width:850px){.review-stats{grid-template-columns:1fr 1fr}.survey-measurement-row{grid-template-columns:1fr 1fr}.survey-measurement-row .remove-entry{grid-column:2}}@media(max-width:480px){.survey-measurement-row{grid-template-columns:1fr}.survey-measurement-row .remove-entry{grid-column:auto}.review-stats{grid-template-columns:1fr 1fr}}

.callback-card{border-left-color:#d33a25;background:#fffaf8}.callback-chip{background:#ffe1d8!important;color:#9f2c1d!important}.callback-job{border-left:5px solid var(--red)}.callback-alert{display:grid;gap:2px;margin-top:10px;padding:9px;border:1px solid #efb4a9;border-radius:8px;background:#fff0ec}.callback-alert strong{font-size:10px;color:#9e2f20}.callback-alert span{font-size:9px;color:#74483f}.callback-check{margin-top:10px;padding:10px;border:1px solid #eca99d;border-radius:9px;background:#fff0ec;color:#78372d}.callback-check strong{font-size:11px;color:#9e2f20}.callback-check p{margin:5px 0;font-size:9px;line-height:1.5}.callback-check label{display:flex;gap:7px;align-items:center;font-size:9px;font-weight:800}.callback-check[hidden]{display:none}

.user-actions{display:flex;justify-content:flex-end;gap:5px}.user-actions button{margin-top:5px}.user-actions b{display:inline-grid;place-items:center;min-width:17px;height:17px;border-radius:999px;background:var(--red);font-size:8px}.notification-backdrop{place-items:start end;padding-top:82px}.notification-center{width:min(430px,calc(100vw - 24px));margin-right:4px}.notification-tools{display:flex;justify-content:flex-end;gap:7px;padding:10px 0}.notification-list{display:grid;max-height:58vh;overflow:auto}.notification-item{display:grid;grid-template-columns:28px 1fr 16px;gap:8px;width:100%;padding:11px 8px;border:0;border-top:1px solid var(--line);border-radius:0;background:#fff;text-align:left}.notification-item:hover,.notification-item:focus-visible{background:#f4f9fc}.notification-item.unread{background:#eef8fe;border-left:4px solid var(--blue)}.notification-item>span{font-size:18px}.notification-item>div{min-width:0}.notification-item>b{align-self:center;color:var(--blue);font-size:19px}.notification-item strong{display:block;color:var(--navy);font-size:11px}.notification-item p{margin:3px 0;color:#445b6d;font-size:10px;line-height:1.4}.notification-item em{font-style:normal;color:var(--muted);font-size:8px}.notification-focus{outline:3px solid #f5842c;box-shadow:0 0 0 6px rgba(23,126,189,.16)}.notification-footnote{margin:10px 0 0;padding:9px;border-radius:8px;background:#f4f7f9;color:var(--muted);font-size:8px;line-height:1.4}

.phone-upload{border:0}.phone-upload-card{width:min(600px,100%)}.phone-link{display:flex;gap:8px;margin-top:18px}.phone-link input{flex:1;min-width:0;border:1px solid #b9cbd8;border-radius:9px;padding:12px;color:var(--navy);background:#f7fafc}.phone-link button{white-space:nowrap}@media(max-width:520px){.phone-link{display:grid}.phone-upload-card .modal-actions{display:grid}.phone-upload-card .modal-actions button{width:100%}}

.labor-card .section-head{align-items:center}.labor-edit-list{display:grid;gap:10px;margin-top:15px}.labor-edit-row{display:grid;grid-template-columns:1fr 1.2fr 1.2fr;gap:9px;align-items:end;padding:11px;border:1px solid var(--line);border-left:4px solid var(--blue);border-radius:9px;background:#f8fafc}.labor-edit-row>strong{align-self:center;color:var(--navy);font-size:11px}.labor-edit-row label{display:grid;gap:5px;color:#536477;font-size:9px;font-weight:850}.labor-edit-row input{min-width:0;border:1px solid #c7d4de;border-radius:8px;padding:9px;background:#fff;color:var(--text)}@media(max-width:620px){.labor-edit-row{grid-template-columns:1fr}.labor-edit-row>strong{margin-bottom:2px}}

.jobs-head{align-items:center}.jobs-filters{display:grid;grid-template-columns:2fr repeat(5,minmax(125px,1fr)) auto auto;gap:8px;padding:12px;margin-bottom:14px}.jobs-filters input,.jobs-filters select{min-width:0;border:1px solid #c7d4de;border-radius:8px;padding:10px;background:#fff;color:var(--text)}.job-management-list{display:grid;gap:9px}.management-job{display:grid;grid-template-columns:70px minmax(0,1fr) auto;gap:14px;align-items:center;padding:14px;border-left:4px solid var(--blue)}.management-job.cancelled-job{opacity:.68;border-left-color:#7b8792}.management-date{display:grid;text-align:center;padding:8px;border-radius:9px;background:#eef5f9;color:var(--navy)}.management-date strong{font-size:15px}.management-date span{font-size:8px;color:var(--muted)}.management-title{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.management-title h3{margin:0;color:var(--navy);font-size:14px}.management-main>p{margin:4px 0;color:var(--muted);font-size:10px}.management-facts{display:flex;gap:12px;flex-wrap:wrap;margin-top:7px;color:#36566d;font-size:9px;font-weight:800}.management-actions{display:grid;grid-template-columns:1fr 1fr;gap:6px;width:210px}.management-actions button{padding:8px;font-size:9px}.management-actions .primary:only-child{grid-column:1/-1}.jobs-stats{margin-top:0}.jobs-stats .stat:nth-child(2){border-top:3px solid var(--blue)}.jobs-stats .stat:nth-child(3){border-top:3px solid var(--orange)}@media(max-width:1250px){.jobs-filters{grid-template-columns:repeat(4,1fr)}.jobs-filters input:first-child{grid-column:span 2}}@media(max-width:760px){.jobs-filters{grid-template-columns:1fr 1fr}.jobs-filters input:first-child{grid-column:1/-1}.management-job{grid-template-columns:58px 1fr}.management-actions{grid-column:1/-1;width:auto;grid-template-columns:repeat(2,1fr)}.management-title{display:grid}}@media(max-width:480px){.jobs-filters{grid-template-columns:1fr}.jobs-filters input:first-child{grid-column:auto}.management-job{grid-template-columns:1fr}.management-date{display:flex;justify-content:space-between}.management-actions{grid-template-columns:1fr}}

.job.locked-job{background:linear-gradient(135deg,#f8fafc,#edf2f6);border-style:dashed}.job.locked-job h3{color:#52687a}.job.locked-job .job-actions button:disabled{cursor:not-allowed;opacity:.8}.job.locked-job>div>p{color:#738392}

.crew-location-section{margin:2px 0 15px;padding:14px;border:1px solid var(--line);border-top:4px solid var(--blue);border-radius:11px;background:#fff}.crew-location-section .section-head{align-items:center}.crew-location-section h2{margin:0;color:var(--navy);font-size:14px}.crew-location-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.crew-location-card{display:grid;grid-template-columns:30px 1fr auto;gap:8px;align-items:center;padding:10px;border:1px solid #cfe0ea;border-radius:9px;background:#f6fbfe}.crew-location-card.no-checkin{background:#f7f8f9;border-style:dashed}.crew-location-icon{display:grid;place-items:center;width:29px;height:29px;border-radius:50%;background:var(--blue);color:#fff;font-size:16px}.no-checkin .crew-location-icon{background:#93a1ad}.crew-location-card strong,.crew-location-card span,.crew-location-card small{display:block}.crew-location-card strong{color:var(--navy);font-size:10px}.crew-location-card span{margin-top:2px;color:#52687a;font-size:9px}.crew-location-card small{margin-top:2px;color:var(--muted);font-size:8px}.crew-location-card a{white-space:nowrap;border-radius:7px;padding:7px 8px;background:#e5f3fb;color:#155e89;text-decoration:none;font-size:8px;font-weight:900}@media(max-width:900px){.crew-location-grid{grid-template-columns:1fr 1fr}}@media(max-width:560px){.crew-location-grid{grid-template-columns:1fr}.crew-location-card{grid-template-columns:30px 1fr}}

.parts-head{align-items:center}.parts-filters{display:grid;grid-template-columns:2fr 1fr 1fr auto auto;gap:8px;padding:12px;margin-bottom:14px}.parts-filters input,.parts-filters select{min-width:0;border:1px solid #c7d4de;border-radius:8px;padding:10px;background:#fff;color:var(--text)}.parts-management-list{display:grid;gap:9px}.parts-management-card{display:grid;grid-template-columns:38px minmax(0,1fr) 120px;gap:12px;align-items:center;padding:14px;border-left:4px solid var(--blue)}.parts-management-card.urgent-part{border-left-color:var(--red);background:#fffaf8}.parts-status-icon{display:grid;place-items:center;width:36px;height:36px;border-radius:50%;background:#e6f3fa;color:#17648f;font-size:18px;font-weight:900}.urgent-part .parts-status-icon{background:#ffe5dd;color:#a32d1e}.parts-management-main h3{margin:7px 0 3px;color:var(--navy);font-size:14px}.parts-management-main p{margin:3px 0;color:#52677a;font-size:10px}.parts-management-actions{display:grid;gap:7px}.parts-management-actions button{padding:9px;font-size:9px}.parts-stats .stat:nth-child(3){border-top:3px solid var(--red)}@media(max-width:720px){.parts-filters{grid-template-columns:1fr 1fr}.parts-filters input{grid-column:1/-1}.parts-management-card{grid-template-columns:38px 1fr}.parts-management-actions{grid-column:1/-1;grid-template-columns:1fr 1fr}}@media(max-width:480px){.parts-filters{grid-template-columns:1fr}.parts-filters input{grid-column:auto}.parts-management-card{grid-template-columns:1fr}.parts-status-icon{display:none}.parts-management-actions{grid-template-columns:1fr}}

.correction-banner{display:flex;justify-content:space-between;gap:14px;margin-bottom:14px;padding:12px 14px;border:1px solid #efb0a5;border-left:5px solid var(--red);border-radius:10px;background:#fff0ec}.correction-banner strong{color:#962c1e;font-size:12px}.correction-banner span{color:#71483f;font-size:10px}.ticket-correction{align-items:flex-start}.ticket-correction span{font-size:11px;line-height:1.45}.job.correction-job{border-left:5px solid var(--red);background:#fffaf8}.correction-note{display:grid;gap:3px;margin-top:10px;padding:10px;border:1px solid #efb0a5;border-radius:8px;background:#fff0ec}.correction-note strong{color:#992d1f;font-size:10px}.correction-note span{color:#68443d;font-size:10px;line-height:1.4}@media(max-width:580px){.correction-banner{display:grid}}

.employee-head{align-items:center}.employee-list{display:grid;gap:9px}.employee-card{display:grid;grid-template-columns:46px 1fr auto;gap:12px;align-items:center;padding:14px;border-left:4px solid var(--blue)}.employee-card h3{margin:0;color:var(--navy);font-size:14px}.employee-card p{margin:4px 0;color:var(--muted);font-size:10px}.employee-card.inactive-employee{opacity:.62;border-left-color:#8796a2}.temporary-password{color:#a1431d!important}.employee-card button{font-size:9px}@media(max-width:560px){.employee-card{grid-template-columns:40px 1fr}.employee-card>button{grid-column:1/-1}}
