:root{font-family:Inter,system-ui,sans-serif;color:#192f42;background:#f1f5f6;font-synthesis:none;--accent:#086755;--line:#dce6e8;--muted:#4e6672;--free:#e3f4ea;--busy:#ffe4df;--blocked:#e6eaee}
*{box-sizing:border-box} [hidden]{display:none!important} body{margin:0} header{background:#122b38;color:#fff}.top{margin:auto;max-width:1280px;padding:15px 26px;display:flex;align-items:center;justify-content:space-between;gap:12px}.wordmark{display:flex;align-items:center;gap:10px;font-weight:750}.mark{background:#c2f0de;color:#145144;border-radius:9px;width:32px;height:32px;display:grid;place-items:center;font-size:23px}#account{display:flex;align-items:center;gap:10px}header button.quiet{color:#fff}
main{max-width:1280px;margin:auto;padding:32px 26px 55px}.panel{background:#fff;border:1px solid var(--line);border-radius:16px;box-shadow:0 2px 6px #12344306}.intro,.toolbar,.navigation,.segmented,.fleet-title,.car-entry,.actions,.dialog-title{display:flex;align-items:center;gap:8px}.intro,.toolbar,.fleet-title,.car-entry,.dialog-title{justify-content:space-between}.intro{margin:0 0 22px}.eyebrow{font-size:.72rem;font-weight:750;letter-spacing:.12em;color:#176650;margin:0 0 8px}h1{font-size:clamp(2rem,5vw,3.1rem);letter-spacing:-.055em;line-height:1.05;margin:0}h2{font-size:1.16rem;margin:0}.muted{color:var(--muted)}.login{max-width:440px;margin:7vh auto 0;padding:28px}.login h1{font-size:2.3rem}.login form,dialog form{display:grid;gap:13px}.login form button{margin-top:4px}.filter{padding:16px;display:flex;align-items:end;flex-wrap:wrap;gap:12px;margin-bottom:16px}.filter label{flex:1 1 190px}label{display:grid;gap:5px;font-size:.86rem;font-weight:650}input,select,button{font:inherit;color:inherit}input,select{min-width:0;width:100%;min-height:42px;padding:8px 10px;border-radius:8px;border:1px solid #b9ccd2;background:white}button{cursor:pointer;min-height:40px;padding:7px 12px;border-radius:8px;background:#fff;border:1px solid #c9dadd;font-weight:650}button:hover{filter:brightness(.96)}button:disabled{cursor:wait;opacity:.6}button:focus-visible,input:focus-visible,select:focus-visible,[tabindex]:focus-visible{outline:3px solid #189c85;outline-offset:2px}.primary{background:var(--accent);color:white;border-color:var(--accent)}.quiet{background:transparent;border-color:transparent}.danger{color:#8b3327}.error{color:#8b3327;font-size:.9rem;margin:0}.error:empty{display:none}.notice{background:#e1f4eb;padding:10px 14px;border-radius:8px}.notice.bad{background:#ffe4df}#matches{width:100%;display:flex;gap:7px;align-items:center;flex-wrap:wrap}
.toolbar{padding:14px 16px;flex-wrap:wrap}.navigation{flex-wrap:wrap}.navigation strong{margin-left:5px}.segmented{background:#edf3f3;border-radius:9px;padding:3px;gap:2px}.segmented button{min-height:33px;border-color:transparent;background:transparent}.segmented button[aria-pressed=true]{background:white;border-color:var(--line);color:var(--accent)}.legend{padding:0 16px 13px;display:flex;flex-wrap:wrap;gap:10px 16px;color:var(--muted);font-size:.8rem}.legend span{display:flex;align-items:center;gap:5px}.legend i{width:13px;height:13px;border:1px solid #0002;border-radius:3px}.free,.track{background:var(--free)}.busy,.booking{background:var(--busy)}.blocked,.booking.blocked{background:var(--blocked)}.zone{margin-left:auto}.calendar{overflow:auto;border-top:1px solid var(--line);border-radius:0 0 16px 16px}.grid{min-width:930px;--label:155px;--columns:24}.grid.week{min-width:780px;--columns:7}.row{display:grid;grid-template-columns:var(--label) minmax(0,1fr);border-bottom:1px solid var(--line)}.row:last-child{border-bottom:0}.car-label{position:sticky;left:0;z-index:2;background:#fff;display:flex;align-items:center;gap:8px;padding:10px;border-right:1px solid var(--line);min-width:0}.car-label b,.car-label small{display:block;overflow-wrap:anywhere}.car-label small{color:var(--muted);font-size:.7rem}.logo{width:30px;height:25px;object-fit:contain;flex:none}.brand-fallback{font-size:.76rem;text-align:center;align-content:center;background:#e8eff0;border-radius:5px}.ticks,.slots{display:grid;grid-template-columns:repeat(var(--columns),minmax(0,1fr))}.tick{padding:11px 3px;text-align:center;font-size:.74rem;border-right:1px solid var(--line);white-space:nowrap}.track{position:relative;min-height:66px}.slots{position:absolute;inset:0}.slot{min-width:0;padding:0;border-radius:0;border:0;border-right:1px solid #17665020;background:transparent}.slot:hover{background:#bddfce}.booking{position:absolute;top:9px;bottom:9px;min-height:0;min-width:1px;overflow:hidden;text-align:left;border:1px solid #b86b5c;border-radius:5px;padding:0;display:block;white-space:nowrap;font-size:.75rem;color:#672c20}.booking span{padding:0 5px}.booking.blocked{border-color:#8b9ca7;color:#354750}.empty{padding:16px;color:var(--muted)}.admin{margin-top:18px;padding:15px 16px}.car-entry{padding:8px 0;border-top:1px solid var(--line)}.fleet-title{margin-bottom:12px}.car-entry span{display:flex;gap:8px;align-items:center}.actions{justify-content:flex-end;flex-wrap:wrap}.dialog-title{margin-bottom:5px}dialog{width:min(440px,calc(100% - 24px));color:inherit;border:1px solid var(--line);border-radius:15px;padding:20px;box-shadow:0 18px 60px #122b3840}dialog::backdrop{background:#112a3870}.check{display:flex;align-items:center;gap:8px}.check input{width:18px;min-height:18px}.dialog-title button{min-height:34px;padding:2px 10px;font-size:1.25rem}
@media(max-width:600px){.top,main{padding-left:13px;padding-right:13px}main{padding-top:22px}.intro{gap:8px}.intro button{padding:6px 8px;font-size:.82rem}.grid{--label:108px}.car-label{padding:6px;gap:5px;font-size:.78rem}.logo{width:23px}.toolbar{padding:10px}.zone{margin-left:0}.filter label{flex-basis:130px}.login{margin-top:3vh}}
