@font-face{font-family:Montserrat;font-style:normal;font-weight:400;font-display:swap;src:url("../fonts/montserrat-latin-400-normal.woff2") format("woff2")}
@font-face{font-family:Montserrat;font-style:normal;font-weight:600;font-display:swap;src:url("../fonts/montserrat-latin-600-normal.woff2") format("woff2")}
@font-face{font-family:Montserrat;font-style:normal;font-weight:700;font-display:swap;src:url("../fonts/montserrat-latin-700-normal.woff2") format("woff2")}
@font-face{font-family:"Source Sans 3";font-style:normal;font-weight:400;font-display:swap;src:url("../fonts/source-sans-3-latin-400-normal.woff2") format("woff2")}
@font-face{font-family:"Source Sans 3";font-style:normal;font-weight:600;font-display:swap;src:url("../fonts/source-sans-3-latin-600-normal.woff2") format("woff2")}
@font-face{font-family:"Source Sans 3";font-style:normal;font-weight:700;font-display:swap;src:url("../fonts/source-sans-3-latin-700-normal.woff2") format("woff2")}

:root{
  --navy:#0b2d5b;
  --navy-900:#061d3d;
  --navy-800:#08264e;
  --navy-700:#123f76;
  --red:#c62828;
  --red-700:#a51f1f;
  --stone:#a8a39a;
  --slate:#6e7781;
  --white:#fff;
  --surface:#f4f6f9;
  --surface-2:#eef2f6;
  --border:#d9e0e8;
  --line:#d9e0e8;
  --blue:#0b2d5b;
  --blue-soft:#eef3f8;
  --ink:#132640;
  --muted:#667384;
  --success:#157347;
  --success-bg:#e9f7ef;
  --warning:#9a6700;
  --warning-bg:#fff7df;
  --danger:#b4232a;
  --danger-bg:#fcebed;
  --info:#0b5cab;
  --shadow:0 16px 42px rgba(11,45,91,.09);
  --shadow-sm:0 6px 18px rgba(11,45,91,.07);
  --radius:18px;
  --radius-sm:11px;
  --sidebar:272px;
}

/* Universal linked-record quick information */
.entity-quick-info-card { width: min(620px, calc(100vw - 32px)); }
.quick-info-card { display: grid; gap: 22px; }
.quick-info-heading { display: flex; align-items: center; gap: 16px; padding-right: 34px; }
.quick-info-heading h2 { margin: 3px 0 1px; }
.quick-info-icon { width: 54px; height: 54px; flex: 0 0 54px; display: grid; place-items: center; border-radius: 17px; color: #fff; background: linear-gradient(145deg, var(--navy), var(--blue)); font-size: 1.25rem; box-shadow: 0 10px 22px rgba(11, 45, 91, .2); }
.quick-info-facts { margin: 0; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
.quick-info-facts div { padding: 12px 14px; border: 1px solid var(--border); border-radius: 12px; background: var(--surface-soft); }
.quick-info-facts dt { color: var(--muted); font-size: .76rem; font-weight: 800; text-transform: uppercase; letter-spacing: .04em; }
.quick-info-facts dd { margin: 4px 0 0; color: var(--ink); font-weight: 750; overflow-wrap: anywhere; }
.location-import-rows { max-height: 46vh; font-size: .76rem; }
.location-import-rows th,.location-import-rows td { padding: .55rem .65rem; }
.location-import-rows th:first-child, .location-import-rows td:first-child { position: sticky; left: 0; z-index: 2; background: var(--surface); }
@media (max-width: 640px) { .quick-info-facts { grid-template-columns: 1fr; } }

/* Services Workshop, calendar, crew history, and field equipment additions. */
.workshop-location-picker{display:block;width:100%;margin-bottom:20px;padding:20px;background:linear-gradient(135deg,#fff,#f2f6f8)}.workshop-location-picker>.field{width:100%;margin:0}.workshop-location-picker .search-dropdown>input{min-height:50px;padding:12px 44px 12px 15px;border:2px solid #b7c5d1;border-radius:12px;background:#fff;font-size:.95rem}.service-workshop-heading{display:flex;min-width:0;justify-content:space-between;gap:20px;align-items:flex-start;padding-bottom:20px;border-bottom:1px solid var(--border)}.service-workshop-heading>div{min-width:0}.service-workshop-heading p{overflow-wrap:anywhere}.service-workshop-heading h2,.service-location-map-block h3{margin:3px 0}.service-location-map-block{display:grid;grid-template-columns:1fr;gap:12px;margin:24px 0;padding:20px;border:1px solid var(--border);border-radius:16px;background:var(--surface-soft)}.service-location-map{height:440px;border-radius:14px;overflow:hidden;background:#dbe5eb}.service-area-row{display:grid!important;min-width:0;grid-template-columns:minmax(0,2fr) minmax(100px,.6fr) 38px;gap:12px!important;align-items:end;padding:16px!important;border:1px solid var(--border);border-radius:14px;background:var(--surface)}.service-area-row>.field{min-width:0}.service-area-row select{width:100%;min-width:0;text-overflow:ellipsis}.service-area-fields{grid-column:1/-1;display:grid;min-width:0;grid-template-columns:minmax(0,1fr) 90px;gap:10px;align-items:end;padding-top:12px;border-top:1px dashed var(--border)}.service-area-fields .color-field input{height:42px;padding:4px}.area-measurement{align-self:center;font-size:.82rem;font-weight:700;color:var(--muted)}.weekday-picker{display:flex;flex-wrap:wrap;gap:8px;margin-top:7px}.weekday-picker label{display:flex;gap:6px;align-items:center;padding:8px 11px;border:1px solid var(--border);border-radius:9px;background:var(--surface)}
.service-overview-header{display:flex;justify-content:space-between;gap:20px;align-items:flex-end;margin-bottom:20px}.service-overview-header h1{margin:3px 0}.service-overview-map{height:430px;border-radius:14px;overflow:hidden}.today-service-map-panel{margin-bottom:18px}.service-overview-v2 .service-grid{grid-template-columns:1.1fr .9fr}.service-overview-v2 .span-two{grid-column:1/-1}.dashboard-queue-list{display:grid;gap:10px;max-height:420px;overflow:auto}.dashboard-queue-list article,.maintenance-request-list article{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:12px;border:1px solid var(--border);border-radius:11px}.dashboard-queue-list article div,.maintenance-request-list article>div{display:grid;gap:3px}.dashboard-queue-list span,.maintenance-request-list small{font-size:.78rem;color:var(--muted)}.skip-review-list details,.crew-day-history details{border:1px solid var(--border);border-radius:12px;margin-top:9px;overflow:hidden}.skip-review-list summary,.crew-day-history summary{display:flex;justify-content:space-between;align-items:center;padding:13px;cursor:pointer}.skip-review-list summary span,.crew-day-history summary span{display:grid;gap:3px}.skip-review-list summary small,.crew-day-history summary small{color:var(--muted)}.skip-review-list details>div,.crew-day-history details>div{padding:0 13px 13px}.review-actions{display:grid;grid-template-columns:1fr auto auto;gap:9px;align-items:end}
.calendar-workspace{padding:0;overflow:hidden}.calendar-toolbar-v2{display:flex;gap:9px;align-items:center;padding:14px;border-bottom:1px solid var(--border);background:var(--surface-soft)}.crew-calendar-selector{margin-left:auto}.crew-calendar-selector label{display:flex;align-items:center;gap:8px;padding:4px 10px;border:1px solid var(--border);border-radius:10px;background:var(--surface)}.crew-calendar-selector select{border:0;background:transparent;font-weight:700}.calendar-view-tabs{display:flex;padding:3px;border-radius:10px;background:var(--surface-muted)}.calendar-view-tabs a{padding:8px 12px;border-radius:8px;color:var(--muted);font-weight:700}.calendar-view-tabs a.is-active{background:var(--surface);color:var(--text);box-shadow:0 2px 8px rgb(15 23 42 / 8%)}.service-calendar{display:grid;min-height:620px}.service-calendar-week{grid-template-columns:repeat(7,minmax(135px,1fr))}.service-calendar-month{grid-template-columns:repeat(7,minmax(120px,1fr))}.service-calendar-day{grid-template-columns:1fr}.calendar-day{min-width:0;border-right:1px solid var(--border);border-bottom:1px solid var(--border);padding:9px;background:var(--surface)}.calendar-day.is-today{background:color-mix(in srgb,var(--primary) 4%,var(--surface))}.calendar-day>header{display:flex;gap:7px;align-items:center;margin-bottom:9px}.calendar-day>header span,.calendar-day>header small{font-size:.72rem;color:var(--muted);text-transform:uppercase}.calendar-day>header small{margin-left:auto}.calendar-card-stack{display:grid;gap:7px}.calendar-service-card{display:flex;align-items:center;gap:8px;padding:9px;border:1px solid var(--border);border-left:4px solid var(--crew-color);border-radius:10px;background:var(--surface);cursor:pointer;box-shadow:0 3px 9px rgb(15 23 42 / 5%)}.calendar-service-card:hover,.calendar-service-card:focus{border-color:var(--crew-color);transform:translateY(-1px)}.calendar-service-card>div{display:grid;gap:2px;min-width:0;flex:1}.calendar-service-card strong,.calendar-service-card small{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.calendar-service-card small{color:var(--muted)}.crew-status-dot{width:8px;height:8px;border-radius:50%;background:var(--crew-color)}.schedule-detail-facts{display:grid;grid-template-columns:repeat(3,1fr);gap:9px;margin:15px 0}.schedule-detail-facts div{display:grid;padding:10px;background:var(--surface-soft);border-radius:9px}.schedule-detail-facts span{font-size:.72rem;color:var(--muted)}
.calendar-service-card[draggable=true]{cursor:grab}.calendar-service-card.is-dragging{opacity:.42}.schedule-skip-lock-form{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:12px;padding:12px;border:1px solid var(--border);border-radius:10px;background:var(--surface-soft)}
.temporary-assignment-list{display:grid;gap:6px;margin:12px 0;padding:10px;border-radius:10px;background:var(--surface-soft)}.crew-day-facts{display:flex!important;flex-wrap:wrap;gap:10px}.crew-day-facts>span{display:grid;min-width:110px;padding:9px;background:var(--surface-soft);border-radius:9px}.crew-day-facts p{width:100%;margin:0}.maintenance-request-list{display:grid;gap:10px}.maintenance-request-list article form{display:flex;gap:6px}.maintenance-request-list p{margin:3px 0 0}
.maintenance-request-list .maintenance-request-decision{display:grid;align-items:start;gap:15px}.maintenance-request-actions{display:grid!important;grid-template-columns:minmax(0,1.6fr) minmax(230px,.7fr);gap:14px!important}.maintenance-request-list .maintenance-request-actions form{display:grid;align-content:start;gap:10px;padding:13px;background:var(--surface-soft);border:1px solid var(--border);border-radius:11px}.maintenance-request-list .maintenance-request-actions .form-grid{margin:0}.maintenance-request-list .maintenance-request-actions textarea{min-height:58px}
.equipment-tag-sheet{display:grid;place-items:center;min-height:8in}.equipment-tag{width:3.65in;min-height:5.2in;padding:.25in;display:flex;flex-direction:column;align-items:center;text-align:center;border:4px solid #0f2744;border-radius:.16in}.equipment-tag-logo{width:2.7in;max-height:.52in;object-fit:contain;margin-bottom:.12in}.equipment-tag-qr{width:3in;height:3in;display:grid;place-items:center}.equipment-tag-qr img,.equipment-tag-qr canvas{width:3in!important;height:3in!important}.equipment-tag-qr-status{margin:.02in 0 .08in!important;color:#64748b;font-size:.12in;font-weight:700}.equipment-tag-qr-status[data-state="1"]{color:#15803d}.equipment-tag-qr-status[data-state="error"]{max-width:3in;color:#b91c1c}.equipment-tag h1{font-size:.4in;margin:.06in 0}.equipment-tag h2{font-size:.24in;margin:0}.equipment-tag p{margin:.04in 0 .12in}.equipment-tag>strong{padding:.08in .14in;border-radius:.06in;background:#0f2744;color:#fff;letter-spacing:.03in}
@media (max-width:1000px){.service-calendar-week,.service-calendar-month{overflow-x:auto;grid-template-columns:repeat(7,180px)}.service-overview-v2 .service-grid{grid-template-columns:1fr}.service-overview-v2 .span-two{grid-column:auto}.service-area-fields{grid-template-columns:1fr 80px}.service-area-fields .area-measurement{grid-column:1/-1}.review-actions{grid-template-columns:1fr}}
@media (max-width:700px){.workshop-location-picker,.service-area-row{grid-template-columns:1fr}.service-area-row>.icon-button{grid-column:auto}.service-area-fields{grid-template-columns:1fr}.calendar-toolbar-v2{flex-wrap:wrap}.crew-calendar-selector{order:3;width:100%;margin-left:0}.crew-calendar-selector label,.crew-calendar-selector select{width:100%}.service-overview-header{align-items:flex-start;flex-direction:column}.service-location-map{height:330px}}
@media print{.equipment-tag-sheet{min-height:0}.equipment-tag{break-inside:avoid}.equipment-tag-qr-status,.report-letterhead,.report-print-footer{display:none!important}}

/* 1.55 compact Service dashboard, Estimate pricing, and full-page Service editor */
.service-pulse>a{display:flex;align-items:center;gap:11px;min-width:0;min-height:74px;padding:13px 15px;color:inherit;background:#fff;border:1px solid var(--border);border-radius:13px;box-shadow:var(--shadow-sm);text-decoration:none;transition:transform .15s ease,border-color .15s ease}
.service-pulse>a:hover{transform:translateY(-1px);border-color:#91a8bd}.service-pulse>a>div{min-width:0}.service-overview-v2 .service-pulse{gap:10px;margin-bottom:12px}.service-overview-v2 .service-pulse i{width:38px;height:38px;flex:0 0 38px}.service-overview-v2 .service-pulse strong{font-size:1.28rem}.service-overview-v2 .service-pulse span{line-height:1.25}.service-overview-v2 .service-grid{gap:12px}.service-overview-v2 .panel{padding:15px}.service-overview-v2 .panel-header{margin-bottom:9px}.service-overview-v2 .panel-header h2{font-size:1rem}.service-overview-v2 .capacity-list,.service-overview-v2 .dashboard-queue-list{max-height:240px;overflow:auto}.service-overview-v2 .capacity-row{padding-block:8px}.service-overview-v2 .skip-review-panel{max-height:235px;overflow:auto}.service-overview-v2 .skip-review-list summary{padding:9px 11px}
.work-order-record-links{display:grid;min-width:250px;gap:6px}.work-order-record-link{display:grid;grid-template-columns:28px minmax(0,1fr);align-items:center;gap:8px;padding:7px 9px;color:var(--ink);background:#f5f8fa;border:1px solid var(--border);border-radius:9px;text-decoration:none}.work-order-record-link:hover{border-color:#91a8bd;background:#eef4f8}.work-order-record-link>i{display:grid;width:28px;height:28px;color:#fff;background:var(--navy);border-radius:8px;place-items:center}.work-order-record-link.is-location>i{background:var(--red)}.work-order-record-link>span{display:grid;min-width:0}.work-order-record-link small{margin:0!important;color:var(--muted)!important;font-size:.61rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em}.work-order-record-link strong{overflow-wrap:anywhere;font-size:.75rem}.work-order-record-link em{overflow:hidden;color:var(--muted);font-size:.65rem;font-style:normal;text-overflow:ellipsis;white-space:nowrap}
.customer-card-header>div{min-width:0}.customer-card-header p{max-width:100%;overflow-wrap:anywhere}.customer-messaging-status{display:grid!important;grid-template-columns:42px minmax(0,1fr);align-items:center;gap:12px;max-width:100%;overflow:hidden}.customer-messaging-status>i{align-self:start}.customer-messaging-status>div{display:grid;min-width:0}.customer-messaging-status span,.customer-messaging-status strong,.customer-messaging-status small{min-width:0;overflow-wrap:anywhere;white-space:normal;line-height:1.35}
.service-pricing-editor{display:grid;max-width:1160px;margin-inline:auto;gap:16px}.service-pricing-editor>.panel{min-width:0}.service-type-choices{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.service-type-choice{position:relative;cursor:pointer}.service-type-choice>input{position:absolute;opacity:0}.service-type-choice>span{display:grid;min-height:150px;padding:18px;background:#f6f8fa;border:2px solid var(--border);border-radius:14px;transition:border-color .15s ease,background .15s ease,box-shadow .15s ease}.service-type-choice i{font-size:1.35rem;color:var(--navy)}.service-type-choice strong{margin:14px 0 5px;color:var(--navy);font:700 .86rem Montserrat}.service-type-choice small{color:var(--muted);line-height:1.45}.service-type-choice>input:checked+span{background:#edf3f8;border-color:var(--navy);box-shadow:0 0 0 3px #0b2d5b14}.scale-rule-list,.service-product-list{display:grid;gap:10px}.scale-rule-row{display:grid;grid-template-columns:85px repeat(3,minmax(130px,1fr)) 38px;align-items:end;gap:10px;padding:13px;background:#f6f8fa;border:1px solid var(--border);border-radius:12px}.scale-rule-row>strong{align-self:center;color:var(--navy)}.scale-rule-row .field,.service-product-row .field{margin:0}.service-product-row{display:grid;grid-template-columns:minmax(220px,1.2fr) minmax(150px,.5fr) 38px;align-items:end;gap:10px;padding:13px;background:#f6f8fa;border:1px solid var(--border);border-radius:12px}.service-product-row.is-new{grid-template-columns:repeat(3,minmax(130px,1fr)) 38px}.service-product-row.is-new>.icon-button{grid-column:4;grid-row:1}.service-combined-total{display:flex;align-items:center;justify-content:space-between;margin-top:14px;padding:14px;color:#fff;background:var(--navy);border-radius:12px}.service-combined-total strong{font:700 1.25rem Montserrat}.service-editor-actions{position:sticky;z-index:4;bottom:10px;display:flex;justify-content:flex-end;gap:9px;padding:13px;background:#fffffff2;border:1px solid var(--border);border-radius:13px;box-shadow:0 9px 28px #0b2d5b1c;backdrop-filter:blur(8px)}
.estimate-pricing-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:14px}.estimate-pricing-option{display:flex;gap:10px;align-items:flex-start;padding:14px;background:#f5f8fa;border:1px solid var(--border);border-radius:12px;cursor:pointer}.estimate-pricing-option input{margin-top:3px}.estimate-pricing-option span{display:grid}.estimate-pricing-option strong{color:var(--navy)}.estimate-pricing-option small{color:var(--muted);line-height:1.4}.estimate-price-breakdown{display:flex;align-items:flex-end;justify-content:flex-end;gap:10px;flex-wrap:wrap}.estimate-price-breakdown small{display:grid;color:#cbd6e4}.estimate-price-breakdown b{color:#fff}.estimate-location-photo-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:12px}.estimate-location-photo{display:grid;gap:6px;cursor:pointer}.estimate-location-photo>input{position:absolute;opacity:0}.estimate-location-photo-image{position:relative;overflow:hidden;aspect-ratio:4/3;background:#e6ebef;border:3px solid transparent;border-radius:12px}.estimate-location-photo-image img{width:100%;height:100%;object-fit:cover}.estimate-location-photo-image i{position:absolute;right:7px;top:7px;color:#fff;background:#157347;border:2px solid #fff;border-radius:50%;opacity:0}.estimate-location-photo>input:checked+.estimate-location-photo-image{border-color:#157347}.estimate-location-photo>input:checked+.estimate-location-photo-image i{opacity:1}.estimate-location-photo strong,.estimate-location-photo small{overflow-wrap:anywhere}.estimate-location-photo small{color:var(--muted)}
@media(max-width:900px){.service-type-choices,.estimate-pricing-options{grid-template-columns:1fr}.scale-rule-row,.service-product-row,.service-product-row.is-new{grid-template-columns:1fr}.service-product-row.is-new>.icon-button{grid-column:auto;grid-row:auto}.service-editor-actions{bottom:4px}.service-overview-v2 .service-grid{grid-template-columns:1fr}}

/* Service visits, route planning, unified customer cards, and live reports */
.table-primary-link{display:flex;flex-direction:column;gap:.15rem;color:var(--ink);text-decoration:none}.table-primary-link:hover strong{color:var(--blue)}
.crew-name-link{border:0;background:transparent;color:inherit;font:inherit;font-weight:700;padding:0;cursor:pointer;text-align:left;text-decoration:underline;text-decoration-color:color-mix(in srgb,var(--crew-color,#0b2d5b) 45%,transparent);text-underline-offset:3px}
.crew-name-link:hover{color:var(--blue)}
.crew-board-panel{overflow:visible}.crew-board-buttons{display:flex;gap:.65rem;align-items:stretch;overflow-x:auto;padding:.2rem 0 .45rem}.crew-board-button{display:flex;align-items:center;flex:0 0 auto;min-width:max-content;border:2px solid var(--crew-color);border-radius:14px;background:color-mix(in srgb,var(--crew-color) 11%,white);overflow:hidden;box-shadow:0 4px 13px rgba(11,45,91,.08)}.crew-board-button>button,.crew-board-button>span{border:0;background:transparent;color:var(--crew-color);font:700 .84rem Montserrat,sans-serif;padding:.72rem .8rem;white-space:nowrap}.crew-board-button label{display:grid;place-items:center;align-self:stretch;padding:0 .68rem;background:var(--crew-color);color:#fff;cursor:pointer}.crew-board-button input{position:absolute;opacity:0;pointer-events:none}.crew-board-button.is-hidden{filter:grayscale(.72);opacity:.58}.unassigned-button{border-style:dashed}
.google-place-autocomplete{width:100%;color-scheme:light}.visit-map{border-radius:18px;overflow:hidden;box-shadow:var(--shadow);margin-bottom:1rem;background:#e8edf2}.visit-map img,.map-preview img{display:block;width:100%;height:100%;object-fit:cover}.visit-map img{max-height:350px}.map-preview{min-height:180px;border:1px dashed var(--line);border-radius:14px;background:#f6f8fb;display:flex;align-items:center;justify-content:center;gap:.65rem;color:var(--muted);overflow:hidden}.map-unavailable{display:flex;gap:1rem;align-items:center}.map-unavailable i{font-size:2rem;color:var(--muted)}.map-unavailable p{display:flex;flex-direction:column;margin:0}
.back-link{display:inline-flex;align-items:center;gap:.35rem;margin-bottom:.45rem;color:var(--muted);font-weight:700;text-decoration:none}.detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;margin:1rem 0}.detail-row{display:grid;grid-template-columns:minmax(90px,.45fr) minmax(0,1fr);gap:.2rem 1rem;padding:.8rem 0;border-bottom:1px solid var(--line)}.detail-row>span{color:var(--muted);font-size:.8rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em}.detail-row>small{grid-column:2;color:var(--muted)}
.timeline-scroll{max-height:440px;overflow:auto;border:1px solid var(--line);border-radius:14px}.timeline-row{width:100%;display:grid;grid-template-columns:34px 1fr auto;align-items:center;gap:.75rem;border:0;border-bottom:1px solid var(--line);background:#fff;padding:.9rem;text-align:left;color:var(--ink);cursor:pointer}.timeline-row:last-child{border-bottom:0}.timeline-row:hover{background:#f5f8fb}.timeline-row>i:first-child{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:var(--blue-soft);color:var(--blue)}.timeline-row span{display:flex;flex-direction:column}.timeline-row small{color:var(--muted)}.interaction-facts{display:grid;grid-template-columns:repeat(3,1fr);gap:.7rem;margin:1rem 0}.interaction-facts div,.crew-info-summary>div{padding:.8rem;border-radius:12px;background:#f4f7fa;display:flex;flex-direction:column;gap:.2rem}.interaction-facts span,.crew-info-summary span{color:var(--muted);font-size:.74rem;text-transform:uppercase;font-weight:700}
.crew-info-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:.7rem;border-top:5px solid var(--crew-color);padding-top:.85rem}.crew-info-columns{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.crew-info-columns ul{list-style:none;padding:0;margin:0}.crew-info-columns li{display:flex;flex-direction:column;padding:.6rem 0;border-bottom:1px solid var(--line)}.crew-info-columns li span{color:var(--muted);font-size:.82rem}
.route-tool-actions{display:grid;grid-template-columns:1fr 1fr;gap:.7rem;margin-top:1rem}.maps-settings p{color:var(--muted)}.compact-picker{max-height:220px}.span-two{grid-column:1/-1}
.field-route-tools{display:grid;grid-template-columns:1fr 1fr;gap:.7rem;margin-top:1rem}.field-route-tools .button{justify-content:center}
.workload-chart{height:280px;display:flex;align-items:flex-end;justify-content:space-around;gap:.75rem;padding:1.2rem .5rem .2rem}.workload-column{height:100%;min-width:66px;display:grid;grid-template-rows:auto 1fr auto auto;justify-items:center;gap:.35rem;position:relative}.workload-column .bar-track{height:100%;width:48px;display:flex;align-items:flex-end;border-radius:10px;background:#edf1f5;overflow:hidden}.workload-column .bar-fill{display:block;width:100%;background:var(--crew-color);border-radius:9px 9px 0 0}.workload-column .bar-fill.is-over{background:var(--red)}.workload-column:hover:after,[data-tooltip]:hover:after{content:attr(data-tooltip);position:absolute;z-index:8;bottom:calc(100% + 8px);left:50%;transform:translateX(-50%);width:max-content;max-width:220px;padding:.5rem .65rem;border-radius:8px;background:#16856b;color:#fff;font-size:.78rem;font-weight:700;box-shadow:var(--shadow)}.workload-column[data-capacity-state=negative]:hover:after{background:var(--red)}.compact-toggle button{border:0;background:transparent;padding:.55rem .7rem;font-weight:700;color:var(--muted);cursor:pointer}.compact-toggle button.is-active{background:var(--blue);color:#fff;border-radius:8px}
.report-presets a{display:inline-flex;align-items:center;padding:9px 11px;color:var(--muted);background:#fff;border-right:1px solid var(--border);font:600 .68rem Montserrat;text-decoration:none}.report-presets a.is-active{color:#fff;background:var(--navy)}.asset-report-controls{flex-wrap:wrap}.report-crews{display:none!important}
.report-print-body{margin:0;background:#e8edf2;color:#17212b}.report-print-toolbar{position:sticky;top:0;z-index:4;display:flex;justify-content:flex-end;gap:.6rem;padding:.7rem max(1rem,calc((100vw - 1000px)/2));background:#0b2d5b}.report-paper{width:min(1000px,calc(100% - 2rem));min-height:1100px;margin:1.4rem auto;padding:42px 54px;background:#fff;box-shadow:0 15px 50px rgba(11,45,91,.18)}.report-letterhead{display:flex;align-items:center;justify-content:space-between;gap:2rem;border-bottom:3px solid #0b2d5b;padding-bottom:1rem}.report-letterhead img{width:240px;max-height:68px;object-fit:contain;object-position:left}.report-letterhead div{display:flex;flex-direction:column;text-align:right;font-size:.8rem;color:#5f6b76}.report-title{padding:2rem 0 1rem}.report-title h1{font-size:2.2rem;color:#0b2d5b}.report-paper table{width:100%;border-collapse:collapse;font-size:.82rem}.report-paper th{background:#0b2d5b;color:#fff;text-align:left;padding:.65rem}.report-paper td{padding:.6rem;border-bottom:1px solid #d9e0e6;vertical-align:top}.print-metric-row{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin:1.2rem 0 2rem}.print-metric-row>div{padding:1rem;border-radius:12px;background:#f2f5f8;border-top:4px solid #c62828;display:flex;flex-direction:column}.print-metric-row strong{font:700 1.6rem Montserrat,sans-serif;color:#0b2d5b}.report-print-footer{display:flex;justify-content:space-between;border-top:1px solid #d9e0e6;margin-top:2rem;padding-top:.7rem;color:#6b7680;font-size:.75rem}
.report-print-toolbar{align-items:center;flex-wrap:wrap}.work-order-toolbar-form{display:flex;align-items:flex-end;gap:.45rem;margin-right:auto;color:#fff}.work-order-toolbar-form label{display:flex;gap:.25rem;flex-direction:column;font-size:.65rem}.work-order-toolbar-form select{min-width:150px;padding:.48rem;border:0;border-radius:7px}.work-order-toolbar-form .toolbar-check{align-items:center;flex-direction:row;padding-bottom:.5rem}.document-flashes{display:grid;width:min(1000px,calc(100% - 2rem));gap:7px;margin:1rem auto -1rem}
@media print{.document-flashes{display:none!important}}
@media(max-width:760px){.detail-grid,.crew-info-columns,.interaction-facts,.crew-info-summary,.route-tool-actions{grid-template-columns:1fr}.report-paper{width:100%;margin:0;padding:24px 18px}.report-letterhead{align-items:flex-start}.workload-chart{overflow-x:auto;justify-content:flex-start}.workload-column{flex:0 0 74px}}
@media print{.field-route-tools{display:none!important}}
@media print{.report-print-toolbar,.sidebar,.topbar,.app-footer,.page-header .header-actions,.crew-filter-panel,.schedule-controls,.drag-hint,.modal{display:none!important}.report-print-body{background:#fff}.report-paper{width:100%;min-height:0;margin:0;padding:0;box-shadow:none}.report-paper table{font-size:9pt}.report-paper tr{break-inside:avoid}.report-print-footer{position:fixed;bottom:0;left:0;right:0}.app-main{margin:0!important}.content{padding:0!important}.schedule-header{margin-bottom:8px}.calendar-board{break-inside:auto}.calendar-day{break-inside:avoid}}

*{box-sizing:border-box}
[hidden]{display:none!important}
html{overflow-x:hidden;scroll-behavior:smooth}
body{margin:0;color:var(--ink);background:var(--surface);font:400 16px/1.5 "Source Sans 3",Segoe UI,sans-serif;-webkit-font-smoothing:antialiased}
body.modal-open{overflow:hidden}
h1,h2,h3,h4,.button,.nav-item,.eyebrow,.metric-label,th{font-family:Montserrat,Arial,sans-serif}
h1,h2,h3,p{margin-top:0}
h1{margin-bottom:8px;color:var(--navy);font-size:clamp(2rem,3vw,2.65rem);line-height:1.12;letter-spacing:-.035em}
h2{margin-bottom:7px;color:var(--navy);font-size:1.3rem;line-height:1.25;letter-spacing:-.018em}
h3{color:var(--navy)}
p{color:var(--muted)}
a{color:var(--navy);text-decoration:none}
a:hover{color:var(--red)}
button,input,select,textarea{font:inherit}
button{cursor:pointer}
img{display:block;max-width:100%}
code,.mono{font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:.87em}
:focus-visible{outline:3px solid #e05050;outline-offset:2px}
.skip-link{position:fixed;z-index:1000;left:16px;top:-60px;padding:10px 16px;color:#fff;background:var(--red);border-radius:8px}
.skip-link:focus{top:16px}
.eyebrow{display:block;margin-bottom:8px;color:var(--red);font-family:Montserrat,Arial,sans-serif;font-size:.72rem;font-weight:700;letter-spacing:.095em;text-transform:uppercase}
.eyebrow-light{color:#fff}
.lead{font-size:1.05rem}
.text-danger{color:var(--danger)!important}
.full-span{grid-column:1/-1}

.button{display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:42px;padding:10px 17px;border:1px solid transparent;border-radius:999px;font-size:.82rem;font-weight:600;line-height:1.15;transition:transform .18s ease,box-shadow .18s ease,background .18s ease}
.button:hover{transform:translateY(-1px)}
.button:disabled{opacity:.48;cursor:not-allowed;transform:none}
.button-primary{color:#fff;background:var(--red);box-shadow:0 7px 17px rgba(198,40,40,.18)}
.button-primary:hover{color:#fff;background:var(--red-700);box-shadow:0 9px 20px rgba(198,40,40,.26)}
.button-secondary{color:var(--navy);background:#fff;border-color:var(--border)}
.button-secondary:hover{color:var(--navy);border-color:#9eacbd;background:#f9fbfd}
.button-ghost{color:var(--navy);background:transparent}
.button-ghost:hover{background:rgba(11,45,91,.06)}
.button-danger{color:var(--danger);background:#fff;border-color:#efc8cc}
.button-danger:hover{color:#fff;background:var(--danger);border-color:var(--danger)}
.button-large{min-height:50px;padding:13px 23px}
.button-small{min-height:34px;padding:7px 12px;font-size:.74rem}
.button-full{width:100%}
.icon-button{display:inline-grid;place-items:center;flex:0 0 40px;width:40px;height:40px;padding:0;color:var(--navy);background:#fff;border:1px solid var(--border);border-radius:50%;transition:.18s ease}
.icon-button:hover{color:var(--red);border-color:#c6ced8;background:#f8fafc}
.icon-button.inverse{color:#fff;background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.16)}
.header-actions,.topbar-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}

.field{display:flex;flex-direction:column;gap:6px;color:var(--navy);font-size:.9rem;font-weight:600}
.field>span:first-child{font-size:.79rem}
.field small{color:var(--muted);font-weight:400;line-height:1.3}
input,select,textarea{width:100%;color:var(--ink);background:#fff;border:1px solid #cbd5e1;border-radius:9px}
input,select{min-height:43px;padding:9px 11px}
textarea{padding:10px 11px;resize:vertical}
input:hover,select:hover,textarea:hover{border-color:#9eacbd}
input:focus,select:focus,textarea:focus{border-color:var(--navy);box-shadow:0 0 0 3px rgba(11,45,91,.11);outline:0}
input[type=color]{padding:5px;min-height:43px}
input[type=file]{padding:8px}
fieldset{margin:18px 0;padding:18px;border:1px solid var(--border);border-radius:var(--radius-sm)}
legend{padding:0 8px;color:var(--navy);font-family:Montserrat,Arial,sans-serif;font-size:.78rem;font-weight:700}
.form-grid{display:grid;gap:14px}
.two-columns{grid-template-columns:repeat(2,minmax(0,1fr))}
.three-columns{grid-template-columns:repeat(3,minmax(0,1fr))}
.span-two{grid-column:span 2}
.state-postal{grid-template-columns:minmax(70px,.55fr) minmax(100px,1fr)}
.input-icon{position:relative;display:flex;align-items:center}
.input-icon>i{position:absolute;left:13px;color:var(--slate)}
.input-icon input{padding-left:39px;padding-right:40px}
.password-toggle{position:absolute;right:7px;display:grid;place-items:center;width:32px;height:32px;color:var(--slate);background:transparent;border:0}
.input-suffix{display:flex;align-items:stretch}
.input-suffix input{border-radius:9px 0 0 9px}
.input-suffix>span{display:grid;place-items:center;min-width:55px;padding:0 9px;color:var(--muted);background:var(--surface-2);border:1px solid #cbd5e1;border-left:0;border-radius:0 9px 9px 0;font-weight:400}
.check-row{display:flex;align-items:flex-start;gap:11px;margin:15px 0;padding:13px;color:var(--ink);background:var(--surface);border:1px solid var(--border);border-radius:10px}
.check-row input{flex:0 0 18px;width:18px;min-height:auto;margin:3px 0 0;accent-color:var(--red)}
.check-row span{display:flex;flex-direction:column}
.check-row small{color:var(--muted)}
.file-field{padding:13px;background:var(--surface);border:1px dashed #b6c1ce;border-radius:10px}

.alert{display:flex;align-items:flex-start;gap:10px;padding:13px 15px;color:var(--ink);background:#fff;border:1px solid var(--border);border-left:4px solid var(--info);border-radius:10px;box-shadow:var(--shadow-sm)}
.alert-success{border-left-color:var(--success);background:var(--success-bg)}
.alert-warning{border-left-color:var(--warning);background:var(--warning-bg)}
.alert-error{border-left-color:var(--danger);background:var(--danger-bg)}
.alert>i{margin-top:4px}
.alert-close{margin-left:auto;color:inherit;background:none;border:0}
.badge{display:inline-flex;align-items:center;gap:5px;width:max-content;padding:4px 9px;border-radius:999px;font-family:Montserrat,Arial,sans-serif;font-size:.65rem;font-weight:700;line-height:1.25;text-transform:capitalize}
.badge-success{color:var(--success);background:var(--success-bg)}
.badge-danger{color:var(--danger);background:var(--danger-bg)}
.badge-warning{color:var(--warning);background:var(--warning-bg)}
.badge-neutral{color:#526174;background:#edf1f5}
.status-dot{display:inline-block;width:9px;height:9px;background:var(--slate);border-radius:50%}
.status-dot.is-success{background:var(--success)}
.status-dot.is-danger{background:var(--danger)}

/* Sign-in and installer */
.guest-body{min-height:100vh;background:#fff}
.guest-flashes{position:fixed;z-index:20;top:22px;left:50%;width:min(520px,calc(100% - 32px));transform:translateX(-50%)}
.login-shell{display:grid;grid-template-columns:minmax(440px,1.08fr) minmax(440px,.92fr);min-height:100vh}
.login-story{position:relative;display:flex;flex-direction:column;justify-content:space-between;overflow:hidden;padding:56px clamp(42px,7vw,104px);color:#fff;background:var(--navy)}
.login-story:before{position:absolute;right:-170px;bottom:-250px;width:600px;height:720px;border:1px solid rgba(255,255,255,.1);border-radius:48% 48% 40% 40%;box-shadow:0 0 0 35px rgba(255,255,255,.025),0 0 0 70px rgba(255,255,255,.025),0 0 0 105px rgba(255,255,255,.025);content:"";transform:rotate(-8deg)}
.login-story:after{position:absolute;top:0;left:0;width:100%;height:7px;background:var(--red);content:""}
.login-logo{position:relative;width:min(330px,70%)}
.login-message{position:relative;z-index:1;max-width:680px}
.login-message h1{color:#fff;font-size:clamp(2.45rem,4.2vw,4rem);letter-spacing:-.045em}
.login-message p{max-width:590px;color:#d6dfeb;font-size:1.18rem}
.login-company{position:relative;z-index:1;display:flex;flex-direction:column;color:#fff;font-family:Montserrat,Arial,sans-serif;font-size:.86rem;font-weight:600}
.login-company small{margin-top:4px;color:#b7c6d9;font-family:"Source Sans 3",sans-serif;font-weight:400}
.login-panel{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:50px clamp(28px,7vw,90px);background:#fff}
.login-card{width:min(470px,100%)}
.login-card h2,.auth-simple-card h1{font-size:2.05rem}
.auth-form{display:grid;gap:15px;margin-top:26px}
.auth-meta{display:flex;justify-content:flex-end;margin-top:-3px;font-size:.9rem;font-weight:600}
.internal-notice{display:flex;gap:13px;margin-top:26px;padding:16px;color:var(--navy);background:#f2f5f8;border-radius:11px}
.internal-notice>i{margin-top:4px;color:var(--red)}
.internal-notice p{display:flex;flex-direction:column;margin:0}
.internal-notice span{color:var(--muted)}
.exit-link{display:block;margin-top:18px;color:var(--muted);font-size:.88rem;text-align:center}
.login-footer{margin-top:35px;color:#8a94a2;font-size:.76rem;text-align:center}
.auth-simple-shell{display:grid;place-items:center;min-height:100vh;padding:28px;background:linear-gradient(135deg,#f5f7fa 0%,#fff 55%,#edf2f7 100%)}
.auth-simple-card{width:min(480px,100%);padding:42px;background:#fff;border:1px solid var(--border);border-radius:22px;box-shadow:var(--shadow)}
.auth-logo{width:190px;margin-bottom:38px}
.back-link{display:inline-flex;gap:7px;margin-top:24px;font-weight:600}
.install-body{min-height:100vh;background:var(--surface)}
.install-shell{display:grid;grid-template-columns:minmax(380px,.75fr) minmax(570px,1.25fr);min-height:100vh}
.install-brand{position:sticky;top:0;display:flex;flex-direction:column;justify-content:center;height:100vh;padding:60px clamp(42px,6vw,88px);color:#fff;background:var(--navy)}
.install-brand:before{position:absolute;top:0;left:0;width:100%;height:7px;background:var(--red);content:""}
.install-logo{width:280px;margin-bottom:80px}
.install-brand h1{color:#fff;font-size:2.7rem}
.install-brand>p{color:#d3dfed;font-size:1.1rem}
.install-promise{display:flex;flex-direction:column;margin-top:50px;padding-top:23px;border-top:1px solid rgba(255,255,255,.18)}
.install-promise span{color:#b9c8da}
.install-panel{padding:55px clamp(35px,7vw,110px);background:#fff}
.install-heading{max-width:720px}
.system-checks{display:grid;grid-template-columns:repeat(4,1fr);gap:9px;margin:25px 0}
.system-check{display:flex;align-items:center;gap:9px;padding:11px;background:var(--surface);border-radius:9px}
.system-check>span:last-child{display:flex;flex-direction:column;font-size:.78rem}
.system-check small{color:var(--muted)}
.install-form{max-width:800px}
.install-form fieldset{padding:22px}
.form-notice{margin:15px 0 0;font-size:.84rem}
.install-success{max-width:560px;margin:15vh auto 0;text-align:center}
.status-icon{display:grid;place-items:center;width:70px;height:70px;margin:0 auto 24px;color:#fff;background:var(--success);border-radius:50%;font:700 2rem Montserrat}
.helper{margin-top:24px;font-size:.88rem}

/* App frame */
.app-shell{display:grid;grid-template-columns:var(--sidebar) minmax(0,1fr);min-height:100vh}
.sidebar{position:sticky;z-index:30;top:0;display:flex;flex-direction:column;height:100vh;overflow-y:auto;color:#fff;background:var(--navy)}
.sidebar-brand{display:flex;align-items:center;gap:11px;height:88px;padding:16px 22px;border-bottom:1px solid rgba(255,255,255,.09);font:700 1.05rem Montserrat}
.sidebar-brand img{width:34px;height:44px;object-fit:contain}
.sidebar-close{display:none;margin-left:auto}
.nav-stack{display:flex;flex-direction:column;gap:4px;padding:22px 14px}
.nav-label{margin:17px 13px 6px;color:#8fa5bf;font:600 .62rem Montserrat;letter-spacing:.1em;text-transform:uppercase}
.nav-label:first-child{margin-top:0}
.nav-item{display:flex;align-items:center;gap:12px;min-height:45px;padding:10px 13px;color:#dce6f1;border-left:3px solid transparent;border-radius:0 9px 9px 0;font-size:.78rem;font-weight:600}
.nav-item>i:first-child{width:21px;color:#9eb1c7;text-align:center}
.nav-item:hover{color:#fff;background:rgba(255,255,255,.07)}
.nav-item.is-active{color:#fff;background:rgba(255,255,255,.13);border-left-color:var(--red)}
.nav-item.is-active>i{color:#fff}
.nav-mega summary{list-style:none;cursor:pointer}
.nav-mega summary::-webkit-details-marker{display:none}
.nav-chevron{margin-left:auto;font-size:.6rem;transition:transform .2s}
.nav-mega[open] .nav-chevron{transform:rotate(180deg)}
.nav-submenu{display:grid;gap:3px;margin:5px 0 6px 42px;padding-left:13px;border-left:1px solid rgba(255,255,255,.16)}
.nav-submenu a{padding:7px 5px;color:#afbed0;font-size:.77rem}
.nav-submenu a:hover{color:#fff}
.sidebar-user{display:grid;grid-template-columns:38px minmax(0,1fr) 40px;align-items:center;gap:10px;margin-top:auto;padding:17px 15px;border-top:1px solid rgba(255,255,255,.1)}
.avatar{display:grid;place-items:center;width:38px;height:38px;color:var(--navy);background:#fff;border-radius:50%;font:700 .72rem Montserrat}
.sidebar-user>a{display:flex;flex-direction:column;min-width:0;color:#fff}
.sidebar-user strong,.sidebar-user span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.sidebar-user strong{font-size:.82rem}
.sidebar-user span{color:#aebed0;font-size:.69rem}
.app-main{display:flex;min-width:0;min-height:100vh;flex-direction:column}
.topbar{position:sticky;z-index:20;top:0;display:flex;align-items:center;min-height:88px;padding:13px clamp(22px,3vw,44px);background:rgba(255,255,255,.95);border-bottom:1px solid var(--border);backdrop-filter:blur(14px)}
.sidebar-open{display:none}
.division-context{display:flex;align-items:center;gap:16px}
.context-label{color:var(--slate);font-size:.77rem;font-weight:600}
.division-toggle{display:flex;padding:4px;background:var(--surface-2);border:1px solid var(--border);border-radius:999px}
.division-toggle button{display:flex;align-items:center;gap:7px;min-height:35px;padding:7px 14px;color:var(--muted);background:transparent;border:0;border-radius:999px;font:600 .74rem Montserrat}
.division-toggle button.is-active{color:#fff;background:var(--navy);box-shadow:0 3px 10px rgba(11,45,91,.18)}
.division-toggle button+button.is-active{background:var(--red)}
.topbar-actions{margin-left:auto}
.date-chip{display:flex;align-items:center;gap:7px;color:var(--muted);font-size:.82rem}
.content{width:100%;max-width:1800px;margin:0 auto;padding:38px clamp(22px,3.2vw,52px) 58px}
.app-footer{display:flex;justify-content:space-between;gap:20px;margin-top:auto;padding:19px clamp(22px,3.2vw,52px);color:#7b8795;background:#fff;border-top:1px solid var(--border);font-size:.72rem}
.flash-stack{display:grid;gap:9px;margin:18px clamp(22px,3.2vw,52px) -10px}
.sidebar-scrim{display:none}

.page-header{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;margin-bottom:28px}
.page-header p{margin-bottom:0}
.page-header>div:first-child{max-width:820px}
.panel{background:#fff;border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-sm)}
.panel-header{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;padding:21px 23px 14px}
.panel-header h2{margin:0}
.panel-header .eyebrow{margin-bottom:5px}
.panel-header>.badge{flex:0 0 auto;white-space:nowrap}
.panel-stat{display:flex;flex-direction:column;align-items:flex-end;color:var(--muted);font-size:.72rem}
.panel-stat strong{color:var(--navy);font:700 1.2rem Montserrat}
.metric-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-bottom:18px}
.metric-card{position:relative;display:grid;grid-template-columns:1fr auto;padding:21px 21px 18px;background:#fff;border:1px solid var(--border);border-radius:15px;box-shadow:var(--shadow-sm)}
.metric-icon{grid-column:2;grid-row:1/5;display:grid;place-items:center;width:43px;height:43px;color:var(--navy);background:#edf2f7;border-radius:12px}
.metric-label{grid-column:1;color:var(--slate);font-size:.64rem;font-weight:700;letter-spacing:.055em;text-transform:uppercase}
.metric-card>strong{grid-column:1;color:var(--navy);font:700 2rem/1.1 Montserrat;margin:8px 0 3px}
.metric-card small{grid-column:1;color:var(--muted)}
.metric-card-alert{border-top:3px solid var(--red)}
.metric-card-alert .metric-icon,.metric-card-alert>strong{color:var(--red)}
.dashboard-grid{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(320px,.8fr);gap:18px}
.panel-workload{min-height:390px}
.priority-panel{min-height:390px}
.capacity-panel,.quick-actions-panel{min-height:300px}
.bar-chart{display:flex;align-items:flex-end;justify-content:space-between;height:285px;padding:22px 25px 20px}
.bar-column{display:grid;grid-template-rows:20px 1fr 20px 16px;align-items:end;width:11%;height:100%;text-align:center}
.bar-value{color:var(--muted);font-size:.7rem}
.bar-track{position:relative;width:100%;height:100%;border-bottom:1px solid var(--border)}
.bar-fill{position:absolute;right:16%;bottom:0;left:16%;min-height:6px;background:var(--navy);border-radius:6px 6px 1px 1px;transition:height .4s ease}
.bar-fill.is-peak{background:var(--red)}
.bar-day{color:var(--navy);font:600 .72rem Montserrat}
.bar-column small{color:var(--muted);font-size:.68rem}
.priority-list{padding:0 23px 18px}
.priority-item{display:grid;grid-template-columns:12px 1fr auto;align-items:start;gap:10px;padding:15px 0;border-top:1px solid var(--border)}
.priority-dot{width:9px;height:9px;margin-top:7px;background:var(--navy);border-radius:50%}
.priority-danger{background:var(--danger)}
.priority-warning{background:#e29a13}
.priority-info{background:var(--info)}
.priority-item p{display:flex;flex-direction:column;margin:0}
.priority-item p strong{color:var(--ink)}
.priority-item p span,.priority-item time{color:var(--muted);font-size:.78rem}
.empty-inline{display:flex;align-items:center;gap:12px;padding:25px 0;color:var(--success)}
.empty-inline p{display:flex;flex-direction:column;margin:0}
.empty-inline p span{color:var(--muted)}
.capacity-panel .panel-header{align-items:center}
.donut{--value:0;display:grid;place-items:center;width:70px;height:70px;background:conic-gradient(var(--red) calc(var(--value)*1%),#e7edf3 0);border-radius:50%}
.donut:before{grid-area:1/1;width:51px;height:51px;background:#fff;border-radius:50%;content:""}
.donut span{grid-area:1/1;z-index:1;color:var(--navy);font:700 .76rem Montserrat}
.capacity-list{padding:0 23px 21px}
.capacity-row{display:grid;grid-template-columns:minmax(130px,.8fr) minmax(120px,1.2fr);align-items:center;gap:17px;padding:12px 0;border-top:1px solid var(--border)}
.capacity-row>div:first-child{display:flex;flex-direction:column}
.capacity-row span{color:var(--muted);font-size:.76rem}
.progress{height:8px;overflow:hidden;background:#e8edf2;border-radius:999px}
.progress span{display:block;height:100%;background:var(--navy);border-radius:999px}
.progress span.is-over{background:var(--red)}
.quick-action-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:11px;padding:4px 23px 23px}
.quick-action-grid a{display:flex;align-items:center;gap:10px;padding:14px;color:var(--navy);background:var(--surface);border:1px solid transparent;border-radius:11px;font-weight:600}
.quick-action-grid a:hover{border-color:#c4ceda;background:#fff}
.quick-action-grid i{color:var(--red)}

.field-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:15px;margin-bottom:18px}
.field-summary article{display:flex;align-items:center;gap:14px;padding:18px 20px;background:#fff;border:1px solid var(--border);border-radius:14px}
.field-summary article>i{display:grid;place-items:center;width:43px;height:43px;color:var(--navy);background:var(--surface-2);border-radius:11px}
.field-summary article div{display:flex;flex-direction:column}
.field-summary strong{color:var(--navy);font:700 1.2rem Montserrat}
.field-summary span{color:var(--muted);font-size:.8rem}
.field-grid{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(310px,.7fr);gap:18px}
.weather-note{display:flex;align-items:center;gap:7px;color:var(--muted)}
.field-job-list,.field-asset-list{padding:0 22px 20px}
.field-job{display:grid;grid-template-columns:67px 1fr 40px;align-items:center;gap:14px;padding:16px 0;border-top:1px solid var(--border)}
.field-job>time{display:flex;flex-direction:column;color:var(--navy);text-align:center}
.field-job>time strong{font:700 .78rem Montserrat;text-transform:uppercase}
.field-job>time span{font-size:.75rem}
.field-job h3{margin:6px 0 2px;font-size:.95rem}
.field-job p{margin:0;font-size:.8rem}
.field-job.is-muted{opacity:.58}
.field-asset{display:grid;grid-template-columns:42px 1fr auto;align-items:center;gap:11px;padding:14px 0;border-top:1px solid var(--border)}
.field-asset>div:nth-child(2){display:flex;flex-direction:column}
.field-asset span{color:var(--muted);font-size:.75rem}

/* Panels, tables and dialogs */
.table-panel{overflow:hidden}
.table-toolbar{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:16px 20px;background:#fbfcfd;border-bottom:1px solid var(--border);color:var(--muted);font-size:.82rem}
.toolbar-title{display:flex;align-items:center;gap:9px;color:var(--navy)}
.search-form{display:flex;align-items:center;gap:9px;width:min(620px,75%)}
.search-form>i{color:var(--slate)}
.search-form input{min-width:180px}
.customer-search{width:min(790px,82%)}
.customer-search select{width:180px}
.table-scroll{overflow:auto}
table{width:100%;border-collapse:collapse}
th{padding:12px 16px;color:#677484;background:#f4f6f8;font-size:.62rem;font-weight:700;letter-spacing:.045em;text-align:left;text-transform:uppercase;white-space:nowrap}
td{padding:14px 16px;border-top:1px solid var(--border);vertical-align:middle}
td strong,td small{display:block}
td strong{color:var(--ink)}
td small{margin-top:2px;color:var(--muted);font-size:.76rem}
tbody tr:hover{background:#fbfcfd}
.is-muted-row{opacity:.7;background:#fafbfc}
.row-actions{display:flex;align-items:center;gap:5px;flex-wrap:wrap}
.row-actions form{display:inline-flex;margin:0}
.employee-path-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-bottom:18px}
.employee-path-grid article{display:flex;align-items:flex-start;gap:13px;padding:17px 19px;background:#fff;border:1px solid var(--border);border-radius:13px;box-shadow:var(--shadow-sm)}
.employee-path-grid article>i{display:grid;place-items:center;flex:0 0 42px;width:42px;height:42px;color:var(--navy);background:var(--surface-2);border-radius:11px}
.employee-path-grid article div{display:flex;flex-direction:column}
.employee-path-grid strong{color:var(--navy);font:700 .85rem Montserrat}
.employee-path-grid span{margin-top:3px;color:var(--muted);font-size:.82rem}
.employee-directory th,.employee-directory td{padding-right:12px;padding-left:12px}
.employee-directory .row-actions{max-width:250px}
.empty-state{padding:65px 25px;text-align:center}
.empty-state>i{display:grid;place-items:center;width:58px;height:58px;margin:0 auto 17px;color:var(--navy);background:var(--surface-2);border-radius:16px;font-size:1.35rem}
.empty-state.compact{padding:34px 15px}
.empty-state p{margin-bottom:0}
.job-color{display:inline-block;width:8px;height:8px;margin-right:7px;background:var(--job-color);border-radius:50%}
.card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:17px}
.modal{position:fixed;z-index:100;inset:0;display:none;place-items:center;padding:22px;background:rgba(4,20,41,.66);backdrop-filter:blur(4px)}
.modal.is-open{display:grid}
.modal-card{position:relative;width:min(590px,100%);max-height:calc(100vh - 44px);overflow:auto;padding:29px;background:#fff;border-radius:20px;box-shadow:0 28px 80px rgba(0,0,0,.25)}
.modal-wide .modal-card{width:min(850px,100%)}
.employee-record-modal .modal-card{width:min(1120px,100%)}
.employee-form-section{margin:18px 0;padding:19px 21px;background:#f8fafb;border-color:#d7e0e8}
.employee-form-section legend{padding:0 10px;color:var(--navy);background:#fff;border-radius:999px}
.employee-form-section .field{min-width:0}
.modal-close{position:absolute;top:17px;right:17px;display:grid;place-items:center;width:36px;height:36px;color:var(--slate);background:var(--surface);border:0;border-radius:50%}
.modal-card>p{margin-bottom:20px}
.modal-actions{display:flex;justify-content:flex-end;gap:9px;margin-top:21px;padding-top:16px;border-top:1px solid var(--border)}
.state-page{max-width:700px;margin:13vh auto;padding:45px;text-align:center}
.state-code{display:inline-block;margin-bottom:13px;padding:6px 11px;color:var(--red);background:var(--danger-bg);border-radius:999px;font:700 .75rem Montserrat}
.debug-detail{padding:15px;overflow:auto;text-align:left;background:#172033;color:#fff;border-radius:10px}

/* Schedule */
.schedule-controls{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:15px;padding:10px 13px;background:#fff;border:1px solid var(--border);border-radius:13px}
.period-nav{display:flex;align-items:center;gap:12px}
.period-nav>div{display:flex;min-width:210px;flex-direction:column;text-align:center}
.period-nav>div a{font-size:.76rem;font-weight:600}
.view-toggle,.tab-bar{display:flex;padding:4px;background:var(--surface-2);border:1px solid var(--border);border-radius:999px}
.view-toggle a,.tab-bar a{padding:7px 14px;color:var(--muted);border-radius:999px;font:600 .72rem Montserrat}
.view-toggle a.is-active,.tab-bar a.is-active{color:#fff;background:var(--navy)}
.calendar-board{display:grid;gap:9px;overflow-x:auto}
.calendar-week{grid-template-columns:repeat(7,minmax(190px,1fr))}
.calendar-day{min-width:0;min-height:440px;background:#fff;border:1px solid var(--border);border-radius:13px}
.calendar-day>header{display:flex;align-items:center;justify-content:space-between;padding:13px;border-bottom:1px solid var(--border)}
.calendar-day>header>div{display:flex;align-items:center;gap:8px}
.calendar-day>header span:first-child{color:var(--muted);font:600 .65rem Montserrat;text-transform:uppercase}
.calendar-day>header strong{display:grid;place-items:center;width:30px;height:30px;color:var(--navy);border-radius:50%;font:700 .88rem Montserrat}
.calendar-day.is-today{border-color:#9db1c8;box-shadow:0 0 0 1px rgba(11,45,91,.15)}
.calendar-day.is-today>header strong{color:#fff;background:var(--red)}
.day-total{color:var(--muted);font-size:.7rem}
.calendar-cards{display:grid;align-content:start;gap:9px;min-height:360px;padding:9px}
.empty-day{display:block;padding:22px 4px;color:#a0a8b3;font-size:.72rem;text-align:center}
.schedule-card{position:relative;min-width:0;padding:11px 8px 9px 10px;background:#f8fafc;border:1px solid #dde4ec;border-left:4px solid var(--job-color);border-radius:9px;box-shadow:0 3px 8px rgba(11,45,91,.05)}
.schedule-card[draggable=true]{cursor:grab}
.schedule-card.is-dragging{opacity:.42}
.calendar-day.is-drop-target{background:#edf4fb;border-color:var(--navy)}
.schedule-card.is-skipped{opacity:.54;border-left-style:dashed}
.schedule-card-meta{display:flex;justify-content:space-between;color:var(--muted);font-size:.65rem}
.schedule-card h3{margin:6px 0 2px;font-size:.76rem;overflow-wrap:anywhere}
.schedule-card p{margin:0;color:var(--ink);font-size:.72rem;overflow-wrap:anywhere}
.schedule-card small{display:block;margin-top:6px;overflow:hidden;color:var(--muted);font-size:.67rem;text-overflow:ellipsis;white-space:nowrap}
.schedule-card small i{margin-right:4px;color:var(--red)}
.schedule-card-actions{display:flex;min-width:0;align-items:center;gap:4px;margin-top:9px;padding-top:7px;border-top:1px solid #e1e7ee}
.schedule-card-actions a,.schedule-card-actions button{display:grid;place-items:center;width:27px;height:27px;color:var(--navy);background:#fff;border:1px solid var(--border);border-radius:7px;font-size:.68rem}
.schedule-card-actions .badge{margin-left:auto}
.calendar-day .schedule-card-actions button:hover,.calendar-day .schedule-card-actions a:hover{color:#fff;background:var(--red);border-color:var(--red)}
.calendar-day .schedule-card-actions .badge:hover{color:#526174;background:#edf1f5}
.calendar-day .schedule-card-actions button:last-of-type{margin-left:auto}
.calendar-month{grid-template-columns:repeat(7,minmax(155px,1fr));align-items:start}
.calendar-month .calendar-day{min-height:230px}
.calendar-month .calendar-cards{min-height:170px}
.calendar-month .schedule-card small,.calendar-month .schedule-card-actions{display:none}
.calendar-day .schedule-card:nth-child(n+5){display:none}
.calendar-day:has(.schedule-card:nth-child(n+5)) .calendar-cards:after{display:block;padding:4px;color:var(--navy);font-size:.7rem;font-weight:600;text-align:center;content:"More visits in day view"}
.calendar-day:hover .schedule-card:nth-child(n+5){display:block}
.calendar-day:hover .calendar-cards:after{display:none}
.calendar-day:hover{z-index:2}
.calendar-day:hover .calendar-cards{max-height:500px;overflow-y:auto}
.calendar-day:first-child:last-child .schedule-card:nth-child(n+5){display:block}
.calendar-day:first-child:last-child .calendar-cards:after{display:none}
.calendar-day:first-child:last-child{min-height:300px}
.drag-hint{margin:12px 3px;color:var(--muted);font-size:.78rem}
.drag-hint i{margin-right:6px}

/* Crews and assets */
.crew-card,.asset-card{background:#fff;border:1px solid var(--border);border-radius:16px;box-shadow:var(--shadow-sm)}
.crew-card{position:relative;overflow:hidden;padding:20px}
.crew-card:before{position:absolute;top:0;left:0;width:100%;height:4px;background:var(--crew-color);content:""}
.crew-card-top{display:flex;align-items:center;justify-content:space-between}
.crew-avatar,.asset-type-icon{display:grid;place-items:center;width:45px;height:45px;color:var(--navy);background:var(--surface-2);border-radius:12px}
.crew-card h2{margin:17px 0 2px}
.crew-card>p{margin-bottom:17px}
.crew-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;padding:15px 0;border-top:1px solid var(--border);border-bottom:1px solid var(--border)}
.crew-stats>div{display:flex;flex-direction:column}
.crew-stats strong{color:var(--navy);font:700 1rem Montserrat}
.crew-stats span{color:var(--muted);font-size:.68rem}
.crew-card footer{display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap;margin-top:14px;color:var(--muted);font-size:.7rem}
.crew-card footer i{margin-right:5px;color:var(--red)}
.asset-summary,.migration-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:13px;margin-bottom:17px}
.asset-summary article{display:flex;flex-direction:column;padding:16px 18px;background:#fff;border:1px solid var(--border);border-radius:13px}
.asset-summary span{color:var(--muted);font:600 .66rem Montserrat;text-transform:uppercase}
.asset-summary strong{color:var(--navy);font:700 1.65rem Montserrat}
.asset-summary small{color:var(--muted)}
.asset-card{overflow:hidden}
.asset-card.has-alert{border-top:3px solid var(--red)}
.asset-card>header{display:grid;grid-template-columns:47px 1fr auto;align-items:center;gap:12px;padding:18px}
.asset-card>header h2{margin:0;font-size:1.05rem}
.asset-card>header .eyebrow{margin:0}
.asset-details{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border-top:1px solid var(--border)}
.asset-details>div{display:flex;min-width:0;flex-direction:column;padding:11px 15px;border-right:1px solid var(--border);border-bottom:1px solid var(--border)}
.asset-details>div:nth-child(even){border-right:0}
.asset-details span{color:var(--muted);font-size:.65rem}
.asset-details strong{overflow:hidden;color:var(--ink);font-size:.8rem;text-overflow:ellipsis;white-space:nowrap}
.asset-card>footer{display:flex;justify-content:flex-end;gap:6px;padding:12px 15px}

/* Documents and reports */
.document-list{display:grid}
.document-row{display:grid;grid-template-columns:45px minmax(200px,1.3fr) minmax(150px,.8fr) minmax(145px,.8fr) auto;align-items:center;gap:14px;padding:15px 18px;border-top:1px solid var(--border)}
.document-row:first-child{border-top:0}
.document-icon{display:grid;place-items:center;width:43px;height:43px;color:var(--red);background:var(--danger-bg);border-radius:11px}
.document-row>div:not(.document-icon){display:flex;min-width:0;flex-direction:column}
.document-row>div strong,.document-row>div span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.document-row>div span{color:var(--muted);font-size:.74rem}
.report-filters{display:flex;align-items:end;gap:11px;margin-bottom:17px;padding:15px;background:#fff;border:1px solid var(--border);border-radius:13px}
.report-filters .field{max-width:180px}
.report-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.horizontal-chart{display:grid;gap:17px;padding:7px 23px 23px}
.horizontal-row>div:first-child{display:flex;justify-content:space-between;gap:10px;margin-bottom:7px}
.horizontal-row span{color:var(--muted);font-size:.76rem}
.skip-report{padding:0 23px 20px}
.skip-report>div{display:grid;grid-template-columns:12px 1fr auto;gap:10px;padding:14px 0;border-top:1px solid var(--border)}
.skip-report p{display:flex;flex-direction:column;margin:0}
.skip-report p span,.skip-report time{color:var(--muted);font-size:.76rem}

/* Admin */
.settings-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(300px,.65fr);gap:18px}
.settings-form{padding:5px 23px 23px}
.settings-form .panel-header{padding-left:0;padding-right:0}
.settings-tabs{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px;margin-bottom:18px;padding:8px;background:#fff;border:1px solid var(--border);border-radius:16px;box-shadow:var(--shadow)}.settings-tabs button{display:flex;align-items:center;justify-content:center;gap:6px;min-width:0;min-height:48px;padding:9px 7px;color:var(--muted);background:transparent;border:0;border-radius:11px;font:700 .64rem/1.2 Montserrat;text-align:center;cursor:pointer}.settings-tabs button span{overflow-wrap:anywhere}.settings-tabs button i{flex:0 0 auto;font-size:.86rem}.settings-tabs button.is-active{color:#fff;background:var(--navy);box-shadow:0 7px 18px #0b2d5b2b}.settings-tabs button.is-active i{color:var(--grass)}.settings-tab-panel{display:none}.settings-tab-panel.is-active{display:block}.settings-card-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.settings-test-panel{display:flex;gap:16px;margin-top:18px;padding:20px;align-items:end;flex-wrap:wrap}.settings-test-panel form{display:flex;gap:10px;min-width:min(100%,390px);align-items:end}.settings-test-panel .field{flex:1;margin:0}.registered-device-panel{margin-bottom:18px;overflow:hidden}.registered-device-panel td strong,.registered-device-panel td small{display:block}.registered-device-panel td small{margin-top:3px;color:var(--muted)}.settings-health-card{max-width:760px;padding:24px}.work-order-print-qr{display:flex;align-items:center;gap:8px;flex-direction:column;color:var(--muted);font-size:.62rem;text-align:center}.work-order-print-qr>[data-qr-value]{width:112px;height:112px;padding:5px;background:#fff;border:1px solid var(--border)}.work-order-print-qr canvas,.work-order-print-qr img,.work-order-print-qr svg{display:block;width:100%!important;height:100%!important}
@media(max-width:900px){.settings-tabs{display:flex;overflow-x:auto}.settings-tabs button{min-width:max-content;min-height:auto;padding:12px 14px;font-size:.7rem}.settings-card-grid{grid-template-columns:1fr}.settings-test-panel form{width:100%;min-width:0}.registered-device-panel .table-scroll{overflow-x:auto}}
.telnyx-diagnostics,.telnyx-live-test{margin-top:18px;padding:24px}.telnyx-diagnostics>.panel-header form{flex:0 0 auto}.telnyx-diagnostic-summary{display:flex;align-items:center;justify-content:space-between;gap:14px;margin:18px 0;padding:14px 16px;border:1px solid var(--border);border-radius:12px;background:#f7f9fb}.telnyx-diagnostic-summary>div{display:flex;align-items:center;gap:9px}.telnyx-diagnostic-summary>span{color:var(--muted);font-size:.78rem}.telnyx-diagnostic-summary.is-pass{color:var(--success);background:var(--success-bg);border-color:#abd6ba}.telnyx-diagnostic-summary.is-warning{color:var(--warning);background:var(--warning-bg);border-color:#ead29a}.telnyx-diagnostic-summary.is-fail{color:var(--danger);background:var(--danger-bg);border-color:#e8b2b2}.telnyx-diagnostic-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.telnyx-diagnostic-card{display:flex;gap:11px;min-width:0;padding:15px;border:1px solid var(--border);border-radius:12px;background:#fff}.telnyx-diagnostic-card>i{margin-top:2px}.telnyx-diagnostic-card>div{min-width:0}.telnyx-diagnostic-card strong,.telnyx-diagnostic-card span{display:block}.telnyx-diagnostic-card span{margin:3px 0 7px;color:var(--muted);font:700 .61rem/1.2 Montserrat;text-transform:uppercase;letter-spacing:.07em}.telnyx-diagnostic-card p{margin:0;color:var(--muted);font-size:.78rem;line-height:1.5;overflow-wrap:anywhere}.telnyx-diagnostic-card.is-pass>i{color:var(--success)}.telnyx-diagnostic-card.is-warning>i{color:var(--warning)}.telnyx-diagnostic-card.is-fail>i{color:var(--danger)}.telnyx-diagnostic-card.is-skipped>i,.telnyx-diagnostic-card.is-manual>i{color:#6f7b89}.telnyx-diagnostic-empty{display:flex;align-items:center;gap:12px;margin-top:18px;padding:18px;border:1px dashed var(--border);border-radius:12px;color:var(--muted)}.telnyx-diagnostic-empty>i{font-size:1.35rem;color:var(--grass)}.telnyx-diagnostic-empty p,.telnyx-diagnostic-empty strong,.telnyx-diagnostic-empty span{display:block;margin:0}.telnyx-diagnostic-empty span{margin-top:4px;font-size:.78rem}.telnyx-live-test>form{max-width:780px}.telnyx-test-consent{align-self:end;min-height:46px}.telnyx-test-consent small{display:block;margin-top:4px;color:var(--muted)}.telnyx-test-history{margin-top:24px;padding-top:18px;border-top:1px solid var(--border)}.telnyx-test-history h3{margin:0 0 12px}.telnyx-test-history td small{display:block;margin-top:4px;color:var(--danger)}
@media(max-width:900px){.telnyx-diagnostics,.telnyx-live-test{padding:18px}.telnyx-diagnostics>.panel-header,section[data-settings-panel="telnyx"]>.settings-form>.panel-header{align-items:stretch;flex-direction:column}.telnyx-diagnostics>.panel-header form,.telnyx-diagnostics>.panel-header button,section[data-settings-panel="telnyx"]>.settings-form>.panel-header .button{width:100%}.telnyx-diagnostic-summary{align-items:flex-start;flex-direction:column}.telnyx-diagnostic-grid{grid-template-columns:1fr}}
.environment-card{padding:23px;height:max-content}
.environment-card>div:not(.environment-note){display:flex;justify-content:space-between;gap:15px;padding:11px 0;border-top:1px solid var(--border)}
.environment-card>div span{color:var(--muted)}
.environment-card>div strong{text-align:right}
.environment-note,.profile-security{display:flex;gap:11px;margin:18px 0;padding:14px;color:var(--navy);background:var(--surface);border-radius:10px}
.environment-note>i,.profile-security>i{margin-top:4px;color:var(--red)}
.environment-note p,.profile-security p{display:flex;flex-direction:column;margin:0}
.environment-note p span,.profile-security p span{color:var(--muted);font-size:.78rem}
.tab-bar{width:max-content;margin-bottom:17px}
.migration-summary article{display:flex;align-items:center;gap:14px;padding:17px;background:#fff;border:1px solid var(--border);border-radius:13px}
.migration-summary article>i{display:grid;place-items:center;width:40px;height:40px;color:var(--success);background:var(--success-bg);border-radius:50%}
.migration-summary article.has-warning>i{color:var(--warning);background:var(--warning-bg)}
.migration-summary article div{display:flex;flex-direction:column}
.migration-summary strong{color:var(--navy);font:700 1.05rem Montserrat}
.migration-summary span{color:var(--muted);font-size:.76rem}
.migration-panel{overflow:hidden}
.migration-row{display:grid;grid-template-columns:42px 1fr auto auto;align-items:center;gap:14px;padding:15px 18px;border-top:1px solid var(--border)}
.migration-row:first-child{border-top:0}
.migration-row>div{display:flex;flex-direction:column}
.migration-row>div span{color:var(--muted);font-size:.74rem}
.migration-row code{color:var(--muted)}
.migration-status{display:grid;place-items:center;width:35px;height:35px;border-radius:50%}
.migration-status.is-applied{color:var(--success);background:var(--success-bg)}
.migration-status.is-pending{color:var(--warning);background:var(--warning-bg)}
.notice-card{display:flex;gap:14px;margin-top:17px;padding:17px 19px;color:var(--navy);background:#eaf2fb;border:1px solid #c7d9ed;border-radius:12px}
.notice-card>i{margin-top:4px}
.notice-card p{margin:2px 0 0}
.permission-intro{display:grid;grid-template-columns:repeat(3,1fr);gap:13px;margin-bottom:17px}
.permission-intro article{display:flex;gap:12px;padding:17px;background:#fff;border:1px solid var(--border);border-radius:13px}
.permission-intro i{margin-top:4px;color:var(--red)}
.permission-intro div{display:flex;flex-direction:column}
.permission-intro span{color:var(--muted);font-size:.78rem}
.permission-roles{display:grid;gap:10px}
.permission-role{overflow:hidden;background:#fff;border:1px solid var(--border);border-radius:13px}
.permission-role>summary{display:flex;align-items:center;justify-content:space-between;padding:16px 19px;cursor:pointer;list-style:none}
.permission-role>summary::-webkit-details-marker{display:none}
.permission-role>summary>div{display:flex;align-items:center;gap:13px}
.permission-role>summary p{display:flex;flex-direction:column;margin:0}
.permission-role>summary p span{color:var(--muted);font-size:.76rem}
.role-rank{display:grid;place-items:center;width:38px;height:38px;color:var(--navy);background:var(--surface-2);border-radius:10px;font:700 .76rem Montserrat}
.permission-form{padding:19px;border-top:1px solid var(--border)}
.permission-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px 13px;margin-bottom:20px}
.permission-grid h3{grid-column:1/-1;margin:14px 0 1px;padding-bottom:6px;border-bottom:1px solid var(--border);font-size:.78rem;text-transform:capitalize}
.permission-check{display:flex;align-items:flex-start;gap:8px;padding:9px;background:var(--surface);border-radius:8px}
.permission-check input{flex:0 0 17px;width:17px;min-height:auto;margin-top:3px;accent-color:var(--red)}
.permission-check span{display:flex;min-width:0;flex-direction:column}
.permission-check strong{font-size:.77rem}
.permission-check small{overflow:hidden;color:var(--muted);font-size:.64rem;text-overflow:ellipsis}
.fixed-access{display:flex;gap:12px;padding:17px 19px;color:var(--navy);background:var(--success-bg);border-top:1px solid var(--border)}
.fixed-access p{display:flex;flex-direction:column;margin:0}
.fixed-access span{color:var(--muted)}
.profile-grid{display:grid;grid-template-columns:minmax(300px,.65fr) minmax(0,1.35fr);gap:18px}
.profile-card{padding:27px;background:var(--navy);border-radius:18px;color:#fff;box-shadow:var(--shadow)}
.profile-avatar{display:grid;place-items:center;width:70px;height:70px;margin-bottom:16px;color:var(--navy);background:#fff;border-radius:50%;font:700 1.15rem Montserrat}
.profile-card h2{margin-bottom:1px;color:#fff}
.profile-card>p{color:#b9c9db}
.profile-card>div:not(.profile-avatar){display:flex;justify-content:space-between;gap:15px;padding:11px 0;border-top:1px solid rgba(255,255,255,.13)}
.profile-card>div span{color:#b9c9db}
.profile-card>div strong{text-align:right}
.profile-form{padding:27px}

/* Printable cards */
.print-body{background:#fff}
.print-toolbar{position:sticky;z-index:5;top:0;display:flex;justify-content:center;gap:9px;padding:12px;background:#eef2f6;border-bottom:1px solid var(--border)}
.print-header{display:flex;align-items:center;justify-content:space-between;max-width:1050px;margin:24px auto;padding:0 20px 18px;border-bottom:3px solid var(--red)}
.print-header img{width:190px}
.print-header div{text-align:right}
.print-header h1{margin:0;font-size:1.5rem}
.print-header p{margin:2px 0 0}
.print-card-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px;max-width:1050px;margin:0 auto;padding:0 20px 40px}
.print-card{break-inside:avoid;padding:18px;border:1px solid #b8c2cd;border-top:5px solid var(--navy);border-radius:9px}
.print-card>header{display:flex;justify-content:space-between;color:var(--muted);font-size:.7rem}
.print-card h2{margin:14px 0 2px;font-size:1.13rem}
.print-company{margin-bottom:12px}
.print-card dl{margin:12px 0}
.print-card dl>div{display:grid;grid-template-columns:110px 1fr;padding:5px 0;border-top:1px solid #e2e7ec}
.print-card dt{color:var(--muted);font-size:.72rem}
.print-card dd{margin:0;font-weight:600}
.print-card>footer{padding-top:10px;color:var(--muted);border-top:1px solid #e2e7ec;font-size:.65rem}
.print-employee-title{display:flex;align-items:center;gap:12px;margin:13px 0}
.print-employee-title>span{display:grid;place-items:center;width:45px;height:45px;color:#fff;background:var(--navy);border-radius:50%;font:700 .75rem Montserrat}
.print-employee-title h2{margin:0}
.print-employee-title p{margin:1px 0 0}

/* Division workspaces */
.sr-only{position:absolute!important;overflow:hidden;width:1px;height:1px;padding:0;margin:-1px;white-space:nowrap;border:0;clip:rect(0,0,0,0)}
.nav-context{display:flex;align-items:center;gap:11px;margin:6px 11px 18px;padding:12px;color:#fff;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.12);border-radius:12px}
.nav-context>i{display:grid;place-items:center;width:34px;height:34px;color:#fff;background:var(--red);border-radius:9px}
.nav-context span{display:flex;flex-direction:column}.nav-context small{color:#aebed1;font-size:.63rem;text-transform:uppercase;letter-spacing:.08em}.nav-context strong{font:700 .9rem Montserrat}
.division-landscape .nav-context>i{background:#8b342f}.division-landscape .content{background:linear-gradient(180deg,#f7f5f1 0,#f4f6f9 420px)}
.button-light{color:var(--navy);background:#fff}.button-light:hover{color:var(--navy);background:#f2f6fa}
.button-outline-light{color:#fff;border-color:rgba(255,255,255,.45);background:transparent}.button-outline-light:hover{color:#fff;background:rgba(255,255,255,.1)}
.division-hero{position:relative;display:flex;align-items:flex-end;justify-content:space-between;gap:30px;overflow:hidden;margin-bottom:20px;padding:32px 34px;border-radius:22px;box-shadow:var(--shadow)}
.division-hero h1{font-size:clamp(2rem,3.2vw,3.25rem)}.division-hero p{max-width:720px;margin:0}.division-hero .hero-actions{display:flex;gap:10px;flex-wrap:wrap}
.service-hero{color:#fff;background:radial-gradient(circle at 86% 15%,rgba(255,255,255,.17),transparent 29%),linear-gradient(125deg,var(--navy-900),var(--navy) 66%,#174f8c)}
.service-hero:after{position:absolute;right:-38px;bottom:-70px;width:250px;height:180px;border:34px solid rgba(255,255,255,.055);border-radius:50%;content:""}
.service-hero h1,.service-hero p,.service-hero .eyebrow{position:relative;z-index:1;color:#fff}.service-hero .eyebrow{color:#cbd8e7}
.landscape-hero{background:linear-gradient(128deg,#fff 0,#fff 58%,#e7e1d7);border:1px solid #ded8cf;border-left:7px solid var(--red)}
.landscape-hero:after{position:absolute;right:45px;bottom:-55px;width:240px;height:150px;background:linear-gradient(145deg,transparent 48%,rgba(11,45,91,.07) 49% 60%,transparent 61%),linear-gradient(35deg,transparent 48%,rgba(198,40,40,.08) 49% 60%,transparent 61%);content:""}
.landscape-hero>*,.service-hero>*{position:relative;z-index:1}
.service-pulse,.landscape-scoreboard{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px;margin-bottom:18px}
.service-pulse article,.landscape-scoreboard article{display:flex;align-items:center;gap:13px;min-height:96px;padding:18px;background:#fff;border:1px solid var(--border);border-radius:15px;box-shadow:var(--shadow-sm)}
.service-pulse i{display:grid;place-items:center;width:43px;height:43px;color:#fff;background:var(--navy);border-radius:11px}.service-pulse .has-warning i{background:var(--red)}
.service-pulse strong,.landscape-scoreboard strong{display:block;color:var(--navy);font:700 1.55rem Montserrat}.service-pulse span,.landscape-scoreboard span,.landscape-scoreboard small{display:block;color:var(--muted);font-size:.76rem}
.service-grid{grid-template-columns:minmax(0,1.55fr) minmax(300px,.75fr)}.dispatch-panel{min-height:390px}.service-exceptions{grid-column:1/-1}.service-bars .bar-fill{background:linear-gradient(180deg,#1b5b9e,var(--navy))}
.landscape-scoreboard article{display:block;border-top:4px solid #cfc8bd}.landscape-scoreboard .pipeline-value{color:#fff;background:var(--navy);border-color:var(--red);grid-column:span 1}.landscape-scoreboard .pipeline-value strong,.landscape-scoreboard .pipeline-value span,.landscape-scoreboard .pipeline-value small{color:#fff}
.phase-ribbon-panel{margin-bottom:18px}.phase-ribbon{display:grid;grid-template-columns:repeat(8,1fr);overflow:hidden;border:1px solid var(--border);border-radius:13px}.phase-stop{position:relative;display:flex;align-items:center;flex-direction:column;padding:14px 7px;background:#fff;border-right:1px solid var(--border)}.phase-stop:last-child{border:0}.phase-stop strong{color:var(--navy);font:700 1.4rem Montserrat}.phase-stop span{color:var(--muted);font-size:.7rem;text-align:center}
.landscape-overview-grid{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(310px,.75fr);gap:18px}.project-watch-list>a{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:13px 0;border-bottom:1px solid var(--border)}.project-watch-list>a:last-child{border:0}.project-watch-list strong,.project-watch-list small{display:block}.project-watch-list small{color:var(--muted)}.project-percent{min-width:90px;text-align:right}.project-percent>span{display:block;width:90px;height:5px;margin-top:7px;background:#e2e7ed;border-radius:99px}.project-percent i{display:block;height:100%;background:var(--red);border-radius:99px}
.landscape-page-header{padding-bottom:14px;border-bottom:3px solid #d8d1c7}

/* Landscape jobs */
.job-list-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.job-list-card{position:relative;padding:18px;background:#fff;border:1px solid var(--border);border-top:5px solid var(--job-color);border-radius:15px;box-shadow:var(--shadow-sm)}
.job-list-card>header,.job-list-card>footer{display:flex;align-items:center;justify-content:space-between;gap:10px}.job-list-card h2{margin:15px 0 3px}.job-list-card>p,.job-list-card>small{display:block;margin:0 0 7px}.job-list-card>small i{margin-right:6px;color:var(--red)}.job-list-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;margin:15px 0;padding:12px 0;border-block:1px solid var(--border)}.job-list-stats span{color:var(--muted);font-size:.7rem}.job-list-stats strong{display:block;color:var(--navy);font:700 1rem Montserrat}.job-progress{display:flex;align-items:center;gap:10px;margin:10px 0}.job-progress>span{flex:1;height:6px;background:#e7ebef;border-radius:99px}.job-progress i{display:block;height:100%;background:var(--red);border-radius:99px}.job-list-card>footer{margin-top:14px}.job-list-card>footer>span{color:var(--muted);font-size:.76rem}
.job-board{display:grid;grid-template-columns:repeat(8,minmax(250px,1fr));gap:12px;overflow-x:auto;padding-bottom:18px}.job-board-column{min-height:560px;padding:8px;background:#e9edf2;border-radius:15px}.job-board-column>header{display:flex;align-items:center;justify-content:space-between;padding:9px 8px;color:var(--navy);font:700 .74rem Montserrat;text-transform:uppercase;letter-spacing:.04em}.job-board-column>header strong{display:grid;place-items:center;width:25px;height:25px;background:#fff;border-radius:50%}.job-board-stack{display:grid;gap:9px}.board-empty{padding:26px 10px;color:var(--muted);font-size:.76rem;text-align:center;border:1px dashed #c5cbd3;border-radius:10px}.board-job{padding:13px;background:#fff;border:1px solid var(--border);border-radius:11px;box-shadow:0 4px 10px rgba(11,45,91,.05)}.board-job-top,.board-job-meta{display:flex;align-items:center;justify-content:space-between;gap:8px}.board-job-top{color:var(--muted);font-size:.68rem}.board-job h2{margin:12px 0 2px;font-size:.94rem}.board-job p{margin:0 0 12px;font-size:.78rem}.board-job-meta{margin-bottom:6px;color:var(--muted);font-size:.72rem}.board-job-meta i{margin-right:4px}.board-move{margin-top:10px}.board-move select{width:100%;padding:6px;border:1px solid var(--border);border-radius:7px;font-size:.72rem}.phase-production{background:#e7edf5}.phase-punch_list{background:#f6eee6}.phase-complete{background:#e7f3eb}

/* Job workspace */
.job-workspace-header{margin:-4px -4px 0;padding:22px 24px 0;background:#fff;border:1px solid var(--border);border-radius:18px 18px 0 0}.job-workspace-header{display:grid;grid-template-columns:1fr auto;gap:18px}.back-link{display:block;margin-bottom:10px;color:var(--muted);font-size:.78rem}.back-link i{margin-right:5px}.job-title-block p{margin-bottom:0}.job-header-actions{display:flex;align-items:flex-start;gap:9px;flex-wrap:wrap}.job-status-strip{display:grid;grid-column:1/-1;grid-template-columns:repeat(4,1fr);margin:14px -24px 0;border-top:1px solid var(--border)}.job-status-strip>div{min-height:74px;padding:14px 24px;border-right:1px solid var(--border)}.job-status-strip>div:last-child{border:0}.job-status-strip span{display:block;color:var(--muted);font-size:.68rem;text-transform:uppercase;letter-spacing:.06em}.job-status-strip strong{display:block;color:var(--navy);font:700 .9rem Montserrat}.job-status-strip select{max-width:170px;padding:5px 7px;border:1px solid var(--border);border-radius:7px}.job-status-strip .progress{height:5px;margin-top:7px}.job-status-strip .progress i{display:block;height:100%;background:var(--red);border-radius:99px}
.job-tabs,.section-tabs{display:flex;overflow-x:auto;margin-bottom:18px;background:#fff;border:1px solid var(--border);border-top:0;border-radius:0 0 18px 18px}.job-tabs a,.section-tabs a{display:flex;align-items:center;gap:7px;min-width:max-content;padding:13px 16px;color:var(--muted);border-bottom:3px solid transparent;font:600 .72rem Montserrat}.job-tabs a.is-active,.section-tabs a.is-active{color:var(--navy);border-color:var(--red);background:#fafbfc}.job-tabs a span,.section-tabs a span{display:grid;place-items:center;min-width:20px;height:20px;padding:0 5px;color:var(--navy);background:#edf1f5;border-radius:50%;font-size:.62rem}.section-tabs{border-top:1px solid var(--border);border-radius:14px}
.job-overview-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:17px}.detail-list{display:grid;grid-template-columns:repeat(2,1fr);gap:15px;margin:0}.detail-list div{padding:10px;background:#f8fafb;border-radius:9px}.detail-list .wide{grid-column:1/-1}.detail-list dt{color:var(--muted);font-size:.69rem;text-transform:uppercase}.detail-list dd{margin:3px 0 0;color:var(--navy);font-weight:600}.assigned-people{display:grid;gap:8px}.assigned-people>article{display:grid;grid-template-columns:38px 1fr auto;align-items:center;gap:10px;padding:9px;background:#f8fafb;border-radius:10px}.assigned-people strong,.assigned-people span,.assigned-people small{display:block}.assigned-people span,.assigned-people small{color:var(--muted);font-size:.72rem}.avatar.small{width:38px;height:38px}.assignment-summary{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin-bottom:12px}.assignment-summary>div{padding:14px;color:#fff;background:var(--navy);border-radius:11px}.assignment-summary i{float:right;opacity:.55}.assignment-summary strong,.assignment-summary span{display:block}.assignment-summary strong{font:700 1.35rem Montserrat}.assignment-summary span{font-size:.7rem}.assignment-line{display:flex;align-items:center;gap:9px;padding:9px 0;border-top:1px solid var(--border)}.assignment-line strong,.assignment-line small{display:block}.assignment-line small{color:var(--muted)}
.activity-timeline{display:grid}.timeline-entry{display:grid;grid-template-columns:40px 1fr auto;gap:12px;padding:15px 0;border-bottom:1px solid var(--border)}.timeline-entry:last-child{border:0}.timeline-icon{display:grid;place-items:center;width:35px;height:35px;color:var(--navy);background:#eef2f6;border-radius:50%}.timeline-entry strong,.timeline-entry span,.timeline-entry time{display:block}.timeline-entry p{margin:5px 0}.timeline-entry time,.timeline-entry aside,.timeline-entry small{color:var(--muted);font-size:.7rem}.timeline-entry aside{text-align:right}.compact-timeline .timeline-entry{grid-template-columns:34px 1fr auto;padding:9px 0}.compact-timeline .timeline-icon{width:30px;height:30px;font-size:.72rem}
.assignment-manager-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.assignment-manager-grid>section{min-width:0}.assignment-manager-row{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:7px;padding:10px;background:#f7f9fb;border:1px solid var(--border);border-radius:9px}.assignment-manager-row strong,.assignment-manager-row span{display:block}.assignment-manager-row span{color:var(--muted);font-size:.72rem}.assignment-add-form{margin-top:12px;padding:13px;background:#f7f9fb;border:1px dashed #b8c3cf;border-radius:11px}.recipient-picker{max-height:190px;overflow-y:auto}
.job-files-layout{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:17px}.document-card-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.document-card{display:grid;grid-template-columns:42px 1fr auto;align-items:center;gap:10px;padding:13px;color:var(--ink);background:#f8fafb;border:1px solid var(--border);border-radius:10px}.document-card>i:first-child{display:grid;place-items:center;width:42px;height:42px;color:var(--navy);background:#fff;border-radius:9px}.document-card strong,.document-card span,.document-card small{display:block}.document-card span,.document-card small{color:var(--muted);font-size:.7rem}.file-drop{display:grid;place-items:center;margin:12px 0;padding:25px;color:var(--muted);text-align:center;background:#f8fafb;border:2px dashed #b8c3cf;border-radius:12px}.file-drop input{max-width:100%;margin-bottom:10px}.file-drop i{color:var(--navy);font-size:1.5rem}.file-drop strong,.file-drop span{display:block}

/* Catalog, estimates, and asset planning */
.catalog-groups{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:16px}.catalog-groups article{display:grid;grid-template-columns:7px 1fr auto;gap:12px;padding:15px;background:#fff;border:1px solid var(--border);border-radius:13px}.catalog-group-color{background:var(--group-color);border-radius:99px}.catalog-groups h2,.catalog-groups p{margin:0}.catalog-groups p{font-size:.76rem}.catalog-items{display:grid;grid-template-columns:repeat(2,1fr);gap:13px;padding:14px}.catalog-item{padding:16px;background:#fff;border:1px solid var(--border);border-radius:13px}.catalog-item>header{display:flex;align-items:flex-start;justify-content:space-between;gap:15px}.catalog-item h2{margin:8px 0 2px}.catalog-price{text-align:right}.catalog-price strong,.catalog-price span{display:block}.catalog-price strong{color:var(--navy);font:700 1.3rem Montserrat}.catalog-price span{color:var(--muted);font-size:.7rem}.catalog-math{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;margin:12px 0}.catalog-math span{padding:9px;background:#f5f7f9;border-radius:8px}.catalog-math small,.catalog-math strong{display:block}.catalog-math small{color:var(--muted)}.catalog-item details{margin-top:10px;padding:10px;background:#f7f9fb;border-radius:9px}.catalog-item summary{color:var(--navy);font-weight:700;cursor:pointer}.catalog-item details form{margin-top:12px}.component-list>div{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:8px;padding:8px 0;border-bottom:1px solid var(--border);font-size:.75rem}
.estimate-layout{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(280px,.65fr);gap:17px;margin-bottom:18px}.estimate-preview{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:15px;padding:17px;color:#fff;background:var(--navy);border-radius:13px}.estimate-preview span,.estimate-preview strong{display:block}.estimate-preview strong{font:700 1.55rem Montserrat}.estimate-preview small{grid-column:1/-1;color:#cbd6e4}.assembly-guide>article{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:11px 0;border-bottom:1px solid var(--border)}.assembly-guide>article strong,.assembly-guide>article small{display:block}.assembly-guide>article small{color:var(--muted)}
.maintenance-board{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.maintenance-plan{padding:16px;background:#fff;border:1px solid var(--border);border-top:5px solid var(--navy);border-radius:13px;box-shadow:var(--shadow-sm)}.maintenance-plan.is-overdue{border-top-color:var(--red)}.maintenance-plan>header{display:flex;align-items:center;justify-content:space-between}.maintenance-plan h2{margin-top:14px}.maintenance-plan p strong,.maintenance-plan p span{display:block}.maintenance-plan dl{display:grid;grid-template-columns:1fr 1fr;gap:8px}.maintenance-plan dt{color:var(--muted);font-size:.68rem}.maintenance-plan dd{margin:0;font-weight:600}.borrowed-banner{margin:10px 0;padding:8px;color:#70480a;background:#fff3d6;border-radius:8px;font-size:.73rem}.crew-card.is-borrowed{border-color:#e0bd79}

.job-board{width:100%;max-width:100%;contain:inline-size;overscroll-behavior-inline:contain}
.assigned-customers{display:flex;gap:7px;flex-wrap:wrap;margin-bottom:10px}

/* Responsive */
@media (max-width:1320px){
  .metric-grid{grid-template-columns:repeat(2,1fr)}
  .card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .calendar-week{grid-template-columns:repeat(7,minmax(120px,1fr))}
  .permission-grid{grid-template-columns:repeat(2,1fr)}
  .job-list-grid,.maintenance-board{grid-template-columns:repeat(2,minmax(0,1fr))}
  .catalog-groups{grid-template-columns:repeat(2,1fr)}
}
@media (max-width:1080px){
  .app-shell{grid-template-columns:1fr}
  .sidebar{position:fixed;left:0;transform:translateX(-102%);width:var(--sidebar);transition:transform .24s ease}
  .sidebar.is-open{transform:translateX(0)}
  .sidebar-close,.sidebar-open{display:grid}
  .sidebar-scrim{position:fixed;z-index:25;inset:0;background:rgba(5,20,40,.55)}
  .sidebar-scrim.is-visible{display:block}
  .dashboard-grid,.field-grid,.settings-grid,.report-grid,.profile-grid,.landscape-overview-grid,.estimate-layout,.job-files-layout{grid-template-columns:1fr}
  .service-pulse,.landscape-scoreboard{grid-template-columns:repeat(2,1fr)}
  .phase-ribbon{grid-template-columns:repeat(4,1fr)}
  .phase-stop:nth-child(4){border-right:0}
  .catalog-items{grid-template-columns:1fr}
  .login-shell{grid-template-columns:1fr}
  .login-story{min-height:48vh;padding:42px clamp(28px,7vw,70px)}
  .login-logo{width:230px}
  .login-message{margin:65px 0 45px}
  .login-message h1{font-size:clamp(2.2rem,6vw,3.4rem)}
  .install-shell{grid-template-columns:1fr}
  .install-brand{position:relative;height:auto;min-height:430px}
  .install-logo{margin-bottom:50px}
}
@media (max-width:760px){
  h1{font-size:2rem}
  .content{padding:27px 16px 45px}
  .topbar{min-height:76px;padding:10px 14px}
  .context-label,.date-chip{display:none}
  .division-context{margin-left:8px}
  .division-toggle button{padding:7px 10px}
  .topbar-actions .icon-button{display:none}
  .page-header,.schedule-controls,.division-hero{align-items:stretch;flex-direction:column}
  .page-header .header-actions{width:100%}
  .page-header .header-actions .button{flex:1}
  .metric-grid,.field-summary,.asset-summary,.migration-summary,.permission-intro,.card-grid,.job-list-grid,.maintenance-board,.catalog-groups,.job-overview-grid,.employee-path-grid{grid-template-columns:1fr}
  .job-workspace-header{grid-template-columns:1fr;padding:18px 16px 0}.job-header-actions{align-items:stretch;flex-direction:column}.job-status-strip{grid-template-columns:repeat(2,1fr);margin-inline:-16px}.job-status-strip>div:nth-child(2){border-right:0}.job-tabs{margin-inline:0}.assignment-manager-grid{grid-template-columns:1fr}.document-card-grid{grid-template-columns:1fr}
  .service-pulse,.landscape-scoreboard{grid-template-columns:1fr 1fr}.phase-ribbon{grid-template-columns:repeat(2,1fr)}.phase-stop:nth-child(even){border-right:0}
  .field-summary{grid-template-columns:1fr 1fr}
  .field-summary article:last-child{grid-column:1/-1}
  .two-columns,.three-columns{grid-template-columns:1fr}
  .span-two{grid-column:auto}
  .modal{padding:0}
  .modal-card{max-height:100vh;min-height:100vh;border-radius:0}
  .table-toolbar{align-items:stretch;flex-direction:column}
  .search-form{width:100%}
  .customer-search{flex-wrap:wrap}
  .customer-search input,.customer-search select{width:100%}
  .table-scroll{overflow:visible}
  table,thead,tbody,tr,th,td{display:block}
  thead{position:absolute;overflow:hidden;width:1px;height:1px;clip:rect(0 0 0 0)}
  tbody{display:grid}
  tr{padding:12px 15px;border-top:1px solid var(--border)}
  td{display:grid;grid-template-columns:110px 1fr;align-items:start;padding:6px 0;border:0}
  td:before{color:var(--muted);font:600 .62rem Montserrat;content:attr(data-label);text-transform:uppercase}
  td>*{grid-column:2}
  .row-actions{align-items:flex-start;flex-direction:column}
  .document-row{grid-template-columns:45px 1fr auto}
  .document-row>div:nth-child(3),.document-row>div:nth-child(4){display:none}
  .calendar-board{margin-right:-16px;padding-right:16px}
  .calendar-week{grid-template-columns:repeat(7,minmax(250px,1fr))}
  .calendar-month{grid-template-columns:repeat(7,minmax(180px,1fr))}
  .report-filters{align-items:stretch;flex-direction:column}
  .report-filters .field{max-width:none}
  .permission-grid{grid-template-columns:1fr}
  .system-checks{grid-template-columns:repeat(2,1fr)}
  .install-panel{padding:38px 20px}
  .install-brand{padding:45px 26px}
  .login-panel{padding:42px 24px}
  .app-footer{align-items:center;flex-direction:column;text-align:center}
}
@media (max-width:480px){
  .division-toggle i{display:none}
  .metric-grid{grid-template-columns:1fr}
  .field-summary{grid-template-columns:1fr}
  .field-summary article:last-child{grid-column:auto}
  .quick-action-grid{grid-template-columns:1fr}
  .asset-details{grid-template-columns:1fr}
  .asset-details>div{border-right:0}
  .asset-card>header{grid-template-columns:45px 1fr}
  .asset-card>header>.badge{grid-column:2}
  .field-job{grid-template-columns:55px 1fr}
  .field-job>.icon-button{grid-column:2}
  .login-story{min-height:550px}
  .login-story h1{font-size:2.3rem}
  .auth-simple-card{padding:30px 22px}
  .system-checks{grid-template-columns:1fr}
  .service-pulse,.landscape-scoreboard{grid-template-columns:1fr}.job-status-strip{grid-template-columns:1fr}.job-status-strip>div{border-right:0;border-bottom:1px solid var(--border)}.job-list-stats{grid-template-columns:1fr}.estimate-preview{grid-template-columns:1fr}.estimate-preview small{grid-column:auto}.timeline-entry{grid-template-columns:34px 1fr}.timeline-entry aside{grid-column:2;text-align:left}.component-list>div{grid-template-columns:1fr}.division-hero{padding:25px 20px}
}
@media (prefers-reduced-motion:reduce){
  *,*:before,*:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}
}
@media print{
  @page{size:letter;margin:.38in}
  body{font-size:10pt}
  .print-toolbar{display:none}
  .print-header{margin-top:0}
  .print-card-grid{grid-template-columns:repeat(2,1fr);gap:.16in;padding:0}
  .print-card{min-height:3.35in;padding:.15in}
}

/* Service field routes, crew filters, reports, and time clock */
.crew-color-dot{display:inline-block;flex:0 0 10px;width:10px;height:10px;background:var(--crew-color);border:2px solid #fff;border-radius:50%;box-shadow:0 0 0 1px color-mix(in srgb,var(--crew-color) 65%,#778)}
.crew-filter-panel{margin-bottom:14px;padding:15px 17px;background:#fff;border:1px solid var(--border);border-left:4px solid var(--navy);border-radius:13px;box-shadow:var(--shadow-sm)}
.crew-filter-heading,.crew-filter-actions{display:flex;align-items:center;justify-content:space-between;gap:12px}.crew-filter-heading>div{display:flex;flex-direction:column}.crew-filter-heading>span{color:var(--muted);font-size:.75rem}.crew-filter-options{display:flex;flex-wrap:wrap;gap:8px;margin:13px 0}.crew-filter-options label{display:flex;align-items:center;gap:7px;padding:7px 11px;background:#f7f9fb;border:1px solid var(--border);border-radius:999px;cursor:pointer}.crew-filter-options input{accent-color:var(--navy)}.crew-filter-options strong{font:600 .72rem Montserrat}.crew-filter-actions{justify-content:flex-start}
.route-share-result{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:15px;padding:15px 17px;color:#114c3e;background:#e8f6f1;border:1px solid #b8ded1;border-radius:13px}.route-share-result>div:first-child{display:flex;align-items:center;gap:12px}.route-share-result>div:first-child>i{font-size:1.35rem}.route-share-result p,.route-share-result p strong,.route-share-result p span{display:block;margin:0}.route-share-result p span{max-width:650px;margin-top:3px;overflow:hidden;color:#3e6b60;font-size:.75rem;text-overflow:ellipsis;white-space:nowrap}
.schedule-card-meta>span:first-child{display:flex;align-items:center;gap:6px}.schedule-card.is-complete{background:#e8f6ea;border-color:#9dd2a5}.schedule-card.is-progress{background:#fff9e8;border-color:#e9ca69}.visit-services{margin-top:8px;padding:6px 8px;color:var(--navy);background:#edf2f7;border-radius:6px;font-size:.68rem;font-weight:600}
.timeclock-login-link{display:flex;align-items:center;gap:12px;margin-top:14px;padding:13px 14px;color:var(--navy);background:#eef3f8;border:1px solid #d6e0ea;border-radius:11px}.timeclock-login-link>i:first-child{font-size:1.15rem}.timeclock-login-link span{display:flex;flex:1;flex-direction:column}.timeclock-login-link strong{font:700 .76rem Montserrat}.timeclock-login-link small{margin-top:2px;color:var(--muted);font-size:.7rem}
.field-public-body{min-height:100vh;color:var(--ink);background:linear-gradient(180deg,#0B2D5B 0 220px,#eef2f5 220px)}.field-public-header{display:flex;align-items:center;justify-content:space-between;max-width:840px;margin:auto;padding:18px 20px;color:#fff}.field-public-header img{width:150px;height:auto}.field-public-header span{font:600 .65rem Montserrat;letter-spacing:.11em;text-transform:uppercase}.field-public-main{width:min(840px,calc(100% - 28px));min-height:calc(100vh - 130px);margin:10px auto 30px}.field-public-footer{padding:0 18px 25px;color:#778494;font-size:.68rem;text-align:center}.field-public-flashes{position:relative;z-index:3;width:min(840px,calc(100% - 28px));margin:auto}
.clock-shell{display:grid;min-height:calc(100vh - 180px);place-items:center}.clock-card{width:min(500px,100%);padding:32px;background:#fff;border:1px solid var(--border);border-radius:24px;box-shadow:0 24px 70px rgba(4,25,49,.2);text-align:center}.clock-card h1{margin:8px 0 4px;color:var(--navy);font:700 clamp(1.7rem,6vw,2.5rem) Montserrat}.clock-card>p{color:var(--muted)}.clock-icon{display:grid;width:72px;height:72px;margin:0 auto 18px;color:#fff;background:var(--navy);border-radius:22px;place-items:center;font-size:2rem}.clock-pin input{width:min(260px,100%);margin:22px 0;padding:17px;color:var(--navy);border:2px solid #9eafc1;border-radius:14px;font:700 2.3rem Montserrat;letter-spacing:.45em;text-align:center}.clock-button{display:flex;align-items:center;justify-content:center;gap:12px;width:100%;min-height:82px;margin-top:16px;color:#fff;border:0;border-radius:17px;font:700 1.25rem Montserrat;cursor:pointer}.clock-button-primary,.clock-button-in{background:#16856B}.clock-button-out{background:#C62828}.clock-status{display:flex;align-items:center;gap:14px;margin:24px 0;padding:17px;text-align:left;border-radius:14px}.clock-status.is-in{color:#12634f;background:#e7f6f0}.clock-status.is-out{color:#536273;background:#edf1f5}.clock-status>i{font-size:1.8rem}.clock-status div{display:flex;flex-direction:column}.clock-status span,.clock-status small{font-size:.72rem}.clock-status strong{font:700 1.05rem Montserrat}.clock-switch{margin-top:17px;padding:8px;color:var(--navy);background:transparent;border:0;font-weight:600;cursor:pointer}.clock-employee-number{font-family:monospace}
.field-route-hero{padding:24px;color:#fff;background:linear-gradient(135deg,var(--crew-color),color-mix(in srgb,var(--crew-color) 65%,#001));border-radius:21px;box-shadow:0 18px 45px rgba(3,24,48,.18)}.field-route-hero .eyebrow{color:#fff;opacity:.75}.field-route-hero h1{margin:7px 0 4px;font:700 clamp(1.8rem,7vw,2.8rem) Montserrat}.field-route-hero p{margin:0;opacity:.88}.field-route-list{display:grid;gap:14px;margin-top:14px}.field-stop{padding:19px;background:#fff;border:2px solid transparent;border-radius:18px;box-shadow:var(--shadow-sm)}.field-stop.is-complete{background:#e8f6ea;border-color:#94cf9f}.field-stop.is-skipped{background:#f4f1eb;border-color:#d3c6ad}.field-stop.is-progress{border-color:#e1b83b;box-shadow:0 0 0 3px rgba(225,184,59,.13)}.field-stop>header{display:grid;grid-template-columns:42px 1fr auto;gap:11px;align-items:center}.field-stop>header div span{color:var(--muted);font-size:.74rem}.field-stop h2{margin:2px 0;color:var(--navy);font:700 1rem Montserrat}.stop-number{display:grid;width:38px;height:38px;color:#fff;background:var(--navy);border-radius:50%;font:700 .9rem Montserrat;place-items:center}.field-stop.is-complete .stop-number{background:#16856B}.stop-address{display:flex;align-items:center;gap:12px;margin:14px 0;padding:12px;color:var(--navy);background:#f1f5f8;border-radius:10px}.stop-address>span{display:flex;flex:1;flex-direction:column;font-weight:600}.stop-address small{color:var(--muted);font-weight:400}.route-action{display:flex;align-items:center;justify-content:center;gap:9px;width:100%;min-height:59px;color:#fff;border:0;border-radius:12px;font:700 .9rem Montserrat;cursor:pointer}.route-begin{background:#0B2D5B}.route-end{background:#16856B}.route-skip-button{background:#C62828}.route-skip{margin-top:11px;padding:10px 12px;background:#f6f7f8;border-radius:10px}.route-skip summary{color:#8b2a2a;font:600 .78rem Montserrat;cursor:pointer}.route-skip form{display:grid;gap:11px;margin-top:12px}.route-skip label,.route-photo{display:flex;flex-direction:column;gap:5px;font-size:.75rem;font-weight:600}.route-skip select,.route-photo input{width:100%;padding:11px;background:#fff;border:1px solid var(--border);border-radius:8px}.route-photo-form{display:grid;gap:10px}.stop-action-log{display:grid;gap:6px;margin:10px 0}.stop-action-log>div{display:grid;grid-template-columns:28px 1fr auto;gap:8px;align-items:center;padding:8px;background:rgba(255,255,255,.67);border:1px solid rgba(140,155,170,.3);border-radius:8px}.stop-action-log>div>i{color:var(--navy)}.stop-action-log span{display:flex;flex-direction:column}.stop-action-log strong{font-size:.72rem}.stop-action-log small{color:var(--muted);font-size:.68rem}.stop-action-log a{color:var(--navy);font-size:.7rem;font-weight:700}.route-unavailable{padding:50px 22px;background:#fff;border-radius:22px;text-align:center}.route-unavailable>i{color:var(--red);font-size:2.6rem}.route-unavailable h1{color:var(--navy);font:700 1.6rem Montserrat}
.field-route-hero h1,.field-route-hero p{color:#fff}
.service-log-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:18px}.service-log-summary article{display:flex;flex-direction:column;padding:17px;background:#fff;border:1px solid var(--border);border-radius:12px}.service-log-summary span,.service-log-summary small{color:var(--muted);font-size:.72rem}.service-log-summary strong{margin:6px 0;color:var(--navy);font:700 1.8rem Montserrat}.service-action-cards{display:grid;gap:10px;padding:0 20px 20px}.service-action-card{display:grid;grid-template-columns:43px 1fr minmax(0,180px);gap:13px;align-items:start;padding:15px;background:#f8fafb;border:1px solid var(--border);border-radius:12px}.service-action-icon{display:grid;width:39px;height:39px;color:#fff;background:var(--navy);border-radius:50%;place-items:center}.service-action-icon.action-skip{background:#C62828}.service-action-icon.action-end{background:#16856B}.service-action-card h3{margin:3px 0;color:var(--navy);font:700 .9rem Montserrat}.service-action-card p{margin:5px 0;color:var(--muted);font-size:.78rem}.service-action-meta{display:flex;flex-wrap:wrap;gap:10px}.service-action-meta span{display:flex;gap:4px;color:#5a6877;font-size:.68rem}.service-photo{position:relative;display:block;overflow:hidden;height:105px;border-radius:8px}.service-photo img{width:100%;height:100%;object-fit:cover}.service-photo span{position:absolute;right:5px;bottom:5px;padding:4px 6px;color:#fff;background:rgba(0,0,0,.65);border-radius:4px;font-size:.62rem}
.report-control-panel{display:grid;grid-template-columns:auto auto 1fr auto;gap:14px;align-items:end;margin-bottom:17px;padding:16px;background:#fff;border:1px solid var(--border);border-radius:13px}.report-presets{display:flex;align-self:center;overflow:hidden;border:1px solid var(--border);border-radius:9px}.report-presets button{padding:9px 11px;color:var(--muted);background:#fff;border:0;border-right:1px solid var(--border);font:600 .68rem Montserrat;cursor:pointer}.report-presets button:last-child{border:0}.report-presets button.is-active{color:#fff;background:var(--navy)}.report-date-fields{display:flex;gap:8px}.report-crews{display:flex;flex-wrap:wrap;gap:8px;margin:0;padding:0;border:0}.report-crews legend{width:100%;color:var(--muted);font:600 .64rem Montserrat;text-transform:uppercase}.report-crews label{display:flex;align-items:center;gap:5px;font-size:.72rem}.report-visual-grid{display:grid;grid-template-columns:.75fr 1.25fr;gap:18px;margin-bottom:18px}.report-donut-wrap{display:flex;align-items:center;justify-content:center;gap:25px;padding:10px 20px 25px}.report-donut{display:grid;width:165px;height:165px;background:conic-gradient(#16856B 0 var(--complete-angle),#C62828 var(--complete-angle) 360deg);border-radius:50%;place-items:center}.report-donut:before{grid-area:1/1;width:108px;height:108px;background:#fff;border-radius:50%;content:""}.report-donut>span{z-index:1;display:flex;grid-area:1/1;flex-direction:column;text-align:center}.report-donut strong{color:var(--navy);font:700 1.8rem Montserrat}.report-donut small{color:var(--muted);font-size:.65rem}.chart-legend{display:flex;flex-direction:column;gap:10px}.chart-legend span{display:grid;grid-template-columns:10px 1fr auto;gap:7px;align-items:center;font-size:.74rem}.chart-legend i{width:10px;height:10px;border-radius:3px}.legend-complete{background:#16856B}.legend-skip{background:#C62828}.crew-bar-chart{display:grid;gap:13px;padding:3px 22px 24px}.crew-bar-row{display:grid;grid-template-columns:145px 1fr;gap:12px;align-items:center}.crew-bar-row>div:first-child{display:grid;grid-template-columns:12px 1fr;align-items:center}.crew-bar-row strong,.crew-bar-row small{grid-column:2}.crew-bar-row strong{font-size:.75rem}.crew-bar-row small{color:var(--muted);font-size:.65rem}.stacked-bar{display:flex;overflow:hidden;min-width:4px;height:19px;background:#e7ebef;border-radius:5px}.stacked-bar span{min-width:0}.complete-segment{background:#16856B}.skip-segment{background:#C62828}.reason-bars{display:grid;gap:13px;padding:0 22px 24px}.reason-bars>div>span{display:flex;justify-content:space-between}.reason-bars strong{font-size:.74rem}.reason-bars small{color:var(--muted)}.reason-bars>div>div{height:8px;margin-top:5px;background:#edf0f3;border-radius:4px}.reason-bars i{display:block;height:100%;background:#C62828;border-radius:4px}.detailed-skips aside{display:flex;flex-direction:column;align-items:flex-end;gap:4px}.detailed-skips aside a{color:var(--navy);font-size:.68rem;font-weight:700}.crew-chip{display:inline-flex;align-items:center;gap:5px;margin:2px;padding:4px 7px;background:#edf1f5;border-radius:999px;font-size:.68rem}.crew-chip i{width:8px;height:8px;background:var(--crew-color);border-radius:50%}.permission-callout{display:flex;align-items:center;gap:17px;padding:22px}.permission-callout>i{display:grid;width:48px;height:48px;color:#fff;background:var(--navy);border-radius:13px;place-items:center;font-size:1.2rem}.permission-callout h2{margin:4px 0;color:var(--navy)}.permission-callout p{margin:0;color:var(--muted)}
.form-note{padding:10px;color:var(--muted);background:#f5f7f9;border-radius:8px;font-size:.75rem}

@media(max-width:900px){.report-control-panel{grid-template-columns:1fr 1fr}.report-crews{grid-column:1/-1}.report-visual-grid{grid-template-columns:1fr}.service-action-card{grid-template-columns:43px 1fr}.service-photo{grid-column:2}.service-log-summary{grid-template-columns:1fr}.route-share-result{align-items:flex-start;flex-direction:column}}
@media(max-width:620px){.field-public-header{padding:15px 14px}.field-public-header img{width:125px}.field-public-main{width:calc(100% - 20px);margin-top:4px}.clock-card{padding:25px 18px;border-radius:18px}.crew-filter-heading{align-items:flex-start;flex-direction:column}.crew-filter-options{display:grid;grid-template-columns:1fr 1fr}.report-control-panel{grid-template-columns:1fr}.report-presets{overflow-x:auto}.report-date-fields{display:grid;grid-template-columns:1fr 1fr}.report-crews{grid-column:auto}.report-donut-wrap{flex-direction:column}.crew-bar-row{grid-template-columns:105px 1fr}.field-stop{padding:15px}.field-stop>header{grid-template-columns:38px 1fr}.field-stop>header>.badge{grid-column:2;justify-self:start}.service-action-card{grid-template-columns:36px 1fr}.service-photo{grid-column:1/-1;height:170px}}

/* Release notes, Visit editing, Dispatch, and card breathing room */
.sidebar-brand{position:relative;justify-content:center;padding-inline:44px}.sidebar-brand img.sidebar-wordmark{width:158px;height:auto;max-height:50px}.sidebar-brand .sidebar-close{position:absolute;right:14px;margin:0}
.detail-grid>.panel{padding:0 23px 18px;overflow:hidden}.detail-grid>.panel>.panel-header{margin:0 -23px}.detail-grid>.panel>p{overflow-wrap:anywhere}.panel#timeline>.timeline-scroll,.panel#activity>.timeline-scroll{margin:0 23px 23px}.map-unavailable{padding:20px 23px}.assignment-manager-row{overflow-wrap:anywhere}
.whats-new-banner{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:15px;margin-bottom:17px;padding:15px 17px;color:var(--navy);background:linear-gradient(105deg,#fff 0%,#f5f8fb 70%,#eef3f8 100%);border:1px solid #ced9e4;border-left:5px solid var(--red);border-radius:14px;box-shadow:var(--shadow-sm)}.whats-new-icon{display:grid;width:42px;height:42px;color:#fff;background:var(--navy);border-radius:12px;place-items:center}.whats-new-copy{display:flex;min-width:0;flex-direction:column}.whats-new-copy .eyebrow{margin:0 0 3px}.whats-new-copy strong,.whats-new-copy small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.whats-new-copy small{color:var(--muted)}
.release-notes{display:grid;gap:18px;max-height:calc(100vh - 250px);padding-right:6px;overflow-y:auto}.release-card{overflow:hidden}.release-card.is-latest{border-top:5px solid var(--red)}.release-card-header{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;padding:23px 25px 16px;border-bottom:1px solid var(--border)}.release-card-header h2{margin:0}.release-card-header time{color:var(--muted);font-weight:600}.release-groups{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;padding:20px 25px 24px}.release-groups section{min-width:0}.release-groups h3{margin:0 0 10px;font-size:.9rem}.release-groups ul{display:grid;gap:9px;margin:0;padding:0;list-style:none}.release-groups li{display:grid;grid-template-columns:18px minmax(0,1fr);gap:8px;align-items:start}.release-groups li i{margin-top:4px;color:var(--success)}
.address-validation-row{display:flex;align-items:center;gap:12px;padding:11px 13px;background:#f6f8fa;border:1px solid var(--border);border-radius:11px}.address-validation-row>span{color:var(--muted);font-size:.78rem}.address-validation-row>span.is-valid{color:var(--success);font-weight:700}.address-validation-row>span.is-error{color:var(--danger);font-weight:700}
.dispatch-filter{display:grid;grid-template-columns:minmax(220px,1fr) minmax(145px,.45fr) minmax(145px,.45fr) minmax(190px,.6fr) auto;align-items:end;gap:14px;margin-bottom:16px;padding:18px}.dispatch-filter h2,.dispatch-filter .eyebrow{margin-bottom:2px}.crew-picker{position:relative}.crew-picker>summary{list-style:none}.crew-picker>summary::-webkit-details-marker{display:none}.crew-picker-menu{position:absolute;z-index:8;top:calc(100% + 7px);right:0;display:grid;width:260px;max-height:290px;padding:8px;background:#fff;border:1px solid var(--border);border-radius:12px;box-shadow:var(--shadow);overflow-y:auto}.crew-picker-menu label{display:grid;grid-template-columns:20px 12px 1fr;align-items:center;gap:8px;padding:9px;border-radius:8px;cursor:pointer}.crew-picker-menu label:hover{background:#f4f7fa}.crew-picker-menu input{width:16px;min-height:auto;accent-color:var(--navy)}.crew-dot{width:10px;height:10px;background:var(--crew-color);border-radius:50%}.dispatch-actions-panel{display:grid;grid-template-columns:minmax(260px,1.25fr) minmax(200px,.75fr) minmax(200px,.75fr) auto;align-items:end;gap:14px;padding:18px}.dispatch-actions-panel h2{margin-bottom:4px}.dispatch-actions-panel p{margin:0}.dispatch-action-buttons{display:flex;gap:8px;align-items:center}.dispatch-selection-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:14px 2px}.dispatch-selection-toolbar span{color:var(--muted);font-size:.78rem}.dispatch-route-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.dispatch-route-card{overflow:hidden;border-top:5px solid var(--crew-color)}.dispatch-route-card>header{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:12px;padding:17px 18px;border-bottom:1px solid var(--border)}.dispatch-route-card h2,.dispatch-route-card .eyebrow{margin:0}.dispatch-route-select input{position:absolute;opacity:0;pointer-events:none}.dispatch-route-select>span{display:grid;width:29px;height:29px;color:transparent;background:#fff;border:2px solid #aab7c5;border-radius:8px;place-items:center}.dispatch-route-select input:checked+span{color:#fff;background:var(--crew-color);border-color:var(--crew-color)}.dispatch-route-count{display:flex;color:var(--navy);font:700 1.5rem Montserrat;flex-direction:column;align-items:flex-end}.dispatch-route-count small{color:var(--muted);font-size:.62rem;text-transform:uppercase}.dispatch-route-meta{display:flex;flex-wrap:wrap;gap:8px;padding:11px 18px;background:#f7f9fb}.dispatch-route-meta span{display:flex;align-items:center;gap:5px;padding:4px 7px;color:var(--muted);background:#fff;border:1px solid var(--border);border-radius:999px;font-size:.68rem}.dispatch-route-meta .is-verified{color:var(--success)}.dispatch-route-meta .is-warning{color:var(--warning)}.dispatch-stop-list{margin:0;padding:0 18px 14px;list-style:none}.dispatch-stop-list li{display:grid;grid-template-columns:27px minmax(0,1fr) auto;align-items:center;gap:10px;padding:11px 0;border-bottom:1px solid var(--border)}.dispatch-stop-list li:last-child{border-bottom:0}.dispatch-stop-list li>span:first-child{display:grid;width:25px;height:25px;color:#fff;background:var(--crew-color);border-radius:50%;font:700 .68rem Montserrat;place-items:center}.dispatch-stop-list div{display:flex;min-width:0;flex-direction:column}.dispatch-stop-list small{overflow:hidden;color:var(--muted);font-size:.7rem;text-overflow:ellipsis;white-space:nowrap}.dispatch-share-result{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:14px}.dispatch-link-list{display:grid!important;grid-column:1/-1;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:8px}.dispatch-link-list a{display:flex;flex-direction:column;padding:10px 12px;color:var(--navy);background:#fff;border:1px solid #b8ded1;border-radius:9px}.dispatch-link-list span{color:var(--muted);font-size:.72rem}.dispatch-notice{display:grid;gap:7px;margin-bottom:15px;padding:13px 16px}.dispatch-notice>div{display:flex;gap:10px;align-items:flex-start}.dispatch-notice p,.dispatch-notice strong,.dispatch-notice span{display:block;margin:0}.dispatch-notice .is-success>i{color:var(--success)}.dispatch-notice .is-error>i{color:var(--danger)}
.work-order-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;padding:30px 0 20px}.work-order-heading h1{margin:0;font-size:2rem}.work-order-heading p{margin:4px 0 0}.work-order-status{padding:8px 13px;color:#fff;background:#16856b;border-radius:999px;font:700 .72rem Montserrat;text-transform:uppercase}.work-order-facts{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;margin-bottom:23px;background:#d9e0e8;border:1px solid #d9e0e8}.work-order-facts>div{display:flex;min-height:74px;padding:13px;background:#f5f7f9;flex-direction:column}.work-order-facts span{color:#65717d;font-size:.68rem;text-transform:uppercase}.work-order-facts strong{margin-top:5px;color:#0b2d5b}.work-order-section{padding:18px 0;border-bottom:1px solid #d9e0e8}.work-order-section h2{margin:0 0 5px}.work-order-section p{margin:0;color:#394958}.work-order-table{margin-top:10px}.work-order-signoff{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin:55px 0 25px}.work-order-signoff div{height:40px;border-bottom:1px solid #536273}.work-order-signoff span{color:#65717d;font-size:.7rem}.work-order-meta{font-size:.72rem;text-align:right}
@media(max-width:1080px){.dispatch-filter,.dispatch-actions-panel{grid-template-columns:repeat(2,minmax(0,1fr))}.dispatch-filter>div:first-child,.dispatch-actions-panel>div:first-child{grid-column:1/-1}.dispatch-route-grid{grid-template-columns:1fr}}
@media(max-width:760px){.sidebar-brand{padding-inline:42px}.whats-new-banner{grid-template-columns:auto 1fr}.whats-new-banner>.button{grid-column:1/-1}.whats-new-copy strong,.whats-new-copy small{white-space:normal}.release-notes{max-height:none;overflow:visible}.release-groups{grid-template-columns:1fr}.dispatch-filter,.dispatch-actions-panel{grid-template-columns:1fr}.dispatch-filter>div:first-child,.dispatch-actions-panel>div:first-child{grid-column:auto}.dispatch-action-buttons{align-items:stretch;flex-direction:column}.dispatch-action-buttons .button{width:100%}.crew-picker-menu{right:auto;left:0;width:min(290px,calc(100vw - 64px))}.dispatch-share-result{grid-template-columns:1fr}.address-validation-row{align-items:stretch;flex-direction:column}.work-order-facts,.work-order-signoff{grid-template-columns:1fr}.work-order-signoff{gap:18px;margin-top:35px}.detail-grid>.panel{padding-inline:17px}.detail-grid>.panel>.panel-header{margin-inline:-17px}.panel#timeline>.timeline-scroll,.panel#activity>.timeline-scroll{margin:0 17px 17px}}
@media print{.work-order-paper{font-size:10pt}.work-order-signoff{break-inside:avoid}.work-order-meta{margin-bottom:35px}}

/* Location operations, financial line items, route review, and field attention */
.catalog-math{grid-template-columns:repeat(auto-fit,minmax(105px,1fr))}
.line-item-builder{display:grid;gap:12px;margin:17px 0;padding:16px;background:#f6f8fa;border:1px solid var(--border);border-radius:13px}.line-item-builder legend{padding:0 6px;color:var(--navy);font:700 .78rem Montserrat}.line-item-builder>p{margin:0;color:var(--muted);font-size:.76rem}.line-item-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(105px,.25fr) 38px;gap:10px;align-items:end;margin-bottom:9px}.line-item-row>.icon-button{margin-bottom:1px}.line-item-total{display:flex;align-items:center;justify-content:space-between;padding:11px 13px;color:var(--navy);background:#fff;border:1px solid var(--border);border-radius:10px}.line-item-total span{font:700 .72rem Montserrat;text-transform:uppercase}.line-item-total strong{font:700 1.08rem Montserrat}.location-map-card{position:relative;overflow:hidden}.location-map-card img{display:block;width:100%}.location-map-enlarge{position:absolute;right:16px;bottom:16px;box-shadow:var(--shadow)}.interactive-location-map{width:100%;height:min(64vh,560px);margin:15px 0;background:#e5eaf0;border:1px solid var(--border);border-radius:13px}.location-tab-panel{margin-top:0}.section-tabs a.is-active{color:#fff;background:var(--navy);border-color:var(--navy)}.inline-upload-form{display:grid;grid-template-columns:1fr 180px 1fr auto;gap:12px;align-items:end;margin:0 20px 18px;padding:14px;background:#f6f8fa;border:1px solid var(--border);border-radius:12px}.photo-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:12px;padding:0 20px 20px}.photo-card{display:flex;min-width:0;padding:16px;color:var(--navy);background:#f6f8fa;border:1px solid var(--border);border-radius:12px;flex-direction:column}.photo-card>i{margin-bottom:12px;font-size:1.5rem}.photo-card span,.photo-card small{overflow:hidden;color:var(--muted);font-size:.7rem;text-overflow:ellipsis;white-space:nowrap}.dispatch-scope{display:grid;gap:6px;margin:11px 0;padding:12px;background:#f3f6f8;border-radius:10px}.dispatch-scope>strong{color:var(--navy);font:700 .72rem Montserrat;text-transform:uppercase}.dispatch-scope>span{display:flex;justify-content:space-between;gap:10px;font-size:.78rem}.dispatch-scope small{color:var(--muted)}.route-attention,.route-attention-status{margin:11px 0;padding:11px 12px;background:#fff3df;border:1px solid #edc177;border-radius:10px}.route-attention summary{color:#8b4b00;font:700 .78rem Montserrat;cursor:pointer}.route-attention form{display:grid;gap:10px;margin-top:11px}.route-attention label,.route-photo-form>label{display:flex;gap:5px;flex-direction:column;font-size:.75rem;font-weight:600}.route-attention select,.route-attention textarea,.route-photo-form textarea{width:100%;padding:11px;background:#fff;border:1px solid var(--border);border-radius:8px}.route-attention-button{color:#fff;background:#b46000}.route-attention-status{display:flex;align-items:center;gap:9px;color:#744000}.route-attention-status span{display:flex;flex-direction:column}.route-attention-status small{font-size:.7rem}.service-log-list{display:grid;gap:14px}.service-entry-card{padding:0 20px 20px;overflow:hidden}.service-entry-card>.panel-header{margin:0 -20px 16px}.service-entry-facts{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.service-entry-facts>div{display:flex;padding:11px;background:#f6f8fa;border-radius:9px;flex-direction:column}.service-entry-facts span{color:var(--muted);font-size:.66rem;text-transform:uppercase}.service-entry-facts strong{margin-top:3px;color:var(--navy)}.service-entry-notes{margin:12px 0;padding:12px;background:#eef4f8;border-radius:9px}.service-entry-notes p{margin:6px 0 0}.service-action-sequence{display:flex;gap:10px;margin:12px 0;padding:0;list-style:none}.service-action-sequence li{display:flex;align-items:center;gap:7px;padding:8px 10px;background:#f6f8fa;border:1px solid var(--border);border-radius:8px}.service-action-sequence span{display:flex;flex-direction:column}.service-action-sequence small{color:var(--muted)}.service-entry-photos{display:flex;gap:8px;flex-wrap:wrap}.service-entry-photos a{display:flex;align-items:center;gap:9px;padding:10px;color:var(--navy);background:#edf5f2;border:1px solid #bddbd1;border-radius:9px}.service-entry-photos span{display:flex;flex-direction:column}.service-entry-photos small{color:var(--muted)}.attention-review-list{display:grid;gap:10px;padding:0 20px 20px}.attention-review-item{display:grid;grid-template-columns:minmax(0,1fr) minmax(260px,.55fr);gap:15px;padding:14px;border:1px solid var(--border);border-left:5px solid #7b8794;border-radius:10px}.attention-review-item.priority-high{border-left-color:var(--danger)}.attention-review-item.priority-medium{border-left-color:var(--warning)}.attention-review-item h3{margin:6px 0}.attention-review-item p{margin:0 0 5px}.attention-review-item small{color:var(--muted)}.dispatch-review-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px;margin-top:16px}.dispatch-review-card{overflow:hidden;border-top:5px solid var(--crew-color)}.dispatch-review-card>header{display:flex;align-items:center;justify-content:space-between;padding:17px 18px}.dispatch-review-card h2{margin:2px 0}.financial-search{display:grid;grid-template-columns:1fr auto;gap:12px;align-items:end;margin-bottom:14px;padding:16px}.notification-preferences{display:grid;gap:8px}.report-presets a{padding:9px 11px;color:var(--muted);background:#fff;border-right:1px solid var(--border);font:600 .68rem Montserrat;white-space:nowrap}.report-presets a.is-active{color:#fff;background:var(--navy)}
@media(max-width:900px){.inline-upload-form{grid-template-columns:1fr 1fr}.dispatch-review-grid{grid-template-columns:1fr}.attention-review-item{grid-template-columns:1fr}}
@media(max-width:620px){.line-item-row{grid-template-columns:1fr 105px 36px}.inline-upload-form,.financial-search{grid-template-columns:1fr}.service-entry-facts{grid-template-columns:1fr}.service-action-sequence{flex-direction:column}.location-map-enlarge{right:9px;bottom:9px}.photo-grid{grid-template-columns:1fr}}
@media print{.sidebar,.topbar,.page-header .button,.section-tabs,.app-footer,.inline-upload-form{display:none!important}.app-shell,.app-main{display:block}.content{padding:0}.panel{box-shadow:none}.dispatch-review-grid{grid-template-columns:1fr}.dispatch-review-card,.service-entry-card{break-inside:avoid}}

/* 1.6 service agreement workflow and spacing cleanup */
.content>*,.panel>*,.modal-card>*{min-width:0}.panel,.modal-card,.schedule-card{overflow-wrap:anywhere}.section-tabs{margin-block:1rem 1.35rem;overflow-x:auto;scrollbar-width:thin}.section-tabs a{white-space:nowrap}#main-content.is-loading{opacity:.58;pointer-events:none;transition:opacity .15s ease}.text-warning{color:#a7540c}.muted{color:var(--muted)}
.location-service-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:1rem;margin-top:1rem}.service-summary-card{display:block;color:inherit;text-decoration:none;border:1px solid var(--border);transition:transform .15s ease,border-color .15s ease,box-shadow .15s ease}.service-summary-card:hover{transform:translateY(-2px);border-color:var(--success);box-shadow:var(--shadow-sm)}.service-summary-card h3{margin:.2rem 0 .4rem}.service-summary-card>div{display:flex;gap:.65rem;flex-wrap:wrap;align-items:center;margin-top:1rem;color:var(--muted)}.service-summary-card>div strong{margin-left:auto;color:var(--ink)}.service-builder-form{width:100%;max-width:1120px;min-width:0;margin-inline:auto;overflow:hidden}.service-builder-form fieldset,.service-builder-form .form-grid,.service-builder-form .field{min-width:0}.service-builder-total{display:flex;align-items:center;justify-content:space-between;gap:1rem;border-top:1px solid var(--border);margin-top:1.25rem;padding-top:1.25rem}.service-date-actions{display:grid;gap:.85rem}.service-date-action{display:grid;grid-template-columns:auto 1fr;gap:.85rem;align-items:start;padding:1rem;border:1px solid var(--border);border-radius:10px}.service-date-action>i{color:var(--success);margin-top:.2rem}
.dispatch-drag-hint{margin:.8rem 18px .35rem;color:var(--muted);font-size:.72rem}.dispatch-stop-list li[draggable=true]{cursor:grab;grid-template-columns:27px auto minmax(0,1fr) auto}.dispatch-stop-list li.is-dragging{opacity:.42}.drag-handle{color:var(--muted)}.route-save-status{display:block;min-height:1.3rem;margin:0 18px .6rem;color:var(--success);font-size:.72rem}.schedule-card-actions button[data-schedule-action=push]{width:auto;min-width:72px;padding-inline:.65rem}.schedule-card-actions button[data-schedule-action=push]::after{margin-left:.35rem;font:inherit;content:"Push"}.schedule-card-actions button[data-schedule-action=skip]{display:none}
@media(max-width:720px){.service-builder-total{align-items:stretch;flex-direction:column}.service-builder-total .button{width:100%}.dispatch-stop-list li[draggable=true]{grid-template-columns:27px auto minmax(0,1fr)}.dispatch-stop-list li[draggable=true]>.badge{grid-column:3;justify-self:start}}

/* 1.7 customer, Location, reports, and audit controls */
.service-builder-form{padding:24px}.service-builder-form>.form-grid{gap:17px}.service-builder-form .line-item-builder{margin-inline:0}.service-builder-total{padding-inline:2px}
.location-list-map-panel{overflow:hidden}.location-list-map-panel>.panel-header{margin-bottom:0}.location-list-map{width:100%;height:390px;background:#e4eaf0}.location-list-map-unavailable{margin-bottom:18px}.location-list-toolbar{align-items:center}.location-search{display:grid;grid-template-columns:auto minmax(230px,1fr) repeat(3,minmax(145px,.46fr)) auto;gap:9px;align-items:center;width:100%}.location-search select{min-width:0}.location-list-table-wrap{overflow-x:auto!important}.location-list-table.has-address-actions{min-width:900px;table-layout:fixed}.location-list-table.has-address-actions th,.location-list-table.has-address-actions td{padding-right:9px;padding-left:9px}.location-list-table.has-address-actions th:nth-child(1){width:18%}.location-list-table.has-address-actions th:nth-child(2){width:14%}.location-list-table.has-address-actions th:nth-child(3){width:19%}.location-list-table.has-address-actions th:nth-child(4){width:9%}.location-list-table.has-address-actions th:nth-child(5){width:17%}.location-list-table.has-address-actions th:nth-child(6){width:7%}.location-list-table.has-address-actions th:nth-child(7){width:16%}.location-list-action-heading{text-align:right}.location-list-address-action{text-align:right}.location-list-address-action form{display:grid;gap:5px;justify-items:end;margin:0}.location-list-address-action .button{min-width:124px;white-space:nowrap}.location-list-validation-status{display:block;max-width:220px;color:var(--danger);font-size:.66rem;line-height:1.35;white-space:normal}.location-confirmation-reason{display:block;max-width:300px;color:var(--muted);line-height:1.35}.location-list-no-action{color:var(--muted)}.customer-filter-form{display:grid;grid-template-columns:minmax(300px,2fr) repeat(3,minmax(150px,1fr)) auto;gap:14px;align-items:end;width:100%;padding:9px 4px}.customer-filter-form .field{min-width:0;margin:0}.customer-query-field{min-width:280px}.customer-filter-form select{min-width:0;width:100%}.customer-apply-button{min-width:132px;min-height:43px;padding-right:18px;padding-left:18px;white-space:nowrap}.is-muted-row{opacity:.68;background:#f7f8f9}.inactive-location-banner{display:flex;align-items:flex-start;gap:13px;margin-bottom:18px;padding:15px 17px;color:#6d4500;background:#fff5dc;border:1px solid #e7c77f;border-left:5px solid var(--warning);border-radius:12px}.inactive-location-banner i{margin-top:3px}.inactive-location-banner span{display:block;margin-top:3px}.location-danger-zone{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-top:24px;padding:18px;color:#751d21;background:#fff4f4;border:2px solid #e3a9aa;border-radius:13px}.location-danger-zone>div{display:flex;align-items:flex-start;gap:12px}.location-danger-zone>div>i{margin-top:4px}.location-danger-zone span{display:flex;flex-direction:column}.location-danger-zone small{max-width:680px;margin-top:3px;color:#87575a}.location-delete-card{border-top:7px solid var(--danger)}.destructive-warning-icon{display:grid;width:58px;height:58px;margin-bottom:10px;color:#fff;background:var(--danger);border-radius:50%;place-items:center;font-size:1.5rem}.button-danger{color:#fff;background:var(--danger);border-color:var(--danger)}
@media(max-width:760px){.location-list-table-wrap{overflow:visible!important}.location-list-table.has-address-actions{min-width:0;table-layout:auto}.location-list-table.has-address-actions th,.location-list-table.has-address-actions td{padding-right:0;padding-left:0}.location-list-address-action{text-align:left}.location-list-address-action form{justify-items:start}.location-list-address-action .button{min-width:0}}
.report-tabs~.table-panel{border:2px solid #c5d1dd;box-shadow:0 12px 28px rgba(11,45,91,.1)}.report-tabs~.table-panel .table-toolbar{min-height:62px;padding:15px 19px;background:#eef3f7}.report-tabs~.table-panel table{font-size:.91rem}.report-tabs~.table-panel th{padding:15px 17px;font-size:.72rem}.report-tabs~.table-panel td{padding:16px 17px}.report-tabs~.table-panel tbody tr:hover{background:#f2f7fa}
.audit-filter{display:grid;grid-template-columns:minmax(230px,1.4fr) repeat(4,minmax(135px,.65fr)) auto;gap:12px;align-items:end;margin-bottom:18px;padding:18px}.audit-table{border:2px solid #c5d1dd}.audit-table .table-toolbar{background:#eef3f7}.audit-table td{vertical-align:top}.audit-details{min-width:260px;white-space:normal}.audit-table td:last-child small{display:block;max-width:360px;white-space:normal;overflow-wrap:anywhere}
@media(max-width:1400px){.location-search,.customer-filter-form{grid-template-columns:auto minmax(210px,1fr) repeat(2,minmax(145px,.6fr))}.location-search select:last-of-type,.customer-filter-form select:last-of-type{grid-column:2/3}.report-control-panel{grid-template-columns:1fr 1fr}.report-presets{overflow-x:auto}.audit-filter{grid-template-columns:repeat(3,minmax(0,1fr))}.audit-filter>.field:first-of-type{grid-column:span 2}}
@media(max-width:720px){.service-builder-form{padding:17px}.location-list-map{height:300px}.location-search,.customer-filter-form{grid-template-columns:auto minmax(0,1fr)}.location-search select,.customer-filter-form select,.location-search select:last-of-type,.customer-filter-form select:last-of-type,.location-search .button,.customer-filter-form .button{grid-column:2}.location-search .button,.customer-filter-form .button{width:100%}.audit-filter{grid-template-columns:1fr}.audit-filter>.field:first-of-type{grid-column:auto}.location-danger-zone{align-items:stretch;flex-direction:column}.location-danger-zone>.button{width:100%}}
@media print{.report-control-panel,.modal,.flash,.whats-new-banner{display:none!important}.report-tabs~.table-panel{border:1px solid #b6c0ca;box-shadow:none}.report-tabs~.table-panel .table-toolbar{background:#eef3f7!important}.report-tabs~.table-panel th,.report-tabs~.table-panel td{padding:9px 10px}.report-visual-grid,.report-grid{break-inside:avoid}}

/* 1.8 employee directory, compensation, route GPS, and Location photo refinements */
.employee-filter-panel{display:grid;grid-template-columns:minmax(280px,1.8fr) repeat(4,minmax(135px,.75fr)) auto;gap:14px;align-items:end;margin-bottom:18px;padding:18px}.employee-filter-panel .field{min-width:0;margin:0}.employee-filter-panel>.button{min-height:43px;white-space:nowrap}.employee-list-panel{border:2px solid #c8d4df}.employee-list-panel .table-toolbar{min-height:60px;background:#f0f4f7}.employee-list-panel tbody tr{transition:background .15s ease}.employee-list-panel tbody tr:hover{background:#f3f7fa}.employee-profile-hero{display:grid;grid-template-columns:auto minmax(220px,1fr) minmax(340px,.85fr);gap:20px;align-items:center;padding:24px}.employee-profile-avatar{display:grid;width:74px;height:74px;color:#fff;background:linear-gradient(145deg,var(--navy),#315b88);border-radius:21px;place-items:center;font:700 1.35rem Montserrat}.employee-profile-hero h2{margin:7px 0 2px}.employee-profile-hero p{margin:0;color:var(--muted)}.employee-profile-hero dl{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:0}.employee-profile-hero dl>div{padding:11px;background:#f5f7f9;border:1px solid var(--border);border-radius:10px}.employee-profile-hero dt,.employee-detail-list dt{color:var(--muted);font-size:.65rem;text-transform:uppercase}.employee-profile-hero dd,.employee-detail-list dd{margin:4px 0 0;color:var(--navy);font-weight:700}.employee-information-grid{margin-top:16px}.employee-detail-list{display:grid;gap:0;margin:0}.employee-detail-list>div{display:grid;grid-template-columns:minmax(120px,.45fr) 1fr;gap:12px;padding:12px 0;border-bottom:1px solid var(--border)}.employee-detail-list>div:last-child{border-bottom:0}.employee-assignment-list,.employee-punch-list{display:grid;gap:8px}.employee-assignment-list>a,.employee-punch-list>div{display:flex;align-items:center;gap:11px;padding:11px 12px;color:var(--navy);background:#f6f8fa;border:1px solid var(--border);border-radius:10px}.employee-assignment-list span,.employee-punch-list span{display:flex;min-width:0;flex-direction:column}.employee-assignment-list small,.employee-punch-list small{color:var(--muted)}.employee-compensation-panel{margin-top:16px;border-top:5px solid #d7a638}.employee-compensation-metrics{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px}.employee-compensation-metrics article{display:flex;min-height:88px;padding:14px;color:var(--navy);background:#f6f8fa;border:1px solid var(--border);border-radius:11px;flex-direction:column;justify-content:center}.employee-compensation-metrics span{color:var(--muted);font-size:.67rem;text-transform:uppercase}.employee-compensation-metrics strong{margin-top:6px;font:700 1rem Montserrat}.employee-compensation-metrics .is-total{color:#fff;background:var(--navy);border-color:var(--navy)}.employee-compensation-metrics .is-total span{color:#dfe8f2}.crew-color-dot{width:11px;height:11px;background:var(--crew-color);border-radius:50%}
.location-relationship-card{padding:0 22px 22px}.location-relationship-card>.panel-header{margin-right:-22px;margin-left:-22px;padding-right:22px;padding-left:22px}.location-relationship-list{display:grid;gap:9px}.location-relationship-row,.location-relationship-list>a{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:9px;padding:11px 13px;background:#f6f8fa;border:1px solid var(--border);border-radius:11px}.location-relationship-row>a,.location-relationship-list>a{display:flex;min-width:0;align-items:center;justify-content:space-between;gap:14px;color:var(--navy)}.location-relationship-row>a>span:first-child,.location-relationship-list>a>span:first-child{display:flex;min-width:0;flex-direction:column}.location-relationship-row small,.location-relationship-list>a small{color:var(--muted)}
.location-add-contact-button{min-width:max-content;flex:0 0 auto;white-space:nowrap}.employee-danger-zone{display:flex;align-items:center;justify-content:space-between;gap:22px;margin-top:22px;color:#751d21;background:#fff4f4;border:2px solid #e3a9aa}.employee-danger-zone h2{margin:2px 0 5px}.employee-danger-zone p{max-width:760px;margin:0;color:#87575a}.danger-callout{display:flex;align-items:flex-start;gap:11px;margin:14px 0;padding:13px;color:#751d21;background:#fff4f4;border:1px solid #e3a9aa;border-radius:10px}.danger-callout i{margin-top:3px}.danger-callout p{margin:0}.table-primary-link{color:var(--navy);text-decoration:none}.table-primary-link:hover{text-decoration:underline}.employee-pin-sheet{max-width:680px;margin:34px auto;padding:44px;color:#15293c;border:2px solid #cdd7e0;border-top:10px solid var(--navy);border-radius:16px;text-align:center}.employee-pin-sheet>h1{margin:5px 0}.employee-pin-sheet>p{margin:0;color:var(--muted)}.employee-pin-sheet>section{margin:34px 0;padding:25px;background:#eef3f7;border-radius:14px}.employee-pin-sheet>section span{display:block;margin-bottom:9px;color:var(--muted);font-weight:700;text-transform:uppercase;letter-spacing:.12em}.employee-pin-sheet>section strong{font:800 clamp(2.7rem,10vw,5rem)/1 Montserrat;color:var(--navy);letter-spacing:.12em}.employee-pin-sheet ol{display:inline-block;margin:0 auto 24px;padding-left:22px;text-align:left}.employee-pin-sheet li{margin:8px 0}.employee-pin-warning{display:flex;flex-direction:column;gap:4px;padding:14px;color:#6d4500;background:#fff5dc;border:1px solid #e7c77f;border-radius:11px}.employee-pin-sheet footer{margin-top:28px;padding-top:13px;color:var(--muted);border-top:1px solid #cdd7e0}
.location-photo-panel{overflow:hidden}.location-photo-upload{display:grid;grid-template-columns:minmax(180px,.9fr) minmax(230px,1.25fr) minmax(175px,.75fr) minmax(220px,1fr) auto;gap:12px;align-items:end;margin:0 20px 18px;padding:16px;background:#f5f8fa;border:1px solid var(--border);border-radius:12px}.location-photo-upload .field{min-width:0;margin:0}.location-photo-upload>.button{min-height:43px;white-space:nowrap}.photo-upload-notice{display:flex;align-items:center;gap:12px;margin:0 20px 18px;padding:14px;color:#744c00;background:#fff6df;border:1px solid #e5c579;border-radius:11px}.photo-upload-notice>i{font-size:1.25rem}.photo-upload-notice span{display:flex;flex-direction:column}.photo-upload-notice small{color:#82683a}.location-photo-list{display:grid;gap:8px;padding:0 20px 20px}.location-photo-row{display:grid;grid-template-columns:34px minmax(115px,.6fr) minmax(150px,.8fr) minmax(140px,.8fr) minmax(190px,1.4fr) 18px;gap:12px;align-items:center;padding:12px 14px;color:var(--navy);background:#fff;border:1px solid var(--border);border-radius:11px;transition:border-color .15s ease,background .15s ease}.location-photo-row:hover{background:#f6f9fb;border-color:#9eb2c5}.location-photo-row>i:first-child{display:grid;width:32px;height:32px;color:#fff;background:var(--navy);border-radius:9px;place-items:center}.location-photo-row>span{display:flex;min-width:0;flex-direction:column}.location-photo-row small{color:var(--muted);font-size:.64rem;text-transform:uppercase}.location-photo-row strong{overflow:hidden;font-size:.78rem;text-overflow:ellipsis;white-space:nowrap}.location-photo-date strong{color:#12664f}.field-route-gps-note{grid-column:1/-1;display:block;margin-top:2px;color:var(--muted);font-size:.7rem;text-align:center}.button-complete{color:#225f4d;background:#dff3ea;border:1px solid #9fceb9}
.employee-print-sheet{color:#15293c}.employee-print-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin:24px 0;padding:20px;background:#eef3f7;border-left:6px solid var(--navy)}.employee-print-heading>div{display:flex;align-items:center;gap:14px}.employee-print-heading>div>span{display:grid;width:52px;height:52px;color:#fff;background:var(--navy);border-radius:14px;place-items:center;font:700 1rem Montserrat}.employee-print-heading h1{margin:0}.employee-print-heading p{margin:3px 0 0}.employee-print-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.employee-print-grid article{padding:18px;border:1px solid #cdd7e0;border-radius:10px;break-inside:avoid}.employee-print-grid h2{margin:0 0 12px}.employee-print-grid dl{margin:0}.employee-print-grid dl>div{display:grid;grid-template-columns:130px minmax(0,1fr);gap:10px;padding:8px 0;border-bottom:1px solid #dce3e9}.employee-print-grid dt{color:#63717e}.employee-print-grid dd{margin:0;font-weight:700;overflow-wrap:anywhere}.employee-print-compensation{margin-top:22px;padding:18px;background:#fff8e6;border:1px solid #d9ba68;border-radius:10px}.employee-print-compensation>div{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.employee-print-compensation span{display:flex;flex-direction:column}.employee-print-compensation small{color:#726443}.employee-print-sheet>footer{margin-top:30px;padding-top:12px;color:#6c7884;border-top:1px solid #cdd7e0;text-align:center}
@media(max-width:1400px){.customer-filter-form{grid-template-columns:minmax(260px,1.5fr) repeat(2,minmax(145px,.7fr));}.customer-filter-form .field:nth-of-type(4){grid-column:1/3}.customer-filter-form>.button{grid-column:3;justify-self:stretch}.employee-filter-panel{grid-template-columns:repeat(3,minmax(0,1fr))}.employee-query-field{grid-column:span 2}.employee-filter-panel>.button{align-self:end}.location-photo-upload{grid-template-columns:repeat(2,minmax(0,1fr))}.location-photo-upload>.button{justify-self:stretch}}
@media(max-width:900px){.employee-profile-hero{grid-template-columns:auto 1fr}.employee-profile-hero dl{grid-column:1/-1}.employee-compensation-metrics{grid-template-columns:repeat(2,1fr)}.employee-compensation-metrics .is-total{grid-column:1/-1}.location-photo-row{grid-template-columns:34px repeat(2,minmax(0,1fr)) 18px}.location-photo-row .location-photo-file{grid-column:2/4}.location-photo-row>i:last-child{grid-column:4;grid-row:1/3}.employee-print-grid{grid-template-columns:1fr}}
@media(max-width:720px){.customer-filter-form{grid-template-columns:1fr;padding:8px 0}.customer-filter-form .field,.customer-filter-form .field:nth-of-type(4),.customer-filter-form>.button{grid-column:auto}.customer-query-field{min-width:0}.employee-filter-panel{grid-template-columns:1fr}.employee-query-field{grid-column:auto}.employee-profile-hero{grid-template-columns:1fr;text-align:center}.employee-profile-avatar{margin:auto}.employee-profile-hero dl{grid-column:auto;grid-template-columns:1fr;text-align:left}.employee-compensation-metrics{grid-template-columns:1fr}.employee-compensation-metrics .is-total{grid-column:auto}.employee-danger-zone{align-items:stretch;flex-direction:column}.employee-danger-zone .button{width:100%}.employee-pin-sheet{margin:16px 0;padding:24px 16px}.location-relationship-card{padding-right:17px;padding-left:17px}.location-relationship-card>.panel-header{align-items:stretch;margin-right:-17px;margin-left:-17px;padding-right:17px;padding-left:17px;flex-direction:column}.location-relationship-card>.panel-header .button{width:100%}.location-photo-upload{grid-template-columns:1fr;margin-inline:14px}.location-photo-list{padding-inline:14px}.location-photo-row{grid-template-columns:32px 1fr 18px}.location-photo-row>span,.location-photo-row .location-photo-file{grid-column:2}.location-photo-row>i:last-child{grid-column:3;grid-row:1/5}.employee-print-compensation>div{grid-template-columns:1fr 1fr}}

.update-page-header{align-items:center}.current-version-card{display:flex;min-width:210px;padding:16px 19px;background:var(--navy);border-radius:14px;box-shadow:var(--shadow);flex-direction:column}.current-version-card span{color:#bfd0df;font-size:.7rem;text-transform:uppercase}.current-version-card strong{margin-top:4px;color:#fff;font:700 1.1rem Montserrat}.update-summary-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(390px,.85fr);gap:18px;margin-bottom:18px}.update-release-card,.update-health-card{padding:23px}.update-release-card{display:flex;align-items:flex-start;gap:18px;border-left:6px solid var(--border)}.update-release-card.has-update{border-left-color:var(--grass)}.update-card-icon{display:grid;flex:0 0 58px;width:58px;height:58px;color:var(--navy);background:#e9f1f7;border-radius:16px;place-items:center;font-size:1.35rem}.update-release-card h2,.update-health-card h2,.update-action-card h2{margin:4px 0 7px}.update-release-card p{margin:0}.update-release-meta{display:flex;align-items:center;gap:8px;margin-top:14px;flex-wrap:wrap}.update-release-meta>span:last-child{color:var(--muted);font-size:.75rem}.update-health-heading{display:flex;align-items:center;justify-content:space-between;gap:15px}.update-health-ring{display:grid;flex:0 0 46px;width:46px;height:46px;border-radius:50%;place-items:center}.update-health-ring.is-ready{color:var(--success);background:var(--success-bg)}.update-health-ring.has-failures{color:var(--danger);background:var(--danger-bg)}.update-check-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:16px}.update-check-row{display:flex;align-items:flex-start;gap:9px;padding:10px 11px;background:#f6f8fa;border:1px solid var(--border);border-radius:10px}.update-check-row>i{margin-top:2px}.update-check-row.is-ready>i{color:var(--success)}.update-check-row.has-failure>i{color:var(--danger)}.update-check-row span{display:flex;min-width:0;flex-direction:column}.update-check-row strong{color:var(--navy);font-size:.72rem}.update-check-row small{margin-top:2px;color:var(--muted);font-size:.66rem;overflow-wrap:anywhere}.update-settings-grid{margin-bottom:18px}.update-connection-form{padding:0 23px 23px}.update-connection-form>.panel-header{margin:0 -23px;padding-right:23px;padding-left:23px}.update-github-icon{color:var(--navy);font-size:1.55rem}.update-form-intro{margin:3px 0 18px;color:var(--muted);line-height:1.55}.update-clear-token{color:var(--danger);background:#fff5f5;border-color:#efc8cc}.update-form-actions{display:flex;gap:10px;margin-top:19px;flex-wrap:wrap}.update-action-card{padding:23px;height:max-content}.update-action-card>form:first-of-type{margin:16px 0}.update-package-facts{display:grid;gap:0;margin:17px 0;border-top:1px solid var(--border)}.update-package-facts>div{display:flex;justify-content:space-between;gap:15px;padding:10px 0;border-bottom:1px solid var(--border)}.update-package-facts span{color:var(--muted);font-size:.72rem}.update-package-facts strong{max-width:62%;color:var(--navy);font-size:.72rem;text-align:right;overflow-wrap:anywhere}.update-release-notes{margin:14px 0;padding:11px 13px;background:#f6f8fa;border:1px solid var(--border);border-radius:10px}.update-release-notes summary{color:var(--navy);font:700 .75rem Montserrat;cursor:pointer}.update-release-notes div{max-height:260px;margin-top:11px;padding-right:7px;color:var(--muted);font-size:.74rem;line-height:1.55;overflow:auto}.update-install-form{display:grid;gap:11px;margin-top:16px;padding:15px;background:#edf5df;border:1px solid #c9dda8;border-radius:12px}.update-install-form .field{margin:0}.update-action-note{display:flex;gap:10px;margin:16px 0 0;padding:12px;color:#536575;background:#f3f6f8;border-radius:10px;font-size:.72rem;line-height:1.45}.update-action-note i{margin-top:2px;color:var(--navy)}.update-history-panel{margin-bottom:18px;overflow:hidden}.update-history-table td:nth-child(2),.update-history-table td:last-child{min-width:190px}.update-history-table td:nth-child(2) strong,.update-history-table td:nth-child(2) small,.update-history-table td:last-child span,.update-history-table td:last-child small{display:block}.update-history-table td small{margin-top:3px;color:var(--muted)}.update-safety-notice{margin-bottom:0}

@media(max-width:980px){.update-summary-grid{grid-template-columns:1fr}.update-health-card{min-width:0}}
@media(max-width:720px){.update-page-header{align-items:stretch}.current-version-card{min-width:0}.update-summary-grid{grid-template-columns:1fr}.update-release-card{padding:19px;flex-direction:column}.update-health-card{padding:19px}.update-check-list{grid-template-columns:1fr}.update-connection-form{padding-right:18px;padding-left:18px}.update-connection-form>.panel-header{margin-right:-18px;margin-left:-18px;padding-right:18px;padding-left:18px}.update-form-actions{align-items:stretch;flex-direction:column}.update-form-actions .button{width:100%}.update-action-card{padding:19px}.update-package-facts>div{align-items:flex-start;flex-direction:column}.update-package-facts strong{max-width:none;text-align:left}}
@media print{.employee-filter-panel,.location-photo-upload{display:none!important}.employee-print-sheet{font-size:10pt}.employee-print-grid,.employee-print-compensation{break-inside:avoid}}

/* Employee cards keep every detail comfortably inside its panel. */
.employee-profile-hero{padding:28px 30px}
.employee-information-grid{gap:22px;margin-top:22px}
.employee-information-grid>.panel{padding:0 28px 26px;overflow:hidden}
.employee-information-grid>.panel>.panel-header{margin:0 -28px 20px;padding:24px 28px 18px}
.employee-detail-list{padding:0 4px 3px}
.employee-detail-list>div{padding:14px 10px}
.employee-assignment-list,.employee-punch-list{padding:0 3px 3px}
.employee-assignment-list>a,.employee-punch-list>div{padding:14px 15px}
.employee-compensation-panel{margin-top:22px;padding:0 28px 26px;overflow:hidden}
.employee-compensation-panel>.panel-header{margin:0 -28px 20px;padding:24px 28px 18px}
.employee-danger-zone{margin-top:28px;padding:25px 28px}
.employee-danger-zone>.button{min-width:205px;flex:0 0 auto;white-space:nowrap}
.employee-time-panel{margin-top:22px;padding:0 28px 26px;overflow:hidden}.employee-time-panel>.panel-header{margin:0 -28px 20px;padding:24px 28px 18px}
.crew-member-search{margin:0 0 14px;background:#fff}.crew-member-picker-groups{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-bottom:16px}.crew-member-picker-groups>section{min-width:0;padding:13px;background:#f7f9fb;border:1px solid var(--border);border-radius:12px}.crew-member-picker-groups>section>header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:2px 3px 10px}.crew-member-picker-groups>section>header div{display:flex;min-width:0;flex-direction:column}.crew-member-picker-groups>section>header strong{color:var(--navy);font:700 .78rem Montserrat}.crew-member-picker-groups>section>header small{margin-top:3px;color:var(--muted);line-height:1.35}.crew-member-picker-groups>section>header>span{display:grid;flex:0 0 28px;height:28px;color:var(--navy);background:#e7edf3;border-radius:50%;font-weight:700;place-items:center}.crew-member-list{max-height:300px;padding-right:3px}.crew-member-list .check-row{margin:7px 0;padding:11px;background:#fff}.crew-member-list .check-row.is-unavailable{background:#fff4f4;border-color:#e8c1c3}.crew-member-list .check-row.is-unavailable small{color:#9a3d42}.crew-member-empty,.crew-member-no-results{margin:7px 0;padding:18px;color:var(--muted);background:#fff;border:1px dashed var(--border);border-radius:10px;text-align:center}.crew-member-no-results{margin:0 0 16px}.crew-member-search+.crew-member-list{margin-top:12px}
.inline-form-alert{display:flex;align-items:flex-start;gap:10px;margin:0 0 18px;padding:12px 14px;color:#842029;background:#fcebed;border:1px solid #e8b8bc;border-radius:10px;font-weight:600}.inline-form-alert i{margin-top:2px;color:var(--red)}
.release-channel-badge{display:inline-flex;align-items:center;padding:3px 8px;color:#fff;background:var(--red);border-radius:999px;font:700 .62rem Montserrat;letter-spacing:.08em;text-transform:uppercase;vertical-align:middle}
@media(max-width:720px){.employee-profile-hero{padding:22px 18px}.employee-information-grid>.panel,.employee-compensation-panel,.employee-time-panel{padding-right:18px;padding-bottom:20px;padding-left:18px}.employee-information-grid>.panel>.panel-header,.employee-compensation-panel>.panel-header,.employee-time-panel>.panel-header{margin-right:-18px;margin-left:-18px;padding-right:18px;padding-left:18px}.employee-danger-zone{padding:21px 18px}.employee-danger-zone>.button{min-width:0;width:100%}}
@media(max-width:720px){.employee-record-modal{padding:10px}.employee-record-modal .modal-card{max-height:calc(100vh - 20px);padding:22px 16px}.employee-form-section{padding:16px 13px}.employee-form-section .three-columns,.employee-form-section .two-columns{grid-template-columns:1fr}.employee-form-section .span-two{grid-column:auto}}
@media(max-width:720px){.crew-member-picker-groups{grid-template-columns:1fr}.crew-member-list{max-height:240px}}

.time-punch-filters{display:grid;grid-template-columns:minmax(150px,.7fr) minmax(150px,.7fr) minmax(260px,1.5fr) auto;align-items:end}
.report-filters.time-punch-filters .field{max-width:none;min-width:0}
.employee-multi-picker{position:relative}
.employee-multi-picker>summary{display:flex;min-height:44px;align-items:center;gap:10px;padding:10px 13px;color:var(--navy);background:#fff;border:1px solid var(--border);border-radius:9px;cursor:pointer;list-style:none}
.employee-multi-picker>summary::-webkit-details-marker{display:none}.employee-multi-picker>summary span{flex:1;font-weight:700}.employee-multi-picker[open]>summary{border-color:var(--navy);box-shadow:0 0 0 3px rgba(11,45,91,.1)}
.employee-multi-picker-panel{position:absolute;z-index:35;top:calc(100% + 8px);right:0;left:0;min-width:360px;padding:13px;background:#fff;border:1px solid var(--border);border-radius:12px;box-shadow:0 18px 42px rgba(12,35,58,.18)}
.employee-picker-search{display:flex;align-items:center;gap:8px;padding:0 10px;border:1px solid var(--border);border-radius:8px}.employee-picker-search input{width:100%;border:0;box-shadow:none}.employee-picker-actions{display:flex;gap:12px;padding:10px 1px 8px}.employee-picker-actions button{padding:0;color:var(--navy);background:transparent;border:0;font-weight:700;cursor:pointer}.employee-picker-list{display:grid;max-height:330px;overflow:auto;border-top:1px solid var(--border)}
.employee-picker-list>label{display:flex;align-items:center;gap:10px;padding:10px 5px;border-bottom:1px solid var(--border);cursor:pointer}.employee-picker-list>label:hover{background:#f5f7f9}.employee-picker-list input{width:18px;height:18px}.employee-picker-list span{display:flex;min-width:0;flex-direction:column}.employee-picker-list small{color:var(--muted)}
.table-row-actions{display:flex;align-items:center;justify-content:flex-end;gap:7px;white-space:nowrap}
@media(max-width:900px){.time-punch-filters{grid-template-columns:1fr 1fr}.time-punch-filters>.field:nth-child(3){grid-column:1/-1}.employee-multi-picker-panel{min-width:100%}}
@media(max-width:620px){.time-punch-filters{grid-template-columns:1fr}.time-punch-filters>.field:nth-child(3){grid-column:auto}.employee-multi-picker-panel{position:fixed;top:15vh;right:16px;left:16px;min-width:0;max-height:70vh}.employee-picker-list{max-height:48vh}}

/* Maintenance is a connected third workspace with its own workshop visual language. */
.maintenance-workspace-button{display:inline-flex;min-height:38px;align-items:center;gap:8px;padding:8px 14px;color:#2d3c49;background:#fff;border:1px solid #bac5cd;border-radius:0 10px 10px 0;font:700 .72rem Montserrat;white-space:nowrap;box-shadow:0 4px 12px rgba(31,45,56,.06)}
.maintenance-workspace-button:hover,.maintenance-workspace-button.is-active{color:#fff;background:#2d3c49;border-color:#2d3c49}
.maintenance-workspace-button.is-active{box-shadow:inset 0 -3px 0 #d48a16}
.division-toggle+.maintenance-workspace-button{margin-left:-1px}
.workspace-maintenance{--maintenance:#2d3c49;--maintenance-dark:#1f2b34;--maintenance-steel:#60717e;--maintenance-accent:#d48a16;--maintenance-accent-dark:#a96608;--maintenance-soft:#eef2f3;--maintenance-line:#cbd4d9;background:#edf1f2}
.workspace-maintenance h1,.workspace-maintenance h2,.workspace-maintenance h3,.workspace-maintenance a{color:var(--maintenance)}
.workspace-maintenance a:hover{color:var(--maintenance-accent-dark)}
.workspace-maintenance .sidebar{background:linear-gradient(180deg,#202d36 0%,#172128 100%)}
.workspace-maintenance .sidebar:before{background:var(--maintenance-accent)}
.workspace-maintenance .sidebar a,.workspace-maintenance .sidebar .nav-item{color:#d4dfe5}
.workspace-maintenance .sidebar a:hover,.workspace-maintenance .sidebar .nav-item:hover,.workspace-maintenance .sidebar .nav-item.is-active{color:#fff}
.workspace-maintenance .nav-item.is-active{background:rgba(212,138,22,.17);box-shadow:inset 3px 0 0 var(--maintenance-accent)}
.workspace-maintenance .nav-item:hover{background:rgba(255,255,255,.075)}
.workspace-maintenance .eyebrow{color:var(--maintenance-accent-dark)}
.workspace-maintenance .button-primary{color:#fff;background:var(--maintenance);box-shadow:0 7px 17px rgba(45,60,73,.18)}
.workspace-maintenance .button-primary:hover{color:#fff;background:var(--maintenance-dark);box-shadow:0 9px 20px rgba(45,60,73,.24)}
.workspace-maintenance input:focus,.workspace-maintenance select:focus,.workspace-maintenance textarea:focus{border-color:var(--maintenance);box-shadow:0 0 0 3px rgba(45,60,73,.12)}
.maintenance-nav-context{background:linear-gradient(135deg,rgba(212,138,22,.2),rgba(255,255,255,.05));border-color:rgba(212,138,22,.38)!important}
.maintenance-nav-context>i{color:#ffd084!important;background:rgba(212,138,22,.18)!important}
.maintenance-page-header{position:relative;align-items:center;margin-bottom:22px;padding:27px 29px;color:#fff;background:linear-gradient(118deg,#263641 0%,#344955 69%,#6b572e 140%);border-radius:18px;box-shadow:0 15px 36px rgba(31,43,52,.18);overflow:hidden}
.maintenance-page-header:after{pointer-events:none;position:absolute;right:-52px;bottom:-95px;width:245px;height:245px;border:36px solid rgba(255,255,255,.035);border-radius:50%;content:""}
.maintenance-page-header>div{position:relative;z-index:1}
.maintenance-page-header h1,.maintenance-page-header p{color:#fff}
.maintenance-page-header p{max-width:780px;margin:0;color:#dce4e8}
.maintenance-page-header .eyebrow{color:#ffd18c}
.maintenance-page-header .header-actions{position:relative;z-index:1}
.maintenance-page-header .button-primary{color:#fff;background:var(--maintenance-accent);box-shadow:0 8px 18px rgba(26,20,7,.2)}
.maintenance-page-header .button-primary:hover{background:var(--maintenance-accent-dark)}
.maintenance-page-header .button-secondary{color:#fff;background:rgba(255,255,255,.09);border-color:rgba(255,255,255,.35)}
.maintenance-page-header .button-secondary:hover{background:rgba(255,255,255,.17)}
.maintenance-metrics{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:13px;margin-bottom:18px}
.maintenance-metrics>a,.maintenance-metrics>article{position:relative;display:flex;min-width:0;min-height:123px;flex-direction:column;justify-content:flex-end;padding:20px;color:var(--maintenance);background:#fff;border:1px solid var(--maintenance-line);border-radius:15px;box-shadow:0 7px 18px rgba(35,49,59,.06);overflow:hidden}
.maintenance-metrics>a:before,.maintenance-metrics>article:before{position:absolute;top:17px;right:17px;width:34px;height:34px;background:var(--maintenance-soft);border-radius:10px;content:""}
.maintenance-metrics i{position:absolute;z-index:1;top:26px;right:26px;color:var(--maintenance-steel)}
.maintenance-metrics>a>div,.maintenance-metrics>article>div{display:flex;min-width:0;flex-direction:column;padding-right:25px}
.maintenance-metrics span{color:#4e5e68;font:700 .72rem Montserrat;line-height:1.25}
.maintenance-metrics small{margin-top:4px;color:#687680;font:600 .61rem Montserrat;line-height:1.25;letter-spacing:.045em;text-transform:uppercase}
.maintenance-metrics strong{display:block;margin-top:6px;font:700 1.55rem/1 Montserrat;white-space:nowrap}
.maintenance-metrics .has-warning{border-color:#e2c17f;background:#fffaf0}
.maintenance-metrics .has-danger{border-color:#e6b0b3;background:#fff7f7}
.maintenance-health-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:13px;margin-bottom:18px}
.maintenance-health-card{position:relative;display:flex;min-width:0;min-height:132px;align-items:flex-end;padding:19px;color:var(--maintenance);background:#fff;border:1px solid var(--maintenance-line);border-top:4px solid var(--maintenance);border-radius:15px;box-shadow:0 7px 18px rgba(35,49,59,.06);overflow:hidden}
.maintenance-health-card>i{position:absolute;top:18px;right:18px;display:grid;width:36px;height:36px;color:var(--maintenance-steel);background:var(--maintenance-soft);border-radius:10px;place-items:center}
.maintenance-health-card>div{display:flex;min-width:0;flex-direction:column;padding-right:18px}
.maintenance-health-card span{color:#4e5e68;font:700 .7rem/1.25 Montserrat}.maintenance-health-card strong{margin:7px 0 3px;font:700 1.55rem/1 Montserrat;white-space:nowrap}.maintenance-health-card small{color:#687680;font:600 .61rem/1.3 Montserrat;letter-spacing:.035em;text-transform:uppercase}
.maintenance-health-card.has-warning{border-top-color:#d48a16;background:#fffaf0}.maintenance-health-card.has-danger{border-top-color:#c83a3f;background:#fff7f7}
.maintenance-insights-grid{display:grid;grid-template-columns:1.05fr 1.25fr .9fr;gap:18px;margin-bottom:18px}
.maintenance-chart-panel{min-width:0;padding:0 22px 22px;overflow:hidden}
.maintenance-chart-panel>.panel-header{margin:0 -22px 20px;padding:20px 22px 16px;background:linear-gradient(90deg,#f2f5f6,#fff);border-bottom:1px solid var(--maintenance-line)}
.maintenance-chart-panel>.panel-header>strong{color:var(--maintenance-steel);font:700 .72rem Montserrat;text-transform:uppercase}
.fleet-health-chart{display:grid;grid-template-columns:155px minmax(0,1fr);align-items:center;gap:24px}
.maintenance-donut{display:grid;width:150px;height:150px;background:conic-gradient(#c83a3f 0 calc(var(--chart-value) * 1%),#d8e0e4 calc(var(--chart-value) * 1%) 100%);border-radius:50%;place-items:center;box-shadow:inset 0 0 0 1px rgba(45,60,73,.08)}
.maintenance-donut:before{grid-area:1/1;width:98px;height:98px;background:#fff;border-radius:50%;box-shadow:0 3px 12px rgba(45,60,73,.1);content:""}.maintenance-donut>div{z-index:1;grid-area:1/1;display:flex;flex-direction:column;text-align:center}.maintenance-donut strong{font:700 1.45rem Montserrat}.maintenance-donut span{color:var(--muted);font:700 .65rem Montserrat;text-transform:uppercase}
.maintenance-chart-legend{display:grid;gap:10px}.maintenance-chart-legend span{display:grid;grid-template-columns:12px 32px minmax(0,1fr);align-items:center;gap:7px;color:var(--muted);font-size:.74rem}.maintenance-chart-legend i{width:10px;height:10px;border-radius:50%}.maintenance-chart-legend .is-available{background:#4f8a75}.maintenance-chart-legend .is-assigned{background:#60717e}.maintenance-chart-legend .is-down{background:#c83a3f}.maintenance-chart-legend strong{color:var(--maintenance)}
.maintenance-bar-chart{display:grid;gap:12px}.maintenance-bar-chart>div>header{display:flex;justify-content:space-between;gap:12px;margin-bottom:5px;color:var(--muted);font-size:.72rem}.maintenance-bar-track{display:block;height:9px;background:#e8edef;border-radius:999px;overflow:hidden}.maintenance-bar-track>i{display:block;width:var(--bar-value);height:100%;background:linear-gradient(90deg,var(--maintenance),var(--maintenance-accent));border-radius:inherit}
.maintenance-age-chart{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));align-items:end;gap:11px;min-height:185px}.maintenance-age-chart>div{display:grid;grid-template-rows:122px auto auto;align-items:end;gap:5px;text-align:center}.maintenance-age-column{display:flex;height:122px;align-items:flex-end;justify-content:center;background:linear-gradient(180deg,#f7f9f9,#eef2f3);border-radius:8px 8px 3px 3px;overflow:hidden}.maintenance-age-column>i{display:block;width:100%;height:max(5px,var(--bar-value));background:var(--maintenance-steel);border-radius:7px 7px 0 0}.maintenance-age-column>i.is-aging{background:linear-gradient(180deg,#d48a16,#c83a3f)}.maintenance-age-chart strong{font:700 .85rem Montserrat}.maintenance-age-chart small{color:var(--muted);font-size:.6rem;line-height:1.2}
.maintenance-dashboard-grid{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(310px,.8fr);gap:18px;margin-bottom:18px}
.maintenance-dashboard-grid.secondary{grid-template-columns:repeat(2,minmax(0,1fr))}
.maintenance-command-panel{padding:0 22px 21px;overflow:hidden}
.maintenance-command-panel>.panel-header{margin:0 -22px 4px;padding:20px 22px 15px;background:linear-gradient(90deg,#f2f5f6,#fff);border-bottom:1px solid var(--maintenance-line)}
.workshop-order-list{display:grid;gap:9px;margin-top:12px}
.workshop-order-list>a,.workshop-order-list>article{position:relative;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:13px;padding:13px 14px 13px 19px;color:var(--maintenance);background:#fff;border:1px solid var(--maintenance-line);border-radius:11px;overflow:hidden}
.workshop-order-list>a:hover{background:#f6f8f8;border-color:#9eacb5}
.workshop-order-list strong,.workshop-order-list span{display:block}
.workshop-order-list small{color:var(--muted)}
.workshop-order-meta{text-align:right}
.priority-rail:before{position:absolute;top:0;bottom:0;left:0;width:5px;background:#8c9aa4;content:""}
.priority-rail.priority-high:before,.priority-rail.priority-urgent:before{background:#c83a3f}
.priority-rail.priority-medium:before{background:var(--maintenance-accent)}
.priority-rail.priority-low:before{background:#4f8a75}
.priority-chip{display:inline-flex;padding:4px 8px;border-radius:999px;background:#e8edef;color:#53626c;font:700 .62rem Montserrat;text-transform:uppercase}
.priority-chip.priority-high,.priority-chip.priority-urgent{color:#a9232b;background:#fbe7e8}
.priority-chip.priority-medium{color:#8a5700;background:#fff1d4}
.priority-chip.priority-low{color:#21624d;background:#e5f3ed}
.maintenance-upcoming-list,.schedule-workshop-list{display:grid;gap:9px;margin-top:12px}
.maintenance-upcoming-list>a,.maintenance-upcoming-list>div,.schedule-workshop-list>a{display:grid;grid-template-columns:76px minmax(0,1fr) auto;align-items:center;gap:13px;padding:12px 13px;color:var(--maintenance);background:#f7f9f9;border:1px solid var(--maintenance-line);border-radius:11px}
.maintenance-upcoming-list .is-overdue,.schedule-workshop-list .is-overdue{background:#fff5f5;border-color:#e4b8ba}
.maintenance-upcoming-list strong,.schedule-workshop-list strong{display:block}
.maintenance-upcoming-list small,.schedule-workshop-list small{color:var(--muted)}
.asset-type-breakdown{display:grid;grid-template-columns:repeat(auto-fit,minmax(145px,1fr));gap:10px;margin-top:12px}
.asset-type-breakdown>a{display:flex;min-width:0;align-items:center;gap:11px;padding:15px 13px;background:#f5f7f8;border:1px solid var(--maintenance-line);border-radius:11px}
.asset-type-breakdown i{display:grid;flex:0 0 38px;width:38px;height:38px;color:#fff;background:var(--maintenance);border-radius:10px;place-items:center}
.asset-type-breakdown span{display:flex;min-width:0;flex-direction:column}
.asset-type-breakdown strong{font:700 1.1rem Montserrat}
.asset-type-breakdown small{overflow:hidden;color:var(--muted);text-overflow:ellipsis;white-space:nowrap}
.asset-activity-list{display:grid;gap:0;margin-top:5px}
.asset-activity-list>a,.asset-activity-list>div{display:grid;grid-template-columns:34px minmax(0,1fr) auto;align-items:center;gap:11px;padding:11px 2px;border-bottom:1px solid var(--maintenance-line)}
.asset-activity-list i{display:grid;width:32px;height:32px;color:var(--maintenance);background:var(--maintenance-soft);border-radius:9px;place-items:center}
.asset-activity-list span{display:flex;min-width:0;flex-direction:column}
.asset-activity-list small{color:var(--muted)}
.workshop-filter-bar{display:grid;grid-template-columns:minmax(250px,1.6fr) repeat(3,minmax(130px,.65fr)) auto;align-items:end;gap:12px;margin-bottom:18px;padding:17px 18px}
.workshop-filter-bar .field{min-width:0;margin:0}
.workshop-filter-bar>.button{min-width:96px}
.workshop-search{position:relative}
.workshop-search>i{position:absolute;z-index:1;bottom:14px;left:13px;color:#77858f}
.workshop-search input{padding-left:39px}
.workshop-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:0 0 16px;padding:0;color:var(--muted);font-size:.78rem}
.workshop-summary article{border-color:var(--maintenance-line);border-top:4px solid var(--maintenance);box-shadow:0 5px 14px rgba(35,49,59,.04)}
.workshop-summary article:last-child{border-top-color:var(--maintenance-accent)}
.workshop-asset-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.workshop-asset-card{position:relative;display:grid;min-width:0;color:var(--maintenance);background:#fff;border:1px solid var(--maintenance-line);border-radius:16px;box-shadow:0 8px 20px rgba(35,49,59,.07);overflow:hidden;transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease}
.workshop-asset-card:hover{color:var(--maintenance);border-color:#96a5af;box-shadow:0 13px 28px rgba(35,49,59,.13);transform:translateY(-2px)}
.workshop-asset-card.has-alert{border-color:#d6ae61}
.workshop-asset-photo{position:relative;display:grid;height:165px;color:#fff;background:linear-gradient(135deg,#344955,#202d36);place-items:center;overflow:hidden}
.workshop-asset-photo img{width:100%;height:100%;object-fit:cover}
.workshop-asset-photo>i{font-size:2.2rem;opacity:.66}
.workshop-asset-photo .badge{position:absolute;top:12px;right:12px}
.workshop-asset-body{display:grid;gap:12px;padding:17px 18px 18px}
.workshop-asset-body>header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}
.workshop-asset-body>header>div{min-width:0}
.workshop-asset-body>header p{margin:4px 0 0}
.workshop-asset-body>footer{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.workshop-asset-body>footer .button{width:100%}
.workshop-asset-body>footer .button-primary{color:#fff}
.workshop-asset-body h2{margin:0;font-size:1.05rem}
.workshop-asset-body .mono{color:var(--maintenance-accent-dark)}
.workshop-asset-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.workshop-asset-facts>span{display:flex;min-width:0;flex-direction:column;padding:9px 10px;background:#f3f6f7;border-radius:9px}
.workshop-asset-facts small{color:var(--muted);font-size:.65rem;text-transform:uppercase}
.workshop-asset-facts strong{overflow:hidden;font-size:.76rem;text-overflow:ellipsis;white-space:nowrap}
.asset-workshop-alert{display:flex;align-items:center;gap:10px;margin-top:1px;padding:10px;color:#805100;background:#fff4da;border:1px solid transparent;border-radius:9px;font-size:.73rem}.asset-workshop-alert:hover{color:#6e4400;background:#ffedc4;border-color:#e2bc6c}.asset-workshop-alert>span{display:flex;min-width:0;flex:1;flex-direction:column}.asset-workshop-alert>span small{overflow:hidden;color:#8b6a2e;text-overflow:ellipsis;white-space:nowrap}.asset-workshop-alert>i:last-child{margin-left:auto;font-size:.68rem}
.asset-workshop-hero{display:grid;grid-template-columns:80px minmax(0,1fr);align-items:center;gap:12px 16px;margin-bottom:14px;padding:16px 18px;color:#fff;background:linear-gradient(125deg,#1f2b34,#3b515e);border-radius:14px;box-shadow:0 8px 20px rgba(31,43,52,.14)}
.asset-workshop-hero-photo{display:grid;width:80px;height:80px;color:#fff;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.17);border-radius:10px;overflow:hidden;place-items:center}
.asset-workshop-hero-photo img{width:100%;height:100%;object-fit:cover}
.asset-workshop-hero-photo i{font-size:2.1rem;opacity:.65}
.asset-workshop-title h1,.asset-workshop-title p{color:#fff}
.asset-workshop-hero a,.maintenance-work-order-hero a{color:#e1e9ed}
.asset-workshop-hero a:hover,.maintenance-work-order-hero a:hover{color:#fff}
.asset-workshop-title{min-width:0}.asset-workshop-title .back-link{margin:0 0 3px;font-size:.68rem}.asset-workshop-title .eyebrow{font-size:.62rem}.asset-workshop-title h1{margin:2px 0 3px;font-size:1.5rem;line-height:1.15;overflow-wrap:anywhere}
.asset-workshop-title p{margin:0;color:#d4dde2;font-size:.76rem;line-height:1.3;overflow-wrap:anywhere}
.asset-workshop-hero-tags{display:flex;align-items:center;gap:6px;flex-wrap:wrap;margin-top:6px}
.asset-workshop-hero-tags>span:not(.badge){padding:4px 8px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.14);border-radius:7px;font-size:.68rem}
.asset-hero-popover{position:relative;display:inline-flex;align-items:center;gap:5px;cursor:help;outline:none}.asset-hero-popover:focus{box-shadow:0 0 0 2px rgba(255,255,255,.35)}
.asset-hero-popover-card{position:absolute;z-index:30;top:calc(100% + 10px);left:0;display:none;width:min(340px,80vw);padding:12px;color:var(--text);text-align:left;background:#fff;border:1px solid var(--border);border-radius:11px;box-shadow:0 14px 35px rgba(18,31,40,.25)}
.asset-hero-popover:hover .asset-hero-popover-card,.asset-hero-popover:focus .asset-hero-popover-card,.asset-hero-popover:focus-within .asset-hero-popover-card{display:grid;gap:7px}.asset-hero-popover-card>strong{color:var(--navy);font-size:.72rem}.asset-hero-popover-card>small{color:var(--muted)}.asset-hero-popover-card>a{display:flex;flex-direction:column;padding:8px;color:var(--navy);background:#f6f8fa;border-radius:7px}.asset-hero-popover-card>a:hover{color:var(--navy);background:#edf2f5}.asset-hero-popover-card>a small{color:var(--muted);font-size:.62rem}
.asset-workshop-actions{display:flex;grid-column:1/-1;align-items:stretch;justify-content:flex-start;gap:6px;flex-wrap:wrap}.asset-workshop-actions .button{min-width:0;min-height:34px;padding:7px 10px;font-size:.7rem;line-height:1.2}
.asset-workshop-actions .button-secondary{color:#fff;background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.32)}
.asset-status-selector{display:grid;grid-template-columns:minmax(190px,.7fr) minmax(0,2fr) auto;align-items:center;gap:14px 20px;margin-bottom:17px;padding:17px 19px;border-color:var(--maintenance-line)}.asset-status-heading h2{margin:1px 0 2px;font-size:1.02rem}.asset-status-heading p{margin:0;color:var(--muted);font-size:.72rem}.asset-status-options{display:grid;grid-template-columns:repeat(4,minmax(125px,1fr));gap:8px}.asset-status-choice{position:relative;display:flex;min-width:0;align-items:center;gap:9px;padding:10px 11px;color:var(--maintenance);background:#f5f7f8;border:1px solid var(--maintenance-line);border-radius:10px;cursor:pointer;transition:border-color .16s ease,background .16s ease,box-shadow .16s ease}.asset-status-choice:hover{border-color:#9eacb5;background:#fff}.asset-status-choice:has(input:checked){background:#fff;border-color:var(--maintenance-accent);box-shadow:0 0 0 2px rgba(212,138,22,.15)}.asset-status-choice input{position:absolute;width:1px;height:1px;opacity:0}.asset-status-choice>i{display:grid;width:32px;height:32px;flex:0 0 32px;color:#fff;background:#71808a;border-radius:9px;place-items:center}.asset-status-choice.status-available>i{background:#16856b}.asset-status-choice.status-unavailable>i{background:#d48a16}.asset-status-choice.status-out_for_maintenance>i{background:#c83a3f}.asset-status-choice.status-retired>i{background:#596670}.asset-status-choice>span{display:flex;min-width:0;flex-direction:column}.asset-status-choice strong{font-size:.73rem}.asset-status-choice small{overflow:hidden;color:var(--muted);font-size:.62rem;text-overflow:ellipsis;white-space:nowrap}.asset-status-detail{display:none;grid-column:2;padding:12px;background:#f5f7f8;border:1px solid var(--maintenance-line);border-radius:10px}.asset-status-detail .field{width:100%;margin:0}.asset-status-detail .field>small{margin-top:5px;color:var(--muted)}.asset-status-selector:has(input[name=status][value=unavailable]:checked) .asset-assignment-detail,.asset-status-selector:has(input[name=status][value=out_for_maintenance]:checked) .asset-maintenance-detail{display:flex}.asset-record-edit label:has(>select[name=status]){display:none}
.asset-workshop-tabs{margin-bottom:18px;padding:5px;background:#fff;border:1px solid var(--maintenance-line);border-radius:13px;box-shadow:0 5px 15px rgba(35,49,59,.05)}
.asset-workshop-tabs a{border-radius:9px}
.asset-workshop-tabs a.is-active{color:#fff;background:var(--maintenance)}
.asset-overview-grid{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(310px,.75fr);gap:18px}
.asset-overview-grid>.panel,.asset-record-edit,.asset-upload-panel{padding:0 22px 22px;overflow:hidden}
.asset-overview-grid>.panel>.panel-header,.asset-record-edit>.panel-header,.asset-upload-panel>.panel-header{margin:0 -22px 18px;padding:20px 22px 15px;background:#f5f7f8}
.asset-fact-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.asset-fact-grid>div{display:flex;min-width:0;flex-direction:column;padding:12px;background:#f3f6f7;border:1px solid #e0e6e9;border-radius:10px}
.asset-fact-grid span{color:var(--muted);font-size:.67rem;font-weight:700;text-transform:uppercase}
.asset-fact-grid strong{margin-top:3px;overflow-wrap:anywhere}
.asset-description{margin-top:14px;padding:14px 15px;background:#fbfcfc;border-left:4px solid var(--maintenance-accent);border-radius:8px}
.asset-description p:last-child{margin-bottom:0}
.four-columns{grid-template-columns:repeat(4,minmax(0,1fr))}
.asset-document-layout{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(310px,.7fr);gap:18px}
.asset-document-list{display:grid;gap:9px}
.asset-document-list>a,.asset-document-list>article{display:grid;grid-template-columns:62px minmax(0,1fr) auto;align-items:center;gap:13px;padding:10px 12px;color:var(--maintenance);background:#fff;border:1px solid var(--maintenance-line);border-radius:11px}
.asset-document-list>a:hover,.asset-document-list>article:hover{background:#f6f8f8;border-color:#9eacb5}
.asset-document-list.compact>a,.asset-document-list.compact>article{grid-template-columns:45px minmax(0,1fr) auto}
.asset-document-thumb{display:grid;width:62px;height:48px;color:#fff;background:#e5ebee;border-radius:8px;overflow:hidden;place-items:center}
.asset-document-thumb img{width:100%;height:100%;object-fit:cover}
.asset-document-thumb.is-file{color:var(--maintenance);background:var(--maintenance-soft)}
.asset-document-list.compact .asset-document-thumb{width:45px;height:40px}
.asset-document-list span{display:flex;min-width:0;flex-direction:column}
.asset-document-list strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.asset-document-list small{color:var(--muted)}
.maintenance-record-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.maintenance-record-grid>.panel{padding:0 20px 20px;overflow:hidden}
.maintenance-record-grid>.panel>.panel-header{margin:0 -20px 14px;padding:18px 20px 14px;background:#f5f7f8}
.maintenance-schedule-list{display:grid;gap:9px}
.maintenance-schedule-list>div,.maintenance-schedule-list>a{display:grid;grid-template-columns:92px minmax(0,1fr) auto;align-items:center;gap:12px;padding:11px 12px;background:#f7f9f9;border:1px solid var(--maintenance-line);border-radius:10px}
.maintenance-schedule-list>.is-overdue{background:#fff5f5;border-color:#e4b8ba}
.maintenance-schedule-list span{display:flex;min-width:0;flex-direction:column}
.maintenance-schedule-list small{color:var(--muted)}
.asset-activity-timeline{position:relative;display:grid;gap:0;margin:4px 0}
.asset-activity-timeline:before{position:absolute;top:18px;bottom:18px;left:18px;width:2px;background:var(--maintenance-line);content:""}
.asset-activity-timeline>article,.asset-activity-timeline>div{position:relative;display:grid;grid-template-columns:37px minmax(0,1fr) auto;gap:13px;padding:12px 4px}
.asset-activity-timeline i{z-index:1;display:grid;width:37px;height:37px;color:#fff;background:var(--maintenance);border:4px solid #fff;border-radius:50%;place-items:center;font-size:.72rem}
.asset-activity-timeline span{display:flex;min-width:0;flex-direction:column}
.asset-activity-timeline small,.asset-activity-timeline time{color:var(--muted);font-size:.72rem}
.maintenance-work-order-table{overflow:hidden}
.maintenance-work-order-table .table-toolbar{padding:18px 20px}
.maintenance-work-order-table table{min-width:980px}
.maintenance-work-order-table td{vertical-align:middle}
.maintenance-work-order-hero{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:20px;align-items:center;margin-bottom:18px;padding:25px 28px;color:#fff;background:linear-gradient(125deg,#202d36,#405562);border-radius:18px;box-shadow:0 14px 34px rgba(31,43,52,.18)}
.maintenance-work-order-hero h1,.maintenance-work-order-hero p{color:#fff}
.maintenance-work-order-hero h1{margin:2px 0 5px}
.maintenance-work-order-hero p{margin:0;color:#d8e0e4}
.work-order-hero-actions{display:flex;gap:9px;flex-wrap:wrap;justify-content:flex-end}
.work-order-hero-actions .button-secondary{color:#fff;background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.32)}
.work-order-summary-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:18px 0 22px}
.work-order-summary-grid>div,.work-order-summary-grid>article{display:flex;min-width:0;flex-direction:column;padding:11px 12px;color:var(--maintenance);background:#fff;border-radius:10px}
.work-order-summary-grid span{color:var(--muted);font-size:.64rem;font-weight:700;text-transform:uppercase}
.work-order-summary-grid strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.maintenance-work-order-layout{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(390px,.7fr);gap:22px}
.maintenance-work-order-main,.maintenance-work-order-side{display:grid;align-content:start;gap:18px}
.maintenance-card-panel,.work-order-cost-card,.work-order-update-panel{padding:0 24px 24px;overflow:hidden}
.maintenance-card-panel>.panel-header{margin:0 -24px 20px;padding:21px 24px 16px;background:#f5f7f8;border-bottom:1px solid var(--maintenance-line)}
.work-order-cost-card{padding-top:23px}.work-order-update-panel{padding-top:0}
.work-order-panel-heading{margin:0 -24px 22px;padding:22px 24px 18px;background:#f5f7f8;border-bottom:1px solid var(--maintenance-line)}
.work-order-panel-heading h2{margin:3px 0 5px}.work-order-panel-heading p{margin:0;color:var(--muted);font-size:.75rem;line-height:1.45}.work-order-prose{color:#34454f;line-height:1.65}
.work-order-form-section{display:grid;gap:12px;margin:0;padding:0 0 19px;border:0;border-bottom:1px solid var(--maintenance-line)}.work-order-form-section+.work-order-form-section{padding-top:18px}.work-order-form-section legend{margin-bottom:10px;padding:0;color:var(--maintenance);font:700 .72rem Montserrat;letter-spacing:.055em;text-transform:uppercase}.work-order-form-section .field{margin:0}
.work-order-update-panel form{display:grid;gap:0}.work-order-update-panel form>.button{margin-top:20px}
.work-order-upload{display:grid;grid-template-columns:minmax(150px,1fr) minmax(135px,.65fr) minmax(170px,1fr) auto;align-items:end;gap:12px;margin-top:18px;padding:18px;background:#f5f7f8;border:1px solid var(--maintenance-line);border-radius:11px;overflow:hidden}.work-order-upload .field{margin:0}.work-order-upload .button{min-height:44px}
.work-order-scope dl{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 18px;margin:0}
.work-order-scope dl>div{display:grid;grid-template-columns:115px minmax(0,1fr);gap:9px;padding:10px 0;border-bottom:1px solid var(--maintenance-line)}
.work-order-scope dt{color:var(--muted)}
.work-order-scope dd{margin:0;font-weight:700;overflow-wrap:anywhere}
.completion-note{margin-top:14px;padding:14px;color:#27614e;background:#ebf6f1;border:1px solid #bedbce;border-radius:10px}
.work-order-cost-card>div{display:grid;grid-template-columns:1fr auto;gap:8px;padding:9px 1px;border-bottom:1px solid var(--maintenance-line)}
.work-order-cost-card>div:last-child{font-size:1.05rem;border-bottom:0}
.asset-danger-zone{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-top:22px;padding:22px 24px;border-color:#e1a9ad;border-left:5px solid #c83a3f;background:#fff8f8}.asset-danger-zone h2{margin:3px 0 6px;color:#97262d}.asset-danger-zone p{max-width:760px;margin:0;color:#765157;line-height:1.5}
.maintenance-activity-panel{padding:0 22px 22px;overflow:hidden}.maintenance-activity-panel>.panel-header{margin:0 -22px 8px;padding:20px 22px 16px;background:#f5f7f8;border-bottom:1px solid var(--maintenance-line)}
.maintenance-schedule-overview{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:18px}
.maintenance-schedule-overview>.panel{padding:0 21px 21px;overflow:hidden}
.maintenance-schedule-overview>.panel>.panel-header{margin:0 -21px 15px;padding:19px 21px 14px;background:#f5f7f8}
.maintenance-date-filter{grid-template-columns:minmax(180px,.7fr) auto;justify-content:start}
.vendor-filter-bar{grid-template-columns:minmax(250px,1fr) minmax(160px,.38fr) minmax(130px,.28fr) auto}
.vendor-directory-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.vendor-card{position:relative;padding:19px;background:#fff;border:1px solid var(--maintenance-line);border-radius:15px;box-shadow:0 7px 19px rgba(35,49,59,.06)}
.vendor-card.is-inactive{opacity:.68;background:#f2f4f5}
.vendor-card>header{display:grid;grid-template-columns:54px minmax(0,1fr) auto;align-items:start;gap:15px}
.vendor-mark{display:grid;width:54px;height:54px;color:#fff;background:var(--maintenance,#2d3c49);border-radius:13px;place-items:center;font:700 1.1rem Montserrat}
.vendor-card>header>div:nth-child(2){min-width:0}
.vendor-card h2{margin:2px 0 5px;font-size:1rem}
.vendor-contact-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:15px;padding-top:12px;border-top:1px solid var(--maintenance-line)}
.vendor-contact-grid>div{display:flex;min-width:0;flex-direction:column;padding:8px 9px;background:#f7f9f9;border-radius:8px}
.vendor-contact-grid span{color:var(--muted);font-size:.64rem;text-transform:uppercase}
.vendor-contact-grid strong{overflow:hidden;font-size:.76rem;text-overflow:ellipsis;white-space:nowrap}
.vendor-contact-grid i{width:17px;color:var(--maintenance-accent-dark,#a96608)}
.vendor-usage{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px;margin-top:9px}
.vendor-usage>span{display:flex;flex-direction:column;padding:9px;background:#f2f5f6;border-radius:8px;text-align:center}
.vendor-usage small{color:var(--muted);font-size:.62rem;text-transform:uppercase}
.vendor-notes{margin:10px 0 0;padding:11px;color:var(--muted);background:#fafbfb;border-left:3px solid var(--maintenance-accent,#d48a16);border-radius:7px;font-size:.76rem}
.vendor-card>footer{display:flex;align-items:flex-start;justify-content:flex-end;gap:8px;margin-top:12px;padding-top:12px;border-top:1px solid var(--maintenance-line)}
.vendor-card>footer details{flex:1}
.vendor-card>footer details>form{display:grid;gap:12px;margin-top:12px;padding:14px;background:#f5f7f8;border-radius:10px}
.maintenance-print-sheet{max-width:960px;margin:25px auto;padding:44px 50px;color:#18252d;background:#fff;border-top:10px solid #2d3c49;box-shadow:0 15px 45px rgba(31,43,52,.15)}
.maintenance-print-sheet>header{display:grid;grid-template-columns:190px minmax(0,1fr) auto;align-items:center;gap:24px;padding-bottom:19px;border-bottom:1px solid #cbd4d9}
.maintenance-print-sheet>header>img{width:185px;max-height:64px;object-fit:contain;object-position:left center}
.maintenance-print-sheet>header>div{min-width:0}
.maintenance-print-sheet>header h1{margin:2px 0;color:#2d3c49;font-size:1.8rem}
.maintenance-print-sheet>header p{margin:0}
.maintenance-print-sheet>header>strong{padding:7px 11px;color:#6d4703;background:#fff1d4;border:1px solid #e6c67f;border-radius:999px;font:700 .68rem Montserrat;text-transform:uppercase;white-space:nowrap}
.maintenance-print-title{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;padding-bottom:18px;border-bottom:3px solid #2d3c49}
.maintenance-print-title h1{margin:2px 0;color:#2d3c49}
.maintenance-print-title>span{padding:7px 11px;color:#fff;background:#d48a16;border-radius:7px;font:700 .72rem Montserrat;text-transform:uppercase}
.maintenance-print-facts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:20px 0}
.maintenance-print-facts>div{display:flex;flex-direction:column;padding:12px;background:#eef2f3;border-radius:8px}
.maintenance-print-facts span{color:#65747e;font-size:.65rem;text-transform:uppercase}
.maintenance-print-section{margin:20px 0;padding-top:16px;border-top:1px solid #cbd4d9;break-inside:avoid}
.maintenance-print-section h2{color:#2d3c49}
.maintenance-print-sheet table{width:100%;border-collapse:collapse;font-size:.78rem}
.maintenance-print-sheet th{padding:8px 9px;color:#fff;background:#2d3c49;text-align:left}
.maintenance-print-sheet td{padding:8px 9px;border-bottom:1px solid #dce3e6;vertical-align:top}
.maintenance-print-costs{display:grid;grid-template-columns:repeat(5,1fr);gap:9px}
.maintenance-print-costs>div{padding:12px;background:#f5f7f8;border-radius:8px}
.maintenance-print-costs span{display:block;color:#687680;font-size:.65rem;text-transform:uppercase}
.maintenance-print-signoff{display:grid;grid-template-columns:repeat(3,1fr);gap:55px;margin-top:65px}
.maintenance-print-signoff>div{padding-top:8px;border-top:1px solid #2d3c49;color:#687680;font-size:.72rem}

@media(max-width:1500px){.maintenance-page-header{align-items:flex-start;flex-wrap:wrap}.maintenance-page-header .header-actions{flex-wrap:wrap}.maintenance-metrics,.maintenance-health-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.maintenance-insights-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.maintenance-insights-grid>article:last-child{grid-column:1/-1}.workshop-asset-grid,.vendor-directory-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.work-order-upload{grid-template-columns:repeat(2,minmax(0,1fr))}.four-columns{grid-template-columns:repeat(2,minmax(0,1fr))}.workshop-filter-bar{grid-template-columns:minmax(240px,1.2fr) repeat(2,minmax(135px,.6fr));}.workshop-filter-bar>.field:nth-of-type(4){grid-column:1/3}.workshop-filter-bar>.button{grid-column:3}}
@media(max-width:980px){.maintenance-dashboard-grid,.maintenance-dashboard-grid.secondary,.maintenance-insights-grid,.asset-overview-grid,.asset-document-layout,.maintenance-record-grid,.maintenance-work-order-layout,.maintenance-schedule-overview{grid-template-columns:1fr}.maintenance-insights-grid>article:last-child{grid-column:auto}.maintenance-work-order-side{grid-template-columns:1fr}.work-order-upload{grid-template-columns:repeat(2,minmax(0,1fr))}.vendor-filter-bar{grid-template-columns:1fr 1fr}.vendor-filter-bar>.field:first-child{grid-column:1/-1}.vendor-filter-bar>.button{grid-column:2}}
@media(max-width:760px){.maintenance-workspace-button span{display:none}.maintenance-workspace-button{width:40px;padding:8px;justify-content:center}.maintenance-page-header{align-items:stretch;padding:22px 19px;flex-direction:column}.maintenance-page-header .header-actions{width:100%}.maintenance-page-header .header-actions .button{flex:1}.maintenance-metrics,.maintenance-health-grid,.workshop-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.maintenance-metrics>a,.maintenance-metrics>article,.maintenance-health-card{min-height:108px;padding:16px}.fleet-health-chart{grid-template-columns:1fr;justify-items:center}.maintenance-chart-legend{width:100%}.workshop-filter-bar,.vendor-filter-bar{grid-template-columns:1fr}.workshop-filter-bar>.field:nth-of-type(4),.workshop-filter-bar>.button,.vendor-filter-bar>.field:nth-of-type(4),.vendor-filter-bar>.button{grid-column:auto}.workshop-asset-grid,.vendor-directory-grid{grid-template-columns:1fr}.asset-workshop-hero{grid-template-columns:64px minmax(0,1fr);gap:10px 12px;padding:14px;text-align:left}.asset-workshop-hero-photo{width:64px;height:64px}.asset-workshop-title h1{font-size:1.2rem}.asset-workshop-hero-tags{position:relative}.asset-workshop-hero .asset-hero-popover{position:static}.asset-workshop-hero .asset-hero-popover-card{left:0;width:100%}.asset-workshop-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.asset-workshop-actions .button{min-height:40px}.asset-workshop-tabs{overflow-x:auto}.asset-workshop-tabs a{min-width:max-content}.asset-fact-grid,.work-order-summary-grid,.work-order-scope dl,.maintenance-work-order-side{grid-template-columns:1fr}.four-columns,.maintenance-record-grid,.work-order-upload{grid-template-columns:1fr}.asset-danger-zone{align-items:stretch;flex-direction:column}.asset-document-list>a,.asset-document-list>article{grid-template-columns:50px minmax(0,1fr)}.asset-document-list>a>i:last-child,.asset-document-list>article>i:last-child{display:none}.asset-document-thumb{width:50px;height:44px}.maintenance-schedule-list>div,.maintenance-schedule-list>a,.maintenance-upcoming-list>a,.maintenance-upcoming-list>div,.schedule-workshop-list>a{grid-template-columns:70px minmax(0,1fr)}.maintenance-schedule-list>*:last-child,.maintenance-upcoming-list>*:last-child,.schedule-workshop-list>*:last-child{grid-column:auto}.maintenance-work-order-hero{grid-template-columns:1fr;padding:21px 18px}.work-order-hero-actions{justify-content:flex-start}.asset-type-breakdown{grid-template-columns:1fr}.asset-activity-timeline>article,.asset-activity-timeline>div{grid-template-columns:37px minmax(0,1fr)}.asset-activity-timeline time{grid-column:2}.maintenance-print-sheet{margin:0;padding:25px 18px}.maintenance-print-sheet>header{grid-template-columns:1fr;text-align:left}.maintenance-print-sheet>header>img{width:170px}.maintenance-print-title{flex-direction:column}.maintenance-print-facts,.maintenance-print-costs{grid-template-columns:repeat(2,1fr)}}
@media(max-width:500px){.maintenance-metrics{grid-template-columns:1fr 1fr}.maintenance-metrics>a,.maintenance-metrics>article{min-height:96px}.workshop-asset-photo{height:145px}.workshop-order-list>a,.workshop-order-list>article{grid-template-columns:1fr}.workshop-order-meta{text-align:left}.vendor-card>header{grid-template-columns:48px minmax(0,1fr)}.vendor-card>header>.badge{grid-column:2}.vendor-mark{width:48px;height:48px}.vendor-contact-grid{grid-template-columns:1fr}.vendor-usage{grid-template-columns:1fr 1fr}.asset-fact-grid{grid-template-columns:1fr 1fr}.maintenance-print-facts,.maintenance-print-costs{grid-template-columns:1fr 1fr}}
@media(max-width:1180px){.asset-status-selector{grid-template-columns:1fr auto}.asset-status-options{grid-column:1/-1;grid-row:2}.asset-status-detail{grid-column:1/-1;grid-row:3}.asset-status-selector>.button{grid-column:2;grid-row:1}}
@media(max-width:760px){.asset-status-selector{grid-template-columns:1fr}.asset-status-options{grid-column:auto;grid-template-columns:repeat(2,minmax(0,1fr))}.asset-status-detail{grid-column:auto;grid-row:auto}.asset-status-selector>.button{grid-column:auto;grid-row:auto;width:100%}}
@media(max-width:430px){.asset-status-options{grid-template-columns:1fr}}
@media print{.maintenance-print-sheet{max-width:none;margin:0;padding:0;border-top:7px solid #2d3c49;box-shadow:none}.maintenance-print-section{break-inside:avoid}.maintenance-print-signoff{break-inside:avoid}}

/* 1.15.1 dispatch card-stack workshop */
.dispatch-workshop-filter{display:grid;grid-template-columns:minmax(240px,1fr) minmax(190px,.55fr) minmax(170px,.45fr) auto;align-items:end;gap:14px;margin-bottom:16px;padding:18px}.dispatch-workshop-filter h2{margin-bottom:2px}.dispatch-workshop{padding:0;overflow:hidden;border-top:6px solid var(--crew-color)}.dispatch-workshop-header{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,.55fr);gap:20px;align-items:center;padding:20px}.dispatch-workshop-header h2{margin:2px 0}.dispatch-workshop-header p{margin:0}.dispatch-lead-card{display:flex;gap:11px;align-items:center;padding:13px;border:1px solid var(--border);border-radius:11px;background:#f6f8fa}.dispatch-lead-card>i{font-size:1.35rem}.dispatch-lead-card span{display:flex;flex-direction:column}.dispatch-lead-card small{color:var(--muted);text-transform:uppercase;font-size:.62rem}.dispatch-lead-card em{font-size:.69rem;font-style:normal}.dispatch-lead-card.is-ready{color:var(--success);background:#edf8f4;border-color:#b8ded1}.dispatch-lead-card.needs-attention{color:#8b4b00;background:#fff6e8;border-color:#edc177}.dispatch-route-summary{display:flex;gap:9px;flex-wrap:wrap;padding:12px 20px;background:#f4f7fa;border-block:1px solid var(--border)}.dispatch-route-summary span,.dispatch-card-facts span{display:flex;gap:6px;align-items:center;color:var(--muted);font-size:.7rem}.dispatch-route-summary .is-ready,.dispatch-card-facts .is-ready{color:var(--success)}.dispatch-route-summary .needs-attention,.dispatch-card-facts .needs-attention{color:var(--warning)}.dispatch-stack-actions{display:flex;gap:9px;justify-content:flex-end;padding:16px 20px 4px}.dispatch-work-order-stack{display:grid;gap:10px;margin:0;padding:8px 20px 20px;list-style:none}.dispatch-work-order-card{display:grid;grid-template-columns:32px 18px minmax(0,1fr) auto;gap:11px;align-items:center;padding:15px;border:1px solid var(--border);border-left:5px solid var(--crew-color);border-radius:12px;background:#fff;box-shadow:0 3px 12px rgba(11,45,91,.06)}.dispatch-work-order-card[draggable=true]{cursor:grab}.dispatch-work-order-card.is-dragging{opacity:.42}.dispatch-work-order-card.is-complete{opacity:.72;background:#f3f7f5}.dispatch-card-order{display:grid;width:30px;height:30px;color:#fff;background:var(--crew-color);border-radius:50%;font:700 .72rem Montserrat;place-items:center}.dispatch-card-main{min-width:0}.dispatch-card-title{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.dispatch-card-title span:first-child{display:flex;min-width:0;flex-direction:column}.dispatch-card-title small{color:var(--muted);font-size:.65rem}.dispatch-card-title strong{color:var(--navy)}.dispatch-card-main>p{margin:5px 0 8px;color:var(--muted);font-size:.75rem}.dispatch-card-facts{display:flex;gap:12px;flex-wrap:wrap}.dispatch-card-actions{display:flex;gap:7px;align-items:center}.dispatch-card-actions form{margin:0}.dispatch-backup-share{margin:0 20px 20px;padding:12px 14px;background:#f6f8fa;border:1px solid var(--border);border-radius:10px}.dispatch-backup-share summary{color:var(--navy);font-weight:700;cursor:pointer}.dispatch-backup-share form{display:grid;grid-template-columns:1fr 1fr auto;gap:10px;align-items:end;margin-top:12px}
@media(max-width:900px){.dispatch-workshop-filter,.dispatch-workshop-header{grid-template-columns:1fr}.dispatch-work-order-card{grid-template-columns:32px 18px minmax(0,1fr)}.dispatch-card-actions{grid-column:3;justify-content:flex-start}.dispatch-backup-share form{grid-template-columns:1fr}}
@media(max-width:620px){.dispatch-stack-actions{align-items:stretch;flex-direction:column}.dispatch-work-order-card{grid-template-columns:30px minmax(0,1fr)}.dispatch-work-order-card>.drag-handle{display:none}.dispatch-card-main{grid-column:2}.dispatch-card-actions{grid-column:2;flex-wrap:wrap}.dispatch-card-title{flex-direction:column}}
.dispatch-assignment-date{display:grid;grid-template-columns:minmax(0,1fr) minmax(190px,260px) auto;gap:15px;align-items:end;margin-bottom:15px;padding:18px}.dispatch-assignment-date h2{margin:2px 0}.dispatch-assignment-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:15px}.dispatch-assignment-summary article{display:flex;align-items:center;gap:12px;padding:17px;background:#fff;border:1px solid var(--border);border-radius:12px}.dispatch-assignment-summary article>i{display:grid;width:36px;height:36px;color:var(--navy);background:#edf2f5;border-radius:10px;place-items:center}.dispatch-assignment-summary article.needs-attention{background:#fff8ed;border-color:#edc177}.dispatch-assignment-summary article.needs-attention>i{color:#9b5500;background:#ffebca}.dispatch-assignment-summary span{display:flex;flex-direction:column}.dispatch-assignment-summary strong{font:700 1.2rem Montserrat;color:var(--navy)}.dispatch-assignment-summary small{color:var(--muted)}
.dispatch-assignment-board{display:grid;gap:15px}.dispatch-assignment-lane{padding:0;overflow:hidden;border-top:5px solid var(--crew-color)}.dispatch-assignment-lane.is-unassigned{background:#fffcf6}.dispatch-assignment-lane>header{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:18px 20px;background:#f7f9fa;border-bottom:1px solid var(--border)}.dispatch-assignment-lane>header h2{margin:2px 0}.dispatch-lane-capacity{display:flex;align-items:flex-end;flex-direction:column}.dispatch-lane-capacity strong{color:var(--navy);font:700 1.15rem Montserrat}.dispatch-lane-capacity small{color:var(--muted)}.dispatch-assignment-cards{display:grid;gap:9px;padding:15px}.dispatch-assignment-card{display:grid;grid-template-columns:minmax(0,1fr) minmax(250px,340px);gap:16px;align-items:center;padding:14px;border:1px solid var(--border);border-left:5px solid var(--crew-color);border-radius:11px;background:#fff}.dispatch-assignment-card-copy h3{margin:2px 0;color:var(--navy)}.dispatch-assignment-card-copy p{margin:4px 0 8px;color:var(--muted);font-size:.76rem}.dispatch-assignment-card-copy>div{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.dispatch-assignment-card-copy>div>span:not(.badge){color:var(--muted);font-size:.68rem}.dispatch-assignment-form{display:grid;grid-template-columns:minmax(145px,1fr) auto;gap:8px;align-items:end}.dispatch-capacity-check{grid-column:1/-1;display:flex;align-items:center;gap:6px;color:var(--muted);font-size:.66rem}.dispatch-assignment-form .button{min-height:38px}
@media(max-width:850px){.dispatch-assignment-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.dispatch-assignment-card{grid-template-columns:1fr}.dispatch-assignment-date{grid-template-columns:1fr 1fr}.dispatch-assignment-date>div{grid-column:1/-1}}@media(max-width:560px){.dispatch-assignment-summary{grid-template-columns:1fr}.dispatch-assignment-date{grid-template-columns:1fr}.dispatch-assignment-date>div{grid-column:auto}.dispatch-assignment-lane>header{align-items:flex-start;flex-direction:column}.dispatch-lane-capacity{align-items:flex-start}.dispatch-assignment-form{grid-template-columns:1fr}.dispatch-capacity-check{grid-column:auto}}

/* 1.17 Crew Workshop assignment and completed-day detail */
.crew-equipment-list{display:grid;gap:8px;margin:0 0 16px}.crew-equipment-list>article{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px;background:#f6f8fa;border:1px solid var(--border);border-radius:10px}.crew-equipment-list>article>div{display:flex;min-width:0;flex-direction:column}.crew-equipment-list>article span{color:var(--muted);font-size:.7rem}.crew-equipment-list form{margin:0}.crew-day-stop-list{display:grid;gap:8px;grid-column:1/-1;width:100%;margin-top:8px}.crew-day-stop-list article{padding:11px 12px;background:#fff;border:1px solid var(--border);border-radius:10px}.crew-day-stop-list header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.crew-day-stop-list header>div{display:flex;flex-direction:column}.crew-day-stop-list header span:not(.badge){color:var(--muted);font-size:.68rem}.crew-day-stop-list ul{display:grid;gap:5px;margin:9px 0 0;padding:9px 0 0;border-top:1px solid var(--border);list-style:none}.crew-day-stop-list li{display:flex;justify-content:space-between;gap:12px;color:var(--muted);font-size:.72rem}.crew-day-stop-list li strong{color:var(--navy);white-space:nowrap}
.workshop-asset-actions{display:grid!important;grid-template-columns:auto minmax(0,1fr);gap:8px}.workshop-asset-actions .button{justify-content:center}

/* 1.17.1 printable tags, unified search dropdowns, and popup map studios */
.search-dropdown{position:relative;width:100%;min-width:0}.search-dropdown>input{width:100%;padding-right:38px}.search-dropdown::after{position:absolute;top:calc(50% - 2px);right:15px;width:8px;height:8px;content:"";border-right:2px solid var(--muted);border-bottom:2px solid var(--muted);transform:translateY(-50%) rotate(45deg);transition:transform .15s ease;pointer-events:none}.search-dropdown.is-open::after{transform:translateY(15%) rotate(225deg)}.search-dropdown-menu{position:absolute;z-index:160;top:calc(100% + 6px);right:0;left:0;max-height:310px;padding:6px;overflow:auto;background:#fff;border:1px solid #b9c5cf;border-radius:11px;box-shadow:0 18px 44px rgba(11,45,91,.2)}.search-dropdown-option{display:flex;width:100%;align-items:center;justify-content:space-between;gap:12px;padding:11px 12px;color:var(--navy);background:#fff;border:0;border-radius:8px;text-align:left;font:600 .76rem Montserrat;cursor:pointer}.search-dropdown-option:hover,.search-dropdown-option:focus{outline:0;background:#edf3f7}.search-dropdown-option i{color:var(--muted);font-size:.64rem}.search-dropdown-empty{margin:0;padding:14px;color:var(--muted);text-align:center;font-size:.75rem}.search-dropdown-native{display:none!important}
.service-map-launcher{display:flex;min-width:0;align-items:center;justify-content:space-between;gap:18px;margin:22px 0;padding:17px 18px;background:#f2f6f8;border:1px solid var(--border);border-radius:14px}.service-map-launcher>div{display:flex;min-width:0;align-items:center;gap:13px}.service-map-launcher>div>i{display:grid;width:42px;height:42px;flex:0 0 auto;color:#fff;background:var(--navy);border-radius:11px;place-items:center}.service-map-launcher span{display:flex;min-width:0;flex-direction:column}.service-map-launcher small{margin-top:3px;color:var(--muted);overflow-wrap:anywhere}.service-area-fields{grid-template-columns:minmax(0,1fr) 90px}
.modal-map-studio{z-index:190;padding:14px}.modal-map-studio .modal-card{width:min(1420px,100%);max-height:calc(100vh - 28px);padding:24px;overflow:hidden}.map-studio-header,.map-view-header{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;padding-right:45px}.map-studio-header h2,.map-view-header h2{margin:3px 0}.map-studio-header p,.map-view-header p{margin:0;color:var(--muted)}.map-tool-status{display:flex;align-items:center;gap:8px;flex:0 0 auto;padding:8px 11px;color:var(--navy);background:#edf3f7;border-radius:999px;font:700 .68rem Montserrat}.map-studio-toolbar{display:flex;gap:8px;align-items:center;margin:16px 0}.map-studio-toolbar .is-active{color:#fff;background:var(--navy);border-color:var(--navy)}.map-studio-layout{display:grid;grid-template-columns:minmax(260px,330px) minmax(0,1fr);height:min(68vh,720px);min-height:470px;overflow:hidden;border:1px solid var(--border);border-radius:15px}.map-studio-areas{display:flex;min-width:0;overflow:hidden;background:#f6f8fa;border-right:1px solid var(--border);flex-direction:column}.map-studio-areas>header{display:flex;padding:15px 16px;border-bottom:1px solid var(--border);flex-direction:column}.map-studio-areas>header small{margin-top:3px;color:var(--muted);font-size:.7rem}.map-studio-areas>[data-map-area-list]{display:grid;gap:9px;padding:12px;overflow:auto}.map-area-card{display:grid;gap:10px;padding:12px;background:#fff;border:1px solid var(--border);border-radius:11px}.map-area-card.is-selected{border-color:var(--navy);box-shadow:0 0 0 2px rgba(11,45,91,.08)}.map-area-card>div:first-child{display:flex;min-width:0;align-items:flex-start;gap:9px}.map-area-card>div:first-child>span:last-child{display:flex;min-width:0;flex-direction:column}.map-area-card strong{overflow-wrap:anywhere;color:var(--navy);font-size:.76rem}.map-area-card small{margin-top:3px;color:var(--muted);font-size:.66rem}.map-area-card>div:last-child{display:flex;gap:6px}.map-area-swatch{width:13px;height:13px;margin-top:2px;flex:0 0 auto;border:2px solid #fff;border-radius:50%;box-shadow:0 0 0 1px #aebbc5}.map-studio-canvas-wrap{display:grid;min-width:0;min-height:0;grid-template-rows:minmax(0,1fr) auto}.map-studio-canvas-wrap .service-location-map{width:100%;height:100%;min-height:0;border-radius:0}.service-location-map.is-drawing,.service-location-map.is-placing-pin{cursor:crosshair}.map-studio-canvas-wrap>footer{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:11px 13px;background:#fff;border-top:1px solid var(--border)}.map-studio-canvas-wrap>footer span{color:var(--muted);font-size:.72rem}.modal-map-studio .modal-actions{margin-top:14px;padding-top:13px}.modal-map-view .modal-card{width:min(1120px,100%)}.modal-map-view .service-overview-map{height:min(72vh,720px);margin-top:17px}.equipment-tag-qr>img{display:block!important;print-color-adjust:exact;-webkit-print-color-adjust:exact}
@media(max-width:1000px){.service-area-fields{grid-template-columns:minmax(0,1fr) 90px}}
@media(max-width:900px){.map-studio-layout{grid-template-columns:1fr;height:auto;max-height:calc(100vh - 230px);overflow:auto}.map-studio-areas{max-height:260px;border-right:0;border-bottom:1px solid var(--border)}.map-studio-canvas-wrap{min-height:430px}.map-studio-header{flex-direction:column}.map-tool-status{align-self:flex-start}.service-map-launcher{align-items:stretch;flex-direction:column}.service-map-launcher>.button{width:100%}}
@media(max-width:620px){.modal-map-studio{padding:0}.modal-map-studio .modal-card{max-height:100vh;padding:18px 13px;overflow:auto}.map-studio-toolbar{align-items:stretch;flex-direction:column}.map-studio-layout{max-height:none}.map-studio-canvas-wrap{min-height:380px}.map-studio-canvas-wrap>footer{align-items:stretch;flex-direction:column}.map-studio-canvas-wrap>footer .button{width:100%}.map-view-header{flex-direction:column}.modal-map-view .service-overview-map{height:70vh}.service-area-fields{grid-template-columns:1fr}.search-dropdown-menu{position:fixed;top:auto;right:12px;bottom:12px;left:12px;max-height:52vh}}
@media print{.equipment-tag-qr>img{display:block!important;width:3in!important;height:3in!important}}

/* 1.19 owner iPhone registration controls */
.device-management-tools{display:flex;align-items:center;justify-content:space-between;gap:22px;margin-bottom:18px}.device-management-tools h2{margin:3px 0}.device-management-tools p{max-width:720px;margin:0;color:var(--muted)}.device-cleanup-actions{display:flex;gap:8px;flex:0 0 auto}.device-cleanup-actions form,.device-table-panel form{margin:0}.device-status-tabs{margin-bottom:14px}.device-table-panel td{vertical-align:middle}.device-table-panel td>small,.device-table-panel td>strong{display:block}.device-table-panel td>small{margin-top:4px;color:var(--muted)}.device-table-panel .mono{font-size:.75rem;letter-spacing:.04em}.device-table-panel .button-danger{white-space:nowrap}
@media(max-width:850px){.device-management-tools{align-items:stretch;flex-direction:column}.device-cleanup-actions{flex-wrap:wrap}.device-cleanup-actions .button{width:100%}}

/* 1.20 customer classifications and import workshop */
.customer-tier-select{font-weight:700;transition:border-color .18s,background-color .18s,box-shadow .18s}.customer-tier-select.is-standard{color:#3b4b58;background:#f3f5f6;border-color:#aab4bb}.customer-tier-select.is-gold{color:#704a00;background:#fff5cf;border-color:#d3a728;box-shadow:inset 5px 0 #d3a728}.customer-tier-select.is-platinum{color:#304a68;background:#eef5fb;border-color:#819bb6;box-shadow:inset 5px 0 #819bb6}.customer-tier-badge{display:inline-flex;align-items:center;gap:5px;width:max-content;margin-top:5px;padding:3px 8px;border:1px solid transparent;border-radius:999px;font-size:.75rem;font-weight:700;line-height:1.2}.customer-tier-badge.is-standard{color:#4d5c66;background:#eef1f2;border-color:#cfd6da}.customer-tier-badge.is-gold{color:#704a00;background:#fff1bd;border-color:#dab33a}.customer-tier-badge.is-platinum{color:#304a68;background:#e9f1f8;border-color:#9bb0c5}.customer-card-header .customer-tier-badge{display:inline-flex;margin:0;vertical-align:middle}
.import-steps{display:grid;grid-template-columns:minmax(130px,1fr) auto minmax(160px,1fr) auto minmax(130px,1fr);align-items:center;gap:16px;margin-bottom:22px;padding:16px 22px;background:#fff;border:1px solid var(--border);border-radius:14px;box-shadow:var(--shadow)}.import-steps>i{color:#bdc7cd}.import-step{display:grid;grid-template-columns:38px 1fr;align-items:center;column-gap:11px;color:var(--muted)}.import-step>span{display:grid;grid-row:1/3;width:38px;height:38px;color:#657680;background:#eef1f3;border:2px solid #d6dde1;border-radius:50%;place-items:center;font-weight:700}.import-step strong,.import-step small{grid-column:2}.import-step small{margin-top:1px}.import-step.is-current{color:var(--blue)}.import-step.is-current>span{color:#fff;background:var(--blue);border-color:var(--blue)}.import-step.is-complete>span{color:#fff;background:var(--success);border-color:var(--success)}
.import-upload-layout{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(280px,.7fr);gap:14px}.import-upload-panel,.import-guidance-panel{padding:22px}.import-upload-panel>p{max-width:720px;margin:.45rem 0;color:var(--muted);line-height:1.42}.import-hero-icon{display:grid;width:48px;height:48px;margin-bottom:11px;color:#fff;background:linear-gradient(145deg,#167248,#25a365);border-radius:13px;box-shadow:0 8px 18px #1672482b;place-items:center;font-size:1.3rem}.import-upload-form{display:flex;align-items:center;gap:9px;margin-top:15px}.import-upload-form>.button{flex:0 0 auto;min-height:36px;padding:.58rem .78rem}.import-file-picker{display:flex;align-items:center;gap:10px;min-width:0;flex:1;padding:9px 11px;background:#f7fafb;border:1px dashed #9eafb9;border-radius:10px;cursor:pointer}.import-file-picker:hover{background:#f0f6f8;border-color:var(--blue)}.import-file-picker>i{color:var(--blue);font-size:1.12rem}.import-file-picker>span{display:flex;min-width:105px;flex:1;flex-direction:column}.import-file-picker strong{font-size:.78rem}.import-file-picker small{margin-top:1px;color:var(--muted);font-size:.66rem}.import-file-picker input{max-width:230px;font-size:.72rem}.import-guidance-panel h2{margin:3px 0 12px}.icon-list{display:grid;gap:11px;margin:0;padding:0;list-style:none}.icon-list li{display:flex;align-items:flex-start;gap:9px}.icon-list li>i{display:grid;width:30px;height:30px;flex:0 0 30px;color:var(--blue);background:#eef4f8;border-radius:8px;place-items:center;font-size:.78rem}.icon-list span{display:flex;flex-direction:column}.icon-list strong{font-size:.78rem}.icon-list small{margin-top:1px;color:var(--muted);font-size:.68rem;line-height:1.3}
.import-preview-panel,.import-defaults-panel,.import-mapping-panel{margin-bottom:13px;padding:18px}.import-preview-panel>.panel-header,.import-mapping-panel>.panel-header{margin-bottom:12px}.import-preview-panel>.panel-header .header-actions{gap:6px}.import-preview-panel>.panel-header .button{min-height:33px;padding:.48rem .66rem}.import-preview-table{max-height:320px;border:1px solid var(--border);border-radius:10px}.import-preview-table table{min-width:max-content}.import-preview-table th,.import-preview-table td{max-width:240px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.import-preview-note{margin:8px 0 0;color:var(--muted);font-size:.75rem}.import-mapping-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.import-mapping-card{display:grid;grid-template-columns:minmax(125px,1fr) 14px minmax(145px,.85fr);align-items:center;gap:7px;padding:9px 10px;background:#f8fafb;border:1px solid #dbe2e6;border-radius:9px}.import-mapping-card>span{display:flex;min-width:0;flex-direction:column}.import-mapping-card strong{font-size:.76rem}.import-mapping-card small{margin-top:1px;color:var(--muted);font-size:.66rem;line-height:1.25}.import-mapping-card>i{color:#9aabb5;font-size:.65rem}.import-mapping-card select{min-width:0;width:100%;padding:.5rem .58rem;font-size:.72rem}.import-commit-panel{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 17px;border-left:5px solid var(--success)}.import-commit-panel>div{display:flex;align-items:center;gap:10px}.import-commit-panel>div>i{color:var(--success);font-size:1.2rem}.import-commit-panel span{display:flex;flex-direction:column}.import-commit-panel small{margin-top:1px;color:var(--muted);font-size:.68rem}.import-result-stats{margin:14px 0}.import-message-list{margin-top:14px;padding:11px 13px;background:#f7f9fa;border:1px solid var(--border);border-radius:9px}.import-message-list summary{cursor:pointer;font-weight:700}.import-message-list ul{display:grid;gap:5px;max-height:300px;margin:9px 0 0;padding-left:20px;overflow:auto;color:#52636d}.import-result-panel .panel-actions{display:flex;justify-content:flex-end;gap:7px;margin-top:14px}
@media(max-width:1100px){.import-upload-layout{grid-template-columns:1fr}.import-mapping-grid{grid-template-columns:1fr}}
@media(max-width:720px){.page-header h1{overflow-wrap:anywhere}.import-steps{grid-template-columns:1fr;padding:14px}.import-steps>i{display:none}.import-step{padding:7px}.import-upload-panel{padding:22px}.import-upload-form{flex-direction:column}.import-file-picker{align-items:flex-start;flex-wrap:wrap}.import-file-picker input{width:100%;max-width:none}.import-preview-panel,.import-mapping-panel,.import-defaults-panel{min-width:0;overflow:hidden}.import-preview-panel>.panel-header,.import-mapping-panel>.panel-header{align-items:stretch;flex-direction:column}.import-preview-panel>.panel-header .button{width:100%}.import-preview-table{max-width:100%;overflow:hidden}.import-preview-table table{width:100%;min-width:0}.import-preview-table tr{padding:12px 16px}.import-preview-table td{grid-template-columns:105px minmax(0,1fr);max-width:none;white-space:normal;overflow-wrap:anywhere}.import-mapping-card{grid-template-columns:1fr}.import-mapping-card>i{display:none}.import-commit-panel{align-items:stretch;flex-direction:column}.import-commit-panel .button,.import-result-panel .panel-actions,.import-result-panel .panel-actions .button{width:100%}.import-result-panel .panel-actions{flex-direction:column}}

/* 1.21 company branding, crew primary assets, and standalone directory */
.company-logo-setting{display:grid;grid-template-columns:160px minmax(0,1fr);align-items:center;gap:18px;padding:16px;background:#f6f8fa;border:1px solid var(--border);border-radius:14px}.company-logo-setting img{width:100%;height:90px;object-fit:contain;background:#fff;border:1px solid var(--border);border-radius:10px;padding:10px}.company-logo-setting .field{margin:0}
.crew-primary-asset{position:relative;height:150px;margin:-20px -20px 18px;overflow:hidden;background:linear-gradient(135deg,#0b2d5b,#234b74)}.crew-primary-asset img{width:100%;height:100%;object-fit:cover}.crew-primary-asset>div{display:grid;width:100%;height:100%;color:#fff;place-items:center;font-size:3.2rem}.crew-primary-asset>span{position:absolute;right:10px;bottom:10px;left:10px;padding:7px 10px;color:#fff;background:rgba(4,25,49,.78);border-radius:9px;font-size:.72rem;font-weight:700;backdrop-filter:blur(5px)}
.crew-primary-select{display:flex;align-items:flex-end;gap:8px;margin:0 0 14px;padding:10px;background:#f6f8fa;border:1px solid var(--border);border-radius:11px}.crew-primary-select label{display:flex;min-width:0;flex:1;flex-direction:column;gap:4px}.crew-primary-select label>span{color:var(--muted);font-size:.65rem;font-weight:700;text-transform:uppercase}.crew-primary-select select{min-width:0;width:100%;padding:7px 9px;font-size:.72rem}.crew-primary-select .button{flex:0 0 auto}
.crew-equipment-identity{display:flex!important;align-items:center;gap:10px;flex-direction:row!important}.crew-equipment-identity img{width:48px;height:42px;object-fit:cover;border-radius:7px}.crew-equipment-identity>span{display:flex;min-width:0;flex-direction:column}.crew-equipment-identity small{color:var(--muted);font-size:.7rem}.crew-equipment-actions{display:flex;align-items:center;justify-content:flex-end;gap:7px;flex-wrap:wrap}.crew-equipment-actions form{margin:0}
.clock-shell{display:flex;min-height:calc(100vh - 180px);flex-direction:column;align-items:center;justify-content:center;gap:14px}.clock-company-logo{display:block;width:min(260px,80%);height:105px;margin:0 auto 18px;object-fit:contain}.clock-directory-button{display:inline-flex;align-items:center;gap:8px;padding:8px 12px;color:var(--navy);background:rgba(255,255,255,.82);border:1px solid var(--border);border-radius:999px;font-size:.75rem;font-weight:700;cursor:pointer}.clock-directory-list{display:grid;gap:8px;max-height:55vh;overflow:auto}.clock-directory-list article{display:flex;align-items:center;gap:12px;padding:12px;background:#f6f8fa;border:1px solid var(--border);border-radius:11px}.clock-directory-list article>i{display:grid;width:36px;height:36px;color:#fff;background:var(--navy);border-radius:50%;place-items:center}.clock-directory-list article>div{display:flex;min-width:0;flex-direction:column}.clock-directory-list a{color:var(--navy);font-size:.78rem;overflow-wrap:anywhere}
@media(max-width:620px){.company-logo-setting{grid-template-columns:1fr}.crew-equipment-list>article{align-items:flex-start;flex-direction:column}.crew-equipment-actions{width:100%;justify-content:flex-start}}

/* 1.23 Service Manager and inline Location customer creation */
.user-role-picker{border:1px solid var(--border);border-radius:12px;margin:0;padding:12px}.user-role-picker>legend{font-size:.78rem;font-weight:800;padding:0 6px}.user-role-picker>small{display:block;margin-bottom:10px}.role-check-grid{display:grid;gap:8px;grid-template-columns:repeat(3,minmax(0,1fr))}.role-check-grid .check-row{margin:0;padding:9px 10px}.role-check-grid .check-row small{display:block}@media(max-width:900px){.role-check-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:620px){.role-check-grid{grid-template-columns:1fr}}
.customer-search-action{display:grid;grid-template-columns:minmax(0,1fr) 46px;gap:.55rem;align-items:start}.customer-search-action>.search-dropdown{min-width:0}.customer-search-add{display:grid;width:46px;height:46px;border:0;border-radius:12px;color:#fff;background:var(--red);box-shadow:0 6px 14px rgba(198,40,40,.2);place-items:center;font-size:1.05rem}.customer-search-add:hover{color:#fff;background:#a91f24}.quick-customer-status{min-height:1.5rem;margin-top:.4rem;color:var(--muted);font-weight:700}.quick-customer-status.is-error{color:var(--danger)}
.location-relationship-modal{overflow-y:auto}.location-relationship-modal .modal-card{margin-block:clamp(18px,8vh,90px);overflow:visible}.location-relationship-modal .search-dropdown-menu{z-index:240;max-height:min(310px,42vh)}.location-customer-actions{display:grid;grid-template-columns:1fr 1fr}.location-customer-actions .button{width:100%}
body.service-manager-client{background:#f4f7fa}body.service-manager-client .sidebar,body.service-manager-client .topbar,body.service-manager-client .app-footer,body.service-manager-client .sidebar-scrim{display:none!important}body.service-manager-client .app-shell{grid-template-columns:minmax(0,1fr)}body.service-manager-client .app-main{width:100%;min-width:0;margin-left:0!important}body.service-manager-client .content{width:100%;max-width:none;padding:1.1rem 1.25rem 2rem}body.service-manager-client .flash-stack{right:1.25rem;left:1.25rem;top:.75rem}body.service-manager-client .page-header{margin-bottom:1rem}body.service-manager-client .modal{padding:1rem}
/* Estimates and Service Pipeline */
.estimate-studio-header .header-actions{max-width:760px;justify-content:flex-end}.estimate-studio-header .header-actions form{margin:0}.estimate-start-grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(300px,.85fr);gap:22px}.estimate-start-card{padding:25px}.estimate-start-card form{display:grid;gap:20px}.field-action-row{display:grid;grid-template-columns:minmax(0,1fr) 44px;gap:9px}.estimate-studio-intro{display:grid;gap:12px}.estimate-studio-intro article{display:grid;grid-template-columns:52px minmax(0,1fr);gap:15px;align-items:start;padding:18px;border:1px solid var(--border);border-left:5px solid var(--navy);border-radius:15px;background:#fff;box-shadow:var(--shadow)}.estimate-studio-intro article:nth-child(2n){border-left-color:var(--red)}.estimate-studio-intro i{display:grid;width:48px;height:48px;place-items:center;color:#fff;background:var(--navy);border-radius:13px;font-size:1.1rem}.estimate-studio-intro article:nth-child(2n) i{background:var(--red)}.estimate-studio-intro strong{color:var(--navy);font:700 .9rem Montserrat}.estimate-studio-intro p{margin:5px 0 0;color:var(--muted);font-size:.8rem;line-height:1.5}.estimate-recent-panel{margin-top:22px}
.estimate-save-bar{position:sticky;z-index:25;top:72px;display:flex;align-items:center;justify-content:space-between;gap:16px;margin:-10px 0 18px;padding:11px 14px;color:var(--navy);background:rgba(255,255,255,.97);border:1px solid var(--border);border-left:6px solid var(--grass);border-radius:13px;box-shadow:0 9px 24px rgba(24,45,63,.12);backdrop-filter:blur(8px)}.estimate-save-bar>span{display:flex;min-width:0;flex-direction:column;gap:2px}.estimate-save-bar>span>strong{font:700 .74rem Montserrat}.estimate-save-bar .estimate-autosave-status{font-size:.66rem}.estimate-save-bar .button{flex:0 0 auto}.record-danger-zone{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-top:20px;padding:22px;border-left:7px solid var(--danger)}.record-danger-zone h2{margin:3px 0;color:var(--navy)}.record-danger-zone p{max-width:900px;margin:0;color:var(--muted)}.record-danger-zone>.button{flex:0 0 auto}
.estimate-locked-fields{min-width:0;margin:0;padding:0;border:0}.estimate-group-row input[readonly]{color:var(--muted);background:#eef2f5;cursor:not-allowed}
.estimate-studio-shell{display:grid;grid-template-columns:238px minmax(620px,1fr) 330px;gap:18px;align-items:start}.estimate-page-rail,.estimate-page-controls{position:sticky;top:88px;max-height:calc(100vh - 110px);padding:17px;overflow:auto}.estimate-page-rail>header h2,.estimate-page-controls>header h2{margin:3px 0 5px;color:var(--navy);font-size:1.05rem}.estimate-page-rail>header p,.estimate-page-controls>header p{margin:0 0 15px;color:var(--muted);font-size:.72rem;line-height:1.45}.estimate-page-list{display:grid;gap:7px;margin-bottom:14px}.estimate-page-tab{display:grid;grid-template-columns:14px minmax(0,1fr) 12px;gap:8px;align-items:center;width:100%;padding:10px;color:var(--navy);text-align:left;background:#fff;border:1px solid var(--border);border-radius:11px;cursor:pointer}.estimate-page-tab:hover,.estimate-page-tab.is-active{border-color:var(--navy);background:#edf3f8;box-shadow:0 0 0 2px rgba(11,45,91,.07)}.estimate-page-tab.is-dragging{opacity:.45}.estimate-page-tab>i:first-child{color:var(--stone);cursor:grab}.estimate-page-tab>i:last-child{font-size:.65rem}.estimate-page-tab span{display:flex;min-width:0;flex-direction:column}.estimate-page-tab small{color:var(--muted);font-size:.57rem;text-transform:uppercase;letter-spacing:.08em}.estimate-page-tab strong{overflow:hidden;font-size:.72rem;text-overflow:ellipsis;white-space:nowrap}.estimate-canvas-stage{min-width:0;padding:20px;background:#dce3e8;border:1px solid #c8d1d8;border-radius:18px}.estimate-page-panel{display:grid;gap:18px}.proposal-sheet{position:relative;width:min(100%,790px);aspect-ratio:8.5/11;margin:0 auto;overflow:hidden;color:var(--navy);background:#fff;box-shadow:0 20px 45px rgba(28,43,56,.2)}.proposal-sheet *{box-sizing:border-box}.proposal-cover-bands{position:absolute;inset:0 0 auto;height:13%;background:var(--navy)}.proposal-cover-bands span{position:absolute;right:0;bottom:-10px;left:0;height:10px;background:var(--red)}.proposal-cover-logo{position:absolute;top:var(--logo-y,18%);left:var(--logo-x,50%);width:var(--logo-size,44%);max-height:14%;object-fit:contain;transform:translateX(-50%)}.proposal-cover-project{position:absolute;top:var(--project-y,48%);right:8%;left:8%;text-align:center;transform:translateY(-50%)}.proposal-cover-project span,.proposal-cover-customer span{display:block;margin-bottom:10px;color:var(--red);font:700 .7rem Montserrat;text-transform:uppercase;letter-spacing:.14em}.proposal-cover-project h1,.proposal-cover-project h2{margin:0;color:var(--navy);font:700 clamp(1.6rem,3.2vw,3rem)/1.12 Montserrat}.proposal-cover-project small{display:block;margin-top:14px;color:var(--slate);font:700 .76rem Montserrat}.proposal-cover-customer{position:absolute;top:var(--customer-y,72%);right:8%;left:8%;text-align:center;transform:translateY(-50%)}.proposal-cover-customer strong{display:block;font:700 1.3rem Montserrat}.proposal-cover-customer small{display:block;margin-top:7px;color:var(--muted);font-size:.8rem}.proposal-page-stripes{position:absolute;right:7%;bottom:5%;left:7%;height:12px;background:linear-gradient(to right,var(--navy) 0 68%,transparent 68% 70%,var(--red) 70% 100%)}.proposal-page-header{display:flex;height:12.5%;align-items:center;justify-content:space-between;gap:20px;padding:2.3% 5.5%;color:#fff;background:var(--navy);border-bottom:9px solid var(--red)}.proposal-page-header div{display:flex;min-width:0;flex-direction:column}.proposal-page-header span{font:600 .52rem Montserrat;text-transform:uppercase;letter-spacing:.1em;opacity:.8}.proposal-page-header h1,.proposal-page-header h2{overflow:hidden;margin:4px 0 0;font:700 clamp(1rem,2vw,1.55rem) Montserrat;text-overflow:ellipsis;white-space:nowrap}.proposal-page-header img{width:27%;max-height:54px;object-fit:contain;filter:none}.proposal-page-subtitle{position:absolute;top:14.5%;right:5.5%;left:5.5%;padding-bottom:1.6%;overflow:hidden;color:var(--muted);border-bottom:1px solid var(--border);font:700 .55rem Montserrat;text-overflow:ellipsis;white-space:nowrap}.proposal-page-footer{position:absolute;right:5.5%;bottom:2%;left:5.5%;display:flex;justify-content:space-between;padding-top:1.2%;color:var(--muted);border-top:1px solid var(--border);font:600 .48rem Montserrat}.proposal-copy{position:absolute;top:20%;right:7%;left:7%;color:#303d49;font-size:clamp(.68rem,1.2vw,.98rem);line-height:1.65}.proposal-copy p{margin:0;white-space:normal}.proposal-project-callout{position:absolute;right:7%;bottom:11%;left:7%;padding:3.5%;background:#edf3f8;border-left:7px solid var(--red);border-radius:7px}.proposal-project-callout span{color:var(--red);font:700 .54rem Montserrat;text-transform:uppercase;letter-spacing:.08em}.proposal-project-callout strong{display:block;margin:5px 0;font:700 1rem Montserrat}.proposal-project-callout p,.proposal-project-callout small{margin:0;color:var(--muted);font-size:.68rem}.proposal-empty-visual{position:absolute;top:36%;right:15%;left:15%;display:grid;gap:8px;place-items:center;padding:7%;color:var(--muted);border:2px dashed var(--border);border-radius:16px;text-align:center}.proposal-empty-visual i{font-size:2rem}.proposal-empty-visual strong{color:var(--navy);font:700 .9rem Montserrat}.proposal-empty-visual span{font-size:.7rem}.proposal-element{position:absolute;top:var(--element-y,12%);left:var(--element-x,8%);width:var(--element-width,40%);height:var(--element-height,30%);overflow:hidden}.proposal-element-image{display:flex;flex-direction:column;padding:4px;background:#fff;border:1px solid #d7dee5;box-shadow:0 5px 15px rgba(11,45,91,.12)}.proposal-element-image img{width:100%;min-height:0;flex:1;object-fit:cover}.proposal-element-image small{padding:4px 2px 1px;overflow:hidden;color:var(--muted);font-size:.48rem;text-overflow:ellipsis;white-space:nowrap}.proposal-element-text{height:auto;padding:1.5%;color:var(--navy);background:rgba(255,255,255,.88)}.proposal-element-text p{margin:0;font-size:clamp(.58rem,1vw,.82rem);line-height:1.45}.proposal-placed-copy{position:absolute;top:var(--element-y,16%);left:var(--element-x,8%);width:80%;color:#303d49;font-size:.8rem;line-height:1.6}.proposal-estimate-preview{position:absolute;top:19%;right:6%;left:6%;max-height:42%;overflow:hidden}.proposal-estimate-preview table{width:100%;font-size:clamp(.5rem,.9vw,.72rem);border-collapse:collapse}.proposal-estimate-preview th{padding:8px;color:#fff;text-align:left;background:var(--navy)}.proposal-estimate-preview td{padding:7px;border-bottom:1px solid var(--border)}.proposal-estimate-preview>strong{display:block;padding:10px;text-align:right;font:700 1rem Montserrat}.proposal-map-placeholder{position:absolute;right:6%;bottom:9%;left:6%;display:grid;height:30%;place-items:center;align-content:center;gap:5px;color:var(--muted);background:linear-gradient(135deg,#eef2f3,#f8fafb);border:1px solid var(--border);border-radius:10px;text-align:center}.proposal-map-placeholder i{color:var(--red);font-size:1.6rem}.proposal-map-placeholder strong{color:var(--navy);font:700 .8rem Montserrat}.proposal-map-placeholder span{font-size:.6rem}.proposal-total{position:absolute;top:24%;right:8%;left:8%;text-align:center}.proposal-total span{display:block;color:var(--red);font:700 .72rem Montserrat;text-transform:uppercase;letter-spacing:.12em}.proposal-total strong{display:block;margin:4% 0 2%;font:700 clamp(2.1rem,5vw,4rem) Montserrat}.proposal-total small{color:var(--muted);font:700 .65rem Montserrat}.proposal-total-copy{top:51%;padding-top:4%;border-top:3px solid var(--red)}.proposal-acceptance-copy{top:21%}.proposal-signatures{position:absolute;right:7%;bottom:12%;left:7%;display:grid;gap:8%}.proposal-signatures div{height:50px;border-bottom:1px solid var(--slate)}.proposal-signatures span{display:block;padding-top:53px;color:var(--muted);font-size:.55rem}.estimate-scope-builder{padding:20px}.estimate-scope-builder .line-item-builder{margin-top:0}.estimate-page-controls .estimate-control-panel{display:grid;gap:14px}.estimate-control-panel[hidden]{display:none}.estimate-project-fields{margin-bottom:16px}.estimate-project-fields details{border:1px solid var(--border);border-radius:11px}.estimate-project-fields summary{display:flex;gap:8px;align-items:center;padding:11px;color:var(--navy);font:700 .72rem Montserrat;cursor:pointer}.estimate-project-fields details>div{padding:0 11px 12px}.range-field output{float:right;color:var(--red);font:700 .68rem Montserrat}.range-field input[type=range]{width:100%;accent-color:var(--navy)}.studio-add-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px}.studio-element-control{display:grid;gap:10px;padding:12px;background:#f7f9fa;border:1px solid var(--border);border-radius:11px}.studio-element-control header{display:flex;align-items:center;justify-content:space-between;gap:8px}.studio-element-control header span{display:flex;min-width:0;align-items:center;gap:7px;color:var(--navy);font-size:.7rem}.element-slider-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.element-slider-grid label{display:grid;gap:3px;color:var(--muted);font-size:.6rem}.element-slider-grid input{width:100%;accent-color:var(--navy)}.control-help{margin:0;padding:11px;color:var(--muted);background:#f3f5f7;border-radius:9px;font-size:.68rem;line-height:1.5}.control-callout{display:flex;gap:10px;padding:12px;color:var(--navy);background:#edf3f8;border-radius:11px}.control-callout p{display:flex;margin:0;flex-direction:column;font-size:.7rem}.control-callout span{margin-top:3px;color:var(--muted);font-size:.64rem;line-height:1.4}.estimate-save-summary{position:sticky;bottom:-17px;display:flex;align-items:center;justify-content:space-between;gap:8px;margin:18px -17px -17px;padding:13px 17px;background:#fff;border-top:1px solid var(--border)}.estimate-save-summary span{display:flex;flex-direction:column}.estimate-save-summary strong{color:var(--navy);font:700 .85rem Montserrat}.estimate-save-summary small{color:var(--muted);font-size:.56rem}.estimate-convert-panel{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-top:20px;padding:22px;border-left:7px solid var(--red)}.estimate-convert-panel h2{margin:3px 0;color:var(--navy)}.estimate-convert-panel p{margin:0;color:var(--muted)}.estimate-convert-panel form{display:flex;align-items:end;gap:10px;flex:0 0 auto}
.proposal-print-body{margin:0;background:#d9e0e5;color:var(--navy)}.proposal-print-toolbar{position:sticky;z-index:20;top:0;display:flex;justify-content:center;gap:10px;padding:12px;background:#172a3a;box-shadow:0 4px 15px #0003}.proposal-print-deck{display:grid;gap:28px;padding:28px}.proposal-print-page{position:relative;width:8.5in;height:11in;margin:0 auto;overflow:hidden;background:#fff;box-shadow:0 18px 45px #23384a33}.proposal-print-page .proposal-cover-logo{max-height:1.25in}.proposal-print-page .proposal-page-header{height:1.25in}.proposal-print-page .proposal-copy{font-size:11pt}.proposal-print-page .proposal-element-text p{font-size:10pt}.proposal-print-estimate{position:absolute;top:1.72in;right:.52in;bottom:.55in;left:.52in;display:grid;grid-template-rows:auto minmax(0,1fr);gap:.18in}.proposal-print-estimate table{width:100%;font-size:8.5pt;border-collapse:collapse}.proposal-print-estimate th{padding:8px;color:#fff;text-align:left;background:var(--navy)}.proposal-print-estimate td{padding:7px;border-bottom:1px solid #d9e0e5;vertical-align:top}.proposal-print-estimate td small{display:block;margin-top:3px;color:var(--muted)}.proposal-print-estimate tfoot td{color:var(--navy);font:700 10pt Montserrat}.proposal-area-swatch{display:inline-block;width:7px;height:7px;margin-right:4px;background:var(--area-color)}.proposal-static-map{width:100%;height:100%;min-height:0;object-fit:cover;border:1px solid var(--border);border-radius:8px}
.pipeline-page-header{align-items:end}.pipeline-search{display:flex;align-items:end;gap:10px;padding:15px}.pipeline-search .field{min-width:min(520px,65vw);margin:0}.pipeline-summary-strip{display:grid;grid-template-columns:repeat(5,minmax(130px,1fr));gap:10px;margin:14px 0}.pipeline-summary-strip article{display:flex;align-items:center;justify-content:space-between;padding:12px 15px;background:#fff;border:1px solid var(--border);border-radius:12px}.pipeline-summary-strip span{color:var(--muted);font-size:.68rem}.pipeline-summary-strip strong{color:var(--navy);font:700 .95rem Montserrat}.pipeline-board{display:grid;grid-template-columns:repeat(7,minmax(285px,1fr));gap:13px;padding:3px 2px 16px;overflow-x:auto}.pipeline-lane{min-height:620px;padding:12px;background:#edf1f3;border:1px solid #d4dce2;border-top:5px solid var(--navy);border-radius:14px}.pipeline-lane-approved,.pipeline-lane-finished{border-top-color:#157347}.pipeline-lane-records{border-top-color:#667786}.pipeline-lane-invoice{border-top-color:var(--red)}.pipeline-lane>header{display:grid;grid-template-columns:34px minmax(0,1fr) 25px;gap:8px;align-items:center;padding:3px 2px 12px}.pipeline-lane>header>i{display:grid;width:31px;height:31px;place-items:center;color:#fff;background:var(--navy);border-radius:9px}.pipeline-lane-approved>header>i,.pipeline-lane-finished>header>i{background:#157347}.pipeline-lane-records>header>i{background:#667786}.pipeline-lane-invoice>header>i{background:var(--red)}.pipeline-lane>header span{display:flex;flex-direction:column}.pipeline-lane>header strong{color:var(--navy);font:700 .75rem Montserrat}.pipeline-lane>header small{margin-top:2px;color:var(--muted);font-size:.6rem}.pipeline-lane>header b{display:grid;width:24px;height:24px;place-items:center;color:var(--navy);background:#fff;border-radius:50%;font-size:.65rem}.pipeline-card-stack{display:grid;gap:10px}.pipeline-card{display:grid;gap:8px;padding:12px;background:#fff;border:1px solid var(--border);border-radius:11px;box-shadow:0 5px 15px #21384b0e}.pipeline-card[draggable=true]{cursor:grab}.pipeline-card.is-dragging{opacity:.45}.pipeline-lane.is-drop-target{outline:3px dashed var(--red);outline-offset:-5px}.pipeline-card-top,.pipeline-card-value,.pipeline-card-actions{display:flex;align-items:center;justify-content:space-between;gap:7px}.pipeline-card h3{margin:0;color:var(--navy);font:700 .78rem/1.35 Montserrat}.pipeline-card>p{margin:0;color:var(--muted);font-size:.68rem}.pipeline-card-value strong{color:var(--navy);font:700 .82rem Montserrat}.pipeline-card-value small{color:var(--muted);font-size:.58rem}.pipeline-card-actions{justify-content:flex-start;flex-wrap:wrap}.pipeline-card-actions form{margin:0}.pipeline-card-meta{display:flex;gap:8px;flex-wrap:wrap;color:var(--muted);font-size:.58rem}.pipeline-card-meta span{display:flex;gap:4px;align-items:center}.pipeline-convert-form{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:6px}.pipeline-convert-form input{min-width:0;padding:7px;border:1px solid var(--border);border-radius:8px;font-size:.66rem}.pipeline-empty{display:grid;gap:7px;place-items:center;min-height:100px;color:var(--muted);border:1px dashed #c3cdd4;border-radius:10px;font-size:.68rem}.pipeline-drag-help{display:flex;gap:8px;align-items:center;margin:0;color:var(--muted);font-size:.68rem}
@media (max-width:1500px){.estimate-studio-shell{grid-template-columns:210px minmax(560px,1fr) 300px}.proposal-sheet{width:100%}}
@media (max-width:1420px){.estimate-studio-shell{grid-template-columns:190px minmax(0,1fr)}.estimate-page-controls{position:static;grid-column:1/-1;max-height:none}.estimate-page-rail{top:72px}.estimate-start-grid{grid-template-columns:1fr}.pipeline-summary-strip{grid-template-columns:repeat(3,1fr)}}
@media (max-width:760px){.estimate-studio-shell{display:block}.estimate-page-rail{position:static;max-height:none;margin-bottom:12px}.estimate-page-list{grid-template-columns:repeat(2,minmax(0,1fr))}.estimate-canvas-stage{padding:8px}.estimate-page-controls{margin-top:12px}.estimate-start-grid{display:block}.estimate-studio-intro{margin-top:14px}.pipeline-summary-strip{grid-template-columns:1fr 1fr}.pipeline-search{align-items:stretch;flex-direction:column}.pipeline-search .field{min-width:0}.estimate-convert-panel,.estimate-convert-panel form{align-items:stretch;flex-direction:column}}

/* Estimates data and Proposal Studio split */
.estimate-start-grid-single{grid-template-columns:minmax(0,920px);justify-content:center}.estimate-workspace-tabs span{display:inline-grid;min-width:22px;height:22px;place-items:center;margin-left:5px;color:#fff;background:var(--red);border-radius:999px;font-size:.65rem}.estimate-workspace-panel[hidden]{display:none}.estimate-data-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(340px,.72fr);gap:20px}.estimate-data-grid>.panel{padding:22px}.estimate-total-ribbon{display:flex;align-items:center;gap:14px;margin-top:18px;padding:15px 18px;color:#fff;background:var(--navy);border-left:8px solid var(--red);border-radius:12px}.estimate-total-ribbon span{font:700 .8rem Montserrat;text-transform:uppercase;letter-spacing:.06em}.estimate-total-ribbon strong{margin-left:auto;font:700 1.35rem Montserrat}.estimate-total-ribbon small{opacity:.75}.proposal-history-layout{display:grid;grid-template-columns:minmax(300px,.42fr) minmax(0,1fr);gap:20px}.proposal-launch-card{padding:25px}.proposal-launch-icon{display:grid;width:64px;height:64px;place-items:center;margin-bottom:15px;color:#fff;background:var(--red);border-radius:18px;font-size:1.55rem}.proposal-launch-card h2{margin:5px 0;color:var(--navy)}.proposal-launch-card p{color:var(--muted);line-height:1.6}.proposal-launch-facts{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:18px 0}.proposal-launch-facts span{display:flex;min-width:0;flex-direction:column;padding:10px;background:#f2f5f7;border-radius:9px;color:var(--muted);font-size:.62rem}.proposal-launch-facts strong{overflow:hidden;color:var(--navy);font:.8rem Montserrat;text-overflow:ellipsis}.proposal-cover-logo{height:auto;max-width:96%;max-height:none}.proposal-print-page .proposal-cover-logo{max-height:none}.proposal-element-text{color:var(--element-color,var(--navy));font-family:var(--element-font-family,sans-serif)}.proposal-element-text p{font-size:var(--element-font-size,18px)}.proposal-element-icon{display:grid;place-items:center;color:var(--element-color,var(--red));overflow:visible}.proposal-element-icon i{font-size:var(--element-font-size,48px)}.studio-add-actions{grid-template-columns:repeat(3,minmax(0,1fr));margin-bottom:3px}.proposal-icon-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:9px}.proposal-icon-grid button{display:grid;gap:6px;place-items:center;padding:14px 8px;color:var(--navy);background:#fff;border:1px solid var(--border);border-radius:10px;cursor:pointer}.proposal-icon-grid button:hover{color:#fff;background:var(--navy)}.proposal-icon-grid i{font-size:1.35rem}.proposal-icon-grid span{font-size:.62rem}.quick-info-link,[data-quick-info]{color:inherit;text-decoration:underline;text-decoration-color:rgba(11,45,91,.25);text-underline-offset:3px}.quick-info-link:hover,[data-quick-info]:hover{color:var(--red);text-decoration-color:currentColor}
@media(max-width:1050px){.estimate-data-grid,.proposal-history-layout{grid-template-columns:1fr}}
@media print{@page{size:Letter portrait;margin:0}.proposal-print-toolbar{display:none!important}.proposal-print-body{background:#fff}.proposal-print-deck{display:block;padding:0}.proposal-print-page{width:8.5in;height:11in;margin:0;break-after:page;box-shadow:none;print-color-adjust:exact;-webkit-print-color-adjust:exact}.proposal-print-page:last-child{break-after:auto}.proposal-print-page img{print-color-adjust:exact;-webkit-print-color-adjust:exact}}

/* 1.31 Service operations navigation, lifecycle, and crew-load planning */
.nav-submenu-label{margin:9px 5px 2px;color:#778da7;font:700 .55rem Montserrat;letter-spacing:.08em;text-transform:uppercase}.nav-submenu-label:first-child{margin-top:2px}
.topbar-actions{display:flex;align-items:center;gap:10px}.workspace-indicator{position:relative;display:grid;width:36px;height:36px;color:var(--navy);background:#edf2f7;border:1px solid #dbe3ea;border-radius:50%;place-items:center}.workspace-indicator>span{position:absolute;right:0;top:calc(100% + 8px);z-index:15;width:max-content;max-width:240px;padding:8px 10px;color:#fff;background:#172a3a;border-radius:8px;font-size:.7rem;font-weight:700;opacity:0;pointer-events:none;transform:translateY(-3px);transition:.15s}.workspace-indicator:hover>span,.workspace-indicator:focus-within>span{opacity:1;transform:translateY(0)}
.service-lifecycle-fields{display:grid;grid-template-columns:minmax(0,1fr);gap:14px;padding:14px;background:#f6f8fa;border:1px solid var(--border);border-radius:12px}.service-lifecycle-fields .check-row{min-width:0;margin:0}.service-lifecycle-fields .field{min-width:0;margin:0}.service-lifecycle-panel{margin:18px 0;padding:0 23px 22px}.service-lifecycle-panel .panel-header{margin:0 -23px}.settings-audit-notice{display:flex;align-items:flex-start;gap:13px;margin-bottom:18px;padding:15px;color:var(--navy);background:#edf3f8;border-left:5px solid var(--red);border-radius:10px}.settings-audit-notice>i{margin-top:3px;color:var(--red)}.settings-audit-notice p{margin:4px 0 0;color:var(--muted);font-size:.8rem}
.crew-load-tabs{display:flex;gap:6px;padding:0 23px 12px;overflow-x:auto}.crew-load-tabs button{display:flex;align-items:center;gap:7px;padding:7px 10px;color:var(--muted);background:#f4f6f8;border:1px solid var(--border);border-radius:999px;font:700 .64rem Montserrat;white-space:nowrap}.crew-load-tabs button.is-active{color:#fff;background:var(--navy);border-color:var(--navy)}.crew-load-tabs button span{display:grid;min-width:20px;height:20px;padding:0 5px;color:inherit;background:#fff3;border-radius:999px;place-items:center}.crew-load-tab-empty{border-top:1px solid var(--border)}
.crew-load-filter{display:grid;grid-template-columns:minmax(180px,.45fr) minmax(260px,1fr) auto;align-items:end;gap:14px;margin-bottom:18px;padding:18px}.crew-load-summary-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:14px;margin-bottom:18px}.crew-load-summary-card{display:grid;gap:15px;padding:18px;color:inherit}.crew-load-summary-card:hover{border-color:#b8c5d1;box-shadow:var(--shadow)}.crew-load-summary-card header{display:grid;grid-template-columns:12px minmax(0,1fr) auto;align-items:center;gap:10px}.crew-load-summary-card header div,.crew-load-summary-card footer{display:flex;flex-direction:column}.crew-load-summary-card header strong,.crew-load-summary-card footer strong{color:var(--navy);font:700 .78rem Montserrat}.crew-load-summary-card header small,.crew-load-summary-card footer span{color:var(--muted);font-size:.68rem}.crew-color-dot{width:10px;height:10px;background:var(--crew-color);border-radius:50%}.crew-load-summary-card .progress span{background:var(--crew-color)}.crew-load-summary-card .progress span.is-over{background:var(--red)}.crew-load-summary-card footer{gap:3px}
@media(max-width:760px){.service-lifecycle-fields,.crew-load-filter{grid-template-columns:1fr}.workspace-indicator>span{right:-8px;max-width:calc(100vw - 16px);white-space:normal}.crew-load-summary-grid{grid-template-columns:1fr}.workload-panel .panel-header{align-items:stretch;flex-direction:column}}

/* Typed Work Orders, durable dispatch, and compact panel safety */
.content,.content>*,.panel,.panel-header>div,.form-grid>*,.typed-workorder-body>*{min-width:0}.panel p,.panel small,.field small,.table-scroll td{overflow-wrap:anywhere}.form-grid.two-columns{grid-template-columns:repeat(2,minmax(0,1fr))}.workorder-type-step{margin-bottom:18px}.workorder-step-heading{display:flex;align-items:center;gap:12px;margin-bottom:13px}.workorder-step-heading h2,.workorder-step-heading .eyebrow{margin:0}.step-number{display:grid;flex:0 0 36px;width:36px;height:36px;color:#fff;background:var(--navy);border-radius:50%;font:700 .85rem Montserrat;place-items:center}.workorder-type-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px}.workorder-type-card{display:grid;grid-template-columns:44px minmax(0,1fr) auto;gap:11px;align-items:center;min-height:132px;padding:17px;color:var(--navy);background:#fff;border:2px solid var(--border);border-top:6px solid var(--type-color,var(--navy));border-radius:15px;box-shadow:var(--shadow-sm);text-decoration:none;transition:.18s ease}.workorder-type-card>i:first-child{display:grid;width:44px;height:44px;color:#fff;background:var(--type-color,var(--navy));border-radius:12px;place-items:center;font-size:1.05rem}.workorder-type-card span{display:grid;gap:6px}.workorder-type-card strong{font:700 .78rem/1.3 Montserrat}.workorder-type-card small{color:var(--muted);font-size:.67rem;line-height:1.45}.workorder-type-card>i:last-child{color:var(--type-color,var(--navy))}.workorder-type-card:hover,.workorder-type-card.is-selected{border-color:var(--type-color,var(--navy));transform:translateY(-2px);box-shadow:0 13px 28px #0b2d5b20}.workorder-type-card.is-green{--type-color:#16856b}.workorder-type-card.is-blue{--type-color:#1b5b9e}.workorder-type-card.is-red{--type-color:#c62828}.workorder-type-card.is-gold{--type-color:#c27b12}.workshop-location-picker{display:grid;grid-template-columns:minmax(240px,.65fr) minmax(0,1fr);gap:18px;align-items:end;margin-bottom:18px;padding:18px}.workshop-location-picker .workorder-step-heading{margin:0}.typed-workorder-form{overflow:hidden}.typed-workorder-body{display:grid;gap:20px;padding:8px 23px 23px}.typed-workorder-footer{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:16px 23px;background:#f4f7f9;border-top:1px solid var(--border)}.typed-workorder-footer span{color:var(--muted);font-size:.72rem}.workflow-item-builder{min-width:0;margin:0;padding:17px;border:1px solid var(--border);border-radius:13px}.workflow-item-builder>p{margin:3px 0 13px;color:var(--muted);font-size:.72rem}.workflow-item-row{display:grid;grid-template-columns:minmax(180px,.65fr) minmax(240px,1fr) 38px;gap:11px;align-items:start;margin-bottom:10px;padding:12px;background:#f6f8fa;border-radius:11px}.workflow-item-row .field{margin:0}.work-order-claim-panel{display:flex;align-items:end;justify-content:space-between;gap:20px;margin:17px 0;padding:20px;border-left:7px solid #16856b}.work-order-claim-panel h2{margin:4px 0}.work-order-claim-panel p{max-width:650px;margin:0;color:var(--muted)}.work-order-claim-panel form{display:grid;grid-template-columns:minmax(150px,1fr) minmax(180px,1fr) auto;gap:10px;align-items:end}.work-order-item-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.work-order-item-grid article{min-width:0;padding:14px;background:#f6f8fa;border:1px solid var(--border);border-radius:11px}.work-order-item-grid p{margin:6px 0}.work-order-item-grid small{color:var(--muted)}.incident-flags,.share-section-grid{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0}.survey-share-panel{margin:18px 0;padding:0 23px 22px}.survey-share-panel .panel-header{margin:0 -23px}.survey-share-panel form{display:grid;grid-template-columns:minmax(240px,1fr) minmax(320px,1.4fr) auto;gap:14px;align-items:end}.survey-public-report{display:grid;gap:16px}.survey-public-report>.panel{padding:22px}.dispatch-pull-forward{margin:17px 0;overflow:hidden}.dispatch-pull-forward>summary{display:flex;align-items:center;justify-content:space-between;padding:16px 19px;cursor:pointer}.dispatch-pull-forward>summary span{display:grid;grid-template-columns:30px 1fr;align-items:center}.dispatch-pull-forward>summary span>i{grid-row:1/3;color:var(--red)}.dispatch-pull-forward>summary small{grid-column:2;color:var(--muted)}.dispatch-pull-forward>div{padding:0 18px 18px}.dispatch-future-list{display:grid;gap:8px;max-height:420px;overflow:auto}.dispatch-future-list form{display:grid;grid-template-columns:minmax(260px,1fr) minmax(180px,.35fr) auto;gap:12px;align-items:end;padding:12px;background:#f6f8fa;border-radius:10px}.dispatch-future-list form>div{display:grid;gap:3px}.dispatch-future-list form small{color:var(--muted)}.estimate-record-paper{padding:.34in}.estimate-record-header{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:22px;align-items:center;padding-bottom:14px;border-bottom:6px solid var(--navy)}.estimate-record-header h1{margin:4px 0}.estimate-record-facts{display:grid;grid-template-columns:2fr 1fr 1fr;gap:10px;margin:14px 0}.estimate-record-facts>div{display:grid;gap:4px;padding:10px;background:#f4f7f9;border-radius:9px}.estimate-record-facts span{color:var(--muted);font-size:.65rem;text-transform:uppercase}.estimate-record-paper section{margin:14px 0}.estimate-record-paper table{width:100%;border-collapse:collapse}.estimate-record-paper th,.estimate-record-paper td{padding:8px;border-bottom:1px solid var(--border);text-align:left}.estimate-record-paper th{color:#fff;background:var(--navy)}.estimate-record-paper td small{display:block;color:var(--muted)}.estimate-record-paper tfoot td{font-weight:700}.estimate-record-areas{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.estimate-record-areas article{display:grid;grid-template-columns:10px 1fr;gap:4px 8px;padding:11px;background:#f5f7f8;border-radius:9px}.estimate-record-areas i{grid-row:1/4;width:9px;background:var(--area-color);border-radius:5px}.estimate-record-areas span,.estimate-record-areas small{grid-column:2;color:var(--muted)}.estimate-record-paper>footer{margin-top:20px;padding-top:10px;color:var(--muted);border-top:1px solid var(--border);font-size:.7rem}

/* Proposal Studio stays contained at every desktop width. */
.estimate-studio-shell{width:100%;max-width:100%;grid-template-columns:minmax(180px,220px) minmax(0,1fr) minmax(250px,320px)}.estimate-canvas-stage,.proposal-sheet,.estimate-page-controls,.estimate-page-rail{min-width:0;max-width:100%}.proposal-sheet{aspect-ratio:8.5/11;height:auto}.estimate-page-controls{overflow:auto}.studio-add-actions{grid-template-columns:repeat(3,minmax(0,1fr))}.studio-add-actions .button{min-width:0;white-space:normal}.element-slider-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
@media(max-width:1300px){.workorder-type-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.estimate-studio-shell{grid-template-columns:180px minmax(0,1fr)}.estimate-page-controls{position:static;grid-column:1/-1;max-height:none}}
@media(max-width:900px){.form-grid.two-columns,.workshop-location-picker,.work-order-item-grid,.estimate-record-facts,.estimate-record-areas{grid-template-columns:1fr}.typed-workorder-footer,.work-order-claim-panel{align-items:stretch;flex-direction:column}.work-order-claim-panel form,.survey-share-panel form,.dispatch-future-list form{grid-template-columns:1fr}.workflow-item-row{grid-template-columns:1fr 38px}.workflow-item-row .field:nth-child(2){grid-column:1/-1}.workorder-type-grid{grid-template-columns:1fr}.estimate-record-header{grid-template-columns:1fr auto}.estimate-record-header>img{grid-column:1/-1}}
.generated-document-qr{position:absolute;right:7mm;bottom:7mm;z-index:20;display:grid;justify-items:center;gap:2px;padding:5px;background:#fff;border:1px solid #d8dee8;border-radius:8px;color:#0b2d5b}.generated-document-qr canvas,.generated-document-qr svg,.generated-document-qr img{width:72px!important;height:72px!important}.generated-document-qr small{font-size:8px;font-weight:700}.financial-record-qr{display:grid;justify-items:center;gap:2px}.financial-record-qr canvas,.financial-record-qr svg,.financial-record-qr img{width:78px!important;height:78px!important}.financial-record-qr small{font-size:10px;font-weight:700;color:var(--muted)}
.print-record-qr{display:grid;justify-items:center;gap:3px;margin:10px auto;color:var(--navy);text-align:center}.print-record-qr svg{width:88px;height:88px}.print-record-qr small{font-size:9px;font-weight:700}.employee-print-heading .print-record-qr{margin:0 0 0 auto}.employee-id-qr{display:grid;justify-items:center;gap:5px;margin:24px auto;padding:16px;background:#fff;border:1px solid #cdd7e0;border-radius:14px}.employee-id-qr svg{width:200px;height:200px}.employee-id-qr span{max-width:350px;color:var(--muted);font-size:.9rem}.print-card .print-record-qr{margin-top:16px}.print-card .print-record-qr svg{width:72px;height:72px}
.messaging-phone-row form{margin-top:8px}.messaging-phone-row .button{width:max-content}
.survey-public-report-brand{display:flex;align-items:center;gap:1rem}.survey-public-report-brand img{display:block;width:min(280px,45vw);max-height:110px;object-fit:contain;object-position:left center}.survey-public-report-brand strong{display:block;font-size:1.25rem}.survey-static-map{display:block;width:100%;margin-top:.75rem;border:1px solid var(--border);border-radius:14px}
.estimate-record-areas article img{grid-column:1/-1;width:100%;margin-top:6px;border-radius:8px}

/* 1.37 reset center, activity explorer, dashboard hub, and workspace spacing */
.dashboard-nav-group{margin-bottom:5px;border-bottom:1px solid #ffffff1a;padding-bottom:7px}.dashboard-nav-group .nav-submenu a{display:flex;align-items:center;gap:8px}.nav-danger-link{color:#ffd7d7!important;background:#7d1d24!important}.nav-danger-link:hover{color:#fff!important;background:#a5232c!important}
.proposal-picker-panel{width:min(920px,100%);margin-inline:auto;overflow:hidden}.proposal-picker-form{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:14px;align-items:end;padding:4px 24px 24px}.proposal-picker-form .field{min-width:0;margin:0}.proposal-picker-form input{width:100%;min-width:0}.proposal-picker-form>.button{width:auto;min-width:220px;min-height:44px;padding-inline:18px;white-space:nowrap}
form.filter-bar{display:grid;grid-template-columns:minmax(260px,1.5fr) minmax(160px,.55fr) minmax(180px,.6fr) auto;gap:14px;align-items:end;margin-bottom:18px;padding:20px}form.filter-bar .field{min-width:0;margin:0}form.filter-bar input,form.filter-bar select{width:100%;min-width:0}form.filter-bar>.button{width:auto;min-width:100px}
.audit-explorer{overflow:hidden}.audit-user-list{display:grid;gap:10px;padding:0 20px 20px}.audit-user-group,.audit-date-group,.audit-page-group{overflow:hidden;border:1px solid var(--border);border-radius:12px;background:#fff}.audit-user-group>summary,.audit-date-group>summary,.audit-page-group>summary{display:grid;grid-template-columns:auto minmax(0,1fr) auto auto;gap:11px;align-items:center;padding:13px 15px;color:var(--navy);cursor:pointer;list-style:none}.audit-user-group>summary::-webkit-details-marker,.audit-date-group>summary::-webkit-details-marker,.audit-page-group>summary::-webkit-details-marker{display:none}.audit-user-group>summary>span:not(.audit-avatar),.audit-date-group>summary>span,.audit-page-group>summary>span{display:flex;min-width:0;flex-direction:column}.audit-user-group summary small,.audit-date-group summary small,.audit-page-group summary small{overflow:hidden;color:var(--muted);font-size:.66rem;text-overflow:ellipsis;white-space:nowrap}.audit-user-group summary em,.audit-page-group summary em{color:var(--muted);font-size:.66rem;font-style:normal}.audit-user-group[open]>summary,.audit-date-group[open]>summary,.audit-page-group[open]>summary{background:#edf3f8}.audit-user-group[open]>summary>i:last-child,.audit-date-group[open]>summary>i:last-child,.audit-page-group[open]>summary>i:last-child{transform:rotate(180deg)}.audit-avatar{display:grid;width:36px;height:36px;color:#fff;background:var(--navy);border-radius:50%;font:700 .75rem Montserrat;place-items:center}.audit-date-list,.audit-page-list{display:grid;gap:8px;padding:10px 13px 13px}.audit-date-group{background:#f8fafb}.audit-page-group{background:#fff}.audit-action-list{display:grid;gap:1px;padding:0 12px 12px}.audit-action-list article{display:grid;grid-template-columns:90px 110px minmax(0,1fr);gap:11px;align-items:start;padding:11px;border-bottom:1px solid var(--border)}.audit-action-list article:last-child{border-bottom:0}.audit-action-list time{color:var(--muted);font:600 .67rem Montserrat}.audit-action-list article>div{min-width:0}.audit-action-list p{margin:4px 0;color:var(--muted);font-size:.72rem}.audit-action-list small{display:block;color:#788591;font-size:.62rem;overflow-wrap:anywhere}
.reset-center-form{display:grid;gap:20px}.reset-selection-panel,.reset-protected-panel{overflow:hidden}.reset-category-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;padding:0 21px 22px}.reset-category{position:relative;display:grid;grid-template-columns:28px minmax(0,1fr);gap:12px;padding:16px;background:#f7f9fa;border:2px solid var(--border);border-radius:13px;cursor:pointer}.reset-category:has(input:checked){background:#fff4f4;border-color:#d54a50}.reset-category>input{position:absolute;opacity:0}.reset-category-check{display:grid;width:27px;height:27px;color:transparent;background:#fff;border:2px solid #a9b5c0;border-radius:7px;place-items:center}.reset-category input:checked~.reset-category-check{color:#fff;background:var(--red);border-color:var(--red)}.reset-category>span:last-child{display:flex;min-width:0;flex-direction:column}.reset-category strong{color:var(--navy);font:700 .76rem/1.35 Montserrat}.reset-category small{margin-top:5px;color:var(--muted);font-size:.67rem;line-height:1.45}.reset-category em{margin-top:9px;color:var(--red);font-size:.62rem;font-style:normal;font-weight:700}.protected-record-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;padding:0 21px 22px}.protected-record-grid span{display:flex;align-items:center;gap:9px;padding:12px;color:#165a49;background:#eaf7f2;border:1px solid #b8decf;border-radius:10px;font-size:.7rem;font-weight:700}.reset-confirmation-panel{display:grid;grid-template-columns:minmax(260px,1fr) minmax(380px,1.1fr);gap:20px;align-items:end;padding:25px;color:#fff;background:linear-gradient(135deg,#3c0d11,#771d24);border:3px solid #a92a32;border-radius:18px;box-shadow:0 18px 38px #6d151f33}.reset-confirmation-panel h2{margin:4px 0;color:#fff}.reset-confirmation-panel p{margin:0;color:#f1d9da}.reset-confirmation-fields{display:grid;grid-template-columns:1fr 1fr;gap:12px}.reset-confirmation-fields .field span{color:#fff}.apocalypse-button{grid-column:1/-1;display:flex;align-items:center;justify-content:center;gap:16px;min-height:110px;color:#fff;background:#d3202a;border:4px solid #ff7a80;border-radius:18px;box-shadow:0 10px 0 #5c0c12,0 18px 35px #0005;cursor:pointer}.apocalypse-button:hover{background:#ef2934;transform:translateY(-2px)}.apocalypse-button>i{font-size:2.25rem}.apocalypse-button>span{display:flex;flex-direction:column;text-align:left}.apocalypse-button strong{font:800 1.35rem Montserrat;letter-spacing:.05em}.apocalypse-button small{margin-top:4px;color:#ffe3e4;font-size:.7rem}
.workshop-location-picker .field-action-row{width:100%}.workshop-location-picker .field-action-row>.search-dropdown{min-width:0}.workshop-location-picker .field-action-row>.icon-button{width:44px;height:50px;color:#fff;background:var(--red)}
@media(max-width:1050px){form.filter-bar{grid-template-columns:repeat(2,minmax(0,1fr))}.reset-category-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.protected-record-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.reset-confirmation-panel{grid-template-columns:1fr}.apocalypse-button{grid-column:auto}}
@media(max-width:700px){.proposal-picker-form,form.filter-bar,.reset-category-grid,.protected-record-grid,.reset-confirmation-fields{grid-template-columns:1fr}.proposal-picker-form>.button,form.filter-bar>.button{width:100%}.audit-action-list article{grid-template-columns:1fr}.audit-user-group>summary,.audit-date-group>summary,.audit-page-group>summary{grid-template-columns:auto minmax(0,1fr) auto}.audit-user-group summary em,.audit-page-group summary em{display:none}}

/* 1.39 dashboard and audit spacing */
.division-dashboard,.maintenance-page-header,.maintenance-health-grid,.maintenance-insights-grid,.maintenance-dashboard-grid,.maintenance-activity-panel{min-width:0}
.division-dashboard .panel,.maintenance-insights-grid>.panel,.maintenance-dashboard-grid>.panel,.maintenance-activity-panel{min-width:0;overflow:hidden}
.service-overview-header>div,.division-hero>div,.page-header>div,.panel-header>div,.service-pulse article>div,.maintenance-health-card>div{min-width:0}
.service-overview-header h1,.service-overview-header p,.division-hero h1,.division-hero p,.service-pulse span,.maintenance-health-card span,.maintenance-health-card small,.panel-header h2,.panel-header p{overflow-wrap:anywhere}
.service-overview-v2 .service-grid,.landscape-overview-grid,.maintenance-insights-grid,.maintenance-dashboard-grid{padding-inline:1px}
.service-overview-v2 .panel,.landscape-dashboard .panel,.maintenance-dashboard-grid .panel,.maintenance-insights-grid .panel{padding:clamp(16px,2vw,24px)}
.dashboard-queue-list article>div,.capacity-row>div,.skip-review-list summary>span{min-width:0}
.dashboard-queue-list strong,.dashboard-queue-list span,.capacity-row strong,.capacity-row span,.skip-review-list strong,.skip-review-list small{overflow-wrap:anywhere}
.audit-user-identity{padding-right:8px;border-right:1px solid var(--border)}
.audit-action-count{min-width:74px;padding-left:4px;text-align:right;white-space:nowrap}
.audit-action-name{display:inline-flex;justify-content:center;min-width:0;max-width:110px;white-space:normal;text-align:center;overflow-wrap:anywhere}
.audit-action-detail{padding-left:3px;border-left:1px solid var(--border)}
.dispatch-day-summary{display:grid;grid-template-columns:repeat(2,minmax(0,260px));gap:12px;margin:16px 0}.dispatch-day-summary article{display:flex;align-items:center;gap:12px;padding:15px 18px;border:1px solid var(--border);border-radius:14px;background:#fff;box-shadow:var(--shadow-sm)}.dispatch-day-summary article>i{display:grid;width:40px;height:40px;color:#fff;background:var(--navy);border-radius:12px;place-items:center}.dispatch-day-summary span{display:grid}.dispatch-day-summary strong{font:800 1.25rem Montserrat}.dispatch-day-summary small{color:var(--muted)}.dispatch-day-list{display:grid;gap:14px}.dispatch-day-card{position:relative;border-left:5px solid var(--crew-color)}.dispatch-day-card>header,.dispatch-day-card-main,.dispatch-day-actions{display:flex;align-items:center;justify-content:space-between;gap:14px}.dispatch-day-crew{display:flex;align-items:center;gap:8px;font:700 .75rem Montserrat}.dispatch-day-crew i{width:10px;height:10px;background:var(--crew-color);border-radius:50%}.dispatch-day-card-main{padding-block:14px}.dispatch-day-card-main>div{min-width:0}.dispatch-day-card-main h2{margin:4px 0;font-size:1.05rem}.dispatch-day-card-main p{margin:0 0 5px;color:var(--muted);overflow-wrap:anywhere}.dispatch-day-card-main small{color:var(--muted)}.dispatch-day-edit{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:14px;align-items:end;padding-top:16px;border-top:1px solid var(--border)}.dispatch-day-edit[hidden]{display:none}.dispatch-day-edit .form-grid{margin:0}.dispatch-day-actions{margin-top:12px;justify-content:flex-end}.span-four{grid-column:1/-1}@media(max-width:900px){.dispatch-day-edit{grid-template-columns:1fr}.dispatch-day-edit>.form-grid,.dispatch-day-edit .four-columns{grid-template-columns:1fr 1fr}.dispatch-day-card-main{align-items:flex-start;flex-direction:column}.dispatch-day-summary{grid-template-columns:1fr}}

/* Responsive layout audit, daily after-action reporting, and employee credential guidance. */
.content{max-width:2200px}.content>*,.panel{width:100%}.page-header>div:first-child{max-width:1100px}.content :where(.dashboard-grid,.detail-grid,.form-grid,.settings-grid,.report-grid,.profile-grid,.maintenance-dashboard-grid,.maintenance-insights-grid,.asset-overview-grid,.estimate-layout,.job-overview-grid)>*{min-width:0}.panel-header p{max-width:900px}.password-builder{display:grid;gap:7px}.password-builder-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:9px;align-items:center}.password-builder-row .input-icon,.password-builder-row input{width:100%}
.field-crew-assignment{overflow:hidden;border-top:7px solid var(--crew-color)}.field-crew-contacts{display:grid;grid-template-columns:repeat(auto-fit,minmax(310px,1fr));gap:12px;padding:0 23px 23px}.field-crew-contacts>article{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:14px;background:#f6f8fa;border:1px solid var(--border);border-radius:12px}.field-crew-contacts>article>div{display:flex;align-items:center;min-width:0;gap:11px}.field-crew-contacts>article>div>span:last-child{display:grid;min-width:0}.field-crew-contacts small{color:var(--muted)}.field-contact-avatar{display:grid;flex:0 0 40px;width:40px;height:40px;color:#fff;background:var(--crew-color);border-radius:50%;font:700 .8rem Montserrat;place-items:center}
.field-assignment-compact{display:grid;gap:20px;padding:24px}.field-assignment-heading h2{margin:4px 0 0;color:var(--navy);font-size:clamp(1.45rem,3vw,2.15rem)}.field-manager-contact{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:18px;background:#f6f8fa;border:1px solid var(--border);border-radius:14px}.field-manager-contact>div{display:flex;align-items:center;gap:13px;min-width:0}.field-manager-contact>div>span:last-child{display:grid;gap:2px;min-width:0}.field-manager-contact small,.field-manager-contact>div>span:last-child>span{color:var(--muted)}.field-manager-contact strong{overflow-wrap:anywhere;color:var(--navy);font:700 1.05rem Montserrat}
.after-action-filters{display:grid;grid-template-columns:minmax(180px,.45fr) minmax(240px,.75fr) auto;align-items:end;gap:13px;margin-bottom:16px;padding:18px}.after-action-summary{display:grid;grid-template-columns:repeat(8,minmax(110px,1fr));gap:10px;margin-bottom:18px}.after-action-summary article{display:flex;align-items:center;gap:10px;padding:13px;background:#fff;border:1px solid var(--border);border-radius:12px;box-shadow:var(--shadow-sm)}.after-action-summary article>i{display:grid;flex:0 0 34px;width:34px;height:34px;color:#fff;background:var(--navy);border-radius:9px;place-items:center}.after-action-summary span{display:grid}.after-action-summary strong{font:800 1.1rem Montserrat}.after-action-summary small{color:var(--muted);font-size:.66rem}.after-action-list{display:grid;gap:14px}.after-action-card{padding:18px 20px;border-left:6px solid var(--crew-color)}.after-action-card>header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.after-action-card>header>div{display:grid;min-width:0;gap:3px}.after-action-card>header a{color:var(--navy);font-size:1rem;overflow-wrap:anywhere}.after-action-card>header small{color:var(--muted)}.after-action-crew{display:flex;align-items:center;gap:7px;color:var(--muted);font:.68rem Montserrat;text-transform:uppercase}.after-action-crew i{width:9px;height:9px;background:var(--crew-color);border-radius:50%}.after-action-timeline{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;margin:14px 0}.after-action-timeline>span{display:grid;grid-template-columns:28px minmax(0,1fr);gap:1px 7px;align-items:center;padding:9px;color:#77838e;background:#f4f6f8;border-radius:9px}.after-action-timeline i{grid-row:1/3}.after-action-timeline strong{font-size:.72rem}.after-action-timeline small{font-size:.65rem}.after-action-timeline .is-done{color:#12634f;background:#e7f6f0}.after-action-timeline .is-warning{color:#8a5100;background:#fff4d8}.after-action-notes{margin:10px 0;padding:10px 12px;background:#f7f9fa;border-radius:9px}.after-action-card>footer{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.after-action-reassign{position:relative}.after-action-reassign>summary{list-style:none;cursor:pointer}.after-action-reassign>summary::-webkit-details-marker{display:none}.after-action-reassign>form{position:absolute;z-index:8;right:0;display:grid;grid-template-columns:repeat(2,minmax(180px,1fr));gap:9px;width:min(600px,calc(100vw - 48px));margin-top:7px;padding:14px;background:#fff;border:1px solid var(--border);border-radius:12px;box-shadow:var(--shadow)}.after-action-reassign>form>.button{align-self:end}.manager-work-review{margin-bottom:18px}
@media(min-width:1800px){.content{padding-inline:clamp(52px,4vw,88px)}.dashboard-grid{grid-template-columns:minmax(0,1.7fr) minmax(420px,.8fr)}.service-overview-v2 .service-grid{grid-template-columns:minmax(0,1.25fr) minmax(460px,.75fr)}}
@media(max-width:1400px){.after-action-summary{grid-template-columns:repeat(4,minmax(120px,1fr))}}
@media(max-width:760px){.panel-header{align-items:stretch;flex-direction:column}.panel-header>.badge{align-self:flex-start}.password-builder-row,.after-action-filters,.after-action-reassign>form{grid-template-columns:1fr}.password-builder-row .button,.after-action-filters .button{width:100%}.field-crew-contacts{grid-template-columns:1fr;padding-inline:16px}.field-crew-contacts>article,.field-manager-contact{align-items:stretch;flex-direction:column}.field-crew-contacts>article>.button,.field-manager-contact>.button{width:100%}.after-action-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.after-action-card{padding:16px 14px}.after-action-card>header,.after-action-card>footer{align-items:stretch;flex-direction:column}.after-action-timeline{grid-template-columns:1fr 1fr}.after-action-reassign>form{position:static;width:100%}.manager-work-review .attention-review-item form .header-actions{align-items:stretch;flex-direction:column}.manager-work-review .attention-review-item form .button{width:100%}}
@media print{.estimate-record-paper{padding:0}.estimate-record-paper,.estimate-record-paper *{print-color-adjust:exact;-webkit-print-color-adjust:exact}.estimate-record-areas article{break-inside:avoid}.estimate-record-header,.estimate-record-facts,.estimate-record-paper section{break-inside:avoid}}

/* 1.38 Work Order directory and post-create handoff */
.work-order-directory-filters{padding:20px}.work-order-filter-grid{display:grid;grid-template-columns:minmax(240px,1.35fr) repeat(5,minmax(145px,.55fr));gap:14px;align-items:end}.work-order-filter-grid .field{min-width:0;margin:0}.work-order-filter-grid input,.work-order-filter-grid select{width:100%;min-width:0}.work-order-filter-grid .span-two{grid-column:span 2}.work-order-filter-grid .filter-actions{display:flex;gap:9px;align-items:center}.work-order-filter-grid .filter-actions .button{width:auto;white-space:nowrap}.work-order-directory{overflow:hidden}.work-order-directory td small,.work-order-directory td small a{display:block;margin-top:3px;color:var(--muted)}
.work-order-created-panel{display:grid;justify-items:center;max-width:980px;margin:5vh auto 0;padding:42px;text-align:center;border-top:8px solid var(--success)}.work-order-created-icon{display:grid;width:86px;height:86px;margin-bottom:17px;color:#fff;background:var(--success);border-radius:50%;box-shadow:0 12px 30px #15734738;place-items:center;font-size:2.6rem}.work-order-created-panel h1{margin:6px 0 9px}.work-order-created-panel>p{max-width:680px;margin:0;color:var(--muted)}.work-order-created-summary{display:grid;width:100%;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:28px 0}.work-order-created-summary>div{display:grid;gap:4px;padding:14px;background:#f5f8fa;border:1px solid var(--border);border-radius:11px;text-align:left}.work-order-created-summary dt{color:var(--muted);font-size:.65rem;font-weight:700;text-transform:uppercase}.work-order-created-summary dd{margin:0;color:var(--navy);font:700 .78rem Montserrat}.work-order-created-actions{display:flex;justify-content:center;gap:10px;flex-wrap:wrap}
@media(max-width:1250px){.work-order-filter-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.work-order-filter-grid .span-two{grid-column:span 2}}@media(max-width:760px){.work-order-filter-grid,.work-order-created-summary{grid-template-columns:1fr}.work-order-filter-grid .span-two{grid-column:auto}.work-order-filter-grid .filter-actions,.work-order-created-actions{align-items:stretch;flex-direction:column;width:100%}.work-order-filter-grid .filter-actions .button,.work-order-created-actions .button{width:100%}.work-order-created-panel{margin-top:0;padding:28px 20px}}

/* Work Order workspace and graphical print preview */
.work-order-workspace-header .header-actions form{margin:0}.work-order-workspace-grid{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(300px,.72fr);gap:20px;align-items:start}.work-order-edit-card{padding:0;overflow:hidden}.work-order-edit-card>.panel-header{padding:22px 24px;border-bottom:1px solid var(--border)}.work-order-edit-card>.form-grid,.work-order-edit-card>.workflow-item-builder{margin:22px 24px}.work-order-record-icon{display:grid;width:48px;height:48px;color:#fff;background:linear-gradient(145deg,var(--navy),#1b5b9e);border-radius:14px;box-shadow:0 9px 20px #0b2d5b2b;place-items:center;font-size:1.15rem}.work-order-edit-footer{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:17px 24px;color:var(--muted);background:#f4f7f9;border-top:1px solid var(--border);font-size:.72rem}.work-order-edit-footer span{display:flex;align-items:center;gap:7px}.work-order-record-sidebar{display:grid;gap:18px}.work-order-record-summary{overflow:hidden;padding:0}.work-order-record-qr{display:flex;align-items:center;gap:15px;padding:19px;color:#fff;background:linear-gradient(135deg,var(--navy),#153f73 70%,var(--red))}.work-order-record-qr>[data-qr-value]{display:grid;width:86px;height:86px;padding:6px;background:#fff;border-radius:9px;place-items:center}.work-order-record-qr canvas,.work-order-record-qr svg{max-width:100%;max-height:100%}.work-order-record-qr>span{display:grid;gap:3px}.work-order-record-qr strong{font:700 1rem Montserrat}.work-order-record-qr small{color:#ffffffc7}.work-order-record-summary dl{display:grid;margin:0}.work-order-record-summary dl>div{display:grid;grid-template-columns:minmax(110px,.55fr) minmax(0,1fr);gap:12px;padding:11px 16px;border-bottom:1px solid var(--border)}.work-order-record-summary dl>div:last-child{border:0}.work-order-record-summary dt{color:var(--muted);font-size:.66rem;font-weight:700;text-transform:uppercase}.work-order-record-summary dd{margin:0;color:var(--navy);font-weight:700;text-align:right}.work-order-scope-list{display:grid;gap:8px}.work-order-scope-list article{display:grid;grid-template-columns:34px minmax(0,1fr);gap:10px;align-items:center;padding:11px;background:#f5f8fa;border-radius:10px}.work-order-scope-list article>i{display:grid;width:34px;height:34px;color:#fff;background:#16856b;border-radius:9px;place-items:center}.work-order-scope-list span{display:grid;gap:2px}.work-order-scope-list small{color:var(--muted)}.work-order-incident-record{padding:0 18px 18px}.work-order-incident-record p{color:#52606c;line-height:1.5}.work-order-incident-record p strong{color:var(--navy)}.work-order-incident-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:14px}.table-row-actions{display:flex;gap:7px;min-width:235px;flex-wrap:wrap}.report-print-edit-link{margin-right:auto;color:#fff!important;border-color:#ffffff61!important}

.report-paper.work-order-paper{box-sizing:border-box;width:min(8.5in,calc(100% - 32px));max-width:8.5in;min-height:11in;margin:22px auto;padding:.42in;overflow:hidden}.work-order-print-document{display:grid;gap:18px;min-width:0;color:#182635}.work-order-print-document *{box-sizing:border-box;min-width:0}.work-order-print-hero{position:relative;display:grid;grid-template-columns:minmax(0,1fr) 118px;gap:22px;align-items:center;overflow:hidden;padding:28px;color:#fff;background:linear-gradient(132deg,#0b2d5b 0%,#123f73 70%,#c62828 150%);border-radius:20px}.work-order-print-hero:after{position:absolute;right:-34px;bottom:-62px;width:180px;height:180px;content:"";border:24px solid #ffffff12;border-radius:50%}.work-order-print-hero-copy{position:relative;z-index:1}.work-order-print-kicker{display:flex;align-items:center;gap:7px;color:#ffffffc8;font:700 .66rem Montserrat;text-transform:uppercase;letter-spacing:.08em}.work-order-print-hero h1{max-width:600px;margin:9px 0 5px;color:#fff;font-size:1.75rem;line-height:1.12}.work-order-print-hero p{margin:0;color:#ffffffc4}.work-order-print-status{display:inline-flex;align-items:center;gap:6px;margin-top:16px;padding:6px 10px;color:var(--navy);background:#fff;border-radius:999px;font-size:.68rem;font-weight:700}.work-order-print-qr{position:relative;z-index:1;display:grid;justify-items:center;gap:5px;padding:10px 8px;color:var(--navy);background:#fff;border-radius:14px;text-align:center}.work-order-print-qr>[data-qr-value]{display:grid;width:86px;height:86px;place-items:center}.work-order-print-qr canvas,.work-order-print-qr svg{max-width:100%;max-height:100%}.work-order-print-qr small{font-size:.53rem;line-height:1.25}.work-order-print-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px}.work-order-print-metrics article{display:grid;grid-template-columns:28px minmax(0,1fr);gap:1px 8px;padding:11px;background:#f2f6f9;border-top:4px solid var(--red);border-radius:10px}.work-order-print-metrics i{grid-row:1/3;align-self:center;color:var(--red);font-size:1rem}.work-order-print-metrics span{color:var(--muted);font-size:.54rem;font-weight:700;text-transform:uppercase}.work-order-print-metrics strong{color:var(--navy);font-size:.68rem;overflow-wrap:anywhere}.work-order-print-profile-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.work-order-print-profile-grid>article{padding:14px;border:1px solid #dce4ea;border-radius:12px}.work-order-print-profile-grid header{display:flex;align-items:center;gap:9px}.work-order-print-profile-grid header>i{display:grid;flex:0 0 33px;width:33px;height:33px;color:#fff;background:var(--navy);border-radius:9px;place-items:center}.work-order-print-profile-grid header span{display:grid}.work-order-print-profile-grid header small{color:var(--muted);font-size:.53rem;text-transform:uppercase}.work-order-print-profile-grid header strong{color:var(--navy);font-size:.73rem}.work-order-print-profile-grid p{margin:9px 0 0;color:#52606c;font-size:.66rem;line-height:1.4}.work-order-print-section{padding:0;border:1px solid #dce4ea;border-radius:14px;overflow:hidden;break-inside:avoid}.work-order-print-section>header{display:flex;align-items:center;gap:11px;padding:12px 15px;background:#f1f5f8;border-bottom:1px solid #dce4ea}.work-order-print-section>header>i{display:grid;width:34px;height:34px;color:#fff;background:var(--navy);border-radius:9px;place-items:center}.work-order-print-section>header div{display:grid}.work-order-print-section>header span{color:var(--red);font-size:.54rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em}.work-order-print-section>header h2{margin:1px 0 0;color:var(--navy);font-size:.9rem}.work-order-print-section>p,.work-order-print-copy{margin:0;padding:15px;font-size:.72rem;line-height:1.5}.work-order-print-callout{border-color:#f0b9bb}.work-order-print-callout>header{background:#fdf1f1}.work-order-print-callout>header>i{background:var(--red)}.work-order-print-table{width:100%;table-layout:fixed;border-collapse:collapse;font-size:.66rem}.work-order-print-table th{padding:9px 12px;color:#fff;background:var(--navy);text-align:left}.work-order-print-table th:nth-child(1){width:42%}.work-order-print-table th:nth-child(2){width:20%}.work-order-print-table td{padding:9px 12px;border-bottom:1px solid #e5eaee;overflow-wrap:anywhere}.work-order-print-copy>p:first-child{margin-top:0}.work-order-print-copy aside{margin:10px 0;padding:11px;border-left:4px solid var(--red);background:#fdf4f4;border-radius:0 9px 9px 0}.work-order-print-copy aside p{margin:5px 0 0}.work-order-print-items{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;padding:13px}.work-order-print-items article{display:grid;grid-template-columns:28px minmax(0,1fr);gap:9px;padding:11px;background:#f6f8fa;border-radius:10px}.work-order-print-items article>span{display:grid;width:28px;height:28px;color:#fff;background:var(--red);border-radius:50%;place-items:center;font:700 .65rem Montserrat}.work-order-print-items article>div{display:grid;gap:4px}.work-order-print-items strong{color:var(--navy);font-size:.7rem}.work-order-print-items p{margin:0;font-size:.64rem}.work-order-print-items small{color:var(--muted);font-size:.56rem}.work-order-print-incident>header>i{background:#9a6700}.work-order-print-flags{display:flex;gap:6px;flex-wrap:wrap}.work-order-print-flags span{padding:5px 7px;background:#eef2f4;border-radius:999px;font-size:.55rem}.work-order-print-flags .is-flagged{color:#7b1c22;background:#fcebed;font-weight:700}.work-order-print-attachments{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:13px}.work-order-print-attachments article{display:flex;align-items:center;gap:9px;padding:9px;background:#f5f8fa;border-radius:9px}.work-order-print-attachments article>i{color:var(--red)}.work-order-print-attachments span{display:grid}.work-order-print-attachments strong{font-size:.65rem}.work-order-print-attachments small{color:var(--muted);font-size:.55rem}.work-order-print-signoff{display:grid;grid-template-columns:1fr 1fr 1.25fr;gap:18px;padding:16px;border:1px solid #cbd5dd;border-radius:12px}.work-order-print-signoff div{display:grid;gap:18px;border-bottom:1px solid #7d8993}.work-order-print-signoff span{color:var(--muted);font-size:.55rem;text-transform:uppercase}.work-order-print-signoff strong{min-height:14px;color:var(--navy);font-size:.68rem}.work-order-print-record-footer{display:flex;justify-content:space-between;gap:14px;color:var(--muted);font-size:.56rem}.work-order-print-record-footer span:first-child{color:var(--navy);font-weight:700}

@media(max-width:1050px){.work-order-workspace-grid{grid-template-columns:1fr}.work-order-record-sidebar{grid-template-columns:repeat(2,minmax(0,1fr))}.work-order-record-sidebar>section:first-child{grid-column:1/-1}}
@media(max-width:720px){.work-order-edit-card>.form-grid,.work-order-edit-card>.workflow-item-builder{margin:18px}.work-order-edit-footer{align-items:stretch;flex-direction:column}.work-order-record-sidebar,.work-order-print-metrics,.work-order-print-profile-grid,.work-order-print-items,.work-order-print-attachments{grid-template-columns:1fr}.work-order-print-hero{grid-template-columns:1fr}.work-order-print-qr{justify-self:start}.report-paper.work-order-paper{width:calc(100% - 16px);margin:8px auto;padding:18px}.work-order-print-signoff{grid-template-columns:1fr}.work-order-print-record-footer{flex-direction:column}}

@media print{body.report-print-body{print-color-adjust:exact;-webkit-print-color-adjust:exact}.report-paper.work-order-paper{width:100%;max-width:none;min-height:0;margin:0;padding:0;overflow:visible;box-shadow:none}.report-paper.work-order-paper>.report-letterhead{margin-bottom:.18in}.report-paper.work-order-paper>.report-print-footer{display:none}.work-order-print-document{gap:.12in}.work-order-print-hero{padding:.2in;border-radius:.12in}.work-order-print-hero h1{font-size:18pt}.work-order-print-metrics{gap:.06in}.work-order-print-profile-grid{gap:.08in}.work-order-print-section{border-radius:.08in}.work-order-print-section>header{padding:.08in .11in}.work-order-print-section>p,.work-order-print-copy{padding:.11in}.work-order-print-signoff{padding:.11in}@page{size:Letter;margin:.34in}}

/* Final responsive audit overrides stay last so older feature-specific breakpoints cannot reopen page overflow. */
.after-action-summary{grid-template-columns:repeat(9,minmax(110px,1fr))}
@media(max-width:1400px){.after-action-summary{grid-template-columns:repeat(4,minmax(120px,1fr))}}
@media(max-width:760px){.report-control-panel{grid-template-columns:minmax(0,1fr)}.report-control-panel>*{min-width:0}.report-date-fields{grid-template-columns:minmax(0,1fr)}.report-control-panel>.button{width:100%}.section-tabs,.report-tabs{width:100%;max-width:100%;min-width:0}.after-action-summary{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* 1.41 General Management, responsive Estimate data entry, and customer decisions */
.estimate-start-grid-single{width:100%;max-width:1380px;margin-inline:auto;grid-template-columns:minmax(0,1fr)}
.estimate-start-grid-single .estimate-start-card{width:100%;padding:clamp(22px,2.4vw,34px)}
.estimate-start-grid-single .form-grid{column-gap:22px}
.estimate-autosave-status{display:inline-flex;align-items:center;gap:7px;padding:8px 11px;color:#12634f;background:#e8f6f1;border:1px solid #b8ded1;border-radius:9px;font:700 .65rem Montserrat;white-space:nowrap}.estimate-autosave-status.is-saving{color:var(--navy);background:#edf3f8;border-color:#cad8e4}.estimate-autosave-status.is-pending{color:#835200;background:#fff6df;border-color:#ead39a}.estimate-autosave-status.is-error{max-width:330px;color:#8c1d24;background:#fff0f0;border-color:#e7b9bd;white-space:normal}
[data-recurring-estimate-field][hidden]{display:none!important}.estimate-total-ribbon em{color:#12634f;font:700 .68rem Montserrat;font-style:normal}.estimate-total-ribbon em[hidden]{display:none}
.estimate-decision-panel{display:grid;grid-template-columns:minmax(300px,.75fr) minmax(520px,1.25fr);gap:24px;align-items:center;margin-top:20px;padding:24px;border-left:7px solid var(--red)}.estimate-decision-panel h2{margin:4px 0;color:var(--navy)}.estimate-decision-panel p{margin:0;color:var(--muted)}.estimate-decision-actions{display:flex;flex-wrap:wrap;gap:10px;align-items:end}.estimate-decision-actions>form{margin:0}.estimate-email-decision{display:grid;grid-template-columns:minmax(280px,1fr) auto;gap:10px;align-items:end;flex:1 1 100%}.estimate-email-decision .field{margin:0}
.estimate-email-composer{max-height:min(900px,94vh);overflow:auto}.estimate-email-composer>p{color:var(--muted)}.estimate-email-composer form{display:grid;gap:18px}.estimate-email-composer fieldset{margin:0;padding:14px 16px;border:1px solid var(--border);border-radius:12px}.estimate-email-composer legend{padding:0 7px;color:var(--navy);font:700 .82rem Montserrat}.estimate-email-contact-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.estimate-email-contact-grid .check-row{margin:0;padding:11px;background:#f7f9fb;border:1px solid #e0e6eb;border-radius:10px}.estimate-email-security{display:flex;align-items:center;gap:12px;padding:13px 15px;color:#264b41;background:#edf8f3;border:1px solid #b9dfd0;border-radius:11px}.estimate-email-security>i{font-size:1.35rem}.estimate-email-security span{display:grid}.estimate-email-security small{color:#4e7168}
.estimate-conversion-selection{padding:24px;overflow:hidden}.estimate-conversion-selection>.panel-header{margin:-24px -24px 20px;padding:20px 24px}.estimate-selection-list{display:grid;gap:11px}.estimate-selection-card{display:grid;grid-template-columns:28px minmax(135px,.48fr) minmax(240px,1.15fr) minmax(180px,.7fr) minmax(130px,.4fr);gap:16px;align-items:center;padding:17px 18px;color:var(--navy);background:#fff;border:2px solid var(--border);border-left:7px solid var(--stone);border-radius:14px;cursor:pointer;box-shadow:var(--shadow-sm);transition:border-color .16s ease,box-shadow .16s ease,transform .16s ease,background .16s ease}.estimate-selection-card:hover{border-color:#8da4b8;border-left-color:var(--navy);transform:translateY(-1px)}.estimate-selection-card:focus-within,.estimate-selection-card.is-selected,.estimate-selection-card:has(input:checked){background:#edf3f8;border-color:var(--navy);border-left-color:var(--red);box-shadow:0 0 0 3px rgba(11,45,91,.09),0 12px 28px rgba(11,45,91,.12)}.estimate-selection-card>input{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}.estimate-selection-check{display:grid;width:27px;height:27px;place-items:center;color:transparent;background:#fff;border:2px solid #98a8b6;border-radius:50%;font-size:.67rem}.estimate-selection-card.is-selected .estimate-selection-check,.estimate-selection-card:has(input:checked) .estimate-selection-check{color:#fff;background:var(--red);border-color:var(--red)}.estimate-selection-identity,.estimate-selection-project,.estimate-selection-scope,.estimate-selection-value{display:flex;min-width:0;flex-direction:column;gap:4px}.estimate-selection-card strong{overflow-wrap:anywhere;font:700 .78rem/1.35 Montserrat}.estimate-selection-card small{overflow-wrap:anywhere;color:var(--muted);font-size:.67rem;line-height:1.4}.estimate-selection-value{align-items:flex-end;text-align:right}.estimate-selection-value>strong{font-size:1rem}.estimate-selection-value .badge{margin-top:3px}.estimate-selection-footer{position:sticky;bottom:0;display:flex;align-items:center;justify-content:space-between;gap:18px;margin:20px -24px -24px;padding:17px 24px;background:#fff;border-top:1px solid var(--border);box-shadow:0 -8px 22px rgba(11,45,91,.06)}.estimate-selection-footer>span{display:flex;align-items:center;gap:9px;color:var(--muted);font-size:.73rem}.estimate-selection-footer>span.is-ready{color:var(--navy);font-weight:700}.estimate-selection-empty{min-height:300px}.estimate-selection-empty .button{margin-top:8px}
.proposal-picker-panel{width:min(1240px,100%);overflow:visible}.proposal-picker-form{padding-inline:clamp(20px,3vw,34px)}.proposal-picker-form .field{position:relative;overflow:visible}.proposal-recent-section{margin:24px 0}.proposal-recent-section>header h2{margin:4px 0;color:var(--navy)}.proposal-recent-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.proposal-recent-card{display:grid;min-width:0;gap:7px;padding:18px;border-top:5px solid var(--navy)}.proposal-recent-card h3{margin:0;color:var(--navy);overflow-wrap:anywhere}.proposal-recent-card p{margin:0;color:var(--muted)}.proposal-recent-card>div{display:flex;align-items:flex-end;justify-content:space-between;gap:9px}.proposal-recent-card>div strong{font:800 1.1rem Montserrat}.proposal-recent-card>div small{color:var(--muted)}.proposal-recent-card>.button{justify-self:start;margin-top:5px}.proposal-system-history{margin-top:20px}
.proposal-history-panel{margin-bottom:18px;padding:0;overflow:hidden}.proposal-history-panel>summary{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px 20px;cursor:pointer;list-style:none}.proposal-history-panel>summary::-webkit-details-marker{display:none}.proposal-history-panel>summary>span{display:grid;grid-template-columns:26px minmax(0,1fr);align-items:center}.proposal-history-panel>summary>span>i{grid-row:1/3;color:var(--red)}.proposal-history-panel>summary small{color:var(--muted)}.proposal-history-panel[open]>summary>i{transform:rotate(180deg)}.proposal-history-panel>div{padding:0 20px 20px;border-top:1px solid var(--border)}
.estimate-decision-shell{min-height:100vh;padding:24px}.estimate-decision-card{max-width:620px;text-align:center}.estimate-decision-card .auth-logo{margin-inline:auto}.estimate-decision-summary{display:grid;gap:7px;margin:22px 0;padding:20px;background:#f4f7f9;border-radius:13px}.estimate-decision-summary strong{color:var(--navy);font:800 2rem Montserrat}.estimate-decision-summary small,.estimate-decision-card>small{color:var(--muted)}.decision-result-icon{margin:10px 0;color:#16856b;font-size:3.2rem}.decision-result-icon.is-muted{color:#8795a1}
@media(min-width:1500px){.estimate-start-grid-single .form-grid.two-columns{grid-template-columns:repeat(2,minmax(0,1fr))}.estimate-data-grid{grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr)}}
@media(max-width:1050px){.estimate-selection-card{grid-template-columns:28px minmax(130px,.45fr) minmax(220px,1fr) minmax(120px,.4fr)}.estimate-selection-scope{display:none}}
@media(max-width:900px){.estimate-decision-panel{grid-template-columns:1fr}.proposal-recent-grid{grid-template-columns:1fr}.estimate-email-decision{grid-template-columns:1fr}.estimate-decision-actions{align-items:stretch;flex-direction:column}.estimate-decision-actions .button{width:100%}.estimate-email-contact-grid{grid-template-columns:1fr}.estimate-selection-card{grid-template-columns:28px minmax(0,1fr) auto}.estimate-selection-project{grid-column:2}.estimate-selection-identity{grid-column:2;grid-row:1}.estimate-selection-value{grid-column:3;grid-row:1/3}.estimate-selection-footer{align-items:stretch;flex-direction:column}.estimate-selection-footer .button{width:100%}}
@media(max-width:600px){.estimate-conversion-selection{padding:16px}.estimate-conversion-selection>.panel-header{margin:-16px -16px 16px;padding:17px 16px}.estimate-selection-card{grid-template-columns:26px minmax(0,1fr);gap:10px;padding:15px 13px}.estimate-selection-value{grid-column:2;grid-row:auto;align-items:flex-start;text-align:left}.estimate-selection-footer{margin:16px -16px -16px;padding:15px 16px}}

/* 1.44 Products, grouped Estimate lines, address tax, and contained Daily Dispatch. */
.dispatch-header,.dispatch-assignment-date,.dispatch-day-summary,.dispatch-day-list,.dispatch-day-card,.dispatch-day-card>*{min-width:0;max-width:100%}.dispatch-assignment-date{display:grid;grid-template-columns:minmax(240px,1fr) minmax(190px,260px) auto;align-items:end;gap:12px;padding:18px 20px}.dispatch-assignment-date .field{min-width:0;margin:0}.dispatch-assignment-date input{width:100%;min-width:0}.dispatch-day-list{width:100%;overflow:clip}.dispatch-day-card{box-sizing:border-box;padding:16px 18px}.dispatch-day-card>header{flex-wrap:wrap}.dispatch-day-card-main{display:grid;grid-template-columns:minmax(0,1fr) auto}.dispatch-day-edit,.dispatch-day-edit>form,.dispatch-day-edit .form-grid,.dispatch-day-edit .field,.dispatch-day-edit :where(input,select,textarea){min-width:0;max-width:100%}.dispatch-day-edit .four-columns{grid-template-columns:repeat(4,minmax(130px,1fr))}.dispatch-day-edit>form:last-child{align-self:end}.dispatch-day-edit>form:last-child .button{white-space:normal}.dispatch-day-actions{flex-wrap:wrap}
.product-catalog-panel{margin-bottom:18px;padding:0;overflow:hidden}.product-catalog-panel>.panel-header{margin:0;padding:18px 20px}.product-catalog-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;padding:16px}.catalog-product-card{min-width:0;background:#fff;border:1px solid var(--border);border-radius:13px}.catalog-product-card.is-inactive{opacity:.72}.catalog-product-card>summary{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:15px 17px;cursor:pointer;list-style:none}.catalog-product-card>summary::-webkit-details-marker{display:none}.catalog-product-card>summary>div:first-child{display:grid;min-width:0;gap:4px}.catalog-product-card>summary strong,.catalog-product-card>summary small{overflow-wrap:anywhere}.catalog-product-card>summary small{color:var(--muted)}.catalog-product-pricing{display:flex;align-items:center;gap:8px;white-space:nowrap}.catalog-product-pricing span{display:grid;color:var(--navy);font-weight:700}.catalog-product-pricing small{color:var(--muted);font-size:.6rem;font-weight:600}.catalog-product-pricing>strong{color:var(--navy);font:800 1.15rem Montserrat}.catalog-product-pricing>i{color:var(--muted);font-size:.65rem}.catalog-product-card>form{padding:16px;border-top:1px solid var(--border)}[data-product-price]{display:flex;align-items:center;min-height:42px;padding:10px 12px;color:var(--navy);background:#edf5df;border:1px solid #c9dda9;border-radius:9px;font:800 1rem Montserrat}
.estimate-scope-builder .service-area-row{grid-template-columns:minmax(260px,1.35fr) minmax(180px,.75fr) minmax(105px,.35fr) 38px}.estimate-scope-builder .service-area-fields[hidden]{display:none!important}.estimate-price-breakdown{display:flex;align-items:center;gap:16px}.estimate-price-breakdown small{display:grid;color:var(--muted);font-size:.62rem;text-transform:uppercase}.estimate-price-breakdown b{color:var(--navy);font-size:.76rem}.estimate-price-breakdown>strong{min-width:110px;text-align:right}
@media(max-width:1100px){.dispatch-day-edit .four-columns{grid-template-columns:repeat(2,minmax(0,1fr))}.product-catalog-grid{grid-template-columns:1fr}.estimate-scope-builder .service-area-row{grid-template-columns:minmax(0,1fr) minmax(150px,.65fr) 110px 38px}}
@media(max-width:760px){.dispatch-assignment-date,.dispatch-day-card-main,.dispatch-day-edit,.dispatch-day-edit .four-columns,.estimate-scope-builder .service-area-row{grid-template-columns:minmax(0,1fr)}.dispatch-assignment-date .button,.dispatch-day-card-main .button,.dispatch-day-actions .button,.dispatch-day-edit>form:last-child .button{width:100%}.dispatch-day-card{padding:14px 12px}.dispatch-day-card-main{align-items:stretch}.catalog-product-card>summary,.catalog-product-pricing{align-items:flex-start;flex-direction:column}.catalog-product-pricing{gap:3px;white-space:normal}.catalog-product-pricing>i{display:none}.estimate-price-breakdown{align-items:flex-end;flex-direction:column;gap:5px}.estimate-price-breakdown>strong{min-width:0}.estimate-total-ribbon{align-items:flex-start;flex-wrap:wrap}}

/* 1.46 financial documents, customer groups, and direct Proposal Studio editing. */
.estimate-studio-header,.estimate-studio-header>.header-actions,.estimate-studio-header>.header-actions>form{min-width:0;max-width:100%}.estimate-studio-header>.header-actions{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end}.estimate-studio-header>.header-actions .button{white-space:nowrap}.estimate-page-controls .studio-add-actions{grid-template-columns:minmax(0,1fr);gap:8px}.estimate-page-controls .studio-add-actions .button{width:100%;min-width:0;justify-content:center;white-space:nowrap}.proposal-draggable{cursor:grab;touch-action:none;user-select:none;outline:2px solid transparent;outline-offset:3px}.proposal-draggable:hover,.proposal-draggable.is-selected{outline-color:rgba(198,40,40,.7)}.proposal-draggable.is-dragging{z-index:50;cursor:grabbing;outline-color:var(--red);box-shadow:0 8px 22px rgba(11,45,91,.2)}.studio-element-control.is-selected{border-color:var(--red);box-shadow:0 0 0 2px rgba(198,40,40,.1)}.proposal-estimate-group-row th{color:var(--navy);background:#edf3f8;border-top:2px solid #c7d5e0}.proposal-estimate-group-row th:last-child{text-align:right}.proposal-included{color:var(--muted);font-size:.9em;font-style:italic}
.estimate-group-builder{display:grid;gap:10px;margin:14px 0}.estimate-group-row{display:grid;grid-template-columns:minmax(220px,1fr) minmax(145px,.35fr) minmax(145px,.35fr) 40px;gap:10px;align-items:end;padding:12px;background:#f6f8fa;border:1px solid var(--border);border-radius:11px}.estimate-group-row .field{min-width:0;margin:0}.estimate-group-row :where(input,select){width:100%;min-width:0}.estimate-table-actions{display:grid;grid-template-columns:repeat(2,minmax(118px,1fr));gap:8px;width:min(340px,100%)}.estimate-table-actions>*,.estimate-table-actions .button{width:100%;min-width:0;margin:0;white-space:nowrap}
.financial-directory-panel,.financial-record-card,.financial-record-header,.financial-record-header>*,.financial-directory-panel .table-scroll{min-width:0;max-width:100%}.financial-directory-panel{overflow:hidden}.financial-directory-panel .table-scroll{overflow:auto}.financial-table-actions{display:flex;flex-wrap:wrap;align-items:end;gap:9px;padding:0 20px 16px}.financial-table-actions>*{min-width:0}.financial-table-actions .button{white-space:nowrap}.financial-select-cell{width:42px;text-align:center}.report-print-toolbar{flex-wrap:wrap}.report-print-toolbar form{margin:0}.report-print-toolbar .button-ghost{color:#fff;background:transparent;border-color:#ffffff73}.financial-report-paper{box-sizing:border-box;width:min(8.5in,calc(100vw - 24px));max-width:100%;overflow:hidden}.financial-print-paper,.financial-print-paper *{box-sizing:border-box;min-width:0}.financial-print-paper{padding:0}.financial-print-paper table{width:100%;table-layout:fixed}.financial-print-paper th,.financial-print-paper td{overflow-wrap:anywhere}.financial-print-paper th:first-child{width:52%}.estimate-print-groups{display:grid;gap:10px}.estimate-print-group{overflow:hidden;border:1px solid #d8e1e8;border-radius:11px;break-inside:avoid}.estimate-print-group>header{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:10px 12px;color:var(--navy);background:#edf3f8;border-bottom:1px solid #d8e1e8}.estimate-print-group>header span{color:var(--red);font-size:.58rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em}.estimate-print-group>header h3{margin:2px 0 0;font-size:.9rem}.estimate-print-group>header>strong{white-space:nowrap;font:800 1rem Montserrat}.estimate-print-group table{margin:0}.financial-print-totals{display:grid;gap:7px;margin-left:auto!important;width:min(390px,100%)}.financial-print-totals>div{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:7px 11px;background:#f3f6f8;border-radius:8px}.financial-print-totals .is-total{padding:11px 13px;color:#fff;background:var(--navy);border-left:7px solid var(--red)}.financial-print-summary{padding:11px 13px;background:#f5f8fa;border-left:5px solid var(--red);border-radius:10px}.generated-financial-history{margin-top:16px}.generated-financial-history .document-list{gap:8px}.generated-financial-history .document-list>a{display:grid;grid-template-columns:34px minmax(0,1fr) auto;align-items:center;gap:11px;padding:11px 13px;color:var(--navy);background:#f6f8fa;border:1px solid var(--border);border-radius:10px}.generated-financial-history .document-list>a span{display:grid;min-width:0}.generated-financial-history .document-list small{color:var(--muted)}
.customer-line-group{margin:12px 0;border:1px solid #d9e1e7;border-radius:12px;overflow:hidden;break-inside:avoid}.customer-line-group>header{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:11px 14px;color:var(--navy);background:#edf3f8;border-bottom:1px solid #d9e1e7}.customer-line-group>header h3{margin:0;font-size:.85rem}.customer-line-group>header strong{white-space:nowrap}.customer-line-group table{margin:0}
@media(max-width:850px){.estimate-group-row{grid-template-columns:minmax(0,1fr) minmax(130px,.45fr)}.estimate-group-row>.icon-button{justify-self:end}.estimate-studio-header>.header-actions{justify-content:flex-start}.financial-table-actions{align-items:stretch;flex-direction:column}.financial-table-actions .button{width:100%}}
@media(max-width:720px){.estimate-save-bar{top:62px}.record-danger-zone{align-items:stretch;flex-direction:column}.record-danger-zone>.button{width:100%}}
@media(max-width:560px){.estimate-group-row,.estimate-table-actions{grid-template-columns:minmax(0,1fr)}.estimate-group-row>.icon-button{justify-self:start}.estimate-table-actions{width:100%}.financial-print-paper{padding:16px 12px}.financial-print-paper .estimate-record-header{grid-template-columns:minmax(0,1fr)}.estimate-print-group>header{align-items:flex-start;flex-wrap:wrap}.financial-print-paper table{display:table}.financial-print-paper thead{position:static;display:table-header-group;width:auto;height:auto;overflow:visible;clip:auto}.financial-print-paper tbody{display:table-row-group}.financial-print-paper tr{display:table-row}.financial-print-paper th,.financial-print-paper td{display:table-cell;padding:6px 4px;font-size:.64rem}.financial-print-paper th:first-child{width:46%}.financial-print-totals{width:100%}}
@media print{.financial-report-paper{width:100%;max-width:none;margin:0;padding:0;overflow:visible;box-shadow:none}.financial-report-paper>.report-letterhead{display:flex!important;margin-bottom:.16in}.financial-print-paper section{break-inside:auto}.financial-print-paper :where(.estimate-record-header,.estimate-record-facts,.financial-print-summary,.financial-print-totals,.estimate-print-group){break-inside:avoid}.financial-print-paper table{font-size:8.5pt}.customer-line-group{break-inside:avoid}@page{size:Letter;margin:.34in}}

/* Final 1.55 containment overrides must follow the older dashboard/Estimate rules. */
.service-overview-v2 .service-pulse{gap:10px;margin-bottom:12px}.service-overview-v2 .service-pulse>a{min-height:70px;padding:12px 14px}.service-overview-v2 .service-grid{gap:12px}.service-overview-v2 .service-grid>.panel{padding:14px}.service-overview-v2 .service-grid>.panel:not(.skip-review-panel){max-height:300px;overflow:hidden}.service-overview-v2 .service-grid>.panel>.panel-header{margin:-14px -14px 8px;padding:13px 14px 11px}.service-overview-v2 .crew-load-tabs{padding:0 0 7px}.service-overview-v2 .capacity-list,.service-overview-v2 .dashboard-queue-list{max-height:220px;padding:0 0 5px;overflow:auto}.service-overview-v2 .capacity-row{padding-block:6px}.service-overview-v2 .skip-review-panel{max-height:130px;overflow:hidden}.service-overview-v2 .skip-review-list{max-height:72px;overflow:auto}.service-overview-v2 .skip-review-list summary{padding:8px 10px}.service-overview-v2 .skip-review-panel .empty-state{min-height:48px;padding:4px}
.estimate-total-ribbon .estimate-price-breakdown{margin-left:auto;align-items:flex-end;justify-content:flex-end;gap:9px}.estimate-total-ribbon .estimate-price-breakdown small{color:#cbd6e4}.estimate-total-ribbon .estimate-price-breakdown b,.estimate-total-ribbon .estimate-price-breakdown>strong{color:#fff}.financial-print-totals{margin-top:20px!important}.estimate-print-photo-section{margin-top:20px!important}.estimate-print-photo-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.estimate-print-photo-grid figure{margin:0;overflow:hidden;background:#f4f7f9;border:1px solid #d8e1e8;border-radius:10px;break-inside:avoid}.estimate-print-photo-grid img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover}.estimate-print-photo-grid figcaption{display:grid;gap:2px;padding:7px 8px}.estimate-print-photo-grid figcaption strong{overflow-wrap:anywhere;font-size:.68rem}.estimate-print-photo-grid figcaption span{color:var(--muted);font-size:.58rem}
@media(max-width:900px){.service-overview-v2 .service-grid>.panel{padding:15px}.estimate-total-ribbon .estimate-price-breakdown{width:100%;align-items:flex-start}.estimate-print-photo-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media print{.financial-print-totals{margin-top:.22in!important}.estimate-print-photo-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.estimate-print-photo-grid img{max-height:1.55in}.estimate-print-photo-grid figcaption{padding:5pt 6pt}}

/* 1.55.1 contained and graphical Administration Service catalog */
.service-catalog-header,.service-editor-header{align-items:center;margin-bottom:20px}.service-page-heading{display:flex;min-width:0;align-items:center;gap:17px}.service-page-heading>div{min-width:0}.service-page-heading-icon{display:grid;flex:0 0 58px;width:58px;height:58px;color:#fff;background:linear-gradient(145deg,var(--navy),#1f5d96 72%,var(--red));border-radius:17px;box-shadow:0 10px 24px rgba(11,45,91,.22);place-items:center;font-size:1.25rem}.service-page-heading .eyebrow{display:block;margin-bottom:3px}.service-page-heading h1{margin-bottom:5px}.service-page-heading p{max-width:760px;overflow-wrap:anywhere}.service-editor-mode,.service-active-count,.service-editor-tip{display:inline-flex;align-items:center;gap:7px;flex:0 0 auto;padding:8px 11px;color:var(--navy);background:#edf3f8;border:1px solid #cbd9e5;border-radius:999px;font:700 .68rem Montserrat;white-space:nowrap}.service-editor-mode i,.service-editor-tip i{color:var(--red)}
.service-catalog-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:14px}.service-catalog-metrics article{--metric-accent:var(--navy);display:flex;min-width:0;align-items:center;gap:12px;padding:14px 16px;background:#fff;border:1px solid var(--border);border-top:4px solid var(--metric-accent);border-radius:13px;box-shadow:var(--shadow-sm)}.service-catalog-metrics article.is-standard{--metric-accent:var(--navy)}.service-catalog-metrics article.is-scale{--metric-accent:#0b5cab}.service-catalog-metrics article.is-service-product{--metric-accent:var(--red)}.service-catalog-metrics article>i{display:grid;flex:0 0 39px;width:39px;height:39px;color:#fff;background:var(--metric-accent);border-radius:11px;place-items:center}.service-catalog-metrics article>span{display:grid;min-width:0}.service-catalog-metrics strong{color:var(--navy);font:800 1.2rem Montserrat}.service-catalog-metrics small{overflow-wrap:anywhere;color:var(--muted);font-size:.68rem}
.service-catalog-explainer{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:18px}.service-catalog-explainer article{--type-accent:var(--navy);display:grid;grid-template-columns:42px minmax(0,1fr);align-items:center;gap:12px;min-width:0;padding:14px 15px;background:#fff;border:1px solid var(--border);border-left:5px solid var(--type-accent);border-radius:13px;box-shadow:var(--shadow-sm)}.service-catalog-explainer article.is-scale{--type-accent:#0b5cab}.service-catalog-explainer article.is-service-product{--type-accent:var(--red)}.service-catalog-explainer article>i{display:grid;width:40px;height:40px;color:var(--type-accent);background:color-mix(in srgb,var(--type-accent) 10%,white);border-radius:11px;place-items:center}.service-catalog-explainer article>div{display:grid;min-width:0;gap:3px}.service-catalog-explainer strong{color:var(--navy);font:700 .76rem Montserrat}.service-catalog-explainer span{overflow-wrap:anywhere;color:var(--muted);font-size:.7rem;line-height:1.35}
.service-catalog-panel{overflow:hidden}.service-catalog-panel-header{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:19px 21px;background:linear-gradient(135deg,#f7f9fb,#edf3f7);border-bottom:1px solid var(--border)}.service-catalog-panel-header h2{margin:3px 0 0}.service-active-count{color:#11643f;background:#e9f7ef;border-color:#b8dfca}.service-active-count i{color:#157347}.service-catalog-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;padding:20px;background:#f4f7f9}.service-catalog-card{--type-accent:var(--navy);display:grid;min-width:0;overflow:hidden;background:#fff;border:1px solid #d5dee6;border-top:5px solid var(--type-accent);border-radius:15px;box-shadow:0 7px 20px rgba(11,45,91,.07);transition:transform .15s ease,border-color .15s ease,box-shadow .15s ease}.service-catalog-card.is-scale{--type-accent:#0b5cab}.service-catalog-card.is-service-product{--type-accent:var(--red)}.service-catalog-card:hover{transform:translateY(-2px);border-color:#aabcca;box-shadow:0 12px 28px rgba(11,45,91,.11)}.service-catalog-card.is-inactive{opacity:.74}.service-catalog-card>header{display:grid;grid-template-columns:49px minmax(0,1fr);gap:13px;align-items:start;padding:17px 18px 12px}.service-catalog-card-icon{position:relative;display:grid;width:47px;height:47px;color:#fff;background:var(--type-accent);border-radius:13px;box-shadow:inset 0 -8px 14px rgba(0,0,0,.08);place-items:center}.service-catalog-card-icon:after{position:absolute;right:-3px;bottom:-3px;width:13px;height:13px;background:var(--service-color);border:3px solid #fff;border-radius:50%;content:""}.service-catalog-card-title{display:grid;min-width:0;gap:4px}.service-catalog-card-title h3{margin:1px 0 0;overflow-wrap:anywhere;font:700 1.02rem/1.3 Montserrat}.service-catalog-card-badges{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.service-type-badge{display:inline-flex;width:max-content;padding:4px 7px;color:var(--type-accent);background:color-mix(in srgb,var(--type-accent) 9%,white);border-radius:999px;font:700 .57rem Montserrat;text-transform:uppercase;letter-spacing:.035em}.service-code{display:flex;align-items:center;gap:5px;color:var(--muted);font:.7rem/1.3 monospace}.service-code i{color:var(--type-accent);font-size:.64rem}.service-catalog-description{min-height:42px;margin:0;padding:0 18px 14px;overflow-wrap:anywhere;color:var(--muted);font-size:.76rem;line-height:1.45}.service-catalog-facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:0;padding:0 18px 14px}.service-catalog-facts>div{display:grid;min-width:0;gap:4px;padding:10px 11px;background:#f5f8fa;border:1px solid #e2e8ed;border-radius:10px}.service-catalog-facts dt{display:flex;align-items:center;gap:5px;color:var(--muted);font-size:.58rem;font-weight:700;text-transform:uppercase;letter-spacing:.035em}.service-catalog-facts dt i{color:var(--type-accent)}.service-catalog-facts dd{margin:0;overflow-wrap:anywhere;color:var(--navy);font:700 .78rem Montserrat}.service-catalog-configuration{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:0 18px 15px;padding:10px 12px;color:var(--navy);background:color-mix(in srgb,var(--type-accent) 6%,white);border-left:4px solid var(--type-accent);border-radius:9px}.service-catalog-configuration span,.service-catalog-configuration small{display:inline-flex;align-items:center;gap:6px}.service-catalog-configuration span{margin-right:auto}.service-catalog-configuration strong{font-size:.72rem}.service-catalog-configuration small{color:var(--muted);font-size:.65rem}.service-catalog-configuration i{color:var(--type-accent)}.service-catalog-card>footer{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap;margin-top:auto;padding:13px 18px;background:#fafbfc;border-top:1px solid var(--border)}.service-catalog-card>footer form{margin:0}.service-catalog-card>footer .button{white-space:nowrap}
.service-pricing-editor{max-width:1280px;gap:20px}.service-editor-panel{min-width:0;overflow:hidden;border-color:#d2dce5;box-shadow:0 9px 25px rgba(11,45,91,.07)}.service-editor-panel-header{align-items:center;padding:20px 23px;background:linear-gradient(135deg,#fbfcfd,#f2f6f9);border-bottom:1px solid var(--border)}.service-editor-section-title{display:flex;min-width:0;align-items:flex-start;gap:13px}.service-editor-section-title>div{min-width:0}.service-editor-section-title h2{margin:2px 0 4px}.service-editor-section-title p{max-width:820px;margin:0;overflow-wrap:anywhere;font-size:.78rem}.service-step-marker,.service-section-icon{display:grid;flex:0 0 43px;width:43px;height:43px;color:#fff;background:var(--navy);border-radius:12px;box-shadow:0 7px 16px rgba(11,45,91,.18);place-items:center;font:800 .9rem Montserrat}.service-section-icon{background:#0b5cab}.is-product-section .service-section-icon{background:var(--red)}
.service-type-choices{gap:16px;padding:20px 23px 23px}.service-type-choice{--type-accent:var(--navy);min-width:0}.service-type-choice.is-scale{--type-accent:#0b5cab}.service-type-choice.is-service-product{--type-accent:var(--red)}.service-type-choice>span{display:flex;min-height:174px;padding:19px;background:#fff;border:2px solid #d7e0e7;border-top:5px solid var(--type-accent);flex-direction:column}.service-type-choice-top{display:flex;align-items:center;justify-content:space-between;gap:12px}.service-type-choice-top>i{display:grid;width:46px;height:46px;color:#fff!important;background:var(--type-accent);border-radius:13px;box-shadow:0 7px 16px color-mix(in srgb,var(--type-accent) 22%,transparent);place-items:center;font-size:1.05rem}.service-choice-check{display:grid;width:26px;height:26px;color:transparent;background:#fff;border:2px solid #aab7c2;border-radius:50%;place-items:center;font-size:.62rem}.service-choice-check i{color:inherit!important;font-size:.62rem}.service-type-choice strong{margin:15px 0 5px;font-size:.88rem}.service-type-choice small{font-size:.74rem}.service-type-choice>input:checked+span{background:color-mix(in srgb,var(--type-accent) 7%,white);border-color:var(--type-accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--type-accent) 12%,transparent),0 10px 24px rgba(11,45,91,.09)}.service-type-choice>input:checked+span .service-choice-check{color:#fff;background:var(--type-accent);border-color:var(--type-accent)}.service-type-choice>input:focus-visible+span{outline:3px solid color-mix(in srgb,var(--type-accent) 45%,white);outline-offset:3px}.service-editor-panel-body,.service-pricing-section-body{padding:20px 23px 23px}.service-details-layout{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.service-form-block{min-width:0;padding:18px;background:#f7f9fb;border:1px solid #dce4ea;border-radius:14px}.service-form-block.is-description{grid-column:1/-1}.service-form-block>header{display:grid;grid-template-columns:39px minmax(0,1fr);gap:11px;align-items:start;margin-bottom:16px;padding-bottom:13px;border-bottom:1px solid #dbe3e9}.service-form-block>header>i{display:grid;width:38px;height:38px;color:#fff;background:var(--navy);border-radius:10px;place-items:center}.service-form-block.is-pricing>header>i{background:var(--red)}.service-form-block.is-description>header>i{background:#0b5cab}.service-form-block>header h3{margin:1px 0 3px;font:700 .84rem Montserrat}.service-form-block>header p{margin:0;font-size:.7rem;line-height:1.4}.service-form-block .form-grid{gap:14px}.service-form-block .field,.service-form-block :where(input,select,textarea){min-width:0;max-width:100%}.service-color-field input[type=color]{width:100%;height:44px;padding:5px}.service-polygon-option{min-height:78px;margin:0;padding:11px 12px;background:#fff}.service-polygon-option strong{display:flex;align-items:center;gap:6px;color:var(--navy)}.service-polygon-option strong i{color:var(--red)}.service-polygon-option small{display:block;margin-top:3px;color:var(--muted);font-size:.68rem;line-height:1.35}.service-pricing-section-body{background:#fff}.scale-rule-list,.service-product-list{gap:12px}.scale-rule-row,.service-product-row{padding:15px;background:#f7f9fb;border-color:#d9e2e9}.scale-rule-row>strong{display:inline-flex;align-items:center;gap:6px;padding:8px 9px;color:#0b5cab;background:#e7f1fa;border-radius:9px;font-size:.72rem}.scale-rule-row>strong i{font-size:.65rem}.service-product-row{border-left:5px solid var(--red)}.service-included-description{margin-top:15px}.service-combined-total{margin-top:15px;padding:15px 17px;background:linear-gradient(135deg,var(--navy),#173f70)}.service-combined-total>span{display:flex;align-items:center;gap:8px}.service-editor-actions{align-items:center;justify-content:space-between;padding:14px 16px}.service-editor-actions>span{display:flex;align-items:center;gap:7px;color:var(--muted);font-size:.7rem}.service-editor-actions>span i{color:#157347}.service-editor-actions>div{display:flex;align-items:center;gap:9px}
@media(max-width:1180px){.service-details-layout{grid-template-columns:1fr}.service-form-block.is-description{grid-column:auto}}
@media(max-width:1000px){.service-catalog-grid{grid-template-columns:1fr}.service-catalog-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:900px){.service-catalog-explainer{grid-template-columns:1fr}.service-type-choices{grid-template-columns:1fr}.service-type-choice>span{min-height:0}.service-type-choice small{max-width:760px}.service-editor-panel-header{align-items:stretch}.service-editor-panel-header>.button,.service-editor-panel-header>.header-actions{width:100%}.service-editor-panel-header>.header-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.service-editor-panel-header>.header-actions .button{width:100%;justify-content:center}}
@media(max-width:700px){.service-catalog-header,.service-editor-header{align-items:stretch}.service-page-heading{align-items:flex-start}.service-page-heading-icon{flex-basis:48px;width:48px;height:48px;border-radius:14px}.service-catalog-header>.button{width:100%}.service-editor-mode{align-self:flex-start}.service-catalog-metrics{grid-template-columns:1fr 1fr}.service-catalog-grid{padding:13px}.service-catalog-panel-header{align-items:flex-start;flex-direction:column}.service-catalog-card>header{padding:15px 14px 11px}.service-catalog-description{padding-inline:14px}.service-catalog-facts{grid-template-columns:1fr;padding-inline:14px}.service-catalog-configuration{margin-inline:14px}.service-catalog-card>footer{align-items:stretch;padding:13px 14px;flex-direction:column}.service-catalog-card>footer form,.service-catalog-card>footer .button{width:100%}.service-editor-panel-header,.service-editor-panel-body,.service-pricing-section-body{padding:17px 15px}.service-type-choices{padding:16px 15px 17px}.service-editor-section-title{gap:10px}.service-step-marker,.service-section-icon{flex-basis:38px;width:38px;height:38px}.service-form-block{padding:15px}.service-form-block .two-columns{grid-template-columns:1fr}.service-form-block .span-two{grid-column:auto}.service-editor-actions{position:static;align-items:stretch;flex-direction:column}.service-editor-actions>div{display:grid;grid-template-columns:1fr}.service-editor-actions .button{width:100%}.scale-rule-row>strong{justify-self:start}.service-editor-panel-header>.header-actions{grid-template-columns:1fr}}

/* 1.56.0 Scale Service minimums and controlled Estimate modifiers */
.scale-minimum-card{margin-bottom:18px;padding:17px;background:linear-gradient(135deg,#eef6ff,#f8fbfe);border:1px solid #bed7ec;border-left:6px solid #0b5cab;border-radius:13px}.scale-minimum-card>header{display:grid;grid-template-columns:42px minmax(0,1fr);gap:11px;align-items:start;margin-bottom:14px}.scale-minimum-card>header>i{display:grid;width:41px;height:41px;color:#fff;background:#0b5cab;border-radius:11px;place-items:center}.scale-minimum-card h3{margin:1px 0 3px;color:var(--navy);font:700 .84rem Montserrat}.scale-minimum-card p{margin:0;color:var(--muted);font-size:.7rem;line-height:1.45}.service-subsection-heading{margin:4px 0 12px}.service-subsection-heading>div,.service-modifier-builder>header>div{display:flex;min-width:0;align-items:center;gap:10px}.service-subsection-heading i,.service-modifier-builder>header>div>i{display:grid;flex:0 0 35px;width:35px;height:35px;color:#0b5cab;background:#e7f1fa;border-radius:9px;place-items:center}.service-subsection-heading span,.service-modifier-builder>header span{display:grid;min-width:0;gap:2px}.service-subsection-heading strong,.service-modifier-builder>header strong{color:var(--navy);font:700 .78rem Montserrat}.service-subsection-heading small,.service-modifier-builder>header small{color:var(--muted);font-size:.67rem;line-height:1.4}.service-modifier-builder{margin-top:20px;padding-top:18px;border-top:1px solid var(--border)}.service-modifier-builder>header{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:12px}.service-modifier-list{display:grid;gap:12px}.service-modifier-row{display:grid;grid-template-columns:auto minmax(170px,1fr) minmax(190px,.8fr) minmax(130px,.45fr) 38px;gap:10px;align-items:end;padding:15px;background:#fff8f7;border:1px solid #efd3cf;border-left:5px solid var(--red);border-radius:12px}.service-modifier-row>strong{display:inline-flex;align-items:center;align-self:center;gap:6px;padding:8px 9px;color:#9a241d;background:#fde9e7;border-radius:9px;font-size:.7rem;white-space:nowrap}.estimate-scope-builder .service-area-row{grid-template-columns:minmax(230px,1.35fr) minmax(150px,.7fr) minmax(105px,.35fr) minmax(175px,.65fr) 38px}.estimate-modifier-field small{color:#0b5cab;font-weight:650}.estimate-modifier-field[hidden]{display:none!important}
@media(max-width:1180px){.service-modifier-row{grid-template-columns:auto minmax(0,1fr) minmax(170px,.8fr) minmax(120px,.45fr) 38px}.estimate-scope-builder .service-area-row{grid-template-columns:minmax(220px,1fr) minmax(145px,.65fr) minmax(100px,.35fr) minmax(160px,.65fr) 38px}}
@media(max-width:900px){.service-modifier-row{grid-template-columns:1fr 1fr}.service-modifier-row>strong{justify-self:start}.service-modifier-row>.icon-button{justify-self:end}.estimate-scope-builder .service-area-row{grid-template-columns:minmax(0,1fr) minmax(140px,.55fr)}.estimate-scope-builder .service-area-row>.icon-button{justify-self:end}}
@media(max-width:700px){.scale-minimum-card .two-columns,.service-modifier-row,.estimate-scope-builder .service-area-row{grid-template-columns:minmax(0,1fr)}.service-modifier-builder>header{align-items:stretch;flex-direction:column}.service-modifier-builder>header>.button{width:100%}.service-modifier-row>.icon-button{justify-self:start}}

/* 1.57.0 weather, high-precision Scale rules, and range Products */
.scale-rule-row{grid-template-columns:auto repeat(4,minmax(125px,1fr)) 38px}.scale-rule-products{grid-column:1/-1;margin-top:4px;padding:13px;background:#fff;border:1px solid #d9e4ec;border-radius:11px}.scale-rule-products>header{display:flex;align-items:center;justify-content:space-between;gap:12px}.scale-rule-products>header>span{display:grid;grid-template-columns:auto 1fr;align-items:center;gap:2px 8px}.scale-rule-products>header i{grid-row:1/3;color:#4e8a24}.scale-rule-products>header small{color:var(--muted)}.scale-rule-product{display:grid;grid-template-columns:minmax(220px,1fr) minmax(150px,.35fr) 38px;align-items:end;gap:10px;margin-top:10px;padding-top:10px;border-top:1px solid var(--border)}
.dashboard-weather-strip{display:grid;grid-template-columns:54px repeat(3,minmax(0,1fr)) auto;align-items:center;gap:16px;margin-bottom:12px;padding:12px 16px;color:#fff;background:linear-gradient(120deg,#0b5cab,#3188c8 60%,#8cbf3f);border-radius:14px;box-shadow:0 9px 25px #0b5cab33}.dashboard-weather-strip>i:first-child{font-size:2rem}.dashboard-weather-strip span{display:grid}.dashboard-weather-strip small{color:#d9efff}.dashboard-weather-strip strong{color:#fff}.weather-page-header h1 i{color:#3188c8}.weather-hero{display:grid;grid-template-columns:1fr 2fr 1fr;align-items:center;padding:30px;color:#fff;background:linear-gradient(145deg,#0b5cab,#45a0d8 65%,#ffb347);border-radius:20px}.weather-now,.sun-time{display:grid;justify-items:center;gap:5px}.weather-now>i{font-size:3.5rem}.weather-now>strong{color:#fff;font:800 4rem Montserrat}.weather-now>span{font:700 1rem Montserrat}.sun-time i{font-size:2rem;color:#ffd45b}.sun-time strong{color:#fff}.weather-facts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:14px 0}.weather-facts article{display:grid;grid-template-columns:42px 1fr;gap:2px 10px;padding:15px;background:#fff;border:1px solid var(--border);border-radius:13px}.weather-facts i{grid-row:1/3;align-self:center;color:#3188c8;font-size:1.25rem}.weather-facts span{color:var(--muted);font-size:.68rem}.weather-layout{display:grid;grid-template-columns:2fr 1fr;gap:14px}.forecast-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:8px}.forecast-grid>div{display:grid;justify-items:center;gap:6px;padding:12px 6px;background:#eef5fa;border-radius:10px}.forecast-grid i{color:#3188c8;font-size:1.3rem}.forecast-grid small{color:var(--muted);font-size:.62rem}.snow-panel dl>div{display:flex;justify-content:space-between;padding:10px;border-bottom:1px solid var(--border)}.snow-panel dd{margin:0;font-weight:700}.weather-alerts{margin-top:14px}.weather-alert{margin:10px 0;border-left:6px solid #d88a18;background:#fff8e8}.weather-alert summary{display:flex;align-items:center;gap:12px;padding:14px}.weather-alert summary span{display:grid;flex:1}.weather-alert>div{padding:0 16px 16px}.weather-alert.is-severe,.weather-alert.is-extreme{border-color:var(--red);background:#fff0ef}
@media(max-width:900px){.scale-rule-row{grid-template-columns:1fr 1fr}.scale-rule-products{grid-column:1/-1}.weather-layout{grid-template-columns:1fr}.forecast-grid{overflow-x:auto;grid-template-columns:repeat(7,minmax(105px,1fr))}.weather-facts{grid-template-columns:1fr 1fr}.dashboard-weather-strip{grid-template-columns:45px 1fr 1fr auto}.dashboard-weather-strip span:nth-of-type(3){display:none}}
@media(max-width:600px){.scale-rule-row,.scale-rule-product{grid-template-columns:1fr}.scale-rule-products{grid-column:auto}.scale-rule-products>header{align-items:stretch;flex-direction:column}.weather-hero{grid-template-columns:1fr 1.5fr 1fr;padding:20px 8px}.weather-now>strong{font-size:2.6rem}.weather-facts{grid-template-columns:1fr}.dashboard-weather-strip{grid-template-columns:40px 1fr auto}.dashboard-weather-strip span:nth-of-type(n+2){display:none}}
/* Service catalog list and aligned Scale editor controls (1.58). */
.service-pricing-editor .scale-rule-row{grid-template-columns:repeat(4,minmax(0,1fr)) 38px;align-items:start;gap:12px;padding:18px}
.service-pricing-editor .scale-rule-row>strong{grid-column:1/-1;margin:0 0 2px;align-self:start}
.service-pricing-editor .scale-rule-row>.field{display:grid;grid-template-rows:2.6em 44px auto;gap:6px;min-width:0;margin:0;align-content:start}
.service-pricing-editor .scale-rule-row>.field>span:first-child{font-size:.73rem;line-height:1.3;display:flex;align-items:end}
.service-pricing-editor .scale-rule-row>.field>input,.service-pricing-editor .scale-rule-row>.field>.input-prefix{height:44px;min-height:44px;box-sizing:border-box;width:100%;margin:0}
.service-pricing-editor .scale-rule-row>.field>.input-prefix input{height:100%;min-width:0;width:100%;box-sizing:border-box}
.service-pricing-editor .scale-rule-row>.field>small{min-height:2.6em;line-height:1.3;font-size:.68rem}
.service-pricing-editor .scale-rule-row>.icon-button{margin-top:calc(2.6em + 6px);align-self:start}
.service-pricing-editor .scale-rule-products{grid-column:1/-1}.service-pricing-editor .scale-rule-products>header i{color:var(--navy)}
@media(max-width:1000px){.service-pricing-editor .scale-rule-row{grid-template-columns:repeat(2,minmax(0,1fr))}.service-pricing-editor .scale-rule-row>.icon-button{margin:0;justify-self:end;grid-column:1/-1}.service-catalog-list{padding-inline:10px}}
@media(max-width:700px){.service-catalog-table,.service-catalog-table tbody{display:block}.service-catalog-table thead{display:none}.service-catalog-table tr{display:grid;grid-template-columns:1fr 1fr;border-bottom:2px solid var(--border);padding:12px 0}.service-catalog-table td{display:block;border:0;padding:8px}.service-catalog-table td:first-child,.service-catalog-table td:last-child{grid-column:1/-1}.service-catalog-table td:before{content:attr(data-label);display:block;font-size:.62rem;color:var(--muted);margin-bottom:4px}.service-list-actions{grid-template-columns:1fr 1fr}}
@media(max-width:480px){.service-pricing-editor .scale-rule-row{grid-template-columns:minmax(0,1fr)}.service-pricing-editor .scale-rule-row>.field{grid-template-rows:auto 44px auto}.service-pricing-editor .scale-rule-row>.field>small{min-height:0}}
.service-catalog-list{padding:8px 18px 18px;min-width:0;overflow:hidden}
.service-catalog-table{width:100%;table-layout:fixed;border-collapse:collapse}
.service-catalog-table th{padding:13px 9px;font-size:.7rem;text-align:left;white-space:normal;background:#f3f6f9}
.service-catalog-table th:first-child{width:24%}.service-catalog-table th:nth-child(2){width:17%}.service-catalog-table th:nth-child(3){width:7%}.service-catalog-table th:nth-child(4){width:14%}.service-catalog-table th:nth-child(5){width:10%}.service-catalog-table th:nth-child(6){width:10%}.service-catalog-table th:last-child{width:18%}
.service-catalog-table td{padding:16px 9px;vertical-align:middle;white-space:normal;overflow-wrap:anywhere;border-bottom:1px solid var(--border);font-size:.78rem}
.service-catalog-table td strong{display:block;font-size:.8rem}.service-catalog-table td small{display:block;margin-top:4px;color:var(--muted);font-size:.7rem}
.service-catalog-table tr.is-inactive{background:#f8f9fa}.service-list-name{display:flex;gap:9px;align-items:flex-start}.service-list-name>i{color:var(--navy);margin-top:4px}.service-list-name>div{min-width:0}.service-list-description{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;margin-top:7px;font-size:.7rem;color:var(--muted)}
.service-list-actions{display:grid;gap:7px}.service-list-actions .button{width:100%;padding:9px 5px;white-space:normal;line-height:1.3;font-size:.68rem}.service-list-actions form{margin:0}
.service-pricing-editor .field>.input-prefix{display:flex;position:relative;align-items:center;min-width:0}
.service-pricing-editor .input-prefix>span{position:absolute;left:12px;color:var(--muted);pointer-events:none}
.service-pricing-editor .input-prefix>input{width:100%;min-width:0;padding-left:28px}
.service-pricing-editor .service-modifier-row{align-items:start}
.service-pricing-editor .service-modifier-row>.field{display:grid;grid-template-rows:2.6em 44px auto;gap:6px;align-content:start}
.service-pricing-editor .service-modifier-row>.field>span:first-child{display:flex;align-items:end;line-height:1.25}
.service-pricing-editor .service-modifier-row>.field>input,.service-pricing-editor .service-modifier-row>.field>select{height:44px;min-width:0;margin:0}
.service-pricing-editor .service-modifier-row>.icon-button{align-self:start;margin-top:calc(2.6em + 6px)}
@media(max-width:1000px){.service-catalog-list{padding-inline:10px}}
.line-price-preview{display:block;overflow-wrap:anywhere;color:var(--navy);font-weight:600}.line-price-preview.is-error{color:#b4232a}.line-price-preview[hidden]{display:none}
.estimate-scope-builder .service-area-row{grid-template-columns:minmax(0,1.5fr) minmax(0,1fr) minmax(100px,.45fr) 38px;padding:20px;gap:16px;border-radius:14px;align-items:start}
.estimate-scope-builder .service-area-row>.field{align-self:start}.estimate-scope-builder .service-area-row>.icon-button{margin-top:25px}
.estimate-line-adjustments{grid-column:1/-1;min-width:0;padding:16px;background:#f3f7fb;border:1px solid #d7e3ef;border-radius:12px}
.estimate-line-adjustment-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;align-items:start}
.estimate-line-custom-modifier{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(0,.7fr);gap:14px;margin-top:14px;padding-top:14px;border-top:1px solid #d7e3ef}
.estimate-line-adjustments .field{min-width:0;margin:0}.estimate-line-adjustments .field>span{min-height:20px}.estimate-line-adjustments select,.estimate-line-adjustments input{width:100%;min-width:0}
.estimate-line-adjustments [hidden]{display:none!important}.estimate-line-pricing-help{margin:14px 0 10px;font-size:.78rem;color:#50667d;line-height:1.55}
.estimate-line-calculation{padding:12px;background:#fff;border-radius:8px;color:var(--navy);font-weight:700;font-size:.88rem;overflow-wrap:anywhere;line-height:1.65}
@media(max-width:900px){.estimate-scope-builder .service-area-row{grid-template-columns:minmax(0,1fr) minmax(0,.7fr) 38px}.estimate-scope-builder .service-area-row>.field:first-of-type{grid-column:1/3}.estimate-scope-builder .service-area-row>.icon-button{grid-column:3;grid-row:1;align-self:center}.estimate-line-custom-modifier{grid-template-columns:minmax(0,1fr)}}
@media(max-width:600px){.estimate-scope-builder .service-area-row{padding:12px;gap:12px;grid-template-columns:minmax(0,1fr) 38px}.estimate-scope-builder .service-area-row>.field{grid-column:1/-1}.estimate-scope-builder .service-area-row>.field:first-of-type{grid-column:1}.estimate-scope-builder .service-area-row>.icon-button{grid-column:2}.estimate-line-adjustments{padding:12px}.estimate-line-adjustment-grid{grid-template-columns:minmax(0,1fr)}}
@media(max-width:600px){.line-item-row{grid-template-columns:minmax(0,1fr) 38px}.line-item-row>.field{grid-column:1/-1}.line-item-row>.field:first-of-type{grid-column:1}.line-item-row>.icon-button{grid-column:2;grid-row:1;align-self:center}}
@media(max-width:700px){.service-catalog-table td{padding:8px;border:0}.service-list-actions{grid-template-columns:1fr 1fr}.service-pricing-editor .service-modifier-row>.field{grid-template-rows:auto 44px auto}}
.service-form-errors{scroll-margin-top:24px;padding:20px;border:2px solid #b4232a;border-radius:14px;background:#fcebed;color:#861c23}.service-form-errors h2{font-size:1rem;margin:0 0 8px}.service-form-errors p{margin:6px 0}.service-form-errors ul{margin:8px 0}.service-form-errors button{border:0;background:transparent;color:inherit;text-decoration:underline;cursor:pointer}.service-pricing-editor [aria-invalid=true]{border:2px solid #b4232a;box-shadow:0 0 0 2px #b4232a12}
.employee-profile-avatar{overflow:hidden;flex-shrink:0}
.employee-profile-avatar img{width:100%;height:100%;object-fit:cover}
.employee-photo-editor{margin:18px 0;padding:20px}
.employee-photo-editor summary{font-weight:700;color:var(--navy);cursor:pointer}
.employee-photo-editor form{display:flex;gap:16px;align-items:end;flex-wrap:wrap;padding-top:16px}
.employee-photo-editor .field{flex:1;min-width:220px}
.employee-messaging-banner{display:flex;align-items:center;gap:14px;padding:16px 20px;margin:16px 0;border:1px solid #dce5ed;border-radius:16px;background:#edf4f9;color:#0b2d5b}
.employee-messaging-banner>div{display:grid;gap:5px;min-width:0}
.employee-messaging-banner small{overflow-wrap:anywhere}
/* Employee portraits: fixed-size thumbnails do not widen dense directory tables. */
.employee-list-portrait{width:44px;height:44px;object-fit:cover;border-radius:12px;float:left;margin:0 12px 4px 0;background:#e7f1f7;display:inline-flex;align-items:center;justify-content:center;color:#12355b;flex-shrink:0}
.employee-photo-fields{padding:18px;border:1px solid #d7e4ed;border-radius:16px;background:linear-gradient(120deg,#eff8fa,#f2f5ff);margin:0 0 18px}
.employee-photo-fields legend{font-weight:700;color:#12355b;padding:0 8px}
.employee-photo-fields img{width:116px;height:116px;object-fit:cover;border-radius:18px;margin-bottom:12px}
.employee-photo-fields input[type=file]{max-width:100%}
.employee-identity-portrait{width:164px!important;height:164px!important;object-fit:cover;border-radius:24px;flex-shrink:0}
/* Weather response panels retain the same breathing room as their page shell. */
[data-weather-center] .weather-alerts{margin:0 0 14px;padding-bottom:14px}
[data-weather-center] .weather-alerts>p,[data-weather-center] .weather-alert{margin:0 20px 10px}
[data-weather-center] .weather-alert>p{padding:0 14px 12px;overflow-wrap:anywhere}
[data-weather-center] .weather-layout>.panel{min-width:0}
[data-weather-center] .forecast-grid{margin:0 18px 18px}
[data-weather-center] .snow-panel dl{margin:0 12px 14px}
/* Operational map-only scope retains the type-specific Work Order workflow. */
.simplified-workorder-toggle {margin:0 0 20px;padding:18px;border:1px solid #b8cee5;border-radius:14px;background:#edf5fc;align-items:flex-start;}
.simplified-workorder-toggle input {flex:none;margin-top:4px;accent-color:#0B2D5B;}
.simplified-workorder-toggle strong {color:#0B2D5B;}
.simplified-workorder-toggle small {display:block;margin-top:5px;max-width:80ch;}
.is-simplified-area > label, .is-simplified-area > [data-line-adjustments] {display:none!important;}
.is-simplified-area {grid-template-columns:minmax(0,1fr) auto!important;}
.is-simplified-area > .service-area-fields {display:grid;grid-column:1;grid-row:1;min-width:0;}
.is-simplified-area > [data-line-item-remove] {grid-column:2;grid-row:1;}
.is-simplified-workorder .pricing-section-heading, .is-simplified-workorder .estimate-pricing-options, .is-simplified-workorder .estimate-total-ribbon {display:none;}
.is-simplified-workorder [data-simplified-only][hidden] {display:none!important;}
.location-bulk-toolbar {display:flex;flex-wrap:wrap;gap:14px;align-items:end;margin:16px;padding:18px;background:#edf5fc;border:1px solid #c5d8ec;border-radius:14px;min-width:0;}
.location-bulk-toolbar .field {flex:1 1 180px;min-width:0;max-width:330px;}
.location-bulk-toolbar .check-row {align-self:center;}
.location-bulk-toolbar p,.location-bulk-toolbar [data-bulk-results] {flex-basis:100%;margin:0;overflow-wrap:anywhere;}
.location-bulk-service-row {display:flex;gap:10px;min-width:0;align-items:start;}
.location-bulk-service-row > a {flex:1;min-width:0;}
.bulk-row-check {padding-top:24px;}
.bulk-review-dialog {width:min(760px,calc(100vw - 32px));max-height:85vh;overflow:auto;padding:24px;border:1px solid #c5d8ec;border-radius:18px;color:#0B2D5B;box-sizing:border-box;}
.bulk-review-dialog::backdrop {background:#0b2d5b88;}
.bulk-review-dialog textarea {width:100%;box-sizing:border-box;}
.bulk-review-dialog pre {white-space:pre-wrap;overflow-wrap:anywhere;}
.is-simplified-area [data-area-measurement]{display:block!important;color:var(--navy,#0b2d5b);font-weight:700;margin-top:.5rem}
.bulk-review-dialog{max-height:90vh;overflow:auto}.bulk-review-dialog label:has([data-agree]){display:flex;align-items:flex-start;gap:.65rem}.bulk-review-dialog input[type=checkbox]{width:1.15rem;height:1.15rem;min-height:0;flex:0 0 1.15rem;margin:.2rem 0;appearance:auto;padding:0}.bulk-review-dialog [data-summary]{max-height:45vh;overflow:auto}.bulk-review-dialog pre{white-space:pre-wrap;overflow-wrap:anywhere}
/* Schedule calendar: contained toolbar, readable cards and a shared date editor. */
.calendar-toolbar-v2{flex-wrap:wrap;min-width:0}.crew-calendar-selector{display:flex;align-items:center;gap:8px;min-width:0;max-width:100%}.crew-calendar-selector label{min-width:0;flex:1}.crew-calendar-selector select{min-width:0;max-width:100%}.calendar-help{display:flex;gap:9px;align-items:flex-start;margin:0;padding:12px 16px;color:var(--muted);font-size:.86rem;border-bottom:1px solid var(--border)}.calendar-help i{color:var(--primary);margin-top:3px}.service-calendar-week,.service-calendar-month{grid-template-columns:repeat(7,minmax(0,1fr))}.calendar-day-placeholder{background:var(--surface-soft)}.calendar-day>header{flex-wrap:wrap}.calendar-service-card{display:grid;grid-template-columns:8px minmax(0,1fr);gap:6px;align-items:start}.calendar-service-card>.badge{grid-column:2;justify-self:start;max-width:100%;white-space:normal;overflow-wrap:anywhere}.calendar-service-card strong,.calendar-service-card small{white-space:normal;overflow-wrap:anywhere}.calendar-service-card strong{font-size:.83rem;line-height:1.35}.calendar-order-number{font-size:.68rem}.calendar-service-card:focus-visible{outline:3px solid var(--primary);outline-offset:2px}.calendar-day.is-drop-target{background:color-mix(in srgb,var(--primary) 12%,var(--surface));box-shadow:inset 0 0 0 2px var(--primary)}.calendar-detail-card{width:min(680px,100%);overflow-wrap:anywhere}.calendar-reschedule-form{margin:18px 0;padding:16px;border:1px solid var(--border);border-left:4px solid var(--primary);border-radius:12px;background:var(--surface-soft)}.calendar-reschedule-form h3{display:flex;align-items:center;gap:8px;margin:0}.calendar-reschedule-form>p{font-size:.86rem;margin:8px 0 14px}.calendar-date-fields{display:flex;align-items:flex-end;gap:12px;margin-bottom:14px}.calendar-date-fields .field{flex:1;min-width:0;margin:0}.calendar-date-fields input{min-width:0;width:100%}.calendar-date-fields button{flex-shrink:0}.calendar-reschedule-form .check-row{margin:10px 0}.calendar-date-feedback{color:var(--danger,#b42318);font-weight:600}.calendar-date-feedback.is-saving{color:var(--primary)}.calendar-detail-card .schedule-detail-facts{grid-template-columns:repeat(3,minmax(0,1fr))}.calendar-detail-card .modal-actions,.calendar-detail-card .schedule-skip-lock-form{flex-wrap:wrap}.calendar-detail-card [hidden]{display:none!important}
@media(max-width:1050px){.service-calendar-week,.service-calendar-month{grid-template-columns:repeat(7,160px);overflow-x:auto}.crew-calendar-selector{margin-left:0;flex:1 1 300px}.calendar-view-tabs{margin-left:auto}}
@media(max-width:600px){.calendar-date-fields{align-items:stretch;flex-direction:column}.calendar-date-fields button{justify-content:center}.calendar-detail-card .schedule-detail-facts{grid-template-columns:1fr}.crew-calendar-selector{width:100%;order:3}.crew-calendar-selector label{width:auto}.calendar-toolbar-v2{padding:10px}.calendar-view-tabs a{padding:8px}.calendar-reschedule-form{padding:12px}}
.service-calendar-week{min-height:420px;height:clamp(420px,calc(100vh - 320px),780px);grid-template-rows:minmax(0,1fr)}.service-calendar-week .calendar-day{min-height:0;display:flex;flex-direction:column}.service-calendar-week .calendar-card-stack{min-height:0;overflow-y:auto;align-content:start;flex:1;padding:2px}.service-calendar-month .calendar-card-stack{max-height:280px;overflow-y:auto;align-content:start;padding:2px}
.ops-map-review-link{display:inline-flex;align-items:center;gap:8px;max-width:100%;white-space:normal;text-align:left;color:#0b527e;background:#e9f3fc;text-decoration:underline;text-underline-offset:3px;padding:10px 12px;border:1px solid #bdd9ec}.ops-map-review-link:hover{background:#d7ebfb}

/* Per-crew permission to bring tomorrow's work into today's stack. */
.next-day-claims{padding:1.25rem;margin-bottom:1.25rem;border-top:4px solid #ef8b2c;scroll-margin-top:6rem}
.next-day-claims>header{display:flex;align-items:center;gap:1rem;margin-bottom:1rem}
.next-day-claims>header>div{flex:1}.next-day-claims h2{margin:.2rem 0;color:#0b2d5b;font-size:1.25rem}
.next-day-claims p{margin:.3rem 0 0;color:#64748b;font-size:.88rem;line-height:1.5}
.next-day-claims-icon{display:grid;place-items:center;flex:none;width:3rem;height:3rem;border-radius:14px;color:#a54b0a;background:#fff0df;font-size:1.3rem}
.next-day-claims-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,430px),1fr));gap:.7rem}
.next-day-claim-row{display:flex;gap:.7rem;align-items:center;border:1px solid #dce5ef;background:#f7f9fc;padding:.9rem;border-radius:12px}
.next-day-claim-name{flex:1;min-width:0}.next-day-claim-name strong,.next-day-claim-name small{display:block}.next-day-claim-name small{color:#64748b;font-size:.76rem;margin-top:.2rem}
.next-day-claim-switch{position:relative;display:flex;align-items:center;gap:.4rem;font-size:.8rem;cursor:pointer;flex:none}
.next-day-claim-switch input{position:absolute;opacity:0;width:100%;height:100%;margin:0;cursor:pointer}
.next-day-claim-track{display:block;width:36px;height:22px;border-radius:20px;background:#8592a3;transition:background .15s}
.next-day-claim-track:after{content:'';display:block;width:16px;height:16px;border-radius:50%;background:white;margin:3px;transition:transform .15s}
.next-day-claim-switch input:checked+.next-day-claim-track{background:#16795b}.next-day-claim-switch input:checked+.next-day-claim-track:after{transform:translateX(14px)}
.next-day-claim-switch input:focus-visible+.next-day-claim-track{outline:3px solid #ef8b2c;outline-offset:3px}.next-day-claim-switch input:disabled{cursor:not-allowed}
.next-day-claims .next-day-claims-help{margin-top:1rem;font-size:.8rem}
@media(max-width:600px){.next-day-claims{padding:1rem}.next-day-claims>header{align-items:flex-start}.next-day-claims>header>.badge{display:none}.next-day-claim-row{flex-wrap:wrap}.next-day-claim-name{flex-basis:calc(100% - 36px)}.next-day-claim-row>.button{margin-left:auto}}
