:root{color:#172033;font-synthesis:none;background:#f5f7fb;font-family:Inter,Segoe UI,Arial,sans-serif}*{box-sizing:border-box}body{min-width:320px;min-height:100vh;margin:0}button,input,select,textarea{font:inherit}button{cursor:pointer;min-height:44px}.workspace{grid-template-columns:240px 1fr;min-height:100vh;display:grid}aside{color:#fff;background:#10213c;flex-direction:column;padding:28px 20px;display:flex}.brand{align-items:center;gap:12px;font-size:20px;display:flex}.brand span,.brand-mark{color:#fff;background:#245fc0;border-radius:12px;place-items:center;width:42px;height:42px;font-weight:800;display:grid}.brand-mark{margin:auto}nav{gap:8px;margin-top:48px;display:grid}nav a,.logout{color:#c9d5e8;text-align:right;background:0 0;border:0;border-radius:10px;padding:12px 16px;text-decoration:none;display:block}nav a.active,nav a:hover{color:#fff;background:#203858}.topbar{justify-content:space-between;align-items:center;gap:16px;margin-bottom:28px;display:flex}.user-email{color:#60708a;direction:ltr}.state-card,.fatal-error{text-align:center;place-items:center;gap:12px;min-height:180px;padding:32px;display:grid}.spinner{border:3px solid #d6deea;border-top-color:#2669d8;border-radius:50%;width:28px;height:28px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.metric-grid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:16px;display:grid}.metric{background:#fff;border:1px solid #e0e6ef;border-radius:14px;padding:24px}.metric span{color:#60708a;display:block}.metric strong{margin-top:8px;font-size:32px;display:block}.card-actions{align-items:center;gap:8px;display:flex}.page-help{color:#60708a}.table-scroll{background:#fff;border:1px solid #e0e6ef;border-radius:12px;overflow:auto}th,td{text-align:right;white-space:nowrap;border-bottom:1px solid #e8edf4;padding:12px 16px}.report-filters label{align-items:center;gap:8px;display:flex}@media (width<=760px){.workspace{grid-template-columns:1fr}aside{padding:16px;position:static}nav{grid-template-columns:repeat(2,1fr);margin-top:20px}.content{padding:20px 16px}header,.topbar,.toolbar{flex-direction:column;align-items:stretch}.entity-card{grid-template-columns:1fr}}.logout{margin-top:auto}.content{padding:36px clamp(24px,5vw,72px);overflow:auto}header{justify-content:space-between;align-items:center;margin-bottom:24px;display:flex}h1,h2,p{margin-top:0}header h1{margin-bottom:0;font-size:36px}.eyebrow{color:#2d72e8;margin-bottom:4px;font-size:13px;font-weight:700}.primary{color:#fff;background:#2669d8;border:0;border-radius:10px;padding:11px 22px;font-weight:700}.primary:disabled{opacity:.55;cursor:not-allowed}.toolbar{gap:12px;margin:18px 0;display:flex}.toolbar input{flex:1}.toolbar input,.toolbar select,.branch-picker select,input,textarea{background:#fff;border:1px solid #d6deea;border-radius:9px;padding:11px 13px}.branch-picker{align-items:center;gap:10px;font-weight:700;display:flex}.notice{border-radius:9px;margin:12px 0;padding:12px 16px}.error{color:#9e2020;background:#fff0f0;border:1px solid #ffc6c6}.warning{color:#77530b;background:#fff8e5;border:1px solid #f0d18a}.grid{gap:14px;display:grid}.entity-card{background:#fff;border:1px solid #e0e6ef;border-radius:14px;grid-template-columns:auto 1fr auto;align-items:center;gap:16px;padding:20px;display:grid}.entity-card h2{margin-bottom:4px;font-size:18px}.entity-card p{color:#53627a;margin-bottom:4px}.entity-card small{color:#7a879a}.entity-icon{color:#2362c2;background:#eaf2ff;border-radius:12px;place-items:center;width:48px;height:48px;font-weight:800;display:grid}.actions{gap:8px;display:flex}.actions button,.text-button,.customer-link{color:#2362c2;background:0 0;border:0}.table-wrap{background:#fff;border:1px solid #e0e6ef;border-radius:14px;overflow:auto}table{border-collapse:collapse;width:100%}th,td{text-align:right;border-bottom:1px solid #edf0f5;padding:15px}th{color:#67748a;font-size:13px}.badge{border-radius:999px;padding:5px 9px;font-size:12px}.badge.active{color:#167548;background:#e8f8ef}.badge.inactive{color:#666;background:#f0f1f3}.badge.available{color:#167548;background:#e8f8ef}.badge.rented{color:#235db3;background:#eaf2ff}.badge.reserved{color:#805900;background:#fff4dc}.badge.maintenance{color:#6840a8;background:#f3eefe}.vehicle-grid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:16px;display:grid}.vehicle-card{background:#fff;border:1px solid #e0e6ef;border-radius:14px;padding:20px}.vehicle-card-head{justify-content:space-between;align-items:center;margin-bottom:18px;display:flex}.vehicle-card h2{margin-bottom:8px;font-size:19px}.vehicle-card p{color:#5b687c;margin:5px 0}.vehicle-card .actions{margin-top:18px}.vehicle-details{border-top:4px solid #2d72e8}.details-grid{grid-template-columns:repeat(auto-fit,minmax(170px,1fr))}.inline-form{gap:10px;margin:18px 0;display:flex}.inline-form input,.inline-form select{min-width:0}.split{border-top:1px solid #e7ebf1;grid-template-columns:1fr 1fr;gap:24px;padding-top:16px;display:grid}.muted{color:#7a879a}.panel{background:#fff;border:1px solid #dce4ef;border-radius:14px;margin:16px 0;padding:22px}.panel-title{grid-column:1/-1;justify-content:space-between;display:flex}.form-grid{grid-template-columns:1fr 1fr;gap:16px;display:grid}.form-grid label{gap:7px;font-weight:650;display:grid}.form-grid .wide,.form-grid .notice{grid-column:1/-1}textarea{resize:vertical;min-height:90px}.state{color:#68758a;place-items:center;min-height:180px;display:grid}.login-shell{place-items:center;min-height:100vh;padding:20px;display:grid}.login-card{text-align:center;background:#fff;border:1px solid #dce4ef;border-radius:18px;gap:15px;width:min(100%,390px);padding:34px;display:grid;box-shadow:0 20px 60px #233c6818}.login-card label{text-align:right;gap:6px;display:grid}@media (width<=760px){.workspace{grid-template-columns:1fr}aside{z-index:2;flex-direction:row;align-items:center;padding:12px 18px;position:sticky;top:0}aside nav{margin:0 auto;display:flex}.logout{margin:0}.brand strong{display:none}.content{padding:22px 16px}.form-grid{grid-template-columns:1fr}.entity-card{grid-template-columns:auto 1fr}.entity-card .actions{grid-column:1/-1}.split{grid-template-columns:1fr}.inline-form{flex-direction:column;align-items:stretch}header h1{font-size:28px}}
