/* Vista móvil forzada en celular/tablet (incluye horizontal) y app Android */

/* Safe areas compartidas (navegador móvil + app) */
html.layout-movil-forzado {
    --nav-safe-top: env(safe-area-inset-top, 0px);
    --nav-safe-bottom: env(safe-area-inset-bottom, 0px);
    --nav-safe-left: env(safe-area-inset-left, 0px);
    --nav-safe-right: env(safe-area-inset-right, 0px);
}

html.app-nativa-capacitor.layout-movil-forzado {
    --nav-safe-top: var(--app-safe-top, env(safe-area-inset-top, 0px));
    --nav-safe-bottom: var(--app-safe-bottom, env(safe-area-inset-bottom, 0px));
    --nav-safe-left: var(--app-safe-left, env(safe-area-inset-left, 0px));
    --nav-safe-right: var(--app-safe-right, env(safe-area-inset-right, 0px));
}

/* Navegador móvil: separación como Chrome (barra superior + botones Android) */
html.layout-movil-forzado:not(.app-nativa-capacitor) body {
    padding-top: var(--nav-safe-top) !important;
    padding-left: var(--nav-safe-left);
    padding-right: var(--nav-safe-right);
    box-sizing: border-box;
}

html.layout-movil-forzado .fondo-pro-layer--esc {
    display: none !important;
}

html.layout-movil-forzado .fondo-pro-layer--mov {
    display: block !important;
}

html.layout-movil-forzado .reloj-pro {
    display: none !important;
}

/* Zoom CSS solo en navegador móvil; la app usa initial-scale=0.67 en el viewport */
html.layout-movil-forzado:not(.app-nativa-capacitor):not(.app-welcome-simple) {
    zoom: 0.67;
}

html.app-nativa-capacitor.layout-movil-forzado {
    zoom: 1 !important;
    -webkit-text-size-adjust: 100%;
}

/* Contenedores a ancho completo */
html.layout-movil-forzado .container,
html.layout-movil-forzado .form-container,
html.layout-movil-forzado .cyber-container,
html.layout-movil-forzado .pp-wrap {
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
    padding-left: 10px !important;
    padding-right: 10px !important;
}

/* Tipografía móvil */
html.layout-movil-forzado .page-header h1,
html.layout-movil-forzado .form-header h1,
html.layout-movil-forzado h1 {
    font-size: 22px !important;
    line-height: 1.25 !important;
    word-break: break-word;
}

html.layout-movil-forzado .bienvenida {
    font-size: 26px !important;
}

/* Toggles y secciones colapsables */
html.layout-movil-forzado .status-header,
html.layout-movil-forzado .toggle-header {
    font-size: 15px !important;
    padding: 12px 10px !important;
    min-height: 44px;
    touch-action: manipulation;
}

html.layout-movil-forzado .status-content,
html.layout-movil-forzado .toggle-content.open {
    overflow-x: auto !important;
    overflow-y: auto !important;
    -webkit-overflow-scrolling: touch;
    touch-action: pan-x pan-y;
    max-width: 100% !important;
}

/* Formularios táctiles */
html.layout-movil-forzado .search-container input,
html.layout-movil-forzado #searchInput,
html.layout-movil-forzado input,
html.layout-movil-forzado select,
html.layout-movil-forzado textarea {
    max-width: 100% !important;
    box-sizing: border-box !important;
    font-size: 16px !important;
}

html.layout-movil-forzado button,
html.layout-movil-forzado .btn,
html.layout-movil-forzado input[type="submit"] {
    max-width: 100%;
    box-sizing: border-box;
    touch-action: manipulation;
}

/* Modales */
html.layout-movil-forzado .modal-busqueda-rep-panel,
html.layout-movil-forzado .modal-content {
    width: calc(100% - 16px) !important;
    max-width: 100% !important;
    margin: 12px auto !important;
}

/* Big Bang welcome: overlay a pantalla completa en celular/app (solo visual) */
html.layout-movil-forzado #big-bang-overlay {
    position: fixed !important;
    inset: 0 !important;
    z-index: 200000 !important;
    width: 100vw !important;
    height: 100dvh !important;
    max-width: none !important;
}
html.layout-movil-forzado body.big-bang-playing,
html.layout-movil-forzado body.big-bang-forming {
    overflow: hidden;
}
html.layout-movil-forzado #big-bang-overlay .bb-form-item {
    font-size: 12px !important;
    padding: 8px 12px !important;
}
html.layout-movil-forzado #big-bang-overlay .bb-preview-skip {
    top: max(10px, env(safe-area-inset-top, 0px)) !important;
    right: 10px !important;
}

/* Menú principal PRO en móvil */
html.layout-movil-forzado .menu-ovalo-main {
    position: static !important;
    transform: none !important;
    left: auto !important;
    bottom: auto !important;
    width: 100% !important;
    max-width: 420px !important;
    margin: 24px auto 0 !important;
    min-height: auto !important;
    max-height: min(62vh, 520px) !important;
    overflow: hidden !important;
    display: flex !important;
    flex-direction: column !important;
}

html.layout-movil-forzado .menu-ovalo-main .menu-handle {
    display: none !important;
}

html.layout-movil-forzado .menu-ovalo-main .menu-content {
    flex: 1 1 auto !important;
    min-height: 0 !important;
    max-height: 100% !important;
    overflow-y: auto !important;
    -webkit-overflow-scrolling: touch;
    touch-action: pan-y;
}

html.layout-movil-forzado .menu-ovalo-main .menu-row {
    flex-direction: column;
    gap: 14px;
    align-items: center;
}

html.layout-movil-forzado .menu-link {
    font-size: 18px !important;
    padding: 13px 18px !important;
    width: 90%;
    max-width: 340px;
    min-width: 220px;
    white-space: normal;
}

/* Menú Simple grid */
html.layout-movil-forzado .simple-menu-grid {
    width: 100% !important;
    max-width: 420px !important;
    margin: 0 auto !important;
    overflow-y: auto !important;
    -webkit-overflow-scrolling: touch;
}

html.layout-movil-forzado .simple-menu-grid a {
    font-size: 15px !important;
    padding: 12px 14px !important;
    min-height: 44px;
}

/* Hubs: Motos, Carros, Reparaciones */
html.layout-movil-forzado .menu-btn {
    min-width: 220px !important;
    padding: 16px 30px !important;
    font-size: 18px !important;
    touch-action: manipulation;
}

html.layout-movil-forzado .menu-section {
    padding: 24px 16px !important;
    margin-bottom: 16px !important;
    max-width: 100% !important;
}

html.layout-movil-forzado .btn-group {
    flex-direction: column !important;
    align-items: center !important;
    gap: 12px !important;
}

/* Dashboard cards welcome */
html.layout-movil-forzado .dashboard-container,
html.layout-movil-forzado .simple-dashboard {
    justify-content: center !important;
    align-items: center !important;
    gap: 15px !important;
}

html.layout-movil-forzado .dashboard-card,
html.layout-movil-forzado .simple-dashboard .card {
    width: 45% !important;
    max-width: 190px !important;
}

/* Tablas con scroll horizontal */
html.layout-movil-forzado .table-container,
html.layout-movil-forzado .app-tabla-scroll {
    overflow-x: auto !important;
    -webkit-overflow-scrolling: touch;
    touch-action: pan-x pan-y;
    max-width: 100% !important;
}

html.layout-movil-forzado .table-container table {
    min-width: max-content;
}

/* Reparaciones concluidas: tarjetas móvil */
html.layout-movil-forzado #concluidasTable thead,
html.layout-movil-forzado #concluidasTable .desktop-row {
    display: none !important;
}

html.layout-movil-forzado #concluidasTable .mobile-row:not(.filter-hidden) {
    display: table-row !important;
}

html.layout-movil-forzado #concluidasTable tr.mobile-row.filter-hidden,
html.layout-movil-forzado #concluidasTable tr.desktop-row.filter-hidden {
    display: none !important;
}

html.layout-movil-forzado #concluidasTable .mobile-row td {
    display: block !important;
    width: 100% !important;
    padding: 0 !important;
    border: none !important;
}

html.layout-movil-forzado .pagina-reparaciones-concluidas .reparacion-card-mobile {
    font-size: 15px !important;
    font-family: inherit !important;
}

/* Barra menú rápido: escritorio = hover expande/minimiza (floating_nav_bar.html);
   móvil = barra gruesa táctil en todos los menús */
html.layout-movil-forzado .floating-nav-bar {
    display: flex !important;
    flex-direction: column;
    bottom: var(--nav-safe-bottom) !important;
    left: 0;
    right: 0;
}

/* Estilos táctiles de la barra (clase layout-movil-forzado, no solo ancho < 860px) */
html.layout-movil-forzado .floating-nav-bar .bar-strip {
    height: 34px !important;
    min-height: 34px !important;
}

html.layout-movil-forzado body.mode-pro .floating-nav-bar .bar-strip {
    background: linear-gradient(90deg, rgba(15, 23, 42, 0.82), rgba(30, 41, 59, 0.95)) !important;
    border-top: 2px solid rgba(103, 232, 249, 0.55) !important;
    box-shadow: 0 -6px 20px rgba(0, 0, 0, 0.45) !important;
}

html.layout-movil-forzado body.mode-simple .floating-nav-bar .bar-strip {
    background: #fff !important;
    border-top: 2px solid #007bff !important;
    box-shadow: 0 -6px 16px rgba(0, 0, 0, 0.12) !important;
}

html.layout-movil-forzado .floating-nav-bar .bar-handle::before {
    width: 92px !important;
    height: 5px !important;
}

html.layout-movil-forzado body.mode-pro .floating-nav-bar .bar-handle::after {
    content: '☰ MENÚ RÁPIDO' !important;
    position: absolute;
    font-size: 11px !important;
    font-weight: 900;
    letter-spacing: 3px !important;
    color: #67e8f9;
    text-shadow: 0 0 6px rgba(103, 232, 249, 0.6);
    pointer-events: none;
    margin-top: 9px !important;
}

html.layout-movil-forzado body.mode-simple .floating-nav-bar .bar-handle::after,
html.layout-movil-forzado.app-welcome-simple .floating-nav-bar .bar-handle::after {
    content: '☰ MENÚ RÁPIDO' !important;
    position: absolute;
    font-size: 11px !important;
    font-weight: 700;
    letter-spacing: 2px !important;
    color: #007bff;
    pointer-events: none;
    margin-top: 9px !important;
}

html.layout-movil-forzado .floating-nav-bar.expanded .bar-handle::after,
html.layout-movil-forzado .floating-nav-bar:hover .bar-handle::after {
    content: 'TOCAR AQUÍ PARA CERRAR  •  DESLIZA ABAJO' !important;
    font-size: 9.5px !important;
    margin-top: 0 !important;
    letter-spacing: 1px !important;
    opacity: 0.85;
}

html.layout-movil-forzado body.mode-simple .floating-nav-bar.expanded .bar-handle::after,
html.layout-movil-forzado body.mode-simple .floating-nav-bar:hover .bar-handle::after {
    color: #6c757d !important;
    text-shadow: none !important;
}

html.layout-movil-forzado .floating-nav-bar.expanded .bar-strip,
html.layout-movil-forzado .floating-nav-bar:hover .bar-strip {
    height: 28px !important;
    min-height: 28px !important;
}

html.layout-movil-forzado .floating-nav-bar.expanded .nav-content,
html.layout-movil-forzado .floating-nav-bar:hover .nav-content {
    max-height: 58vh !important;
    padding-bottom: 24px !important;
}

html.layout-movil-forzado .floating-nav-bar .nav-links a {
    padding: 9px 15px !important;
    font-size: 14.5px !important;
    min-height: 36px !important;
}

/* Espacio inferior para que el contenido no quede bajo la barra */
html.layout-movil-forzado .container,
html.layout-movil-forzado .form-container,
html.layout-movil-forzado .cyber-container,
html.layout-movil-forzado .pp-wrap {
    padding-bottom: calc(48px + var(--nav-safe-bottom)) !important;
}

html.layout-movil-forzado.pagina-welcome-pro .form-container,
html.layout-movil-forzado.app-en-welcome .form-container {
    padding-bottom: calc(100px + var(--nav-safe-bottom)) !important;
}

/* App nativa: reglas compartidas con Chrome móvil */
html.app-nativa-capacitor.layout-movil-forzado .status-section,
html.app-nativa-capacitor.layout-movil-forzado .pre-orden-flujo,
html.app-nativa-capacitor.layout-movil-forzado .pp-wrap {
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box;
}

html.app-nativa-capacitor.layout-movil-forzado .page-header p {
    font-size: 14px !important;
    line-height: 1.35 !important;
}

html.app-nativa-capacitor.layout-movil-forzado .advanced-filters {
    max-width: 100% !important;
    width: 100% !important;
}

html.app-nativa-capacitor.layout-movil-forzado .filters-grid {
    grid-template-columns: 1fr !important;
}

/* Solicitudes / concluidas: tipografía de escritorio (Inter), no manuscrita (Dancing Script global) */
html.layout-movil-forzado .pagina-solicitudes-reparacion.container,
html.layout-movil-forzado .pagina-reparaciones-concluidas.container {
    font-family: 'Inter', system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif !important;
}

html.layout-movil-forzado body.mode-simple .pagina-solicitudes-reparacion.container,
html.layout-movil-forzado body.mode-simple .pagina-reparaciones-concluidas.container {
    font-family: 'Segoe UI', Arial, Helvetica, sans-serif !important;
}

html.layout-movil-forzado .pagina-solicitudes-reparacion th,
html.layout-movil-forzado .pagina-solicitudes-reparacion td,
html.layout-movil-forzado .pagina-solicitudes-reparacion .placa,
html.layout-movil-forzado .pagina-solicitudes-reparacion .ingresa-val,
html.layout-movil-forzado .pagina-solicitudes-reparacion .fecha,
html.layout-movil-forzado .pagina-solicitudes-reparacion .estado-badge,
html.layout-movil-forzado .pagina-solicitudes-reparacion .btn-programar,
html.layout-movil-forzado .pagina-solicitudes-reparacion .btn-ver-desc-mobile,
html.layout-movil-forzado .pagina-solicitudes-reparacion .btn-fotos-mobile,
html.layout-movil-forzado .pagina-solicitudes-reparacion .status-header h2,
html.layout-movil-forzado .pagina-reparaciones-concluidas th,
html.layout-movil-forzado .pagina-reparaciones-concluidas td,
html.layout-movil-forzado .pagina-reparaciones-concluidas .reparacion-card-mobile,
html.layout-movil-forzado .pagina-reparaciones-concluidas .reparacion-card-mobile .card-item,
html.layout-movil-forzado .pagina-reparaciones-concluidas .reparacion-card-mobile .placa,
html.layout-movil-forzado .pagina-reparaciones-concluidas .reparacion-card-mobile .mecanico-val,
html.layout-movil-forzado .pagina-reparaciones-concluidas .reparacion-card-mobile .km-val,
html.layout-movil-forzado .pagina-reparaciones-concluidas .reparacion-card-mobile .fecha,
html.layout-movil-forzado .pagina-reparaciones-concluidas .reparacion-card-mobile .mobile-trabajo,
html.layout-movil-forzado .pagina-reparaciones-concluidas .reparacion-card-mobile .mobile-trabajo span,
html.layout-movil-forzado .pagina-reparaciones-concluidas .reparacion-card-mobile button,
html.layout-movil-forzado .pagina-reparaciones-concluidas .reparacion-card-mobile a {
    font-family: inherit !important;
    text-shadow: none !important;
}

html.layout-movil-forzado .pagina-solicitudes-reparacion td {
    font-weight: 600 !important;
}

html.layout-movil-forzado .pagina-solicitudes-reparacion .placa,
html.layout-movil-forzado .pagina-solicitudes-reparacion .ingresa-val {
    font-weight: 600 !important;
}

html.layout-movil-forzado .pagina-reparaciones-concluidas .reparacion-card-mobile .placa {
    font-weight: 700 !important;
}

html.layout-movil-forzado .pagina-reparaciones-concluidas .reparacion-card-mobile .card-item strong {
    font-weight: 600 !important;
}

/* Solicitudes reparación: vista compacta en móvil y app */
html.layout-movil-forzado .pagina-solicitudes-reparacion.container {
    padding: 10px 6px !important;
}

html.layout-movil-forzado .pagina-solicitudes-reparacion .page-header {
    margin-bottom: 10px !important;
}

html.layout-movil-forzado .pagina-solicitudes-reparacion .page-header h1 {
    font-size: 20px !important;
    margin-bottom: 4px !important;
    line-height: 1.2 !important;
}

html.layout-movil-forzado .pagina-solicitudes-reparacion .page-header p {
    font-size: 11px !important;
    line-height: 1.25 !important;
    margin: 2px 0 !important;
}

html.layout-movil-forzado .pagina-solicitudes-reparacion .search-container {
    margin: 8px auto 10px !important;
}

html.layout-movil-forzado .pagina-solicitudes-reparacion #searchInput {
    padding: 8px 10px !important;
    font-size: 14px !important;
}

html.layout-movil-forzado .pagina-solicitudes-reparacion .status-section {
    margin-bottom: 12px !important;
}

html.layout-movil-forzado .pagina-solicitudes-reparacion .status-header {
    padding: 8px 10px !important;
    min-height: 0 !important;
}

html.layout-movil-forzado .pagina-solicitudes-reparacion .status-header h2 {
    font-size: 14px !important;
    gap: 6px !important;
    line-height: 1.2 !important;
}

html.layout-movil-forzado .pagina-solicitudes-reparacion .table-container {
    border-radius: 0 0 10px 10px !important;
}

html.layout-movil-forzado .pagina-solicitudes-reparacion th,
html.layout-movil-forzado .pagina-solicitudes-reparacion td {
    font-size: 10.5px !important;
    padding: 4px 2px !important;
    line-height: 1.15 !important;
    vertical-align: middle !important;
}

html.layout-movil-forzado .pagina-solicitudes-reparacion .placa {
    font-size: 11px !important;
    line-height: 1.15 !important;
}

html.layout-movil-forzado .pagina-solicitudes-reparacion .ingresa-val {
    font-size: 10px !important;
}

html.layout-movil-forzado .pagina-solicitudes-reparacion .fecha {
    font-size: 10px !important;
}

html.layout-movil-forzado .pagina-solicitudes-reparacion .estado-col {
    width: auto !important;
    min-width: 0 !important;
}

html.layout-movil-forzado .pagina-solicitudes-reparacion .estado-badge {
    font-size: 9.5px !important;
    padding: 4px 7px !important;
    min-width: 68px !important;
    line-height: 1.1 !important;
}

html.layout-movil-forzado .pagina-solicitudes-reparacion .btn-programar {
    font-size: 8.5px !important;
    padding: 2px 4px !important;
    max-width: 54px !important;
    height: auto !important;
    line-height: 1.1 !important;
    margin-top: 2px !important;
    border-radius: 4px !important;
}

html.layout-movil-forzado .pagina-solicitudes-reparacion .mobile-desc {
    display: table-cell !important;
    font-size: inherit !important;
    padding: 4px 3px !important;
    line-height: 1.2 !important;
    min-width: 108px !important;
    vertical-align: middle !important;
}

html.layout-movil-forzado .pagina-solicitudes-reparacion .mobile-desc-wrap {
    gap: 5px !important;
}

html.layout-movil-forzado .pagina-solicitudes-reparacion .btn-ver-desc-mobile {
    min-height: 44px !important;
    padding: 10px 6px !important;
    font-size: 13px !important;
    font-weight: 700 !important;
    line-height: 1.25 !important;
    touch-action: manipulation;
}

html.layout-movil-forzado .pagina-solicitudes-reparacion .desktop-desc {
    display: none !important;
}

html.layout-movil-forzado .pagina-solicitudes-reparacion .btn-fotos-mobile,
html.layout-movil-forzado .pagina-solicitudes-reparacion .btn-editar-fotos.btn-fotos-mobile {
    margin: 0 !important;
    width: 100% !important;
}

html.layout-movil-forzado .pagina-solicitudes-reparacion .btn-ver-fotos-inicio.btn-fotos-mobile:not(.oculto-sin-fotos) {
    min-height: 36px !important;
    padding: 7px 8px !important;
    font-size: 12px !important;
}

html.layout-movil-forzado .pagina-solicitudes-reparacion .btn-ver-fotos-inicio.btn-fotos-mobile .foto-label {
    font-size: 11px !important;
}

html.layout-movil-forzado .pagina-solicitudes-reparacion .btn-editar-fotos.btn-fotos-mobile {
    font-size: 11px !important;
    padding: 6px 8px !important;
    min-height: 32px !important;
}

html.layout-movil-forzado .pagina-solicitudes-reparacion .btn-eliminar {
    font-size: 14px !important;
}

html.layout-movil-forzado .pagina-solicitudes-reparacion th:last-child,
html.layout-movil-forzado .pagina-solicitudes-reparacion td:last-child {
    width: 44px !important;
    min-width: 44px !important;
    padding: 4px 2px !important;
}

/* Filtros desplegables (concluidas / expres): táctiles en móvil y app */
html.layout-movil-forzado .advanced-filters .filter-group select {
    touch-action: manipulation;
    pointer-events: auto;
    min-height: 44px !important;
    font-size: 15px !important;
    padding: 10px 12px !important;
}

html.layout-movil-forzado .advanced-filters .filters-grid {
    grid-template-columns: 1fr !important;
    gap: 10px !important;
}

/* En móvil solo .expanded abre/cierra (evita menú pegado por :hover táctil) */
html.layout-movil-forzado .floating-nav-bar:not(.expanded) .nav-content,
html.layout-movil-forzado .floating-nav-bar:not(.expanded):hover .nav-content {
    display: none !important;
    max-height: 0 !important;
    overflow: hidden !important;
    padding: 0 !important;
}

html.layout-movil-forzado .floating-nav-bar.expanded .nav-content {
    display: block !important;
    max-height: 58vh !important;
    overflow-y: auto !important;
    -webkit-overflow-scrolling: touch !important;
}

/* ── App Android: mismo zoom visual que Chrome móvil en cada pantalla ── */

/* Welcome PRO navegador: html zoom 1 + #zoom-wrapper 0.85 → app usa initial-scale 0.85 */
html.app-nativa-capacitor.app-en-welcome.app-welcome-pro #zoom-wrapper {
    zoom: 1 !important;
    width: 100% !important;
    max-width: 100% !important;
}

/* Welcome Simple navegador: form-container zoom 0.85 */
html.app-nativa-capacitor.app-en-welcome.app-welcome-simple .form-container,
html.app-nativa-capacitor.app-en-welcome body.mode-simple .form-container {
    zoom: 0.85 !important;
}

/* App: escala por viewport; reparaciones / verificaciones / info-detallada / gestionar-usuarios / base-refacciones / ordenes / inventario / agregar-servicio usan transform */
html.app-nativa-capacitor.layout-movil-forzado:not(.app-en-welcome):not(.app-en-reparaciones):not(.app-en-verificaciones):not(.app-en-info-detallada):not(.app-en-gestionar-usuarios):not(.app-en-base-refacciones):not(.app-en-ordenes):not(.app-en-agregar-servicio):not(.app-en-inventario):not(.app-en-agregar-refaccion):not(.app-en-stock) {
    zoom: 1 !important;
    -webkit-text-size-adjust: 100%;
    text-size-adjust: 100%;
}

/*
 * Reparaciones concluidas (app): modal "Oprime para ver detalles".
 * El JS mueve el modal a <body>; aquí se asegura full-viewport y por encima del scale.
 */
html.app-nativa-capacitor.app-en-reparaciones #detalleConcluidaModal,
html.app-nativa-capacitor #detalleConcluidaModal.modal-trabajo {
    position: fixed !important;
    left: 0 !important;
    top: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    width: 100vw !important;
    height: 100vh !important;
    height: 100dvh !important;
    max-width: none !important;
    max-height: none !important;
    margin: 0 !important;
    transform: none !important;
    zoom: 1 !important;
    z-index: 2147483000 !important;
    align-items: center !important;
    justify-content: center !important;
    pointer-events: auto !important;
    overflow: auto !important;
    -webkit-overflow-scrolling: touch !important;
    background-color: rgba(0, 0, 0, 0.95) !important;
}

html.app-nativa-capacitor.app-en-reparaciones #detalleConcluidaModal .modal-content,
html.app-nativa-capacitor #detalleConcluidaModal .detalle-modal-content {
    position: relative !important;
    z-index: 2 !important;
    max-width: min(720px, 94vw) !important;
    width: 94vw !important;
    max-height: 88vh !important;
    max-height: 88dvh !important;
    overflow-y: auto !important;
    -webkit-overflow-scrolling: touch !important;
    pointer-events: auto !important;
    transform: none !important;
    zoom: 1 !important;
}

html.app-nativa-capacitor.app-en-reparaciones #detallePhotoLightbox,
html.app-nativa-capacitor.app-en-reparaciones #historialChatModal,
html.app-nativa-capacitor.app-en-reparaciones #fotosFinalModal,
html.app-nativa-capacitor.app-en-reparaciones #fotosInicioConcluidaModal,
html.app-nativa-capacitor.app-en-reparaciones #photoLightboxModal,
html.app-nativa-capacitor.app-en-reparaciones #trabajoModal,
html.app-nativa-capacitor.app-en-reparaciones #editarConcluidaModal {
    position: fixed !important;
    z-index: 2147483001 !important;
    transform: none !important;
    zoom: 1 !important;
    pointer-events: auto !important;
}

/* Reparaciones + Verificaciones + Info detallada + Gestionar usuarios + Base refacciones + Órdenes + Agregar servicio + Inventario app: viewport 1.0 + scale centrado */
html.app-nativa-capacitor.app-en-reparaciones,
html.app-nativa-capacitor.app-en-reparaciones body,
html.app-nativa-capacitor.app-en-verificaciones,
html.app-nativa-capacitor.app-en-verificaciones body,
html.app-nativa-capacitor.app-en-info-detallada,
html.app-nativa-capacitor.app-en-info-detallada body,
html.app-nativa-capacitor.app-en-gestionar-usuarios,
html.app-nativa-capacitor.app-en-gestionar-usuarios body,
html.app-nativa-capacitor.app-en-base-refacciones,
html.app-nativa-capacitor.app-en-base-refacciones body,
html.app-nativa-capacitor.app-en-ordenes,
html.app-nativa-capacitor.app-en-ordenes body,
html.app-nativa-capacitor.app-en-agregar-servicio,
html.app-nativa-capacitor.app-en-agregar-servicio body,
html.app-nativa-capacitor.app-en-inventario,
html.app-nativa-capacitor.app-en-inventario body {
    overflow-x: hidden !important;
    overflow-y: auto !important;
    max-width: 100vw !important;
    height: auto !important;
    min-height: 100% !important;
}

html.app-nativa-capacitor.app-en-reparaciones body,
html.app-nativa-capacitor.app-en-verificaciones body,
html.app-nativa-capacitor.app-en-info-detallada body,
html.app-nativa-capacitor.app-en-gestionar-usuarios body,
html.app-nativa-capacitor.app-en-base-refacciones body,
html.app-nativa-capacitor.app-en-ordenes body,
html.app-nativa-capacitor.app-en-agregar-servicio body,
html.app-nativa-capacitor.app-en-inventario body {
    overflow-y: auto !important;
    overscroll-behavior-y: auto !important;
    padding-bottom: calc(72px + env(safe-area-inset-bottom, 0px)) !important;
    -webkit-overflow-scrolling: touch !important;
    touch-action: pan-y !important;
}

html.app-nativa-capacitor.app-en-reparaciones body > .container,
html.app-nativa-capacitor.app-en-verificaciones body > .container,
html.app-nativa-capacitor.app-en-info-detallada body > .container,
html.app-nativa-capacitor.app-en-gestionar-usuarios body > .container,
html.app-nativa-capacitor.app-en-agregar-servicio body > .container,
html.app-nativa-capacitor.app-en-agregar-servicio .container,
html.app-nativa-capacitor.app-en-inventario body > .container,
html.app-nativa-capacitor.app-en-inventario .container,
html.app-nativa-capacitor.app-en-base-refacciones body > .form-container,
html.app-nativa-capacitor.app-en-ordenes body > .form-container {
    zoom: 1 !important;
    position: relative !important;
    left: 50% !important;
    width: 149.25% !important;
    max-width: 149.25% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    transform: translateX(-50%) scale(0.67) !important;
    transform-origin: top center !important;
    -webkit-text-size-adjust: 100%;
    text-size-adjust: 100%;
    box-sizing: border-box !important;
    touch-action: pan-y !important;
    pointer-events: auto !important;
}

/*
 * Verificaciones en app: mismo zoom que reparaciones, layout tipo escritorio.
 */
html.app-nativa-capacitor.app-en-verificaciones .pagina-verificaciones,
html.app-nativa-capacitor.app-en-verificaciones .pagina-verificaciones.container {
    width: 100% !important;
    max-width: 1200px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding-left: 15px !important;
    padding-right: 15px !important;
    box-sizing: border-box !important;
    transform: none !important;
    left: auto !important;
    min-height: 0 !important;
    height: auto !important;
}

html.app-nativa-capacitor.app-en-verificaciones .pagina-verificaciones h1,
html.app-nativa-capacitor.app-en-verificaciones .pagina-verificaciones .page-header-v h1 {
    font-size: 36px !important;
    line-height: 1.2 !important;
}

html.app-nativa-capacitor.app-en-verificaciones .pagina-verificaciones .section-box {
    max-width: 1100px !important;
    margin-left: auto !important;
    margin-right: auto !important;
}

html.app-nativa-capacitor.app-en-verificaciones .pagina-verificaciones .stat-card {
    min-width: 280px !important;
}

html.app-nativa-capacitor.app-en-verificaciones body > .container > .pagina-verificaciones.container {
    left: auto !important;
    width: 100% !important;
    max-width: 1200px !important;
    transform: none !important;
    margin-left: auto !important;
    margin-right: auto !important;
}

html.layout-movil-forzado .pagina-verificaciones .btn-imprimir-verificaciones,
html.layout-movil-forzado .pagina-verificaciones #btn-imprimir {
    width: min(100%, 420px);
    max-width: 100%;
    padding: 14px 18px !important;
    font-size: 17px !important;
}

html.layout-movil-forzado #modal-imprimir .print-modo-btn,
html.layout-movil-forzado #modal-imprimir .print-accion-btn {
    font-size: 14px !important;
    min-height: 56px;
}

/*
 * Info detallada de vehículo en app: mismo zoom que reparaciones/verificaciones.
 * Solo se quita min-height:100vh de la página (evita hueco vacío); html/body
 * se dejan como el resto de zoom compacto para que el deslizamiento siga vivo.
 */
html.app-nativa-capacitor.app-en-info-detallada body {
    padding-bottom: calc(72px + env(safe-area-inset-bottom, 0px)) !important;
    overscroll-behavior-y: auto !important;
    -webkit-overflow-scrolling: touch !important;
    touch-action: pan-y !important;
}

html.app-nativa-capacitor.app-en-info-detallada .pagina-info-detallada-vehiculo {
    margin: -12px auto 0 !important;
    padding: 24px 16px 24px !important;
    max-width: 1100px !important;
    width: 100% !important;
    box-sizing: border-box !important;
    /* Quitar 100vh del template: si no, sobra medio pantallazo vacío al final */
    min-height: auto !important;
    height: auto !important;
}

html.app-nativa-capacitor.app-en-info-detallada .pagina-info-detallada-vehiculo .page-header {
    margin-bottom: 24px !important;
}

html.app-nativa-capacitor.app-en-info-detallada .pagina-info-detallada-vehiculo .page-header h1 {
    font-size: 36px !important;
    line-height: 1.2 !important;
}

html.app-nativa-capacitor.app-en-info-detallada .pagina-info-detallada-vehiculo .page-header p {
    font-size: 16px !important;
}

html.app-nativa-capacitor.app-en-info-detallada .pagina-info-detallada-vehiculo .idv-filtro-placa,
html.app-nativa-capacitor.app-en-info-detallada .pagina-info-detallada-vehiculo .search-container {
    max-width: 520px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    margin-bottom: 18px !important;
}

html.app-nativa-capacitor.app-en-info-detallada .pagina-info-detallada-vehiculo #placa-input,
html.app-nativa-capacitor.app-en-info-detallada .pagina-info-detallada-vehiculo #filtro-resultados,
html.app-nativa-capacitor.app-en-info-detallada .pagina-info-detallada-vehiculo input[type="date"] {
    font-size: 15px !important;
    padding: 11px 14px !important;
}

html.app-nativa-capacitor.app-en-info-detallada .pagina-info-detallada-vehiculo .idv-acciones-top {
    flex-direction: row !important;
    flex-wrap: wrap !important;
    justify-content: center !important;
    align-items: center !important;
    gap: 12px !important;
}

html.app-nativa-capacitor.app-en-info-detallada .pagina-info-detallada-vehiculo .idv-acciones-top .btn-config {
    width: auto !important;
    max-width: none !important;
    padding: 12px 28px !important;
    font-size: 15px !important;
}

html.app-nativa-capacitor.app-en-info-detallada .pagina-info-detallada-vehiculo .idv-rango-fechas {
    flex-direction: row !important;
    flex-wrap: wrap !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 12px !important;
    margin: 18px auto !important;
    max-width: 720px !important;
}

html.app-nativa-capacitor.app-en-info-detallada .pagina-info-detallada-vehiculo .idv-rango-fechas input[type="date"] {
    width: auto !important;
    min-width: 150px !important;
}

html.app-nativa-capacitor.app-en-info-detallada .pagina-info-detallada-vehiculo .idv-rango-acciones {
    flex-direction: row !important;
    flex-wrap: wrap !important;
    justify-content: center !important;
    width: auto !important;
    gap: 10px !important;
}

html.app-nativa-capacitor.app-en-info-detallada .pagina-info-detallada-vehiculo .idv-rango-acciones .btn-config {
    width: auto !important;
    flex: 0 0 auto !important;
    max-width: none !important;
    padding: 10px 18px !important;
    font-size: 14px !important;
    line-height: 1.3 !important;
}

html.app-nativa-capacitor.app-en-info-detallada .pagina-info-detallada-vehiculo #btn-expandir-todos {
    width: auto !important;
    max-width: none !important;
    font-size: 15px !important;
    padding: 10px 20px !important;
}

html.app-nativa-capacitor.app-en-info-detallada .pagina-info-detallada-vehiculo .event-card {
    padding: 18px !important;
    margin-bottom: 18px !important;
}

html.app-nativa-capacitor.app-en-info-detallada .pagina-info-detallada-vehiculo .event-header {
    font-size: 17px !important;
    line-height: 1.35 !important;
}

html.app-nativa-capacitor.app-en-info-detallada .pagina-info-detallada-vehiculo .event-content p {
    font-size: 15px !important;
}

html.app-nativa-capacitor.app-en-info-detallada .pagina-info-detallada-vehiculo .table-responsive {
    margin-left: 0 !important;
    margin-right: 0 !important;
}

html.app-nativa-capacitor.app-en-info-detallada .pagina-info-detallada-vehiculo .idv-tabla-detalles {
    min-width: 520px !important;
    font-size: 14px !important;
}

html.app-nativa-capacitor.app-en-info-detallada .pagina-info-detallada-vehiculo .idv-tabla-detalles th,
html.app-nativa-capacitor.app-en-info-detallada .pagina-info-detallada-vehiculo .idv-tabla-detalles td {
    padding: 10px 8px !important;
}

html.app-nativa-capacitor.app-en-info-detallada .pagina-info-detallada-vehiculo .idv-totales-grid {
    grid-template-columns: repeat(3, 1fr) !important;
    gap: 16px !important;
}

html.app-nativa-capacitor.app-en-info-detallada .pagina-info-detallada-vehiculo .section {
    padding: 22px 20px !important;
}

html.app-nativa-capacitor.app-en-info-detallada .pagina-info-detallada-vehiculo .placa-sugerencias-list li {
    padding: 10px 16px !important;
    font-size: 15px !important;
}

html.app-nativa-capacitor.app-en-info-detallada .pagina-info-detallada-vehiculo .back-link {
    margin-bottom: 12px !important;
    font-size: 15px !important;
}

html.app-nativa-capacitor.app-en-info-detallada .pagina-info-detallada-vehiculo {
    padding-bottom: 16px !important;
}

/*
 * Gestionar usuarios en app: mismo zoom que reparaciones (viewport 1.0 + scale 0.67).
 * El template ya trae layout compacto tipo escritorio; aquí solo se evita doble scale
 * en el .container anidado y se mantiene scroll usable.
 */
html.app-nativa-capacitor.app-en-gestionar-usuarios body {
    padding-bottom: calc(72px + env(safe-area-inset-bottom, 0px)) !important;
    overscroll-behavior-y: auto !important;
    -webkit-overflow-scrolling: touch !important;
    touch-action: pan-y !important;
}

html.app-nativa-capacitor.app-en-gestionar-usuarios body > .container > .container.pagina-gestionar-usuarios,
html.app-nativa-capacitor.app-en-gestionar-usuarios .container.pagina-gestionar-usuarios {
    /* Solo el body > .container lleva scale; el interior no se vuelve a escalar */
    transform: none !important;
    left: auto !important;
    position: relative !important;
    width: 100% !important;
    max-width: 100% !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding: 12px 10px 20px !important;
    box-sizing: border-box !important;
    min-height: auto !important;
    height: auto !important;
    overflow-x: auto !important;
    -webkit-overflow-scrolling: touch !important;
}

html.app-nativa-capacitor.app-en-gestionar-usuarios .pagina-gestionar-usuarios .page-header h1 {
    font-size: 24px !important;
    line-height: 1.2 !important;
}

html.app-nativa-capacitor.app-en-gestionar-usuarios .pagina-gestionar-usuarios .table-container {
    overflow-x: auto !important;
    -webkit-overflow-scrolling: touch !important;
    width: 100% !important;
}

html.app-nativa-capacitor.app-en-gestionar-usuarios .pagina-gestionar-usuarios table.tabla-usuarios {
    width: 100% !important;
    min-width: 0 !important;
    table-layout: fixed !important;
}

html.app-nativa-capacitor.app-en-gestionar-usuarios .pagina-gestionar-usuarios .btn-primary,
html.app-nativa-capacitor.app-en-gestionar-usuarios .pagina-gestionar-usuarios .btn-secondary {
    display: inline-block !important;
    margin-bottom: 6px !important;
}

/*
 * Base de refacciones en app: mismo zoom que reparaciones/verificaciones
 * (viewport 1.0 + scale 0.67 en .form-container).
 * Anula media queries del template (max-width 768) para layout tipo escritorio.
 */
html.app-nativa-capacitor.app-en-base-refacciones body {
    padding-bottom: calc(72px + env(safe-area-inset-bottom, 0px)) !important;
    overscroll-behavior-y: auto !important;
    -webkit-overflow-scrolling: touch !important;
    touch-action: pan-y !important;
}

/* Fuente profesional unificada en app (refuerzo) */
html.app-nativa-capacitor.app-en-base-refacciones body.pagina-base-refacciones,
html.app-nativa-capacitor.app-en-base-refacciones body.pagina-base-refacciones *:not(i):not([class*="fa-"]):not(.fa) {
    font-family: "Arial Black", "Arial Bold", Arial, Helvetica, sans-serif !important;
    font-style: normal !important;
}

/* Código / nombre / existencia: blanco + contorno negro (app) */
html.app-nativa-capacitor.app-en-base-refacciones #tabla_refacciones td.col-codigo,
html.app-nativa-capacitor.app-en-base-refacciones #tabla_refacciones td.col-nombre,
html.app-nativa-capacitor.app-en-base-refacciones #tabla_refacciones td.col-existencia {
    color: #ffffff !important;
    -webkit-text-stroke: 0.65px #000000 !important;
    paint-order: stroke fill;
    text-shadow:
        -1px -1px 0 #000000,
         1px -1px 0 #000000,
        -1px  1px 0 #000000,
         1px  1px 0 #000000,
         0 0 1px #000000 !important;
}

html.app-nativa-capacitor.app-en-base-refacciones .form-container {
    /* El scale lo aplica la regla compartida (width 149.25% + scale 0.67) */
    max-width: 149.25% !important;
    margin-top: 12px !important;
    margin-bottom: 0 !important;
    padding: 12px 14px 20px !important;
    box-sizing: border-box !important;
}

html.app-nativa-capacitor.app-en-base-refacciones .form-container h1 {
    font-size: 28px !important;
    line-height: 1.2 !important;
    text-align: center !important;
    margin: 8px 0 16px !important;
}

/* Form agregar: fila horizontal como en PC (no columna del @media 768) */
html.app-nativa-capacitor.app-en-base-refacciones .add-form-horizontal {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: wrap !important;
    justify-content: center !important;
    align-items: center !important;
    gap: 10px !important;
    padding: 0 !important;
}

html.app-nativa-capacitor.app-en-base-refacciones .add-form-horizontal input {
    width: 200px !important;
    max-width: 200px !important;
    padding: 8px !important;
    font-size: 14px !important;
}

html.app-nativa-capacitor.app-en-base-refacciones .add-form-horizontal button {
    width: auto !important;
    max-width: none !important;
    padding: 8px 16px !important;
    font-size: 14px !important;
}

html.app-nativa-capacitor.app-en-base-refacciones .upload-form {
    display: block !important;
    text-align: center !important;
}

html.app-nativa-capacitor.app-en-base-refacciones .upload-form input[type="file"],
html.app-nativa-capacitor.app-en-base-refacciones .upload-form button {
    width: auto !important;
    max-width: none !important;
    padding: 8px 12px !important;
    font-size: 14px !important;
}

html.app-nativa-capacitor.app-en-base-refacciones .search-container {
    text-align: center !important;
    margin: 12px 0 !important;
}

html.app-nativa-capacitor.app-en-base-refacciones #buscar_refaccion {
    width: 400px !important;
    max-width: 90% !important;
    padding: 8px !important;
    font-size: 15px !important;
    box-sizing: border-box !important;
}

html.app-nativa-capacitor.app-en-base-refacciones #tabla_refacciones {
    width: 100% !important;
    border-collapse: collapse !important;
    table-layout: auto !important;
}

/* Celdas de tabla como escritorio (el template en móvil las pone display:flex) */
html.app-nativa-capacitor.app-en-base-refacciones #tabla_refacciones th,
html.app-nativa-capacitor.app-en-base-refacciones #tabla_refacciones td {
    display: table-cell !important;
    font-size: 14px !important;
    padding: 8px !important;
    text-align: center !important;
    vertical-align: middle !important;
    flex-direction: unset !important;
    gap: unset !important;
    align-items: unset !important;
}

html.app-nativa-capacitor.app-en-base-refacciones #tabla_refacciones th:nth-child(1),
html.app-nativa-capacitor.app-en-base-refacciones #tabla_refacciones td:nth-child(1) {
    display: none !important;
}

html.app-nativa-capacitor.app-en-base-refacciones .btn-editar,
html.app-nativa-capacitor.app-en-base-refacciones .link-eliminar {
    display: inline-block !important;
    width: auto !important;
    font-size: 13px !important;
    padding: 6px 10px !important;
    min-height: 0 !important;
    margin: 2px !important;
}

html.app-nativa-capacitor.app-en-base-refacciones .permisos-base-btn {
    font-size: 14px !important;
    padding: 10px 18px !important;
    max-width: none !important;
}

html.app-nativa-capacitor.app-en-base-refacciones .modal-content {
    width: auto !important;
    max-width: 420px !important;
    padding: 20px !important;
}

/*
 * Órdenes (Ver Órdenes /ordenes) en app: mismo zoom que reparaciones/base-refacciones
 * (viewport 1.0 + scale 0.67 en .form-container). Solo app-nativa-capacitor.
 * Tipografía Arial Black; datos principales con relleno blanco + contorno negro.
 */
html.app-nativa-capacitor.app-en-ordenes body {
    padding-bottom: calc(72px + env(safe-area-inset-bottom, 0px)) !important;
    overscroll-behavior-y: auto !important;
    -webkit-overflow-scrolling: touch !important;
    touch-action: pan-y !important;
}

html.app-nativa-capacitor.app-en-ordenes .form-container,
html.app-nativa-capacitor.app-en-ordenes .form-container *:not(i):not([class*="fa-"]):not(.fa) {
    font-family: "Arial Black", "Arial Bold", Arial, Helvetica, sans-serif !important;
    font-style: normal !important;
}

html.app-nativa-capacitor.app-en-ordenes .form-container {
    max-width: 149.25% !important;
    margin-top: 12px !important;
    margin-bottom: 0 !important;
    padding: 12px 14px 20px !important;
    box-sizing: border-box !important;
}

html.app-nativa-capacitor.app-en-ordenes .form-container .bienvenida,
html.app-nativa-capacitor.app-en-ordenes .form-container h1 {
    font-family: "Arial Black", "Arial Bold", Arial, Helvetica, sans-serif !important;
    font-size: 28px !important;
    line-height: 1.2 !important;
    text-align: center !important;
    margin: 8px 0 14px !important;
}

html.app-nativa-capacitor.app-en-ordenes .search-container {
    width: 100% !important;
    max-width: 420px !important;
    display: inline-block !important;
    box-sizing: border-box !important;
}

html.app-nativa-capacitor.app-en-ordenes #buscar_ordenes,
html.app-nativa-capacitor.app-en-ordenes #buscar_ordenes_principal,
html.app-nativa-capacitor.app-en-ordenes #buscar_orden_id {
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
    font-family: "Arial Black", "Arial Bold", Arial, Helvetica, sans-serif !important;
    font-size: 15px !important;
}

html.app-nativa-capacitor.app-en-ordenes #btn-ordenes-por-fecha,
html.app-nativa-capacitor.app-en-ordenes #btn-volver-menu-principal,
html.app-nativa-capacitor.app-en-ordenes #btn-cerrar-ordenes-fecha,
html.app-nativa-capacitor.app-en-ordenes .btn-volver,
html.app-nativa-capacitor.app-en-ordenes .btn-ir-orden,
html.app-nativa-capacitor.app-en-ordenes button,
html.app-nativa-capacitor.app-en-ordenes select,
html.app-nativa-capacitor.app-en-ordenes label,
html.app-nativa-capacitor.app-en-ordenes small {
    font-family: "Arial Black", "Arial Bold", Arial, Helvetica, sans-serif !important;
}

html.app-nativa-capacitor.app-en-ordenes .placa-carpeta {
    font-family: "Arial Black", "Arial Bold", Arial, Helvetica, sans-serif !important;
    font-size: 20px !important;
    min-width: 180px !important;
    color: #ffffff !important;
    -webkit-text-stroke: 0.65px #000000 !important;
    paint-order: stroke fill;
    text-shadow:
        -1px -1px 0 #000000,
         1px -1px 0 #000000,
        -1px  1px 0 #000000,
         1px  1px 0 #000000,
         0 0 1px #000000 !important;
}

html.app-nativa-capacitor.app-en-ordenes .placa-carpeta small {
    color: #ffffff !important;
    -webkit-text-stroke: 0.45px #000000 !important;
    text-shadow:
        -1px -1px 0 #000000,
         1px -1px 0 #000000,
        -1px  1px 0 #000000,
         1px  1px 0 #000000 !important;
}

/* Tabla al abrir una placa: anchos legibles + scroll para ver Acción completa */
html.app-nativa-capacitor.app-en-ordenes #vista-ordenes,
html.app-nativa-capacitor.app-en-ordenes #contenido-ordenes {
    width: 100% !important;
    max-width: 100% !important;
    overflow-x: auto !important;
    -webkit-overflow-scrolling: touch !important;
    box-sizing: border-box !important;
}

html.app-nativa-capacitor.app-en-ordenes #tabla_ordenes {
    width: max-content !important;
    min-width: 100% !important;
    max-width: none !important;
    border-collapse: collapse !important;
    table-layout: fixed !important;
}

html.app-nativa-capacitor.app-en-ordenes #tabla_ordenes th,
html.app-nativa-capacitor.app-en-ordenes #tabla_ordenes td {
    display: table-cell !important;
    font-family: "Arial Black", "Arial Bold", Arial, Helvetica, sans-serif !important;
    font-size: 13px !important;
    padding: 6px 8px !important;
    text-align: center !important;
    vertical-align: middle !important;
    white-space: normal !important;
    word-break: break-word !important;
    overflow-wrap: anywhere !important;
    line-height: 1.25 !important;
}

/* Anchos por columna (sin ID): Placa | Mecánico | Fecha | Notas | Estado | Devs | Acción */
html.app-nativa-capacitor.app-en-ordenes #tabla_ordenes th:nth-child(1),
html.app-nativa-capacitor.app-en-ordenes #tabla_ordenes td:nth-child(1) { width: 88px !important; min-width: 88px !important; }
html.app-nativa-capacitor.app-en-ordenes #tabla_ordenes th:nth-child(2),
html.app-nativa-capacitor.app-en-ordenes #tabla_ordenes td:nth-child(2) { width: 120px !important; min-width: 120px !important; }
html.app-nativa-capacitor.app-en-ordenes #tabla_ordenes th:nth-child(3),
html.app-nativa-capacitor.app-en-ordenes #tabla_ordenes td:nth-child(3) { width: 150px !important; min-width: 140px !important; }
html.app-nativa-capacitor.app-en-ordenes #tabla_ordenes th:nth-child(4),
html.app-nativa-capacitor.app-en-ordenes #tabla_ordenes td:nth-child(4) { width: 100px !important; min-width: 90px !important; }
html.app-nativa-capacitor.app-en-ordenes #tabla_ordenes th:nth-child(5),
html.app-nativa-capacitor.app-en-ordenes #tabla_ordenes td:nth-child(5) { width: 90px !important; min-width: 80px !important; }
html.app-nativa-capacitor.app-en-ordenes #tabla_ordenes th:nth-child(6),
html.app-nativa-capacitor.app-en-ordenes #tabla_ordenes td:nth-child(6) { width: 100px !important; min-width: 90px !important; }
html.app-nativa-capacitor.app-en-ordenes #tabla_ordenes th:nth-child(7),
html.app-nativa-capacitor.app-en-ordenes #tabla_ordenes td:nth-child(7) { width: 160px !important; min-width: 150px !important; }

/* Con columna ID admin (8 cols): desplazar un poco */
html.app-nativa-capacitor.app-en-ordenes #tabla_ordenes.con-id th:nth-child(1),
html.app-nativa-capacitor.app-en-ordenes #tabla_ordenes.con-id td:nth-child(1) { width: 52px !important; min-width: 52px !important; }
html.app-nativa-capacitor.app-en-ordenes #tabla_ordenes.con-id th:nth-child(2),
html.app-nativa-capacitor.app-en-ordenes #tabla_ordenes.con-id td:nth-child(2) { width: 88px !important; min-width: 88px !important; }
html.app-nativa-capacitor.app-en-ordenes #tabla_ordenes.con-id th:nth-child(3),
html.app-nativa-capacitor.app-en-ordenes #tabla_ordenes.con-id td:nth-child(3) { width: 110px !important; min-width: 110px !important; }
html.app-nativa-capacitor.app-en-ordenes #tabla_ordenes.con-id th:nth-child(4),
html.app-nativa-capacitor.app-en-ordenes #tabla_ordenes.con-id td:nth-child(4) { width: 150px !important; min-width: 140px !important; }
html.app-nativa-capacitor.app-en-ordenes #tabla_ordenes.con-id th:nth-child(5),
html.app-nativa-capacitor.app-en-ordenes #tabla_ordenes.con-id td:nth-child(5) { width: 90px !important; min-width: 80px !important; }
html.app-nativa-capacitor.app-en-ordenes #tabla_ordenes.con-id th:nth-child(6),
html.app-nativa-capacitor.app-en-ordenes #tabla_ordenes.con-id td:nth-child(6) { width: 80px !important; min-width: 70px !important; }
html.app-nativa-capacitor.app-en-ordenes #tabla_ordenes.con-id th:nth-child(7),
html.app-nativa-capacitor.app-en-ordenes #tabla_ordenes.con-id td:nth-child(7) { width: 90px !important; min-width: 80px !important; }
html.app-nativa-capacitor.app-en-ordenes #tabla_ordenes.con-id th:nth-child(8),
html.app-nativa-capacitor.app-en-ordenes #tabla_ordenes.con-id td:nth-child(8) { width: 160px !important; min-width: 150px !important; }

html.app-nativa-capacitor.app-en-ordenes #tabla_ordenes td a,
html.app-nativa-capacitor.app-en-ordenes #tabla_ordenes td button {
    display: inline-block !important;
    margin: 2px 3px !important;
    white-space: nowrap !important;
    font-size: 12px !important;
}

/* Datos de fila: blanco por dentro + contorno negro (placa, mecánico, fecha, notas, estado; + id) */
html.app-nativa-capacitor.app-en-ordenes #tabla_ordenes td.col-orden-id,
html.app-nativa-capacitor.app-en-ordenes #tabla_ordenes td.col-orden-placa,
html.app-nativa-capacitor.app-en-ordenes #tabla_ordenes td.col-orden-mecanico,
html.app-nativa-capacitor.app-en-ordenes #tabla_ordenes td.col-orden-fecha,
html.app-nativa-capacitor.app-en-ordenes #tabla_ordenes td.col-orden-notas,
html.app-nativa-capacitor.app-en-ordenes #tabla_ordenes td.col-orden-estado,
html.app-nativa-capacitor.app-en-ordenes #lista-ordenes-fecha td.col-orden-id,
html.app-nativa-capacitor.app-en-ordenes #lista-ordenes-fecha td.col-orden-placa,
html.app-nativa-capacitor.app-en-ordenes #lista-ordenes-fecha td.col-orden-mecanico,
html.app-nativa-capacitor.app-en-ordenes #lista-ordenes-fecha td.col-orden-fecha,
html.app-nativa-capacitor.app-en-ordenes #lista-ordenes-fecha td.col-orden-notas,
html.app-nativa-capacitor.app-en-ordenes #lista-ordenes-fecha td.col-orden-estado {
    color: #ffffff !important;
    -webkit-text-stroke: 0.7px #000000 !important;
    paint-order: stroke fill;
    text-shadow:
        -1px -1px 0 #000000,
         1px -1px 0 #000000,
        -1px  1px 0 #000000,
         1px  1px 0 #000000,
        -1.5px 0 0 #000000,
         1.5px 0 0 #000000,
         0 -1.5px 0 #000000,
         0  1.5px 0 #000000,
         0 0 1px #000000 !important;
    background-color: rgba(0, 0, 0, 0.45) !important;
}

html.app-nativa-capacitor.app-en-ordenes #resultados-busqueda-refaccion,
html.app-nativa-capacitor.app-en-ordenes #resultados-busqueda-refaccion h3,
html.app-nativa-capacitor.app-en-ordenes #resultados-busqueda-refaccion li {
    font-family: "Arial Black", "Arial Bold", Arial, Helvetica, sans-serif !important;
}

/* Agregar servicio: scroll usable sin sobrante excesivo abajo */
html.app-nativa-capacitor.app-en-agregar-servicio,
html.app-nativa-capacitor.app-en-agregar-servicio body {
    position: relative !important;
    overflow-y: scroll !important;
}

html.app-nativa-capacitor.app-en-agregar-servicio body {
    padding-bottom: calc(64px + env(safe-area-inset-bottom, 0px)) !important;
}

/* Botón Empezar de Nuevo más pequeño (solo APK) */
html.app-nativa-capacitor.app-en-agregar-servicio .btn-empezar-de-nuevo {
    padding: 3px 8px !important;
    font-size: 10px !important;
    line-height: 1.2 !important;
    border-radius: 6px !important;
    min-height: 0 !important;
    font-weight: 600 !important;
}

/* ═══════════════════════════════════════════════════════════════
   APK — Agregar refacción (solo app-nativa) ar6
   Contenedor blanco: 4 codigos iguales iz-der, todo dentro,
   foto/agregar/limpiar centrados; sin barra verde
   ═══════════════════════════════════════════════════════════════ */
html.app-nativa-capacitor.app-en-agregar-refaccion,
html.app-nativa-capacitor.app-en-agregar-refaccion body {
    overflow-x: hidden !important;
    overflow-y: auto !important;
    max-width: 100vw !important;
    height: auto !important;
    min-height: 100% !important;
}

html.app-nativa-capacitor.app-en-agregar-refaccion body {
    overscroll-behavior-y: auto !important;
    padding-bottom: calc(110px + env(safe-area-inset-bottom, 0px)) !important;
    -webkit-overflow-scrolling: touch !important;
}

html.app-nativa-capacitor.app-en-agregar-refaccion .form-container {
    zoom: 1 !important;
    position: relative !important;
    left: auto !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 6px auto 12px !important;
    transform: none !important;
    padding: 10px 8px 14px !important;
    box-sizing: border-box !important;
    overflow-x: hidden !important;
}

html.app-nativa-capacitor.app-en-agregar-refaccion .form-container.ar-historial-section {
    margin: 4px auto 24px !important;
    padding: 8px 8px 16px !important;
}

html.app-nativa-capacitor.app-en-agregar-refaccion h1 {
    font-size: 20px !important;
    margin: 2px 0 6px !important;
}

/* Banner solo lectura: texto negro profesional + contorno blanco */
html.app-nativa-capacitor.app-en-agregar-refaccion .banner-solo-lectura {
    color: #0f172a !important;
    font-family: system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif !important;
    font-size: 13px !important;
    font-weight: 500 !important;
    line-height: 1.4 !important;
    background: #f8fafc !important;
    border: 2px solid #ffffff !important;
    box-shadow: 0 0 0 1px rgba(15, 23, 42, 0.12), 0 2px 8px rgba(0, 0, 0, 0.12) !important;
    text-shadow:
        -1px -1px 0 #fff,
         1px -1px 0 #fff,
        -1px  1px 0 #fff,
         1px  1px 0 #fff !important;
    border-radius: 10px !important;
    padding: 10px 12px !important;
}
html.app-nativa-capacitor.app-en-agregar-refaccion .banner-solo-lectura strong {
    color: #0f172a !important;
    font-weight: 700 !important;
    font-size: 13px !important;
    text-shadow:
        -1px -1px 0 #fff,
         1px -1px 0 #fff,
        -1px  1px 0 #fff,
         1px  1px 0 #fff !important;
}

/* Etiquetas de campos: negro profesional + contorno blanco */
html.app-nativa-capacitor.app-en-agregar-refaccion .campo label,
html.app-nativa-capacitor.app-en-agregar-refaccion .campo.cod1-wrapper > label,
html.app-nativa-capacitor.app-en-agregar-refaccion .cod1-wrapper > label,
html.app-nativa-capacitor.app-en-agregar-refaccion .entrada-refaccion > div:nth-child(6)::before,
html.app-nativa-capacitor.app-en-agregar-refaccion .encabezado,
html.app-nativa-capacitor.app-en-agregar-refaccion .encabezado div {
    color: #0f172a !important;
    font-family: system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif !important;
    font-weight: 600 !important;
    text-shadow:
        -1px -1px 0 #fff,
         1px -1px 0 #fff,
        -1px  1px 0 #fff,
         1px  1px 0 #fff,
         0 0 2px #fff !important;
}

html.app-nativa-capacitor.app-en-agregar-refaccion .encabezado {
    display: none !important;
    visibility: hidden !important;
    height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
    border: none !important;
}

html.app-nativa-capacitor.app-en-agregar-refaccion .instrucciones {
    display: none !important;
}

/* Contenedor blanco */
html.app-nativa-capacitor.app-en-agregar-refaccion .entrada-refaccion {
    display: grid !important;
    flex-direction: unset !important;
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    gap: 8px 6px !important;
    align-items: end !important;
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
    overflow: hidden !important;
    padding: 14px 10px 12px 10px !important;
    margin: 0 0 12px 0 !important;
    min-height: 0 !important;
    border-radius: 12px !important;
    box-shadow: 0 2px 8px rgba(0,0,0,0.14) !important;
    background: #fff !important;
    border: 1px solid #e2e8f0 !important;
}

html.app-nativa-capacitor.app-en-agregar-refaccion .entrada-refaccion .contador {
    position: absolute !important;
    top: 6px !important;
    left: 8px !important;
    width: 18px !important;
    height: 18px !important;
    font-size: 11px !important;
    padding: 0 !important;
    margin: 0 !important;
    background: #f1f5f9 !important;
    color: #166534 !important;
    box-shadow: none !important;
    z-index: 2 !important;
}

/* Cod 1 + camara | Cod 2 | Cod 3 | Cod 4 — celdas del mismo ancho */
html.app-nativa-capacitor.app-en-agregar-refaccion .campo.cod1-wrapper,
html.app-nativa-capacitor.app-en-agregar-refaccion .cod1-wrapper {
    grid-column: 1 !important;
    grid-row: 1 !important;
    display: flex !important;
    flex-direction: column !important;
    flex-wrap: nowrap !important;
    align-items: stretch !important;
    gap: 2px !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
    position: relative !important;
}

html.app-nativa-capacitor.app-en-agregar-refaccion .campo.cod1-wrapper > label,
html.app-nativa-capacitor.app-en-agregar-refaccion .cod1-wrapper > label {
    display: block !important;
    order: 0 !important;
    font-size: 10px !important;
    font-weight: 600 !important;
    color: #0f172a !important;
}

html.app-nativa-capacitor.app-en-agregar-refaccion .cod1-input-row {
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    gap: 4px !important;
    width: 100% !important;
    min-width: 0 !important;
}

html.app-nativa-capacitor.app-en-agregar-refaccion .campo.cod1-wrapper > .btn-escanear-cod,
html.app-nativa-capacitor.app-en-agregar-refaccion .cod1-wrapper > .btn-escanear-cod,
html.app-nativa-capacitor.app-en-agregar-refaccion .entrada-refaccion .btn-escanear-cod {
    position: static !important;
    transform: none !important;
    order: 1 !important;
    width: 32px !important;
    min-width: 32px !important;
    height: 32px !important;
    margin: 0 !important;
    padding: 0 !important;
    border-radius: 7px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    font-size: 15px !important;
    background: #00ffff !important;
    color: #000 !important;
    box-shadow: 0 1px 4px rgba(0, 255, 255, 0.4) !important;
    flex-shrink: 0 !important;
}

html.app-nativa-capacitor.app-en-agregar-refaccion .campo.cod1-wrapper > input,
html.app-nativa-capacitor.app-en-agregar-refaccion .cod1-wrapper > input {
    order: 2 !important;
    flex: 1 1 auto !important;
    width: auto !important;
    min-width: 0 !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
    height: 32px !important;
    padding: 4px 5px !important;
}

/* Hacer fila camara+input en cod1 */
html.app-nativa-capacitor.app-en-agregar-refaccion .campo.cod1-wrapper,
html.app-nativa-capacitor.app-en-agregar-refaccion .cod1-wrapper {
    display: grid !important;
    grid-template-columns: 32px minmax(0, 1fr) !important;
    grid-template-rows: auto auto !important;
    column-gap: 4px !important;
    row-gap: 2px !important;
    align-items: center !important;
}
html.app-nativa-capacitor.app-en-agregar-refaccion .campo.cod1-wrapper > label,
html.app-nativa-capacitor.app-en-agregar-refaccion .cod1-wrapper > label {
    grid-column: 1 / -1 !important;
    grid-row: 1 !important;
}
html.app-nativa-capacitor.app-en-agregar-refaccion .campo.cod1-wrapper > .btn-escanear-cod,
html.app-nativa-capacitor.app-en-agregar-refaccion .cod1-wrapper > .btn-escanear-cod {
    grid-column: 1 !important;
    grid-row: 2 !important;
}
html.app-nativa-capacitor.app-en-agregar-refaccion .campo.cod1-wrapper > input,
html.app-nativa-capacitor.app-en-agregar-refaccion .cod1-wrapper > input {
    grid-column: 2 !important;
    grid-row: 2 !important;
    width: 100% !important;
}

html.app-nativa-capacitor.app-en-agregar-refaccion .entrada-refaccion > .campo:nth-child(3) {
    grid-column: 2 !important;
    grid-row: 1 !important;
}
html.app-nativa-capacitor.app-en-agregar-refaccion .entrada-refaccion > .campo:nth-child(4) {
    grid-column: 3 !important;
    grid-row: 1 !important;
}
html.app-nativa-capacitor.app-en-agregar-refaccion .entrada-refaccion > .campo:nth-child(5) {
    grid-column: 4 !important;
    grid-row: 1 !important;
}

/* Nombre dentro del blanco, 100% */
/* Nombre = hijo 6 (no el bloque de botones final) */
html.app-nativa-capacitor.app-en-agregar-refaccion .entrada-refaccion > div:nth-child(6) {
    grid-column: 1 / -1 !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    box-sizing: border-box !important;
    overflow: hidden !important;
}

html.app-nativa-capacitor.app-en-agregar-refaccion .entrada-refaccion > div:nth-child(6)::before {
    content: 'Nombre de la refacción *';
    display: block !important;
    font-size: 10px !important;
    font-weight: 600 !important;
    color: #0f172a !important;
    margin: 2px 0 2px 2px !important;
}

html.app-nativa-capacitor.app-en-agregar-refaccion .entrada-refaccion input.autocompletar-nombre {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    box-sizing: border-box !important;
    font-size: 13px !important;
    font-weight: 700 !important;
    height: 38px !important;
    padding: 6px 8px !important;
}

html.app-nativa-capacitor.app-en-agregar-refaccion .nueva-refaccion-msg {
    font-size: 10px !important;
    margin-top: 2px !important;
    max-width: 100% !important;
}

/* Cantidad | Costo | Marca | Unidad | Fecha | Proveedor — 2 por fila */
html.app-nativa-capacitor.app-en-agregar-refaccion .entrada-refaccion > .campo:nth-child(7),
html.app-nativa-capacitor.app-en-agregar-refaccion .entrada-refaccion > .campo:nth-child(9),
html.app-nativa-capacitor.app-en-agregar-refaccion .entrada-refaccion > .campo:nth-child(11) {
    grid-column: 1 / 3 !important;
}
html.app-nativa-capacitor.app-en-agregar-refaccion .entrada-refaccion > .campo:nth-child(8),
html.app-nativa-capacitor.app-en-agregar-refaccion .entrada-refaccion > .campo:nth-child(10),
html.app-nativa-capacitor.app-en-agregar-refaccion .entrada-refaccion > .campo:nth-child(12) {
    grid-column: 3 / 5 !important;
}

html.app-nativa-capacitor.app-en-agregar-refaccion .campo {
    display: flex !important;
    flex-direction: column !important;
    flex: unset !important;
    min-width: 0 !important;
    max-width: 100% !important;
    width: 100% !important;
    box-sizing: border-box !important;
    gap: 2px !important;
    overflow: hidden !important;
}

html.app-nativa-capacitor.app-en-agregar-refaccion .campo label {
    display: block !important;
    font-size: 10px !important;
    font-weight: 600 !important;
    color: #0f172a !important;
    margin: 0 !important;
    padding: 0 2px !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
}

html.app-nativa-capacitor.app-en-agregar-refaccion .entrada-refaccion input,
html.app-nativa-capacitor.app-en-agregar-refaccion .entrada-refaccion select {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    box-sizing: border-box !important;
    font-size: 12px !important;
    height: 34px !important;
    padding: 5px 6px !important;
    border-radius: 7px !important;
}

/* Foto: icono pequeño pegado a la derecha (no tapa lo de la izq) */
html.app-nativa-capacitor.app-en-agregar-refaccion .entrada-refaccion > .foto-celda {
    grid-column: 1 / -1 !important;
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    align-items: center !important;
    justify-content: flex-end !important;
    gap: 6px !important;
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
    margin: 2px 0 0 0 !important;
    padding: 2px 0 !important;
    background: transparent !important;
    border: none !important;
    border-radius: 0 !important;
}

html.app-nativa-capacitor.app-en-agregar-refaccion .foto-preview {
    width: 28px !important;
    height: 28px !important;
    order: 1 !important;
}

html.app-nativa-capacitor.app-en-agregar-refaccion .foto-info {
    order: 0 !important;
    flex: 1 1 auto !important;
    min-width: 0 !important;
    text-align: left !important;
}

html.app-nativa-capacitor.app-en-agregar-refaccion .btn-foto {
    order: 2 !important;
    font-size: 12px !important;
    padding: 0 !important;
    width: 26px !important;
    height: 26px !important;
    min-height: 26px !important;
    min-width: 26px !important;
    max-width: 26px !important;
    flex: 0 0 26px !important;
    border-radius: 6px !important;
    margin: 0 0 0 auto !important;
    line-height: 1 !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
}

/* Agregar + Limpiar centrados dentro del blanco */
html.app-nativa-capacitor.app-en-agregar-refaccion .entrada-refaccion > div:last-child {
    grid-column: 1 / -1 !important;
    display: flex !important;
    flex-wrap: wrap !important;
    justify-content: center !important;
    align-items: center !important;
    gap: 10px !important;
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
    margin: 2px 0 0 0 !important;
    padding: 0 !important;
}

html.app-nativa-capacitor.app-en-agregar-refaccion .btn-agregar,
html.app-nativa-capacitor.app-en-agregar-refaccion .btn-limpiar {
    flex: 0 1 42% !important;
    max-width: 160px !important;
    min-height: 40px !important;
    font-size: 13px !important;
    padding: 8px 10px !important;
    border-radius: 10px !important;
}

html.app-nativa-capacitor.app-en-agregar-refaccion .btn-final {
    font-size: 15px !important;
    padding: 12px 18px !important;
    width: 90% !important;
    max-width: 360px !important;
    margin: 10px auto 8px !important;
    display: block !important;
    box-sizing: border-box !important;
}

html.app-nativa-capacitor.app-en-agregar-refaccion .factura-compartida,
html.app-nativa-capacitor.app-en-agregar-refaccion .ar-ss-section {
    margin: 14px 4px 10px !important;
    padding: 14px 12px !important;
    background: rgba(15, 23, 42, 0.65) !important;
    border: 2px dashed #64748b !important;
    border-radius: 12px !important;
    box-sizing: border-box !important;
    width: auto !important;
    max-width: 100% !important;
}

html.app-nativa-capacitor.app-en-agregar-refaccion .ar-ss-section {
    text-align: left !important;
}

html.app-nativa-capacitor.app-en-agregar-refaccion .ar-ss-section h2 {
    margin: 0 0 10px !important;
    font-size: 15px !important;
    text-align: center !important;
}

html.app-nativa-capacitor.app-en-agregar-refaccion .ss-pedido-card {
    max-width: 100% !important;
    box-sizing: border-box !important;
}

html.app-nativa-capacitor.app-en-agregar-refaccion .ss-pedido-header {
    flex-wrap: wrap !important;
    gap: 6px !important;
}

html.app-nativa-capacitor.app-en-agregar-refaccion .ss-table-wrap,
html.app-nativa-capacitor.app-en-agregar-refaccion .ss-pedido-body {
    overflow-x: auto !important;
    -webkit-overflow-scrolling: touch !important;
}

html.app-nativa-capacitor.app-en-agregar-refaccion #btn-cargar-mas-historial {
    width: 100% !important;
    max-width: 100% !important;
    margin: 8px 0 4px !important;
    box-sizing: border-box !important;
}

/* Escáner: encima de mensajería; ✕ siempre usable */
html.app-nativa-capacitor.app-en-agregar-refaccion #modal-escanear-refaccion {
    z-index: 2000000 !important;
    position: fixed !important;
    inset: 0 !important;
    transform: none !important;
    overflow: hidden !important;
    pointer-events: auto !important;
}
html.app-nativa-capacitor.app-en-agregar-refaccion #cerrar-escanear-refaccion {
    pointer-events: auto !important;
    z-index: 2000003 !important;
    position: relative !important;
    min-width: 48px !important;
    min-height: 48px !important;
    touch-action: manipulation !important;
}
html.app-nativa-capacitor.app-en-agregar-refaccion #lector-escanear-refaccion,
html.app-nativa-capacitor.app-en-agregar-refaccion #lector-escanear-refaccion video,
html.app-nativa-capacitor.app-en-agregar-refaccion #lector-escanear-refaccion canvas {
    max-width: 100% !important;
    width: 100% !important;
    box-sizing: border-box !important;
    transform: none !important;
    pointer-events: none !important;
}


/* ═══════════════════════════════════════════════════════════════
   APK — Stock: compacto estable (mismo enfoque que agregar refacción)
   viewport 1.0 fijo, sin scale que cambie al reanudar
   ═══════════════════════════════════════════════════════════════ */
html.app-nativa-capacitor.app-en-stock,
html.app-nativa-capacitor.app-en-stock body {
    overflow-x: hidden !important;
    overflow-y: auto !important;
    max-width: 100vw !important;
    height: auto !important;
    min-height: 100% !important;
    zoom: 1 !important;
    -webkit-text-size-adjust: 100% !important;
    text-size-adjust: 100% !important;
    font-family: Arial, Helvetica, sans-serif !important;
}

/* Fuente Arial profesional en todo el menú Stock (solo APK) */
html.app-nativa-capacitor.app-en-stock .form-container,
html.app-nativa-capacitor.app-en-stock .form-container *,
html.app-nativa-capacitor.app-en-stock .stock-header,
html.app-nativa-capacitor.app-en-stock .stock-header h1,
html.app-nativa-capacitor.app-en-stock .stock-header p,
html.app-nativa-capacitor.app-en-stock h1,
html.app-nativa-capacitor.app-en-stock button,
html.app-nativa-capacitor.app-en-stock input,
html.app-nativa-capacitor.app-en-stock select,
html.app-nativa-capacitor.app-en-stock a,
html.app-nativa-capacitor.app-en-stock label,
html.app-nativa-capacitor.app-en-stock p,
html.app-nativa-capacitor.app-en-stock td,
html.app-nativa-capacitor.app-en-stock th,
html.app-nativa-capacitor.app-en-stock #tabla_stock,
html.app-nativa-capacitor.app-en-stock #tabla_stock th,
html.app-nativa-capacitor.app-en-stock #tabla_stock td,
html.app-nativa-capacitor.app-en-stock #export-btn,
html.app-nativa-capacitor.app-en-stock #btn-mostrar-codigos,
html.app-nativa-capacitor.app-en-stock #export-options button,
html.app-nativa-capacitor.app-en-stock #btn-escanear,
html.app-nativa-capacitor.app-en-stock .btn-escanear-stock,
html.app-nativa-capacitor.app-en-stock #buscar_stock {
    font-family: Arial, Helvetica, sans-serif !important;
}

html.app-nativa-capacitor.app-en-stock body {
    overscroll-behavior-y: auto !important;
    padding-bottom: calc(110px + env(safe-area-inset-bottom, 0px)) !important;
    -webkit-overflow-scrolling: touch !important;
}

html.app-nativa-capacitor.app-en-stock .form-container {
    zoom: 1 !important;
    position: relative !important;
    left: auto !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 4px auto 12px !important;
    transform: none !important;
    padding: 8px 6px 12px !important;
    box-sizing: border-box !important;
    overflow-x: hidden !important;
}

html.app-nativa-capacitor.app-en-stock .stock-header {
    margin-bottom: 8px !important;
}

html.app-nativa-capacitor.app-en-stock .stock-header h1,
html.app-nativa-capacitor.app-en-stock h1 {
    font-size: 18px !important;
    margin: 2px 0 4px !important;
    line-height: 1.2 !important;
}

html.app-nativa-capacitor.app-en-stock .stock-header p,
html.app-nativa-capacitor.app-en-stock .stock-header p[style] {
    font-size: 10px !important;
    line-height: 1.25 !important;
    margin: 0 0 4px !important;
}

html.app-nativa-capacitor.app-en-stock .section-box {
    padding: 6px 4px !important;
    margin-bottom: 8px !important;
    border-radius: 10px !important;
}

/* Orden vertical app: 1) Escanear  2) campo escribir  3) Mostrar ID */
html.app-nativa-capacitor.app-en-stock .stock-busqueda-bloque {
    display: flex !important;
    flex-direction: column !important;
    align-items: stretch !important;
    gap: 8px !important;
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
    margin: 8px 0 !important;
    text-align: center !important;
}

html.app-nativa-capacitor.app-en-stock .search-wrapper {
    display: flex !important;
    flex-direction: column !important;
    align-items: stretch !important;
    gap: 8px !important;
    position: relative !important;
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
    margin: 0 !important;
    order: 1 !important;
}

/* 1) Botón escanear (arriba) */
html.app-nativa-capacitor.app-en-stock .btn-escanear-stock,
html.app-nativa-capacitor.app-en-stock #btn-escanear {
    position: static !important;
    top: auto !important;
    right: auto !important;
    left: auto !important;
    transform: none !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
    order: 1 !important;
    margin: 0 !important;
    font-size: 13px !important;
    font-family: Arial, Helvetica, sans-serif !important;
    padding: 10px 12px !important;
    min-height: 40px !important;
    border-radius: 8px !important;
    white-space: nowrap !important;
    z-index: 2 !important;
}

/* 2) Campo de escribir (en medio, entre Escanear y Mostrar ID) */
html.app-nativa-capacitor.app-en-stock .search-wrapper input,
html.app-nativa-capacitor.app-en-stock #buscar_stock {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    box-sizing: border-box !important;
    font-size: 14px !important;
    font-family: Arial, Helvetica, sans-serif !important;
    padding: 10px 12px !important;
    height: auto !important;
    min-height: 40px !important;
    border-radius: 8px !important;
    margin: 0 !important;
    order: 2 !important;
    flex: none !important;
}

/* 3) Mostrar ID (abajo del campo) */
html.app-nativa-capacitor.app-en-stock .stock-mostrar-id-wrap {
    order: 2 !important;
    margin: 0 !important;
    width: 100% !important;
    text-align: center !important;
}

html.app-nativa-capacitor.app-en-stock #btn-mostrar-codigos {
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
    margin: 0 !important;
}

html.app-nativa-capacitor.app-en-stock #no_resultados {
    order: 3 !important;
}

html.app-nativa-capacitor.app-en-stock #export-btn,
html.app-nativa-capacitor.app-en-stock #btn-mostrar-codigos,
html.app-nativa-capacitor.app-en-stock #export-options button {
    font-size: 12px !important;
    padding: 6px 12px !important;
    min-height: 32px !important;
    border-radius: 8px !important;
}

html.app-nativa-capacitor.app-en-stock #btn-mostrar-codigos {
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
    margin: 4px 0 6px !important;
}

html.app-nativa-capacitor.app-en-stock .stock-table-wrapper {
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
    overflow-x: auto !important;
    -webkit-overflow-scrolling: touch !important;
    margin: 0 !important;
    border-radius: 8px !important;
}

html.app-nativa-capacitor.app-en-stock #tabla_stock {
    min-width: 100% !important;
    width: 100% !important;
    max-width: none !important;
    font-size: 11px !important;
    table-layout: fixed !important;
}

/* App: solo Nombre | Cantidad | Unidad (ocultar Código y demás hasta que admin active “mostrar códigos”) */
html.app-nativa-capacitor.app-en-stock #tabla_stock:not(.codigos-visibles) th:nth-child(5),
html.app-nativa-capacitor.app-en-stock #tabla_stock:not(.codigos-visibles) td:nth-child(5) {
    display: none !important;
}

html.app-nativa-capacitor.app-en-stock #tabla_stock th,
html.app-nativa-capacitor.app-en-stock #tabla_stock td {
    padding: 6px 5px !important;
    font-size: 11px !important;
    line-height: 1.25 !important;
    min-width: 0 !important;
}

/* Nombre */
html.app-nativa-capacitor.app-en-stock #tabla_stock:not(.codigos-visibles) th:nth-child(6),
html.app-nativa-capacitor.app-en-stock #tabla_stock:not(.codigos-visibles) td:nth-child(6) {
    width: 58% !important;
    min-width: 0 !important;
    font-size: 12.5px !important;
    font-weight: 700 !important;
    line-height: 1.25 !important;
    text-align: left !important;
}

/* Cantidad */
html.app-nativa-capacitor.app-en-stock #tabla_stock:not(.codigos-visibles) th:nth-child(7),
html.app-nativa-capacitor.app-en-stock #tabla_stock:not(.codigos-visibles) td.cantidad-cell {
    width: 22% !important;
    min-width: 0 !important;
    max-width: none !important;
    text-align: center !important;
}

html.app-nativa-capacitor.app-en-stock #tabla_stock:not(.codigos-visibles) td.cantidad-cell {
    font-size: 15px !important;
    font-weight: 800 !important;
    padding: 5px 3px !important;
}

/* Unidad */
html.app-nativa-capacitor.app-en-stock #tabla_stock:not(.codigos-visibles) th:nth-child(8),
html.app-nativa-capacitor.app-en-stock #tabla_stock:not(.codigos-visibles) td:nth-child(8) {
    width: 12% !important;
    min-width: 0 !important;
    max-width: none !important;
    font-size: 10px !important;
    text-align: center !important;
}

/* Ubicación (desde inventario físico) */
html.app-nativa-capacitor.app-en-stock #tabla_stock:not(.codigos-visibles) th:nth-child(9),
html.app-nativa-capacitor.app-en-stock #tabla_stock:not(.codigos-visibles) td.ubicacion-cell {
    width: 18% !important;
    min-width: 0 !important;
    max-width: none !important;
    font-size: 11px !important;
    font-weight: 800 !important;
    color: #67e8f9 !important;
    text-align: center !important;
    white-space: normal !important;
}

html.app-nativa-capacitor.app-en-stock #tabla_stock:not(.codigos-visibles) th:nth-child(6),
html.app-nativa-capacitor.app-en-stock #tabla_stock:not(.codigos-visibles) td:nth-child(6) {
    width: 48% !important;
}

html.app-nativa-capacitor.app-en-stock .stock-ubicacion-badge {
    display: inline-block !important;
    margin-top: 3px !important;
    padding: 2px 7px !important;
    font-size: 11px !important;
    font-weight: 700 !important;
    color: #e0f2fe !important;
    background: rgba(14, 165, 233, 0.22) !important;
    border: 1px solid rgba(56, 189, 248, 0.45) !important;
    border-radius: 999px !important;
}

html.app-nativa-capacitor.app-en-stock #tabla_stock tr {
    min-height: 0 !important;
}

html.app-nativa-capacitor.app-en-stock .resize-handle {
    display: none !important;
}

html.app-nativa-capacitor.app-en-stock .bienvenida {
    font-size: 12px !important;
    padding: 4px !important;
}

/* Galería fotos stock: una sola imagen grande (no miniaturas enormes) */
html.app-nativa-capacitor.app-en-stock #modal-ver-foto #foto-grande {
    max-height: 58vh !important;
    max-width: 92vw !important;
    width: auto !important;
    height: auto !important;
    object-fit: contain !important;
    display: block !important;
    margin: 0 auto !important;
}
html.app-nativa-capacitor.app-en-stock #modal-ver-foto #foto-galeria-thumbs.oculta-si-una {
    display: none !important;
}
html.app-nativa-capacitor.app-en-stock #modal-ver-foto #foto-galeria-thumbs img,
html.app-nativa-capacitor.app-en-stock #modal-ver-foto #foto-galeria-thumbs .foto-thumb {
    max-width: 52px !important;
    max-height: 52px !important;
    width: 52px !important;
    height: 52px !important;
    object-fit: cover !important;
}

/* Modal resultado escaneo: nítido, Arial normal (sin blur) */
html.app-nativa-capacitor.app-en-stock #modal-resultado {
    z-index: 2000000 !important;
    background: rgba(0, 0, 0, 0.55) !important;
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
    filter: none !important;
    padding: 16px !important;
    box-sizing: border-box !important;
}

html.app-nativa-capacitor.app-en-stock #modal-resultado > div {
    background: #ffffff !important;
    border: 1px solid #cbd5e1 !important;
    border-radius: 12px !important;
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.22) !important;
    width: 92% !important;
    max-width: 360px !important;
    padding: 20px 16px 16px !important;
    text-align: left !important;
    align-items: stretch !important;
    font-family: Arial, Helvetica, sans-serif !important;
    filter: none !important;
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
    opacity: 1 !important;
}

html.app-nativa-capacitor.app-en-stock #modal-resultado h2 {
    color: #111111 !important;
    font-family: Arial, Helvetica, sans-serif !important;
    font-size: 17px !important;
    font-weight: bold !important;
    margin: 0 0 12px !important;
    padding-bottom: 10px !important;
    border-bottom: 1px solid #e5e5e5 !important;
    text-align: center !important;
    letter-spacing: normal !important;
    text-shadow: none !important;
    filter: none !important;
}

html.app-nativa-capacitor.app-en-stock #modal-resultado p {
    font-family: Arial, Helvetica, sans-serif !important;
    font-size: 14px !important;
    font-weight: normal !important;
    color: #222222 !important;
    margin: 8px 0 !important;
    line-height: 1.4 !important;
    word-break: break-word !important;
    text-shadow: none !important;
    filter: none !important;
    opacity: 1 !important;
}

html.app-nativa-capacitor.app-en-stock #resultado-codigo-escaneado {
    font-size: 13px !important;
    font-weight: normal !important;
    color: #444444 !important;
    font-family: Arial, Helvetica, sans-serif !important;
}

html.app-nativa-capacitor.app-en-stock #resultado-info-alternativo {
    font-size: 12px !important;
    font-weight: normal !important;
    color: #8a5a00 !important;
    background: #fff8e7 !important;
    border: 1px solid #e8d4a8 !important;
    border-radius: 6px !important;
    padding: 8px 10px !important;
    font-family: Arial, Helvetica, sans-serif !important;
}

html.app-nativa-capacitor.app-en-stock #resultado-nombre {
    font-size: 16px !important;
    font-weight: bold !important;
    color: #111111 !important;
    margin: 12px 0 6px !important;
    font-family: Arial, Helvetica, sans-serif !important;
}

html.app-nativa-capacitor.app-en-stock #resultado-cantidad {
    font-size: 14px !important;
    font-weight: normal !important;
    color: #111111 !important;
    font-family: Arial, Helvetica, sans-serif !important;
}

html.app-nativa-capacitor.app-en-stock #resultado-unidad {
    font-size: 14px !important;
    font-weight: normal !important;
    color: #333333 !important;
    font-family: Arial, Helvetica, sans-serif !important;
}

html.app-nativa-capacitor.app-en-stock #cerrar-resultado {
    background: #1a1a1a !important;
    color: #ffffff !important;
    border: none !important;
    border-radius: 8px !important;
    font-family: Arial, Helvetica, sans-serif !important;
    font-size: 14px !important;
    font-weight: normal !important;
    padding: 11px 20px !important;
    margin-top: 16px !important;
    width: 100% !important;
    max-width: none !important;
    box-shadow: none !important;
    cursor: pointer !important;
    text-shadow: none !important;
}

/* Botones superiores: debajo de barra de estado como en Chrome móvil */
html.layout-movil-forzado:not(.app-nativa-capacitor) .top-right-actions:not(.welcome-acciones-iconos),
html.layout-movil-forzado:not(.app-nativa-capacitor) .top-right-actions-simple,
html.layout-movil-forzado:not(.app-nativa-capacitor) .reloj-simple,
html.layout-movil-forzado:not(.app-nativa-capacitor) .btn-admin-modo-simple:not(.welcome-icono-accion) {
    top: calc(12px + var(--nav-safe-top)) !important;
}

/* ── Welcome PRO: orden móvil/app (bienvenida → iconos → título → búsqueda) ── */

html.layout-movil-forzado.pagina-welcome-pro .welcome-pro-contenedor {
    display: flex;
    flex-direction: column;
    align-items: center;
}

html.layout-movil-forzado.pagina-welcome-pro .welcome-acciones-iconos {
    position: static !important;
    top: auto !important;
    right: auto !important;
    left: auto !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 4px auto 8px !important;
    padding: 0 4px !important;
    display: flex !important;
    flex-wrap: wrap !important;
    justify-content: center !important;
    align-items: center !important;
    gap: 6px !important;
    z-index: 2 !important;
}

html.layout-movil-forzado.pagina-welcome-pro .welcome-acciones-iconos .admin-access-stack {
    display: contents !important;
}

html.layout-movil-forzado.pagina-welcome-pro .welcome-acciones-iconos .welcome-modo-simple-desktop {
    display: none !important;
}

html.layout-movil-forzado.pagina-welcome-pro .welcome-acciones-iconos .welcome-icono-accion,
html.layout-movil-forzado.pagina-welcome-pro .welcome-acciones-iconos .btn-admin-modo-simple.welcome-icono-accion {
    position: static !important;
    top: auto !important;
    left: auto !important;
    right: auto !important;
    min-width: 34px !important;
    width: 34px !important;
    height: 34px !important;
    padding: 4px !important;
    margin: 0 !important;
    border-radius: 8px !important;
    border-width: 1px !important;
    box-shadow: 0 0 8px rgba(0, 255, 255, 0.35) !important;
    font-size: 16px !important;
    line-height: 1 !important;
    flex: 0 0 auto;
    touch-action: manipulation;
}

html.layout-movil-forzado.pagina-welcome-pro .welcome-acciones-iconos .btn-icon-expand-label,
html.layout-movil-forzado.pagina-welcome-pro .welcome-acciones-iconos .btn-admin-modo-simple-label {
    display: none !important;
}

html.layout-movil-forzado.pagina-welcome-pro .welcome-acciones-iconos .btn-icon-expand-icon,
html.layout-movil-forzado.pagina-welcome-pro .welcome-acciones-iconos .btn-admin-modo-simple-icon {
    font-size: 17px !important;
    margin: 0 !important;
}

html.layout-movil-forzado.pagina-welcome-pro .welcome-encabezado-principal {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    gap: 8px 12px;
    width: 100%;
    margin: 4px 0 2px;
}

html.layout-movil-forzado.pagina-welcome-pro .welcome-encabezado-principal h1 {
    margin: 0 !important;
    font-size: 24px !important;
    line-height: 1.15 !important;
}

html.layout-movil-forzado.pagina-welcome-pro .welcome-modo-simple-mobile {
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    padding: 6px 12px !important;
    font-size: 12px !important;
    border-radius: 14px !important;
    border-width: 1px !important;
    box-shadow: 0 0 10px rgba(0, 255, 255, 0.4) !important;
    white-space: nowrap;
    touch-action: manipulation;
}

html.layout-movil-forzado.pagina-welcome-pro .welcome-busqueda-wrap {
    margin: 8px 0 12px !important;
    width: 100%;
    display: flex;
    justify-content: center;
}

html.layout-movil-forzado.pagina-welcome-pro .welcome-busqueda-btn {
    padding: 8px 14px !important;
    font-size: 12.5px !important;
    border-radius: 16px !important;
    box-shadow: 0 0 14px rgba(0, 255, 255, 0.55) !important;
    max-width: 100%;
    line-height: 1.25;
    white-space: normal;
}

/* Usuarios conectados + mensajes: compactos, encima del menú rápido */
html.layout-movil-forzado.pagina-welcome-pro #connected-users-bar {
    left: 8px !important;
    bottom: calc(40px + var(--nav-safe-bottom)) !important;
    z-index: 99997 !important;
}

html.layout-movil-forzado.pagina-welcome-pro #private-msg-bar {
    right: 8px !important;
    bottom: calc(40px + var(--nav-safe-bottom)) !important;
    z-index: 99997 !important;
}

html.layout-movil-forzado.pagina-welcome-pro #connected-users-bar .bar-handle {
    width: 40px !important;
    height: 40px !important;
    border-radius: 10px !important;
    border-width: 1px !important;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.35) !important;
}

html.layout-movil-forzado.pagina-welcome-pro #private-msg-bar .bar-handle {
    width: 40px !important;
    height: 40px !important;
    border-radius: 10px !important;
    box-shadow: 0 3px 10px rgba(0, 0, 0, 0.28) !important;
}

html.layout-movil-forzado.pagina-welcome-pro #connected-users-bar .bar-icon {
    font-size: 18px !important;
}

html.layout-movil-forzado.pagina-welcome-pro #private-msg-bar .bar-icon {
    font-size: 20px !important;
}

html.layout-movil-forzado.pagina-welcome-pro #connected-users-bar .bar-count {
    min-width: 16px !important;
    height: 16px !important;
    font-size: 9px !important;
    top: -4px !important;
    right: -4px !important;
}

html.layout-movil-forzado.pagina-welcome-pro #private-msg-bar .bar-badge {
    min-width: 16px !important;
    height: 16px !important;
    font-size: 9px !important;
    top: -3px !important;
    right: -3px !important;
}

/* —— Auditoría de reparaciones (solo admin) —— */
html.layout-movil-forzado .pagina-auditoria-reparaciones.aud-page {
    padding: 10px 8px 110px !important;
    max-width: 100% !important;
}
html.layout-movil-forzado .pagina-auditoria-reparaciones .aud-header {
    padding: 16px 12px !important;
    margin-bottom: 14px !important;
    border-radius: 12px !important;
}
html.layout-movil-forzado .pagina-auditoria-reparaciones .aud-header h1 {
    font-size: 1.25rem !important;
    line-height: 1.25 !important;
}
html.layout-movil-forzado .pagina-auditoria-reparaciones .aud-header p {
    font-size: 0.85rem !important;
}
html.layout-movil-forzado .pagina-auditoria-reparaciones .aud-filtros {
    grid-template-columns: 1fr 1fr !important;
    gap: 10px !important;
    padding: 12px !important;
    border-radius: 12px !important;
}
html.layout-movil-forzado .pagina-auditoria-reparaciones .aud-filtros .aud-filtro-placa,
html.layout-movil-forzado .pagina-auditoria-reparaciones .aud-filtros .sv-filtro-placa-wrap,
html.layout-movil-forzado .pagina-auditoria-reparaciones .aud-filtros .aud-filtros-acciones {
    grid-column: 1 / -1 !important;
}

html.layout-movil-forzado .pagina-auditoria-reparaciones .aud-filtros select,
html.layout-movil-forzado .pagina-auditoria-reparaciones .aud-filtros input {
    font-size: 16px !important; /* evita zoom iOS */
    padding: 11px 10px !important;
}
html.layout-movil-forzado .pagina-auditoria-reparaciones .aud-btn-primary {
    width: 100% !important;
    padding: 12px 14px !important;
}
html.layout-movil-forzado .pagina-auditoria-reparaciones .aud-resumen {
    grid-template-columns: repeat(2, 1fr) !important;
    gap: 8px !important;
}
html.layout-movil-forzado .pagina-auditoria-reparaciones .aud-stat {
    padding: 10px 8px !important;
}
html.layout-movil-forzado .pagina-auditoria-reparaciones .aud-stat .num {
    font-size: 1.35rem !important;
}
html.layout-movil-forzado .pagina-auditoria-reparaciones .aud-acciones {
    flex-direction: column !important;
    gap: 8px !important;
}
html.layout-movil-forzado .pagina-auditoria-reparaciones .aud-acciones .aud-btn {
    width: 100% !important;
    box-sizing: border-box !important;
}
html.layout-movil-forzado .pagina-auditoria-reparaciones .aud-info-placa {
    padding: 12px !important;
    gap: 6px 12px !important;
}
html.layout-movil-forzado .pagina-auditoria-reparaciones .aud-info-placa .placa-big {
    font-size: 1.25rem !important;
}
html.layout-movil-forzado .pagina-auditoria-reparaciones .aud-servicio-actual {
    padding: 12px !important;
    margin-bottom: 14px !important;
    border-radius: 12px !important;
}
html.layout-movil-forzado .pagina-auditoria-reparaciones .aud-servicio-actual .svc-top {
    gap: 8px !important;
    margin-bottom: 10px !important;
}
html.layout-movil-forzado .pagina-auditoria-reparaciones .aud-servicio-actual .svc-title {
    font-size: 0.98rem !important;
    width: 100%;
}
html.layout-movil-forzado .pagina-auditoria-reparaciones .aud-reparaciones-estado,
html.layout-movil-forzado .pagina-status-vehiculo .aud-reparaciones-estado {
    padding: 14px 12px !important;
    margin-bottom: 14px !important;
    border-radius: 12px !important;
}
html.layout-movil-forzado .pagina-auditoria-reparaciones .aud-reparaciones-estado .rep-title,
html.layout-movil-forzado .pagina-status-vehiculo .aud-reparaciones-estado .rep-title {
    font-size: 0.95rem !important;
}
html.layout-movil-forzado .pagina-auditoria-reparaciones .aud-reparaciones-estado .rep-lineas,
html.layout-movil-forzado .pagina-status-vehiculo .aud-reparaciones-estado .rep-lineas {
    font-size: 13px !important;
}
html.layout-movil-forzado .pagina-auditoria-reparaciones .aud-servicio-actual .svc-lineas {
    font-size: 13px !important;
    gap: 5px !important;
}
html.layout-movil-forzado .pagina-auditoria-reparaciones .aud-check-precios {
    margin-top: 0 !important;
}
html.layout-movil-forzado .pagina-auditoria-reparaciones .aud-porcentaje-wrap {
    flex-direction: column !important;
    align-items: stretch !important;
    gap: 8px !important;
}
html.layout-movil-forzado .pagina-auditoria-reparaciones .aud-porcentaje-wrap input[type="number"] {
    width: 100% !important;
    font-size: 16px !important;
}
html.layout-movil-forzado .pagina-auditoria-reparaciones .aud-total-precios {
    margin: 0 8px 12px !important;
    padding: 10px 12px !important;
    text-align: center !important;
    font-size: 0.95rem !important;
}
html.layout-movil-forzado .pagina-auditoria-reparaciones .aud-total-precios .aud-total-line {
    justify-content: center !important;
}
html.layout-movil-forzado .pagina-auditoria-reparaciones .aud-total-precios strong {
    font-size: 1.15rem !important;
}
html.layout-movil-forzado .pagina-auditoria-reparaciones .aud-total-precios .aud-total-final strong {
    display: block;
    margin-top: 2px;
    font-size: 1.25rem !important;
}
html.layout-movil-forzado .pagina-auditoria-reparaciones .aud-seccion-header {
    padding: 12px !important;
    flex-wrap: wrap !important;
}
html.layout-movil-forzado .pagina-auditoria-reparaciones .aud-seccion-header h2 {
    font-size: 1rem !important;
}
html.layout-movil-forzado .pagina-auditoria-reparaciones .aud-lista {
    padding: 10px !important;
    gap: 8px !important;
}
html.layout-movil-forzado .pagina-auditoria-reparaciones .aud-item {
    padding: 12px !important;
}
html.layout-movil-forzado .pagina-auditoria-reparaciones .aud-tabla-wrap {
    padding: 0 8px 12px !important;
    -webkit-overflow-scrolling: touch;
}
html.layout-movil-forzado .pagina-auditoria-reparaciones .aud-tabla {
    min-width: 420px !important;
    font-size: 12px !important;
}
html.layout-movil-forzado .pagina-auditoria-reparaciones .aud-reporte-motos-wrap {
    padding: 10px !important;
    margin: 0 8px 12px !important;
    -webkit-overflow-scrolling: touch;
    background: #ffffff !important;
    isolation: isolate;
    filter: none !important;
    backdrop-filter: none !important;
}
html.layout-movil-forzado .pagina-auditoria-reparaciones .aud-reporte-motos-wrap,
html.layout-movil-forzado .pagina-auditoria-reparaciones .aud-reporte-motos-wrap * {
    text-shadow: none !important;
    -webkit-font-smoothing: antialiased !important;
}
html.layout-movil-forzado .pagina-auditoria-reparaciones .aud-reporte-table {
    min-width: 680px !important;
    font-size: 13px !important;
    font-family: Arial, Helvetica, sans-serif !important;
    color: #0f172a !important;
}
html.layout-movil-forzado .pagina-auditoria-reparaciones .aud-reporte-table th,
html.layout-movil-forzado .pagina-auditoria-reparaciones .aud-reporte-table td {
    padding: 8px 5px !important;
    color: #0f172a !important;
    text-shadow: none !important;
    font-family: Arial, Helvetica, sans-serif !important;
}
html.layout-movil-forzado .pagina-auditoria-reparaciones .aud-reporte-table th {
    font-size: 11px !important;
    background: #e2e8f0 !important;
}
html.layout-movil-forzado .pagina-auditoria-reparaciones .aud-reporte-table td {
    font-size: 12px !important;
    background: #ffffff !important;
}
html.layout-movil-forzado .pagina-auditoria-reparaciones .btn-auditoria-reparaciones {
    width: calc(100% - 8px) !important;
    max-width: 340px !important;
}

/* Botón Auditoría en menú reparaciones (móvil) */
html.layout-movil-forzado .btn-auditoria-reparaciones {
    padding: 9px 16px !important;
    font-size: 13px !important;
    width: calc(100% - 8px) !important;
    max-width: 340px !important;
    box-sizing: border-box !important;
}
html.layout-movil-forzado .auditoria-reparaciones-wrap {
    margin-top: 10px !important;
}

/* Gestionar orden: formulario editar encabezado */
html.layout-movil-forzado .orden-edit-form {
    max-width: 100% !important;
    padding: 12px !important;
}
html.layout-movil-forzado .orden-edit-form input,
html.layout-movil-forzado .orden-edit-form textarea {
    font-size: 16px !important;
}
html.layout-movil-forzado .orden-edit-form .btn-guardar-orden {
    font-size: 15px !important;
    padding: 14px !important;
}

/* Información detallada de vehículo */
html.layout-movil-forzado .pagina-info-detallada-vehiculo {
    margin: -10px !important;
    padding: 12px 8px 88px !important;
}
html.layout-movil-forzado .pagina-info-detallada-vehiculo .page-header {
    margin-bottom: 16px !important;
}
html.layout-movil-forzado .pagina-info-detallada-vehiculo .page-header h1 {
    font-size: 22px !important;
}
html.layout-movil-forzado .pagina-info-detallada-vehiculo .page-header p {
    font-size: 13px !important;
}
html.layout-movil-forzado .pagina-info-detallada-vehiculo .idv-filtro-placa,
html.layout-movil-forzado .pagina-info-detallada-vehiculo .search-container {
    max-width: 100% !important;
    margin-bottom: 12px !important;
}
html.layout-movil-forzado .pagina-info-detallada-vehiculo #placa-input,
html.layout-movil-forzado .pagina-info-detallada-vehiculo #filtro-resultados,
html.layout-movil-forzado .pagina-info-detallada-vehiculo input[type="date"] {
    font-size: 16px !important;
    padding: 11px 12px !important;
}
html.layout-movil-forzado .pagina-info-detallada-vehiculo .idv-acciones-top {
    flex-direction: column !important;
    align-items: center !important;
    gap: 8px !important;
}
html.layout-movil-forzado .pagina-info-detallada-vehiculo .idv-acciones-top .btn-config {
    width: 100% !important;
    max-width: 340px !important;
    box-sizing: border-box !important;
}
html.layout-movil-forzado .pagina-info-detallada-vehiculo .idv-rango-fechas {
    flex-direction: column !important;
    align-items: stretch !important;
    gap: 8px !important;
    margin: 14px 0 !important;
}
html.layout-movil-forzado .pagina-info-detallada-vehiculo .idv-rango-acciones {
    flex-direction: row !important;
    flex-wrap: wrap !important;
    justify-content: center !important;
    align-items: center !important;
    width: 100% !important;
    gap: 6px !important;
}
html.layout-movil-forzado .pagina-info-detallada-vehiculo .idv-rango-acciones .btn-config {
    width: auto !important;
    flex: 0 0 auto !important;
    max-width: none !important;
    padding: 4px 9px !important;
    font-size: 10px !important;
    line-height: 1.2 !important;
    box-shadow: 0 1px 5px rgba(34, 211, 238, 0.35) !important;
}
html.layout-movil-forzado .pagina-info-detallada-vehiculo #btn-expandir-todos {
    width: 100% !important;
    max-width: 340px !important;
    font-size: 14px !important;
    padding: 12px 14px !important;
}
html.layout-movil-forzado .pagina-info-detallada-vehiculo .event-card {
    padding: 12px !important;
    margin-bottom: 12px !important;
}
html.layout-movil-forzado .pagina-info-detallada-vehiculo .event-header {
    font-size: 15px !important;
    line-height: 1.35 !important;
}
html.layout-movil-forzado .pagina-info-detallada-vehiculo .event-content p {
    font-size: 14px !important;
}
html.layout-movil-forzado .pagina-info-detallada-vehiculo .table-responsive {
    margin-left: -4px !important;
    margin-right: -4px !important;
}
html.layout-movil-forzado .pagina-info-detallada-vehiculo .idv-tabla-detalles {
    min-width: 480px !important;
    font-size: 12px !important;
}
html.layout-movil-forzado .pagina-info-detallada-vehiculo .idv-tabla-detalles th,
html.layout-movil-forzado .pagina-info-detallada-vehiculo .idv-tabla-detalles td {
    padding: 8px 6px !important;
}
html.layout-movil-forzado .pagina-info-detallada-vehiculo .idv-totales-grid {
    grid-template-columns: 1fr !important;
    gap: 10px !important;
}
html.layout-movil-forzado .pagina-info-detallada-vehiculo .section {
    padding: 14px 12px !important;
}
html.layout-movil-forzado .pagina-info-detallada-vehiculo .placa-sugerencias-list li {
    padding: 12px 14px !important;
    font-size: 16px !important;
}
html.layout-movil-forzado .pagina-info-detallada-vehiculo .back-link {
    margin-bottom: 72px !important;
}
html.app-nativa-capacitor.layout-movil-forzado:not(.app-en-info-detallada) .pagina-info-detallada-vehiculo {
    padding-bottom: calc(88px + var(--nav-safe-bottom, 0px)) !important;
}
/* Devoluciones: cards y tablas legibles en celular/app */
html.layout-movil-forzado body.pagina-devoluciones {
    padding-left: 10px !important;
    padding-right: 10px !important;
    padding-bottom: 72px !important;
}
html.layout-movil-forzado body.pagina-devoluciones .container {
    max-width: 100% !important;
    padding: 0 4px !important;
}
html.layout-movil-forzado body.pagina-devoluciones .search-box {
    max-width: 100% !important;
    padding: 12px !important;
}
html.layout-movil-forzado body.pagina-devoluciones #buscador {
    max-width: 100% !important;
    font-size: 16px !important;
    box-sizing: border-box !important;
}
html.layout-movil-forzado body.pagina-devoluciones .card-header {
    flex-direction: column !important;
    align-items: flex-start !important;
    gap: 10px !important;
    font-size: 15px !important;
}
html.layout-movil-forzado body.pagina-devoluciones .dev-actions {
    width: 100% !important;
    justify-content: flex-start !important;
}
html.layout-movil-forzado body.pagina-devoluciones .dev-meta span {
    display: block !important;
    margin: 2px 0 !important;
}
html.layout-movil-forzado body.pagina-devoluciones table.dev-detalle thead,
html.layout-movil-forzado body.pagina-devoluciones table.dev-detalle tr:first-child {
    display: none !important;
}
html.layout-movil-forzado body.pagina-devoluciones table.dev-detalle,
html.layout-movil-forzado body.pagina-devoluciones table.dev-detalle tbody,
html.layout-movil-forzado body.pagina-devoluciones table.dev-detalle tr.mobile-row {
    display: block !important;
    width: 100% !important;
}
html.layout-movil-forzado body.pagina-devoluciones table.dev-detalle tr.mobile-row {
    border-bottom: 1px solid rgba(0,255,204,0.25);
    padding: 10px 8px;
    text-align: left !important;
}
html.layout-movil-forzado body.pagina-devoluciones table.dev-detalle tr.mobile-row td {
    display: flex !important;
    justify-content: space-between;
    gap: 10px;
    text-align: right !important;
    border: none !important;
    padding: 4px 0 !important;
}
html.layout-movil-forzado body.pagina-devoluciones table.dev-detalle tr.mobile-row td::before {
    content: attr(data-label);
    font-weight: 700;
    text-align: left;
    opacity: 0.85;
    flex: 0 0 42%;
}
html.layout-movil-forzado body.pagina-devoluciones .btn-ver-orden,
html.layout-movil-forzado body.pagina-devoluciones .btn-imprimir-dev,
html.layout-movil-forzado body.pagina-devoluciones .btn-devolver-todo,
html.layout-movil-forzado body.pagina-devoluciones .btn-verde {
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
    justify-content: center !important;
    text-align: center !important;
}

/* Vectores: lista y panel legibles en celular/app */
html.layout-movil-forzado body.pagina-vectores .form-container {
    max-width: 100% !important;
    padding: 14px 10px 88px !important;
}
html.layout-movil-forzado body.pagina-vectores h1 {
    font-size: 22px !important;
}
html.layout-movil-forzado body.pagina-vectores .search-container {
    width: 100% !important;
}
html.layout-movil-forzado body.pagina-vectores .upload-form {
    flex-direction: column !important;
    align-items: stretch !important;
}
html.layout-movil-forzado body.pagina-vectores .vec-actions {
    text-align: left !important;
    white-space: normal !important;
}
html.layout-movil-forzado body.pagina-vectores .vec-actions a {
    margin: 4px 4px 0 0 !important;
}
html.layout-movil-forzado body.pagina-vectores #tabla_vectores thead {
    display: none !important;
}
html.layout-movil-forzado body.pagina-vectores #tabla_vectores,
html.layout-movil-forzado body.pagina-vectores #tabla_vectores tbody,
html.layout-movil-forzado body.pagina-vectores #tabla_vectores tr.fila-vector,
html.layout-movil-forzado body.pagina-vectores #tabla_vectores td {
    display: block !important;
    width: 100% !important;
}
html.layout-movil-forzado body.pagina-vectores #tabla_vectores tr.fila-vector {
    border-bottom: 1px solid rgba(148, 163, 184, 0.2);
    padding-bottom: 8px;
}
html.layout-movil-forzado body.pagina-vectores .vec-sub {
    display: none !important;
}

/* Bit�cora: formulario y tabla legibles en celular/app */
html.layout-movil-forzado body.pagina-bitacora .form-container {
    max-width: 100% !important;
    padding: 14px 10px 88px !important;
}
html.layout-movil-forzado body.pagina-bitacora h1 {
    font-size: 20px !important;
}
html.layout-movil-forzado body.pagina-bitacora .acciones {
    white-space: normal !important;
}
html.layout-movil-forzado body.pagina-bitacora .acciones a,
html.layout-movil-forzado body.pagina-bitacora .acciones button {
    margin: 3px 2px !important;
}
html.layout-movil-forzado body.pagina-bitacora .bit-form-panel,
html.layout-movil-forzado body.pagina-bitacora .bit-panel {
    border-radius: 14px !important;
}
html.layout-movil-forzado body.pagina-bitacora .search-wrap {
    max-width: 100% !important;
}

/* Top 50 refacciones en celular/app */
html.layout-movil-forzado body.pagina-top50 .top-wrap {
    padding: 14px 10px 88px !important;
}
html.layout-movil-forzado body.pagina-top50 .months-container {
    grid-template-columns: 1fr !important;
}
html.layout-movil-forzado body.pagina-top50 .month-column {
    max-height: none !important;
    min-height: 0 !important;
}
html.layout-movil-forzado body.pagina-top50 .rank-list {
    max-height: 55vh;
}

/* Top 50: asegurar contenido visible en m�vil */
html.layout-movil-forzado body.pagina-top50 .top-wrap {
    z-index: 5 !important;
    position: relative !important;
}
html.layout-movil-forzado body.pagina-top50 .months-container,
html.layout-movil-forzado body.pagina-top50 .rank-item {
    opacity: 1 !important;
    visibility: visible !important;
}

/* Historial por placa en celular/app */
html.layout-movil-forzado body.pagina-historial-placa .hist-wrap {
    padding: 14px 10px 88px !important;
    z-index: 5 !important;
}
html.layout-movil-forzado body.pagina-historial-placa .split-view {
    grid-template-columns: 1fr !important;
}
html.layout-movil-forzado body.pagina-historial-placa .search-box {
    max-width: 100% !important;
}
html.layout-movil-forzado body.pagina-historial-placa .volver-btn {
    top: auto !important;
    bottom: 70px !important;
    left: 10px !important;
}

/* �rdenes antiguas + Bodega m�vil */
html.layout-movil-forzado body.pagina-ordenes-antiguas .oa-wrap {
    padding: 14px 10px 88px !important;
    z-index: 5 !important;
}
html.layout-movil-forzado body.pagina-ordenes-antiguas .btn-ver-orden {
    position: static !important;
    display: block !important;
    width: 100% !important;
    margin: 0 0 10px !important;
}
html.layout-movil-forzado body.pagina-ordenes-antiguas .orden-header {
    margin-right: 0 !important;
}
html.layout-movil-forzado body.pagina-bodega .container {
    padding: 12px 8px 88px !important;
}
html.layout-movil-forzado body.pagina-bodega .bodega-section {
    margin-left: 4px !important;
    margin-right: 4px !important;
}

/* Notas personales en celular/app */
html.layout-movil-forzado body.pagina-notas .container {
    padding: 14px 10px 88px !important;
    max-width: 100% !important;
}
html.layout-movil-forzado body.pagina-notas .detalle-fila {
    grid-template-columns: 1fr !important;
}
html.layout-movil-forzado body.pagina-notas .table-container {
    overflow-x: auto !important;
}

/* === Inventario físico + detalles (celular / app) ===
   Inventario físico: mismo orden que escritorio (tabla real + fila de búsqueda),
   más compacto vía zoom global (navegador) o scale 0.67 (app). */
html.layout-movil-forzado body.pagina-inventario-fisico {
    padding-bottom: 72px !important;
}
html.layout-movil-forzado body.pagina-inventario-fisico .container {
    max-width: 980px !important;
    padding-left: 10px !important;
    padding-right: 10px !important;
}
html.layout-movil-forzado body.pagina-inventario-fisico .inv-header h1 {
    font-size: 26px !important;
}
html.layout-movil-forzado body.pagina-inventario-fisico .inv-card {
    padding: 16px 14px !important;
    margin-bottom: 14px !important;
}
html.layout-movil-forzado body.pagina-inventario-fisico .scanner-input {
    font-size: 16px !important;
    padding: 12px 14px !important;
    flex: 1 1 auto !important;
    min-width: 0 !important;
    width: auto !important;
}
/* Misma fila que escritorio: input + cámara + buscar */
html.layout-movil-forzado body.pagina-inventario-fisico .inv-scan-row {
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    max-width: 100% !important;
    align-items: center !important;
    gap: 8px !important;
}
html.layout-movil-forzado body.pagina-inventario-fisico .btn-buscar-codigo {
    width: auto !important;
    min-width: 100px !important;
    flex: 0 0 auto !important;
    box-sizing: border-box !important;
}
html.layout-movil-forzado body.pagina-inventario-fisico .inv-ultimas-ubic {
    max-width: 100% !important;
    margin-top: 12px !important;
    padding: 10px 12px !important;
}
html.layout-movil-forzado body.pagina-inventario-fisico .inv-ultimas-ubic-list li {
    font-size: 13px !important;
    padding: 8px 10px !important;
}
html.layout-movil-forzado body.pagina-inventario-fisico .inv-fotos-galeria {
    max-width: 100% !important;
}
html.layout-movil-forzado body.pagina-inventario-fisico .inv-foto-item {
    width: 68px !important;
    height: 68px !important;
}
html.layout-movil-forzado body.pagina-inventario-fisico #btnInvAgregarFotos {
    width: 100% !important;
    max-width: 320px !important;
}
html.layout-movil-forzado body.pagina-inventario-fisico .btn-config {
    box-sizing: border-box !important;
}
/* Cámara solo celular/app (oculta en PC) */
body.pagina-inventario-fisico .btn-escanear-inv {
    display: none !important;
}
html.layout-movil-forzado body.pagina-inventario-fisico .btn-escanear-inv {
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    flex: 0 0 auto;
    min-width: 48px !important;
    width: 48px !important;
    height: 48px !important;
    padding: 0 !important;
    font-size: 22px !important;
    line-height: 1 !important;
    border-radius: 12px !important;
    background: linear-gradient(135deg, #22d3ee, #0891b2) !important;
    color: #0f172a !important;
    border: 1px solid rgba(255, 255, 255, 0.2) !important;
    cursor: pointer;
    box-shadow: 0 6px 16px rgba(8, 145, 178, 0.35);
}
html.layout-movil-forzado body.pagina-inventario-fisico .qty-input {
    width: 160px !important;
    max-width: 100% !important;
}
/* Tabla como en escritorio (no tarjetas mobile-row) */
html.layout-movil-forzado body.pagina-inventario-fisico .inv-table-wrap {
    overflow-x: auto !important;
    -webkit-overflow-scrolling: touch;
}
html.layout-movil-forzado body.pagina-inventario-fisico .inv-table {
    min-width: 420px !important;
    width: 100% !important;
    display: table !important;
    border-collapse: collapse !important;
}
html.layout-movil-forzado body.pagina-inventario-fisico .inv-table thead {
    display: table-header-group !important;
}
html.layout-movil-forzado body.pagina-inventario-fisico .inv-table tbody {
    display: table-row-group !important;
}
html.layout-movil-forzado body.pagina-inventario-fisico .inv-table tr.mobile-row {
    display: table-row !important;
    border: none !important;
    border-radius: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    background: transparent !important;
    width: auto !important;
}
html.layout-movil-forzado body.pagina-inventario-fisico .inv-table tr.mobile-row.filter-hidden {
    display: none !important;
}
html.layout-movil-forzado body.pagina-inventario-fisico .inv-table tr.mobile-row td {
    display: table-cell !important;
    justify-content: initial;
    align-items: initial;
    gap: 0;
    text-align: center !important;
    border-bottom: 1px solid rgba(148, 163, 184, 0.12) !important;
    padding: 12px 10px !important;
}
html.layout-movil-forzado body.pagina-inventario-fisico .inv-table tr.mobile-row td::before {
    content: none !important;
    display: none !important;
}
/* Modal escáner cámara inventario */
html.layout-movil-forzado #modal-escaner-inv {
    display: none;
    position: fixed;
    inset: 0;
    z-index: 12000;
    background: rgba(0, 0, 0, 0.92);
    align-items: center;
    justify-content: center;
    padding: 16px;
    box-sizing: border-box;
}
html.layout-movil-forzado #modal-escaner-inv.is-open {
    display: flex !important;
}
html.layout-movil-forzado #modal-escaner-inv .inv-scan-modal-box {
    width: min(420px, 100%);
    background: #0f172a;
    border: 1px solid rgba(34, 211, 238, 0.45);
    border-radius: 16px;
    padding: 14px;
    box-shadow: 0 16px 40px rgba(0, 0, 0, 0.5);
}
html.layout-movil-forzado #modal-escaner-inv .inv-scan-modal-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    margin-bottom: 10px;
    color: #67e8f9;
    font-weight: 700;
    font-size: 15px;
}
html.layout-movil-forzado #modal-escaner-inv .inv-scan-modal-head button {
    background: none;
    border: none;
    color: #f87171;
    font-size: 26px;
    cursor: pointer;
    line-height: 1;
}
html.layout-movil-forzado #modal-escaner-inv #inv-qr-reader {
    width: 100%;
    min-height: 240px;
    border-radius: 12px;
    overflow: hidden;
    background: #000;
}
html.layout-movil-forzado #modal-escaner-inv .inv-scan-hint {
    text-align: center;
    color: #94a3b8;
    font-size: 12px;
    margin: 10px 0 0;
}

html.layout-movil-forzado body.pagina-detalles-inventario {
    padding-bottom: 72px !important;
}
html.layout-movil-forzado body.pagina-detalles-inventario .container {
    max-width: 100% !important;
    padding-left: 10px !important;
    padding-right: 10px !important;
}
html.layout-movil-forzado body.pagina-detalles-inventario .det-header h1 {
    font-size: 20px !important;
}
html.layout-movil-forzado body.pagina-detalles-inventario .det-card {
    padding: 10px !important;
}
html.layout-movil-forzado body.pagina-detalles-inventario .det-table {
    min-width: 0 !important;
}
html.layout-movil-forzado body.pagina-detalles-inventario .det-table thead {
    display: none !important;
}
html.layout-movil-forzado body.pagina-detalles-inventario .det-table,
html.layout-movil-forzado body.pagina-detalles-inventario .det-table tbody,
html.layout-movil-forzado body.pagina-detalles-inventario .det-table tr.mobile-row {
    display: block !important;
    width: 100% !important;
}
html.layout-movil-forzado body.pagina-detalles-inventario .det-table tr.mobile-row {
    border: 1px solid rgba(56, 189, 248, 0.25);
    border-radius: 12px;
    margin-bottom: 12px;
    padding: 12px;
    background: rgba(2, 6, 23, 0.5);
    text-align: left !important;
}
html.layout-movil-forzado body.pagina-detalles-inventario .det-table tr.mobile-row.filter-hidden {
    display: none !important;
}
html.layout-movil-forzado body.pagina-detalles-inventario .det-table tr.mobile-row.fila-coincide {
    border-color: rgba(74, 222, 128, 0.4);
}
html.layout-movil-forzado body.pagina-detalles-inventario .det-table tr.mobile-row td {
    display: flex !important;
    justify-content: space-between;
    align-items: flex-start;
    gap: 10px;
    text-align: right !important;
    border: none !important;
    padding: 6px 0 !important;
}
html.layout-movil-forzado body.pagina-detalles-inventario .det-table tr.mobile-row td::before {
    content: attr(data-label);
    font-weight: 700;
    text-align: left;
    color: #7dd3fc;
    flex: 0 0 38%;
    font-size: 11px;
    text-transform: uppercase;
    letter-spacing: 0.04em;
}
/* Observaciones: bloque completo en tarjeta móvil */
html.layout-movil-forzado body.pagina-detalles-inventario .det-table tr.mobile-row td[data-label="Observaciones"] {
    flex-direction: column !important;
    align-items: stretch !important;
    text-align: left !important;
    gap: 6px !important;
}
html.layout-movil-forzado body.pagina-detalles-inventario .det-table tr.mobile-row td[data-label="Observaciones"]::before {
    flex: none !important;
    width: 100%;
}
html.layout-movil-forzado body.pagina-detalles-inventario .obs-wrap {
    width: 100% !important;
}
html.layout-movil-forzado body.pagina-detalles-inventario .obs-input {
    min-height: 56px !important;
    font-size: 14px !important;
}
html.layout-movil-forzado body.pagina-detalles-inventario .qty-edit-input,
html.layout-movil-forzado body.pagina-detalles-inventario .hangar-input {
    max-width: 88px !important;
    font-size: 15px !important;
    padding: 8px 6px !important;
}
html.layout-movil-forzado body.pagina-detalles-inventario .obs-guardar {
    width: 100% !important;
    padding: 10px 12px !important;
    font-size: 13px !important;
}
html.layout-movil-forzado body.pagina-detalles-inventario .det-btn {
    width: 100% !important;
    box-sizing: border-box !important;
}
html.layout-movil-forzado body.pagina-detalles-inventario .det-footer-actions form {
    width: 100%;
}
html.app-nativa-capacitor.layout-movil-forzado body.pagina-inventario-fisico,
html.app-nativa-capacitor.layout-movil-forzado body.pagina-detalles-inventario {
    padding-bottom: calc(88px + var(--nav-safe-bottom, 0px)) !important;
}
/* App inventario: padding inferior lo maneja app-en-inventario body (scale) */
html.app-nativa-capacitor.app-en-inventario body.pagina-inventario-fisico {
    padding-bottom: calc(72px + env(safe-area-inset-bottom, 0px)) !important;
}

/* Configuraciones: misma fuente Arial Black en celular/app */
html.layout-movil-forzado body.pagina-configuraciones,
html.layout-movil-forzado body.pagina-configuraciones .container,
html.layout-movil-forzado body.pagina-configuraciones .container *:not(.fa):not([class*="fa-"]):not(i) {
    font-family: "Arial Black", "Arial Bold", Arial, Helvetica, sans-serif !important;
}


/* === Facturas del sistema (panel en Ver Entradas) — celular / app === */
html.layout-movil-forzado .entradas-top-btns {
    flex-direction: column !important;
    gap: 10px !important;
    width: 100% !important;
}
html.layout-movil-forzado #btn-entradas-por-fecha,
html.layout-movil-forzado #btn-facturas-sistema {
    width: 100% !important;
    max-width: 360px !important;
    font-size: 16px !important;
    padding: 12px 18px !important;
    box-sizing: border-box !important;
}
html.layout-movil-forzado #facturas-sistema-container {
    padding: 0 4px 80px !important;
}
html.layout-movil-forzado #buscar_facturas_sistema {
    width: 100% !important;
    max-width: 100% !important;
    font-size: 16px !important;
    box-sizing: border-box !important;
}
html.layout-movil-forzado .factura-card-top {
    flex-direction: column !important;
    align-items: stretch !important;
}
html.layout-movil-forzado .factura-card-actions {
    width: 100% !important;
    justify-content: stretch !important;
}
html.layout-movil-forzado .factura-card-actions a,
html.layout-movil-forzado .factura-card-actions button {
    flex: 1 1 45% !important;
    text-align: center !important;
    min-height: 40px !important;
    font-size: 13px !important;
}
html.layout-movil-forzado .modal-preview-factura-panel {
    width: 100vw !important;
    height: 100dvh !important;
    max-height: none !important;
    margin: 0 !important;
    border-radius: 0 !important;
}
html.layout-movil-forzado .modal-preview-factura-titulo {
    max-width: 100% !important;
    white-space: normal !important;
}
html.layout-movil-forzado .modal-preview-factura-toolbar {
    flex-direction: column !important;
    align-items: stretch !important;
}
html.layout-movil-forzado .modal-preview-factura-actions {
    width: 100% !important;
}
html.layout-movil-forzado .btn-fact-modal {
    flex: 1 1 auto !important;
    text-align: center !important;
    min-height: 40px !important;
}
