/* FLOTA · visual refresh, preserving the Linux information architecture. */
:root{--ink:#172f40;--muted:#63778a;--bg:#f3f6fa;--line:#e0e8ef;--navy:#112938;--accent:#087e77;--teal:#baf3db;--red:#b02d43}
body{font-size:15px;-webkit-font-smoothing:antialiased}a,button,input,select,textarea{transition:background-color .16s,border-color .16s,box-shadow .16s}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #45b7a6;outline-offset:3px}main{padding:36px 40px 28px;max-width:1640px}h1{font-size:32px;letter-spacing:-1.1px;font-weight:700}h2{font-weight:650;letter-spacing:-.3px}.eyebrow{font-size:10px;letter-spacing:1.9px;margin-bottom:10px}.page-title{margin-bottom:30px}.page-title p{margin:8px 0 0;font-size:14px}.page-title .actions{gap:10px}
aside{width:248px;padding:30px 16px 18px;background:#112938;border-right:1px solid #1c3a4c;scrollbar-width:thin;scrollbar-color:#385263 transparent}.shell{margin-left:248px}.brand{font-size:27px;padding:0 18px 23px;letter-spacing:3px}.brand small{font-size:9px;letter-spacing:1.7px;margin-top:9px}.nav-label{color:#8ea7b9;font-size:9px;letter-spacing:1.7px;padding:22px 18px 10px}aside nav a{padding:9px 15px;min-height:39px;margin:3px 0;display:flex;align-items:center;gap:11px;color:#becfdb;font-size:13px;border:1px solid transparent;border-radius:8px;line-height:1.35}aside nav a:hover{background:#1c394a;color:white}aside nav a.selected{border:1px solid #366958;background:#204b49;color:#e0fff4;padding-left:15px;box-shadow:inset 3px 0 #69d5b5}.nav-icon{width:17px;height:17px;flex:0 0 17px;opacity:.8}aside nav a.selected .nav-icon{color:#8fe6c8;opacity:1}.aside-foot{border-top:1px solid #2a4353;margin:22px 14px 0;padding:18px 0 0;font-size:11px;color:#8ea7b9}
header{height:76px;padding:0 40px;background:#ffffffed;gap:28px}.global-search{width:300px}.global-search input{border:1px solid #e6edf3;border-radius:9px;background:#f6f8fb;padding-left:15px}.account{font-size:13px}.account summary{padding:10px 12px;border:1px solid var(--line);border-radius:8px}.account>div{border:1px solid var(--line);border-radius:12px;box-shadow:0 12px 40px #12334821;top:46px}.account a{font-size:14px}footer{padding-left:40px;font-size:11px;letter-spacing:.3px}
.panel{border-radius:14px;box-shadow:0 3px 12px #203b4d04;margin-bottom:25px}.panel-title{padding:24px 26px}.panel-title>a{font-size:12px;font-weight:650}.panel-title p{font-size:12px}.stats{gap:16px;margin-bottom:27px}.stat{border-radius:14px;min-height:174px;padding:23px 24px;box-shadow:0 3px 12px #203b4d04;position:relative;overflow:hidden}.stat>span{font-size:12px;color:#5e7386}.stat>strong{font-size:43px;font-variant-numeric:tabular-nums;font-weight:700;margin:14px 0 7px;letter-spacing:-1.5px}.stat>small{font-size:11px}.stat.dark{background:linear-gradient(125deg,#153346,#164c50);border:0}.stat.dark>span{color:#d4ecec}.stat.dark:after{content:"";position:absolute;border:1px solid #ffffff13;width:145px;height:145px;border-radius:50%;right:-60px;bottom:-60px;box-shadow:0 0 0 24px #ffffff04}.state-line{font-size:12px;padding-top:2px}.state-line b{font-variant-numeric:tabular-nums}.state-line span:before{content:"";display:inline-block;width:6px;height:6px;border-radius:50%;background:#278f7c;margin-right:8px}.state-line:nth-of-type(2) span:before{background:#5285b9}.state-line:nth-of-type(3) span:before{background:#d39a32}.state-line:nth-of-type(4) span:before{background:#c15b66}
button,.button{border-radius:8px;font-size:13px;padding:10px 15px;min-height:42px;font-weight:600}.primary{box-shadow:0 3px 6px #087e7714}.primary:hover{box-shadow:0 4px 12px #087e7723}.filters{padding:20px 24px;background:#fff;gap:10px;border-bottom:1px solid #edf1f5}.filters input,.filters select{font-size:13px;border-color:#dce5ed;background:#fbfcfe;border-radius:8px;min-height:40px}th{font-size:10px;letter-spacing:.9px;padding-top:14px;padding-bottom:14px;background:#f8fafc;color:#697d8e}td{font-size:13px;line-height:1.6;padding-top:17px;padding-bottom:17px}td .small{font-size:11px;margin-top:4px}.table-scroll{scrollbar-width:thin;scrollbar-color:#bfceda transparent}.panel-bottom{font-size:12px;color:var(--muted);padding:17px 24px}.panel-bottom .actions a{font-weight:600}.badge{font-size:10px;font-weight:600;border-radius:6px;padding:5px 9px;letter-spacing:.1px}.badge.danger{background:#fcecef;color:#a52d42}.badge.warning{background:#fff3dd;color:#855c13}.badge.success{background:#e8f6ef;color:#1a7654}
.vehicle-grid{gap:16px;padding:0 26px 26px}.vehicle-card{padding:23px;border-radius:11px;background:#fff;position:relative;border-color:#e1e8ef;transition:border-color .15s,box-shadow .15s}.vehicle-card:hover{box-shadow:0 6px 18px #153c5010}.vehicle-card h3{font-size:17px;font-weight:650;margin-top:23px}.vehicle-card p{font-size:12px;line-height:1.7}.vehicle-card strong{font-weight:500}.plate{font-size:13px;background:#f8fbfd;color:#263b4d;border-color:#d7e0e8;border-left-color:#4776b1;border-radius:5px;padding:6px 11px;letter-spacing:1.1px}.role-card{border-radius:10px;padding:22px;background:white}.role-card:hover{border-color:#76b6ac;text-decoration:none}.role-card span{font-size:12px}.role-grid{gap:16px;padding:0 26px 26px}
input,select,textarea{border-radius:8px;border-color:#cdd9e2;min-height:44px}.field label{font-size:13px}.form-panel{padding:30px;max-width:1100px}.form-grid{gap:24px}.field p{margin:0}.field.wide textarea{min-height:100px}.form-actions{padding-top:20px;border-top:1px solid #edf1f5;margin-top:28px}.form-actions .button{background:#f8fafc}.detail-grid{padding:0 26px 28px;gap:26px}.detail-grid dt{font-size:11px;letter-spacing:.2px}.detail-grid dd{font-size:14px}.tabs a{border-radius:7px;font-size:12px}.tabs a:hover{background:#e9f4f1;color:#086b61}.history-list a{font-size:13px}.back{font-size:12px;margin-bottom:20px}.archive{font-size:13px;border:1px dashed #cedbe4;border-radius:10px;margin:20px 0}.message{font-size:13px;border-radius:9px}.empty{font-size:13px;padding:44px!important}.text-button{min-height:25px;padding:0;box-shadow:none;border-radius:0;background:transparent}.user-actions{font-size:13px}.user-actions form{margin:0}
.shell.guest{background:radial-gradient(ellipse at top,#e7f1f2,transparent 60%);min-height:100vh}.login-wrap{max-width:470px;margin:5vh auto}.login-brand{font-size:31px;margin-bottom:26px}.login-card{padding:38px;border-radius:18px;box-shadow:0 18px 65px #14384a0b}.login-card h1{font-size:29px}.login-card label{font-size:12px}.login-card input{min-height:47px;background:#fcfdfe}.login-card .primary{min-height:47px}.login-caption{font-size:12px}.act-section>summary{font-size:14px}.act-section[open]>summary{background:#f1f8f6}.signature-pad{border-radius:10px}.signature-grid{gap:20px}.signature-grid .form-panel{min-width:0}.act-preview{border:1px solid var(--line);border-radius:8px}.actions+.panel{margin-top:20px}
@media(min-width:1600px){main{padding-top:42px}}
@media(max-width:1200px){aside{width:218px}.shell{margin-left:218px}main{padding:28px}header{padding:0 28px}.stats{grid-template-columns:repeat(2,minmax(0,1fr))}.vehicle-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:750px){.shell{margin-left:0}main{padding:25px 16px}h1{font-size:27px}.page-title{gap:17px;margin-bottom:23px}.page-title .actions{width:100%}.page-title .actions .button{flex:1}header{gap:10px}footer{padding:16px;font-size:10px}.stats{gap:11px}.stat{padding:18px 16px;min-height:158px}.stat>strong{font-size:36px}.stat>span{font-size:11px}.stat>small{font-size:10px}.state-line{font-size:10px}.panel{border-radius:12px}.panel-title{padding:20px;gap:12px;align-items:flex-start}.panel-title h2{font-size:16px}.panel-title>a{font-size:11px;white-space:nowrap}.vehicle-grid,.role-grid{grid-template-columns:1fr;padding:0 20px 20px}.form-panel{padding:22px 20px}.detail-grid{grid-template-columns:1fr 1fr;gap:20px;padding:0 20px 24px}.filters{padding:16px}.filters input,.filters select{min-width:0;flex-basis:42%;max-width:100%}.filters button{flex-grow:1}.panel-bottom{padding:16px;gap:12px;flex-wrap:wrap}td,th{padding-left:16px;padding-right:16px}.login-wrap{margin:3vh auto}.login-card{padding:27px}.account summary{padding:8px 10px}#main-menu{width:290px}#main-menu nav a{padding:10px 15px;gap:12px}.global-search input{min-height:40px}.form-grid,.signature-grid{grid-template-columns:1fr}.form-actions{flex-wrap:wrap}.detail-grid dd{font-size:13px;word-break:break-word}}
@media(max-width:380px){.detail-grid{grid-template-columns:1fr}.stat{padding:15px 12px}.stat>span{font-size:10px}.state-line span:before{margin-right:4px}}
@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}
