:root{--color-bg: #eef3f1;--color-surface: #ffffff;--color-ink: #1b1b1b;--color-muted: #5c574e;--color-brand: #0f4c5c;--color-brand-soft: #4d6a72;--color-accent: #e36414;--color-ok: #0b6e4f;--color-danger: #9b2226;--color-line: #c9d6d1;--color-line-soft: #d7e0dc;--radius: .75rem;--space: 1rem;--shadow: 0 10px 28px rgba(15, 20, 18, .12);--focus: #e36414;--touch: 2.75rem;--nav-safe: env(safe-area-inset-bottom, 0px);font-family:Segoe UI,sans-serif;color:var(--color-ink);background:#f4f6f8;line-height:1.5}*{box-sizing:border-box}html,body{margin:0;overflow-x:hidden}.page{max-width:40rem;margin:0 auto;padding:1.5rem}.page.wide,.shell{max-width:88rem;margin:0 auto;padding:0 1.25rem 2rem;background:#f4f6f8}.topbar{display:flex;justify-content:space-between;align-items:center;gap:1rem;margin:0 -1.25rem 1rem;padding:.75rem 1.25rem;background:#1d6fe8;color:#fff}.brand{display:flex;align-items:center;gap:.65rem;min-width:0}.brand-mark{display:grid;place-items:center;width:2rem;height:2rem;border-radius:.45rem;background:#ffffff29;flex:none}.topbar h1{margin:0;color:#fff;font-size:1.15rem;font-weight:650}.brand-sep{opacity:.75;font-weight:500}.topbar .account-label{color:#e8f1ff}.topbar button.secondary{margin:0;background:transparent;color:#fff;border:1px solid rgba(255,255,255,.7)}.login-screen{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:1.5rem}.login-card{text-align:center;max-width:24rem}.login-brand-logo{display:block;width:min(220px,70%);height:auto;margin:0 auto 1.25rem}.login-card h1{margin:0 0 .75rem;font-size:1.7rem}.login-card p{margin:0;color:#5c574e}.login-card button{margin-top:1.25rem}.topbar-actions{display:flex;align-items:center;gap:.6rem}.account-label{font-size:.85rem;color:#5c574e}.workspace{display:grid;grid-template-columns:12rem minmax(0,1fr);gap:1rem;align-items:start}.content{min-width:0;width:100%}.sidenav{display:flex;flex-direction:column;gap:.4rem;position:sticky;top:.75rem}.sidenav button{width:100%;margin:0;text-align:left}.signed-out{margin-top:1.5rem}.filter-bar fieldset{border:0;margin:0;padding:0}.filter-bar legend{font-weight:600;margin-bottom:.35rem}.report-overview{display:grid;grid-template-columns:minmax(14rem,16rem) minmax(0,1fr);gap:1.25rem 1.75rem;align-items:center;margin:1rem 0 1.25rem}@media(max-width:720px){.report-overview{grid-template-columns:1fr;justify-items:center}}.utilisation-pie{display:grid;gap:.75rem;justify-items:center}.utilisation-pie svg{display:block}.pie-centre-value{font-size:1.35rem;font-weight:700;fill:#0f172a}.pie-centre-label{font-size:.72rem;fill:#64748b;text-transform:uppercase;letter-spacing:.04em}.pie-legend{list-style:none;margin:0;padding:0;display:grid;gap:.35rem;width:100%}.pie-legend li{display:flex;flex-wrap:wrap;align-items:baseline;gap:.35rem .5rem;font-size:.92rem}.pie-swatch{width:.75rem;height:.75rem;border-radius:.15rem;flex:0 0 auto}.report-summary{display:grid;grid-template-columns:repeat(auto-fill,minmax(10rem,1fr));gap:.75rem}.vehicle-photo,.top-trump-photo{width:100%;object-fit:cover;background:#0b3038}.vehicle-photo{height:8rem;border-radius:.5rem;margin-bottom:.75rem}.cards{align-items:stretch}.top-trump{background:linear-gradient(180deg,#1a4b56,#0f4c5c);color:#f7f4ea;border:4px solid #e36414;border-radius:.9rem;padding:.7rem;margin-bottom:0;box-shadow:0 10px 22px #0f141238;display:flex;flex-direction:column;min-height:24rem}.top-trump-type{margin:0;text-align:center;font-size:.82rem;letter-spacing:.08em;text-transform:uppercase;color:#ffe8c2}.top-trump h2{margin:.15rem 0 .55rem;text-align:center;color:#fff;font-size:1.2rem}.top-trump-photo{height:11.5rem;border-radius:.4rem;flex-shrink:0}.top-trump-photo.placeholder{display:flex;align-items:center;justify-content:center;color:#d7e0dc;font-size:.9rem}.top-trump dl{margin:.65rem 0 0;display:flex;flex-direction:column;gap:.3rem}.top-trump dl div{display:flex;justify-content:space-between;gap:.75rem;background:#ffffff1a;padding:.35rem .55rem;border-radius:.3rem}.top-trump dt{color:#ffe8c2;font-size:.85rem}.top-trump dd{margin:0;font-weight:600}.top-trump.unavailable{background:linear-gradient(180deg,#4a5558,#3a4548);border-color:#8a9396;opacity:.92}.top-trump-status{margin:0 0 .45rem;text-align:center;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:#ffe8c2}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f141273;display:flex;align-items:center;justify-content:center;padding:1rem;z-index:20}.modal-backdrop.overlay{z-index:80}.modal{background:#fff;border-radius:.75rem;padding:1.25rem;max-width:28rem;width:100%;box-shadow:0 12px 40px #0000002e}.modal button{width:auto}.booking-preview{margin:0 0 1rem;display:grid;gap:.5rem}.booking-preview div{display:grid;grid-template-columns:7.5rem 1fr;gap:.5rem}.booking-preview dt{color:#5c574e;font-weight:600}.booking-preview dd{margin:0}.toggle{display:flex;align-items:center;justify-content:space-between;gap:1rem;width:100%;margin:.35rem 0 .75rem}.switch{width:2.6rem;min-width:2.6rem;height:1.45rem;margin:0;padding:.15rem;border-radius:999px;background:#8aa0a6;position:relative}.switch.on{background:#0b6e4f}.switch-knob{display:block;width:1.1rem;height:1.1rem;border-radius:50%;background:#fff;transform:translate(0)}.switch.on .switch-knob{margin-left:auto}.table-wrap{overflow-x:auto}.booking-history{max-height:37.95rem;overflow-y:auto}.booking-history thead th{position:sticky;top:0;background:#fff;z-index:1}.checklist-tiles{display:grid;grid-template-columns:repeat(auto-fill,minmax(14rem,1fr));gap:.75rem;margin:.75rem 0 1rem}.checklist-tile{background:#f7fbf9;border:1px solid #c9d6d1;border-radius:.7rem;padding:.85rem}.checklist-tile.off{opacity:.7}.checklist-tile h3{margin:0 0 .35rem;font-size:1rem}.destination-list li,.approver-chips li{display:flex;align-items:center;justify-content:space-between;gap:.75rem;margin:.35rem 0}.approver-chips,.person-results,.destination-list{list-style:none;padding:0;margin:0 0 .75rem}.approver-chips li,.person-results li{background:#f4f8f6;border-radius:.5rem;padding:.4rem .55rem}.person-results button{margin:0;text-align:left}.approver-picker,.destination-picks{border:1px solid #c9d6d1;border-radius:.6rem;padding:.75rem;margin:.5rem 0 1rem}.destination-picks{display:grid;gap:.35rem}.destination-picks legend{font-weight:600}.data-table{width:100%;border-collapse:collapse;font-size:.92rem}.data-table th,.data-table td{text-align:left;padding:.45rem .5rem;border-bottom:1px solid #d7e0dc;vertical-align:top}.permission-block{margin:1rem 0;padding:.85rem 1rem 1rem;border:1px solid #e6ebf0;border-radius:.75rem;background:#fafbfc}.permission-block legend{padding:0 .25rem;font-weight:650;font-size:.95rem}.permission-subsettings{display:flex;flex-direction:column;gap:.75rem;margin-top:.75rem;padding:.75rem 0 0 .85rem;border-left:3px solid #cbd5e1}.admin-stack,.timeline-list{display:flex;flex-direction:column;gap:1rem}.timeline-when{margin:0;font-weight:700;font-variant-numeric:tabular-nums}.timeline-list h2{margin-bottom:.5rem}.timeline-pager{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.75rem;padding:.25rem 0 .5rem}.timeline-pager .hint{margin:0}.email-preview{margin-top:.75rem;padding:.85rem 1rem;border:1px solid var(--color-line);border-radius:var(--radius);background:var(--color-bg)}.email-preview h3{margin:0 0 .5rem;font-size:.95rem}.email-preview pre{margin:0;white-space:pre-wrap;font-family:inherit;font-size:.92rem;color:var(--color-muted)}.timeline-card{width:100%;padding:.85rem 1rem}.history-fields{display:grid;grid-template-columns:repeat(auto-fit,minmax(14rem,1fr));gap:.65rem 1.25rem;margin:0 0 .85rem}.history-fields div{min-width:0}.history-fields dt{margin:0 0 .15rem;font-size:.78rem;letter-spacing:.04em;text-transform:uppercase;color:var(--color-muted)}.history-fields dd{margin:0;font-weight:600}.timeline-head{display:grid;grid-template-columns:minmax(12rem,auto) minmax(10rem,1fr) minmax(12rem,1.2fr) auto;gap:.35rem 1rem;align-items:baseline;margin-bottom:.5rem}.timeline-user,.timeline-vehicle{margin:0}.timeline-actions{justify-self:end}.timeline-events{list-style:none;margin:0;padding:0;width:100%}.timeline-row{display:grid;grid-template-columns:13rem 10rem 7rem 1fr;gap:.35rem .75rem;align-items:baseline;width:100%;padding:.2rem 0;border-bottom:1px solid #e4ece8}.timeline-events time,.timeline-action,.timeline-status,.timeline-detail{margin:0}.timeline-events time{font-weight:600;font-variant-numeric:tabular-nums}.timeline-return-modal{max-width:48rem;max-height:90vh;overflow:auto}.return-answers{margin:0 0 1rem;display:grid;gap:.25rem}.return-answers div{display:grid;grid-template-columns:12rem 1fr;gap:.5rem}.return-photos{display:grid;grid-template-columns:repeat(auto-fill,minmax(10rem,1fr));gap:.5rem;margin-bottom:1rem}.return-photos img{width:100%;height:8rem;object-fit:cover;border-radius:.4rem}@media(max-width:900px){.timeline-head,.timeline-row{grid-template-columns:1fr}}button.compact{width:auto;margin:0;padding:.4rem .75rem;font-size:.9rem}.eyebrow{margin:0;letter-spacing:.08em;text-transform:uppercase;color:#0f4c5c;font-size:.8rem}.hero h1,.panel h2,.dialog-card h2,.vehicle-card h2{margin-top:0}.panel,.account,.dialog-card,.vehicle-card{background:#fff;border:1px solid #c9d6d1;border-radius:.75rem;padding:1rem;margin-bottom:1rem}label,textarea,select,input,button{display:block;width:100%;font:inherit}textarea,select,input:not([type=checkbox]):not([type=radio]),button{margin:.35rem 0 .75rem;padding:.7rem .9rem}button{background:var(--color-brand);color:#fff;border:0;border-radius:.5rem;cursor:pointer}button.secondary{background:var(--color-brand-soft);width:auto}button.danger{background:var(--color-danger);width:auto}button.active{background:var(--color-accent)}button:disabled{opacity:.6;cursor:not-allowed}button:hover:not(:disabled){filter:brightness(1.06)}button:active:not(:disabled){filter:brightness(.96)}button:focus-visible,textarea:focus-visible,input:focus-visible,select:focus-visible,.switch:focus-visible{outline:3px solid var(--focus);outline-offset:2px}.hint{color:#5c574e;font-size:.9rem}.label-with-tip{display:inline-flex;align-items:center;gap:.4rem;position:relative}button.tip-button{width:1.35rem;height:1.35rem;min-height:1.35rem;margin:0;padding:0;border-radius:50%;font-size:.78rem;font-weight:700;line-height:1;background:var(--color-brand-soft)}.field-tooltip{display:none;position:absolute;left:0;top:calc(100% + .4rem);z-index:4;width:min(22rem,80vw);padding:.65rem .75rem;border-radius:.5rem;background:#12343b;color:#fff;font-size:.85rem;font-weight:400;line-height:1.4;box-shadow:var(--shadow)}.tip-button:hover+.field-tooltip,.tip-button:focus+.field-tooltip,.tip-button:focus-visible+.field-tooltip{display:block}.success{color:#0b6e4f;display:flex;align-items:center;justify-content:space-between;gap:.75rem;margin:0 0 .75rem;padding:.65rem .8rem;background:#e7f6ef;border-radius:.5rem}.import-mode-bar{display:flex;flex-wrap:wrap;align-items:flex-start;gap:.65rem 1rem;margin:0 0 1rem;padding:.85rem 1rem;border:1px solid var(--color-line);border-radius:var(--radius);background:#f8faf9}.import-mode-bar.is-on{border-color:#c47a2b;background:#fff6e8;box-shadow:inset 0 0 0 1px #c47a2b40}.import-mode-bar p{margin:0;flex:1 1 16rem;color:var(--color-muted);font-size:.92rem}.import-mode-bar.is-on p{color:#7a3f0c;font-weight:600}.import-mode-toggle{font-weight:650}.booking-board.import-mode-active,.booking-form.import-mode-active{outline:2px solid rgba(196,122,43,.45);outline-offset:.35rem;border-radius:var(--radius)}.import-mode-hint{color:#7a3f0c;font-weight:600}.import-owner{margin:0 0 1rem;padding:.85rem 1rem;border:1px solid rgba(196,122,43,.45);border-radius:var(--radius);background:#fffaf2}.import-owner legend{font-weight:650}.success button{margin:0}.error{color:#9b2226}.tabs,.inline,.filters{display:flex;flex-wrap:wrap;align-items:flex-start;gap:.65rem .55rem}.filter-bars{display:flex;flex-direction:column;gap:.85rem;margin:.85rem 0 .15rem}.vehicle-filter{display:block}button.filter-chip,.static-chip{display:inline-flex;flex-direction:column;justify-content:center;width:auto;max-width:16rem;margin:0;padding:.5rem .8rem;background:#eef3f2;color:#12343b;border:1px solid #c9d6d1;text-align:left;line-height:1.2;border-radius:.5rem}button.filter-chip.on{background:#0f4c5c;color:#fff;border-color:#0f4c5c}.filter-chip-name{display:block;font-weight:600}.filter-chip-reg{display:block;font-size:.85rem;opacity:.9}.tabs button,.inline button{width:auto}.check{display:flex;align-items:center;gap:.4rem;width:auto}.check input{width:auto;margin:0}.cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(14rem,1fr));gap:1rem}.vehicle-card dl{display:grid;grid-template-columns:1fr 1fr;gap:.35rem .75rem}.vehicle-card dt{color:#5c574e;font-size:.85rem}.vehicle-card dd{margin:0}.calendar{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:.35rem}.cal-head,.cal-day{min-height:6rem;border:1px solid #d7e0dc;border-radius:.4rem;padding:.35rem;background:#fbfdfc}.cal-head{min-height:auto;font-weight:600;text-align:center}.day-btn{width:auto;margin:0 0 .35rem;padding:.2rem .45rem;background:transparent;color:inherit}.chip{display:block;width:100%;margin:.15rem 0;padding:.2rem .35rem;font-size:.75rem;text-align:left}.status-pending{background:#e36414}.status-approved{background:#0b6e4f}.status-conflict{background:#9b2226}.status-maintenance{background:#4d6a72}.admin-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(18rem,1fr));gap:1rem}.records{list-style:none;padding:0}.stack{list-style:none;margin:0;padding:0;display:grid;gap:.85rem}.stack-card{margin:0;padding:.95rem 1rem 1rem;background:#fff;border:1px solid #e6ebf0;border-radius:.9rem;box-shadow:0 8px 22px #0f172a0a}.stack-card-head{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:.35rem .75rem;margin-bottom:.55rem}.stack-card-head h3{margin:0;font-size:1.05rem;font-weight:700}.approval-agreement-row{display:flex;flex-wrap:wrap;align-items:center;gap:.65rem 1rem;margin:0 0 .75rem}.agreement-badge{display:inline-flex;align-items:center;padding:.2rem .55rem;border-radius:.25rem;font-size:.8rem;font-weight:600;letter-spacing:.01em}.agreement-badge.is-signed{background:#ccfbf1;color:#0f766e;border:1px solid #5eead4}.agreement-badge.is-unsigned{background:#ffedd5;color:#9a3412;border:1px solid #fdba74}.stack-card-meta{margin:0;color:#64748b;font-size:.88rem}.stack-card-details{display:grid;gap:.45rem;margin:0 0 .85rem}.stack-card-details div{display:grid;grid-template-columns:5.5rem minmax(0,1fr);gap:.35rem .75rem}.stack-card-details dt{margin:0;color:#64748b;font-size:.85rem}.stack-card-details dd{margin:0;font-size:.95rem}.list-header{display:flex;justify-content:space-between;align-items:center;gap:1rem}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.mobile-only{display:none}.desktop-only{display:revert}.vehicle-filter-compact,.mobile-calendar,.bottom-nav{display:none}.week-strip{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:.25rem;margin-bottom:.85rem}.week-head,.week-day{text-align:center;font-size:.8rem}.week-day{width:100%;min-height:var(--touch);margin:0;padding:0;background:var(--color-surface);color:var(--color-ink);border:1px solid var(--color-line);border-radius:.5rem}.week-day.selected,.day-btn.selected{background:var(--color-brand);color:#fff;border-color:var(--color-brand)}.week-day.has-booking{font-weight:700}.week-day.has-booking:after{content:"";display:block;width:.38rem;height:.38rem;margin:.12rem auto 0;border-radius:50%;background:var(--color-accent)}.week-day.selected.has-booking:after{background:#fff}.vehicle-filter-actions{display:grid;grid-template-columns:1fr 1fr;align-items:stretch;gap:.5rem}.vehicle-filter-actions button{width:100%;min-height:var(--touch);margin:0}.vehicle-filter-actions button.on,.vehicle-filter-actions button[aria-pressed=true]{background:var(--color-brand);color:#fff;border-color:var(--color-brand)}.compact-selected{margin-top:.5rem}.cal-day.selected{border-color:var(--color-brand);box-shadow:inset 0 0 0 1px var(--color-brand)}.agenda{list-style:none;margin:0 0 1rem;padding:0;display:grid;gap:.5rem}.agenda-item{margin:0;text-align:left;border-radius:.6rem}.agenda-when,.agenda-main,.agenda-extra{display:block}.agenda-when{font-size:.85rem;opacity:.92}.new-booking-cta{margin:0}.static-chip{cursor:default}.chip-remove{margin-left:.35rem;font-weight:700}.modal.sheet{max-height:min(92vh,44rem);overflow:auto;border-radius:1rem 1rem .75rem .75rem}@media(max-width:1100px){.cal-day{min-height:5.25rem}.chip{font-size:.7rem}}@media(max-width:800px){.shell{padding:.75rem .75rem calc(5.5rem + var(--nav-safe))}.workspace{grid-template-columns:1fr}.sidenav,.desktop-only,.desktop-calendar,.vehicle-filter-full,.hint.desktop-only{display:none}.mobile-only,.mobile-calendar,.vehicle-filter-compact{display:block}.bottom-nav{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));position:fixed;left:0;right:0;bottom:0;z-index:30;gap:.15rem;padding:.3rem max(.4rem,env(safe-area-inset-right)) calc(.3rem + var(--nav-safe)) max(.4rem,env(safe-area-inset-left));background:var(--color-surface);border-top:1px solid var(--color-line);box-shadow:0 -8px 24px #0f141214}.bottom-nav-item{min-height:var(--touch);margin:0;padding:.35rem .2rem;width:100%;background:transparent;color:var(--color-brand);font-size:.82rem;font-weight:600}.bottom-nav-item.active{background:transparent;color:var(--color-accent)}.more-menu{position:absolute;right:.5rem;bottom:calc(100% + .4rem);min-width:12rem;background:var(--color-surface);border:1px solid var(--color-line);border-radius:var(--radius);box-shadow:var(--shadow);padding:.4rem;display:grid;gap:.25rem}.more-menu button{margin:0;min-height:var(--touch);text-align:left;background:var(--color-bg);color:var(--color-ink)}.more-menu button.active{background:var(--color-brand);color:#fff}.booking-form-host.open{position:fixed;top:0;right:0;bottom:0;left:0;z-index:40;display:flex;align-items:flex-end;background:#0f141273;padding:0}.booking-form-host:not(.open){display:none}.booking-form-host.open .booking-form-frame{width:100%;max-height:min(92vh,46rem);overflow:auto;background:var(--color-surface);border-radius:1rem 1rem 0 0;padding:1rem 1rem calc(1.25rem + var(--nav-safe))}.booking-form-host .booking-form{margin:0;border:0;padding:0;box-shadow:none}.form-actions{position:sticky;bottom:0;background:var(--color-surface);padding-top:.5rem}.topbar{flex-wrap:wrap;align-items:center}.topbar h1{font-size:1.15rem}.list-header{flex-wrap:wrap}.list-header .inline,.list-header .month-nav{width:100%}.list-header .inline button,.list-header .month-nav button{flex:1;min-height:var(--touch)}.new-booking-cta{margin:0 0 .85rem}.topbar h1{font-size:1rem}.deck-cell{min-height:3.5rem}.booking-summary{position:sticky;bottom:calc(4.6rem + var(--nav-safe));z-index:5;background:#fff}.panel,.account,.dialog-card,.vehicle-card{padding:.85rem}}.booking-board{display:grid;grid-template-columns:minmax(17rem,22rem) minmax(0,1fr);gap:1.25rem;align-items:start;width:100%;min-width:0}.fleet-column,.bookings-column{min-width:0}.fleet-column h2,.bookings-column h2{margin:0 0 .75rem;font-size:1rem;font-weight:650}.fleet-list{display:flex;flex-direction:column;gap:.85rem;max-height:calc(100vh - 8rem);overflow:auto;padding-right:.15rem}.fleet-card{--fleet: #e11d48;background:#fff;border:1px solid #e6ebf0;border-radius:.9rem;box-shadow:0 8px 22px #0f172a0d}.fleet-card.selected{border:2px solid var(--fleet)}.fleet-card.unavailable{opacity:.72}.fleet-card-hit{width:100%;margin:0;padding:.85rem .95rem 1rem;background:transparent;color:inherit;text-align:left;border-radius:.9rem}.fleet-card-top,.fleet-spec,.booking-summary,.month-nav{display:flex;align-items:center;justify-content:space-between;gap:.65rem}.fleet-kicker,.fleet-reg{display:inline-flex;align-items:center;gap:.4rem;font-size:.82rem;color:#64748b}.fleet-reg{font-weight:650;letter-spacing:.04em}.swatch{width:.7rem;height:.7rem;border-radius:50%;background:var(--fleet, #e11d48);display:inline-block;flex:none;box-sizing:border-box}.swatch.selection{border-radius:.15rem;background:#e11d48}.swatch.confirmed{border-radius:.15rem;background:#0f766e}.swatch.unconfirmed{border-radius:.15rem;background:color-mix(in srgb,#0f766e 14%,#fff);border:1.5px dashed #0f766e}.fleet-photo{display:block;width:100%;height:7.5rem;margin:.7rem 0 .75rem;object-fit:contain;border-radius:.7rem;background:linear-gradient(180deg,#eef6ff,#f8fbff)}.fleet-photo.placeholder{display:grid;place-items:center;color:#94a3b8;font-size:.85rem}.fleet-name{display:block;margin-bottom:.7rem;font-size:1.2rem;font-weight:750}.fleet-unavailable{display:block;margin:-.35rem 0 .55rem;color:#9b2226;font-size:.85rem;font-weight:700}.fleet-specs{display:grid;gap:.45rem}.fleet-spec-label{width:4.2rem;color:#64748b;font-size:.85rem}.fleet-spec-track{flex:1;height:.35rem;border-radius:999px;background:#e8eef5;overflow:hidden}.fleet-spec-track span{display:block;height:100%;border-radius:inherit;background:var(--fleet)}.fleet-spec-value{min-width:3.2rem;text-align:right;font-weight:650;font-size:.92rem}.fleet-fuel{display:flex;align-items:baseline;justify-content:space-between;gap:.65rem;margin-top:.55rem;padding-top:.45rem;border-top:1px solid #e6ebf0}.bookings-column{background:#fff;border:1px solid #e6ebf0;border-radius:1rem;padding:1rem 1rem .9rem;box-shadow:0 8px 22px #0f172a0a}.booking-focus h3{display:flex;align-items:center;gap:.45rem;margin:0 0 .2rem;font-size:1.45rem}.month-nav{justify-content:flex-start;margin:.35rem 0 .75rem}.month-nav button{width:2.5rem;min-height:2.5rem;margin:0;padding:0;font-size:1.4rem;line-height:1}.month-label{margin:0;min-width:9rem;text-align:center;font-weight:700}.deck-calendar{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:.4rem}.deck-head{text-align:center;color:#64748b;font-size:.82rem;font-weight:650}.deck-head-short{display:none}.deck-cell{position:relative;display:flex;flex-direction:column;min-height:4.6rem;border:1px solid #e6ebf0;border-radius:.7rem;background:#fff}.deck-cell.empty{border-color:transparent;background:transparent}.deck-cell.is-selected{background:#e11d48;border-color:#e11d48}.deck-day{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:auto;min-height:0;margin:0;padding:.35rem .3rem 1.35rem;background:transparent;color:#0f172a;text-align:left;font-weight:650}.deck-cell.is-selected .deck-day{color:#fff}.deck-day:disabled{color:#94a3b8;cursor:default;pointer-events:none}.deck-tags{position:relative;z-index:1;display:flex;flex-direction:column;gap:.15rem;margin-top:1.2rem;padding:0 .2rem .22rem;pointer-events:none}.deck-tag,.deck-more{flex:0 0 auto;width:100%;max-width:100%;height:1.15rem;min-height:1.15rem;margin:0;padding:0 .3rem;border:1.5px solid transparent;border-radius:.28rem;background:var(--tag-color, #334155);color:#fff;font-size:.72rem;line-height:1.05rem;text-align:left;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;pointer-events:auto;box-sizing:border-box}.deck-tag.is-unconfirmed{background:color-mix(in srgb,var(--tag-color, #64748b) 14%,#fff);border-color:var(--tag-color, #64748b);border-style:dashed;color:#0f172a}.deck-more{background:#334155}.fleet-legend{display:flex;flex-wrap:wrap;gap:.45rem .9rem;margin:.85rem 0 0;padding:0;list-style:none;color:#334155;font-size:.85rem}.fleet-legend li{display:inline-flex;align-items:center;gap:.35rem}.booking-summary{margin-top:.9rem;padding:.85rem 1rem;border:1px solid #e6ebf0;border-radius:.9rem;background:#fff}.summary-kicker,.summary-count{margin:0}.summary-kicker{color:#64748b;font-size:.85rem}.summary-count{font-size:1.35rem;font-weight:750}.book-cta{width:auto;min-width:10rem;margin:0;background:#e8eef5;color:#1e293b;border:1px solid #d5deea}.book-cta:disabled{opacity:.55;cursor:not-allowed}.booking-form-host:not(.open){display:none}.booking-form-host.open{position:fixed;top:0;right:0;bottom:0;left:0;z-index:40;display:flex;align-items:center;justify-content:center;background:#0f141273;padding:1rem}.booking-form-host.open .booking-form-frame{width:min(34rem,100%);max-height:min(92vh,46rem);overflow:auto;background:#fff;border-radius:1rem;padding:1rem 1.1rem 1.25rem}.booking-form-host .booking-form{margin:0;border:0;padding:0;box-shadow:none}@media(max-width:1100px){.booking-board{grid-template-columns:1fr;gap:.85rem}.fleet-column{margin:0 -.15rem}.fleet-list{flex-direction:row;flex-wrap:nowrap;gap:.65rem;max-height:none;overflow-x:auto;overflow-y:hidden;overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch;scroll-snap-type:x proximity;padding:.1rem .15rem .55rem}.fleet-card{width:min(14.5rem,78vw);min-width:min(14.5rem,78vw);flex:none;scroll-snap-align:start}.fleet-photo{height:5.5rem;margin:.5rem 0 .55rem}.fleet-name{font-size:1.05rem;margin-bottom:.45rem}.fleet-card-hit{padding:.7rem .75rem .8rem}.bookings-column{padding:.75rem .65rem .7rem}.booking-focus h3{font-size:1.15rem}.booking-focus .hint{font-size:.85rem}.month-nav{margin:.2rem 0 .55rem}.month-nav button{width:2.25rem;min-height:2.25rem;font-size:1.25rem}.month-label{min-width:0;flex:1;font-size:.95rem}.deck-calendar{width:100%;gap:.2rem}.deck-head{font-size:.72rem}.deck-cell{min-height:3.4rem;border-radius:.45rem}.deck-day{padding:.22rem .18rem 1rem;font-size:.85rem}.deck-tags{gap:.1rem;margin-top:1.05rem;padding:0 .12rem .12rem}.deck-tag,.deck-more{height:1rem;min-height:1rem;padding:0 .16rem;font-size:.62rem;line-height:1rem;border-radius:.2rem}.fleet-legend{gap:.35rem .65rem;margin-top:.65rem;font-size:.78rem}.booking-summary{margin-top:.7rem;padding:.7rem .75rem;gap:.5rem}.summary-count{font-size:1.15rem}.book-cta{min-width:0;flex:1;max-width:12rem}}@media(max-width:420px){.deck-head-full{display:none}.deck-head-short{display:inline}.deck-cell{min-height:3.15rem}.deck-day{padding:.18rem .12rem .85rem;font-size:.8rem}.deck-tags{margin-top:.95rem}}.guest-link-box{margin:.75rem 0;padding:.85rem .9rem;border:1px solid #e6ebf0;border-radius:.75rem;background:#f8fafc}.guest-link-box h4{margin:0 0 .35rem}.guest-hire .content{max-width:52rem;margin:0 auto;padding:1rem}.agreement-viewer{margin:.75rem 0 1rem}.agreement-preview{display:block;width:100%;height:min(70vh,48rem);min-height:24rem;margin:0;border:1px solid var(--color-border, #d6dde1);border-radius:.5rem;background:#fff}.agreement-preview.image{height:auto;max-height:min(70vh,48rem);object-fit:contain}.agreement-viewer .hint{margin:.45rem 0 0}.signature-pad{display:block;width:100%;max-width:560px;height:180px;margin-top:.35rem;touch-action:none;border:1px solid var(--color-border, #d6dde1);background:#fff;cursor:crosshair}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
