*{box-sizing:border-box}body{margin:0;background:#f3f5f8;color:#172435;font:16px/1.5 system-ui,-apple-system,'Segoe UI',sans-serif}a{color:#205bd2;text-decoration:none}a:hover{text-decoration:underline}header{height:96px;padding:0 max(28px,calc((100vw - 1200px)/2));display:flex;align-items:center;gap:60px;background:white;border-bottom:1px solid #dfe5ed}.brand{display:flex;align-items:center;font-size:36px;font-weight:850;letter-spacing:-2px;color:#152a46;gap:0;line-height:1}.brand:hover{text-decoration:none}.brandmark{color:#2d69e5;padding-right:14px}.brand>span:last-child{font-size:18px;letter-spacing:2px}.brand small{display:block;font-weight:450;font-size:13px;letter-spacing:0;color:#6c7788;margin-top:8px}nav{display:flex;gap:28px}nav a{color:#44556c;font-size:14px}.account{margin-left:auto;display:flex;align-items:center;gap:18px;font-size:14px}.quiet{border:0;background:none;color:#52647a;cursor:pointer}.location{margin-left:auto;font-size:14px;color:#6a788b}main{max-width:1200px;min-height:calc(100vh - 185px);margin:auto;padding:42px 28px 64px}h1{font-size:36px;line-height:1.18;letter-spacing:-1px;margin:10px 0 12px}h2{font-size:21px;letter-spacing:-.35px;margin:0}h3{font-size:19px;margin:0 0 12px}p{margin:0 0 12px}.eyebrow{font-size:12px;font-weight:700;letter-spacing:1.8px;color:#536b8b}.subtle{color:#69778b;font-size:14px}.pagehead,.sectionhead,.period{display:flex;align-items:center;justify-content:space-between;gap:20px}.pagehead{margin-bottom:34px}.primary,.button,button,input,select{font:inherit}.primary,.button{display:inline-flex;align-items:center;justify-content:center;padding:11px 19px;border-radius:7px;border:1px solid #d0d9e5;background:white;cursor:pointer;font-size:14px;font-weight:600;color:#223c5e}.primary{background:#245fdb;border-color:#245fdb;color:white}.primary:hover{background:#174bb5;text-decoration:none}.button:hover{text-decoration:none}.period{margin-bottom:18px}.period h2{text-transform:capitalize}.period form{display:flex;align-items:center;gap:12px}.period label{font-size:14px;color:#6b7b8e}.period input{width:auto;padding:8px 12px}.panel{background:white;border:1px solid #dce3ed;border-radius:10px}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.stats .panel{padding:24px 26px}.statlabel{display:block;color:#627389;font-size:14px}.stats strong{display:block;font-size:34px;font-weight:650;letter-spacing:-1px;margin:8px 0 12px}.stats strong small{font-size:18px;font-weight:400;letter-spacing:0}.stats a{font-size:14px}.stats p{margin:0}.accent{border-top:3px solid #2663dc;background:#eef4ff}.accent progress{width:100%;height:6px;accent-color:#2460d8}.section{margin-top:34px}.sectionhead{margin-bottom:16px}.sectionhead a{font-size:14px;font-weight:600}.cars{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}.car{padding:24px;display:flex;gap:24px;color:inherit;justify-content:space-between}.car:hover{text-decoration:none;border-color:#729be7}.carlabel{font-size:11px;letter-spacing:1.6px;color:#708197;display:block;margin-bottom:10px}.plate{border:1px solid #bdc9d8;border-radius:5px;padding:3px 9px;font-weight:650;font-size:14px;display:inline-block}.car dl{margin:0;font-size:14px}.car dt{color:#718096;font-size:12px}.car dd{margin:0 0 7px}.empty{padding:36px;text-align:center;width:100%}.empty p{color:#6e7c8d;font-size:14px}.cars>.empty{grid-column:1/-1}.tablewrap{overflow:auto}table{width:100%;border-collapse:collapse;font-size:14px;text-align:left}th{background:#f9fafc;color:#6a7c90;font-size:12px;font-weight:600}th,td{padding:17px 22px;border-bottom:1px solid #e7ecf2}tbody tr:last-child td{border-bottom:0}td small{display:block;color:#718095;font-size:12px}.num{text-align:right}.auth-layout{display:grid;grid-template-columns:1fr 440px;gap:80px;align-items:center;padding:50px 20px}.intro h1{font-size:49px;line-height:1.1;margin:20px 0}.intro>p:not(.eyebrow){max-width:380px}.intro-line{width:75px;height:5px;background:#2862d5;margin:35px 0}.auth{padding:32px}.auth h2{margin-bottom:24px}.field{margin-bottom:20px}.field label{display:block;font-size:14px;font-weight:550;margin-bottom:7px}input,select{width:100%;padding:11px 13px;border:1px solid #c8d3e1;border-radius:6px;background:white;color:#172435}input:focus,select:focus{outline:2px solid #7c9fe9;outline-offset:2px}.help{color:#6a798c;font-size:12px;margin-top:7px}.help ul{padding-left:18px}.wide{width:100%}.switch{font-size:14px;margin:22px 0 0;text-align:center}.errorlist{color:#a32232;font-size:14px;padding-left:18px}.message{background:#e8f2fe;border:1px solid #a3c2ed;border-radius:8px;padding:14px 18px;margin-bottom:24px}.back{font-size:14px}.formhead{margin:28px 0}.formpanel{max-width:650px;padding:30px}.actions{display:flex;gap:12px;margin-top:28px}footer{max-width:1200px;margin:auto;border-top:1px solid #dce3ed;padding:22px 28px;color:#64748b;font-size:12px;letter-spacing:1px;display:flex;justify-content:space-between}footer span{letter-spacing:0}@media(max-width:800px){header{padding:18px 22px;height:auto;gap:20px;flex-wrap:wrap}nav{order:3;width:100%;gap:20px}.location{display:none}main{padding:28px 18px}.auth-layout{grid-template-columns:1fr;padding:10px 0;gap:24px}.intro h1{font-size:34px}.intro-line,.intro .subtle{display:none}.stats{grid-template-columns:1fr}.stats .panel{padding:20px}.cars{grid-template-columns:1fr}.pagehead,.period{align-items:flex-start;flex-direction:column}.period form{flex-wrap:wrap}.sectionhead{align-items:flex-start}.car{flex-wrap:wrap}.account{gap:8px}h1{font-size:30px}.formpanel{padding:22px}footer{gap:15px}.intro>p{margin-bottom:5px}}

.fieldgrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 25px}.sheet-fields{padding:26px;margin:22px 0}.trip-row{padding:22px;margin:14px 0}.tripgrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 20px}.confirmation{margin-top:24px}.confirmation input,.checkfield input{width:auto}.vehicle-picker{display:flex;align-items:center;gap:15px;padding:20px}.vehicle-picker select{max-width:300px}.vehicle-picker label{font-size:14px}@media(max-width:700px){.fieldgrid,.tripgrid{grid-template-columns:1fr}.vehicle-picker{flex-direction:column;align-items:stretch}nav{flex-wrap:wrap}}

.map-panel{padding:22px;margin-top:24px}#route-map{height:420px;width:100%;border-radius:8px;z-index:0}.route-pin{background:#245fdb;border:2px solid white;border-radius:50%;box-shadow:0 2px 6px #0005;color:white;text-align:center;font:bold 14px/26px sans-serif}.map-panel #map-status{font-size:14px;margin:14px 0 8px}.map-point{display:flex;align-items:center;gap:8px;margin:10px 0}.map-point label{flex:1}.map-point input{width:90%}.leaflet-container a{color:#1760a2}.leaflet-control-attribution{font-size:11px!important}button:disabled{opacity:.5;cursor:not-allowed}@media(max-width:650px){#route-map{height:320px}.map-panel .sectionhead{flex-direction:column}.map-point{flex-wrap:wrap}.map-point label{flex-basis:100%}}

.trip-datetime{display:flex;gap:10px}.trip-datetime input[type=date]{flex:3;min-width:0}.trip-datetime input[type=time]{flex:2;min-width:0}.route-date-field{margin:18px 0}.route-date-field>input{max-width:240px}
.odometer-auto{display:flex;align-items:center;gap:6px;margin-top:8px;font-size:13px}.odometer-auto input{width:auto}

#sheet-extra summary,.trip-extra summary{cursor:pointer;font-weight:600;padding:8px 0}.trip-extra{margin-top:12px}details[open]>summary{margin-bottom:14px}

.place-search{margin:18px 0}.place-search input[type=search]{flex:1;min-width:180px}.place-result{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 0;border-bottom:1px solid #e5eaf1}.place-result small{display:block;color:#63748c}#place-results,#saved-places{max-height:280px;overflow:auto}.place-search details{margin:12px 0}.poi-pin{background:#fff;border:2px solid #167a61;border-radius:50%;color:#167a61;text-align:center;font:bold 14px/20px sans-serif}

.auth-layout.auth-single{display:block;max-width:480px;margin:0 auto;padding:40px 0}.brand>span:last-child{letter-spacing:0}

.fuel-balance{padding:24px;margin:20px 0}.fuel-balance h2,.fuel-balance h3{margin-bottom:12px}.saved-routes{padding:16px 0}.saved-routes label{display:block;margin:14px 0 6px}.saved-routes .actions{margin:10px 0}tr:target{background:#e8f2fe}
