*{box-sizing:border-box}body{margin:0;font-family:Inter,system-ui,Arial;background:#f4f7fb;color:#172033}.shell{max-width:1050px;margin:0 auto;padding:32px 18px}.card{background:#fff;border-radius:18px;padding:28px;box-shadow:0 12px 40px #17203312}.narrow{max-width:480px;margin:40px auto}.eyebrow{font-size:12px;font-weight:800;letter-spacing:.14em;color:#335d92}.muted{color:#6b7280}.top,.vehicle{display:flex;justify-content:space-between;gap:20px;align-items:flex-start}.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:22px 0}input{width:100%;padding:12px;border:1px solid #d5dce7;border-radius:10px;font-size:16px}label{display:grid;gap:7px;margin:14px 0}button,.button{border:0;border-radius:10px;padding:12px 16px;background:#214f85;color:#fff;font-weight:700;cursor:pointer;text-decoration:none;text-align:center}.secondary{background:#edf2f8;color:#214f85}.list{display:grid;gap:14px}.vehicle{border:1px solid #e3e8f0;border-radius:14px;padding:18px}.vinfo{display:grid;gap:5px}.vehicle strong{font-size:22px}.vehicle span{color:#64748b}.qr{display:grid;justify-items:center;gap:7px;max-width:230px}.qr img{width:120px;height:120px}.qr small{font-size:9px;word-break:break-all}.meter{display:grid;gap:8px;text-align:center;padding:24px;background:#f4f7fb;border-radius:14px;margin:22px 0}.meter strong{font-size:36px}.error{color:#b42318}@media(max-width:760px){.grid{grid-template-columns:1fr}.vehicle{display:grid}.qr{justify-self:center}.shell{padding:14px}.card{padding:20px}}@media print{body{background:#fff}.grid,.top,.vinfo,.qr small,.qr .button,.qr button,#err{display:none!important}.card{box-shadow:none}.list{display:block}.vehicle{border:0;page-break-after:always}.qr{margin:auto}.qr img{width:220px;height:220px}}
.shell{max-width:1100px;margin:auto;padding:24px}.shell header{display:flex;justify-content:space-between;align-items:center;margin-bottom:18px;gap:20px}.shell nav{display:flex;gap:8px;flex-wrap:wrap}.navbtn.active{outline:3px solid rgba(0,0,0,.12)}.actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.actions select{min-width:170px}.mini{display:block;font-size:.78rem;color:#667085;margin-bottom:4px}.warntext{color:#9a6700}.planrow,.statusrow{background:#fff;border:1px solid #e5e7eb;border-radius:14px;padding:16px;margin:10px 0;display:flex;justify-content:space-between;gap:15px;align-items:center}.planrow span,.statusrow small{display:block;color:#667085;margin-top:5px}.badge{display:inline-block;padding:4px 9px;border-radius:999px;font-size:.78rem;margin-left:8px}.good{background:#e9f8ef}.warn{background:#fff5cc}.bad{background:#ffe6e6}.mutedb{background:#eef1f4}.statusrow>div{flex:1}@media(max-width:720px){.shell header,.planrow,.statusrow{align-items:stretch;flex-direction:column}.vehicle{grid-template-columns:1fr}.actions{align-items:stretch}.actions>*{width:100%}}

/* V6: mayor jerarquía y espacio en tarjetas */
.vehicle-main{display:grid;gap:10px}.planline{display:flex;gap:10px;align-items:center;flex-wrap:wrap;padding-bottom:10px;border-bottom:1px solid #edf0f4;color:#475467}.planline .label{font-size:.72rem;text-transform:uppercase;letter-spacing:.08em;font-weight:800;color:#667085}.vehicle-title{display:flex;align-items:center;gap:14px;flex-wrap:wrap}.vehicle-title strong{font-size:1.65rem;line-height:1}.internal{background:#eef4fb;color:#214f85!important;border-radius:999px;padding:6px 10px;font-weight:700}.vehicle-model{color:#475467;font-size:1rem}.vehicle-km{font-size:1.55rem;font-weight:800;color:#172033}.vehicle-km small{font-size:.9rem;color:#667085}.rowactions{display:flex;gap:8px;flex-wrap:wrap}.historylist{display:grid;gap:10px;margin-top:18px}.historyrow{display:flex;justify-content:space-between;gap:20px;padding:16px;border:1px solid #e5e7eb;border-radius:14px}.historyrow span,.historyrow small{display:block;color:#667085;margin-top:5px}@media(max-width:720px){.vehicle-title{align-items:flex-start;flex-direction:column;gap:8px}.rowactions,.rowactions>*{width:100%}.historyrow{flex-direction:column}}

/* V7 Centro de Control */
.dashboard-head,.sectionhead{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:18px}.kpis{display:grid;grid-template-columns:repeat(5,minmax(130px,1fr));gap:12px;margin:18px 0}.kpi{background:#fff;border:1px solid #e5e7eb;border-radius:16px;padding:18px}.kpi small{display:block;color:#667085;font-weight:700;margin-bottom:8px}.kpi strong{font-size:2rem}.notice{background:#fff8dc;border:1px solid #f2d675;border-radius:12px;padding:12px 15px}.prioritytable{display:grid;gap:0}.priorityrow{display:grid;grid-template-columns:1.2fr 1.3fr .8fr 1.2fr auto;gap:16px;align-items:center;padding:14px 8px;border-bottom:1px solid #edf0f4}.priorityrow span{min-width:0}.priorityrow small{display:block;color:#667085;margin-top:4px}.priorityheader{font-size:.75rem;text-transform:uppercase;letter-spacing:.06em;color:#667085;font-weight:800}.emptygood{padding:24px;background:#eefaf2;border-radius:14px;text-align:center;font-weight:700}@media(max-width:900px){.kpis{grid-template-columns:repeat(2,1fr)}.priorityheader{display:none}.priorityrow{grid-template-columns:1fr 1fr}.priorityrow span:last-child{grid-column:1/-1}.priorityrow button{width:100%}}@media(max-width:520px){.kpis{grid-template-columns:1fr 1fr}.dashboard-head{align-items:stretch;flex-direction:column}.priorityrow{grid-template-columns:1fr}}

/* V8 predicción */
.prediction{margin-top:7px!important;font-weight:700;color:#344054!important}.prediction.muted{font-weight:500;color:#98a2b3!important}

/* V8.1 calendarios y formularios */
.modalbackdrop{position:fixed;inset:0;background:rgba(15,23,42,.48);display:grid;place-items:center;padding:20px;z-index:1000}.modalcard{width:min(520px,100%);background:#fff;border-radius:18px;padding:22px;box-shadow:0 24px 80px rgba(15,23,42,.28)}.modalhead{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:14px}.modalhead h2{margin:0}.modalform{display:grid;gap:14px}.modalform label{display:grid;gap:6px;font-weight:700}.modalform textarea{resize:vertical}.modalactions{display:flex;justify-content:flex-end;gap:10px;margin-top:4px}.iconbtn{width:38px;height:38px;padding:0;border-radius:50%;font-size:1.4rem}.datepick{display:grid;grid-template-columns:1fr auto;gap:8px}.todaybtn{white-space:nowrap}.historyrow strong{font-size:1.1rem}@media(max-width:520px){.modalactions{flex-direction:column-reverse}.modalactions button{width:100%}.datepick{grid-template-columns:1fr}.todaybtn{width:100%}}


/* V10 Reportes */
.reportfilters{display:grid;grid-template-columns:1fr 1fr 1.4fr 1.4fr auto;gap:12px;align-items:end}.reportfilters label{display:grid;gap:6px;font-weight:700}.reportsummary{display:flex;align-items:center;gap:24px;margin:18px 0}.reportsummary .kpi{min-width:180px}.reporttable{display:grid}.reportrow{display:grid;grid-template-columns:.75fr 1.2fr 1.4fr .8fr 1fr 1fr;gap:14px;align-items:center;padding:13px 6px;border-bottom:1px solid #edf0f4}.reportrow small{display:block;color:#667085;margin-top:4px}.reportheader{font-size:.75rem;text-transform:uppercase;letter-spacing:.05em;color:#667085;font-weight:800}@media(max-width:900px){.reportfilters{grid-template-columns:1fr 1fr}.reportrow{grid-template-columns:1fr 1fr}.reportheader{display:none}}@media(max-width:520px){.reportfilters{grid-template-columns:1fr}.reportsummary{align-items:stretch;flex-direction:column}.reportrow{grid-template-columns:1fr}}@media print{header,.reportfilters,.secondary,#printreport{display:none!important}body{background:#fff}.card{box-shadow:none;border:0}.reportrow{break-inside:avoid}}

/* V10.2 selector de reportes */
.reporttabs{display:flex;gap:10px;margin:12px 0 18px}.reporttabs button{width:auto}.reporttabs .active{box-shadow:0 0 0 2px rgba(255,255,255,.4) inset}@media(max-width:520px){.reporttabs{flex-direction:column}.reporttabs button{width:100%}}

/* V11 usuarios y roles */
.roleline{display:block;color:#667085;margin-top:3px}.userrow{display:flex;justify-content:space-between;align-items:center;gap:16px;background:#fff;border:1px solid #e5e7eb;border-radius:14px;padding:16px}.userrow small{display:block;color:#667085;margin:4px 0}.userrow>div:last-child{display:flex;align-items:center;gap:10px}.rolepill{display:inline-block;background:#f2f4f7;border-radius:999px;padding:3px 9px;font-size:.8rem;font-weight:700}@media(max-width:600px){.userrow{align-items:stretch;flex-direction:column}.userrow>div:last-child{justify-content:space-between}}

/* V11.1 flujo técnico por vehículo */
.techselect{display:grid;gap:18px}.techhero{text-align:center;padding:10px 0}.techchoices{display:grid;grid-template-columns:1fr 1fr;gap:16px}.techresults{display:grid;gap:8px;margin-top:12px}.techvehicle{text-align:left;display:grid;gap:4px;background:#fff;color:#172033;border:1px solid #d0d5dd}.techvehicle:hover{border-color:#667085}.techvehicle span,.techvehicle small{color:#667085}.techwork{display:flex;justify-content:space-between;align-items:center;gap:24px}.techworkactions{display:flex;gap:10px;flex-wrap:wrap}.techlock{background:#eef4fb;border:1px solid #c9d9ee;border-radius:12px;padding:12px 14px;color:#214f85}#scanner video{width:100%;max-height:360px;border-radius:14px;background:#111;margin-top:12px}details{margin-top:14px}details summary{cursor:pointer;font-weight:700}@media(max-width:760px){.techchoices{grid-template-columns:1fr}.techwork{align-items:stretch;flex-direction:column}.techworkactions,.techworkactions button{width:100%}}

/* V12 multiempresa */
.companyform{display:grid;grid-template-columns:1.3fr .8fr 1.2fr 1.3fr 1fr auto;gap:10px;align-items:end}.companyform label{display:grid;gap:6px;font-weight:700}.companygrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(270px,1fr));gap:14px;margin-top:18px}.companycard{background:#fff;border:1px solid #e5e7eb;border-radius:16px;padding:18px;display:grid;gap:14px}.companycard h2{margin:8px 0 2px}.companynumbers{display:flex;gap:28px}.companynumbers span{display:grid}.companynumbers b{font-size:1.5rem}.companynumbers small{color:#667085}@media(max-width:1100px){.companyform{grid-template-columns:1fr 1fr 1fr}}@media(max-width:650px){.companyform{grid-template-columns:1fr}}

/* V13 configuración de empresa */
.settingshead{margin-bottom:16px}.settingshead h1{margin-bottom:4px}.settingsgrid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:18px}.settingsgrid label{display:grid;gap:6px;font-weight:700}.settingsgrid .wide{grid-column:1/-1}.settingsgrid .wide:last-child{display:flex;align-items:center;gap:14px}.success{color:#18794e;font-weight:700}.companyform{grid-template-columns:1.3fr 1.2fr 1.3fr 1fr auto}@media(max-width:650px){.settingsgrid{grid-template-columns:1fr}.settingsgrid .wide{grid-column:auto}}

/* V14 identidad y QR */
.logopreview{display:flex!important;align-items:center;gap:16px;padding:12px;border:1px solid #e5e7eb;border-radius:12px}.logopreview img{max-width:180px;max-height:70px;object-fit:contain;background:#fff}.qr .labelbtn{white-space:nowrap}

/* V21 barrido visual: Centro de control */
.dashboard-head{margin-bottom:18px}.dashboard-head h1{margin-bottom:4px}.dashboard-head .muted{margin:0}.kpis{gap:14px;margin-bottom:20px}.kpi{min-height:104px;display:flex;flex-direction:column;justify-content:space-between;padding:18px}.kpi small{font-size:.78rem;text-transform:uppercase;letter-spacing:.045em;font-weight:800}.kpi strong{font-size:2rem;line-height:1}.prioritytable{border:1px solid #e5e7eb;border-radius:14px;overflow:hidden}.priorityrow{padding:14px 16px}.priorityrow:not(.priorityheader):hover{background:#fafbfc}.priorityheader{background:#f8fafc}.priorityrow small{line-height:1.35}.emptygood{display:grid;gap:4px;text-align:center;padding:30px 18px;border:1px dashed #cfd8d3;border-radius:14px;background:#fbfdfc}.emptygood b{font-size:1.1rem}.emptygood small{color:#667085}.notice{margin:0 0 18px}
@media(max-width:700px){.kpi{min-height:88px;padding:14px}.kpi strong{font-size:1.7rem}.prioritytable{border:0}.priorityrow{border:1px solid #e5e7eb;border-radius:12px;margin-bottom:10px;padding:14px}}

/* V21.1 Centro de Control interactivo */
.dashboard-title{display:flex;align-items:center;gap:14px}.dashboard-logo{width:58px;height:58px;object-fit:contain;border-radius:10px;background:#fff;border:1px solid #e5e7eb;padding:5px}.kpi[data-filter]{cursor:pointer;transition:transform .12s ease,box-shadow .12s ease,border-color .12s ease}.kpi[data-filter]:hover{transform:translateY(-2px);box-shadow:0 8px 22px rgba(16,24,40,.08)}.kpi[data-filter].selected{outline:3px solid rgba(17,24,39,.18);outline-offset:2px;box-shadow:0 8px 24px rgba(16,24,40,.10)}.kpi[data-filter]:focus-visible{outline:3px solid #344054;outline-offset:2px}
@media(max-width:700px){.dashboard-title{align-items:flex-start}.dashboard-logo{width:48px;height:48px}.dashboard-head{align-items:flex-start}}

/* V22 barrido visual: Vehículos */
.vehicle-page-head{margin-bottom:10px}.vehicle-create-title{margin-top:20px;margin-bottom:8px}.vehicle-create-title h2{margin:0 0 4px}.vehicle-create-title p{margin:0}.vehicle-create-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px 14px;align-items:end;margin-top:14px}.vehicle-create-grid label{margin:0}.vehicle-create-grid select{width:100%;min-height:46px}.vehicle-create-action{display:flex;align-items:end}.vehicle-create-action button{width:100%;min-height:46px}.vehicle-list-head{display:flex;align-items:center;justify-content:space-between;margin:24px 2px 10px}.vehicle-list-head h2{font-size:1rem;color:#667085;margin:0}.vehicle-card{align-items:stretch;padding:20px;gap:22px;background:#fff}.vehicle-content{flex:1;min-width:0}.vehicle-main{gap:8px}.vehicle-title strong{font-size:1.7rem;color:#172033}.vehicle-slash{color:#98a2b3;font-weight:500}.vehicle-model{font-size:.98rem;color:#667085}.vehicle-meta{display:grid;grid-template-columns:minmax(150px,.7fr) minmax(220px,1.3fr);gap:12px;margin:10px 0 4px}.vehicle-meta>div{padding:10px 12px;background:#f8fafc;border-radius:10px}.vehicle-meta small{display:block;font-size:.72rem;text-transform:uppercase;letter-spacing:.04em;color:#667085;font-weight:800;margin-bottom:3px}.vehicle-meta b{display:block;color:#172033}.vehicle-actions-main{display:flex;gap:8px;flex-wrap:wrap;margin-top:8px}.vehicle-actions-admin{display:flex;gap:14px;margin-top:10px}.textbtn{padding:0;background:transparent;color:#475467;border-radius:0;font-size:.86rem}.textbtn:hover{text-decoration:underline}.dangertext{color:#b42318}.vehicle-qr{width:170px;max-width:170px;padding-left:18px;border-left:1px solid #edf0f4;align-content:center}.vehicle-qr img{width:104px;height:104px}.qr-actions{display:grid;gap:7px;width:100%}.qr-actions .button,.qr-actions button{padding:9px 10px;font-size:.82rem}.vehicle-list{gap:12px}
@media(max-width:900px){.vehicle-create-grid{grid-template-columns:1fr 1fr}.vehicle-meta{grid-template-columns:1fr 1fr}.vehicle-card{display:grid;grid-template-columns:1fr auto}.vehicle-qr{width:150px}}
@media(max-width:650px){.vehicle-create-grid{grid-template-columns:1fr}.vehicle-create-action{display:block}.vehicle-card{grid-template-columns:1fr}.vehicle-meta{grid-template-columns:1fr}.vehicle-actions-main{display:grid}.vehicle-actions-main>*{width:100%}.vehicle-actions-admin{justify-content:space-between}.vehicle-qr{width:100%;max-width:none;padding-left:0;padding-top:14px;border-left:0;border-top:1px solid #edf0f4;grid-template-columns:auto 1fr;justify-items:start;align-items:center}.vehicle-qr img{width:92px;height:92px}.qr-actions{width:100%}}

/* V22.1 búsqueda y alta flexible */
.vehicle-search{width:min(340px,100%)}.vehicle-search input{background:#fff}.optional-label{display:inline;font-size:.72rem;font-weight:600;color:#667085;margin-left:5px}.no-search-results{padding:26px;text-align:center;border:1px dashed #d0d5dd;border-radius:14px;color:#667085;background:#fafafa}
@media(max-width:650px){.vehicle-list-head{align-items:stretch;flex-direction:column;gap:10px}.vehicle-search{width:100%}}

/* V23 barrido visual: Planes */
.plan-page-head{margin-bottom:10px}.plan-create-title{margin:20px 0 8px}.plan-create-title h2{margin:0 0 4px}.plan-create-title p{margin:0}.plan-create-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px 14px;align-items:end;margin-top:14px}.plan-create-grid label{margin:0}.plan-create-action button{width:100%;min-height:46px}.plan-list-head{display:flex;align-items:center;justify-content:space-between;margin:24px 2px 10px}.plan-list-head h2{font-size:1rem;color:#667085;margin:0}.plan-search{width:min(340px,100%)}.plan-card{padding:18px 20px}.plan-info{min-width:220px}.plan-title{display:flex;align-items:center;gap:8px}.plan-title strong{font-size:1.08rem}.plan-version{font-size:.72rem;font-weight:800;padding:3px 7px;border-radius:999px;background:#eef2f6;color:#475467}.plan-model{display:block;color:#667085;margin-top:4px}.plan-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap}.service-interval-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.service-page-head{display:flex;justify-content:space-between;align-items:center;gap:16px;margin:22px 0 14px}.service-page-head h1{margin-bottom:4px}.service-page-head p{margin:0}.service-plan-list{display:grid;gap:10px}.service-plan-row{display:grid;grid-template-columns:minmax(220px,1.5fr) 1fr 1fr;gap:16px;align-items:center;padding:14px 16px;border:1px solid #e5e7eb;border-radius:12px}.service-plan-row small{display:block;color:#667085;margin-bottom:2px}
@media(max-width:900px){.plan-create-grid{grid-template-columns:1fr 1fr}.plan-card{align-items:flex-start}.plan-actions{max-width:420px}}
@media(max-width:650px){.plan-create-grid{grid-template-columns:1fr}.plan-list-head{align-items:stretch;flex-direction:column;gap:10px}.plan-search{width:100%}.plan-card{display:grid;gap:14px}.plan-actions{justify-content:stretch;display:grid;grid-template-columns:1fr 1fr}.plan-actions button{width:100%}.service-interval-grid{grid-template-columns:1fr}.service-page-head{align-items:stretch;flex-direction:column}.service-plan-row{grid-template-columns:1fr 1fr}.service-plan-row>div:first-child{grid-column:1/-1}}

/* V23.1 edición de servicios */
.service-plan-row{grid-template-columns:minmax(220px,1.5fr) 1fr 1fr auto}.service-row-action{display:flex;justify-content:flex-end}.service-row-action button{padding:9px 13px}
@media(max-width:650px){.service-plan-row{grid-template-columns:1fr 1fr}.service-row-action{grid-column:1/-1}.service-row-action button{width:100%}}

/* V23.2 ubicación de edición de servicios */
.service-head-actions{display:flex;gap:10px;align-items:center}.service-edit-action{display:none}.service-edit-action.visible{display:flex}
@media(max-width:650px){.service-head-actions{display:grid;grid-template-columns:1fr 1fr}.service-head-actions button{width:100%}}

/* V24 barrido visual: Usuarios */
.user-page-head{margin-bottom:10px}.user-create-title{margin:20px 0 8px}.user-create-title h2{margin:0 0 4px}.user-create-title p{margin:0}.user-create-grid{display:grid;grid-template-columns:1.2fr 1.3fr 1fr .8fr auto;gap:12px 14px;align-items:end;margin-top:14px}.user-create-grid label{margin:0}.user-create-action button{min-height:46px}.user-list-head{display:flex;align-items:center;justify-content:space-between;margin:24px 2px 10px}.user-list-head h2{font-size:1rem;color:#667085;margin:0}.user-search{width:min(340px,100%)}.user-list{display:grid;gap:10px}.user-card{display:flex;justify-content:space-between;align-items:center;gap:18px;padding:16px 18px;background:#fff;border:1px solid #e5e7eb;border-radius:14px}.user-identity{display:flex;align-items:center;gap:12px;min-width:0}.user-avatar{width:42px;height:42px;border-radius:50%;display:grid;place-items:center;background:#eef4fb;color:#24578d;font-weight:900;font-size:1.05rem;flex:0 0 auto}.user-identity strong,.user-identity small{display:block}.user-identity small{color:#667085;margin-top:2px}.user-tags{display:flex;align-items:center;gap:6px;margin-top:7px}.user-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap;justify-content:flex-end}
@media(max-width:1000px){.user-create-grid{grid-template-columns:1fr 1fr}.user-create-action button{width:100%}}
@media(max-width:650px){.user-create-grid{grid-template-columns:1fr}.user-list-head{align-items:stretch;flex-direction:column;gap:10px}.user-search{width:100%}.user-card{align-items:stretch;flex-direction:column}.user-actions{display:grid;grid-template-columns:1fr 1fr}.user-actions button{width:100%}.user-actions .userstatus{grid-column:1/-1}}

/* V25 barrido visual: Reportes */
.report-page-head{margin-bottom:14px}.report-page-head h1{margin-bottom:4px}.report-page-head p{margin:0}.reporttabs{display:inline-flex;padding:4px;background:#edf2f7;border-radius:12px;margin:0 0 16px}.reporttabs button{border-radius:9px}.report-filter-head{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:14px}.report-filter-head h2{margin:0 0 3px;font-size:1.05rem}.report-filter-head p{margin:0}.reportfilters{grid-template-columns:1fr 1fr 1.3fr 1.3fr auto}.report-filter-action{display:flex;align-items:end}.report-filter-action button{min-height:46px}.report-overview{display:flex;align-items:stretch;gap:12px;margin:18px 0}.report-stat,.report-period{background:#fff;border:1px solid #e5e7eb;border-radius:14px;padding:14px 16px;min-width:160px}.report-stat small,.report-period small{display:block;text-transform:uppercase;letter-spacing:.04em;font-size:.7rem;font-weight:800;color:#667085;margin-bottom:5px}.report-stat strong{font-size:1.75rem}.report-period{min-width:260px;display:flex;flex-direction:column;justify-content:center}.report-result-head{margin-bottom:10px}.reportrow{padding:14px 8px}.reportrow:not(.reportheader):hover{background:#fafbfc}.report-date{font-weight:700}.report-slash{color:#98a2b3}.report-empty{display:grid;gap:4px;text-align:center;padding:30px 18px;border:1px dashed #d0d5dd;border-radius:12px;background:#fafafa}.report-empty small{color:#667085}
@media(max-width:900px){.report-overview{flex-wrap:wrap}.report-period{min-width:220px}.reportfilters{grid-template-columns:1fr 1fr}.report-filter-action button{width:100%}}
@media(max-width:520px){.reporttabs{display:grid;width:100%;grid-template-columns:1fr 1fr}.report-filter-head{align-items:flex-start;flex-direction:column}.report-overview{display:grid;grid-template-columns:1fr 1fr}.report-period{grid-column:1/-1;min-width:0}.reportfilters{grid-template-columns:1fr}.report-result-head{align-items:stretch;flex-direction:column}.report-result-head button{width:100%}}

/* V25.1 autocompletar, estado y Excel */
.reporttabs{grid-template-columns:repeat(3,auto)}.reportfilters input[name="vehicle"]{min-width:0}.report-export-actions{display:flex;gap:8px;flex-wrap:wrap}.status-report-row{grid-template-columns:1.2fr 1.35fr .8fr .9fr .9fr 1.2fr}
@media(max-width:900px){.status-report-row{grid-template-columns:1fr 1fr 1fr}.status-report-row.reportheader{display:none}}
@media(max-width:520px){.reporttabs{grid-template-columns:1fr}.report-export-actions{display:grid;grid-template-columns:1fr 1fr}.status-report-row{grid-template-columns:1fr 1fr}}

/* V26 barrido visual: Técnico */
.techselect{max-width:980px;margin:0 auto}.techhero{text-align:center;margin:18px auto 24px;max-width:620px}.techhero h1{font-size:2rem;margin:5px 0 7px}.techchoices{align-items:stretch}.techchoices>.card{height:100%}.techchoices h2{margin-bottom:5px}.techchoices form{margin-top:14px}.techresults{margin-top:14px}.techvehicle{width:100%;text-align:left;background:#fff;color:#172033;border:1px solid #dfe4ea;margin-top:7px;padding:13px 14px}.techvehicle:hover{background:#f8fafc;border-color:#aeb8c5}.techvehicle b{font-size:1.05rem}.techvehicle span,.techvehicle small{display:block;color:#667085;margin-top:2px}.tech-selected-label{display:flex;justify-content:space-between;align-items:center;gap:12px;margin:4px 2px 10px;color:#667085;font-size:.82rem;text-transform:uppercase;letter-spacing:.04em}.tech-selected-label b{color:#344054}.techwork{align-items:center}.tech-vehicle-info h1{font-size:2.1rem;margin:4px 0}.tech-slash{color:#98a2b3;font-weight:500}.tech-vehicle-info p{color:#667085;margin:0 0 16px}.tech-km-label{font-size:.72rem;text-transform:uppercase;letter-spacing:.04em;color:#667085;font-weight:800}.techworkactions{min-width:260px;display:grid;gap:9px}.techworkactions button{width:100%;min-height:48px}.techlock{max-width:760px;margin:12px auto;padding:11px 14px;border:1px solid #dce6f0;border-radius:10px;background:#f8fbfe;color:#475467;text-align:center;font-size:.88rem}
#scanner video{width:100%;max-height:360px;border-radius:12px;background:#111;margin-top:12px}
@media(max-width:650px){.techhero{text-align:left;margin-top:4px}.techhero h1{font-size:1.65rem}.techchoices{grid-template-columns:1fr}.tech-selected-label{align-items:flex-start;flex-direction:column;gap:2px}.techwork{align-items:stretch}.techworkactions{min-width:0}.tech-vehicle-info h1{font-size:1.8rem}}

/* V27 barrido visual: Conductor / QR */
.public-shell{min-height:100vh;display:grid;place-items:start center;padding:28px 14px;background:#f4f7fa}.public-card{width:min(520px,100%);background:#fff;border:1px solid #e3e8ef;border-radius:18px;padding:22px;box-shadow:0 14px 36px rgba(16,24,40,.08)}.public-top{display:flex;justify-content:space-between;gap:14px;align-items:flex-start}.public-top h1{font-size:2rem;margin:4px 0}.public-top p{margin:0;color:#667085}.public-slash{color:#98a2b3;font-weight:500}.public-status{padding:6px 9px;border-radius:999px;font-size:.74rem;font-weight:800;white-space:nowrap}.public-status.up_to_date{background:#e9f7ef;color:#207a46}.public-status.due_soon{background:#fff6df;color:#9a6700}.public-status.overdue{background:#fdecec;color:#b42318}.public-status.no_baseline,.public-status.no_plan{background:#f2f4f7;color:#667085}.public-mileage{margin:22px 0;padding:18px;background:#f8fafc;border-radius:14px}.public-mileage small{display:block;text-transform:uppercase;letter-spacing:.05em;font-weight:800;color:#667085;font-size:.72rem}.public-mileage strong{display:block;font-size:2rem;margin-top:4px}.public-mileage strong span{font-size:1rem;color:#667085}.public-mileage p{margin:5px 0 0;color:#667085;font-size:.84rem}.public-update h2{margin-bottom:3px}.public-update p{margin-top:0}.public-update form{display:grid;grid-template-columns:1fr auto;gap:10px;align-items:end}.public-update label{margin:0}.public-update button{min-height:46px}.public-maintenance{margin-top:22px;border-top:1px solid #edf0f4;padding-top:14px}.public-maintenance summary{cursor:pointer;font-weight:800}.public-maintenance-body{display:grid;gap:8px;margin-top:12px}.public-service{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:11px 12px;border:1px solid #e5e7eb;border-radius:10px}.public-service strong,.public-service small{display:block}.public-service small{color:#667085;margin-top:2px}.public-note{margin:18px 0 0;color:#667085;font-size:.8rem;text-align:center}
@media(max-width:520px){.public-shell{padding:0;background:#fff}.public-card{border:0;border-radius:0;box-shadow:none;min-height:100vh;padding:20px 16px}.public-top{align-items:flex-start}.public-top h1{font-size:1.75rem}.public-update form{grid-template-columns:1fr}.public-update button{width:100%}}

/* V27.1 confirmación visible de kilometraje */
.public-success{display:grid;gap:3px;margin:0 0 18px;padding:14px 15px;border:1px solid #b7e2c7;border-radius:12px;background:#eefaf2;color:#176b3a}.public-success strong{font-size:1rem}.public-success span{font-weight:800}.public-success small{color:#397a55;line-height:1.35}

/* V28 barrido visual global */
.app-header{align-items:center}.company-brand{display:flex;align-items:center;gap:11px;min-width:220px}.company-logo{width:44px;height:44px;border-radius:10px;border:1px solid #e2e8f0;background:#fff;display:grid;place-items:center;overflow:hidden;flex:0 0 auto}.company-logo img{width:100%;height:100%;object-fit:contain;padding:4px}.company-logo-fallback{background:#eef4fb;color:#24578d;font-size:1.1rem;font-weight:900}.company-brand-text{min-width:0}.company-brand-text strong{display:block;max-width:300px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.company-brand-text .eyebrow{margin-bottom:2px}.company-brand-text .roleline{display:block;margin-top:2px}
.shell main{padding-top:22px}.shell main h1{letter-spacing:-.025em}.shell main h2{letter-spacing:-.012em}
button{transition:transform .08s ease,box-shadow .12s ease,background .12s ease}button:active{transform:translateY(1px)}
input,select,textarea{transition:border-color .12s ease,box-shadow .12s ease}input:focus,select:focus,textarea:focus{outline:none;box-shadow:0 0 0 3px rgba(36,87,141,.10)}
@media(max-width:900px){.app-header{align-items:flex-start}.company-brand-text strong{max-width:220px}}
@media(max-width:650px){.company-logo{width:40px;height:40px}.company-brand-text strong{max-width:190px}.shell main{padding-top:16px}}

/* V28.1 iconografía y confirmaciones */
.service-name-icon{display:flex!important;align-items:center;gap:9px}.service-icon{width:30px;height:30px;display:inline-grid;place-items:center;border-radius:8px;background:#f2f6fb;color:#24578d;font-size:1.05rem;font-weight:900;flex:0 0 auto}
.public-success{text-align:center;justify-items:center;padding:20px 16px}.success-check{width:70px;height:70px;border-radius:50%;display:grid;place-items:center;background:#e5f7ec;color:#159447;font-size:2.8rem;font-weight:900;line-height:1;margin-bottom:5px}.public-success>strong{font-size:1.25rem;color:#172033}.public-success>span{font-size:2rem;font-weight:900;color:#159447}.public-success>span em{font-size:1rem;font-style:normal}.public-success>small{color:#475467}.public-success>p{margin:9px 0;color:#475467}.public-success>button{width:100%;margin-top:4px}
.maintenance-success{text-align:center;max-width:480px;margin:20px auto;display:grid;justify-items:center;gap:7px}.maintenance-success h1{margin:2px 0 5px}.maintenance-success-service{display:flex;align-items:center;gap:8px;font-weight:800;color:#344054}.maintenance-success>strong{font-size:2rem;color:#159447}.maintenance-success>strong span{font-size:1rem;color:#667085}.maintenance-success>small,.maintenance-success>p{color:#667085}.maintenance-success>p{margin:5px 0 8px}.maintenance-success>button{width:min(320px,100%)}

/* V29 nueva identidad visual */
:root{--navy:#062a57;--navy2:#041f43;--blue:#1264e9;--line:#dfe5ec;--ink:#101828;--muted:#667085}
body{background:#f5f7fa}.app-layout{min-height:100vh;display:grid;grid-template-columns:252px minmax(0,1fr)}.sidebar{position:sticky;top:0;height:100vh;background:linear-gradient(180deg,var(--navy2),var(--navy));color:#fff;padding:20px 14px;display:flex;flex-direction:column}.sidebar-brand{display:flex;align-items:center;gap:10px;padding:4px 8px 22px;border-bottom:1px solid rgba(255,255,255,.12)}.sidebar-mark{width:43px;height:43px;border:2px solid rgba(255,255,255,.9);border-radius:11px;display:grid;place-items:center}.sidebar-mark .ui-icon{width:27px;height:27px}.sidebar-brand strong,.sidebar-brand small{display:block}.sidebar-brand strong{font-size:.95rem;letter-spacing:.03em}.sidebar-brand small{font-size:.68rem;opacity:.75;margin-top:2px}.sidebar-nav{display:grid;gap:6px;margin-top:20px}.sidebtn{display:flex;align-items:center;gap:12px;width:100%;border:0;background:transparent;color:#fff;padding:12px 13px;border-radius:9px;text-align:left;font-weight:700}.sidebtn .ui-icon{width:21px;height:21px}.sidebtn:hover{background:rgba(255,255,255,.08)}.sidebtn.active{background:#0d63e7;box-shadow:0 5px 18px rgba(0,0,0,.14)}.sidebar-bottom{margin-top:auto;display:grid;gap:10px}.sidebar-bottom small{text-align:center;opacity:.55}.app-workspace{min-width:0}.topbar{height:78px;background:#fff;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 28px;position:sticky;top:0;z-index:20}.top-company,.top-user{display:flex;align-items:center;gap:10px}.top-company-logo{width:38px;height:38px;border-radius:8px;border:1px solid var(--line);display:grid;place-items:center;overflow:hidden;background:#fff}.top-company-logo img{width:100%;height:100%;object-fit:contain;padding:3px}.top-company-logo.fallback{font-weight:900;color:#24578d;background:#eef4fb}.top-user small,.top-user strong{display:block}.top-user small{color:var(--muted);font-size:.75rem}.top-avatar{width:39px;height:39px;border-radius:50%;background:#eef3ff;color:#1849a9;display:grid;place-items:center;font-weight:900}.app-workspace main{padding:24px 28px 36px;max-width:1500px;margin:0 auto}.ui-icon{width:24px;height:24px;display:inline-block}
.cc-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.cc-head h1{margin:0 0 3px}.cc-head p{margin:0;color:var(--muted)}.cc-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:14px}.cc-kpi{background:#fff;border:1px solid var(--line);border-radius:14px;padding:17px;display:flex;align-items:center;gap:14px;min-height:112px;position:relative;overflow:hidden}.cc-kpi:after{content:"";position:absolute;left:14px;right:14px;bottom:10px;height:4px;border-radius:4px;background:#edf0f4}.cc-kpi.blue:after{background:#2166e8}.cc-kpi.orange:after{background:#f79009}.cc-kpi.red:after{background:#ef3038}.cc-kpi.green:after{background:#239b45}.cc-kpi.clickable{cursor:pointer}.cc-kpi.clickable:hover{box-shadow:0 8px 20px rgba(16,24,40,.08)}.cc-kpi-icon{width:52px;height:52px;border-radius:50%;display:grid;place-items:center;flex:0 0 auto}.cc-kpi-icon .ui-icon{width:29px;height:29px}.blue .cc-kpi-icon{background:#eaf1ff;color:#1f5fd2}.orange .cc-kpi-icon{background:#fff2dc;color:#f27913}.red .cc-kpi-icon{background:#fdebed;color:#df2e35}.green .cc-kpi-icon{background:#e9f7ed;color:#218044}.cc-kpi small,.cc-kpi span{display:block}.cc-kpi small{font-weight:800}.cc-kpi strong{display:block;font-size:1.8rem;line-height:1;margin:5px 0}.cc-kpi strong em{font-size:.9rem;font-style:normal}.cc-kpi span{font-size:.78rem;color:var(--muted)}
.cc-grid{display:grid;grid-template-columns:1.2fr 1.2fr .95fr;gap:14px}.cc-panel{background:#fff;border:1px solid var(--line);border-radius:14px;padding:14px 15px;min-width:0}.cc-panel-head{display:flex;align-items:center;justify-content:space-between;gap:10px;padding-bottom:9px;border-bottom:1px solid #edf0f4}.cc-panel-head h2{font-size:1rem;margin:0}.cc-list{display:grid}.cc-service-row,.cc-update-row{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:11px;padding:12px 2px;border:0;border-bottom:1px solid #edf0f4;background:transparent;color:var(--ink);text-align:left}.cc-service-row:last-child,.cc-update-row:last-child{border-bottom:0}.cc-service-row:hover{background:#fafcff}.cc-service-icon{width:38px;height:38px;display:grid;place-items:center;color:#111827}.cc-service-icon .ui-icon{width:31px;height:31px}.cc-service-main small,.cc-service-main b,.cc-service-main em,.cc-update-row small,.cc-update-row b,.cc-update-row em{display:block}.cc-service-main small,.cc-update-row>span:nth-child(2) small{color:#0d63e7;font-size:.71rem}.cc-service-main b,.cc-update-row b{font-size:1rem}.cc-service-main em,.cc-update-row em{font-style:normal;color:var(--muted);font-size:.75rem}.cc-service-due{text-align:right;font-size:.76rem;color:#a15c00;background:#fff4df;border-radius:999px;padding:6px 9px}.cc-service-due.badtext{color:#b42318;background:#fdecec}.cc-service-due small{display:block;color:var(--muted);background:#fff;margin:7px -9px -6px;padding:6px 0}.cc-check{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;color:#168442}.cc-check .ui-icon{width:28px;height:28px}.cc-update-row>span:last-child{text-align:right}.cc-update-row>span:last-child strong{display:block;color:#168442}.cc-update-row>span:last-child small{color:var(--muted)}.cc-empty{padding:20px 8px;text-align:center}
.cc-searchbox{display:flex;align-items:center;gap:7px;border:1px solid #d7dee7;border-radius:10px;padding:0 11px;margin:12px 0}.cc-searchbox .ui-icon{width:19px;height:19px;color:#667085}.cc-searchbox input{border:0!important;box-shadow:none!important;padding-left:0}.cc-search-panel h3{font-size:.8rem;margin:15px 0 7px}.cc-vehicle-results{display:grid;gap:7px}.cc-vehicle-result{display:flex;justify-content:space-between;align-items:center;gap:10px;background:#fff;border:1px solid #e5e9ef;color:var(--ink);border-radius:9px;padding:10px 11px;text-align:left}.cc-vehicle-result:hover{background:#fafcff}.cc-vehicle-result small,.cc-vehicle-result b,.cc-vehicle-result em{display:block}.cc-vehicle-result small{color:#0d63e7;font-size:.7rem}.cc-vehicle-result em{font-style:normal;color:var(--muted);font-size:.72rem}.cc-vehicle-result>strong{font-size:.78rem;white-space:nowrap}.cc-all-link{margin-top:10px}
.cc-bottom{display:grid;grid-template-columns:1.55fr .75fr;gap:14px;margin-top:14px}.cc-status-content{display:grid;grid-template-columns:auto .85fr 1.2fr;align-items:center;gap:24px;padding-top:15px}.cc-donut{width:145px;height:145px;border-radius:50%;display:grid;place-items:center;position:relative}.cc-donut:after{content:"";position:absolute;width:92px;height:92px;border-radius:50%;background:#fff}.cc-donut>div{z-index:1;text-align:center}.cc-donut small,.cc-donut strong{display:block}.cc-donut small{font-size:.65rem}.cc-donut strong{font-size:1.55rem}.cc-legend{display:grid;gap:10px}.cc-legend span{display:grid;grid-template-columns:auto 1fr auto;gap:8px;align-items:center;font-size:.8rem}.cc-legend i{width:10px;height:10px;border-radius:50%}.green-dot{background:#22a447}.orange-dot{background:#f5ad22}.red-dot{background:#e52f35}.gray-dot{background:#98a2b3}.cc-common{border:1px solid #e7ebf0;border-radius:9px;overflow:hidden}.cc-common h3{font-size:.78rem;margin:0;padding:9px 10px;background:#f8fafc}.cc-common div{display:flex;justify-content:space-between;padding:7px 10px;border-top:1px solid #edf0f4;font-size:.75rem}.cc-action-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;padding-top:14px}.cc-action-grid button{min-height:75px;background:#fff;color:#1849a9;border:1px solid #dfe5ec;display:flex;align-items:center;justify-content:center;gap:8px}.cc-action-grid .ui-icon{width:28px;height:28px}.cc-detail{margin-top:14px}
.service-icon{background:transparent!important;width:34px!important;height:34px!important;color:#111827!important}.service-icon .ui-icon{width:30px;height:30px}
@media(max-width:1180px){.app-layout{grid-template-columns:220px minmax(0,1fr)}.cc-kpis{grid-template-columns:1fr 1fr}.cc-grid{grid-template-columns:1fr 1fr}.cc-search-panel{grid-column:1/-1}.cc-bottom{grid-template-columns:1fr}.cc-status-content{grid-template-columns:auto 1fr 1fr}}
@media(max-width:800px){.app-layout{display:block}.sidebar{position:relative;height:auto;padding:10px}.sidebar-brand{padding-bottom:10px}.sidebar-nav{display:flex;overflow:auto;margin-top:10px}.sidebtn{min-width:max-content;padding:10px}.sidebar-bottom{display:none}.topbar{position:relative;height:auto;padding:12px 16px}.app-workspace main{padding:18px 14px}.cc-grid{grid-template-columns:1fr}.cc-search-panel{grid-column:auto}.cc-status-content{grid-template-columns:1fr;justify-items:center}.cc-common{width:100%}}
@media(max-width:520px){.cc-kpis{grid-template-columns:1fr}.cc-kpi{min-height:96px}.cc-head{align-items:flex-start}.top-user div{display:none}.cc-action-grid{grid-template-columns:1fr 1fr}.cc-service-row{grid-template-columns:auto 1fr}.cc-service-due{grid-column:2}.cc-update-row{grid-template-columns:auto 1fr}.cc-update-row>span:last-child{grid-column:2;text-align:left}}

/* V29.1 Centro de Control más enfocado + impresión/PDF */
.cc-grid{grid-template-columns:minmax(0,1.05fr) minmax(360px,.95fr)}
.cc-search-panel{grid-column:auto}
.cc-vehicle-results{max-height:370px;overflow:auto;padding-right:2px}
.cc-vehicle-result{min-height:68px;padding:11px 12px}
.cc-vehicle-result b{font-size:1rem}
.cc-vehicle-result em{margin-top:2px}
@media(max-width:1000px){.cc-grid{grid-template-columns:1fr}.cc-search-panel{grid-column:auto}.cc-vehicle-results{max-height:none}}

@media print{
 @page{size:A4 landscape;margin:11mm}
 html,body{background:#fff!important}
 body{font-size:10.5pt}
 .app-layout{display:block!important;min-height:auto!important}
 .sidebar,.topbar{display:none!important}
 .app-workspace{display:block!important;width:100%!important;min-width:0!important}
 .app-workspace main{max-width:none!important;width:100%!important;margin:0!important;padding:0!important}
 .reporttabs,.report-filter-card,.report-export-actions,#printreport,#excelreport,.textbtn,.navbtn{display:none!important}
 .report-page-head{margin:0 0 10mm!important}
 .report-page-head h1{font-size:18pt!important;margin:0 0 2mm!important}
 .report-overview{margin:0 0 7mm!important;gap:5mm!important}
 .report-stat,.report-period{box-shadow:none!important;border:1px solid #cfd6df!important;padding:3mm 4mm!important}
 .card{box-shadow:none!important;border:0!important;padding:0!important;margin:0!important}
 .report-result-head{margin-bottom:4mm!important}
 .report-result-head h2{font-size:14pt!important}
 .reporttable{width:100%!important;border:1px solid #d7dde5!important;border-radius:0!important;overflow:visible!important}
 .reportrow{display:grid!important;grid-template-columns:.72fr 1.18fr 1.45fr .8fr 1fr .92fr!important;gap:3mm!important;padding:3mm 2.5mm!important;font-size:9pt!important;break-inside:avoid!important;page-break-inside:avoid!important}
 .reportheader{display:grid!important;background:#f2f4f7!important;-webkit-print-color-adjust:exact;print-color-adjust:exact}
 .reportrow small{font-size:8pt!important}
 .status-report-row{grid-template-columns:1.2fr 1.4fr .85fr .85fr .9fr 1.15fr!important}
 .badge{border:1px solid #d0d5dd!important;-webkit-print-color-adjust:exact;print-color-adjust:exact}
}

/* V29.2 coherencia visual entre módulos */
.cc-kpi.slate:after{background:#667085}.slate .cc-kpi-icon{background:#eef1f5;color:#475467}.cc-kpi.slate strong{color:#344054}
.stale-mileage-list{display:grid;gap:8px}.stale-mileage-row{width:100%;min-height:76px}.stale-mileage-row>span:last-child{text-align:right}.stale-mileage-row>span:last-child small,.stale-mileage-row>span:last-child em{display:block;color:#667085;font-size:.74rem;font-style:normal;margin-top:2px}
.module-title{display:flex;align-items:center;gap:12px}.module-title-icon{width:46px;height:46px;border-radius:12px;background:#eaf1ff;color:#1f5fd2;display:grid;place-items:center;flex:0 0 auto}.module-title-icon .ui-icon{width:26px;height:26px}.module-title h1{margin:0 0 3px}.module-title p{margin:0}
.vehicle-page-head,.plan-page-head,.user-page-head,.settingshead,.report-page-head{margin-bottom:16px}
.vehicle-card,.plan-card,.user-card,.settingsgrid,.reporttable,.service-plan-row,.historyrow,.statusrow{border-color:#dfe5ec!important;box-shadow:0 1px 2px rgba(16,24,40,.025)}
.vehicle-card:hover,.plan-card:hover,.user-card:hover{border-color:#c7d2df!important;box-shadow:0 6px 18px rgba(16,24,40,.05)}
.vehicle-meta>div,.plan-version,.rolepill{background:#f5f8fc!important}
.vehicle-actions-main button:first-child,.plan-actions .servicebtn,.user-create-action button,.plan-create-action button,.vehicle-create-action button{background:#1264e9;border-color:#1264e9}
.reporttabs{background:#eaf0f7!important}.reporttabs .active{background:#1264e9!important;color:#fff!important}
.report-stat,.report-period{border-color:#dfe5ec!important}.report-stat strong{color:#172033}
.settingsgrid,.vehicle-create-grid,.plan-create-grid,.user-create-grid{background:#fff;border:1px solid #dfe5ec;border-radius:14px;padding:16px}
.service-plan-row .service-row-action button,.editservice,.editvehicle,.editplan,.edituser{color:#24578d}
.badge.good{background:#e8f7ee!important;color:#1f7a45}.badge.warn{background:#fff3d6!important;color:#9a6700}.badge.bad{background:#fde9ea!important;color:#b42318}.badge.mutedb{background:#eef1f4!important;color:#667085}
.statusrow{padding:14px 16px}.statusrow>div:first-child{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.statusrow small{width:100%;padding-left:44px}
.historyrow strong{color:#172033}.historyrow b{color:#24578d}
button.secondary{background:#f1f5f9;color:#24578d;border-color:#dbe4ee}
button.secondary:hover{background:#e8eef5}
@media(max-width:650px){.module-title{align-items:flex-start}.module-title-icon{width:40px;height:40px}.settingsgrid,.vehicle-create-grid,.plan-create-grid,.user-create-grid{padding:12px}.statusrow small{padding-left:0}.stale-mileage-row>span:last-child{text-align:left}}

/* V30 Notificaciones */
.notification-head{margin-bottom:16px}.notification-settings-card{border-top:3px solid #1264e9!important}.notification-settings-head{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:15px}.notification-settings-head h2{margin:0 0 3px}.switchline{display:flex!important;align-items:center;gap:8px;font-weight:800;color:#24578d}.switchline input,.checkline input{width:auto!important}.notification-settings-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.notification-settings-grid label span{display:block}.notification-settings-grid .checkline{display:flex;align-items:center;gap:8px;background:#f7f9fc;border:1px solid #e1e6ed;border-radius:9px;padding:11px;margin:0}.notification-save{grid-column:1/-1;display:flex;align-items:center;gap:12px}.notification-grid{display:grid;grid-template-columns:1.35fr .9fr;gap:14px;margin-top:14px}.notification-list{display:grid}.notification-row{display:grid;grid-template-columns:auto minmax(0,1fr) auto auto;align-items:center;gap:11px;padding:12px 2px;border-bottom:1px solid #edf0f4}.notification-row:last-child{border-bottom:0}.notification-service-icon{width:38px;height:38px;display:grid;place-items:center;color:#172033}.notification-service-icon .ui-icon{width:30px;height:30px}.notification-row small,.notification-row b,.notification-row em{display:block}.notification-row>span:nth-child(2) small{color:#1264e9}.notification-row em{font-style:normal;color:#667085;font-size:.78rem}.notification-row>span:nth-child(3)>small{margin-top:5px;color:#667085;font-size:.72rem}.notification-history>div{display:grid;grid-template-columns:1fr auto 1fr;gap:10px;align-items:center;padding:10px 2px;border-bottom:1px solid #edf0f4}.notification-history small,.notification-history b{display:block}.notification-history small{color:#667085;font-size:.72rem}.notification-history>div>span:last-child{text-align:right}.notification-note{margin-top:14px;padding:13px 15px;border-radius:10px;background:#eef4ff;border:1px solid #d7e4ff;color:#344054;font-size:.84rem}
@media(max-width:1050px){.notification-settings-grid{grid-template-columns:1fr 1fr}.notification-grid{grid-template-columns:1fr}}
@media(max-width:650px){.notification-settings-head{align-items:flex-start;flex-direction:column}.notification-settings-grid{grid-template-columns:1fr}.notification-row{grid-template-columns:auto 1fr}.notification-row>span:nth-child(3),.notification-row>button{grid-column:2}.notification-history>div{grid-template-columns:1fr auto}.notification-history>div>span:last-child{grid-column:1/-1;text-align:left}}
