/* PutraKop operational theme. Status colors stay semantic in every palette. */
:root{--blue:#0f766e;--blue-deep:#115e59;--accent-soft:#e6f3f1;--accent-line:#b6d9d3;--nav:#142d3b;--nav-text:#c5d4db;--nav-active:#0f766e;--bg:#f3f6f7;--ink:#192c35;--muted:#526570;--line:#dbe3e7;--yellow:#fbbf24;--ui-shadow:0 2px 4px #142d3b03;--surface-soft:#f5f8f9;color-scheme:light}
:root[data-theme=corporate]{--blue:#1e40af;--blue-deep:#19358e;--accent-soft:#edf2ff;--accent-line:#cbd7f4;--nav:#142b52;--nav-active:#1e40af;--bg:#f3f6fb;--surface-soft:#f4f6fb}
:root[data-theme=forest]{--blue:#25634b;--blue-deep:#1b4b38;--accent-soft:#eaf3ed;--accent-line:#c3d9ca;--nav:#17372f;--nav-active:#25634b;--bg:#f1f5f2;--surface-soft:#f3f7f4}
body{background:var(--bg);color:var(--ink)}
:is(button,a,input,select,textarea,summary):focus-visible{outline:3px solid var(--blue);outline-offset:3px}.sidebar :is(button,a):focus-visible{outline-color:var(--yellow)}
.sidebar{background:var(--nav);border:0;padding-top:26px}.sidebar .brand{color:#fff;font-size:24px}.sidebar .brand small{color:var(--nav-text);font-size:11px}.sidebar .brand-icon{background:transparent;color:var(--yellow);border:1px solid #ffffff25;border-radius:10px}
.sidebar .nav-caption{color:#a3b8c3;margin-top:30px}.sidebar .nav-button{color:var(--nav-text);font-weight:500;margin:4px 0;min-height:46px}.sidebar .nav-button:hover{background:#ffffff0d;color:#fff}.sidebar .nav-button.active{color:#fff;background:var(--nav-active);box-shadow:none;font-weight:600}.sidebar .nav-divider{background:#ffffff1c}.sidebar-foot{background:#ffffff07;border:1px solid #ffffff1c;color:var(--nav-text);padding:15px;margin-top:auto}.sidebar-foot small{color:var(--nav-text)}.sidebar .online-dot{background:#6ee7b7}
.sidebar-appearance{display:flex;justify-content:space-between;align-items:center;gap:8px;width:100%;margin-top:14px;padding:14px 4px 0;border:0;border-top:1px solid #ffffff25;background:transparent;color:#fff;font-size:12px;text-align:left}.sidebar-appearance span{color:var(--nav-text);font-size:11px}.sidebar-appearance:hover span{color:#fff}
.topbar{height:76px;background:#fff;border-bottom:1px solid var(--line)}.breadcrumb{color:var(--muted)}.topbar p{color:var(--muted)}.icon-button:hover{background:var(--accent-soft);color:var(--blue)}.avatar{background:var(--accent-soft);border-color:var(--accent-line);color:var(--blue)}
main{padding-top:28px}.page-heading{margin-bottom:24px}.page-title h1{font-size:29px;font-weight:750;letter-spacing:-1px}.page-symbol{display:none}.page-title p{font-size:13px;color:var(--muted)}.page-title h1{max-width:36ch}.button{background:var(--blue)}.button:hover{background:var(--blue-deep)}.button.secondary{background:#fff;color:var(--ink);border-color:var(--line)}.button.secondary:hover{background:var(--surface-soft);border-color:var(--accent-line)}.button.danger{background:#fff1f2;color:#a51c30}.button.yellow{background:var(--yellow);color:#2d250e}
.stats{gap:0;border:1px solid var(--line);background:white;border-radius:12px;overflow:hidden;box-shadow:var(--ui-shadow);margin-bottom:28px}.stat{padding:18px 22px;box-shadow:none;border:0;border-radius:0;display:grid;grid-template-columns:1fr auto;align-items:center;column-gap:10px}.stat+.stat{border-left:1px solid var(--line)}.stat-label{min-height:0;align-items:center;color:var(--muted);font-size:12px}.stat-label svg{color:var(--blue)}.stat-value{font-size:30px;line-height:1.2;margin:0;color:var(--ink)}.stat-note{grid-column:1/-1;font-size:11px;color:var(--muted);margin-top:8px}
.fleet-controls{padding-bottom:14px;border-bottom:1px solid var(--line)}.fleet-filter{background:transparent;border-color:transparent;color:var(--muted);font-size:12px;min-height:42px}.fleet-filter.active{border-color:var(--accent-line);background:var(--accent-soft);color:var(--blue)}.fleet-filter span{background:#e9eef0;color:#485c67}.fleet-filter.active span{background:var(--blue);color:white}.fleet-filters{gap:4px}.fleet-search{max-width:310px}.fleet-section .section-title h2{font-size:21px}.fleet-result-count{margin:12px 0;color:var(--muted)}
.fleet-card{padding:16px;border:1px solid var(--line);box-shadow:var(--ui-shadow)}.fleet-card.available,.fleet-card.inuse,.fleet-card.maintenance{border-top:1px solid var(--line)}.fleet-card .vehicle-photo{aspect-ratio:16/6;max-height:112px;margin-bottom:14px;background:var(--surface-soft)}.vehicle-photo img{background:var(--surface-soft)}.vehicle-illustration{background:var(--surface-soft);color:#627f8e}.vehicle-illustration svg{width:52px;height:52px}.vehicle-illustration small{color:var(--muted);font-size:10px}.fleet-identity{flex-direction:row;align-items:flex-start;flex-wrap:wrap;gap:8px;margin-bottom:12px}.fleet-identity .badge{font-size:11px;max-width:100%}.fleet-card h3{font-size:21px;letter-spacing:-.5px}.fleet-card .fleet-identity p{font-size:12px;color:var(--muted)}.vehicle-details{font-size:12px;border-top:1px solid var(--line);padding-top:11px}.fleet-reminders{margin:12px 0}.fleet-reminder{padding:10px 0;border-color:var(--line)}.fleet-card .fleet-remaining{font-size:13px;margin:5px 0 0}.fleet-reminder small,.fleet-card .fleet-reminder>p:not(.fleet-remaining){font-size:11px}.fleet-reminder-title strong{font-size:12px}.fleet-card .button{background:var(--accent-soft);border-color:var(--accent-line);color:var(--blue)}.fleet-card .button:hover{background:var(--blue);color:#fff}.fleet-availability{font-size:12px!important}.fleet-footnote{color:var(--muted)}
.fleet-my-trip{background:var(--accent-soft);border-color:var(--accent-line);border-left-color:var(--blue)}.trip-spotlight{background:var(--nav)}.trip-spotlight .button.secondary{color:var(--ink)}.panel,.table-wrap,.toolbar,.trip-card{border-color:var(--line);box-shadow:var(--ui-shadow)}.panel-head{padding:18px 22px}.panel-head h2{font-size:17px}.panel-body{padding:22px}.mini-list{padding:0 22px}.mini-row{padding:15px 0}.dashboard-grid{gap:22px}.section-title{margin-top:24px}
.notice.info{color:var(--blue);background:var(--accent-soft);border-color:var(--accent-line)}.empty svg,.page-symbol,.menu-links button.active{background:var(--accent-soft);color:var(--blue);border-color:var(--accent-line)}.empty{border-color:var(--line)}.muted{color:var(--muted)}.tabs{border-color:var(--line)}.tabs button.active{background:var(--blue)}.menu-links button.active{background:var(--accent-soft)}.audit-details summary{color:var(--blue)}.form-shell .panel-head{background:var(--surface-soft)}input:focus,select:focus,textarea:focus{border-color:var(--blue)}.check-label input{accent-color:var(--blue)}input[type=file]{background:var(--surface-soft)}input[type=file]::file-selector-button{color:var(--blue);border-color:var(--accent-line)}.summary{background:var(--surface-soft);border-color:var(--line)}th{background:var(--surface-soft);color:var(--muted)}
.theme-panel{margin-top:24px;max-width:900px}.theme-choices{display:grid;gap:10px}.theme-choice{display:flex;align-items:center;gap:14px;width:100%;padding:15px;border:1px solid var(--line);border-radius:10px;text-align:left;color:var(--ink);background:#fff;min-height:72px}.theme-choice>span:nth-child(2){min-width:0;flex:1}.theme-choice strong{display:block;font-size:14px}.theme-choice small{display:block;color:var(--muted);font-size:12px;line-height:1.6;margin-top:4px}.theme-choice[aria-pressed=true]{border-color:var(--blue);background:var(--accent-soft);box-shadow:inset 0 0 0 1px var(--blue)}.theme-swatch{display:flex;flex-shrink:0;overflow:hidden;border-radius:7px;border:1px solid #192c351a;width:66px;height:40px}.theme-swatch i{width:22px;height:100%}.theme-check{color:var(--blue);visibility:hidden;font-weight:700}.theme-choice[aria-pressed=true] .theme-check{visibility:visible}.theme-help{font-size:12px;color:var(--muted);margin:15px 0 0}.appearance-button{flex-shrink:0}.appearance-button svg{width:20px;height:20px}
.login-page{background:var(--bg)}.login-story{background:var(--nav)}.login-story .brand{color:#fff}.login-story .brand small,.login-story>small{color:var(--nav-text)}.login-story .brand-icon{background:transparent;color:var(--yellow)}.login-story h1{font-size:44px}.login-main{position:relative}.login-box{box-shadow:none;border-color:var(--line)}.login-box .brand{color:var(--blue)}.login-appearance{position:absolute;right:24px;top:24px;background:#fff}.login-appearance summary{cursor:pointer;padding:10px 14px;border:1px solid var(--line);border-radius:9px;color:var(--muted);font-size:12px}.login-appearance .theme-choices{padding:12px;position:absolute;right:0;width:min(360px,calc(100vw - 36px));background:#fff;border:1px solid var(--line);border-radius:12px;z-index:5;box-shadow:0 12px 40px #142d3b16}.login-appearance .theme-choice small{display:none}.brand-intro{background:var(--nav)}
@media(max-width:1100px){.stat{padding:16px}.stat-label{font-size:11px}.stat-value{font-size:27px}.fleet-search{max-width:280px}}
@media(max-width:900px){.stat:nth-child(3){border-left:0}.stat:nth-child(n+3){border-top:1px solid var(--line)}}
@media(max-width:700px),(max-width:1000px) and (max-height:500px){
 .topbar{height:72px}.page-title h1{font-size:26px;letter-spacing:-.7px}.page-heading{gap:16px;margin-bottom:20px}.page-heading>.button{width:100%;align-self:stretch;min-height:46px}main{padding-top:22px}.stats{margin-bottom:24px}.stat,#page-content[data-view=dashboard] .stat{padding:14px;border-radius:0}.stat-label,#page-content[data-view=dashboard] .stat-label{font-size:11px}.stat-value,#page-content[data-view=dashboard] .stat-value{font-size:26px}.stat-note{display:none}.fleet-filters{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.fleet-filter{background:#fff;border-color:var(--line);font-size:12px;min-height:44px}.fleet-search{max-width:none}.fleet-controls{padding-bottom:14px}.fleet-card{padding:18px}.fleet-card .vehicle-photo{aspect-ratio:16/6;max-height:130px}.fleet-card h3{font-size:22px}.fleet-identity .badge{font-size:11px}.fleet-card .fleet-reminder-title .badge{font-size:11px}.mobile-nav{background:#fff;border-color:var(--line);box-shadow:0 -3px 16px #142d3b06;backdrop-filter:none}.mobile-nav .nav-button.active{background:var(--accent-soft);color:var(--blue)}.mobile-nav .nav-button{color:var(--muted);font-size:11px}.theme-choice{gap:12px;padding:13px}.theme-swatch{width:54px;height:36px}.theme-swatch i{width:18px}.theme-choice small{font-size:12px}.login-main{padding-top:82px}.login-appearance{right:18px;top:20px}.login-story{display:none}.login-box{padding:26px 22px}
}
@media(max-width:460px){.account>div{display:none}.account{gap:7px}.theme-choice{flex-wrap:wrap}.theme-choice>span:nth-child(2){flex-basis:calc(100% - 95px)}.login-box{padding:24px 20px}}
@media(max-width:700px),(max-width:1000px) and (max-height:500px){
 .fleet-section .section-title{display:flex;align-items:center;flex-wrap:nowrap;margin-bottom:14px}.fleet-section .section-title>div{flex:1;min-width:0}.fleet-section .section-title p{display:none}.fleet-section .section-title>.button{flex-shrink:0}
 .fleet-filters{display:flex;flex-wrap:nowrap;overflow-x:auto;max-width:100%;padding-bottom:3px;scrollbar-width:thin}.fleet-filter{flex:0 0 auto;gap:8px;white-space:nowrap}.fleet-controls{gap:10px;padding-bottom:10px}.fleet-result-count{margin:9px 0}
}
/* Approved canvas: summary, fleet, then reminders and recent requests. */
.sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
#page-content[data-view=dashboard] .page-heading{align-items:center;margin-bottom:22px}
#page-content[data-view=dashboard] .page-title h1{font-size:32px;letter-spacing:-1.1px;max-width:none}
#page-content[data-view=dashboard] .page-title p{font-size:15px}
.canvas-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));padding:14px 0;margin-bottom:28px;border:1px solid var(--line);border-radius:12px;background:#fff}
.canvas-summary-item{display:flex;gap:16px;align-items:center;padding:2px 28px;min-height:62px}.canvas-summary-item+.canvas-summary-item{border-left:1px solid var(--line)}.canvas-summary-item>svg{width:30px;height:30px;color:#496e83}.canvas-summary-item.available>svg{color:#15803d}.canvas-summary-item.inuse>svg{color:#b87306}.canvas-summary-item.maintenance>svg{color:#b42323}.canvas-summary-item strong{display:block;font-size:30px;line-height:1.15;letter-spacing:-.7px;font-weight:750}.canvas-summary-item span{display:block;font-size:14px;color:var(--muted);margin-top:4px}
.canvas-fleet{margin-bottom:24px}.canvas-fleet-heading{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:12px}.canvas-fleet-heading h2{font-size:26px;letter-spacing:-.7px;margin:0}.canvas-fleet-heading .fleet-search{max-width:435px}.canvas-fleet-heading .fleet-search input{min-height:42px;background:#fff}.canvas-fleet .fleet-controls{padding:0 0 8px;margin-bottom:24px}.canvas-fleet .fleet-filters{gap:8px}.canvas-fleet .fleet-filter{padding:9px 18px;font-weight:500;font-size:14px;border:0;min-height:40px}.canvas-fleet .fleet-filter.active{background:var(--blue);color:#fff;font-weight:600}.canvas-fleet .vehicle-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.canvas-vehicle{padding:17px;min-width:0;gap:0}.canvas-vehicle-head{display:grid;grid-template-columns:minmax(88px,1fr) minmax(0,.85fr) auto;gap:12px;align-items:center;min-height:78px;padding-bottom:14px;border-bottom:1px solid var(--line)}.canvas-vehicle .vehicle-photo{aspect-ratio:auto;height:76px;max-height:none;width:100%;margin:0;background:transparent;border-radius:6px}.canvas-vehicle .vehicle-photo img{background:transparent;object-fit:contain}.canvas-vehicle .vehicle-illustration{background:transparent}.canvas-vehicle .vehicle-illustration small{display:none}.canvas-vehicle .vehicle-illustration svg{width:65px;height:52px}.canvas-vehicle .fleet-identity{display:block;margin:0;min-width:0}.canvas-vehicle .fleet-identity h3{font-size:19px;line-height:1.25;margin:0}.canvas-vehicle .fleet-identity p{font-size:13px;margin:5px 0 0}.canvas-vehicle-head>.badge{font-size:11px;line-height:1.4;padding:5px 7px;max-width:95px}.canvas-vehicle .vehicle-details{border:0;padding:11px 0;font-size:14px;margin:0;gap:12px}.canvas-vehicle .vehicle-details strong{font-size:15px;font-variant-numeric:tabular-nums}.canvas-vehicle .fleet-reminders{display:block;flex:0 0 auto;margin:0 0 13px;border:1px solid var(--line);border-radius:8px;overflow:hidden}.canvas-vehicle .compact-reminder{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:9px 10px;min-height:41px;border:0;border-radius:0;background:#fff}.canvas-vehicle .compact-reminder+.compact-reminder{border-top:1px solid var(--line)}.compact-reminder>span:first-child{display:flex;align-items:center;gap:7px;flex-shrink:0}.compact-reminder strong{font-size:13px;font-weight:500}.compact-reminder svg{width:16px;height:16px;color:var(--muted)}.compact-reminder .reminder-value{font-size:12px;text-align:right;line-height:1.5}.compact-reminder .reminder-value.upcoming{color:#805000;background:#fff1cc;padding:3px 6px;border-radius:5px}.compact-reminder .reminder-value.overdue,.compact-reminder .reminder-value.due{background:#fff0f0;color:#b42323;padding:3px 6px;border-radius:5px}.compact-reminder .badge{font-size:10px}.canvas-vehicle>.button{margin-top:auto;min-height:42px;background:var(--blue);color:#fff;border:0;font-size:13px}.canvas-vehicle>.button:hover{background:var(--blue-deep)}.canvas-vehicle>.fleet-availability{font-size:11px!important;padding:10px 0;margin-top:auto;min-height:42px}
.canvas-bottom{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);gap:18px;margin-bottom:20px}.canvas-bottom>.panel{margin:0;min-width:0}.canvas-bottom .panel-head{padding:16px 18px;min-height:62px;gap:10px}.canvas-bottom .panel-head h2{display:flex;align-items:center;gap:10px;font-size:18px;letter-spacing:-.4px}.canvas-bottom .panel-head h2 svg{width:21px;height:21px;color:var(--ink)}.text-button{border:0;background:transparent;color:var(--blue);text-decoration:underline;text-underline-offset:3px;padding:4px 0;min-height:36px;font-size:12px;white-space:nowrap}.text-button:hover{background:transparent;color:var(--blue-deep)}.canvas-alert-list,.canvas-booking-list{padding:0 18px}.canvas-alert-row{display:flex;align-items:center;gap:10px;min-height:53px;padding:12px 0;border-bottom:1px solid var(--line)}.canvas-alert-row:last-child,.canvas-booking-row:last-child{border-bottom:0}.canvas-alert-row>svg{color:#b87306;width:20px;height:20px}.canvas-alert-row p{font-size:12px;line-height:1.6;margin:0;flex:1;min-width:0}.canvas-alert-row p strong{white-space:nowrap}.canvas-alert-row>.badge{font-size:10px;flex-shrink:0;max-width:90px}.canvas-booking-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr) auto auto;gap:12px;align-items:center;min-height:53px;padding:10px 0;border-bottom:1px solid var(--line);font-size:12px}.canvas-booking-row>span{min-width:0;overflow-wrap:anywhere}.canvas-booking-row small{display:block;font-size:10px;color:var(--muted);margin-top:3px}.canvas-booking-row time{color:var(--muted);font-size:11px;white-space:nowrap}.canvas-booking-row>.badge{font-size:10px}.canvas-admin-actions{display:flex;gap:12px;margin:20px 0;flex-wrap:wrap}.canvas-bottom .empty{padding:20px}.canvas-bottom .empty h3{font-size:14px}.canvas-bottom .empty p{font-size:12px}
@media(max-width:1200px){.canvas-vehicle-head{grid-template-columns:90px minmax(0,1fr);gap:10px}.canvas-vehicle-head>.badge{grid-column:2;justify-self:start;margin-top:-8px}.canvas-vehicle .vehicle-photo{grid-row:1/3;height:72px}.canvas-summary-item{padding:2px 18px;gap:12px}.canvas-bottom{grid-template-columns:1fr 1.15fr}.canvas-bottom .panel-head h2{font-size:16px}}
@media(max-width:1000px){.canvas-fleet .vehicle-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.canvas-summary-item{padding:2px 12px;gap:9px}.canvas-summary-item span{font-size:12px}.canvas-summary-item>svg{width:24px;height:24px}.canvas-bottom{grid-template-columns:1fr}}
@media(max-width:700px),(max-width:1000px) and (max-height:500px){
 #page-content[data-view=dashboard] .page-title h1{font-size:26px;letter-spacing:-.7px}#page-content[data-view=dashboard] .page-title p{font-size:13px}#page-content[data-view=dashboard] .page-heading{align-items:stretch}
 .canvas-summary{grid-template-columns:repeat(2,minmax(0,1fr));padding:0;margin-bottom:24px}.canvas-summary-item{padding:15px;gap:13px;min-height:85px}.canvas-summary-item strong{font-size:27px}.canvas-summary-item span{font-size:12px}.canvas-summary-item:nth-child(3){border-left:0}.canvas-summary-item:nth-child(n+3){border-top:1px solid var(--line)}.canvas-summary-item>svg{width:26px;height:26px}
 .canvas-fleet-heading{align-items:stretch;flex-direction:column;gap:14px;margin-bottom:12px}.canvas-fleet-heading h2{font-size:23px}.canvas-fleet-heading .fleet-search{max-width:none;width:100%}.canvas-fleet .fleet-controls{margin-bottom:16px;padding-bottom:7px}.canvas-fleet .fleet-filters{gap:4px}.canvas-fleet .fleet-filter{font-size:12px;padding:9px 14px;min-height:44px}.canvas-fleet .vehicle-grid{grid-template-columns:1fr;gap:14px}.canvas-vehicle{padding:16px}.canvas-vehicle-head{grid-template-columns:100px minmax(0,1fr) auto;gap:10px}.canvas-vehicle .vehicle-photo{grid-row:auto;height:70px}.canvas-vehicle-head>.badge{grid-column:auto;justify-self:end;margin:0;max-width:84px;font-size:10px}.canvas-vehicle .fleet-identity h3{font-size:18px}.canvas-vehicle .fleet-identity p{font-size:12px}.canvas-vehicle .vehicle-details{font-size:13px}.canvas-vehicle .compact-reminder{padding:10px}.canvas-vehicle .compact-reminder strong{font-size:13px}.canvas-vehicle .compact-reminder .badge{font-size:10px}.canvas-vehicle>.button{min-height:44px}.canvas-bottom{gap:16px}.canvas-bottom .panel-head{padding:14px}.canvas-bottom .panel-head h2{font-size:16px;gap:8px}.canvas-alert-list,.canvas-booking-list{padding:0 14px}.canvas-booking-row{gap:8px;grid-template-columns:minmax(0,.8fr) minmax(0,1fr) auto}.canvas-booking-row time{display:none}.canvas-alert-row>.badge{max-width:72px;font-size:10px}
}
@media(max-width:360px){.canvas-vehicle-head{grid-template-columns:88px minmax(0,1fr)}.canvas-vehicle .vehicle-photo{grid-row:1/3}.canvas-vehicle-head>.badge{grid-column:2;justify-self:start;margin-top:-7px}.canvas-bottom .panel-head h2{font-size:14px}}
/* Shared working pages: primary task on the left, guidance on the right. */
.badge.reserved{background:#e9efff;color:#284b9b}.canvas-summary{grid-template-columns:repeat(5,minmax(0,1fr))}.canvas-summary-item{padding-inline:20px}.canvas-summary-item.reserved>svg{color:#284b9b}.reservation-note{font-size:11px!important;line-height:1.6;color:#284b9b;background:#f1f5ff;padding:8px 10px;border-radius:7px;margin:10px 0 0}.canvas-vehicle.reserved .badge.reserved{max-width:none}
.task-layout{display:grid;grid-template-columns:minmax(0,1.8fr) minmax(240px,1fr);gap:28px;align-items:start;margin-bottom:28px}.task-layout>.form-shell{max-width:none;min-width:0;margin:0}.task-guide{border:1px solid var(--line);border-radius:12px;background:#fff;padding:25px;min-width:0}.task-guide h2{font-size:18px;letter-spacing:-.3px;margin-bottom:22px}.task-guide>p{font-size:13px}.journey-steps{list-style:none;counter-reset:journey;margin:0;padding:0}.journey-steps li{counter-increment:journey;position:relative;padding:0 0 22px 40px;font-size:13px}.journey-steps li:before{content:counter(journey);display:grid;place-items:center;position:absolute;left:0;top:0;width:27px;height:27px;border:1px solid var(--accent-line);border-radius:50%;color:var(--blue);background:var(--accent-soft);font-size:12px;font-weight:600}.journey-steps li:not(:last-child):after{content:'';position:absolute;top:32px;bottom:5px;left:13px;width:1px;background:var(--line)}.journey-steps strong{font-size:13px;display:block;margin-top:2px}.journey-steps p{font-size:12px;line-height:1.8;color:var(--muted);margin:7px 0 0}.guide-note{display:flex;align-items:flex-start;gap:10px;padding:15px;border-radius:9px;background:var(--surface-soft);color:var(--muted)}.guide-note svg{width:19px;height:19px;color:var(--blue);margin-top:2px}.guide-note p{margin:0;font-size:12px;line-height:1.75}.report-tips{padding-left:18px;color:var(--muted);font-size:13px;line-height:1.8;margin-bottom:24px}.report-tips li+li{margin-top:12px}
.profile-layout .profile-links{border:0;padding:0;border-radius:0;display:grid;background:transparent;gap:10px}.profile-layout .profile-links .button{justify-content:flex-start;font-weight:500}.profile-layout .task-guide h2{margin-bottom:10px}.theme-panel{max-width:none}.theme-panel .theme-choices{grid-template-columns:repeat(3,minmax(0,1fr))}.theme-panel .theme-choice{flex-wrap:wrap;align-content:start;position:relative;min-height:150px}.theme-panel .theme-choice>span:nth-child(2){flex-basis:100%}.theme-panel .theme-check{position:absolute;right:15px;top:20px}
.trip-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin-bottom:24px}.trip-grid .trip-card{margin:0;display:flex;flex-direction:column;min-width:0;padding:22px}.trip-grid .trip-card h3{font-size:21px;letter-spacing:-.5px}.trip-grid .trip-card>p{font-size:13px;color:var(--muted)}.trip-grid .trip-card .actions{margin-top:auto;padding-top:14px;border-top:1px solid var(--line)}.trip-grid .trip-card .actions .button{font-size:12px}.photo-links{margin-bottom:12px}.trip-head{gap:12px}
.history-overview{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:16px;font-size:12px}.history-overview strong{font-size:14px;white-space:nowrap}.history-overview>span{color:var(--muted)}#page-content[data-view=history] .toolbar{padding:16px;margin-bottom:18px}#page-content[data-view=history] .toolbar input{flex:1;max-width:600px}#page-content[data-view=history] .toolbar select{min-width:200px}#page-content[data-view=history] .table-wrap{border-radius:12px}#page-content[data-view=history] th{padding:15px 16px}#page-content[data-view=history] td{padding:16px}.admin-status-note{font-size:12px;line-height:1.7;margin-bottom:18px}
.tracking-layout{display:grid;grid-template-columns:minmax(0,1.85fr) minmax(270px,1fr);gap:22px;align-items:start}.map-surface{background:#fff;border:1px solid var(--line);border-radius:12px;overflow:hidden;min-width:0}.map-surface .live-map-heading{margin:0;padding:15px 18px;border-bottom:1px solid var(--line)}.map-surface #map{height:570px;border:0;border-radius:0}.map-surface .map-caption{padding:14px 18px;margin:0;font-size:11px;gap:10px;line-height:1.7}.location-directory{min-width:0}.location-directory h2{font-size:18px;margin-bottom:5px}.location-directory>p{font-size:12px;margin-bottom:16px}.location-directory .vehicle-grid{grid-template-columns:1fr;gap:12px;max-height:645px;overflow:auto;padding-right:5px}.location-directory .vehicle-card{border:1px solid var(--line);box-shadow:none;border-radius:10px;padding:18px;margin:0}.location-directory .vehicle-top h3{font-size:17px}.location-directory .vehicle-card p{font-size:12px;line-height:1.8}.location-directory .vehicle-card p>.badge{font-size:10px;margin-left:5px}.location-directory .vehicle-card>.button{width:100%}.location-directory .vehicle-top{align-items:center;gap:8px}.location-directory .vehicle-top .badge{font-size:10px}
@media(max-width:1200px){.canvas-summary-item{padding-inline:13px;gap:10px}.canvas-summary-item span{font-size:12px}.canvas-summary-item>svg{width:25px;height:25px}.task-layout{grid-template-columns:minmax(0,1.5fr) minmax(220px,1fr);gap:20px}.task-guide{padding:20px}.tracking-layout{grid-template-columns:minmax(0,1.5fr) minmax(250px,1fr);gap:18px}.theme-panel .theme-choices{grid-template-columns:1fr}.theme-panel .theme-choice{min-height:72px;flex-wrap:nowrap}.theme-panel .theme-choice>span:nth-child(2){flex-basis:auto}.theme-panel .theme-check{position:static}}
@media(max-width:1000px){.task-layout,.tracking-layout{grid-template-columns:1fr}.task-guide{padding:22px}.journey-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.journey-steps li{padding-bottom:0}.journey-steps li:after{display:none}.task-guide .guide-note{margin-top:18px}.map-surface #map{height:450px}.location-directory .vehicle-grid{grid-template-columns:repeat(2,minmax(0,1fr));max-height:none;overflow:visible;padding:0}.theme-panel .theme-choices{grid-template-columns:1fr}.canvas-summary{grid-template-columns:repeat(3,minmax(0,1fr))}.canvas-summary-item:nth-child(4){border-left:0}.canvas-summary-item:nth-child(n+4){border-top:1px solid var(--line)}.canvas-summary-item{min-height:74px}}
@media(max-width:700px),(max-width:1000px) and (max-height:500px){
 .canvas-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.canvas-summary-item{padding:14px;min-height:82px}.canvas-summary-item:nth-child(odd){border-left:0}.canvas-summary-item:nth-child(even){border-left:1px solid var(--line)}.canvas-summary-item:nth-child(n+3){border-top:1px solid var(--line)}.canvas-summary-item:last-child{grid-column:1/-1}.canvas-summary-item:last-child>div{display:flex;gap:12px;align-items:center}.canvas-summary-item:last-child span{margin:0}
 .task-layout{gap:18px}.task-guide{padding:20px}.task-guide h2{font-size:17px;margin-bottom:18px}.journey-steps{display:block}.journey-steps li{padding-bottom:22px}.journey-steps li:after{display:block}.journey-steps li:last-child{padding-bottom:0}.task-guide .guide-note{margin-top:20px}.trip-grid{grid-template-columns:1fr;gap:16px}.trip-grid .trip-card{padding:20px 18px}.trip-grid .trip-card .actions{gap:9px}.trip-grid .trip-card .actions>.button{flex:1 1 140px}.history-overview{align-items:flex-start;flex-direction:column;gap:5px}.history-overview>span{font-size:11px;line-height:1.7}#page-content[data-view=history] .toolbar{padding:12px}#page-content[data-view=history] .toolbar select{min-width:0}.tracking-layout{gap:24px}.map-surface #map{height:360px}.map-surface .live-map-heading{font-size:12px;padding:13px 14px}.map-surface .map-caption{padding:13px 14px}.location-directory .vehicle-grid{grid-template-columns:1fr}.location-directory .vehicle-card>.button{min-height:44px}.theme-panel .theme-choice{flex-wrap:wrap;min-height:80px}.theme-panel .theme-choice>span:nth-child(2){flex-basis:calc(100% - 95px)}.theme-panel .theme-check{position:absolute;right:13px;top:19px}.profile-layout .profile-links>.button{min-height:46px}
}
.badge.unavailable{background:#fff4d6;color:#805000}.canvas-summary-item.unavailable>svg{color:#b87306}.canvas-summary{grid-template-columns:repeat(4,minmax(0,1fr))}
.canvas-vehicle.unavailable .canvas-vehicle-head{grid-template-columns:100px minmax(0,1fr)}.canvas-vehicle.unavailable .canvas-vehicle-head>.badge{grid-column:1/-1;justify-self:start;max-width:100%;font-size:11px;text-align:left;overflow-wrap:anywhere}.canvas-vehicle.unavailable .vehicle-photo{grid-row:1;height:70px}.location-directory .vehicle-card p>.badge{display:inline-block;max-width:100%;margin:6px 0 0;overflow-wrap:anywhere}
.vehicle-status{display:inline-flex;flex-direction:column;align-items:flex-start;gap:5px;min-width:0;max-width:100%;vertical-align:top}.vehicle-status .badge{font-size:11px;line-height:1.4}.vehicle-user{font-size:11px!important;font-weight:400;line-height:1.5;color:var(--muted);overflow-wrap:anywhere;white-space:normal}.canvas-vehicle .canvas-vehicle-head,.canvas-vehicle.unavailable .canvas-vehicle-head{grid-template-columns:minmax(80px,1fr) minmax(0,1fr) minmax(64px,104px);gap:10px}.canvas-vehicle-head>.vehicle-status{justify-self:end;max-width:104px}.canvas-vehicle-head>.vehicle-status .badge{max-width:100%;padding:5px 7px}.canvas-vehicle-head>.vehicle-status .vehicle-user{font-size:10px!important}.location-directory .vehicle-status{display:flex;margin-top:6px}.canvas-summary-item.maintenance span{overflow-wrap:normal}
@media(max-width:1200px){.canvas-vehicle .canvas-vehicle-head,.canvas-vehicle.unavailable .canvas-vehicle-head{grid-template-columns:90px minmax(0,1fr)}.canvas-vehicle-head>.vehicle-status{grid-column:2;justify-self:start;max-width:100%}.canvas-vehicle .vehicle-photo,.canvas-vehicle.unavailable .vehicle-photo{grid-row:1/3}}
@media(max-width:700px),(max-width:1000px) and (max-height:500px){.canvas-vehicle .canvas-vehicle-head,.canvas-vehicle.unavailable .canvas-vehicle-head{grid-template-columns:90px minmax(0,1fr) minmax(64px,94px)}.canvas-vehicle .vehicle-photo,.canvas-vehicle.unavailable .vehicle-photo{grid-row:auto}.canvas-vehicle-head>.vehicle-status{grid-column:auto;justify-self:end;max-width:94px}.canvas-summary-item span{font-size:11px}}
@media(max-width:360px){.canvas-vehicle .canvas-vehicle-head,.canvas-vehicle.unavailable .canvas-vehicle-head{grid-template-columns:80px minmax(0,1fr)}.canvas-vehicle .vehicle-photo,.canvas-vehicle.unavailable .vehicle-photo{grid-row:1/3}.canvas-vehicle-head>.vehicle-status{grid-column:2;justify-self:start;max-width:100%}}
@media(min-width:701px) and (max-width:1000px){.canvas-summary-item:nth-child(4){border-left:1px solid var(--line);border-top:0}}
@media(max-width:700px),(max-width:1000px) and (max-height:500px){.canvas-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.canvas-summary-item:last-child{grid-column:auto}.canvas-summary-item:last-child>div{display:block}.canvas-summary-item:last-child span{margin-top:4px}}
/* Aligned fleet rows: shared header, mileage, reminders and action tracks. */
.canvas-fleet .vehicle-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;align-items:stretch}
.canvas-fleet .canvas-vehicle{display:grid;grid-template-rows:minmax(112px,auto) auto 1fr minmax(44px,auto);gap:0;padding:18px;min-width:0;margin:0}
.canvas-fleet .canvas-vehicle .canvas-vehicle-head{display:grid;grid-template-columns:96px minmax(0,1fr);grid-template-areas:'photo identity' 'photo status';grid-template-rows:auto 1fr;gap:8px 14px;align-items:start;min-height:112px;padding:0 0 16px}
.canvas-fleet .canvas-vehicle .vehicle-photo{grid-area:photo;align-self:center;width:96px;height:84px;min-height:0;max-height:84px;margin:0;aspect-ratio:auto}
.canvas-fleet .canvas-vehicle .fleet-identity{grid-area:identity;margin:0;min-width:0}.canvas-fleet .canvas-vehicle .fleet-identity h3{font-size:19px;line-height:1.35;margin:0;overflow-wrap:anywhere}.canvas-fleet .canvas-vehicle .fleet-identity p{font-size:12px;line-height:1.6;margin:3px 0 0;overflow-wrap:anywhere}
.canvas-fleet .canvas-vehicle .vehicle-status{grid-area:status;justify-self:start;align-self:start;max-width:100%;gap:5px}.canvas-fleet .canvas-vehicle .vehicle-status .badge{max-width:100%;font-size:11px;line-height:1.4}.canvas-fleet .canvas-vehicle .vehicle-user{font-size:11px!important;line-height:1.5}
.canvas-fleet .canvas-vehicle .vehicle-details{margin:0;min-height:44px;padding:11px 0;align-self:start;display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}
.canvas-fleet .canvas-vehicle .fleet-reminders{width:100%;align-self:start;flex:none;margin:0 0 14px}.canvas-fleet .canvas-vehicle .compact-reminder{min-height:42px}
.canvas-fleet .canvas-vehicle>.button,.canvas-fleet .canvas-vehicle>.fleet-availability{margin:0;align-self:stretch;width:100%;min-height:44px;display:flex;align-items:center;justify-content:center;line-height:1.6;padding:10px 12px;text-align:center}.canvas-fleet .canvas-vehicle>.fleet-availability{font-size:11px!important;color:var(--muted)}
@supports(grid-template-rows:subgrid){.canvas-fleet .canvas-vehicle{grid-row:span 5;grid-template-rows:subgrid;row-gap:0}.canvas-fleet .canvas-vehicle .canvas-vehicle-head{grid-row:span 2;grid-template-rows:subgrid;row-gap:8px}}
@media(max-width:1239px){.canvas-fleet .vehicle-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}}
@media(max-width:900px){.canvas-fleet .vehicle-grid{grid-template-columns:1fr}.canvas-fleet .canvas-vehicle .canvas-vehicle-head{grid-template-columns:100px minmax(0,1fr)}.canvas-fleet .canvas-vehicle .vehicle-photo{width:100px}}
@media(max-width:360px){.canvas-fleet .canvas-vehicle{padding:16px}.canvas-fleet .canvas-vehicle .canvas-vehicle-head{grid-template-columns:80px minmax(0,1fr);column-gap:12px}.canvas-fleet .canvas-vehicle .vehicle-photo{width:80px;height:76px}.canvas-fleet .canvas-vehicle .fleet-identity h3{font-size:18px}}
/* Availability-first booking workspace. */
.availability-toolbar{display:flex;align-items:flex-end;flex-wrap:wrap;gap:16px;padding:18px 22px;margin-bottom:22px;background:#fff;border:1px solid var(--line);border-radius:12px}.availability-toolbar .field{margin:0;flex:0 1 200px;min-width:0}.availability-toolbar .field label{margin-bottom:6px;font-size:12px}.availability-toolbar input,.availability-toolbar select{width:100%;min-height:44px}.availability-toolbar>p{font-size:11px;color:var(--muted);margin:0 0 11px auto;max-width:240px;line-height:1.6}.booking-planner-layout{display:grid;grid-template-columns:minmax(0,1.9fr) minmax(320px,1fr);gap:22px;align-items:start;margin-bottom:28px}.booking-planner-layout:not(:has(.planner-form)){grid-template-columns:1fr}.schedule-panel{background:#fff;border:1px solid var(--line);border-radius:12px;padding:20px;min-width:0}.schedule-heading h2{font-size:22px;margin-bottom:12px;letter-spacing:-.5px}.slot-legend{display:flex;gap:18px;flex-wrap:wrap;font-size:11px;color:var(--muted)}.slot-legend>span{display:flex;align-items:center;gap:7px}.slot-legend i{width:10px;height:10px;display:block;border-radius:3px}.slot-legend .free{background:#c2e6d5}.slot-legend .busy{background:#f5c25b}.slot-legend .past{background:#b9c3ca}.slot-instruction{font-size:12px;color:var(--muted);line-height:1.8;margin:15px 0}.schedule-vehicle{padding:16px;border:1px solid var(--line);border-radius:10px;margin-bottom:12px;min-width:0}.schedule-vehicle:last-child{margin-bottom:0}.schedule-vehicle-heading{display:flex;align-items:center;gap:12px;margin-bottom:15px}.schedule-vehicle-heading>div{min-width:0;flex:1}.schedule-vehicle-heading h3{font-size:15px;margin:0;overflow-wrap:anywhere}.schedule-vehicle-heading p{font-size:11px;color:var(--muted);margin:3px 0 0;line-height:1.6}.schedule-vehicle .vehicle-photo{width:65px;height:48px;aspect-ratio:auto;margin:0;background:var(--surface-soft);flex-shrink:0}.schedule-vehicle .vehicle-illustration svg{width:37px;height:32px}.schedule-vehicle .vehicle-illustration small{display:none}.schedule-day-status{font-size:10px;color:var(--blue);background:var(--accent-soft);padding:4px 7px;border-radius:5px;max-width:145px;text-align:right;line-height:1.6}.schedule-day-status.blocked{background:#fff0f0;color:#b42323}.day-ticks{display:flex;justify-content:space-between;color:var(--muted);font-size:10px;margin-bottom:5px}.day-track{position:relative;background:#d7eee1;overflow:hidden;height:13px;border-radius:4px;margin-bottom:10px}.day-track.blocked{background:#e4e8eb}.busy-span,.past-span{position:absolute;inset:0 auto 0 0;height:100%;display:block}.busy-span{background:#f5c25b}.past-span{background:#b9c3cad9;z-index:1}.busy-times{display:flex;gap:5px;flex-wrap:wrap;margin:0 0 11px;font-size:10px;color:#805000;line-height:1.7}.busy-times>span:not(:first-child){background:#fff4d6;border-radius:4px;padding:1px 6px}.free-windows{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.free-windows>strong{font-size:11px;color:var(--muted);font-weight:500;flex-basis:100%}.free-windows>p{font-size:12px;line-height:1.8;color:var(--muted);margin:0}.free-slot{background:var(--accent-soft);color:var(--blue);border:1px solid var(--accent-line);border-radius:7px;padding:8px 12px;font:600 12px Inter,system-ui,sans-serif;min-height:46px;text-align:left;line-height:1.5;flex:0 1 auto}.free-slot small{display:block;font-weight:400;font-size:10px;opacity:.85;margin-top:1px}.free-slot:hover,.free-slot.selected{background:var(--blue);border-color:var(--blue);color:#fff}.free-slot:disabled{opacity:.55;cursor:not-allowed}.schedule-footnote{font-size:11px;color:var(--muted);line-height:1.8;margin:16px 0 0}.planner-form{position:sticky;top:18px;max-width:none;margin:0;min-width:0}.planner-form .form-grid{grid-template-columns:1fr;gap:0}.planner-form .panel-head{padding:18px 20px}.planner-form .panel-body{padding:20px}.planner-form .field{margin-bottom:18px}.planner-form .field label{font-size:12px}.planner-form input,.planner-form select,.planner-form textarea{font-size:13px;min-width:0;width:100%}.planner-form textarea{min-height:105px}.planner-form .notice{font-size:11px;padding:12px}.planner-form form>.button{width:100%;min-height:46px}.slot-selection-summary{background:var(--surface-soft);border-left:3px solid var(--blue);padding:12px;font-size:12px;line-height:1.7;color:var(--muted);margin-bottom:16px}.planner-form .selected-vehicle{gap:10px;padding:12px;display:flex;align-items:flex-start}.planner-form .selected-vehicle .vehicle-photo{width:65px;height:48px;flex-shrink:0;aspect-ratio:auto;margin:0}.planner-form .selected-vehicle h3{font-size:12px;line-height:1.6;margin:0}.planner-form .selected-vehicle p{font-size:10px;line-height:1.6;margin:6px 0 0}.planner-form .selected-vehicle .vehicle-user{font-size:10px!important}.planner-form .selected-vehicle .badge{font-size:10px}.booking-planner-layout+#page-content{margin-top:24px}
@media(max-width:1200px){.booking-planner-layout{grid-template-columns:minmax(0,1.4fr) minmax(300px,1fr);gap:18px}.schedule-panel{padding:18px}.availability-toolbar>p{margin-left:0;max-width:none;flex-basis:100%;margin-bottom:0}}
@media(max-width:1000px){.booking-planner-layout{grid-template-columns:1fr}.planner-form{position:static}.planner-form input,.planner-form select,.planner-form textarea{font-size:16px}.availability-toolbar{padding:16px}.availability-toolbar .field{flex:1 1 180px}.schedule-panel{padding:18px}}
@media(max-width:700px),(max-width:1000px) and (max-height:500px){.availability-toolbar{gap:12px;padding:15px;margin-bottom:18px}.availability-toolbar .field{flex:1 1 calc(50% - 6px)}.availability-toolbar input,.availability-toolbar select{font-size:16px;min-height:48px}.availability-toolbar>.button{width:100%;min-height:44px}.availability-toolbar>p{font-size:11px;margin:0}.schedule-panel{padding:15px}.schedule-heading h2{font-size:21px}.slot-legend{gap:10px;font-size:10px}.schedule-vehicle{padding:13px}.schedule-vehicle-heading{gap:9px;flex-wrap:wrap}.schedule-vehicle-heading .vehicle-photo{width:54px;height:43px}.schedule-day-status{max-width:110px}.schedule-vehicle-heading h3{font-size:14px}.schedule-vehicle-heading p{font-size:11px}.free-slot{flex:1 1 125px;min-height:48px;padding:9px 11px;font-size:12px}.slot-instruction{font-size:12px}.planner-form .panel-body{padding:18px}.planner-form .selected-vehicle h3{font-size:13px}.planner-form .form-error{font-size:12px}}
.planner-form .selected-vehicle .vehicle-illustration small{display:none}.planner-form .selected-vehicle .vehicle-illustration svg{width:36px;height:32px}.schedule-vehicle-heading{scroll-margin-top:15px}
/* Booking design B: date ribbon, vehicle picker and precise start-time grid. */
.planner-date-strip{display:flex;gap:22px;align-items:center;background:#fff;border:1px solid var(--line);border-radius:12px;padding:17px 20px;margin-bottom:14px}.planner-date-strip>.field{flex:0 0 180px;margin:0}.planner-date-strip label{font-size:11px;margin-bottom:5px}.planner-date-strip input{width:100%;min-height:44px;font-size:13px;padding:9px}.booking-week{display:flex;gap:10px;align-items:center;flex:1;min-width:0}.week-days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:8px;flex:1;min-width:0}.week-day{border:1px solid var(--line);border-radius:9px;background:#fff;color:var(--ink);padding:8px 5px;min-height:56px;display:flex;flex-direction:column;align-items:center;gap:1px}.week-day small{font-size:11px}.week-day strong{font-size:17px}.week-day.selected{background:var(--blue);border-color:var(--blue);color:#fff}.week-day:hover:not(.selected){background:var(--surface-soft);border-color:var(--accent-line)}.week-arrow{border:1px solid var(--line);border-radius:7px;background:#fff;color:var(--muted);font-size:23px;width:34px;height:42px;flex-shrink:0}.alternative-toolbar{padding:11px 18px;margin-bottom:20px;gap:14px}.alternative-toolbar .field{display:flex;align-items:center;gap:12px;flex:0 1 270px}.alternative-toolbar .field label{white-space:nowrap;margin:0;font-size:12px}.alternative-toolbar select{width:125px;min-height:40px;padding:8px 10px;font-size:12px}.alternative-toolbar>.button{font-size:12px;min-height:40px;padding:9px 13px}.alternative-toolbar>p{margin-bottom:0;max-width:none;font-size:11px}.booking-alternative-layout{display:grid;grid-template-columns:minmax(205px,.8fr) minmax(0,1.65fr) minmax(300px,1fr);gap:16px;align-items:start;margin-bottom:24px}.booking-alternative-layout:not(:has(.planner-form)){grid-template-columns:minmax(220px,.8fr) minmax(0,2fr)}.vehicle-chooser{background:#fff;border:1px solid var(--line);border-radius:12px;padding:18px;min-width:0}.vehicle-chooser h2{font-size:17px;margin:0 0 8px;letter-spacing:-.4px}.vehicle-chooser>p{font-size:12px;color:var(--muted);line-height:1.7;margin-bottom:18px}.vehicle-choice{display:flex;align-items:center;gap:10px;border:1px solid var(--line);background:#fff;color:var(--ink);border-radius:9px;padding:13px 10px;width:100%;min-height:95px;text-align:left;margin-bottom:10px}.vehicle-choice:last-child{margin-bottom:0}.vehicle-choice.selected{border-color:var(--blue);background:var(--accent-soft);box-shadow:inset 0 0 0 1px var(--blue)}.choice-vehicle-image{width:42px;height:38px;display:grid;place-items:center;flex-shrink:0}.choice-vehicle-image img{width:100%;height:100%;object-fit:contain}.choice-vehicle-image svg{width:36px;height:30px;color:#607c8b}.choice-vehicle-text{min-width:0;flex:1;display:flex;flex-direction:column;gap:4px}.choice-vehicle-text>strong{font-size:13px;line-height:1.4;overflow-wrap:anywhere}.choice-vehicle-text>span{font-size:11px;color:var(--muted);line-height:1.6;overflow-wrap:anywhere}.choice-vehicle-text>small{font-size:10px;color:var(--blue);line-height:1.6}.choice-vehicle-text>.blocked{color:#805000}.choice-check{font-size:15px;color:var(--blue);flex-shrink:0}.booking-alternative-layout .schedule-panel{padding:18px}.booking-alternative-layout .schedule-heading h2{font-size:18px;margin-bottom:12px}.booking-alternative-layout .slot-instruction{font-size:11px;margin:13px 0 16px;line-height:1.8}.selected-schedule-vehicle{display:flex;align-items:center;gap:10px;border:1px solid var(--line);border-radius:8px;padding:12px;margin-bottom:16px;min-width:0}.selected-schedule-vehicle .vehicle-photo{width:46px;height:37px;margin:0;flex-shrink:0;aspect-ratio:auto;background:transparent}.selected-schedule-vehicle .vehicle-illustration{background:transparent}.selected-schedule-vehicle .vehicle-illustration small{display:none}.selected-schedule-vehicle .vehicle-illustration svg{width:34px;height:30px}.selected-schedule-vehicle>div{min-width:0}.selected-schedule-vehicle h3{font-size:13px;line-height:1.6;margin:0;overflow-wrap:anywhere}.selected-schedule-vehicle h3>span{display:block;font-size:11px;font-weight:500;color:var(--muted)}.selected-schedule-vehicle p{font-size:10px;line-height:1.7;color:var(--muted);margin:4px 0 0}.time-slot-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.time-slot-grid .time-slot{width:100%;min-width:0;padding:9px 4px;text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;min-height:53px;background:#fff;line-height:1.4}.time-slot strong{font-size:12px;font-weight:600}.time-slot-grid .time-slot small{font-size:9px;margin:0;white-space:nowrap}.time-slot-grid .time-slot.selected,.time-slot-grid .time-slot:hover:not(:disabled){background:var(--blue);color:#fff}.time-slot-grid .time-slot:disabled{background:#edf0f2;border-color:#e0e5e8;color:#7b8991;opacity:1;cursor:not-allowed}.alternative-busy{border-top:1px solid var(--line);padding-top:14px;margin:16px 0 0;gap:7px}.alternative-busy>strong{font-size:11px;color:var(--ink)}.booking-alternative-layout .schedule-footnote{font-size:10px;margin-top:16px}.booking-alternative-layout .planner-form{top:18px}.booking-alternative-layout .planner-form .panel-head{padding:18px}.booking-alternative-layout .planner-form .panel-head h2{font-size:17px;letter-spacing:-.4px}.booking-alternative-layout .planner-form .panel-head>svg{display:none}.booking-alternative-layout .planner-form .panel-body{padding:18px}.booking-alternative-layout .planner-form .field{margin-bottom:16px}.booking-alternative-layout .planner-form input,.booking-alternative-layout .planner-form select{padding:10px;font-size:12px;min-height:43px}.booking-alternative-layout .planner-form textarea{font-size:13px;min-height:100px}.booking-alternative-layout .planner-form .selected-vehicle{display:none}.booking-alternative-layout .planner-form .slot-selection-summary{font-size:11px}.booking-alternative-layout .planner-form .notice{font-size:11px;line-height:1.8}
@media(min-width:1536px){.time-slot-grid{grid-template-columns:repeat(6,minmax(0,1fr));gap:7px}}
@media(max-width:1240px){.booking-alternative-layout{grid-template-columns:220px minmax(0,1fr)}.booking-alternative-layout .planner-form{grid-column:1/-1;position:static}.booking-alternative-layout .planner-form .form-grid{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:20px}.booking-alternative-layout .planner-form .field.wide{grid-column:1/-1}.booking-alternative-layout .planner-form input,.booking-alternative-layout .planner-form select{font-size:14px}.planner-date-strip{gap:14px}.planner-date-strip>.field{flex-basis:160px}.booking-week{gap:7px}.week-days{gap:5px}.time-slot-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.alternative-toolbar>p{flex-basis:auto;margin-left:auto}}
@media(max-width:1000px){.planner-date-strip{flex-direction:column;align-items:stretch}.planner-date-strip>.field{flex:auto;width:100%}.booking-alternative-layout,.booking-alternative-layout:not(:has(.planner-form)){grid-template-columns:1fr}.booking-alternative-layout .planner-form{grid-column:auto}.vehicle-chooser{padding:16px}.vehicle-chooser>p{margin-bottom:13px}#booking-vehicles{display:flex;gap:10px;overflow-x:auto;padding:2px 2px 9px;scrollbar-width:thin}.vehicle-choice{flex:0 0 210px;margin:0;min-height:100px}.time-slot-grid{grid-template-columns:repeat(6,minmax(0,1fr))}.booking-alternative-layout .planner-form input,.booking-alternative-layout .planner-form select,.booking-alternative-layout .planner-form textarea{font-size:16px}}
@media(max-width:700px),(max-width:1000px) and (max-height:500px){.planner-date-strip{padding:15px;gap:14px;margin-bottom:12px}.planner-date-strip input{font-size:16px;min-height:46px}.booking-week{gap:6px}.week-arrow{width:27px;min-width:27px;height:44px;font-size:21px}.week-days{gap:4px}.week-day{min-height:52px;padding:7px 2px;border-radius:7px}.week-day small{font-size:9px}.week-day strong{font-size:15px}.alternative-toolbar{padding:13px;gap:10px;margin-bottom:18px}.alternative-toolbar .field{flex:1 1 100%;justify-content:space-between}.alternative-toolbar .field label{font-size:12px}.alternative-toolbar select{width:150px;font-size:16px}.alternative-toolbar>.button{width:auto;flex:0 0 auto}.alternative-toolbar>p{font-size:10px;flex:1;max-width:170px;margin:0 0 0 auto}.booking-alternative-layout{gap:16px}.booking-alternative-layout .schedule-panel{padding:15px}.vehicle-chooser{padding:15px}.vehicle-choice{flex-basis:210px;padding:13px}.vehicle-chooser h2,.booking-alternative-layout .schedule-heading h2{font-size:18px}.time-slot-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:7px}.time-slot-grid .time-slot{min-height:55px;padding:9px 2px}.time-slot-grid .time-slot strong{font-size:12px}.time-slot-grid .time-slot small{font-size:9px}.booking-alternative-layout .planner-form .form-grid{grid-template-columns:1fr}.booking-alternative-layout .planner-form .panel-body{padding:18px}.booking-alternative-layout .planner-form .panel-head h2{font-size:18px}.selected-schedule-vehicle{padding:11px}.booking-alternative-layout .planner-form .field label{font-size:13px}}
@media(max-width:360px){.time-slot-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.week-arrow{width:23px;min-width:23px}.booking-week{gap:4px}.week-days{gap:3px}.week-day small{font-size:8px}}
@media(max-width:700px),(max-width:1000px) and (max-height:500px){.week-days{display:flex;position:relative;overflow-x:auto;scrollbar-width:thin;padding-bottom:4px}.week-day{flex:0 0 46px;min-height:55px}.week-day small{font-size:10px}.week-arrow{width:44px;min-width:44px;height:48px}.booking-week{gap:7px}}
#booking-vehicles{position:relative}
.slot-size-label{font-size:13px;font-weight:600;color:var(--ink)}.slot-range-bar{display:flex;align-items:center;flex-wrap:wrap;gap:9px;background:var(--accent-soft);border:1px solid var(--accent-line);border-radius:9px;padding:12px;margin-bottom:14px;position:sticky;top:12px;z-index:6;box-shadow:0 4px 12px #142d3b0b}.slot-range-bar>div{flex:1;min-width:110px}.slot-range-bar strong{display:block;font-size:14px}.slot-range-bar small{display:block;font-size:11px;color:var(--muted);margin-top:3px}.slot-range-bar>span{font-size:12px;color:var(--muted)}.slot-range-bar:not(:has(button)){display:none}.slot-range-bar .button{font-size:11px;min-height:40px;padding:8px 11px}.time-slot-grid .time-slot[aria-pressed=true]{background:var(--blue);border-color:var(--blue);color:#fff;box-shadow:inset 0 0 0 1px var(--blue-deep)}@media(max-width:700px){.slot-range-bar{top:8px;padding:11px;gap:8px}.slot-range-bar .button{min-height:44px}.slot-range-bar strong{font-size:13px}.alternative-toolbar .slot-size-label{font-size:12px}}
.slot-range-bar>div{min-width:90px}
