
:root{
 --navy:#0f2233;--navy2:#172f45;--bg:#f4f7fb;--card:#fff;--line:#dfe5ec;--text:#17202a;--muted:#6b7280;
 --blue:#1677d2;--green:#139447;--orange:#f47600;--purple:#6737b8;--teal:#118c8d;--red:#e51d3f;--gray:#52677b;--yellow:#bd7a00;
}
*{box-sizing:border-box}
body{margin:0;font-family:Arial,Helvetica,sans-serif;background:var(--bg);color:var(--text)}
button,input,select,textarea{font:inherit}
button{border:0;border-radius:10px;padding:11px 14px;color:#fff;font-weight:700;cursor:pointer;min-height:42px}
button:disabled{opacity:.55;cursor:not-allowed}
input,select,textarea{width:100%;padding:11px;border:1px solid #cfd7df;border-radius:9px;background:#fff;font-size:16px}
label{display:block;font-size:13px;font-weight:700;margin-bottom:6px}
h1,h2,h3{margin-top:0}.muted{color:var(--muted)}.small{font-size:12px}
.login{min-height:100vh;display:grid;place-items:center;padding:20px}
.card{background:var(--card);border:1px solid #e6eaf0;border-radius:15px;padding:20px;box-shadow:0 4px 16px rgba(15,34,51,.06)}
.login .card{width:min(440px,100%);text-align:center}
.login-logo{width:min(330px,90%);height:auto;margin-bottom:12px}
.layout{display:grid;grid-template-columns:250px 1fr;min-height:100vh}
.side{background:linear-gradient(180deg,var(--navy),#0a1a29);color:#fff;padding:18px}
.side-logo-wrap{background:#fff;border-radius:12px;padding:8px;margin-bottom:14px}
.side-logo{width:100%;height:72px;object-fit:contain;display:block}
.userbox{display:flex;gap:10px;align-items:center;margin:12px 0 18px;padding:10px;border-radius:10px;background:rgba(255,255,255,.06)}
.avatar{width:38px;height:38px;border-radius:50%;display:grid;place-items:center;background:#1677d2;font-weight:800}
.side button{display:block;width:100%;text-align:left;margin:6px 0}
.main{padding:22px;max-width:1500px;width:100%;margin:auto}
.topbar{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:16px}
.fecha-unificada{display:flex;align-items:center;gap:10px;padding:8px 12px;border:1px solid #dbe4ee;border-radius:10px;background:#fff;color:#334155;white-space:nowrap;font-size:12px}.fecha-unificada strong{color:#0f2233;font-size:13px}.fecha-unificada span+span{padding-left:10px;border-left:1px solid #dbe4ee}
.grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px}
.grid5{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:13px}
.two{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}
.three{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px}
.stat{background:#fff;border-radius:14px;padding:17px;border:1px solid #e6eaf0}
.stat small{color:var(--muted)}.stat strong{display:block;font-size:23px;margin-top:7px;overflow-wrap:anywhere}
.field{margin-bottom:12px}.formgrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}.full{grid-column:1/-1}
.actions{display:flex;gap:8px;justify-content:flex-end;flex-wrap:wrap;margin-top:10px}
.toolbar{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:13px}
.tablewrap{overflow:auto;background:#fff;border-radius:13px;border:1px solid #e6eaf0}
.table{width:100%;border-collapse:collapse}
.table th,.table td{padding:11px;border-bottom:1px solid #e5e7eb;text-align:left;white-space:nowrap;font-size:14px}
.table th{background:#f8fafc}
.badge{display:inline-block;padding:4px 8px;border-radius:999px;font-size:12px;font-weight:700}
.badge-on{background:#dcfce7;color:#166534}.badge-off{background:#fee2e2;color:#991b1b}.badge-info{background:#dbeafe;color:#1d4ed8}
.notice{background:#eff6ff;border-left:4px solid var(--blue);padding:11px;border-radius:8px;margin-bottom:13px}
.blue{background:var(--blue)}.green{background:var(--green)}.orange{background:var(--orange)}.purple{background:var(--purple)}.teal{background:var(--teal)}.gray{background:var(--gray)}.yellow{background:var(--yellow)}.red{background:var(--red)}
.soft-red{background:#fff1f2;border:1px solid #fecdd3}.soft-green{background:#f0fdf4;border:1px solid #bbf7d0}.soft-blue{background:#eff6ff;border:1px solid #bfdbfe}.soft-orange{background:#fff7ed;border:1px solid #fed7aa}
.person-card{border-top:4px solid var(--teal)}.truck-a{border-top:4px solid var(--blue)}.truck-b{border-top:4px solid var(--purple)}
.tabs{display:flex;gap:7px;flex-wrap:wrap;margin:12px 0}.tabs button{background:#e7edf4;color:#213547}.tabs button.active{background:var(--blue);color:#fff}
.section-head{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap}
hr{border:0;border-top:1px solid var(--line);margin:18px 0}
.thumb{width:56px;height:56px;object-fit:cover;border-radius:8px;border:1px solid #ddd}
.footer{text-align:center;color:#fff;background:var(--navy);padding:14px;margin:24px -22px -22px}
@media(max-width:1050px){.grid5{grid-template-columns:repeat(3,1fr)}}
@media(max-width:900px){.layout{grid-template-columns:1fr}.side{position:static}.grid,.grid5{grid-template-columns:repeat(2,1fr)}.formgrid,.two,.three{grid-template-columns:1fr}.main{padding:14px}.footer{margin:20px -14px -14px}}
@media(max-width:500px){.grid,.grid5{grid-template-columns:1fr}.table th,.table td{font-size:13px}}

.person-head{display:flex;align-items:center;gap:12px;min-width:0}
.person-photo{width:72px;height:72px;border-radius:50%;object-fit:cover;border:2px solid #dbe5ef;flex:0 0 auto}
.person-placeholder{width:56px;height:56px;border-radius:50%;display:grid;place-items:center;background:#dbeafe;color:#1d4ed8;font-weight:800;font-size:20px}
.person-photo.person-placeholder{width:72px;height:72px}
.total-extra-box input{font-size:22px;font-weight:800;color:#166534;background:#f0fdf4;border-color:#86efac}

.liquidacion-tools{display:flex;align-items:flex-end;gap:12px;flex-wrap:wrap;margin-bottom:14px}
.liquidacion-sheet{background:#fff;border:1px solid #d8dee6;border-radius:12px;padding:24px;max-width:900px;margin:0 auto;color:#111}
.liq-head{display:flex;justify-content:space-between;align-items:center;gap:20px;border-bottom:2px solid #0f2233;padding-bottom:14px;margin-bottom:18px}
.liq-head img{width:250px;max-height:85px;object-fit:contain;object-position:left center}
.liq-head h2{font-size:20px;margin:0 0 5px;text-align:right}.liq-head p{margin:0;text-align:right;font-weight:700}
.liq-person{display:flex;gap:16px;align-items:center;margin-bottom:18px}
.liq-person>img{width:82px;height:82px;border-radius:8px;object-fit:cover;border:1px solid #ccd5df}
.liq-info{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;flex:1}
.liq-info div{border:1px solid #e1e6ec;border-radius:8px;padding:9px}.liq-info span{display:block;font-size:11px;color:#64748b;text-transform:uppercase}.liq-info strong{display:block;margin-top:3px}
.liq-table{width:100%;border-collapse:collapse;margin-top:8px}.liq-table th,.liq-table td{border:1px solid #cfd6de;padding:9px;font-size:13px}.liq-table thead th{background:#eef3f7}.liq-table .num{text-align:right;white-space:nowrap}
.liq-table tfoot th{background:#f8fafc}.liq-table .liq-neto th{font-size:16px;background:#eaf7ee}.liq-table .liq-neto .num{color:#166534;font-size:19px}
.liq-note{font-size:11px;color:#596675;margin-top:14px}
.liq-signatures{display:grid;grid-template-columns:1fr 1fr;gap:90px;margin-top:115px;text-align:center}.liq-signatures span{display:block;border-top:1px solid #222;margin-bottom:8px}.liq-signatures b,.liq-signatures small{display:block}
@media(max-width:650px){.liq-head{align-items:flex-start;flex-direction:column}.liq-head h2,.liq-head p{text-align:left}.liq-info{grid-template-columns:1fr}.liq-signatures{grid-template-columns:1fr;gap:60px}}
@media print{
 @page{size:A4 portrait;margin:12mm}
 body.print-liquidacion{background:#fff}
 body.print-liquidacion *{visibility:hidden!important}
 body.print-liquidacion #liquidacionImprimible,
 body.print-liquidacion #liquidacionImprimible *{visibility:visible!important}
 body.print-liquidacion #liquidacionImprimible{position:absolute;left:0;top:0;width:100%;max-width:none;margin:0;padding:0;border:0;box-shadow:none}
 body.print-liquidacion .no-print{display:none!important}
 body.print-liquidacion .liq-head img{width:220px}
 body.print-liquidacion .liq-table th,body.print-liquidacion .liq-table td{font-size:11.5px;padding:7px}
 body.print-liquidacion .liq-signatures{margin-top:100px}
}

/* V1.7: TODA LA INTERFAZ EN MAYÚSCULAS POR DEFECTO */
body,button,input,select,option,textarea,label,table,h1,h2,h3,p,span,strong,small{ text-transform:uppercase; }
input[type="date"],input[type="month"],input[type="number"],input[type="password"],input[type="file"]{ text-transform:none; }

/* V1.9 — PERSONAL MÁS SIMPLE */
.personal-lista{display:flex;flex-direction:column;gap:8px}
.persona-item{display:flex!important;align-items:center;gap:10px;width:100%;background:#f8fafc!important;color:#17202a!important;border:1px solid #dfe6ee!important;text-align:left!important}
.persona-item.seleccionado{background:#e8f5ef!important;border:2px solid #139447!important}
.persona-item img,.persona-item .person-placeholder{width:48px;height:48px;flex:0 0 48px}
.persona-item span:not(.person-placeholder){display:flex;flex-direction:column;gap:2px}
.carga-mes-head{display:flex;align-items:end;justify-content:space-between;gap:10px;flex-wrap:wrap;margin:15px 0}
.carga-mes-head .field{min-width:220px;margin:0}
.carga-mensual-grid{display:flex;flex-direction:column;gap:8px;margin:12px 0 18px}
.mes-row{display:grid;grid-template-columns:minmax(180px,1.15fr) minmax(180px,1fr) minmax(145px,.75fr);gap:10px;align-items:center;border:1px solid #e2e8f0;border-radius:11px;padding:10px;background:#fff}
.mes-row>div:first-child{display:flex;flex-direction:column}.mes-row>div:first-child small{color:#6b7280;margin-top:3px}
.mes-row output{font-weight:800;text-align:right;font-size:16px}
.mes-row.base{background:#eff6ff}.mes-row.descuento{background:#fff1f2}
.mini-two{display:grid;grid-template-columns:1fr 1fr;gap:7px}
.resumen-mes{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:15px 0}
.resumen-mes>div{border-radius:12px;padding:14px;background:#f8fafc;border:1px solid #e2e8f0}
.resumen-mes small{display:block;color:#64748b}.resumen-mes strong{display:block;font-size:21px;margin-top:5px}
.resumen-mes .neto{background:#ecfdf5;border-color:#86efac}.resumen-mes .neto strong{color:#166534;font-size:25px}
@media(max-width:650px){
 .mes-row{grid-template-columns:1fr}
 .mes-row output{text-align:left;font-size:19px}
 .mini-two{grid-template-columns:1fr}
 .resumen-mes{grid-template-columns:1fr}
}

/* V1.11 — IMPRESIÓN EXCLUSIVA DE LA LIQUIDACIÓN */
@media print{
 @page{
   size:A4 portrait;
   margin:8mm;
 }

 body.solo-liquidacion{
   margin:0!important;
   padding:0!important;
   background:#fff!important;
 }

 body.solo-liquidacion > *{
   visibility:hidden!important;
 }

 body.solo-liquidacion #liquidacionImprimible,
 body.solo-liquidacion #liquidacionImprimible *{
   visibility:visible!important;
 }

 body.solo-liquidacion #liquidacionImprimible{
   position:absolute!important;
   left:0!important;
   top:0!important;
   width:100%!important;
   max-width:none!important;
   margin:0!important;
   padding:0!important;
   border:0!important;
   border-radius:0!important;
   box-shadow:none!important;
   background:#fff!important;
   overflow:visible!important;
 }

 body.solo-liquidacion .side,
 body.solo-liquidacion .topbar,
 body.solo-liquidacion .footer,
 body.solo-liquidacion .no-print{
   display:none!important;
 }

 body.solo-liquidacion .layout{
   display:block!important;
   min-height:0!important;
 }

 body.solo-liquidacion .main{
   display:block!important;
   width:100%!important;
   max-width:none!important;
   margin:0!important;
   padding:0!important;
 }

 body.solo-liquidacion #contenido{
   display:block!important;
   width:100%!important;
   margin:0!important;
   padding:0!important;
 }

 body.solo-liquidacion .liq-head{
   margin-bottom:10px!important;
   padding-bottom:8px!important;
 }

 body.solo-liquidacion .liq-head img{
   width:180px!important;
   max-height:60px!important;
 }

 body.solo-liquidacion .liq-head h2{
   font-size:16px!important;
 }

 body.solo-liquidacion .liq-person{
   margin-bottom:10px!important;
 }

 body.solo-liquidacion .liq-person>img{
   width:58px!important;
   height:58px!important;
 }

 body.solo-liquidacion .liq-info{
   gap:5px!important;
 }

 body.solo-liquidacion .liq-info div{
   padding:5px!important;
 }

 body.solo-liquidacion .liq-table{
   margin-top:4px!important;
   page-break-inside:avoid!important;
 }

 body.solo-liquidacion .liq-table th,
 body.solo-liquidacion .liq-table td{
   font-size:10.5px!important;
   padding:5px!important;
 }

 body.solo-liquidacion .liq-note{
   margin-top:7px!important;
   font-size:9.5px!important;
 }

 body.solo-liquidacion .liq-signatures{
   margin-top:85px!important;
   gap:65px!important;
   page-break-inside:avoid!important;
 }

 body.solo-liquidacion .liq-signatures b,
 body.solo-liquidacion .liq-signatures small{
   font-size:10px!important;
 }

 body.solo-liquidacion #liquidacionImprimible{
   page-break-after:avoid!important;
 }
}

/* V1.13 — CORRECCIÓN DEFINITIVA DE IMPRESIÓN */
@media print{
 body.solo-liquidacion #app{
   display:block!important;
   visibility:visible!important;
 }

 body.solo-liquidacion .layout{
   display:block!important;
   visibility:visible!important;
 }

 body.solo-liquidacion .main,
 body.solo-liquidacion #contenido{
   display:block!important;
   visibility:visible!important;
 }

 body.solo-liquidacion .side,
 body.solo-liquidacion .topbar,
 body.solo-liquidacion .footer,
 body.solo-liquidacion .no-print{
   display:none!important;
 }

 body.solo-liquidacion #liquidacionImprimible{
   display:block!important;
   visibility:visible!important;
   position:static!important;
   width:100%!important;
   max-width:none!important;
   min-height:0!important;
   margin:0!important;
   padding:0!important;
 }

 body.solo-liquidacion #liquidacionImprimible *{
   visibility:visible!important;
 }
}


/* ===== V1.14 PERSONAL SIMPLE ===== */
.personal-home{max-width:1100px;margin:0 auto}
.personal-tools{display:flex;gap:12px;align-items:center;margin:16px 0}
.personal-tools>input{flex:1;min-height:46px}
.segmented{display:flex;gap:6px;background:#f3f4f6;padding:5px;border-radius:12px}
.segmented button{border:0;background:transparent;color:#374151}
.segmented button.active{background:#111827;color:#fff}
.personal-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(270px,1fr));gap:12px}
.personal-card-item{border:1px solid #e5e7eb;border-radius:14px;padding:14px;display:grid;grid-template-columns:64px 1fr;gap:12px;align-items:center;background:#fff}
.personal-card-item>button{grid-column:1/-1;width:100%}
.personal-card-photo{width:64px;height:64px;border-radius:50%;overflow:hidden;background:#eef2ff;display:grid;place-items:center;font-weight:800;font-size:22px}
.personal-card-photo img{width:100%;height:100%;object-fit:cover}
.personal-card-data h3{margin:0 0 3px}
.personal-card-data p,.personal-card-data small{display:block;margin:0 0 3px}
.status-pill{display:inline-block;margin-top:6px;padding:4px 8px;border-radius:999px;font-size:11px;font-weight:800}
.status-pill.on{background:#dcfce7;color:#166534}.status-pill.off{background:#fee2e2;color:#991b1b}
.empty-state{text-align:center;padding:34px;border:1px dashed #cbd5e1;border-radius:14px}
.ficha-personal{max-width:1050px;margin:0 auto}
.back-link{border:0;background:transparent;color:#374151;padding:4px 0;margin-bottom:10px}
.ficha-top{background:#fff;border:1px solid #e5e7eb;border-radius:16px;padding:18px;margin-bottom:12px}
.ficha-identidad{display:flex;align-items:center;gap:14px}
.ficha-identidad h2{margin:0 0 3px}
.ficha-identidad p,.ficha-identidad small{margin:0}
.ficha-foto{width:86px;height:86px;border-radius:14px;object-fit:cover;background:#eef2ff;display:grid;place-items:center;font-size:28px;font-weight:800}
.ficha-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:14px}
.ficha-tabs{display:flex;gap:6px;margin-bottom:12px;overflow:auto}
.ficha-tabs button{background:#fff;color:#334155;border:1px solid #e5e7eb}
.ficha-tabs button.active{background:#111827;color:#fff}
.ficha-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.data-list>div{display:flex;justify-content:space-between;gap:12px;border-bottom:1px solid #eef2f7;padding:10px 0}
.data-list span{font-size:12px;color:#64748b}.data-list strong{text-align:right}
.documento-card{grid-column:1/-1}
.doc-preview{width:150px;height:95px;object-fit:cover;border-radius:10px;border:1px solid #e5e7eb;display:block;margin:8px 0 12px}
.timeline{display:flex;flex-direction:column;gap:8px}
.timeline-item{display:flex;align-items:center;justify-content:space-between;gap:12px;border:1px solid #e5e7eb;border-radius:12px;padding:12px}
.timeline-item small{display:block;color:#64748b;margin-top:3px}
.timeline-item>div:last-child{display:flex;align-items:center;gap:8px}
button.mini{min-height:34px;padding:6px 10px}
.danger-zone{display:flex;justify-content:flex-end;gap:8px;margin-top:12px}
.photo-upload{background:#f8fafc;border:1px dashed #cbd5e1;border-radius:12px;padding:12px}
.photo-upload small{display:block;margin-top:5px;color:#64748b}
.liquidacion-selector{margin-bottom:12px}

@media(max-width:760px){
 .personal-tools{display:block}
 .segmented{margin-top:8px}
 .personal-cards{grid-template-columns:1fr}
 .ficha-grid{grid-template-columns:1fr}
 .ficha-identidad{align-items:flex-start}
 .ficha-actions{display:grid;grid-template-columns:1fr 1fr}
 .ficha-actions button:last-child{grid-column:1/-1}
 .timeline-item{align-items:flex-start}
 .data-list>div{display:block}
 .data-list strong{display:block;text-align:left;margin-top:3px}
}


/* ===== V1.16 FLOTA DINÁMICA ===== */
.vehicle-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(270px,1fr));gap:14px;margin-top:16px}
.vehicle-card{border:1px solid #e5e7eb;border-radius:16px;padding:14px;background:#fff;display:flex;flex-direction:column;gap:10px}
.vehicle-card.inactive{opacity:.65}
.vehicle-photo{height:150px;border-radius:12px;background:#f1f5f9;display:grid;place-items:center;overflow:hidden}
.vehicle-photo img{width:100%;height:100%;object-fit:contain;background:#f1f5f9}
.vehicle-photo span{font-size:48px}
.vehicle-photo.large{width:180px;height:120px;flex:0 0 auto}
.vehicle-info h3{margin:6px 0 4px}.vehicle-info p,.vehicle-info small{margin:0}
.vehicle-stats{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:12px}
.vehicle-stats>div{background:#f8fafc;border-radius:10px;padding:9px}
.vehicle-stats span{display:block;font-size:11px;color:#64748b}.vehicle-stats b{display:block;margin-top:3px}
.vehicle-stats.big{margin-top:16px}
.vehicle-detail{max-width:1050px;margin:0 auto}
.vehicle-detail-head{display:flex;gap:16px;align-items:center}
.vehicle-actions{margin-top:16px}
@media(max-width:760px){
 .vehicle-grid{grid-template-columns:1fr}
 .vehicle-detail-head{align-items:flex-start}
 .vehicle-photo.large{width:110px;height:90px}
 .vehicle-actions{grid-template-columns:1fr 1fr!important}
}


/* ===== V1.19 DASHBOARD ACTUALIZADO ===== */
.dash-wrap{max-width:1400px;margin:0 auto;padding:4px 0 18px}
.dash-welcome{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:18px}
.dash-welcome h2{margin:0 0 4px;font-size:24px}.dash-welcome p{margin:0;color:#64748b;font-size:13px}
.dash-date{font-size:13px;color:#334155;white-space:nowrap}
.kpi-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:16px}
.kpi-card{background:#fff;border:1px solid #e5e7eb;border-radius:14px;padding:17px;display:flex;gap:14px;align-items:center;box-shadow:0 2px 8px rgba(15,23,42,.04)}
.kpi-icon{width:54px;height:54px;border-radius:50%;display:grid;place-items:center;color:#fff;font-weight:800;font-size:18px;flex:0 0 auto}
.kpi-icon.green{background:#16a34a}.kpi-icon.red{background:#ef4444}.kpi-icon.blue{background:#1d82d8}.kpi-icon.purple{background:#6d3cc3}
.kpi-card small,.kpi-card span{display:block}.kpi-card small{font-weight:800;font-size:11px;color:#111827}.kpi-card strong{display:block;font-size:21px;margin:4px 0}.kpi-card span{font-size:11px;color:#64748b}
.dash-two{display:grid;grid-template-columns:1.05fr 1.25fr;gap:14px;margin-bottom:14px}
.dash-panel{background:#fff;border:1px solid #e5e7eb;border-radius:14px;padding:16px;box-shadow:0 2px 8px rgba(15,23,42,.03)}
.panel-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:12px}.panel-head h3{margin:0;font-size:14px}
.link-btn{border:0;background:transparent;color:#1677d2;padding:2px 4px;min-height:auto;text-decoration:underline;font-size:11px}
.bars{height:260px;display:flex;align-items:flex-end;justify-content:space-around;gap:26px;border-bottom:1px solid #cbd5e1;padding:0 28px 0}
.bar-item{height:100%;display:flex;flex-direction:column;justify-content:flex-end;align-items:center;flex:1;max-width:125px}
.bar-value{font-size:11px;font-weight:800;margin-bottom:5px}.bar-track{height:190px;width:100%;display:flex;align-items:flex-end}.bar-fill{width:100%;border-radius:5px 5px 0 0;min-height:8px}.bar-fill.green{background:#19a64a}.bar-fill.red{background:#ef2d2d}.bar-fill.blue{background:#1976d2}.bar-label{padding:8px 0;font-size:12px}
.recent-list{display:flex;flex-direction:column}.recent-row{display:grid;grid-template-columns:1.4fr 1fr;gap:10px;align-items:center;padding:10px 0;border-bottom:1px solid #edf0f4}.recent-row:last-child{border-bottom:0}
.recent-row small,.recent-row span{display:block;color:#64748b;font-size:10px}.recent-row>div:last-child{text-align:right}.recent-row strong{display:block;color:#ef2d2d;margin-top:2px}
.quick-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:10px}.quick{border:1px solid #e5e7eb;border-radius:12px;padding:12px 8px;min-height:92px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;color:#111827}
.quick span{font-size:24px}.quick b{font-size:11px}.quick small{font-size:10px}.q-green{background:#eefbf3}.q-orange{background:#fff5eb}.q-purple{background:#f4efff}.q-blue{background:#eef6ff}
.alerts-list{display:flex;flex-direction:column}.alert-row{display:grid;grid-template-columns:28px 1fr auto;align-items:center;gap:8px;padding:10px 0;border-bottom:1px solid #edf0f4}.alert-row:last-child{border-bottom:0}.alert-row>span{font-size:18px}.alert-row b{font-size:11px}.alert-row small{display:block;color:#64748b;font-size:10px;margin-top:2px}
@media(max-width:1100px){.kpi-grid{grid-template-columns:repeat(2,1fr)}.dash-two{grid-template-columns:1fr}.quick-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:760px){.dash-welcome{display:block}.fecha-unificada{width:100%;justify-content:flex-end;flex-wrap:wrap;white-space:normal}.kpi-grid{grid-template-columns:1fr}.quick-grid{grid-template-columns:1fr 1fr}.bars{height:220px;padding:0 10px}.bar-track{height:160px}.recent-row{grid-template-columns:1fr}.recent-row>div:last-child{text-align:left}}


/* ===== V1.21 — BOTONES UNIFICADOS EN AZUL ===== */
button,
.btn,
.blue,.green,.orange,.purple,.teal,.gray,.yellow,.red,
.tabs button,.tabs button.active,
.segmented button,.segmented button.active,
.ficha-tabs button,.ficha-tabs button.active,
.link-btn,
.quick,.q-green,.q-orange,.q-purple,.q-blue{
 background:#1d82d8!important;
 color:#fff!important;
 border-color:#1d82d8!important;
}
button:hover,.btn:hover,.link-btn:hover,.quick:hover{
 background:#126bb8!important;
 color:#fff!important;
}
button:disabled{
 background:#94a3b8!important;
 border-color:#94a3b8!important;
 color:#fff!important;
}
.link-btn{text-decoration:none!important;padding:7px 10px!important;border-radius:8px!important}
.login-help{margin-top:14px;padding:10px;border-radius:10px;background:#eef6ff;color:#334155;font-size:12px;line-height:1.6}


/* ===== V1.22 — PALETA CORPORATIVA ===== */
button,.btn{background:#2563eb!important;color:#fff!important;border-color:#2563eb!important}
.blue{background:#2563eb!important;border-color:#2563eb!important;color:#fff!important}
.green{background:#16a34a!important;border-color:#16a34a!important;color:#fff!important}
.orange,.amber{background:#d97706!important;border-color:#d97706!important;color:#fff!important}
.purple{background:#7c3aed!important;border-color:#7c3aed!important;color:#fff!important}
.teal{background:#0f9f95!important;border-color:#0f9f95!important;color:#fff!important}
.cyan{background:#0891b2!important;border-color:#0891b2!important;color:#fff!important}
.indigo{background:#4f46e5!important;border-color:#4f46e5!important;color:#fff!important}
.navy{background:#164e63!important;border-color:#164e63!important;color:#fff!important}
.red,.rose{background:#e11d48!important;border-color:#e11d48!important;color:#fff!important}
.gray,.slate{background:#475569!important;border-color:#475569!important;color:#fff!important}
.yellow{background:#b45309!important;border-color:#b45309!important;color:#fff!important}
button:hover,.btn:hover{filter:brightness(.92);color:#fff!important}
.segmented button,.ficha-tabs button,.balance-tabs button{background:#e2e8f0!important;border-color:#cbd5e1!important;color:#334155!important}
.segmented button.active,.ficha-tabs button.active,.balance-tabs button.active{background:#2563eb!important;border-color:#2563eb!important;color:#fff!important}
.back-link{background:#475569!important;color:#fff!important;padding:8px 12px!important;border-radius:8px!important}
.link-btn{background:#2563eb!important;color:#fff!important;border-color:#2563eb!important}
.quick.q-green{background:#ecfdf5!important;color:#166534!important;border-color:#bbf7d0!important}
.quick.q-orange{background:#fffbeb!important;color:#92400e!important;border-color:#fde68a!important}
.quick.q-purple{background:#f5f3ff!important;color:#5b21b6!important;border-color:#ddd6fe!important}
.quick.q-blue{background:#eff6ff!important;color:#1d4ed8!important;border-color:#bfdbfe!important}

/* ===== BALANCE ===== */
.balance-page{max-width:1300px;margin:0 auto}
.balance-tabs{display:flex;gap:8px;margin-top:14px;flex-wrap:wrap}
.balance-tabs button{min-width:115px}
.balance-selector{display:grid;grid-template-columns:minmax(240px,360px) 1fr;gap:14px;align-items:end;margin-top:14px}
.balance-period{background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;padding:12px 14px}
.balance-period span{display:block;font-size:11px;color:#64748b}.balance-period strong{display:block;margin-top:4px}
.balance-kpis{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin:14px 0}
.balance-kpi{border-radius:14px;padding:18px;color:#fff;box-shadow:0 2px 8px rgba(15,23,42,.06)}
.balance-kpi small,.balance-kpi span{display:block}.balance-kpi strong{display:block;font-size:26px;margin:5px 0}
.balance-kpi.income{background:#15803d}.balance-kpi.expense{background:#be123c}.balance-kpi.result-pos{background:#1d4ed8}.balance-kpi.result-neg{background:#9f1239}
.balance-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-bottom:14px}
.balance-breakdown{display:flex;flex-direction:column}
.balance-breakdown>div{display:flex;justify-content:space-between;gap:16px;padding:11px 0;border-bottom:1px solid #e5e7eb}
.balance-breakdown>div:last-child{border-bottom:0}
.balance-breakdown span{color:#64748b;font-size:12px}.balance-breakdown b{text-align:right}
.balance-breakdown .total{margin-top:4px;padding-top:14px;font-size:15px}.balance-breakdown .total span,.balance-breakdown .total b{font-weight:800;color:#0f172a}
.balance-pos{color:#15803d!important;font-weight:800}.balance-neg{color:#be123c!important;font-weight:800}
.balance-note{margin-top:12px}
@media(max-width:900px){
 .balance-kpis{grid-template-columns:1fr}
 .balance-grid{grid-template-columns:1fr}
 .balance-selector{grid-template-columns:1fr}
}


/* ===== V1.23 DEMO — MENÚ LATERAL EN TONOS DE AZUL ===== */
.side .blue-1{background:#0b3d91!important;border-color:#0b3d91!important;color:#fff!important}
.side .blue-2{background:#0d47a1!important;border-color:#0d47a1!important;color:#fff!important}
.side .blue-3{background:#1155b5!important;border-color:#1155b5!important;color:#fff!important}
.side .blue-4{background:#1565c0!important;border-color:#1565c0!important;color:#fff!important}
.side .blue-5{background:#1976d2!important;border-color:#1976d2!important;color:#fff!important}
.side .blue-6{background:#1e88e5!important;border-color:#1e88e5!important;color:#fff!important}
.side .blue-7{background:#2196f3!important;border-color:#2196f3!important;color:#fff!important}
.side .blue-8{background:#287fc2!important;border-color:#287fc2!important;color:#fff!important}
.side .blue-9{background:#326fa8!important;border-color:#326fa8!important;color:#fff!important}
.side .blue-10{background:#394f70!important;border-color:#394f70!important;color:#fff!important}
.side .blue-1:hover,.side .blue-2:hover,.side .blue-3:hover,.side .blue-4:hover,.side .blue-5:hover,
.side .blue-6:hover,.side .blue-7:hover,.side .blue-8:hover,.side .blue-9:hover,.side .blue-10:hover{
 filter:brightness(1.10)!important;
}
.side .active{outline:2px solid rgba(255,255,255,.75)!important;box-shadow:0 0 0 2px rgba(37,99,235,.35)!important}
.demo-badge{display:inline-block;vertical-align:middle;background:#e0f2fe;color:#075985;border:1px solid #7dd3fc;border-radius:999px;padding:3px 7px;font-size:10px;letter-spacing:.5px}

/* ===== V1.24 — INGRESAR GASTO UNIFICADO ===== */
.expense-entry{max-width:1250px;margin:0 auto}.expense-choice-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:14px}.expense-choice{min-height:150px;border-radius:16px;padding:22px;text-align:left;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:6px}.expense-choice.general{background:#eff6ff!important;border:1px solid #93c5fd!important;color:#1e3a8a!important}.expense-choice.fijo{background:#eef2ff!important;border:1px solid #a5b4fc!important;color:#3730a3!important}.expense-choice.viaje{background:#ecfeff!important;border:1px solid #67e8f9!important;color:#155e75!important}.expense-choice:hover{filter:brightness(.98)!important}.expense-choice-icon{font-size:30px}.expense-choice strong{font-size:18px}.expense-choice small{font-size:12px;opacity:.8}.expense-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:14px}.expense-type{display:inline-block;padding:4px 8px;border-radius:999px;font-size:10px;font-weight:800}.expense-type.general{background:#dbeafe;color:#1d4ed8}.expense-type.fixed{background:#e0e7ff;color:#4338ca}.expense-type.travel{background:#cffafe;color:#155e75}.expense-form-card{max-width:950px;margin:0 auto}
.vehicle-expiry-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:16px}.vehicle-expiry{border-radius:12px;padding:13px;border:1px solid #e2e8f0}.vehicle-expiry span,.vehicle-expiry small{display:block}.vehicle-expiry span{font-size:11px;font-weight:800}.vehicle-expiry strong{display:block;margin:4px 0;font-size:17px}.expiry-ok{background:#ecfdf5;border-color:#bbf7d0}.expiry-ok small{color:#166534}.expiry-warning{background:#fffbeb;border-color:#fde68a}.expiry-warning small{color:#92400e}.expiry-danger{background:#fff1f2;border-color:#fecdd3}.expiry-danger small{color:#be123c}.expiry-neutral{background:#f8fafc;border-color:#e2e8f0}.expiry-neutral small{color:#64748b}
@media(max-width:760px){.expense-choice-grid,.expense-summary,.vehicle-expiry-grid{grid-template-columns:1fr}}


/* ===== V1.25 — PERSONAL + PAGO DE SALARIO ===== */
.personal-head-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}
.personal-card-photo{border:2px solid #dbeafe;box-shadow:0 2px 8px rgba(15,39,69,.08)}
.ficha-foto{border:2px solid #dbeafe}
.person-photo{border:2px solid #dbeafe}
@media(max-width:760px){
 .personal-head-actions{display:grid;grid-template-columns:1fr;width:100%;margin-top:10px}
 .personal-head-actions button{width:100%}
}


/* V4.1 — LIQUIDACIÓN MÁS SIMPLE Y NETO MENSUAL CLARO */
.liquidacion-simple{max-width:1150px;margin:0 auto;border-top:4px solid #1677d2}
.liquidacion-person-head{padding-bottom:14px;border-bottom:1px solid #e5e7eb}
.liquidacion-mes-bar{display:flex;align-items:end;justify-content:space-between;gap:12px;margin:16px 0}.liquidacion-mes-bar .field{margin:0;min-width:240px}
.liq-resumen-principal{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:11px;margin:16px 0 20px}
.liq-resumen-card{border-radius:14px;padding:15px;border:1px solid #dbe4ee;background:#f8fafc}.liq-resumen-card small,.liq-resumen-card span{display:block}.liq-resumen-card small{font-weight:800;color:#475569}.liq-resumen-card strong{display:block;font-size:24px;margin:6px 0;color:#0f2233}.liq-resumen-card span{font-size:10px;color:#64748b;line-height:1.35}
.liq-resumen-card.neto-mes{background:#eff6ff;border-color:#93c5fd}.liq-resumen-card.neto-mes strong{color:#1d4ed8}
.liq-resumen-card.adelantos{background:#fff7ed;border-color:#fdba74}.liq-resumen-card.adelantos strong{color:#c2410c}
.liq-resumen-card.saldo{background:#ecfdf5;border-color:#86efac}.liq-resumen-card.saldo strong{color:#166534}
.liq-resumen-card.costo{background:#f5f3ff;border-color:#c4b5fd}.liq-resumen-card.costo strong{color:#5b21b6}
.liq-bloque{border:1px solid #dfe6ee;border-radius:14px;padding:14px;margin:14px 0;background:#fff}.liq-bloque-titulo{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.liq-bloque-titulo b{font-size:15px}.liq-bloque-titulo small{display:block;color:#64748b;margin-top:3px;font-size:10px}
.carga-mensual-grid.compacta{margin:0;gap:6px}.carga-mensual-grid.compacta .mes-row{padding:9px}
.liq-total-line{display:flex;justify-content:space-between;align-items:center;gap:12px;background:#eff6ff;border:1px solid #93c5fd;border-radius:10px;padding:12px 14px;margin-top:10px}.liq-total-line span{font-weight:800;color:#1e3a8a}.liq-total-line strong{font-size:22px;color:#1d4ed8}
.adelanto-bloque{background:#fffbf5}.liq-saldo-box{display:grid;grid-template-columns:1fr auto 1fr auto 1.2fr;align-items:center;gap:10px;margin-top:12px}.liq-saldo-box>div{background:#fff;border:1px solid #e2e8f0;border-radius:11px;padding:12px;text-align:center}.liq-saldo-box>span{font-size:25px;font-weight:800;color:#64748b}.liq-saldo-box small{display:block;color:#64748b}.liq-saldo-box strong{display:block;font-size:20px;margin-top:4px}.liq-saldo-box .resultado{background:#ecfdf5;border-color:#86efac}.liq-saldo-box .resultado strong{color:#166534;font-size:23px}
.costo-bloque{background:#fafafa}.liq-costos-mini{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:10px}.liq-costos-mini>div{border:1px solid #e2e8f0;border-radius:10px;padding:11px;background:#fff}.liq-costos-mini small{display:block;color:#64748b}.liq-costos-mini strong{display:block;margin-top:4px;font-size:18px}.liq-costos-mini>div:last-child{background:#f5f3ff;border-color:#c4b5fd}.liq-costos-mini>div:last-child strong{color:#5b21b6}
.liq-final-grid{display:grid;grid-template-columns:minmax(220px,.65fr) 1.35fr;gap:12px;margin-top:14px}.liq-final-grid .field{margin:0}
.historial-pago-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:8px;margin-top:12px}.historial-metrica{border:1px solid #e5e7eb;border-radius:10px;padding:10px;background:#f8fafc}.historial-metrica span{display:block;font-size:10px;color:#64748b}.historial-metrica strong{display:block;margin-top:4px;font-size:15px}.historial-metrica.principal{background:#eff6ff;border-color:#bfdbfe}.historial-metrica.principal strong{color:#1d4ed8}.historial-metrica.saldo{background:#ecfdf5;border-color:#bbf7d0}.historial-metrica.saldo strong{color:#166534}.historial-metrica.costo{background:#f5f3ff;border-color:#ddd6fe}.historial-metrica.costo strong{color:#5b21b6}
@media(max-width:1000px){.liq-resumen-principal{grid-template-columns:repeat(2,1fr)}.historial-pago-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:650px){.liquidacion-mes-bar{display:block}.liquidacion-mes-bar .field{min-width:0;margin-bottom:10px}.liq-resumen-principal,.liq-costos-mini,.liq-final-grid,.historial-pago-grid{grid-template-columns:1fr}.liq-saldo-box{grid-template-columns:1fr}.liq-saldo-box>span{transform:rotate(90deg);text-align:center}.liq-total-line{display:block}.liq-total-line strong{display:block;margin-top:5px}}

/* V4.2 — LIQUIDACIÓN SIMPLIFICADA */
.v42-simple .liquidacion-mes-bar{margin-bottom:14px}
.liq-simple-layout{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(300px,.8fr);gap:16px;align-items:start}
.liq-simple-main,.liq-simple-side{border:1px solid #dfe6ee;border-radius:14px;background:#fff;padding:16px}
.liq-simple-main h3,.liq-simple-side h3{margin:0 0 12px;font-size:16px;color:#17324d}
.liq-simple-main .mes-row{padding:9px 10px;min-height:50px}
.liq-simple-main .mes-row small{display:none}
.liq-simple-total{display:flex;align-items:center;justify-content:space-between;gap:14px;border-radius:10px;padding:12px 14px;margin-top:9px;font-weight:800}
.liq-simple-total strong{font-size:22px}
.liq-simple-total.ingreso{background:#eef8f2;color:#176b3a;border:1px solid #b9e3c9}
.liq-simple-total.adelanto{background:#fff4f4;color:#b4232f;border:1px solid #f2c3c7}
.liq-simple-total.pagar{background:#0f5fc7;color:#fff;border:1px solid #0f5fc7;padding:15px 14px}
.liq-simple-total.pagar strong{font-size:27px}
.simple-cost-row{display:grid;grid-template-columns:1fr 100px 125px;gap:9px;align-items:center;padding:12px 0;border-bottom:1px solid #e5eaf0}
.simple-cost-row small{display:block;color:#64748b;font-size:10px;margin-top:2px}
.simple-cost-row input{width:100%;text-align:center}
.simple-cost-row output{text-align:right;font-weight:800}
.simple-cost-total{display:flex;justify-content:space-between;align-items:center;background:#f1f5f9;border-radius:10px;padding:14px;margin-top:12px}
.simple-cost-total span{font-weight:800;color:#475569}.simple-cost-total strong{font-size:22px;color:#17324d}
.liq-simple-meta{margin-top:16px}.liq-simple-meta .field{margin-bottom:10px}
.liq-simple-actions{justify-content:flex-end;margin-top:14px}
@media(max-width:900px){.liq-simple-layout{grid-template-columns:1fr}.simple-cost-row{grid-template-columns:1fr 90px 115px}}
@media(max-width:560px){.simple-cost-row{grid-template-columns:1fr}.simple-cost-row output{text-align:left}.liq-simple-total strong{font-size:19px}.liq-simple-total.pagar strong{font-size:23px}}

/* V4.7 */
.expense-type.personal{background:#e8eefc;color:#244a9b;border:1px solid #c7d5f5;}

/* V4.8 — perfil de personal más limpio y eliminación protegida */
.ficha-toolbar{
 display:flex;
 align-items:center;
 gap:7px;
 flex-wrap:nowrap;
 overflow-x:auto;
 padding:10px 0 14px;
 margin-bottom:14px;
 border-bottom:1px solid #e7edf3;
 scrollbar-width:thin;
}
.ficha-toolbar button{flex:0 0 auto;white-space:nowrap}
.ficha-toolbar .toolbar-sep{width:1px;height:28px;background:#dfe7ee;flex:0 0 1px;margin:0 3px}
.ficha-toolbar button.active{background:#173f63;color:#fff;border-color:#173f63}
button.compact{padding:8px 12px;min-height:34px;font-size:12px}
.personal-status-actions{display:flex;align-items:center;gap:10px;justify-content:flex-end;margin-top:18px;padding-top:14px;border-top:1px solid #edf1f5}
.danger-link{background:transparent!important;color:#b42318!important;border:1px solid #f1b8b4!important;padding:6px 9px!important;min-height:30px!important;font-size:11px!important;font-weight:700!important;box-shadow:none!important}
.danger-link:hover{background:#fff1f0!important;border-color:#d92d20!important}
@media(max-width:700px){
 .ficha-toolbar{padding-bottom:10px}
 .personal-status-actions{justify-content:flex-start;flex-wrap:wrap}
}

/* V4.9 — Toolbar de personal uniforme */
.ficha-toolbar-uniforme{
  display:grid;
  grid-template-columns:repeat(6,minmax(0,1fr));
  gap:8px;
  align-items:stretch;
}
.ficha-toolbar-uniforme button{
  width:100%;
  min-width:0;
  height:42px;
  min-height:42px;
  padding:0 10px;
  margin:0;
  font-size:12px;
  font-weight:800;
  white-space:nowrap;
  display:flex;
  align-items:center;
  justify-content:center;
}
.ficha-toolbar-uniforme .adelanto-rojo{
  background:#c62828 !important;
  border-color:#c62828 !important;
  color:#fff !important;
}
.ficha-toolbar-uniforme .adelanto-rojo:hover{
  filter:brightness(.94);
}
.observacion-personal-card{max-width:900px}
.observacion-personal-texto{
  min-height:120px;
  padding:18px;
  border:1px solid #e1e7ed;
  border-radius:10px;
  background:#f8fafc;
  line-height:1.6;
  white-space:pre-wrap;
}
@media (max-width:1050px){
  .ficha-toolbar-uniforme{grid-template-columns:repeat(3,minmax(0,1fr));}
}
@media (max-width:620px){
  .ficha-toolbar-uniforme{grid-template-columns:repeat(2,minmax(0,1fr));}
}

/* V6.1 — eliminación segura de cuentas bancarias */
.account-delete-btn{
  font-size:11px!important;
  padding:7px 10px!important;
  min-height:auto!important;
  width:auto!important;
  border:1px solid #dc2626!important;
  color:#b91c1c!important;
  background:#fff!important;
  border-radius:8px!important;
  font-weight:700!important;
}
.account-delete-btn:hover{background:#fff1f2!important;}

/* V6.8 — MOSTRAR FOTO COMPLETA DEL VEHICULO, SIN RECORTE */
.vehicle-photo{height:auto!important;min-height:150px!important;aspect-ratio:16/9!important;overflow:hidden!important;background:#f1f5f9!important}
.vehicle-photo img{width:100%!important;height:100%!important;max-height:none!important;object-fit:contain!important;object-position:center center!important;display:block!important}
.vehicle-photo.large{width:min(420px,100%)!important;height:auto!important;aspect-ratio:16/9!important;flex:0 0 auto!important}
@media(max-width:760px){.vehicle-photo.large{width:100%!important;height:auto!important}}

/* ===== V7.3 — REDISEÑO MÓVIL (ESCRITORIO SIN CAMBIOS) ===== */
@media (max-width:760px){
  body{background:#f4f7fb}
  .layout{display:block;min-height:100vh}
  .side{
    position:static!important;
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:7px;
    padding:10px 12px 12px;
    background:linear-gradient(180deg,var(--navy),#0a1a29);
  }
  .side-logo-wrap{grid-column:1/-1;margin:0 0 2px;padding:5px;border-radius:10px}
  .side-logo{height:48px}
  .userbox{grid-column:1/-1;margin:3px 0 4px;padding:7px 9px;min-height:52px}
  .avatar{width:32px;height:32px;font-size:13px}
  .userbox .small{font-size:9px;line-height:1.15}
  .userbox strong{font-size:13px;line-height:1.15}
  .side button{width:100%;margin:0;min-height:42px;padding:8px 10px;border-radius:8px;font-size:11px;text-align:center}
  .side .blue-10{grid-column:1/-1;min-height:36px;padding:7px;font-size:10px}

  .main{padding:10px 10px 0}
  .topbar{margin-bottom:10px;gap:6px;align-items:center}
  .topbar>div:first-child h1{font-size:22px;margin:0!important}
  .topbar>div:first-child .muted{font-size:11px}
  .fecha-unificada{width:auto;max-width:100%;margin-left:auto;padding:6px 8px;gap:6px;font-size:9px;border-radius:8px}
  .fecha-unificada strong{font-size:9px}
  .fecha-unificada span+span{padding-left:6px}

  .card{padding:14px;border-radius:12px}
  .section-head h2{font-size:19px;margin-bottom:5px}
  .section-head h3{font-size:17px}
  .section-head .muted{font-size:11px;margin:0}

  .expense-entry{width:100%;max-width:none}
  .expense-choice-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin-top:11px}
  .expense-choice{min-height:104px;padding:13px 12px;border-radius:12px;gap:3px}
  .expense-choice.viaje{grid-column:1/-1;min-height:88px}
  .expense-choice-icon{font-size:23px}
  .expense-choice strong{font-size:13px}
  .expense-choice small{font-size:9px;line-height:1.25}

  .expense-summary{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
  .expense-summary .stat{padding:11px}
  .expense-summary .stat small{font-size:9px}
  .expense-summary .stat strong{font-size:16px;margin-top:4px}
  .expense-summary .stat:last-child{grid-column:1/-1}

  .expense-entry .tablewrap{border-radius:10px}
  .expense-entry .table th,.expense-entry .table td{padding:8px;font-size:11px}
  .expense-entry .table button{min-height:34px;padding:6px 8px;font-size:10px}

  .footer{margin:16px -10px 0;padding:10px;font-size:10px}
}

@media (max-width:390px){
  .side{gap:6px;padding-left:9px;padding-right:9px}
  .side button{font-size:10px;padding-left:6px;padding-right:6px}
  .expense-choice-grid{grid-template-columns:1fr 1fr}
  .expense-choice{padding:11px 10px}
}
