:root{--ink:#142824;--muted:#687671;--green:#0c644c;--green2:#138966;--cream:#f5f3eb;--line:#dfe5df;--danger:#9c3d32;--amber:#a86516;--white:#fff;--shadow:0 14px 38px #173b2d12;font-family:Inter,ui-sans-serif,system-ui,-apple-system,sans-serif;color:var(--ink);background:var(--cream)}*{box-sizing:border-box}body{margin:0}button,input,select{font:inherit}button{border:0;border-radius:11px;padding:.78rem 1rem;background:var(--green);color:#fff;font-weight:750;cursor:pointer}button:hover{background:var(--green2)}button:disabled{opacity:.58;cursor:wait}.login{min-height:100vh;display:grid;place-items:center;padding:2rem;background:radial-gradient(circle at 10% 10%,#36a77b33,transparent 30%),#102a25}.login-brand,.brand{display:flex;align-items:center;gap:.7rem;color:#fff;text-decoration:none}.login-brand{position:absolute;left:2rem;top:2rem}.login-brand>span,.brand>span{display:grid;place-items:center;width:40px;height:40px;background:#e3b74e;color:#173b2d;border-radius:12px;font-size:1.3rem;font-weight:900}.login-brand small,.brand small{display:block;font-weight:500;opacity:.65}.login-card{width:min(440px,100%);background:#fff;border-radius:24px;padding:2rem;box-shadow:0 24px 70px #0004}.login-card h1{font-size:2rem;margin:.2rem 0}.login-card>p:not(.eyebrow){color:var(--muted);line-height:1.5}.login-card label,.modal label{display:grid;gap:.45rem;margin:1rem 0;font-weight:700}.login-card input,.modal input,.modal select,.search input{border:1px solid var(--line);border-radius:10px;padding:.8rem;background:#fff;color:var(--ink);min-width:0}.login-card button{width:100%;margin-top:.4rem}.login-card .demo{background:#eef4f1;color:var(--green)}.form-message,.alert{padding:.75rem 1rem;margin-top:1rem;border-radius:10px;background:#fff0ed;color:var(--danger)}.app{min-height:100vh}.app aside{position:fixed;inset:0 auto 0 0;width:245px;padding:1.5rem;background:#102a25;display:flex;flex-direction:column;z-index:10}.brand{margin-bottom:2rem}.app nav{display:grid;gap:.4rem}.app nav a{color:#c9d6d1;text-decoration:none;padding:.8rem;border-radius:10px}.app nav a.active,.app nav a:hover{background:#ffffff12;color:white}.app nav em{float:right;background:#d7ad4a;color:#173b2d;border-radius:99px;padding:.05rem .45rem;font-size:.75rem;font-style:normal}.signout{margin-top:auto;background:transparent;border:1px solid #ffffff2b;color:#d8e3df}.app main{margin-left:245px;padding:0 2rem 3rem}.app header{height:94px;display:flex;align-items:center;gap:1rem;border-bottom:1px solid var(--line);margin-bottom:2rem}.app header h1{margin:.1rem 0;font-size:1.55rem}.app header .refresh{margin-left:auto;background:#fff;color:var(--green);border:1px solid var(--line)}.eyebrow{margin:0;text-transform:uppercase;letter-spacing:.11em;font-size:.7rem;font-weight:850;color:var(--green)}.menu{display:none;background:transparent;color:var(--ink);font-size:1.4rem;padding:.4rem}.offline{padding:.75rem 1rem;background:#fff3d6;border-radius:10px;color:#704710;margin-bottom:1rem}.alert{margin:0 0 1rem}.welcome,.section-head{display:flex;justify-content:space-between;align-items:center;gap:1.5rem;margin-bottom:1.5rem}.welcome{padding:1.7rem 2rem;background:linear-gradient(125deg,#0e604b,#173d34);color:#fff;border-radius:20px}.welcome .eyebrow{color:#9fe1c7}.welcome h2,.section-head h2{font-size:1.7rem;margin:.25rem 0}.welcome p,.section-head p{margin:.2rem 0;color:inherit;opacity:.75}.metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;margin:1.2rem 0}.metric,.card,.vehicle{background:#fff;border:1px solid var(--line);border-radius:16px;padding:1.25rem;box-shadow:var(--shadow)}.metric small,.metric span{display:block;color:var(--muted)}.metric strong{display:block;font-size:1.75rem;margin:.4rem 0}.grid{display:grid;grid-template-columns:2fr 1fr;gap:1rem}.card h2{margin:.2rem 0 1rem}.card-head{display:flex;align-items:center;justify-content:space-between}.card-head a{color:var(--green);font-weight:700}.vehicle-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.vehicle{position:relative}.vehicle-top{display:flex;justify-content:space-between;gap:1rem}.plate{font-weight:900;font-size:1.2rem}.vehicle p{color:var(--muted)}.status{display:inline-block;border-radius:99px;padding:.28rem .6rem;font-size:.75rem;font-weight:800;background:#eef1ef;color:#55645f}.status.approved,.status.compliant{background:#dff4e8;color:#176345}.status.pending,.status.incomplete{background:#fff0d9;color:#985c12}.status.rejected,.status.expired,.status.suspended{background:#f9dfdc;color:#953c33}.vehicle-meta{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid var(--line);margin-top:1rem;padding-top:1rem;gap:.8rem}.vehicle-meta small{display:block;color:var(--muted)}.vehicle-actions{display:flex;gap:.5rem;margin-top:1rem}.vehicle-actions button{flex:1;padding:.65rem;background:#edf4f1;color:var(--green)}.document-list{display:grid;gap:.5rem;margin-top:1rem}.document-row{display:flex;justify-content:space-between;gap:1rem;font-size:.87rem;padding:.55rem;background:#f7f8f5;border-radius:8px}.compliance-summary{display:grid;gap:.7rem}.compliance-summary>div{display:flex;justify-content:space-between;padding:.8rem;background:#f7f8f5;border-radius:9px}.search{display:flex;align-items:center;gap:.5rem;background:#fff;border:1px solid var(--line);padding:0 .7rem;border-radius:11px;max-width:440px;margin:0 0 1.2rem}.search input{border:0;width:100%;outline:0}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse;text-align:left}th,td{padding:.85rem;border-bottom:1px solid var(--line)}th{font-size:.75rem;color:var(--muted);text-transform:uppercase}.empty{text-align:center;padding:3rem 1rem;color:var(--muted)}dialog{border:0;padding:0;border-radius:20px;width:min(620px,calc(100% - 2rem));box-shadow:0 25px 80px #0005}dialog::backdrop{background:#102a25aa}.modal{padding:1.7rem;position:relative}.modal h2{margin:.3rem 0 1rem}.close{position:absolute;right:1rem;top:1rem;background:#edf2ef;color:var(--ink);font-size:1.3rem;padding:.3rem .65rem}.fields{display:grid;grid-template-columns:1fr 1fr;gap:0 1rem}.modal-actions{display:flex;justify-content:flex-end;gap:.7rem;margin-top:1.3rem}.secondary{background:#edf2ef;color:var(--ink)}.hint{font-size:.85rem;color:var(--muted)}.toast{position:fixed;right:1.5rem;bottom:1.5rem;padding:.85rem 1.2rem;background:#173b2d;color:#fff;border-radius:10px;box-shadow:var(--shadow);z-index:30}
@media(max-width:900px){.metrics{grid-template-columns:repeat(2,1fr)}.grid{grid-template-columns:1fr}.vehicle-grid{grid-template-columns:1fr}.app aside{transform:translateX(-100%);transition:.2s}.app aside.open{transform:none}.app main{margin-left:0;padding:0 1rem 2rem}.menu{display:block}}
@media(max-width:560px){.login-brand{position:static;margin-bottom:1.2rem}.login{display:flex;flex-direction:column;align-items:stretch;padding:1rem}.login-card{padding:1.4rem}.app header{height:76px}.app header .eyebrow{display:none}.metrics{grid-template-columns:1fr 1fr;gap:.6rem}.metric{padding:1rem}.metric strong{font-size:1.3rem}.welcome,.section-head{align-items:flex-start;flex-direction:column;padding:1.3rem}.fields{grid-template-columns:1fr}.vehicle-meta{grid-template-columns:1fr}.vehicle-actions{flex-direction:column}.modal-actions button{flex:1}}
