:root{color-scheme:light;--navy:#12223a;--blue:#2563eb;--slate:#607086;--line:#dce3ed;--bg:#f4f7fb}*{box-sizing:border-box}body{margin:0;font:15px/1.45 system-ui,Segoe UI,Arial;background:var(--bg);color:var(--navy)}button,input,select,textarea{font:inherit}button{background:var(--blue);color:white;border:0;padding:11px 16px;border-radius:8px;cursor:pointer;font-weight:600}button:hover{filter:brightness(.94)}button.ghost{background:transparent;color:var(--navy);border:1px solid var(--line);padding:8px 12px}header{display:flex;justify-content:space-between;align-items:center;padding:16px 28px;background:white;border-bottom:1px solid var(--line)}header nav{display:flex;align-items:center;gap:14px}.brand{font-weight:800;letter-spacing:-.6px;font-size:22px;color:#144fa8}main{max-width:1440px;margin:auto;padding:28px}.page-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:18px}h1,h2,p{margin-top:0}h1{font-size:26px;margin-bottom:5px}.page-heading p,.muted{color:var(--slate)}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-bottom:16px}.stats article,.map-panel,.fleet-panel{background:#fff;border:1px solid var(--line);border-radius:12px}.stats article{padding:15px 20px}.stats label{display:block;color:var(--slate);font-size:13px}.stats strong{font-size:30px}.layout{display:grid;grid-template-columns:minmax(0,2fr) minmax(320px,1fr);gap:16px}.panel-title{padding:15px;display:flex;justify-content:space-between;align-items:center;gap:10px}.panel-title span,.smallprint{color:var(--slate);font-size:12px}#map{height:540px;border-radius:0 0 12px 12px;z-index:0}.vehicle-list{max-height:540px;overflow:auto}.vehicle-item{padding:13px 16px;border-top:1px solid var(--line)}.vehicle-item strong{font-size:15px}.vehicle-item .small{font-size:12px;color:var(--slate);margin:5px 0 8px}.chip{display:inline-block;border-radius:20px;font-size:11px;padding:3px 8px;background:#e7edf8;color:#365580}.chip.online{background:#dcfce7;color:#166534}.chip.offline{background:#fee2e2;color:#991b1b}.item-buttons{display:flex;flex-wrap:wrap;gap:6px}.item-buttons button{font-size:11px;padding:6px 8px}.modal-cover{position:fixed;inset:0;background:#0b1838a8;z-index:1000;display:grid;place-items:center;padding:15px}.hidden{display:none!important}.modal{background:white;border-radius:14px;padding:24px;max-width:630px;width:100%;max-height:90vh;overflow:auto;box-shadow:0 20px 60px #0003}.modal-top{display:flex;align-items:center;justify-content:space-between}.modal-top h2{margin:0}.fields{display:grid;grid-template-columns:1fr 1fr;gap:12px}.fields label,.login-card label{display:flex;flex-direction:column;gap:5px;font-size:13px;font-weight:600}.fields input,.fields select,.fields textarea,.login-card input{padding:10px;border:1px solid #b8c4d2;border-radius:7px;background:white;width:100%}.wide{grid-column:1/-1}.error{color:#a12424;font-size:13px}.qr-dialog{text-align:center}.qr-dialog .modal-top{text-align:left}.qr-dialog img{width:min(100%,320px);height:auto;image-rendering:pixelated;border:1px solid #eee}.login-page{display:grid;min-height:100vh;place-items:center;padding:20px}.login-card{background:white;border:1px solid var(--line);border-radius:16px;width:min(100%,390px);padding:32px;box-shadow:0 16px 60px #14284b13}.login-card h1{margin-top:12px}.login-card p{color:var(--slate)}.login-card form{display:grid;gap:14px}.smallprint{margin:12px 2px}@media(max-width:850px){.layout{grid-template-columns:1fr}#map{height:390px}.stats{gap:8px}.stats article{padding:12px}.stats strong{font-size:24px}.page-heading{align-items:flex-start}header{padding:12px 16px}main{padding:15px}.fields{grid-template-columns:1fr}}@media(max-width:440px){.page-heading{flex-direction:column}.stats label{min-height:36px}.stats strong{font-size:21px}.brand{font-size:18px}}
