.client-workspace{--cw-accent:#0fe8dc;background:#080e0f;color:#eef5f3;min-height:100vh;font-family:Arial,sans-serif}.client-workspace *{box-sizing:border-box}.client-workspace header{min-height:105px;padding:24px 4%;border-bottom:1px solid #273638;display:flex;align-items:center;gap:24px}.client-workspace header a{display:block;width:150px}.client-workspace header svg{width:100%;height:auto}.client-workspace header>span{letter-spacing:.16em;font-size:11px;color:#b4c7c6}.client-workspace header>button{margin-left:auto}.client-workspace button{cursor:pointer;border:1px solid #496568;background:transparent;color:inherit;border-radius:3px;padding:13px 17px;font-weight:700}.client-workspace button:disabled{opacity:.5;cursor:wait}.client-workspace button:focus-visible,.client-workspace input:focus-visible,.client-workspace select:focus-visible{outline:2px solid var(--cw-accent);outline-offset:-2px}.client-workspace h1{font-size:clamp(48px,7vw,94px);line-height:1;letter-spacing:-.05em;margin:30px 0}.client-workspace h1 em{font-style:normal;color:var(--cw-accent)}.client-workspace h2{font-size:clamp(29px,3vw,43px);line-height:1.05;letter-spacing:-.035em;margin:18px 0}.client-workspace p{color:#aec1c1;line-height:1.6}.client-workspace .cw-entry{max-width:1440px;margin:auto;display:grid;grid-template-columns:1.1fr 1fr;gap:7%;padding:70px 4% 60px}.client-workspace .cw-kicker{color:var(--cw-accent);font-size:11px;font-weight:800;letter-spacing:.18em}.client-workspace .cw-intro{font-size:21px}.client-workspace .cw-panel{background:#111b1d;border:1px solid #293a3d;padding:35px}.client-workspace .cw-panel form{display:grid;gap:20px;margin-top:35px}.client-workspace label{display:grid;gap:9px;font-size:13px;font-weight:700}.client-workspace input,.client-workspace select{background:#080e0f;color:#eef5f3;border:1px solid #52676a;padding:14px;width:100%;font:inherit;border-radius:3px}.client-workspace .cw-primary{background:var(--cw-accent);color:#041516;border-color:var(--cw-accent);text-align:left}.client-workspace .cw-fine{font-size:12px;margin-top:30px}.client-workspace [role=alert]{color:#ffc7b7}.client-workspace .cw-content{max-width:1150px;margin:auto;padding:55px 4% 80px}.client-workspace .cw-content>h1{font-size:clamp(42px,6vw,72px)}.client-workspace .cw-controls{display:flex;gap:20px;margin:35px 0}.client-workspace .cw-controls label{flex:1}.client-workspace .cw-requests{display:grid;gap:10px}.client-workspace article{display:grid;gap:8px;padding:18px 0;border-bottom:1px solid #314649}.client-workspace article strong{font-size:24px}.client-workspace article span{color:#b0c7c7}.client-workspace footer{padding:30px 4%;font-size:11px;color:#aac1c1;border-top:1px solid #273638}@media(max-width:700px){.client-workspace header{padding:22px 5%;gap:15px;flex-wrap:wrap}.client-workspace header a{width:125px}.client-workspace .cw-entry{grid-template-columns:1fr;padding:35px 5%;gap:35px}.client-workspace .cw-panel{padding:24px}.client-workspace h1{font-size:clamp(48px,12vw,72px)}.client-workspace .cw-controls{flex-direction:column}.client-workspace .cw-content{padding:35px 5% 60px}}


.client-workspace .cw-section-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap}.client-workspace .cw-demand{margin-top:28px;border-top:3px solid var(--cw-accent)}.client-workspace fieldset{border:0;padding:0;margin:0;min-width:0;display:grid;gap:22px}.client-workspace textarea{background:#080e0f;color:#eef5f3;border:1px solid #52676a;padding:14px;width:100%;min-height:110px;font:inherit;border-radius:3px;resize:vertical}.client-workspace textarea:focus-visible{outline:2px solid var(--cw-accent);outline-offset:-2px}.client-workspace .cw-actions{display:flex;flex-wrap:wrap;gap:12px}.client-workspace .cw-demand .cw-controls{margin:0}.client-workspace article button{justify-self:start}.client-workspace [role=status]{overflow-wrap:anywhere}

.client-workspace .cw-work{margin-top:28px}.client-workspace h3{font-size:22px;line-height:1.3}.client-workspace .cw-work article{overflow-wrap:anywhere}

/* Client entry and authenticated demand network. Geographic paths are real
   country boundaries; heat represents the explicitly labelled source. */
.client-workspace .cw-entry{align-items:start;gap:5%;padding-top:48px}
.client-workspace .cw-entry>section>h1{font-size:clamp(48px,6.4vw,84px);margin:24px 0}
.client-workspace .cw-entry .cw-intro{font-size:18px}
.client-workspace .cw-sign-in{margin-top:12px;position:sticky;top:28px;padding:30px}
.client-workspace .cw-login-tabs{display:grid;grid-template-columns:1fr 1fr;border-bottom:1px solid #365054;gap:8px;margin:-6px 0 30px;padding-bottom:12px}
.client-workspace .cw-login-tabs button{border:0;border-bottom:2px solid transparent;border-radius:0;padding:14px 8px;color:#b3c6c8;background:transparent;min-height:48px}
.client-workspace .cw-login-tabs button[aria-pressed=true]{border-bottom-color:var(--cw-accent);color:var(--cw-accent);background:#14272a}
.client-workspace .cw-network{margin:30px 0 0;background:#0d181c;border:1px solid #294248;overflow:hidden;position:relative}
.client-workspace .cw-network-heading{position:relative;z-index:1;padding:22px 24px 0;display:flex;align-items:start;justify-content:space-between;gap:16px}
.client-workspace .cw-network-heading .cw-kicker{margin:0 0 8px;font-size:10px}
.client-workspace .cw-network-heading h2{font-size:22px;line-height:1.2;margin:0;letter-spacing:-.025em}
.client-workspace .cw-network-stage{position:relative;min-height:350px;display:grid;grid-template-columns:1.15fr 1fr;align-items:center}
.client-workspace .cw-network-stage svg{display:block;width:100%;height:350px;overflow:visible}
.client-workspace .cw-map-graticule path{stroke:#23393e;stroke-width:1;opacity:.45}
.client-workspace .cw-map-land{fill:#203940;stroke:#538087;stroke-width:1.15}
.client-workspace .cw-map-neighbour{fill:#14282d;stroke:#2e4a50;stroke-width:.9}
.client-workspace .cw-map-point{fill:#d8fff8;stroke:#0dcbbc;stroke-width:2}
.client-workspace .cw-map-point-zero{fill:#17353a;stroke:#86aeb3}
.client-workspace .cw-map-region-labels path{fill:none;stroke:#92b5b7;stroke-width:1;opacity:.6}
.client-workspace .cw-map-region-labels text{fill:#b6d4d4;font-size:12px;font-weight:700;letter-spacing:2px}
.client-workspace .cw-network-places{position:relative;padding:20px 20px 20px 0;display:grid;gap:25px;align-content:center}
.client-workspace .cw-network-places>div{border-left:2px solid #2e6a6d;padding-left:14px}
.client-workspace .cw-network-places span{display:block;color:#e4f5f3;font-size:14px;font-weight:700}
.client-workspace .cw-network-places p{font-size:12px;line-height:1.8;margin:7px 0 0;color:#acc6c8}
.client-workspace .cw-network-places strong{display:block;font-size:30px;line-height:1.2;color:var(--cw-accent);margin:8px 0}
.client-workspace .cw-network-places small{font-size:10px;color:#9bb9bd;letter-spacing:.08em}
.client-workspace .cw-network figcaption{border-top:1px solid #294248;padding:16px 24px;font-size:11px;line-height:1.5;color:#c4d9d9}
.client-workspace .cw-network figcaption small{display:block;color:#93b2b7;font-size:10px;margin-top:5px}
.client-workspace .cw-map-key{display:inline-block;width:7px;height:7px;border:1px solid #93e5df;border-radius:50%;margin-right:8px;background:#24a89f}
.client-workspace .cw-map-total{text-align:right;flex-shrink:0}
.client-workspace .cw-map-total strong{display:block;font-size:38px;line-height:1;color:var(--cw-accent)}
.client-workspace .cw-map-total span{display:block;font-size:10px;color:#adcbce;margin-top:6px}
.client-workspace .cw-network-live .cw-network-stage{grid-template-columns:1.3fr 1fr}
.client-workspace .cw-network-live .cw-network-stage svg{height:390px}
.client-workspace .cw-admin-heading{display:flex;justify-content:space-between;align-items:start;gap:24px}
.client-workspace .cw-admin-heading h1{font-size:clamp(38px,5vw,64px);margin:16px 0}
.client-workspace .cw-outline-link{border:1px solid #57777a;display:inline-block;padding:14px 18px;color:#d5f4f1;text-decoration:none;font-size:12px;line-height:1.4;white-space:nowrap;margin-top:24px}
.client-workspace a:focus-visible{outline:2px solid var(--cw-accent);outline-offset:-2px}
.client-workspace .cw-admin .cw-controls{align-items:end;flex-wrap:wrap}
.client-workspace .cw-admin .cw-controls button{min-height:47px}
.client-workspace .cw-admin-requests,.client-workspace .cw-admin-clients{margin-top:26px;padding:26px}
.client-workspace .cw-admin h2{font-size:26px;margin:0}
.client-workspace .cw-admin .cw-section-heading>span{font-size:12px;color:#aecbcc}
.client-workspace .cw-admin .cw-section-heading a{color:var(--cw-accent);font-size:12px}
.client-workspace .cw-table-wrap{overflow-x:auto;margin-top:22px}
.client-workspace table{border-collapse:collapse;width:100%;text-align:left;font-size:13px}
.client-workspace th{font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:#92b5b9;padding:12px 14px;border-bottom:1px solid #466166}
.client-workspace td{padding:16px 14px;border-bottom:1px solid #2b4247;vertical-align:top;overflow-wrap:anywhere;max-width:280px}
.client-workspace .cw-client-list{margin-top:18px}
.client-workspace .cw-client-list article{grid-template-columns:1fr auto;gap:8px 20px}
.client-workspace .cw-client-list article strong{font-size:21px}
.client-workspace .cw-client-list p{margin:3px 0;font-size:13px}
.client-workspace .cw-client-list article>span{font-size:12px;align-self:center}
.client-workspace .cw-client-list article>small{grid-column:1/-1;color:#a5c3c5;font-size:12px}
@media(max-width:900px){.client-workspace .cw-network-stage{grid-template-columns:1fr}.client-workspace .cw-network-places{padding:0 20px 20px;grid-template-columns:1fr 1fr;gap:15px}.client-workspace .cw-network-stage svg{height:320px}.client-workspace .cw-network-live .cw-network-stage{grid-template-columns:1fr}.client-workspace .cw-network-live .cw-network-stage svg{height:330px}}
@media(max-width:700px){.client-workspace .cw-sign-in{position:static;margin-top:0;padding:22px}.client-workspace .cw-entry{gap:28px;padding-top:28px}.client-workspace .cw-network-heading{padding:18px 18px 0}.client-workspace .cw-network-heading h2{font-size:21px}.client-workspace .cw-network-stage{grid-template-columns:1.1fr 1fr;min-height:280px}.client-workspace .cw-network-stage svg{height:290px}.client-workspace .cw-network-places{grid-template-columns:1fr;padding:14px 12px 14px 0;gap:20px}.client-workspace .cw-network-places>div{padding-left:10px}.client-workspace .cw-network figcaption{padding:14px 18px}.client-workspace .cw-admin-heading{display:block}.client-workspace .cw-outline-link{margin-top:5px;white-space:normal}.client-workspace .cw-admin-requests,.client-workspace .cw-admin-clients{padding:20px}.client-workspace .cw-network-live .cw-network-stage{grid-template-columns:1fr 1fr}.client-workspace .cw-network-live .cw-network-stage svg{height:290px}.client-workspace .cw-map-total strong{font-size:32px}.client-workspace .cw-client-list article{grid-template-columns:1fr}.client-workspace .cw-client-list article>small{grid-column:auto}}
@media(max-width:380px){.client-workspace .cw-network-stage,.client-workspace .cw-network-live .cw-network-stage{grid-template-columns:1fr}.client-workspace .cw-network-places{grid-template-columns:1fr 1fr;padding:0 15px 18px;gap:12px}.client-workspace .cw-network-places p{font-size:11px}.client-workspace .cw-network-stage svg{height:300px}.client-workspace .cw-login-tabs button{font-size:12px}.client-workspace .cw-network-heading{flex-wrap:wrap}}



/* Client control room: existing DRIVR palette, real canonical data. */
.cw-control-room{display:grid;grid-template-columns:248px minmax(0,1fr);max-width:1800px;margin:0 auto;min-height:calc(100vh - 105px)}.cw-sidebar{padding:42px 24px;border-right:1px solid #273638;display:flex;flex-direction:column;background:#0b1314}.cw-sidebar-brand strong{display:block;font-size:27px;line-height:1.12;letter-spacing:-.04em;margin:20px 0 44px}.cw-sidebar nav{display:grid;gap:8px}.client-workspace .cw-sidebar nav button{text-align:left;padding:16px 10px;border:0;font-size:13px;color:#a7bfbe;display:flex;gap:12px;align-items:center}.cw-sidebar nav button span{font-size:10px;color:#607b79}.cw-sidebar nav button b{margin-left:auto}.client-workspace .cw-sidebar nav button[aria-current=page]{color:#0fe8dc;background:#123332;border-left:2px solid #0fe8dc}.cw-sidebar-foot{margin-top:auto;padding-top:80px;font-size:11px;color:#b0c4c2}.cw-sidebar-foot a{color:#c4dad7}.cw-status-dot{display:inline-block;width:6px;height:6px;background:#0fe8dc;border-radius:50%;margin-right:6px}.cw-admin-body{padding:44px 4%;min-width:0}.cw-admin-body h1{font-size:clamp(38px,4.3vw,68px);margin:18px 0;line-height:1.02}.cw-admin-body h1 em{color:#0fe8dc;font-style:normal}.cw-admin-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:24px}.cw-admin-heading>div>p:last-child{font-size:14px;line-height:1.6}.client-workspace .cw-refresh{padding:10px 16px;margin-top:4px;white-space:nowrap}.cw-admin-filters{display:flex;flex-wrap:wrap;align-items:flex-end;border-bottom:1px solid #273638;padding:20px 0 26px;margin:8px 0 28px}.cw-source-time{margin-left:auto;font-size:11px;color:#90aaa7;padding-bottom:12px}.cw-admin-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-bottom:28px}.client-workspace .cw-admin-metrics button{display:flex;flex-direction:column;align-items:flex-start;text-align:left;background:#101c1d;border:1px solid #2b4140;padding:22px;border-radius:4px}.cw-admin-metrics button>span{font-size:12px;font-weight:400;color:#c1d2cf}.cw-admin-metrics strong{font-size:48px;line-height:1.3;letter-spacing:-.06em;color:#f1f9f6}.cw-admin-metrics small{font-size:10px;font-weight:400;color:#85aaa4}.client-workspace .cw-admin-metrics button:hover{border-color:#0fe8dc;background:#122625}.cw-admin-body .cw-network{margin-bottom:24px}.cw-admin-body .cw-network-stage{min-height:360px}.cw-admin-body .cw-network-stage>svg{max-height:400px}.cw-admin-body .cw-panel{margin:24px 0;padding:26px}.cw-admin-body .cw-panel h2{font-size:27px}.cw-admin-body .cw-table-wrap table{font-size:13px}.cw-admin-body .cw-table-wrap th{font-size:10px;text-transform:uppercase;letter-spacing:.08em;color:#91aaa7}.cw-admin-body .cw-table-wrap td,.cw-admin-body .cw-table-wrap th{padding:16px 12px;border-bottom:1px solid #263a38;text-align:left}.cw-request-status{display:inline-block;font-size:11px;background:#183c36;color:#a2e1ca;padding:5px 9px;border-radius:3px}.cw-admin-bottom{display:flex;justify-content:space-between;gap:16px;padding:24px 0;color:#6f9390;font-size:11px}.cw-admin-bottom a{color:#b2ceca}.cw-client-search{display:grid;gap:8px;max-width:420px;font-size:12px;color:#b4cac6;margin:24px 0}.cw-client-search input{width:100%}.cw-admin-body .cw-client-list article{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;padding:22px 0;border-bottom:1px solid #283e3b}.cw-client-list article>small{grid-column:1;color:#a9c2bb}.cw-client-list article>a{grid-column:2;font-size:11px;color:#0fe8dc}.cw-client-list article>div>strong{font-size:21px}.cw-client-list article>div>p{font-size:12px;margin:5px 0}.cw-access-active,.cw-access-inactive{font-size:10px;align-self:start;padding:7px 9px;background:#183c36;color:#a2e1ca;border-radius:3px}.cw-access-inactive{background:#352d23;color:#e4c596}.cw-week-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:8px;margin-top:24px}.client-workspace .cw-week-grid button{display:flex;flex-direction:column;align-items:flex-start;text-align:left;padding:16px 10px;background:#0c1718;border:1px solid #334a45}.client-workspace .cw-week-grid button[aria-pressed=true]{border-color:#0fe8dc;background:#123532}.cw-week-grid button>span:first-child{font-size:11px;font-weight:400}.cw-week-grid strong{font-size:32px;margin:18px 0 8px}.cw-week-grid small{font-size:10px;font-weight:400;color:#a3beba}.cw-week-grid .cw-day-count{font-size:10px;margin-top:26px;font-weight:400;color:#86aaa3}.cw-calendar-arrows{display:flex;gap:8px}.client-workspace .cw-calendar-arrows button{padding:8px 12px}.client-workspace .cw-auth-entry{display:block;text-align:center;text-decoration:none;padding:18px;margin:28px 0;color:#062523}.client-workspace a:focus-visible{outline:2px solid var(--cw-accent);outline-offset:-2px}
@media(max-width:1024px){.cw-control-room{grid-template-columns:190px minmax(0,1fr)}.cw-sidebar{padding:32px 16px}.cw-sidebar nav button{font-size:11px!important;gap:8px!important}.cw-admin-body{padding:32px 24px}.cw-week-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.cw-admin-metrics{gap:10px}.client-workspace .cw-admin-metrics button{padding:16px}.cw-admin-metrics strong{font-size:38px}}
@media(max-width:767px){.cw-control-room{display:block}.cw-sidebar{padding:12px 16px;border-right:0;border-bottom:1px solid #273638}.cw-sidebar-brand,.cw-sidebar-foot{display:none}.cw-sidebar nav{display:flex;gap:4px;overflow-x:auto}.client-workspace .cw-sidebar nav button{flex:1;white-space:nowrap;padding:12px 8px;font-size:11px!important}.cw-sidebar nav button span,.cw-sidebar nav button b{display:none}.cw-admin-body{padding:28px 16px}.cw-admin-heading{gap:8px}.cw-admin-heading h1{font-size:37px}.client-workspace .cw-refresh{padding:9px 10px;font-size:10px}.cw-admin-metrics{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.client-workspace .cw-admin-metrics button{padding:12px 9px}.cw-admin-metrics button>span{font-size:10px}.cw-admin-metrics strong{font-size:32px}.cw-admin-metrics small{font-size:9px;line-height:1.5}.cw-admin-body .cw-panel{padding:16px}.cw-admin-body .cw-panel h2{font-size:24px}.cw-source-time{width:100%;margin:0;padding:0}.cw-admin-filters>label{flex:1;min-width:110px}.cw-week-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.cw-admin-bottom{font-size:10px}.cw-client-list article>a{grid-column:1}.cw-admin-body .cw-client-list article{gap:8px}.cw-client-list article>div>strong{font-size:18px}.cw-admin-body .cw-network-stage{min-height:0}}

.client-workspace .cw-admin-body .cw-controls{margin:20px 0 28px}.client-workspace .cw-admin-body .cw-controls label{min-width:0}
@media(max-width:767px){.client-workspace .cw-admin-body .cw-controls{flex-direction:row;align-items:flex-end;gap:12px}.client-workspace .cw-admin-body .cw-controls label{width:100%;flex:1 1 100%}.cw-admin-body .cw-source-time{padding-top:4px}.cw-sidebar nav button{justify-content:center}}





/* Calendar: canonical dated requests and confirmed DRIVR bookings. */
.client-workspace .cw-calendar{margin:28px 0;padding:24px}
.client-workspace .cw-calendar h2{font-size:28px;margin:8px 0}
.client-workspace .cw-calendar-nav{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:24px 0 12px}
.client-workspace .cw-calendar-nav span{font-size:15px;font-weight:700;text-align:center}
.client-workspace .cw-calendar-help{font-size:13px}
.client-workspace .cw-calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:8px;margin:20px 0}
.client-workspace .cw-calendar-day{display:grid;gap:10px;min-width:0;padding:14px 10px;text-align:left;background:#0b1417;border:1px solid #365054;font-size:10px;align-content:start}
.client-workspace .cw-calendar-day>strong{font-size:18px;line-height:1.2}
.client-workspace .cw-calendar-day>span{display:flex;justify-content:space-between;gap:6px;color:#c0d0d0;flex-wrap:wrap}
.client-workspace .cw-calendar-day>span:first-child{text-transform:uppercase;letter-spacing:.1em;font-size:10px}
.client-workspace .cw-calendar-day b{color:#f3faf8}
.client-workspace .cw-calendar-day small{font-size:10px;color:#ffd5a2}
.client-workspace .cw-calendar-day.cw-selected{border:2px solid var(--cw-accent);padding:13px 9px;background:#173536}
.client-workspace .cw-calendar-day .cw-shortfall,.client-workspace .cw-calendar-day .cw-shortfall b{color:#ffd5a2}
.client-workspace .cw-calendar-totals{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;border-top:1px solid #365054;padding-top:20px}
.client-workspace .cw-calendar-totals span{display:block;font-size:12px;color:#b4cbcb}
.client-workspace .cw-calendar-totals strong{display:block;font-size:38px;line-height:1.3;color:var(--cw-accent)}
@media(max-width:900px){.client-workspace .cw-calendar-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:600px){.client-workspace .cw-calendar{padding:18px}.client-workspace .cw-calendar-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.client-workspace .cw-calendar-day{font-size:12px}.client-workspace .cw-calendar-totals strong{font-size:32px}}

.client-workspace .cw-public-check{display:flex;align-items:center;gap:12px;line-height:1.5}.client-workspace .cw-public-check input{width:20px;height:20px;flex-shrink:0}

.client-workspace .cw-directory table{min-width:660px}.client-workspace .cw-directory td{overflow-wrap:normal;min-width:100px}.client-workspace .cw-directory th:first-child,.client-workspace .cw-directory td:first-child{min-width:170px}



/* Flat DRIVR surfaces: colour, spacing and a single border. */
.client-workspace .cw-entry{column-gap:5%;row-gap:32px}.client-workspace .cw-panel{border-radius:6px}.client-workspace .cw-primary{background:#0fe8dc;color:#062523;border:1px solid #0fe8dc}.client-workspace .cw-primary:hover{background:#65f1e6}.client-workspace .cw-sign-in{padding:32px}.client-workspace .cw-login-tabs{gap:4px;border-bottom:1px solid #294248;padding-bottom:10px}.client-workspace .cw-login-tabs button[aria-pressed=true]{background:#16302f;border-color:#0fe8dc;color:#0fe8dc}
@media(max-width:700px){.client-workspace .cw-entry{row-gap:24px;padding-top:28px}.client-workspace .cw-sign-in{padding:24px}}

/* Tomorrow's confirmed roster is separate from recorded demand. */
.client-workspace .cw-admin-body .cw-tomorrow-roster{margin:0 0 28px;border-top:2px solid #0fe8dc;background:linear-gradient(120deg,#142c29,#101d20);box-shadow:0 12px 32px #0003}.cw-tomorrow-roster .cw-kicker{font-size:10px}.client-workspace .cw-tomorrow-roster h2{font-size:28px;margin:8px 0}.cw-tomorrow-body{display:grid;grid-template-columns:minmax(190px,.7fr) minmax(0,1.5fr);gap:28px;margin-top:24px}.cw-tomorrow-total{border-right:1px solid #345148;padding-right:25px}.cw-tomorrow-total>strong{display:block;font-size:76px;line-height:1;letter-spacing:-.065em;color:#e5fcf0}.cw-tomorrow-total>span{display:block;font-size:15px;font-weight:600;margin-top:14px}.cw-tomorrow-total>small{display:block;font-size:10px;color:#92b6a5;line-height:1.6;margin-top:9px}.client-workspace .cw-tomorrow-total>p{font-size:12px;margin:18px 0;color:#b9cfbf}.client-workspace .cw-tomorrow-total>button{font-size:11px;text-align:left;line-height:1.5;padding:11px 13px;border-color:#497864;color:#c8e8d2}.cw-tomorrow-depots{min-width:0}.cw-tomorrow-depots table{width:100%;border-collapse:collapse;min-width:360px}.cw-tomorrow-depots caption{text-align:left;color:#a9c5b7;font-size:11px;margin-bottom:14px}.cw-tomorrow-depots th,.cw-tomorrow-depots td{text-align:left;font-size:12px}.cw-tomorrow-depots th[scope=row]>strong{display:block;font-size:13px;color:#e5f2e9;font-weight:600}.cw-tomorrow-depots th[scope=row]>small{display:block;color:#88aa98;font-size:10px;margin-top:6px;font-weight:400}.cw-tomorrow-depots .cw-rostered-count{font-size:25px;font-weight:700;color:#0fe8dc}.cw-tomorrow-foot{display:flex;align-items:center;justify-content:space-between;gap:22px;border-top:1px solid #345148;margin-top:25px;padding-top:16px}.client-workspace .cw-tomorrow-foot p{font-size:10px;line-height:1.7;margin:0;color:#8dae9a}.cw-tomorrow-foot a{font-size:11px;color:#bce2c9;white-space:nowrap}.cw-tomorrow-depots [role=alert]{font-size:12px}.cw-tomorrow-depots [role=alert]>span{display:block;margin-top:8px;font-size:11px}
@media(max-width:900px){.cw-tomorrow-body{grid-template-columns:1fr;gap:22px}.cw-tomorrow-total{border:0;border-bottom:1px solid #345148;padding:0 0 20px}.cw-tomorrow-total>strong{font-size:64px}.cw-tomorrow-foot{display:block}.cw-tomorrow-foot a{display:inline-block;margin-top:12px}}
.cw-tomorrow-depots th,.cw-tomorrow-depots td{color:#bfd4c6}.cw-tomorrow-depots td:last-child{color:#d8c795}


/* Shared operational workspace, Admin and Client. */
.client-workspace .cw-roster{min-width:0;margin-top:1rem}
.client-workspace .cw-roster-totals{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem;margin:1rem 0}
.client-workspace .cw-roster-totals button{text-align:left;border:1px solid #a6c9c7;background:#f0f7f6;color:#102e35;padding:1rem}
.client-workspace .cw-roster-totals span,.client-workspace .cw-roster-totals strong,.client-workspace .cw-roster-totals small{display:block}
.client-workspace .cw-roster-totals strong{font-size:2rem;font-variant-numeric:tabular-nums;line-height:1.3}
.client-workspace .cw-roster-totals small{font-size:.75rem}
.client-workspace .cw-roster-dates{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:.5rem;margin:1rem 0}
.client-workspace .cw-roster-dates button{min-width:0;padding:.75rem .5rem;text-align:left;border:1px solid #bdd3d3;background:#fff;color:#18383c;font-size:.75rem}
.client-workspace .cw-roster-dates span{display:block;margin-top:.25rem}
.client-workspace .cw-roster-dates [aria-pressed=true]{background:#123c43;color:#fff;border-color:#123c43}
.client-workspace .cw-roster-reference{display:block;font-size:.75rem;font-weight:400;margin-top:.25rem}
.client-workspace .cw-roster-shortcuts{display:flex;flex-wrap:wrap;gap:.5rem}
.client-workspace .cw-roster table{width:100%;border-collapse:collapse;min-width:38rem;text-align:left}
.client-workspace .cw-roster th,.client-workspace .cw-roster td{padding:.75rem;border-bottom:1px solid #d6e2e2;font-size:.85rem}
.client-workspace .cw-roster caption{text-align:left;font-size:1rem;font-weight:600;padding:1rem 0}
.client-workspace .cw-roster-editor{margin:1rem 0;padding:1rem;border:1px solid #82aaa8;background:#eef6f5}
.client-workspace .cw-roster-editor label{display:block;margin:.75rem 0}
.client-workspace .cw-roster-editor input{display:block;width:100%;max-width:36rem}
.client-workspace .cw-admin-heading h1{font-size:clamp(1.75rem,3vw,3rem);line-height:1.1}
.client-workspace .cw-roster h2{font-size:1.5rem}
.client-workspace .cw-roster h3{font-size:1.1rem;margin:1.25rem 0 .75rem}
@media(max-width:767px){.client-workspace .cw-roster-dates{grid-template-columns:repeat(3,minmax(0,1fr))}.client-workspace .cw-roster-totals{gap:.5rem}.client-workspace .cw-roster-totals button{padding:.75rem .5rem}.client-workspace .cw-roster-totals strong{font-size:1.5rem}.client-workspace .cw-roster-totals small{display:none}.client-workspace .cw-roster-totals span{font-size:.75rem}}

.client-workspace button,.client-workspace input,.client-workspace select,.client-workspace textarea{font:inherit}
.client-workspace .cw-roster-totals button{background:#12363b;border-color:#356266;color:#e7fbfa}
.client-workspace .cw-roster-totals small{color:#b4cece;font-weight:400}
.client-workspace .cw-roster-dates button{background:#122a2e;border-color:#345659;color:#d9efee}
.client-workspace .cw-roster-dates [aria-pressed=true]{background:#0b6266;color:#fff;border-color:#15d8d1}
.client-workspace .cw-roster-editor{background:#122e32;border-color:#487a7a}

.cw-weekly-signals{margin-top:2rem;padding-top:1.5rem;border-top:1px solid var(--cw-border,#355052)}
.cw-weekly-signals caption{text-align:left;margin:.75rem 0;color:inherit}
.cw-weekly-signal{min-width:16rem;white-space:normal!important;line-height:1.6}
.cw-weekly-signals .cw-section-heading{gap:1rem;flex-wrap:wrap}

.cw-roster-net{padding:1rem;border:1px solid #355052;background:#15343a;display:grid;gap:.35rem;border-radius:3px}
.cw-roster-net strong{font-size:2rem}.cw-roster-net small{font-size:.75rem;color:#bed8db}


.cw-account-source{font-size:.75rem}.cw-account-editor{border:1px solid #356266;background:#0b1719;padding:1.5rem;margin:1.5rem 0}.cw-account-editor h3{font-size:1.25rem;margin:0}.cw-account-editor form{margin-top:1.5rem!important}.cw-account-editor fieldset{border:0;padding:0;min-width:0}.cw-account-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.cw-account-sites{margin:1.5rem 0!important}.cw-account-sites legend{font-size:.8rem;font-weight:700;margin-bottom:.75rem}.cw-account-sites label{display:inline-flex;align-items:center;margin:0 1.5rem .75rem 0}.client-workspace .cw-account-sites input{width:1.1rem;height:1.1rem;accent-color:var(--cw-accent)}.cw-account-actions{display:flex;flex-wrap:wrap;gap:.75rem;align-items:center;margin-top:1rem}.cw-client-list .cw-account-actions{grid-column:1/-1}.cw-client-list p{overflow-wrap:anywhere}.cw-account-confirm,.cw-account-password{padding:1rem;border:1px solid #567578;margin-top:1rem}.cw-account-confirm button{margin:0 .5rem .5rem 0}.cw-account-password output{display:block;font:1.1rem monospace;overflow-wrap:anywhere;margin:1rem 0;color:var(--cw-accent)}.cw-account-editor .cw-section-heading{gap:1rem;flex-wrap:wrap}.cw-account-editor .cw-fine{margin-top:1rem}@media(max-width:767px){.cw-account-fields{grid-template-columns:1fr}.cw-account-editor{padding:1rem}.cw-account-actions button{flex:1}.cw-account-password output{font-size:.9rem}}


/* Workspace controls stay above the operational content at every width. */
.cw-workspace-bar{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:1rem;padding:1rem 1.5rem;border-bottom:1px solid #273638;background:#0b1719}
.cw-workspace-status{display:flex;align-items:center;gap:.5rem;font-size:.875rem;font-weight:600;color:#d9efee}
.cw-workspace-status .cw-status-dot{margin:0}.cw-workspace-status small{font-size:.75rem;font-weight:400;color:#a7bfbe}
.cw-workspace-actions{display:flex;align-items:center;flex-wrap:wrap;gap:1rem}
.client-workspace .cw-workspace-actions button{min-height:44px;padding:.75rem 1rem;border-color:#356266;color:#d9efee;background:#12363b;font-size:.875rem}
.client-workspace .cw-workspace-actions button[aria-pressed=true]{border-color:var(--cw-accent);color:var(--cw-accent);background:#123332}
.cw-workspace-actions a{display:inline-flex;align-items:center;min-height:44px;color:#b4cece;font-size:.75rem;text-decoration:underline;text-underline-offset:.25rem}
@media(max-width:767px){.cw-workspace-bar{padding:1rem}.cw-workspace-actions{width:100%;gap:.75rem}.client-workspace .cw-workspace-actions button{flex:1}.cw-workspace-status{flex-wrap:wrap}}


/* Demand is the client input; supply is the driver workflow. */
.cw-coverage-table .cw-client-demand{background:rgba(15,232,220,.06);border-right:2px solid var(--cw-line,#32504e)}
.cw-coverage-table th small{display:block;margin-top:.35rem;font-size:.65rem;letter-spacing:0;text-transform:none;font-weight:400}
.cw-inline-actions{display:flex;flex-wrap:wrap;gap:.5rem;min-width:12rem}.cw-inline-actions button{padding:.5rem .75rem;min-height:44px;font-size:.8rem}
.cw-inline-route{width:7rem!important;min-width:0!important;padding:.5rem!important;min-height:44px}
.cw-inline-reason{display:flex;align-items:end;gap:.5rem;flex-wrap:wrap;padding:.5rem 0}.cw-inline-reason label{flex:1;min-width:10rem;max-width:30rem}.cw-inline-reason input{width:100%}.cw-inline-reason button{min-height:44px}
.cw-invitation{margin:1.5rem 0;border-top:1px solid var(--cw-line,#32504e);border-bottom:1px solid var(--cw-line,#32504e);padding:1rem 0}.cw-invitation-controls{display:flex;flex-wrap:wrap;align-items:end;gap:.75rem}.cw-invitation-controls label{flex:1;min-width:10rem}.cw-invitation-controls select{width:100%}.cw-invitation-preview{max-width:42rem;padding:1rem 0}.cw-invitation-preview pre{font-family:inherit;white-space:pre-wrap;overflow-wrap:anywhere;margin:1rem 0}.cw-invitation-preview button{margin-right:.5rem}.cw-directory-location{margin-top:1rem}

.cw-planning-navigation{margin:1.25rem 0;border-top:1px solid var(--cw-line,#32504e);padding-top:1.25rem}.cw-planning-heading{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap}.cw-planning-heading h3{margin:.25rem 0 1rem}.cw-planning-buttons{display:flex;gap:.5rem;flex-wrap:wrap}.cw-planning-buttons button{min-height:44px;padding:.5rem .75rem}.cw-planning-navigation>label{display:block;max-width:30rem;margin-top:.75rem}.cw-planning-navigation select{width:100%}.cw-planning-week>h3{font-size:.9rem;margin:1rem 0 .5rem}.cw-forecast-notice{font-size:.82rem;line-height:1.65;border-left:2px solid var(--cw-accent,#0fe8dc);padding:.5rem .75rem;margin:.75rem 0}.cw-roster-dates button{gap:.35rem}.cw-roster-dates small{font-size:.65rem;color:var(--cw-muted,#adbbbd)}.cw-forecast-gap{color:#f4ce84}.cw-planning-week .cw-roster-dates{margin-top:0}@media(max-width:600px){.cw-planning-buttons{width:100%;display:grid;grid-template-columns:1fr 1fr}.cw-planning-buttons button:nth-child(2){grid-column:1/-1;grid-row:2}.cw-planning-navigation>label{max-width:none}}

.cw-week-picker{position:relative;max-width:32rem;margin-top:.75rem}.cw-week-picker>label{display:block;margin-bottom:.5rem}.cw-week-picker>button{display:flex;align-items:center;justify-content:space-between;gap:1rem;width:100%;text-align:left;min-height:44px}.cw-week-options{position:absolute;z-index:20;top:100%;left:0;right:0;max-height:15rem;overflow-y:auto;overscroll-behavior:contain;background:#0b1516;border:1px solid #42635f;border-radius:3px;box-shadow:0 8px 20px #0006;padding:.25rem}.cw-week-options>button{display:block;width:100%;min-height:40px;padding:.55rem .65rem;text-align:left;border:0;border-radius:2px;font-size:.8rem;line-height:1.4;white-space:normal}.cw-week-options>button[aria-selected=true]{background:#193c38;color:#d5fff6}.cw-week-options>button:hover{background:#1b302f}.cw-week-options>button:focus-visible{background:#243d3a}@media(max-width:600px){.cw-week-picker{max-width:none}}

/* Phone layouts retain the same tables, source records and action handlers. */
@media(max-width:600px){
 .client-workspace input,.client-workspace select,.client-workspace textarea{font-size:16px;min-height:44px}
 .client-workspace button{min-height:44px}.client-workspace .cw-admin-body{padding:22px 12px}.client-workspace .cw-content{padding:24px 12px 40px}.client-workspace .cw-panel,.client-workspace .cw-admin-body .cw-panel{padding:16px 12px}
 .client-workspace .cw-sidebar nav{display:grid;grid-template-columns:1fr 1fr;gap:4px}.client-workspace .cw-sidebar nav button{min-height:44px;font-size:12px!important;white-space:normal}.cw-admin-heading h1{font-size:34px!important}
 .client-workspace .cw-roster-totals{grid-template-columns:repeat(2,minmax(0,1fr))}.cw-roster-net{padding:.75rem .5rem}.cw-roster-net small{display:none}.cw-roster-net strong{font-size:1.5rem}.client-workspace .cw-roster-shortcuts{width:100%;display:grid;grid-template-columns:1fr 1fr 1fr}.client-workspace .cw-roster-shortcuts button{padding:.5rem;font-size:12px}
 .client-workspace .cw-roster-dates{display:flex;overflow-x:auto;scroll-snap-type:x proximity;overscroll-behavior-x:contain;padding-bottom:8px;gap:8px}.client-workspace .cw-roster-dates button{flex:0 0 108px;scroll-snap-align:start;padding:10px;font-size:12px;min-height:106px}.client-workspace .cw-roster-dates small{font-size:11px}
 .cw-planning-heading{gap:.5rem}.cw-planning-heading h3{font-size:16px!important}.cw-week-picker>button{font-size:13px;line-height:1.5}.cw-week-options>button{min-height:44px;font-size:13px}.cw-forecast-notice{font-size:13px;line-height:1.55}
 .client-workspace .cw-roster table.cw-coverage-table,.client-workspace .cw-roster table.cw-driver-actions-table,.client-workspace .cw-directory table{min-width:0;width:100%;display:block}
 .client-workspace .cw-coverage-table thead,.client-workspace .cw-driver-actions-table thead,.client-workspace .cw-directory thead{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
 .client-workspace .cw-coverage-table tbody,.client-workspace .cw-driver-actions-table tbody,.client-workspace .cw-directory tbody{display:block}
 .client-workspace .cw-coverage-table tbody tr{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin-bottom:12px;border:1px solid #34504e;border-radius:3px;padding:8px;background:#0c191a}
 .client-workspace .cw-coverage-table th[scope=row]{grid-column:1/-1;font-size:13px;padding:8px 4px}.client-workspace .cw-coverage-table td{border:0;padding:8px 4px;font-size:18px;line-height:1.4}.client-workspace .cw-coverage-table td[data-label]::before{content:attr(data-label);display:block;font-size:11px;color:#adbbbd;font-weight:400;margin-bottom:4px}.client-workspace .cw-coverage-table .cw-client-demand{border-right:0}
 .client-workspace .cw-driver-actions-table tbody tr,.client-workspace .cw-directory tbody tr{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:12px;padding:14px 12px;border:1px solid #34504e;border-radius:3px;background:#0c191a}
 .client-workspace .cw-driver-actions-table th,.client-workspace .cw-driver-actions-table td,.client-workspace .cw-directory td{padding:0;border:0;min-width:0;overflow-wrap:anywhere;font-size:14px}.client-workspace .cw-driver-actions-table th,.client-workspace .cw-driver-actions-table td[colspan],.client-workspace .cw-driver-actions-table td[data-label=Controls],.client-workspace .cw-directory td[data-label=Driver]{grid-column:1/-1}
 .client-workspace .cw-driver-actions-table td[data-label]::before,.client-workspace .cw-directory td[data-label]::before{content:attr(data-label);display:block;color:#adbbbd;font-size:11px;margin-bottom:5px}.cw-inline-actions{min-width:0}.cw-inline-actions button{flex:1}.cw-inline-reason{display:grid;grid-template-columns:1fr}.cw-inline-reason label{min-width:0}.cw-inline-route{width:100%!important}.cw-invitation-controls{display:grid;grid-template-columns:1fr;width:100%}.cw-invitation-controls label{min-width:0}.cw-invitation-controls>button{width:100%}.cw-account-actions button{min-width:44px}
 .cw-weekly-signals .cw-table-wrap{border:1px solid #34504e;border-radius:3px}.cw-weekly-signals .cw-table-wrap::before{content:'Swipe to view the full weekly report →';display:block;padding:10px;font-size:12px;color:#adbbbd}.cw-weekly-signals table{min-width:42rem}.cw-weekly-signals th:first-child{position:sticky;left:0;background:#102021;z-index:1}
}

/* Compact authenticated client review and inline canonical requirement controls. */
.client-workspace header .cw-header-test{font-size:.75rem;padding:.5rem .75rem;min-height:44px;margin-left:auto}
.cw-inline-request{display:block;margin-top:.5rem;font-size:.75rem;min-height:44px}
@media(max-width:600px){.client-workspace header{flex-wrap:wrap;gap:.5rem}.client-workspace header .cw-header-test{margin-left:0}}
.client-workspace .cw-client-access{border:1px solid #345659;padding:1rem;margin:1rem 0}.client-workspace .cw-client-access h3{margin:0}.cw-invitation-preview{border-top:1px solid #345659;margin-top:1rem;padding-top:1rem}.cw-invitation-preview pre{white-space:pre-wrap;overflow-wrap:anywhere;font:inherit;line-height:1.6;color:#d9efee}
.client-workspace .cw-client-access a{color:var(--cw-accent);overflow-wrap:anywhere}@media(max-width:767px){.client-workspace .cw-account-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));width:100%}.client-workspace .cw-account-actions>span{grid-column:1/-1}.client-workspace .cw-account-actions button{width:100%;min-width:0;white-space:normal;overflow-wrap:anywhere;min-height:44px}}
/* One requirement input above a compact, read-only calendar. */
.client-workspace .cw-requirement-bar{display:flex;align-items:flex-end;flex-wrap:wrap;gap:1rem;padding:1rem 1.25rem;margin:1.25rem 0 1.5rem;border:1px solid #345659;border-left:3px solid var(--cw-accent);background:#0c191b;border-radius:3px}
.cw-requirement-date{min-width:140px;align-self:center}.cw-requirement-date>span{display:block;font-size:11px;text-transform:uppercase;letter-spacing:.1em;color:#aebfc0;margin-bottom:6px}.cw-requirement-date>strong{font-size:16px}.cw-requirement-depot{flex:1;min-width:180px;max-width:280px}.cw-requirement-depot-name{align-self:center;flex:1;font-weight:700}
.client-workspace .cw-panel form.cw-calendar-requirement{display:flex;align-items:flex-end;justify-content:flex-end;flex-wrap:wrap;gap:8px;margin:0;padding:0;border:0;flex:1;min-width:120px}.cw-calendar-requirement label{width:120px;flex:0 0 120px;font-size:12px}.client-workspace .cw-calendar-requirement input{height:48px;font-size:20px;font-weight:700;padding:10px 12px}.cw-calendar-save{display:flex;gap:6px;flex-wrap:wrap}.client-workspace .cw-calendar-save button{min-height:48px;padding:10px 12px;font-size:12px}.cw-calendar-requirement>small{width:100%;font-size:12px;color:#aec1c1;overflow-wrap:anywhere}
.cw-calendar-week-heading{display:flex;align-items:baseline;justify-content:space-between;gap:12px;flex-wrap:wrap;margin:1.5rem 0 .75rem}.client-workspace .cw-calendar-week-heading h3{font-size:16px;font-weight:700;margin:0;letter-spacing:0}.cw-calendar-week-heading>span{font-size:11px;color:#aebfc0}
.client-workspace .cw-roster-dates{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:8px;align-items:start;margin:0 0 1.25rem}
.client-workspace .cw-roster-dates .cw-calendar-cell{display:flex;flex-direction:column;justify-content:flex-start;gap:0;min-width:0;min-height:0;height:210px;padding:12px;text-align:left;font-size:13px;color:#eaf4f2;border:1px solid #345659;background:#0c1b1d;border-radius:3px}.client-workspace .cw-roster-dates .cw-calendar-cell[aria-pressed=true]{background:#123033;border-color:#35b9b0}.client-workspace .cw-calendar-cell span{margin:0}
.client-workspace .cw-calendar-cell .cw-cell-date{display:grid;grid-template-columns:1fr auto;width:100%;align-items:center;border-bottom:1px solid #294446;padding-bottom:10px}.cw-cell-date>span:first-child{font-size:12px;font-weight:700}.cw-cell-date>span:last-child{font-size:11px;color:#aebfc0}.cw-cell-date>strong{font-size:26px;line-height:1;grid-column:2;grid-row:1/3;letter-spacing:-.04em}
.client-workspace .cw-calendar-cell .cw-cell-stats{display:grid;gap:8px;width:100%;padding:12px 0}.client-workspace .cw-cell-stats>span{display:flex;align-items:center;justify-content:space-between;gap:8px}.cw-cell-stats>span>span{color:#afc3c3;font-weight:400;font-size:12px}.cw-cell-stats b{font-size:18px;line-height:1.2;font-variant-numeric:tabular-nums}.cw-cell-stats .cw-cell-gap b{color:#f4ce84}
.client-workspace .cw-calendar-cell .cw-cell-foot{margin-top:auto;width:100%;display:block;text-align:left}.cw-cell-foot small{display:block;font-size:10px;line-height:1.3;color:#b7cccc;min-height:14px}.cw-cell-foot progress{display:block;width:100%;height:4px;border:0;border-radius:2px;background:#294446;accent-color:var(--cw-accent);margin:0 0 8px;overflow:hidden}.cw-cell-foot progress::-webkit-progress-bar{background:#294446}.cw-cell-foot progress::-webkit-progress-value{background:var(--cw-accent)}.cw-cell-foot progress::-moz-progress-bar{background:var(--cw-accent)}
@media(max-width:1023px){.client-workspace .cw-roster-dates{display:flex;overflow-x:auto;scroll-snap-type:x proximity;overscroll-behavior-x:contain;padding-bottom:8px}.client-workspace .cw-roster-dates .cw-calendar-cell{flex:0 0 148px;scroll-snap-align:start;height:210px}.cw-calendar-week-heading>span{font-size:11px}}
@media(max-width:600px){.client-workspace .cw-requirement-bar{display:grid;grid-template-columns:1fr;padding:1rem;gap:12px}.cw-requirement-date{min-width:0}.cw-requirement-depot{max-width:none;min-width:0;width:100%}.client-workspace .cw-panel form.cw-calendar-requirement{justify-content:flex-start;min-width:0}.cw-calendar-requirement label{width:110px;flex-basis:110px}.client-workspace .cw-calendar-requirement input{font-size:18px}.client-workspace .cw-calendar-save button{padding:10px;font-size:12px}}
.client-workspace .cw-depot-breakdown-title{font-size:16px;line-height:1.4;margin:2rem 0 1rem}.client-workspace .cw-coverage-table .cw-inline-request{padding:8px 6px;font-size:11px;min-height:40px}
@media(max-width:767px){.client-workspace .cw-roster-totals.cw-client-totals{grid-template-columns:repeat(3,minmax(0,1fr))}.client-workspace .cw-client-totals button{min-width:0}.client-workspace .cw-client-totals button>span{font-size:11px}.client-workspace .cw-depot-breakdown-title{font-size:14px}}
/* Every day owns its continuously editable requirement, outside its selection button. */
.cw-calendar-day{min-width:0}.client-workspace .cw-calendar-day>.cw-calendar-cell{width:100%}.client-workspace .cw-day-requirement{display:block;min-height:104px;margin:0 0 8px;padding:10px;background:#101f21;border:1px solid #345659;border-radius:3px}.cw-day-requirement label{display:block;width:auto!important}.cw-day-requirement label>span{display:block;font-size:11px;color:#b7cccc;margin-bottom:6px}.client-workspace .cw-day-requirement input{width:100%;min-width:0;min-height:42px;padding:8px;font-size:22px;font-weight:700}.cw-day-requirement small{display:block;margin-top:6px;font-size:10px;line-height:1.3;min-height:26px}.cw-day-requirement button{width:100%;padding:8px;font-size:11px}.cw-daily-requirement-depot{display:flex;align-items:center;gap:16px;flex-wrap:wrap;margin:16px 0}.cw-daily-requirement-depot label{display:flex;align-items:center;gap:12px}.cw-daily-requirement-depot small{color:#b7cccc}@media(max-width:1023px){.client-workspace .cw-roster-dates .cw-calendar-day{flex:0 0 148px;scroll-snap-align:start}.client-workspace .cw-calendar-day>.cw-calendar-cell{width:100%;height:210px}.cw-daily-requirement-depot label{display:block}}

/* Client-owned requirement row, distinct from live Roster-derived rows. */
.client-workspace .cw-roster-dates .cw-calendar-day.cw-calendar-cell{height:300px;display:flex;flex-direction:column;padding:12px;gap:0}.client-workspace .cw-day-select{display:block;width:100%;padding:0;border:0;background:transparent!important;text-align:left;color:inherit;text-transform:none;letter-spacing:normal}.client-workspace .cw-calendar-day[data-selected=true]{background:#123033;border-color:#35b9b0}.client-workspace .cw-calendar-day .cw-day-requirement{min-height:0;display:block;margin:0 0 10px;padding:8px;background:#173a3b;border:0;border-left:2px solid #61d5c5;border-radius:0}.client-workspace .cw-calendar-day .cw-day-requirement label{display:flex;align-items:center;justify-content:space-between;gap:6px;width:100%!important}.client-workspace .cw-day-requirement label>span{font-size:12px;color:#eaf4f2;margin:0}.client-workspace .cw-calendar-day .cw-day-requirement input{width:58px;min-height:36px;padding:4px;font-size:20px;text-align:center;flex-shrink:0}.client-workspace .cw-calendar-day .cw-day-requirement small{font-size:9px;min-height:24px;margin-top:5px;color:#b9d6d1;line-height:1.3}.cw-roster-owned{padding:0 8px}.cw-roster-owned>small{display:block;font-size:9px;text-transform:uppercase;letter-spacing:.06em;color:#94aeb0;margin-bottom:8px}.cw-roster-owned>span,.cw-required-readonly{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:8px}.cw-roster-owned>span>span{font-size:12px;color:#afc3c3}.cw-roster-owned b{font-size:18px}.client-workspace .cw-calendar-day .cw-cell-stats{display:block;padding:10px 0}.client-workspace .cw-calendar-day .cw-cell-date{padding-bottom:10px}.client-workspace .cw-day-select:focus-visible{outline:2px solid #61d5c5;outline-offset:4px}.client-workspace .cw-calendar-day .cw-cell-foot{margin-top:auto}@media(max-width:1023px){.client-workspace .cw-roster-dates .cw-calendar-day.cw-calendar-cell{flex:0 0 164px;height:300px}}

.client-workspace .cw-roster-dates{grid-template-columns:repeat(7,minmax(148px,1fr));overflow-x:auto}.client-workspace .cw-calendar-day .cw-day-requirement input{width:46px}
.client-workspace .cw-roster-dates .cw-day-select{min-height:0;flex:none;padding:0;border:0;border-radius:0;color:inherit}.client-workspace .cw-roster-dates .cw-roster-owned>span{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:8px}.client-workspace .cw-roster-dates .cw-roster-owned>small{font-size:9px}.client-workspace .cw-roster-dates .cw-day-requirement>small{font-size:9px}.client-workspace .cw-roster-dates .cw-calendar-day.cw-calendar-cell{height:280px}

