.dispatch-lanes{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin:20px 0}.dispatch-lane{min-width:0;padding:16px;background:#111d29;border-radius:12px;border:1px solid #334759}.dispatch-lane>h3{display:flex;align-items:center;justify-content:space-between;font:700 12px/1.5 Inter,sans-serif;text-transform:uppercase;letter-spacing:1px;margin:0 0 20px;color:#d9e7f2}.dispatch-lane>h3 span{background:#293e52;border-radius:5px;padding:2px 8px}.dispatch-lane .simple-job{margin-bottom:16px;padding:20px}.dispatch-lane .simple-job h3{font-size:29px}.dispatch-lane .simple-job:last-child{margin-bottom:0}.installer-focus-layout{display:grid;grid-template-columns:245px minmax(0,1fr);gap:22px;margin:20px 0}.installer-job-queue{display:flex;flex-direction:column;gap:10px;background:#132b3b;padding:20px;border:1px solid #345065;border-radius:13px;align-self:start}.installer-job-queue h3{font:650 11px/1.5 Inter,sans-serif;letter-spacing:1.6px;text-transform:uppercase;color:#a9c1d3;margin:0 0 12px}.installer-job-queue .installer-queue-item{width:100%;margin:0;padding:15px;text-align:left;background:transparent;border:1px solid transparent;color:#dce8f3}.installer-queue-item strong,.installer-queue-item small{display:block;white-space:normal;overflow-wrap:anywhere}.installer-queue-item strong{font-size:13px}.installer-queue-item small{margin-top:7px;font-size:11px;color:#adc4d5}.installer-queue-item.selected{background:#ffffff0d!important;border-color:#406079!important;box-shadow:inset 3px 0 #e32726}.installer-focus-pane{min-width:0}.installer-focus-pane .simple-job{padding:28px;gap:15px}.installer-focus-pane .simple-job h3{font-size:38px}.installer-focus-pane .simple-job>.primary{font-size:15px;min-height:52px}.installer-site-preview{margin:-28px -28px 4px;height:220px;display:flex;align-items:center;justify-content:center;background:repeating-linear-gradient(135deg,#19374b 0 35px,#1c3c50 35px 36px);color:#bed3e1;font-size:12px;text-align:center;overflow:hidden;padding:18px}.installer-site-preview:has(img){padding:0}.installer-site-preview a{display:block;width:100%;height:100%}.installer-site-preview img{width:100%;height:100%;object-fit:cover}.installer-detail-photo{height:230px;margin:-26px -28px 24px;overflow:hidden;background:#132b3b}.installer-detail-photo a{display:block;width:100%;height:100%;font-size:0}.installer-detail-photo img{width:100%;height:100%;object-fit:cover}.installer-job-detail .job-guide{overflow:hidden}.installer-job-detail .job-guide h2{font-size:44px}.installer-job-detail .job-progress{margin-top:24px}.installer-focus-layout+.card{margin-top:25px}body[data-role=installer] .workspace-intro{min-height:150px}body[data-role=installer] .workspace-intro h2{font-size:48px}body[data-role=installer] .workspace-intro:after{opacity:.4}
@media(max-width:1050px){.dispatch-lanes{grid-template-columns:1fr}.dispatch-lane{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}.dispatch-lane>h3,.dispatch-lane>p{grid-column:1/-1}.dispatch-lane .simple-job{margin:0}.installer-focus-layout{grid-template-columns:210px minmax(0,1fr)}}
@media(max-width:700px){.dispatch-lane{display:block;padding:14px}.dispatch-lane .simple-job{margin-bottom:14px}.installer-focus-layout{grid-template-columns:1fr}.installer-job-queue{padding:16px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.installer-job-queue h3{grid-column:1/-1;margin-bottom:3px}.installer-job-queue .installer-queue-item{padding:11px}.installer-focus-pane .simple-job{padding:23px}.installer-focus-pane .simple-job h3{font-size:32px}.installer-site-preview{height:190px;margin:-23px -23px 3px}.installer-detail-photo{height:190px;margin:-22px -22px 20px}.installer-job-detail .job-guide h2{font-size:34px}body[data-role=installer] .workspace-intro h2{font-size:35px}}
@media print{.installer-job-queue{display:none}.installer-focus-layout{display:block}.dispatch-lanes{display:block}}
/* Employee dispatch: bright work surfaces with the same SSS accents. */
body[data-role=admin]{color-scheme:light;--ink:#172c3d;--muted:#566d7e;--line:#cfdce5;--bg:#eef3f7;background:#eef3f7;background-image:radial-gradient(ellipse at 90% 0,#1b75bc0c,transparent 55%);color:#172c3d}
body[data-role=admin] .site-nav{background:#fffffff5;border-color:#d0dce5;box-shadow:0 5px 24px #19394e0a}body[data-role=admin] .brand-name{color:#172c3d!important}body[data-role=admin] .workspace-label{color:#587185!important}body[data-role=admin] .site-nav nav button.main-nav-item{color:#435f73}body[data-role=admin] .site-nav nav button.nav-current{background:#eaf2f8;color:#173c56}body[data-role=admin] .site-nav nav button:hover{background:#eaf2f8;color:#173c56}body[data-role=admin] .portal-tools>summary,body[data-role=admin] .portal-menu>summary{background:#f3f7fa;color:#25475e;border-color:#cad9e4}body[data-role=admin] .tools-links,body[data-role=admin] .portal-menu nav{background:#fff;border-color:#cbdbe6}body[data-role=admin] .tools-links button,body[data-role=admin] .tools-links a{color:#29495f!important}body[data-role=admin] .tools-links button:hover,body[data-role=admin] .tools-links a:hover{background:#eef4f8!important}
body[data-role=admin] main>header .eyebrow,body[data-role=admin] #identity{color:#567084}body[data-role=admin] #identity button{background:#fff;color:#29495f;border-color:#cad9e4}body[data-role=admin] .workspace-intro{background:linear-gradient(115deg,#fff,#e5f1fa 70%,#edf7ef);border:1px solid #c6dce9;border-left:5px solid #1b75bc;box-shadow:0 12px 35px #17394e09}body[data-role=admin] .workspace-intro:before{background:repeating-linear-gradient(135deg,transparent 0 22px,#1b75bc05 22px 23px)}body[data-role=admin] .workspace-intro:after{border-color:#1b75bc35;background:linear-gradient(145deg,#1b75bc12,#39b54a08);box-shadow:18px 18px 0 -2px #edf5f8,18px 18px 0 0 #39b54a45,36px 36px 0 -2px #edf5f8,36px 36px 0 0 #e3272635}body[data-role=admin] .workspace-intro h2{color:#173c56}body[data-role=admin] .workspace-intro p{color:#4e6d82}body[data-role=admin] .workspace-intro .eyebrow{color:#486f88}body[data-role=admin] .workspace-intro>button{background:#fff;color:#34566d;border-color:#bdcfde}
body[data-role=admin] .dispatch-lane{background:#e4edf4;border-color:#ccdae5}body[data-role=admin] .dispatch-lane>h3{color:#3e5c72}body[data-role=admin] .dispatch-lane>h3 span{background:#fff;color:#34566d}body[data-role=admin] .card,body[data-role=admin] .simple-job,body[data-role=admin] .job-section{background:#fff;border-color:#cddce6;box-shadow:0 8px 24px #17394e07}body[data-role=admin] .simple-job:hover{border-color:#8aaec7;box-shadow:0 12px 30px #17394e12}body[data-role=admin] .simple-job h3,body[data-role=admin] .simple-job .next-label{color:#17394f}body[data-role=admin] p,body[data-role=admin] .small,body[data-role=admin] small,body[data-role=admin] .simple-job .small,body[data-role=admin] .simple-job small{color:#526e82}body[data-role=admin] .job-facts{color:#597488;border-color:#dce6ed}body[data-role=admin] .job-facts b,body[data-role=admin] .money{color:#17394f}body[data-role=admin] button,body[data-role=admin] .button{background:#f3f7fa;color:#294c65;border-color:#c6d8e5}body[data-role=admin] .simple-job>button:not(.primary){background:#eaf3fa;color:#1b5b88;border-color:#c1d9e9}body[data-role=admin] .simple-job button[data-textjob]{background:transparent;color:#456c86}body[data-role=admin] .primary{background:#e32726;border-color:#e32726;color:#fff}body[data-role=admin] .primary:hover{background:#c82120;color:#fff}body[data-role=admin] .pill.pending{background:#e7f2fb;color:#1b6599;border-color:#c9e1f2}body[data-role=admin] .pill.agreed{background:#eaf6ec;color:#286c39;border-color:#c8e6cf}body[data-role=admin] .simple-job.job-finished{background:linear-gradient(145deg,#fff,#f0f9f1)}body[data-role=admin] .simple-job.job-finished h3{color:#286c39}
body[data-role=admin] label{color:#355971}body[data-role=admin] input,body[data-role=admin] select,body[data-role=admin] textarea{background:#fff;color:#17394f;border-color:#b8cddb}body[data-role=admin] input::placeholder,body[data-role=admin] textarea::placeholder{color:#667f91}body[data-role=admin] a{color:#1b6599}body[data-role=admin] .job-guide{background:linear-gradient(120deg,#fff,#edf5fb);border-top-color:#e32726}body[data-role=admin] .job-guide h2,body[data-role=admin] .job-section>summary{color:#17394f}body[data-role=admin] .job-progress li{color:#587185}body[data-role=admin] .job-progress li.current{color:#b51e20}body[data-role=admin] .job-progress li span{background:#edf4f9;color:#486b85;border-color:#c3d6e4}body[data-role=admin] .job-progress li.current span{background:#e32726;color:#fff;border-color:#e32726}body[data-role=admin] .job-progress li.done span{background:#e7f5ea;color:#286c39;border-color:#b9ddc3}body[data-role=admin] .slot,body[data-role=admin] .task-stat,body[data-role=admin] .calendar-day,body[data-role=admin] .calendar-entry{background:#f4f8fb;color:#294c65;border-color:#cbdce8}body[data-role=admin] .slot.chosen{background:#edf8ef;border-color:#71b981}body[data-role=admin] .calendar-entry.tentative{background:#fff6df}body[data-role=admin] .task-stat b{color:#587185}body[data-role=admin] .note{background:#edf4f9;color:#496c85}body[data-role=admin] .success{background:#eaf6ed;color:#286c39}body[data-role=admin] .error{background:#fff0ee;color:#9d2924}body[data-role=admin] .live-update{background:#e7f2fb;color:#245a7f;border-color:#bdd8eb}body[data-role=admin] .test-banner,body[data-role=admin] .access-alert,body[data-role=admin] .bid-alert{background:#fff5dc;color:#74581e;border-color:#e4ce9c}body[data-role=admin] dialog{background:#fff;color:#17394f;border-color:#c4d8e6}body[data-role=admin] .close{background:#edf4f9;color:#355971}body[data-role=admin] footer{color:#355971;border-color:#cbdbe6}body[data-role=admin] .footer-locations,body[data-role=admin] footer small{color:#587185}
/* Compact employee workspace headers. */
body[data-role=admin] .workspace-intro{min-height:0;padding:20px 24px;margin-bottom:20px;display:flex;align-items:center;gap:16px;border-radius:12px;flex-wrap:wrap}body[data-role=admin] .workspace-intro>div:first-child{flex:1 1 380px;min-width:0}body[data-role=admin] .workspace-intro h2{font-size:34px;line-height:1.1;max-width:none;margin:6px 0;letter-spacing:0}body[data-role=admin] .workspace-intro p{font-size:12px;max-width:none;margin:0}body[data-role=admin] .workspace-intro .eyebrow{font-size:8px;letter-spacing:1.8px}body[data-role=admin] .workspace-intro>button{position:static;align-self:center;min-height:38px;margin:0;flex:0 0 auto}body[data-role=admin] .workspace-intro .new-actions{position:static;margin:0;flex:0 0 auto}body[data-role=admin] .workspace-intro .new-actions button{min-height:40px;padding:10px 17px;font-size:12px;width:auto}body[data-role=admin] .workspace-intro:after{display:none}
@media(max-width:700px){body[data-role=admin] .workspace-intro{padding:17px 18px;gap:12px}body[data-role=admin] .workspace-intro>div:first-child{flex-basis:100%}body[data-role=admin] .workspace-intro h2{font-size:29px;padding-right:0}body[data-role=admin] .workspace-intro>button{position:static}body[data-role=admin] .workspace-intro .new-actions{margin:0 0 0 auto}body[data-role=admin] .workspace-intro .new-actions button{width:auto}}
.attention-badge{font:650 11px/1.5 Inter,sans-serif;padding:7px 9px;border-radius:5px;margin:0 0 8px!important}.attention-badge.waiting,body[data-role=admin] .attention-badge.waiting{background:#fff5dd;color:#74551b}.attention-badge.overdue,body[data-role=admin] .attention-badge.overdue{background:#ffedeb;color:#a32d2c}.production-columns{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:22px}.production-list{display:flex;flex-direction:column;gap:15px}.production-task{display:block;padding:20px;background:#fff;border:1px solid #ccdce7;border-radius:10px}.production-task h3{margin-bottom:12px}.production-task p{font-size:12px}.production-task details{margin:14px 0}.production-task .row{margin-top:16px}body[data-role=admin] .production-task .attention-badge{display:block}.portal-home{max-width:210px;white-space:normal}@media(max-width:700px){.production-columns{grid-template-columns:1fr}.portal-home{max-width:110px;font-size:10px}}
/* Compact daily work surfaces. */
body[data-role=admin] main>header{min-height:0;margin-bottom:10px;align-items:center}body[data-role=admin] main>header h1{font-size:29px;margin:0}body[data-role=admin] main>header .eyebrow{display:none}body[data-role=admin] .workspace-intro{padding:11px 16px;margin-bottom:14px;gap:10px}body[data-role=admin] .workspace-intro h2{font-size:25px;margin:0}body[data-role=admin] .workspace-intro .eyebrow,body[data-role=admin] .workspace-intro p{display:none}body[data-role=admin] .workspace-intro>div:first-child{flex-basis:240px}body[data-role=admin] .workspace-intro .new-actions button,body[data-role=admin] .workspace-intro>button{min-height:36px;padding:8px 12px}body[data-role=admin] .simple-job[data-compact]{display:block;padding:12px 14px;gap:0}body[data-role=admin] .compact-job>summary{list-style-position:inside;cursor:pointer;display:block}body[data-role=admin] .compact-job>summary:before{content:'▸';float:right;color:#617f95}body[data-role=admin] .compact-job[open]>summary:before{content:'▾'}body[data-role=admin] .compact-job>summary h3{font-size:23px;margin:0 15px 5px 0;line-height:1.15}body[data-role=admin] .compact-job>summary .pill{font-size:9px;padding:3px 6px;margin-bottom:4px}body[data-role=admin] .compact-job>summary .next-label{font-size:11px;margin:5px 0;padding-left:7px}body[data-role=admin] .compact-job>summary small{font-size:10px}body[data-role=admin] .compact-job>summary .attention-badge{font-size:10px;padding:4px 6px;margin:5px 0 0!important}body[data-role=admin] .compact-job-body{padding-top:13px;display:flex;flex-direction:column;gap:9px}body[data-role=admin] .compact-job-body .row:empty{display:none}body[data-role=admin] .compact-job-body h3{font-size:23px}.job-type{font-size:10px;display:inline-block;padding:3px 7px;border-radius:4px;align-self:flex-start}.job-type.inhouse{background:#e7eafb;color:#51489b}.job-type.outsourced{background:#e4f2fa;color:#1c628e}.branch-calendar{margin:16px 0;border:1px solid #cbdbe6;border-radius:8px;padding:12px;overflow:auto}.branch-calendar>summary{font-size:15px;font-weight:700;margin-bottom:10px;cursor:pointer}.calendar-day{min-height:75px;padding:5px}.calendar-entry.compact-calendar{padding:6px 7px;gap:1px;margin:4px 0;min-height:0;box-shadow:none;border-left:3px solid #1b75bc;font-size:11px}.compact-calendar b{font-size:11px}.compact-calendar span,.compact-calendar small{font-size:10px}.compact-calendar.inhouse{border-right:3px solid #7866b6}.compact-calendar.outsourced{border-right:3px solid #7d929f}body[data-role=admin] .compact-calendar.confirmed{background:#eaf4fd;border-left-color:#1b75bc}body[data-role=admin] .compact-calendar.proposed{background:#fff6df;border-left-color:#c58b22}body[data-role=admin] .compact-calendar.complete{background:#eaf6ed;border-left-color:#39a64d}body[data-role=admin] .compact-calendar.hold{background:#ffecea;border-left-color:#d43b37}.payment-balance{background:#edf5fb;color:#173c56;padding:15px;border-radius:8px}.upload-status{margin:8px 0}.live-update{padding:9px 12px;margin:7px 0;font-size:11px}#notice:not(:empty){padding:9px 12px;margin:6px 0;font-size:12px}@media(max-width:700px){body[data-role=admin] .workspace-intro{padding:10px 13px}body[data-role=admin] .workspace-intro>div:first-child{flex-basis:100%}body[data-role=admin] .workspace-intro h2{font-size:24px}.dispatch-lane{padding:10px}.calendar-grid{min-width:620px}.branch-calendar{padding:8px}.calendar-day{min-height:65px}}
.calendar-entry.compact-calendar{color:#17394f}.calendar-entry.compact-calendar small{color:#486a80}.calendar-entry.compact-calendar.review,body[data-role=admin] .compact-calendar.review{background:#f0eafb;border-left-color:#8061bc}.calendar-entry.compact-calendar.payment,body[data-role=admin] .compact-calendar.payment{background:#e3f4f3;border-left-color:#2b918a}.calendar-entry.compact-calendar.confirmed{background:#eaf4fd}.calendar-entry.compact-calendar.proposed{background:#fff6df}.calendar-entry.compact-calendar.complete{background:#eaf6ed}.calendar-entry.compact-calendar.hold{background:#ffecea}
