/* V0.2: compact visual hierarchy; touch targets remain at least 44 × 44 px. */
html{scroll-padding-top:100px}body{font-size:14px;line-height:1.4}
header{position:sticky;top:0;z-index:20;padding:8px max(12px,calc((100vw - 1240px)/2));gap:12px;box-shadow:0 2px 8px #00000008}
.brand{font-size:19px;gap:8px;flex-shrink:0}.brand small{font-size:11px}.mark{width:36px;height:36px;border-radius:9px;font-size:13px}
.headerStatus{flex:1;min-width:0;padding:0 4px;font-size:12px;line-height:1.3}.headerStatus #accountLabel{display:block;color:var(--muted);overflow-wrap:anywhere;font-size:11px}
#notice{margin:2px 0 0;padding:0;border:0;background:none;color:var(--accent);max-width:none;overflow-wrap:anywhere}
#notice.error{color:#ad293c;font-weight:650}:root[data-theme=dark] #notice.error{color:#ffadb8}
@media(prefers-color-scheme:dark){:root[data-theme=system] #notice.error{color:#ffadb8}}
.tools{gap:5px}.tools select,.tools button{font-size:12px;padding:5px 8px;min-width:44px}
main{max-width:1240px;padding:10px 12px 18px}.release{font-size:11px;margin:0 0 8px;gap:5px}.dot{width:6px;height:6px}
h1,.hero h1{font-size:22px;line-height:1.2;letter-spacing:-.02em;margin:0 0 8px;max-width:none;white-space:normal}h2{font-size:17px;margin:0 0 8px}p{margin:6px 0 10px}
.hero{padding:8px 0 10px}.hero p{margin:4px 0 7px}.hero .eyebrow{display:none}
.eyebrow{font-size:10px;letter-spacing:.08em}.card,.tile{padding:14px;border-radius:10px;margin-bottom:10px;box-shadow:none}
.grid{gap:12px}.tile{display:grid;grid-template-columns:40px 1fr;column-gap:10px;align-items:start}.tileIcon{grid-row:1/4;width:36px;height:36px;border-radius:8px;font-size:22px;margin:0}.tile h2{margin:0}.tile p{margin:4px 0 8px}.tile>span:last-child{grid-column:2;font-size:13px}.auth{max-width:440px;margin:22px auto}
nav{gap:5px;padding-bottom:8px;margin-bottom:12px}nav button{font-size:13px;padding:6px 12px}
button,input,select{min-height:44px;border-radius:7px;font-size:14px;padding:6px 10px}button{min-width:44px}form{gap:10px}label{font-size:12px;gap:3px}.filters{gap:10px}.hint{font-size:12px;margin:8px 0}.row{padding:8px 0}.row button{margin:6px 0 0}
th,td{padding:7px 9px;font-size:12px}.tableWrap{margin:10px 0}footer{margin-top:18px;font-size:11px}
.sectionHead{margin-bottom:8px}.sectionHead h1{margin:0}.sectionHead .eyebrow{margin:0 0 2px}
.subnav{display:flex;gap:6px;margin:0 0 10px}.subnav button{font-size:13px}.subnav [aria-pressed=true]{background:var(--soft);border-color:var(--accent);color:var(--accent)}
.formGrid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.formGrid button{align-self:end}.roadmap{background:var(--soft)}.roadmap p{max-width:none}
@media(max-width:900px){header{flex-wrap:wrap}.headerStatus{order:3;flex:1 0 100%;display:flex;gap:10px;align-items:baseline;min-height:18px}.headerStatus #accountLabel{flex-shrink:0}.tools{margin-left:auto}.brand small{display:none}html{scroll-padding-top:110px}}
@media(max-width:640px){main{padding:8px}.grid{grid-template-columns:1fr;gap:0}.card,.tile{padding:12px}nav{gap:4px}nav button{flex:0 1 auto;padding:5px 9px;font-size:12px}.hero h1{font-size:21px}.hero p{font-size:13px}.tools{gap:4px}.tools button{font-size:11px;padding:4px 6px}.headerStatus{flex-wrap:wrap;gap:2px 8px}.headerStatus #accountLabel{max-width:100%;font-size:10px}.formGrid{gap:8px}header{padding:7px 8px;gap:5px}.brand{font-size:17px}.mark{width:32px;height:32px}.filters label{min-width:0}}

input[type=checkbox]{width:22px;min-height:22px;justify-self:start}#locationMap{height:360px;isolation:isolate;z-index:0}#users .row button{margin-right:8px}#deviceControls{margin-top:12px}

.brandLogo{width:40px;height:40px;object-fit:contain;border-radius:6px;background:white}

#fenceMap{height:320px;isolation:isolate;z-index:0;margin:10px 0}
.vehicleIcon{object-fit:contain;vertical-align:middle;border-radius:6px;margin:0 10px 4px 0;background:var(--surface,#fff);flex-shrink:0}
.vehiclePhotoUpload{display:block;font-size:.875rem;margin-top:8px}
.vehiclePhotoUpload input{max-width:100%;min-height:44px}
.vehicleSelectionPhoto{display:inline-block;vertical-align:middle;margin-top:4px}
