:root{font-family:Arial,Helvetica,sans-serif;color:#14213f;background:#f6f8fc;font-synthesis:none;--blue:#0958ef;--muted:#72819d;--line:#dce3ef;--nav:#07264c}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled{opacity:.55;cursor:wait}button,a,input,select,textarea{outline-offset:4px}button:focus-visible,a:focus-visible{outline:3px solid #75a4ff}button{border:1px solid var(--line);background:white;color:#14213f;border-radius:10px;padding:13px 18px;font-weight:600;line-height:1.3}button:hover{background:#f0f5ff}.primary{background:var(--blue);color:#fff;border-color:var(--blue)}.primary:hover{background:#0649cf}.danger{color:#dc3434;border-color:#ffb5b5;background:white}.small{font-size:.875rem;padding:9px 13px}.muted{color:var(--muted)}.eyebrow{font-size:.75rem;letter-spacing:.15em;font-weight:700;color:#829abc;text-transform:uppercase}.sidebar{width:184px;position:fixed;inset:0 auto 0 0;background:linear-gradient(#092b56,#031d3b);color:#cad8ee;padding:35px 13px;display:flex;flex-direction:column;z-index:5}.logo{font-size:56px;color:#fff;font-weight:800;letter-spacing:-3px;margin:0 12px 21px}.sidebar .eyebrow{color:#e7eef9;margin:0 12px 37px}.nav{display:grid;gap:11px}.nav button{background:transparent;border:0;color:#cad8ee;text-align:left;padding:22px 14px;font-size:1rem;display:flex;align-items:center;gap:14px}.nav button.active{background:var(--blue);color:white}.nav button:hover{background:#174377}.nav svg{width:20px}.status{margin-top:auto;padding:24px 10px 8px;font-size:.875rem;line-height:1.7}.status small{display:block;color:#91a6c3;margin-top:4px}.status i{display:inline-block;width:9px;height:9px;background:#eaa83b;border-radius:50%;margin-right:8px}.status i.live{background:#31bd7d}.main{margin-left:184px}.topbar{background:white;border-bottom:1px solid var(--line);padding:26px 34px;display:flex;align-items:center;gap:30px;min-height:105px}.topbar h1{font-weight:500;font-size:2rem;margin:4px 0 0;white-space:nowrap}.week-picker{display:flex;align-items:center;border:1px solid var(--line);border-radius:13px;white-space:nowrap}.week-picker button{border:0;padding:12px;background:transparent}.week-picker span{font-size:.95rem;font-weight:700;min-width:178px;text-align:center}.search{margin-left:auto;position:relative;max-width:420px;flex:1;min-width:150px}.search svg{position:absolute;left:15px;top:17px;width:18px}.search input{padding-left:43px}.profile{display:flex;gap:12px;align-items:center;font-size:.875rem}.profile small{display:block;margin-top:7px;color:var(--muted)}.avatar{display:inline-flex;align-items:center;justify-content:center;background:#e9efff;color:var(--blue);border-radius:50%;height:42px;width:42px;flex:0 0 auto;font-size:.8rem;font-weight:700}.profile .avatar{width:46px;height:46px;font-size:1.15rem}main{padding:28px 34px 45px}.draft-banner{border:1px solid #f0d99e;background:#fff9e9;border-radius:10px;display:flex;align-items:center;gap:12px;justify-content:space-between;padding:10px 15px;font-size:.875rem;margin-bottom:22px;line-height:1.4}.draft-banner button{white-space:nowrap;background:transparent;border-color:#dcc78f}.stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr)) minmax(190px,.8fr);gap:15px;align-items:center;margin-bottom:36px}.stat{background:white;border:1px solid var(--line);border-radius:16px;display:flex;align-items:center;gap:18px;padding:24px 21px;min-height:150px}.stat .bubble{height:58px;width:58px;border-radius:50%;display:grid;place-items:center;flex:0 0 auto;background:#eaf0ff;color:#4874ed}.stat:nth-child(1) .bubble{background:#e5f7ee;color:#32ae73}.stat:nth-child(2) .bubble{background:#fff4de;color:#ec9c15}.stat:nth-child(3) .bubble{background:#f0f2f6;color:#778295}.stat .label{color:var(--muted);font-size:.9rem;line-height:1.4}.stat strong{display:block;font-size:2rem;margin:12px 0}.stat small{font-size:.8rem;color:var(--muted)}svg{width:21px;height:21px;display:inline-block;vertical-align:middle;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.stats>.primary{min-height:62px}.section-heading{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:18px}.section-heading h2{font-size:1.5rem;font-weight:500;margin:0 0 12px}.section-heading p{margin:0;color:var(--muted);font-size:.95rem}.actions{display:flex;gap:10px;align-items:center}.crew-bar{border:1px solid #d3e0ff;background:#edf3ff;border-radius:14px;padding:13px 15px;display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:16px}.crew-label{margin-right:8px;font-size:.875rem;line-height:1.6}.crew-label small{display:block;color:var(--muted);font-size:.75rem}.crew{border-radius:30px;display:flex;gap:9px;align-items:center;padding:5px 12px 5px 5px;font-size:.8rem;border-color:#cfdbf0;cursor:grab}.crew .avatar{color:white;width:35px;height:35px;font-size:.7rem}.grip{color:#acbcd4}.crew-add{border:1px dashed #c7d7fa;border-radius:30px;color:var(--blue);font-size:.8rem;padding:15px}.schedule-wrap{overflow:auto;background:white;border:1px solid var(--line);border-radius:15px}.schedule{border-collapse:separate;border-spacing:0;width:100%;min-width:1020px;table-layout:fixed}.schedule th{height:78px;font-size:.9rem;font-weight:400;border-bottom:1px solid var(--line);border-right:1px solid #e9edf4}.schedule th strong{font-size:1.45rem;margin-left:6px}.schedule th:first-child{width:250px;padding:16px;text-align:left;font-weight:700}.schedule td{border-right:1px solid #e9edf4;border-bottom:1px solid var(--line);vertical-align:top;padding:10px;height:130px}.schedule tr:last-child td{border-bottom:0}.schedule td:last-child,.schedule th:last-child{border-right:0}.schedule td.site-label{padding:22px 15px}.site-label-inner{display:flex;gap:11px;font-size:.85rem;line-height:1.5}.site-label small{display:block;color:var(--muted);font-size:.75rem;margin-top:4px}.site-icon{padding:12px;background:#eaf0ff;border-radius:11px;color:#6c8fff;height:44px;flex:0 0 auto}.today-col{background:#f3f7ff}.day-cell{position:relative}.day-cell.over{background:#dfeaff}.cell-add{width:100%;height:100%;min-height:75px;border:1px dashed transparent;background:transparent;font-size:1.15rem;color:transparent;padding:0}.cell-add:hover,.cell-add:focus-visible{border-color:#adc6fa;background:#f8faff;color:var(--blue)}.assignment{display:block;width:100%;max-height:172px;overflow:hidden;border:0;border-left:3px solid #176d55;border-radius:7px;background:#eaf5ef;padding:10px;text-align:left;margin-bottom:6px;font-size:.8rem;overflow-wrap:anywhere;line-height:1.5}.assignment strong,.assignment small{display:-webkit-box;-webkit-box-orient:vertical;overflow:hidden;-webkit-line-clamp:2}.assignment small{font-weight:400;font-size:.75rem}.assignment small:last-child{-webkit-line-clamp:1}.assignment+.cell-add{min-height:23px;height:23px}.footnote{font-size:.8rem;color:var(--muted);margin:14px 0;line-height:1.6}.panel{border:1px solid var(--line);background:white;border-radius:15px;padding:26px;margin-bottom:20px}.panel h3{margin:0 0 12px;font-weight:600}.list{display:grid;gap:9px}.list-row{display:flex;align-items:center;gap:12px;border:1px solid var(--line);padding:12px;border-radius:11px}.list-row .row-info{flex:1;min-width:0}.list-row small{display:block;color:var(--muted);margin-top:5px;font-size:.75rem}.list-row strong{font-size:.95rem}.list-row .avatar{color:white}.row-end{display:flex;gap:7px}.empty{text-align:center;padding:42px 20px;color:var(--muted)}input,select,textarea{border:1px solid #d4ddeb;border-radius:10px;padding:14px;width:100%;background:#fff;color:#33425d;min-height:49px}input::placeholder,textarea::placeholder{color:#929cad}label{font-weight:600;font-size:.875rem;display:grid;gap:9px}textarea{resize:vertical;min-height:82px}.inline-form{display:flex;gap:10px;margin-bottom:18px}.inline-form input{flex:1}.inline-form button{white-space:nowrap}dialog{padding:30px;border:0;border-radius:20px;width:min(760px,calc(100% - 30px));max-height:92vh;overflow:auto;box-shadow:0 30px 90px #07172b33;color:#14213f}dialog::backdrop{background:#15223799}dialog h2{font-size:1.8rem;font-weight:500;margin:12px 0 28px}.modal-close{position:absolute;right:28px;top:28px;border:0;border-radius:50%;width:42px;height:42px;padding:0;background:#f1f3f7;font-size:1.5rem}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:21px 16px}#assignment-form{display:grid;grid-template-columns:minmax(0,1fr);gap:24px}.full{grid-column:1/-1}.modal-actions{display:flex;gap:10px;justify-content:flex-end;margin-top:26px}.modal-actions .danger{margin-right:auto}.error{color:#a92222;background:#fff0f0;border-radius:8px;padding:12px;font-size:.875rem;line-height:1.5}.error:empty{display:none}.notice{font-size:.875rem;line-height:1.6;color:var(--muted);margin-top:20px}#toast{position:fixed;bottom:25px;left:50%;transform:translateX(-50%);background:#112d4c;color:white;padding:13px 20px;border-radius:11px;z-index:20;box-shadow:0 5px 25px #10243d22;max-width:90%;font-size:.9rem}#toast:empty{display:none}.report-table{width:100%;border-collapse:collapse;font-size:.875rem}.report-table th,.report-table td{text-align:left;padding:15px 10px;border-bottom:1px solid var(--line)}.report-table th{color:var(--muted)}.table-scroll{overflow:auto}.settings-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.settings-grid .panel{margin:0}.settings-grid p{color:var(--muted);line-height:1.6;font-size:.95rem}.pill{display:inline-block;background:#fff4dc;color:#8a640b;padding:5px 10px;border-radius:20px;font-size:.75rem;font-weight:600}.pill.live{background:#e6f6ef;color:#1c7354}.visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}.refresh{padding:9px}.storage-tools{display:flex;gap:8px;flex-wrap:wrap}a{color:var(--blue)}@media(min-width:1800px){.sidebar{width:195px}.main{margin-left:195px}.topbar{padding:28px 38px}.topbar h1{font-size:2.4rem}main{padding:30px 38px}.stat{min-height:161px;padding:28px 24px}.schedule th:first-child{width:310px}.schedule td{height:140px}}@media(max-width:1350px){.sidebar{width:160px}.main{margin-left:160px}.topbar{gap:18px;padding:22px}.topbar h1{font-size:1.7rem}.profile .profile-name{display:none}main{padding:24px 22px}.stats{grid-template-columns:repeat(4,1fr)}.stats>.primary{grid-column:1/-1;justify-self:end;min-height:45px}.stat{padding:18px 14px;gap:12px}.stat .bubble{width:40px;height:40px}.stat small{font-size:.75rem}.schedule th:first-child{width:230px}.search{max-width:290px}}@media(max-width:950px){.sidebar{width:78px;padding:22px 9px}.logo{font-size:30px;letter-spacing:-2px;margin:0 0 25px}.sidebar .eyebrow,.nav span,.status{display:none}.nav button{justify-content:center;padding:18px 12px}.main{margin-left:78px}.topbar{flex-wrap:wrap;gap:15px}.topbar h1{font-size:1.5rem}.search{order:4;max-width:none;flex-basis:100%}.profile{margin-left:auto}.stats{gap:10px}.stat{display:block;padding:16px}.stat .bubble{display:none}.stat strong{margin:10px 0}.section-heading{align-items:flex-start;flex-wrap:wrap}.settings-grid{grid-template-columns:1fr}}@media(max-width:600px){.sidebar{position:sticky;top:0;width:100%;height:61px;padding:7px 10px;flex-direction:row;align-items:center}.logo{font-size:26px;margin:0 14px 0 0}.nav{display:flex;gap:3px;flex:1;justify-content:space-between}.nav button{padding:11px}.main{margin-left:0}.topbar{padding:18px 16px}.topbar .eyebrow{font-size:.65rem}.topbar h1{font-size:1.35rem}.week-picker{margin-left:auto}.week-picker span{min-width:130px;font-size:.75rem}.week-picker button{padding:9px}.profile{display:none}main{padding:18px 13px}.stats{grid-template-columns:1fr 1fr;margin-bottom:24px}.stat{min-height:117px}.stat .label{font-size:.8rem}.stats>.primary{width:100%;justify-self:stretch}.draft-banner{align-items:flex-start;font-size:.75rem}.draft-banner button{font-size:.75rem;padding:8px}.section-heading h2{font-size:1.3rem}.section-heading p{font-size:.875rem;line-height:1.6}.actions button{font-size:.875rem;padding:11px}.crew-label{width:100%}.crew-bar{gap:7px}.crew{font-size:.75rem}.crew .avatar{width:30px;height:30px}.crew-add{padding:11px}.form-grid{grid-template-columns:1fr}.full{grid-column:auto}dialog{padding:24px 19px}.modal-close{right:17px;top:17px}dialog h2{font-size:1.5rem}.inline-form{flex-wrap:wrap}.inline-form button{width:100%}.list-row{gap:8px;flex-wrap:wrap}.row-end{margin-left:auto}.modal-actions{flex-wrap:wrap}.modal-actions button{flex:1}.panel{padding:20px 16px}}@media print{.assignment{max-height:none;overflow:visible}.assignment strong,.assignment small{display:block;overflow:visible;-webkit-line-clamp:unset}.sidebar,.topbar,.draft-banner,.crew-bar,.actions,.stats>.primary,.cell-add,#toast{display:none}.main{margin:0}main{padding:0}.schedule-wrap{overflow:visible}.schedule{min-width:0}.schedule th:first-child{width:160px}.schedule td{height:100px}.stats{grid-template-columns:repeat(4,1fr)}}
.legend{display:flex;gap:23px;padding:22px;border-top:1px solid var(--line);font-size:.875rem;color:var(--muted);align-items:center;flex-wrap:wrap}.legend span{display:flex;align-items:center;gap:8px}.legend i{width:10px;height:10px;border-radius:50%}.legend small{margin-left:auto;font-size:.75rem}.triple-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.triple-stats .panel{display:flex;justify-content:space-between;align-items:center;min-height:90px;font-size:.875rem}.triple-stats strong{font-size:1.8rem}.reports-stats .panel{display:block}.reports-stats strong{display:block;margin-top:20px}.report-table th{background:#f4f6fa;font-size:.75rem;letter-spacing:.04em;text-transform:uppercase}.report-table td{padding:18px 22px;line-height:1.5}.report-table th{padding:17px 22px}.report-table .hours{font-weight:700;color:#1c62f2;white-space:nowrap}.site-table td{padding:22px}.site-table th:first-child{width:60%}.site-table .row-end{justify-content:flex-end}.site-table{min-width:750px}.panel h2{font-weight:500}@media(max-width:600px){.triple-stats{gap:8px}.triple-stats .panel{display:block;padding:15px 12px}.triple-stats strong{display:block;margin-top:10px}.triple-stats .muted{font-size:.75rem}.legend{gap:15px;padding:16px}.legend small{width:100%;margin-left:0}.report-table{min-width:660px}}@media print{.panel{break-inside:avoid}.actions{display:none}.report-table{min-width:0}.report-table td,.report-table th{padding:8px;font-size:10px}.draft-banner{display:none}}
/* Employee profiles and expanded roster */
.crew-bar{align-items:flex-start}.crew-label{padding-top:7px;flex:0 0 215px}.crew-scroll{display:flex;gap:9px;flex-wrap:wrap;max-height:112px;overflow:auto;flex:1;min-width:0;padding:2px 6px 3px 2px;scrollbar-width:thin}.crew{flex-shrink:0}.employee-profile-link{border:0;background:transparent;padding:0;display:flex;align-items:center;gap:12px;text-align:left;flex:1;min-width:0;border-radius:7px}.employee-profile-link:hover{background:transparent;color:var(--blue)}.employee-profile-link .row-info{min-width:0}.employee-profile-link small{line-height:1.5;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;font-weight:400}.skill-pill{display:inline-block;background:#edf2f9;color:#506078;border-radius:7px;padding:7px 10px;font-size:.8rem;font-weight:600;white-space:nowrap}.skill-pill.lead{background:#e6f5ef;color:#19755b}.employee-profile-summary{display:flex;gap:24px;align-items:center;margin:22px 0 30px}.employee-profile-heading{display:grid;justify-items:start;gap:8px;align-content:center}.employee-profile-heading .pill{padding:8px 14px}.employee-profile-heading p{margin:0}.employee-profile-completeness{margin-left:auto;display:flex;align-items:center;gap:12px;color:#14213f}.employee-profile-ring{position:relative;width:72px;height:72px;flex:0 0 72px}.employee-profile-ring svg{display:block;width:100%;height:100%}.employee-profile-completeness circle{fill:none;stroke-width:4}.profile-progress-track{stroke:#e6edf8}.profile-progress-value{stroke:var(--blue);stroke-linecap:round;transition:stroke-dashoffset .25s ease}.profile-progress-number{position:absolute;inset:0;display:grid;place-items:center;color:#14213f;font-size:14px;line-height:1;font-weight:800;letter-spacing:-.02em}.employee-profile-copy{display:grid;gap:4px}.employee-profile-copy strong{font-size:.85rem}.employee-profile-copy small{color:var(--muted);font-size:.78rem}.employee-profile-summary .avatar{width:66px;height:66px;font-size:1.3rem;color:white}.employee-profile-summary p{margin:9px 0 0;font-size:.9rem}.profile-section{border-top:1px solid var(--line);padding:20px 0 6px}.profile-section h3{font-size:.85rem;letter-spacing:.025em;margin:0 0 13px;color:#526582}.service-list{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:8px}.service-list li{background:#edf3ff;color:#20498a;border:1px solid #dce7fb;border-radius:8px;padding:10px 12px;font-size:.9rem;line-height:1.5;max-width:100%;overflow-wrap:anywhere}.profile-notes{white-space:pre-wrap;line-height:1.65;margin:0;overflow-wrap:anywhere}.field-hint{font-size:.8rem;color:var(--muted);font-weight:400}.scope-work-internal-note{display:block;max-width:100%;margin-top:-2px;color:var(--muted);font-size:.76rem;font-weight:400;line-height:1.45}.name-link{border:0;padding:0;background:none;border-radius:3px;text-align:left;font-size:inherit;color:inherit}.name-link:hover{color:var(--blue);background:none;text-decoration:underline}@media(max-width:950px){.crew-label{flex-basis:100%;padding-top:0}.crew-scroll{flex-basis:100%}.employee-row{flex-wrap:wrap}.employee-profile-link{flex-basis:65%}}@media(max-width:600px){.employee-profile-link{flex-basis:100%}.employee-row .skill-pill{margin-left:54px}.employee-profile-link .avatar{width:40px;height:40px}.employee-row .row-end{margin-left:auto}.crew-scroll{max-height:133px}}@media print{.name-link{font-weight:700}.name-link:hover{color:inherit}}
.service-picker{margin:0;padding:0;border:0;min-width:0}.service-picker legend{font-size:.875rem;font-weight:600}.service-picker>.field-hint{line-height:1.5}.service-checklist{border:1px solid var(--line);border-radius:10px;padding:12px;max-height:300px;overflow:auto;scrollbar-width:thin}.service-choice-group+.service-choice-group{margin-top:3px}.service-checkbox{display:flex;align-items:flex-start;gap:10px;padding:8px 6px;font-weight:400;line-height:1.45;cursor:pointer;border-radius:5px}.service-checkbox:hover{background:#f1f5fc}.service-checkbox input{width:18px;height:18px;min-height:18px;padding:0;margin:1px 0 0;flex-shrink:0;accent-color:var(--blue)}.service-children{margin:0 0 10px 15px;border-left:2px solid #e2eafa;padding-left:14px}.service-children .service-checkbox{color:#53637a}.existing-services{border-top:1px solid var(--line);margin-top:12px;padding-top:10px}.existing-services h4{font-size:.875rem;margin:4px 6px}.existing-services p{margin:7px 6px}.additional-services{margin-top:15px}.catalog-list{list-style:none;padding:0;margin:24px 0}.catalog-list>li{padding:14px 0;border-bottom:1px solid var(--line);font-size:.95rem;line-height:1.5}.catalog-list ul{margin:10px 0 0;padding-left:24px;color:#596b85}.catalog-list ul li{padding:4px 0}.assignment-service{opacity:.85;font-style:italic}.assignment-vehicle{color:#465b80;font-weight:600}
.employee-photo{width:100%;height:100%;object-fit:cover;border-radius:50%;display:block}.avatar{overflow:hidden}.employee-profile-summary .small{margin-top:12px}.photo-editor{display:flex;align-items:center;gap:22px;padding:18px;background:#f5f8fe;border:1px solid var(--line);border-radius:12px;margin-bottom:15px}.photo-editor .avatar{width:88px;height:88px;font-size:1.6rem;color:white}.photo-controls{flex:1;min-width:0}.photo-upload{font-size:.875rem;display:grid;gap:9px}.photo-upload input{font-size:.8rem;min-height:0;border:0;padding:0;background:none;max-width:100%}.photo-upload input::file-selector-button{border:1px solid #bfd1f5;border-radius:7px;background:white;padding:8px 12px;color:#1553be;cursor:pointer;margin-right:10px}.photo-controls button{margin-top:10px}.photo-controls .field-hint{line-height:1.5}.photo-controls [hidden]{display:none}.client-type{font-size:.875rem;line-height:1.5;color:#526582}.site-table th:first-child{width:40%}.site-table{min-width:900px}@media(max-width:600px){.employee-profile-summary{gap:14px;align-items:flex-start;flex-wrap:wrap}.employee-profile-completeness{margin-left:78px;flex-basis:100%}.photo-editor{align-items:flex-start;gap:13px;padding:13px}.photo-editor .avatar{width:60px;height:60px;font-size:1.2rem}.photo-upload input{font-size:.75rem}}
.unallocated-link{display:block;border:0;background:none;padding:0;margin-top:11px;font-size:.75rem;font-weight:600;color:var(--blue);text-decoration:underline;text-underline-offset:3px;text-align:left;border-radius:2px}.unallocated-link:hover{background:none;color:#0038a8}.unallocated-intro{margin:-8px 0 22px;line-height:1.7}.unallocated-intro strong{color:#243b60}.stat .unallocated-link{max-width:180px}.stat{min-height:168px}@media(max-width:600px){.stat{min-height:145px}.unallocated-link{font-size:.75rem}.list-row .primary.small{font-size:.8rem}}
.schedule-project-delete{display:block;margin-top:12px;border:1px solid #f1cbcb;background:white;color:#b83232;font-size:.75rem;font-weight:600;padding:5px 10px;border-radius:6px}.schedule-project-delete:hover{background:#fff0f0;border-color:#dc8c8c}.delete-project-name{line-height:1.7;background:#f6f8fc;border:1px solid var(--line);border-radius:10px;padding:15px;margin:0 0 15px}#delete-schedule-project-form{margin-top:24px}.danger:disabled{cursor:not-allowed;opacity:.4}@media print{.schedule-project-delete{display:none}}
.schedule-project-actions{display:flex;gap:7px;flex-wrap:wrap;margin-top:12px}.schedule-project-actions .schedule-project-delete{margin-top:0}.schedule-project-edit{border:1px solid #ccd9ee;background:white;color:#2059b0;font-size:.75rem;font-weight:600;padding:5px 10px;border-radius:6px}.schedule-project-edit:hover{background:#edf3ff;border-color:#9ebbed}@media print{.schedule-project-actions{display:none}}
/* Keep all four summary cards equal, including the availability-link card. */
.stats{align-items:stretch}.stats>.stat{height:100%;min-width:0}.stats>.primary{align-self:center}.stat>div{min-width:0}.stat .unallocated-link{max-width:none}@media(max-width:600px){.stats{grid-template-rows:repeat(2,minmax(145px,1fr)) auto}.stats>.primary{align-self:stretch}}
.calendar-week-navigation{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:18px;margin:0 0 16px;padding:12px 15px;border:1px solid var(--line);border-radius:12px;background:white}.calendar-week-navigation button{display:flex;align-items:center;gap:10px;color:var(--blue);border-color:#cbdbfa;padding:10px 16px;justify-self:start;min-height:44px}.calendar-week-navigation button:last-child{justify-self:end}.calendar-week-navigation strong{text-align:center;font-size:1rem}.calendar-week-navigation button:hover{background:#edf3ff}@media(max-width:600px){.calendar-week-navigation{grid-template-columns:1fr 1fr;gap:10px;padding:12px}.calendar-week-navigation strong{grid-row:1;grid-column:1/-1;font-size:.95rem}.calendar-week-navigation button{grid-row:2;font-size:.8rem;padding:10px;justify-content:center;width:100%}.calendar-week-navigation button:last-child{grid-column:2}}@media print{.calendar-week-navigation{display:none}}
.sidebar .brand-logo{width:132px;height:132px;border-radius:50%;background:#e5edf5;display:flex;align-items:center;justify-content:center;align-self:center;margin:0 0 23px;flex-shrink:0;overflow:hidden;border:1px solid #bccde0}.brand-logo img{display:block;width:79%;height:79%;object-fit:contain}.sidebar>.eyebrow{text-align:center}@media(max-width:1350px){.sidebar .brand-logo{width:116px;height:116px}}@media(max-width:950px){.sidebar .brand-logo{width:58px;height:58px;margin:0 0 24px}}@media(max-width:600px){.sidebar .brand-logo{width:45px;height:45px;margin:0 12px 0 0;align-self:center}.brand-logo img{width:80%;height:80%}}
.account-trigger{background:transparent;border:1px solid transparent;padding:6px 8px;text-align:left;border-radius:12px;flex-shrink:0}.account-trigger:hover{background:#f0f5ff;border-color:#dce6f9}.account-chevron{color:#7c8eac;font-size:1.15rem;margin-left:4px}.account-avatar{background:#e9efff;color:#125bed}.account-tabs{display:flex;gap:6px;border-bottom:1px solid var(--line);padding-bottom:12px;flex-wrap:wrap}.account-tabs button{padding:10px 14px;border-color:transparent;font-size:.9rem}.account-tabs button.selected{background:#eaf1ff;color:#0c58df;border-color:#cadcfe}.account-demo-note{font-size:.85rem;line-height:1.6;padding:12px 14px;border-radius:9px;background:#fff8e9;color:#756039;margin:18px 0 22px}.account-facts{display:grid;grid-template-columns:1fr 1fr;gap:15px;margin:22px 0}.account-facts div{display:grid;gap:8px}.account-facts span{font-size:.8rem;color:var(--muted)}.account-facts strong{font-size:.9rem}.account-footer{display:flex;align-items:center;justify-content:space-between;gap:12px;border-top:1px solid var(--line);margin-top:25px;padding-top:20px;font-size:.8rem;color:var(--muted)}.permissions-list{margin:15px 0}.permissions-list>div{display:grid;grid-template-columns:140px 1fr;gap:18px;padding:17px 0;border-bottom:1px solid #e8edf5;line-height:1.6;font-size:.9rem}.permissions-list dt{font-weight:600}.permissions-list dd{margin:0;color:#687996}.account-role .notice{margin:12px 0}.login-screen{min-height:100vh;padding:40px 18px;display:flex;align-items:center;justify-content:center;background:#f0f4fb}.login-card{background:#fff;border:1px solid var(--line);border-radius:20px;padding:35px;max-width:490px;width:100%;box-shadow:0 14px 50px #09274d0b}.login-brand{width:92px;height:92px;border-radius:50%;background:#e5edf5;display:grid;place-items:center;margin:0 auto 22px}.login-brand img{width:79%;height:79%;object-fit:contain}.login-card>.eyebrow{text-align:center}.login-card h1{text-align:center;font-size:1.65rem;line-height:1.35;font-weight:500;margin:12px 0 20px}.login-card form{display:grid;gap:18px}.login-card form>.primary{width:100%}.demo-credentials{background:#f6f8fc;padding:12px 15px;border-radius:9px;margin-top:20px;font-size:.85rem;line-height:1.7}.demo-credentials p{margin:0 0 10px}.demo-credentials strong{overflow-wrap:anywhere}.account-footer button{flex-shrink:0}@media(max-width:600px){.topbar .account-trigger{display:flex;margin-left:auto;order:3;padding:4px}.account-trigger .profile-name,.account-chevron{display:none}.profile .avatar{width:38px;height:38px}.topbar .week-picker{order:4;width:100%;justify-content:space-between;margin-left:0}.topbar .search{order:5}.permissions-list>div{grid-template-columns:1fr;gap:5px}.account-tabs{gap:2px}.account-tabs button{font-size:.8rem;padding:9px}.login-card{padding:24px 20px}.account-footer{flex-wrap:wrap}}@media print{.account-trigger{display:none}}
.report-filters{display:grid;grid-template-columns:minmax(240px,1.4fr) minmax(210px,1fr);gap:18px}.report-filters>.footnote{grid-column:1/-1;margin:0}.report-filters form{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr auto;align-items:end;gap:15px}.report-filters .error{grid-column:1/-1}.analytics-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.analytics-stats .panel{padding:23px}.analytics-stats .muted{font-size:.9rem}.analytics-stats strong{display:block;font-size:2rem;margin-top:17px}.site-report-location{margin-top:10px!important;font-size:.85rem!important}.report-date-span{display:flex;gap:24px;flex-wrap:wrap;color:var(--muted);font-size:.85rem;margin:0 0 24px}.report-date-span strong{color:#344c71}.report-charts{display:grid;grid-template-columns:1fr 1fr;gap:18px}.report-chart{min-width:0}.bar-chart{display:grid;gap:15px;max-height:390px;overflow:auto;padding-right:6px;scrollbar-width:thin}.bar-row{display:grid;grid-template-columns:minmax(110px,1fr) minmax(60px,1.5fr) 58px;align-items:center;gap:12px;font-size:.85rem}.bar-label{overflow-wrap:anywhere;line-height:1.4}.bar-track{height:12px;background:#edf2fa;border-radius:4px;overflow:hidden}.bar-track>span{height:100%;display:block;background:#1460ee;border-radius:4px}.report-chart:nth-child(2) .bar-track>span{background:#148389}.bar-row strong{text-align:right;font-size:.8rem;color:#344c71}.report-pagination{display:flex;gap:15px;justify-content:flex-end;align-items:center;font-size:.875rem;margin:-4px 0 25px}.report-site-link{color:var(--blue);text-decoration:underline;text-underline-offset:3px}@media(max-width:950px){.report-charts{grid-template-columns:1fr}.analytics-stats{grid-template-columns:1fr 1fr}}@media(max-width:600px){.report-filters{grid-template-columns:1fr}.report-filters form{grid-template-columns:1fr}.analytics-stats{gap:10px}.analytics-stats .panel{padding:17px}.analytics-stats .muted{font-size:.8rem}.analytics-stats strong{font-size:1.7rem}.bar-row{grid-template-columns:minmax(90px,1fr) minmax(50px,1fr) 53px;gap:8px}.report-pagination{flex-wrap:wrap;justify-content:center}.report-date-span{gap:8px}.report-date-span span{display:block;width:100%}}@media print{.report-filters,.report-pagination{display:none}.report-charts{display:block}.bar-chart{max-height:none;overflow:visible}.bar-track,.bar-track>span{print-color-adjust:exact;-webkit-print-color-adjust:exact}.report-chart{break-inside:avoid}.analytics-stats{grid-template-columns:repeat(4,1fr)}.report-table thead{display:table-header-group}.report-table tr{break-inside:avoid}}

.login-links{display:flex;justify-content:space-between;gap:16px;margin-top:18px}.agency-credit{text-align:center;font-size:.85rem;color:var(--muted);margin:26px 0 0}.agency-credit a{color:#125bed;font-weight:600}.login-brand{width:130px;height:130px}.report-back{margin-bottom:18px}@media print{.report-back{display:none}}

.history-totals{display:flex;gap:22px;flex-wrap:wrap;background:#f2f6ff;padding:18px;border-radius:12px;margin:18px 0}.history-totals strong{color:#125bed}.history-site{border:1px solid var(--line);border-radius:12px;padding:20px;margin:14px 0;font-size:.9rem;line-height:1.6}.history-site-heading{display:flex;align-items:center;justify-content:space-between;gap:15px}.history-site h3{margin:0}.history-site summary{cursor:pointer;color:#125bed;font-weight:600;padding:12px 0}.history-site-heading button{flex-shrink:0}.history-site p{overflow-wrap:anywhere}@media(max-width:600px){.history-site-heading{align-items:flex-start;flex-direction:column}}

.health-status{display:flex;align-items:center;gap:8px;color:#d6e3f5;background:transparent;border:0;font-size:12px;margin:10px auto 0;padding:5px 8px;font-weight:500}.health-status:before{content:'';width:9px;height:9px;border-radius:50%;background:#e6ad35;flex-shrink:0}.health-status[data-state=green]:before{background:#2fca82;box-shadow:0 0 0 3px #2fca821a}.health-status[data-state=red]:before{background:#ff6262}.health-status.login-health{color:#526783;margin:12px auto}.health-status:hover{background:#839ab51a}@media print{.health-status{display:none}}

.schedule-wrap{max-height:65vh;overflow:auto;overscroll-behavior:contain;scrollbar-gutter:stable}.schedule thead th{position:sticky;top:0;z-index:3;background:#fff;box-shadow:0 1px 0 var(--line)}.schedule td.site-label{position:sticky;left:0;z-index:2;background:#fff}.schedule thead th:first-child{left:0;z-index:4}.schedule-scroll-hint{font-size:.8rem;color:var(--muted);margin:0 0 9px}.schedule-wrap:focus-visible{outline:3px solid #75a4ff;outline-offset:3px}@media print{.schedule-wrap{max-height:none;overflow:visible;scrollbar-gutter:auto}.schedule thead th,.schedule td.site-label{position:static}.schedule-scroll-hint{display:none}}

/* Center the live check immediately below the sidebar title. */
@media(min-width:951px){.sidebar>.eyebrow{text-align:center;margin:0 0 4px;width:100%}.sidebar>.health-status{align-self:center;justify-content:center;margin:0 auto 28px}}

.stats{grid-template-columns:repeat(4,minmax(0,1fr))}.schedule-actions{align-items:stretch;flex-shrink:0}.schedule-actions button{display:inline-flex;align-items:center;justify-content:center;gap:7px;white-space:nowrap;min-height:46px}@media(max-width:1200px){.section-heading:has(.schedule-actions){flex-wrap:wrap}.schedule-actions{margin-left:auto}}@media(max-width:600px){.stats{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:repeat(2,minmax(145px,1fr))}.schedule-actions{width:100%;gap:6px}.schedule-actions button{font-size:.72rem;padding:9px 7px;gap:4px;flex:1}.schedule-actions svg{width:16px;height:16px}}

.confidence-row{display:flex;align-items:center;gap:14px;margin:16px 0}.confidence-row progress{appearance:none;width:100%;height:14px;border:0;border-radius:20px;overflow:hidden;background:#e9eef7;accent-color:#0958ef}.confidence-row progress::-webkit-progress-bar{background:#e9eef7;border-radius:20px}.confidence-row progress::-webkit-progress-value{background:#0958ef;border-radius:20px}.confidence-row progress::-moz-progress-bar{background:#0958ef;border-radius:20px}.confidence-row strong{min-width:45px;color:#0958ef}

.worker-info{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 24px;margin:20px 0}.worker-info dt{font-size:.82rem;color:var(--muted);margin-bottom:7px;font-weight:600}.worker-info dd{margin:0;line-height:1.5;overflow-wrap:anywhere}@media(max-width:600px){.worker-info{grid-template-columns:1fr}}

.site-directory-tabs{display:flex;gap:10px;flex-wrap:wrap;margin:22px 0 14px}.site-directory-tabs button{display:inline-flex;align-items:center;gap:10px;color:#425474}.site-directory-tabs button.selected{background:#eaf1ff;color:#0958ef;border-color:#bdd1fc}.site-directory-tabs button span{background:#eef2f8;border-radius:99px;padding:2px 9px;font-size:.8em}.site-directory-tabs button.selected span{background:white}@media(max-width:560px){.site-directory-tabs{display:grid;grid-template-columns:1fr 1fr;gap:7px}.site-directory-tabs button{padding:10px 8px;justify-content:center;font-size:.82rem}}
.employee-roster-tabs{display:flex;gap:10px;flex-wrap:wrap;margin:22px 0 14px}.employee-roster-tabs button{display:inline-flex;align-items:center;gap:10px;color:#425474}.employee-roster-tabs button.selected{background:#eaf1ff;color:#0958ef;border-color:#bdd1fc}.employee-roster-tabs button span{background:#eef2f8;border-radius:99px;padding:2px 9px;font-size:.8em}.employee-roster-tabs button.selected span{background:white}@media(max-width:560px){.employee-roster-tabs{display:grid;grid-template-columns:1fr 1fr;gap:7px}.employee-roster-tabs button{padding:10px 8px;justify-content:center;font-size:.82rem}.inline-form{flex-wrap:wrap}.inline-form #employee-name-search,.inline-form input{min-width:0;flex:1 1 100%}}

.assignment[draggable=true]{cursor:grab;touch-action:none}.assignment[draggable=true]:active,.assignment.dragging{cursor:grabbing;opacity:.5}.day-cell.over{background:#edf4ff!important;outline:2px dashed #6a91f4;outline-offset:-5px}.day-cell.over .cell-add{opacity:1}

.confidential-pay{color:#765514;background:#fff8e9;border-color:#efdfa8}

.site-profile-heading{align-items:flex-end}.site-profile-heading .actions{flex-wrap:wrap}.site-profile-link{text-align:left;font-weight:700}.site-profile-details h3{margin-top:0}.site-profile-notes{grid-column:1/-1}.site-profile-filters{margin-bottom:18px}.site-profile-filters>.footnote{grid-column:1/-1}.site-profile-filters form{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr auto;align-items:end;gap:15px}.site-profile-filters form .error{grid-column:1/-1}.report-filters-site{grid-template-columns:repeat(3,minmax(180px,1fr))}.site-upsell-panel>.section-heading{align-items:flex-start}.site-upsell-panel>.section-heading p{max-width:850px}.site-opportunity-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.site-opportunity-list>div{border:1px solid var(--line);border-radius:10px;padding:14px;display:grid;gap:6px}.site-opportunity-list span{font-size:.8rem;color:var(--muted);line-height:1.45}.site-profile-footer{justify-content:flex-end;margin:20px 0}@media(max-width:700px){.site-profile-heading{align-items:flex-start}.site-profile-heading .actions{width:100%;justify-content:flex-start}.site-profile-filters form{grid-template-columns:1fr}.report-filters-site{grid-template-columns:1fr}.site-opportunity-list{grid-template-columns:1fr}}@media print{.site-profile-footer{display:none}.site-profile-heading .actions button:not([data-action=print]){display:none}.site-profile-filters{display:none}}

#today-print-root{display:none}.today-share-table{width:100%;border-collapse:collapse;font-size:12px}.today-share-table th,.today-share-table td{border:1px solid #bac6d8;padding:8px 9px;text-align:left;vertical-align:top;white-space:pre-wrap;overflow-wrap:anywhere}.today-share-table th{background:#e9eef6;color:#1c2a43;font-weight:700}.today-share-table tbody tr:nth-child(even){background:#f6f8fb}.today-share-empty{text-align:center!important;color:#63728b;padding:24px!important}.today-share-header{margin:0 0 22px}.today-share-header h1{font-size:24px;margin:8px 0}.today-share-header p{margin:0 0 5px;color:#33425d}.today-share-header small,.today-share-footer{color:#63728b}.today-share-footer{margin-top:18px;font-size:10px}@media print{body.printing-today> :not(#today-print-root){display:none!important}body.printing-today #today-print-root{display:block!important;position:static;page:todaySchedule;width:100%;padding:0;background:#fff;color:#17263f;font:10px Arial,Helvetica,sans-serif}body.printing-today .today-share-header{margin-bottom:10px}body.printing-today .today-share-header h1{font-size:18px;margin:5px 0}body.printing-today .today-share-header p{margin-bottom:3px}body.printing-today .today-share-table{font-size:8px;line-height:1.2;table-layout:fixed}body.printing-today .today-share-table th,body.printing-today .today-share-table td{padding:3px 4px;print-color-adjust:exact;-webkit-print-color-adjust:exact}body.printing-today .today-share-table th:nth-child(1){width:12%}body.printing-today .today-share-table th:nth-child(2){width:15%}body.printing-today .today-share-table th:nth-child(3){width:16%}body.printing-today .today-share-table th:nth-child(4){width:13%}body.printing-today .today-share-table th:nth-child(5){width:23%}body.printing-today .today-share-table th:nth-child(6){width:11%}body.printing-today .today-share-table th:nth-child(7){width:10%}body.printing-today .today-share-person+.today-share-person{margin-top:3px;padding-top:3px}body.printing-today .today-share-scope>div+div{margin-top:4px;padding-top:3px}body.printing-today .today-share-table thead{display:table-header-group}body.printing-today .today-share-table tr{break-inside:avoid}}

.crew-assignment-picker{grid-column:1/-1;min-width:0;margin:0;padding:12px;border:1px solid var(--line);border-radius:10px}.crew-assignment-picker legend{padding:0 5px;font-weight:600}.crew-assignment-picker>.field-hint{margin:0 0 10px;line-height:1.5}.crew-assignment-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:5px 12px;max-height:190px;overflow:auto;padding:8px;border:1px solid #e6ebf3;border-radius:8px}.crew-assignment-option{display:flex;align-items:center;gap:8px;padding:3px;font-size:.85rem;font-weight:400;line-height:1.35;min-width:0}.crew-assignment-option input{width:18px;min-height:18px;margin:0;padding:0;flex:0 0 auto;accent-color:var(--blue)}.crew-assignment-name{border:0;background:transparent;padding:5px 0;text-align:left;font-size:inherit;font-weight:400;line-height:inherit;min-width:0;overflow-wrap:anywhere}.crew-assignment-name:hover{background:transparent;color:var(--blue);text-decoration:underline}.employee-profile-return{margin:0 0 12px}@media(max-width:600px){.crew-assignment-options{grid-template-columns:1fr}}
@page{size:landscape;margin:12mm}@page todaySchedule{size:portrait;margin:8mm}

.today-share-employee strong,.today-share-employee small{display:block}.today-share-employee small{margin-top:3px;color:#63728b;font-size:9px;font-weight:400}.today-share-person+.today-share-person{margin-top:5px;padding-top:5px;border-top:1px solid #dce3ef}.today-share-scope>div+div{margin-top:7px;padding-top:6px;border-top:1px solid #dce3ef}.today-share-scope strong{display:block;margin-bottom:2px}@media print{body.printing-today .today-share-employee small{font-size:8px}}
.company-addresses dd{display:flex;flex-wrap:wrap;gap:7px}.company-addresses dd span{padding:5px 9px;border-radius:8px;background:#edf3ff;color:#334f7c}.assignment-address{font-weight:600;color:#435b82}
.vehicle-settings-panel{grid-column:1/-1}.vehicle-settings-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;max-height:390px;overflow:auto;padding:2px 4px 2px 0}.vehicle-settings-row{display:grid;grid-template-columns:48px minmax(0,1.2fr) minmax(0,1fr);align-items:center;gap:12px;padding:12px 14px;border:1px solid var(--line);border-radius:10px;background:#fbfcff;font-size:.9rem}.vehicle-settings-number{color:var(--blue);font-weight:700}.vehicle-settings-name{font-weight:600}.vehicle-settings-nickname{color:var(--muted)}@media(max-width:760px){.vehicle-settings-list{grid-template-columns:1fr}.vehicle-settings-panel{grid-column:auto}}
.vehicle-settings-heading{display:flex;justify-content:space-between;align-items:center;gap:15px}.vehicle-settings-heading h3{margin-bottom:0}.vehicle-settings-heading p{margin-top:8px}.vehicle-settings-row{grid-template-columns:48px minmax(130px,1.1fr) minmax(120px,1fr) auto}.vehicle-settings-actions{display:flex;gap:7px;justify-content:flex-end}.vehicle-settings-actions button{white-space:nowrap}.vehicle-settings-panel .empty{grid-column:1/-1}@media(max-width:980px){.vehicle-settings-row{grid-template-columns:40px minmax(0,1fr) minmax(0,1fr)}.vehicle-settings-actions{grid-column:2/-1;justify-content:flex-start}}
.maintenance-list{display:grid;gap:10px;max-height:52vh;overflow:auto}.maintenance-record{display:flex;justify-content:space-between;align-items:flex-start;gap:18px;border:1px solid var(--line);border-radius:10px;padding:14px;background:#fbfcff}.maintenance-record>div:first-child{min-width:0}.maintenance-record>div:first-child strong,.maintenance-record>div:first-child span{display:block}.maintenance-record>div:first-child span{color:var(--muted);font-size:.85rem;margin-top:5px}.maintenance-record p{margin:10px 0 0;color:#435574;white-space:pre-wrap}.maintenance-record-actions{display:flex;gap:7px;flex:0 0 auto}@media(max-width:620px){.maintenance-record{display:grid}.maintenance-record-actions{justify-content:flex-start}}
.project-address-section{border:0;padding:0;margin:0}.project-address-heading{display:flex;justify-content:space-between;align-items:center;margin:0 0 10px}.project-address-heading h3{font-size:1rem;margin:0;color:#14213f}.site-address-list{display:grid;gap:10px}.site-address-row{display:grid;grid-template-columns:minmax(0,1fr) 48px;gap:10px;align-items:center}.site-address-remove{height:48px;padding:8px;font-size:1.35rem;color:#64748b}.site-address-remove:disabled{visibility:hidden}.add-address-button{min-width:42px;color:var(--blue);font-size:1rem}.project-address-section .field-hint{display:block;margin-top:8px}
.assignment-service-control{position:relative;display:grid;gap:7px}.assignment-service-title{font-weight:600}.assignment-service-toggle{width:100%;min-width:0;display:flex;justify-content:space-between;align-items:center;gap:14px;text-align:left;font-size:.9rem;line-height:1.45}.assignment-service-toggle span:first-child{min-width:0;white-space:normal;overflow-wrap:anywhere;line-height:1.3}.assignment-service-options{position:absolute;z-index:20;left:0;right:0;top:61px;max-height:270px;overflow:auto;padding:10px 14px;background:white;border:1px solid var(--line);border-radius:11px;box-shadow:0 14px 30px #10244b2b}.assignment-service-options[hidden]{display:none}.assignment-service-section{padding:8px 0 10px;border-bottom:1px solid #edf1f7}.assignment-service-section:last-of-type{border-bottom:0}.assignment-service-section-title{margin:0 0 5px;padding:5px 4px;color:#f36e16;font-size:.95rem;font-weight:800;line-height:1.3}.assignment-service-subheading{margin:8px 0 2px;padding:4px 4px;color:#283955;font-size:.875rem;font-weight:700}.assignment-service-option{display:flex;align-items:center;gap:9px;padding:6px 4px;font-size:.875rem;font-weight:500;cursor:pointer}.assignment-service-depth-1{padding-left:24px}.assignment-service-depth-2{padding-left:44px}.assignment-service-option input{width:16px;height:16px;min-height:16px;padding:0;accent-color:var(--blue);flex:0 0 16px}
.vehicle-settings-row{grid-template-columns:40px minmax(0,1fr) minmax(0,1fr);grid-template-areas:"number name nickname" "actions actions actions";gap:12px 14px;align-items:center;min-width:0;padding:16px}.vehicle-settings-number{grid-area:number}.vehicle-settings-name{grid-area:name;min-width:0;overflow-wrap:anywhere}.vehicle-settings-nickname{grid-area:nickname;min-width:0;overflow-wrap:anywhere}.vehicle-settings-actions{grid-area:actions;display:flex;gap:8px;justify-content:flex-start;flex-wrap:wrap;min-width:0}.vehicle-settings-actions button{white-space:nowrap}@media(max-width:520px){.vehicle-settings-row{grid-template-columns:36px minmax(0,1fr);grid-template-areas:"number name" "number nickname" "actions actions";gap:9px 12px;padding:14px}.vehicle-settings-actions{gap:7px}.vehicle-settings-actions button{flex:1 1 auto}}
.catalog-service-categories{display:grid;gap:20px;max-height:62vh;overflow:auto;padding-right:8px}.catalog-service-section h3{margin:0 0 10px;color:#f36e16;font-size:1.2rem;font-weight:800;line-height:1.3}.catalog-service-section ul{margin:0;padding-left:24px}.catalog-service-section li{margin:2px 0;line-height:1.4}.catalog-service-section li ul{padding-left:26px;margin:2px 0}.catalog-service-subgroup{margin:8px 0!important}.catalog-service-subgroup>strong{font-weight:800}
.account-contact-fields{margin:18px 0}.office-staff-section{border:1px solid var(--line);border-radius:12px;background:#f7f9fd;padding:20px;margin:20px 0}.office-staff-section .section-heading{margin:0 0 14px}.office-staff-section h3{margin:0}.office-staff-section p{margin:6px 0 0;color:var(--muted)}.office-staff-card{display:flex;align-items:center;gap:14px;padding:14px 16px;background:#fff;border:1px solid var(--line);border-radius:10px;min-width:0}.office-staff-card>.avatar{flex:0 0 48px;width:48px;height:48px;font-size:1rem}.office-staff-info{display:grid;gap:4px;min-width:0;flex:1}.office-staff-info>.name-link{width:max-content;max-width:100%;padding:0;text-align:left;font-weight:700}.office-staff-info>strong{color:var(--ink)}.office-staff-contact{color:var(--muted);overflow-wrap:anywhere}.office-staff-contact a{color:inherit}.office-staff-info>small{font-size:.78rem;color:var(--muted)}@media(max-width:620px){.office-staff-section{padding:14px}.office-staff-card{align-items:flex-start;flex-wrap:wrap}.office-staff-card>.small{margin-left:62px}}

/* Keep headings, form labels, and chart annotations in proportion across core screens. */
#assignment-form label,#employee-edit label{font-size:.9rem;line-height:1.45}
#assignment-form .field-hint,#employee-edit .field-hint{font-size:.825rem;line-height:1.5}
.assignment-service-option,.crew-assignment-option{font-size:.9rem;line-height:1.4}
.assignment-service-section-title{font-size:1rem;line-height:1.35}
.assignment-service-subheading{font-size:.9rem;line-height:1.35}
.profile-section h3{font-size:1rem;line-height:1.35}
.worker-info dt{font-size:.875rem;line-height:1.35}
.site-profile-details h3{font-size:1.15rem;line-height:1.35}
.bar-row{font-size:.875rem;line-height:1.45}
.bar-row strong{font-size:.85rem}
@media(max-width:950px){.analytics-stats .muted{font-size:.85rem}}
@media(max-width:600px){#assignment-form label,#employee-edit label{font-size:.875rem}}
