/* Estilos propios de EMS (el sistema visual común está en css/app.css, igual que el CMMS) */
.ems-hero{display:flex;flex-direction:column;align-items:stretch;gap:10px}
.ems-rendir{display:flex;align-items:center;justify-content:center;gap:10px;font-size:18px;padding:18px;border-radius:14px}
.ems-rendir svg{width:24px;height:24px}
.fondo{display:grid;gap:6px}
.fondo .barra{height:8px;border-radius:5px;background:var(--line);overflow:hidden}
.fondo .barra i{display:block;height:100%;background:var(--accent);border-radius:5px}
.fondo .barra.alerta i{background:var(--warn)}
.cats{display:flex;flex-wrap:wrap;gap:6px}
.cats label{display:inline-flex;align-items:center;gap:6px;border:1px solid var(--line);border-radius:999px;padding:7px 12px;cursor:pointer;background:var(--panel);font-size:14px}
.cats input{position:absolute;opacity:0;pointer-events:none}
.cats label:has(input:checked){background:var(--accent);border-color:var(--accent);color:var(--accent-ink,#fff)}
.cats label:has(input:focus-visible){outline:3px solid var(--accent-soft)}
.boleta{display:grid;place-items:center;border:2px dashed var(--line);border-radius:12px;min-height:160px;padding:14px;text-align:center;cursor:pointer;background:var(--panel-2)}
.boleta img{max-width:100%;max-height:260px;border-radius:8px}
.boleta.ok{border-style:solid;border-color:var(--accent)}
.ocr-ok{border-left:4px solid var(--ok,#16a34a)}
.grid-aprob td{vertical-align:top}
.grid-aprob .thumbb{width:44px;height:44px;border-radius:6px;object-fit:cover;background:var(--panel-2);border:1px solid var(--line)}
.barras{display:grid;gap:6px}
.barras .b{display:grid;grid-template-columns:minmax(90px,38%) 1fr auto;gap:8px;align-items:center;font-size:13.5px}
.barras .b i{display:block;height:10px;border-radius:5px;background:var(--accent)}
.monto{font-family:var(--f-mono);font-variant-numeric:tabular-nums}
.ems .stickybar.row{display:grid;grid-template-columns:1fr 1.6fr;gap:8px;flex-wrap:nowrap}
.ems .stickybar.row .btn{justify-content:center;white-space:nowrap}
.ems .stickybar.row [data-borrar]{grid-column:1 / -1}

/* títulos de página: separación del texto que sigue (no se montan) */
#main h1{margin-bottom:10px}
#main h1 + p{margin-top:0}

/* visor de comprobantes */
.visor{position:fixed;inset:0;z-index:1000;background:rgba(0,0,0,.88);display:flex;flex-direction:column}
.visor-bar{display:flex;flex-wrap:wrap;gap:6px;justify-content:center;padding:10px;padding-top:max(10px,env(safe-area-inset-top))}
.visor-area{flex:1;overflow:auto;display:grid;place-items:center;padding:10px;-webkit-overflow-scrolling:touch;touch-action:pan-x pan-y pinch-zoom}
.visor-area img{max-width:100%;max-height:calc(100vh - 80px);transition:transform .15s;transform-origin:center;border-radius:6px}
.comprobante-img{max-width:100%;border-radius:8px;cursor:zoom-in}
.revisar{outline:2px solid var(--warn,#d97706);outline-offset:1px}
