:root{font-family:Inter,system-ui,-apple-system,Segoe UI,sans-serif;color:#17212b;background:#f3f6f8;--page:#f3f6f8;--panel:#fff;--panel-soft:#f1f5f7;--panel-accent:#f3fbf8;--text:#17212b;--muted:#687783;--quiet:#8a9aa3;--border:#dce5ea;--border-soft:#e4ebee;--navy:#092333;--navy-line:#36505d;--teal:#18a07c;--teal-dark:#13896c;--shadow:#1934420d;--warning-bg:#fff8e6;--warning-border:#f1d48b;--warning-chip:#fff0c5;--field:#fff;--link:#45616d}*{box-sizing:border-box}html,body{min-height:100%}body{margin:0;background:var(--page);color:var(--text);transition:background-color .2s ease,color .2s ease}header{height:66px;background:var(--navy);color:#fff;display:flex;align-items:center;padding:0 5vw;gap:42px}.brand{font-size:20px;font-weight:750;letter-spacing:.2px}.uss-mark{color:#58e0bb;font-size:12px;letter-spacing:1.5px;border:1px solid #2c806e;border-radius:5px;padding:3px 5px;margin-right:7px;vertical-align:2px}nav{display:flex;gap:20px;align-items:center;margin-left:auto}nav a{color:#b9cad3;text-decoration:none}nav a:hover{color:#fff}.primary,.button,button{background:var(--teal);color:#fff!important;border:0;border-radius:7px;padding:11px 16px;text-decoration:none;font-weight:700}.primary{padding:9px 14px}.theme-toggle{display:flex;align-items:center;gap:7px;background:#112f3f!important;border:1px solid #365767;color:#cbe0e8!important;padding:8px 11px;cursor:pointer;font-size:13px}.theme-toggle:hover{background:#173e50!important;color:#fff!important}.theme-icon{font-size:17px;line-height:1}main{max-width:1500px;margin:0 auto;padding:34px 5vw 70px}.page-head{display:flex;justify-content:space-between;align-items:end;margin-bottom:24px}.eyebrow{margin:0 0 5px;color:var(--teal-dark);font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:1.4px}h1{font-size:32px;margin:0 0 4px}.muted{color:var(--muted);margin:0}.alerts{display:flex;gap:12px;align-items:center;flex-wrap:wrap;background:var(--warning-bg);border:1px solid var(--warning-border);padding:13px 16px;border-radius:10px;margin-bottom:18px}.alerts span{background:var(--warning-chip);padding:5px 9px;border-radius:5px;font-size:13px}.board{background:var(--panel);border:1px solid var(--border);border-radius:12px;overflow:hidden;box-shadow:0 5px 18px var(--shadow)}.board-title,.board-row{display:grid;grid-template-columns:110px repeat(2,minmax(260px,1fr));}.board-title{background:var(--navy);color:#fff;font-size:14px;font-weight:700}.board-title>div{padding:16px;border-right:1px solid var(--navy-line)}.board-title small{display:block;color:#a9c1cb;font-weight:400;margin-top:4px}.board-row{min-height:150px;border-bottom:1px solid var(--border-soft)}.board-row:last-child{border-bottom:0}.day{background:var(--panel-soft);padding:17px 14px;display:flex;flex-direction:column;gap:5px}.day b{font-size:12px;color:var(--teal)}.day strong{font-size:20px}.vehicle-day{border-left:1px solid var(--border-soft)}.slot{min-height:74px;padding:10px 14px;border-bottom:1px solid var(--border-soft);display:flex;flex-direction:column;gap:3px}.slot:last-child{border-bottom:0}.slot small{font-size:10px;font-weight:800;color:var(--quiet);letter-spacing:.7px}.slot b{font-size:15px}.slot span{font-size:12px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.slot em{color:var(--quiet);font-style:normal;font-size:13px;padding-top:7px}.slot.filled{border-left:4px solid var(--teal);padding-left:10px;background:var(--panel-accent)}.form-page{max-width:700px;background:var(--panel);border:1px solid var(--border);border-radius:12px;padding:30px;box-shadow:0 5px 18px var(--shadow)}.form-page h1{margin-bottom:24px}.form-page form{display:grid;grid-template-columns:1fr 1fr;gap:16px}.form-page label{display:flex;flex-direction:column;gap:6px;font-weight:650;font-size:13px}.form-page label:nth-last-child(-n+4),.form-actions{grid-column:1/-1}.form-page input,.form-page select,.form-page textarea{font:inherit;color:var(--text);border:1px solid var(--border);border-radius:6px;padding:10px;background:var(--field)}.form-actions{display:flex;justify-content:space-between;align-items:center;margin-top:8px}.form-actions a{color:var(--link)}.error{color:#ff8a82;font-weight:500}.flash{background:var(--panel-accent);border:1px solid #4d9d86;padding:12px 15px;border-radius:8px;margin-bottom:18px}

html[data-theme="dark"]{color-scheme:dark;--page:#06131c;--panel:#0c202b;--panel-soft:#102a37;--panel-accent:#0d302d;--text:#e7f0f3;--muted:#a1b6bf;--quiet:#718b96;--border:#25424f;--border-soft:#1d3743;--navy:#041722;--navy-line:#274553;--teal:#39c9a2;--teal-dark:#51d5b1;--shadow:#0000004d;--warning-bg:#2d2614;--warning-border:#7a6228;--warning-chip:#443716;--field:#0a1b25;--link:#7edbc4}html[data-theme="dark"] .board-title{box-shadow:inset 0 -1px #305261}html[data-theme="dark"] .slot.filled{box-shadow:inset 0 0 0 1px #175147}html[data-theme="dark"] .button,html[data-theme="dark"] .primary,html[data-theme="dark"] .form-actions button{box-shadow:0 0 0 1px #65e2c033,0 5px 15px #0003}html[data-theme="dark"] select{color-scheme:dark}

.weeks{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:20px;align-items:start}.week{min-width:0}.week-heading{display:flex;align-items:center;justify-content:space-between;margin:0 2px 9px}.week-heading>div{display:flex;align-items:baseline;gap:10px}.week-heading strong{font-size:17px}.week-heading span{color:var(--muted);font-size:12px}.weeks .board-title,.weeks .board-row{grid-template-columns:82px repeat(2,minmax(150px,1fr))}.weeks .board-title>div{padding:12px 10px}.weeks .board-row{min-height:126px}.weeks .day{padding:13px 10px}.weeks .day strong{font-size:17px}.weeks .day.today{background:#dff5ee;box-shadow:inset 4px 0 var(--teal)}html[data-theme="dark"] .weeks .day.today{background:#123b39}.weeks .slot{min-height:62px;padding:8px 10px}.weeks .slot.filled{padding-left:7px}.weeks .slot b{font-size:13px}.weeks .slot span{font-size:11px}

@media(max-width:1180px){.weeks{grid-template-columns:1fr}.weeks .board-title,.weeks .board-row{grid-template-columns:100px repeat(2,minmax(220px,1fr))}}
@media(max-width:900px){header{height:auto;min-height:66px;padding:10px 18px;gap:12px;flex-wrap:wrap}.brand{font-size:16px}nav{gap:8px;font-size:13px;flex-wrap:wrap}.theme-label{display:none}main{padding:24px 14px}.page-head{align-items:start;gap:16px;flex-direction:column}.board{overflow-x:auto}.weeks .board-title,.weeks .board-row{min-width:650px;grid-template-columns:90px repeat(2,minmax(250px,1fr))}.form-page form{grid-template-columns:1fr}.form-page label:nth-last-child(-n+4){grid-column:1}}
