/* Viabo SPEI: cierre UI v1.1, escala aprox. 90 % sin transform/zoom (preserva responsive). */
html { font-size: 90%; }
.altasys-topbar { --at-header-height: 65px; }
:root { --at-header-height:65px; --at-sidebar-expanded:227px; --at-sidebar-collapsed:76px; }
.altasys-content { padding:1.65rem 1.65rem 2.5rem; }
.altasys-nav-link { min-height:41px; }
.altasys-icon-button,.altasys-avatar { width:38px; height:38px; }
.altasys-table > :not(caption) > * > * { padding:.74rem .85rem; }
.altasys-card-body { padding:1.2rem; }
.altasys-card-header { padding:1.05rem 1.2rem; }
.altasys-card-footer { display:flex; justify-content:space-between; align-items:center; gap:.75rem; padding:.85rem 1.2rem; }
.altasys-card-footer .ms-auto { margin-left:auto!important; }
.viabo-company-display i { display:none!important; }
.altasys-shell[data-sidebar="collapsed"] .altasys-nav-link .altasys-nav-label,
.altasys-shell[data-sidebar="collapsed"] .altasys-nav-link > span:not(.altasys-nav-icon) { display:none!important; }
.altasys-shell[data-sidebar="collapsed"] .altasys-nav-link .altasys-nav-icon { flex:0 0 24px; width:24px; }
.altasys-shell[data-sidebar="collapsed"] .altasys-nav-link { justify-content:center!important; }
.altasys-topbar .dropdown-menu .viabo-profile-first-action { padding-top:.6rem; }
.altasys-topbar .dropdown-menu .viabo-profile-first-action .dropdown-item { margin-top:.35rem; }
.altasys-topbar .dropdown-item.viabo-logout,
.altasys-topbar .dropdown-item.viabo-logout:active,
.altasys-topbar .dropdown-item.viabo-logout:focus,
.altasys-topbar .dropdown-item.viabo-logout:hover { color:var(--at-primary)!important; background:var(--at-ink)!important; }
.altasys-topbar .dropdown-item:active { background:var(--at-primary-soft); color:var(--at-navy); }
.viabo-icon-action { display:inline-flex; align-items:center; justify-content:center; width:31px; height:31px; min-width:31px; padding:0!important; color:var(--at-muted); border:1px solid transparent; border-radius:7px; background:transparent; box-shadow:none; }
.viabo-icon-action:hover,.viabo-icon-action:focus-visible { color:var(--at-navy); background:var(--at-primary-soft); border-color:var(--at-border); }
html[data-bs-theme="dark"] .viabo-icon-action:hover { color:var(--at-primary); }
.viabo-icon-action i { font-size:1rem; }
.viabo-action-drawer.viabo-detail-drawer { --bs-offcanvas-width:min(650px,100vw); }
.viabo-drawer-section { padding:1.15rem 1.35rem; }
.viabo-drawer-total { color:var(--at-navy); font-size:1.9rem; font-weight:700; }
.viabo-drawer-detail-row { display:flex; flex-wrap:wrap; justify-content:space-between; align-items:flex-start; gap:.75rem; padding:.8rem 0; border-bottom:1px solid var(--at-border); }
.viabo-drawer-detail-row > :first-child { color:var(--at-muted); }
.viabo-drawer-detail-row > :last-child { text-align:right; color:var(--at-text); max-width:75%; overflow-wrap:anywhere; }
.viabo-drawer-loading { min-height:150px; display:grid; place-items:center; }
.viabo-recovery-details summary { color:#65718c; font-size:.85rem; cursor:pointer; }
.viabo-auth-logo-image { display:block; width:auto; max-width:190px; max-height:56px; object-fit:contain; }
.viabo-recovery-details[open] { border-top:1px solid var(--viabo-border); padding-top:1rem; }
.viabo-page-nav { display:flex; align-items:center; gap:1rem; justify-content:space-between; padding:.9rem 1rem; border-top:1px solid var(--at-border); flex-wrap:wrap; color:var(--at-muted); }
.viabo-page-nav .btn { box-shadow:none; }
.viabo-page-nav .is-disabled { opacity:.4; pointer-events:none; }
@media(max-width:991.98px) { .altasys-content { padding:1.2rem 1rem 2rem; } }

/* Las tablas anchas deben desplazarse, nunca recortarse debajo del menú. */
.altasys-table-wrap { overflow-x:auto!important; overflow-y:hidden!important; }
.altasys-table { min-width:640px; }
.altasys-table tbody tr[hidden] { display:none; }
/* Asegura que no aparezca el resalte azul nativo en logout. */
.altasys-topbar .dropdown-menu .dropdown-item.viabo-logout:active { background:var(--at-ink)!important; color:var(--at-primary)!important; }

/* v1.2 universal explanatory pagination */
.viabo-pager{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:1rem;margin:1.25rem 0 1.75rem; font-size:.86rem}
.viabo-pager-summary{color:var(--at-muted,var(--bs-secondary-color));font-variant-numeric:tabular-nums}
.viabo-pager-summary strong{font-weight:650;color:var(--bs-body-color)}
.viabo-pager-pages{display:flex;align-items:center;flex-wrap:wrap;gap:.35rem}
.viabo-page-control{min-width:2.25rem;height:2.25rem;padding:0 .5rem;display:inline-flex;align-items:center;justify-content:center;background:var(--bs-body-bg);border:1px solid var(--bs-border-color);border-radius:.48rem;color:var(--bs-body-color);font-size:.88rem;font-weight:600;text-decoration:none;transition:background .17s,border-color .17s,color .17s}
.viabo-page-control:hover{border-color:var(--at-purple,#7B5CF6);color:var(--at-purple,#7B5CF6);background:rgba(123,92,246,.06)}
.viabo-page-control.is-active{background:#7B5CF6;border-color:#7B5CF6;color:white;pointer-events:none}
[data-bs-theme=dark] .viabo-page-control.is-active{background:#C8F431;border-color:#C8F431;color:#08090A}
.viabo-page-control.disabled{opacity:.35;cursor:not-allowed;pointer-events:none}
.viabo-page-dots{padding:0 .18rem;color:var(--bs-secondary-color)}
@media(max-width:575px){.viabo-pager{justify-content:center;text-align:center}.viabo-pager-summary{width:100%}}

/* Bulk dispersal status and utility */
.status-valid,.status-ready,.status-dispatched {border-color:rgba(22,101,52,.25);color:#166534;background:rgba(22,101,52,.08)}
.status-invalid,.status-needs_review {border-color:rgba(185,28,28,.3);color:#B91C1C;background:rgba(185,28,28,.09)}
.status-queued,.status-running,.status-reviewed {border-color:rgba(123,92,246,.3);color:#7B5CF6;background:rgba(123,92,246,.08)}
.status-excluded {color:var(--bs-secondary-color);background:var(--bs-tertiary-bg)}
