:root{--red:#d71920;--dark:#18212f;--blue:#1769aa;--teal:#008b8b;--orange:#f28c28;--wine:#720026;--bg:#f4f6f9;--line:#dfe5ec;--muted:#667085}*{box-sizing:border-box}body{margin:0;font-family:Inter,Segoe UI,Arial,sans-serif;background:var(--bg);color:var(--dark)}a{color:var(--blue);text-decoration:none}button,.btn{border:0;border-radius:9px;background:var(--red);color:#fff;padding:11px 17px;font-weight:700;cursor:pointer;font-size:14px}button:hover,.btn:hover{filter:brightness(.94)}header{position:sticky;top:0;z-index:10;display:flex;align-items:center;gap:20px;background:#fff;border-bottom:1px solid var(--line);padding:9px 22px;box-shadow:0 2px 10px #10182810}.brand{display:grid;grid-template-columns:40px auto;grid-template-rows:auto auto;min-width:215px;color:var(--dark)}.brand span{grid-row:1/3;color:var(--red);font-size:34px;align-self:center}.brand b{letter-spacing:.5px}.brand small{color:var(--muted)}nav{display:flex;gap:3px;overflow:auto;white-space:nowrap;flex:1}nav a{color:#475467;padding:9px 10px;border-radius:7px;font-size:13px}nav a.on,nav a:hover{background:#fff0f0;color:var(--red)}.who{font-size:12px;text-align:right;white-space:nowrap}.who a{display:block;color:var(--red);margin-top:3px}main{max-width:1500px;margin:0 auto;padding:24px}.title{display:flex;justify-content:space-between;align-items:center;margin-bottom:18px}.title h1{margin:0;font-size:27px}.title p{margin:5px 0;color:var(--muted)}.cards{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin:18px 0}.card{background:#fff;border-radius:13px;padding:20px;border-left:6px solid;box-shadow:0 4px 18px #1018280d}.card b{display:block;font-size:30px}.card span{color:var(--muted)}.card.blue{border-color:var(--blue)}.card.teal{border-color:var(--teal)}.card.orange{border-color:var(--orange)}.card.red{border-color:var(--red)}.panel{background:#fff;border:1px solid var(--line);border-radius:13px;padding:18px;margin:15px 0;box-shadow:0 3px 15px #1018280a}.panel-head{display:flex;justify-content:space-between}.panel h2{margin:0 0 15px}.table-wrap{overflow:auto}table{border-collapse:collapse;width:100%;font-size:13px}th{text-align:left;color:#475467;background:#f8fafc;padding:11px;border-bottom:2px solid var(--line);white-space:nowrap}td{padding:11px;border-bottom:1px solid #edf0f4;vertical-align:top}.status{display:inline-block;background:#e8f2fb;color:#175d91;padding:4px 8px;border-radius:20px;font-size:11px}.danger{color:#a00;font-weight:600}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 18px}label{display:flex;flex-direction:column;gap:6px;font-size:13px;font-weight:650;color:#344054}input,select,textarea{width:100%;border:1px solid #cfd7e3;border-radius:8px;padding:10px;background:#fff;color:#18212f;font:inherit}input:focus,select:focus,textarea:focus{outline:3px solid #1769aa20;border-color:var(--blue)}textarea{min-height:78px;resize:vertical}.span2{grid-column:span 2}.actions{display:flex;justify-content:flex-end;align-items:center;gap:10px}.filters{display:flex;gap:9px;align-items:center;margin:12px 0}.filters input{max-width:170px}.inline{display:inline}.link{background:none;color:var(--red);padding:4px;margin-left:8px}.alert{padding:12px 15px;border-radius:9px;margin:10px 0}.alert.success{background:#e8f7ee;color:#166534}.alert.error{background:#fff0f0;color:#a00}.wa{background:#128c4e}.login{min-height:100vh;display:grid;place-items:center;padding:20px;background:linear-gradient(140deg,#fff 0,#f3f4f8 62%,#fee 100%)}.login-card{background:#fff;border-radius:18px;padding:34px;width:min(420px,100%);box-shadow:0 20px 60px #10182820;text-align:center}.login-card.wide{width:min(600px,100%)}.star{font-size:58px;color:var(--red)}.login-card h1{margin:5px 0}.login-card p,.login-card small{color:var(--muted)}.login-card form{text-align:left;display:grid;gap:15px;margin:24px 0}.check{display:block;font-weight:500}.check input{width:auto;margin-right:7px}.voucher,.driver-portal{max-width:720px;margin:auto;padding:16px}.voucher-card{background:#fff;border-radius:16px;padding:20px;box-shadow:0 8px 30px #10182815}.voucher-brand{display:flex;align-items:center;gap:10px;border-bottom:1px solid var(--line);padding-bottom:12px;margin-bottom:18px}.voucher-brand span{color:var(--red);font-size:35px}.voucher-brand div{display:flex;flex-direction:column}.voucher-brand small{color:var(--muted)}.voucher-brand>a{margin-left:auto}.service-summary{display:grid;gap:8px;background:#f8fafc;padding:14px;border-radius:10px;margin:12px 0 18px}.mobile-form{display:grid;gap:15px}.mobile-form input,.mobile-form textarea,.mobile-form button{font-size:17px;padding:13px}.two{display:grid;grid-template-columns:1fr 1fr;gap:12px}.privacy{text-align:center;color:var(--muted);font-size:12px}.done{text-align:center;padding:30px 10px}.done b{font-size:23px;color:#16803c}.warn{background:#fff3d9;padding:10px;color:#8a5200;border-radius:8px}.assignments{display:grid;gap:12px}.assignments article{background:#fff;border-radius:12px;padding:16px;border-left:5px solid var(--blue);box-shadow:0 3px 12px #1018280d}.assignments article>div{display:flex;justify-content:space-between}.assignments h2{font-size:18px;margin:12px 0}.assignments p{margin:6px 0}.assignments strong{display:block;color:var(--teal);margin-top:12px;font-size:12px}
.kpi-alerts{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.kpi{color:#fff;border-radius:10px;padding:13px;display:flex;flex-direction:column;gap:5px}.kpi.orange{background:#ef8b1e}.kpi.red{background:#d71920}.kpi.wine{background:#720026}.kpi.over{background:#3b0012;box-shadow:0 0 0 3px #ffbac5}.report-head{display:flex;gap:18px;align-items:center}.report-head h2{color:var(--red);margin:0}.report-head span{margin-left:auto}.total{text-align:right;margin-top:18px}.share{display:flex;gap:10px;align-items:end}.share label{min-width:280px}.quote{font-size:15px}
@media(max-width:900px){header{display:block;padding:8px 10px}.brand{margin-bottom:5px}.who{position:absolute;right:12px;top:12px}nav{padding-bottom:4px}nav a{padding:10px 12px}main{padding:14px}.cards{grid-template-columns:repeat(2,1fr)}.form-grid{grid-template-columns:1fr}.span2{grid-column:span 1}.title{align-items:flex-start;gap:10px}.title h1{font-size:22px}.panel{padding:12px}.filters{flex-wrap:wrap}.btn,button{min-height:42px}.kpi-alerts{grid-template-columns:1fr}.report-head{display:grid}.report-head span{margin:0}.share{display:grid}.share label{min-width:0}}
@media(max-width:520px){.cards{grid-template-columns:1fr 1fr;gap:9px}.card{padding:14px}.card b{font-size:24px}.title{display:block}.title>.btn,.title>button{display:block;margin-top:10px;text-align:center;width:100%}.two{grid-template-columns:1fr 1fr}table{font-size:12px}.voucher{padding:8px}.voucher-card{padding:15px}.who{font-size:0}.who a{font-size:12px}}
@media print{header,.filters,.actions,.btn,button{display:none!important}body,main{background:#fff;padding:0}.panel{box-shadow:none;border:0}.title{margin-bottom:5px}}
.brand{grid-template-columns:150px;grid-template-rows:auto auto;min-width:170px}.brand img{width:150px;height:45px;object-fit:contain;object-position:left center}.brand small{color:var(--muted)}
.legend{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0}.legend span{padding:7px 10px;border-radius:20px;font-size:12px;font-weight:700;color:#fff}.legend .green{background:#18864b}.legend .yellow{background:#e0b400;color:#2c2600}.legend .orange{background:#ef8b1e}.legend .red{background:#d71920}.legend .wine{background:#720026}.fleet-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:13px}.fleet-card{background:#fff;border-radius:13px;padding:16px;color:var(--dark);border-top:8px solid #98a2b3;box-shadow:0 4px 18px #10182812}.fleet-card:hover{transform:translateY(-2px)}.fleet-card>div{display:flex;flex-direction:column}.fleet-card>div b{font-size:21px}.fleet-card>div span{color:var(--muted)}.fleet-card dl{display:grid;grid-template-columns:1fr auto;gap:7px;margin:15px 0}.fleet-card dt{color:var(--muted)}.fleet-card dd{margin:0;font-weight:700}.fleet-card strong{font-size:12px}.fleet-card.green{border-color:#18864b}.fleet-card.yellow{border-color:#e0b400;background:#fffceb}.fleet-card.orange{border-color:#ef8b1e;background:#fff6e9}.fleet-card.red{border-color:#d71920;background:#fff0f0}.fleet-card.wine{border-color:#720026;background:#faedf2}.fleet-card.gray{border-color:#98a2b3}.vehicle-log{margin-top:22px}
@media(max-width:900px){.fleet-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:520px){.fleet-grid{grid-template-columns:1fr}}
.hours-result{display:flex;justify-content:space-between;align-items:center;background:#eaf5ff;border:1px solid #b9dcf6;border-radius:10px;padding:13px}.hours-result b{font-size:20px;color:var(--blue)}.hours-result b.bad{color:var(--red)}.quote-details{display:grid;grid-template-columns:repeat(2,1fr);gap:7px;background:#f8fafc;padding:12px;border-radius:9px;margin:12px 0}
@page{size:A4 landscape;margin:5mm}
@media print{html,body{width:297mm;min-height:210mm;font-size:7pt!important}.panel{padding:2mm!important;margin:1mm 0!important}.table-wrap{overflow:visible}table{font-size:6.5pt!important}th,td{padding:1.1mm!important}.title h1{font-size:14pt}.report-head{padding:2mm!important}.no-print{display:none!important}.quote-details{grid-template-columns:repeat(3,1fr)}}
.voucher-brand img{width:150px;height:48px;object-fit:contain}.avatar{width:32px;height:32px;border-radius:50%;object-fit:cover;vertical-align:middle;margin-right:7px}.entity-photo{width:58px;height:45px;object-fit:cover;border-radius:8px}.dnit-box{background:#eef7ff;border:1px solid #b9dcf6;border-radius:10px;padding:13px}.dnit-box button{background:var(--blue)}.dnit-status{color:var(--blue);font-weight:600}.fuel-chart{height:210px;display:flex;align-items:end;gap:10px;overflow-x:auto;padding:20px 5px 0}.fuel-chart>div{min-width:48px;height:185px;display:flex;flex-direction:column;align-items:center;justify-content:end;gap:4px}.fuel-chart span{display:block;width:30px;background:linear-gradient(#19a974,#087f5b);border-radius:7px 7px 2px 2px}.fuel-chart b{font-size:11px}.fuel-chart small{color:var(--muted)}
.danger-zone{border-color:#efb4b4;background:#fff8f8}.danger-button{background:#8b0000}.driver-actions{justify-content:flex-start;margin:14px 0}.salary-receipt{max-width:900px;margin:20px auto;font-size:15px}.salary-receipt .report-head img{width:210px;height:70px;object-fit:contain}.salary-receipt>p{font-size:17px;line-height:1.7;margin:35px 0}.signature{display:grid;grid-template-columns:repeat(3,1fr);gap:45px;margin-top:90px}.signature span{border-top:1px solid #222;text-align:center;padding-top:8px}
.module-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.module-card{color:#fff;border-radius:13px;padding:18px;display:flex;flex-direction:column;gap:8px;min-height:125px}.module-card b{font-size:19px}.module-card strong{font-size:16px}.module-card span{margin-top:auto}.module-card.blue{background:#1769aa}.module-card.orange{background:#e77d12}.module-card.teal{background:#078278}.module-card.red{background:#c81d25}.progress{height:18px;background:#e8edf3;border-radius:20px;overflow:hidden}.progress span{display:block;height:100%;background:linear-gradient(90deg,#f28c28,#18864b);border-radius:20px}.period-tabs{display:flex;gap:7px;margin:10px 0}.period-tabs a{background:#fff;border:1px solid var(--line);padding:9px 15px;border-radius:20px}.period-tabs a.on,.period-tabs a:hover{background:var(--red);color:#fff}.priority-grid,.consumption-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:11px}.priority-item,.priority-ok,.consumption-card{border-radius:11px;padding:14px;display:flex;flex-direction:column;gap:6px}.priority-item{color:#fff}.priority-item.wine{background:#720026}.priority-item.red{background:#d71920}.priority-item.orange{background:#ef8b1e}.priority-item.yellow{background:#d0a900;color:#211c00}.priority-ok{background:#e7f7ed;color:#166534}.consumption-card{border-top:7px solid #98a2b3;background:#f7f8fa}.consumption-card.green{border-color:#18864b;background:#eefaf2}.consumption-card.yellow{border-color:#d0a900;background:#fffbea}.consumption-card.orange{border-color:#ef8b1e;background:#fff4e5}.consumption-card.red{border-color:#d71920;background:#fff0f0}.consumption-card.gray{border-color:#98a2b3}.consumption-card div{display:flex;justify-content:space-between}.consumption-card strong{font-size:20px}.consumption-card em{font-style:normal;font-weight:800}.quick-plan{display:flex;justify-content:flex-end;margin-bottom:10px}
@media(max-width:900px){.module-grid{grid-template-columns:repeat(2,1fr)}.priority-grid,.consumption-grid{grid-template-columns:1fr 1fr}}
@media(max-width:520px){.module-grid,.priority-grid,.consumption-grid{grid-template-columns:1fr}.period-tabs{overflow:auto}.signature{grid-template-columns:1fr;gap:55px}}
.control-title h1{letter-spacing:.7px;color:#9f1118}.finance-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.finance-grid a{background:#f8fafc;border:1px solid var(--line);border-radius:10px;padding:13px;display:flex;flex-direction:column;gap:5px}.finance-grid small{color:var(--muted)}.finance-grid strong{font-size:18px;color:var(--dark)}.good-metric{background:#eaf8ef!important;border-color:#77c994!important;color:#166534!important}.danger-metric{background:#fff0f0!important;border-color:#ef9a9a!important;color:#9f1118!important}.module-card.purple{background:#7251a2}.trend-bars{height:150px;display:flex;gap:18px;align-items:end;border-bottom:1px solid var(--line);padding:12px}.trend-bars>div{height:125px;display:flex;align-items:end;gap:3px;position:relative;padding-bottom:20px}.trend-bars small{position:absolute;bottom:0;width:100%;text-align:center}.trend-bars .bar{width:18px;border-radius:5px 5px 0 0}.trend-bars .revenue,.legend.revenue{background:#1769aa}.trend-bars .expense,.legend.expense{background:#f28c28}.legend{display:inline-block;width:12px;height:12px}.fleet-demand{display:grid;grid-template-columns:1fr 1fr;gap:18px}.driver-profile-head{display:grid;grid-template-columns:145px 74px 1fr auto;gap:14px;align-items:center;background:#fff;border-radius:16px;padding:14px;box-shadow:0 6px 20px #10182815}.driver-profile-head .company-logo{width:145px;height:55px;object-fit:contain}.driver-photo{width:68px;height:68px;border-radius:50%;object-fit:cover;border:3px solid #ffd9d9}.driver-photo.initials{display:grid;place-items:center;background:#d71920;color:#fff;font-size:24px;font-weight:800}.driver-profile-head h1{font-size:21px;margin:3px 0}.driver-profile-head p{margin:0;color:var(--muted)}.portal-highlight{background:linear-gradient(135deg,#fff7d6,#ffe7a8);border:1px solid #edc655;border-radius:14px;padding:16px;margin:15px 0}.survey-prompt{display:flex;flex-direction:column;background:#fff;border-radius:10px;padding:12px;margin-top:9px}.driver-tools-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:11px;margin:15px 0}.driver-tools-grid>a{display:flex;flex-direction:column;gap:5px;background:#fff;border-radius:13px;padding:16px;border-left:6px solid var(--red);box-shadow:0 3px 12px #1018280e}.driver-tools-grid strong{font-size:17px;color:var(--dark)}.driver-tools-grid span{color:var(--muted);font-size:12px}.health-self{background:#f4f8ff;border-radius:10px;padding:13px;margin-top:15px}.health-alert{display:flex;justify-content:space-between;align-items:center;gap:12px;border:1px solid var(--line);border-radius:12px;padding:14px;margin:15px 0}.traffic-legend{display:flex;gap:9px;margin-bottom:12px}.traffic-legend span{padding:7px 10px;border-radius:18px;font-weight:700}.health-yellow{background:#fff3a8!important}.health-orange{background:#ffbd75!important}.health-red{background:#ff9b9b!important;color:#7a0000}.health-alert.warning{background:#fff3a8}.info{background:#eef6ff;color:#174c75}@media(max-width:900px){.finance-grid{grid-template-columns:repeat(2,1fr)}.fleet-demand{grid-template-columns:1fr}.driver-profile-head{grid-template-columns:100px 64px 1fr}.driver-profile-head .company-logo{width:100px}.driver-profile-head>a{grid-column:3}.driver-tools-grid{grid-template-columns:1fr}}@media(max-width:520px){.finance-grid{grid-template-columns:1fr 1fr}.driver-profile-head{grid-template-columns:72px 1fr}.driver-profile-head .company-logo{width:72px}.driver-profile-head .driver-photo{grid-row:2}.driver-profile-head>a{grid-column:2}.health-alert{display:flex;flex-direction:column;align-items:flex-start}}
.login{background:linear-gradient(90deg,rgba(1,8,17,.18),rgba(1,8,17,.48)),url('antares-control-tower-start.png') center/cover no-repeat fixed;justify-items:end;padding:clamp(20px,5vw,80px)}.login-card{background:rgba(255,255,255,.94);backdrop-filter:blur(8px);box-shadow:0 24px 70px #0009;border:1px solid #ffffff66}.login-card .star{font-size:42px}.login-card h1{color:#111827}.login-card>p{color:#475467}
@media(max-width:700px){.login{justify-items:center;background-position:center;padding:16px}.login-card{background:rgba(255,255,255,.96)}}
/* Navegación profesional por familias de actividad: tonos suaves, estado activo más visible. */
header nav a{border:1px solid transparent;transition:background .18s ease,border-color .18s ease,color .18s ease,transform .18s ease}
header nav a[href*="page=dashboard"]{background:#f3efff;color:#5b3b8c;border-color:#e6dcfa}
header nav a[href*="page=services"]{background:#fff0f1;color:#9f1d26;border-color:#f7d6d9}
header nav a[href*="page=reports"],header nav a[href*="page=quotes"]{background:#eef6ff;color:#185b91;border-color:#d7e9f8}
header nav a[href*="page=clients"]{background:#ecf9f8;color:#176a68;border-color:#d3eeec}
header nav a[href*="page=vehicles"]{background:#f1f4ff;color:#44558a;border-color:#dde3f8}
header nav a[href*="page=vehicle_documents"]{background:#fff7e6;color:#8a5a00;border-color:#f3e2b6}
header nav a[href*="page=fuel"]{background:#edf9f1;color:#267044;border-color:#d5eddd}
header nav a[href*="page=maintenance"],header nav a[href*="page=fleet_kpi"]{background:#fff3e9;color:#995014;border-color:#f4ddca}
header nav a[href*="page=viatics"]{background:#f7f0fc;color:#70428c;border-color:#eadcf4}
header nav a[href*="page=hr"]{background:#fff0f6;color:#91365e;border-color:#f2d9e5}
header nav a[href*="page=audit"],header nav a[href*="page=users"],header nav a[href*="page=password"]{background:#f3f5f7;color:#4d5968;border-color:#e2e6ea}
header nav a[href*="page=calendar_settings"],header nav a[href*="page=email_settings"]{background:#edf7fb;color:#24677d;border-color:#d7eaf1}
header nav a:hover{transform:translateY(-1px);filter:saturate(1.08);box-shadow:0 2px 8px #10182812}
header nav a.on{color:#111827;border-color:currentColor;box-shadow:inset 0 -3px 0 currentColor,0 2px 8px #10182816;font-weight:800}
