:root {
  color-scheme: light;
  --fondo: #f8f5ef; --papel: #fff; --tinta: #173b40; --muted: #526b6d;
  --verde: #087d70; --verde-hover: #06685d; --menta: #e6f5ed;
  --borde: #dce6e1; --ambar: #945a11; --ambar-fondo: #fff4df; --rojo: #ab313b;
  --sombra: 0 12px 36px rgba(24, 60, 54, .06);
}
#modal-producto-editor, #modal-reportes { z-index: 25; }
.inventario-cabecera { display: flex; align-items: center; justify-content: space-between; gap: 12px; flex-wrap: wrap; }
.inventario-cabecera button, .caja-reportes button { min-height: 44px; padding: 10px 15px; border-radius: 10px; border: 0; background: var(--verde); color: white; font-weight: 600; }
#modal-productos .inventario-herramientas { margin-top: 0; }
.importar-csv summary { cursor: pointer; min-height: 44px; display: list-item; padding: 10px 0; font-weight: 600; font-size: 14px; }
.importar-csv { margin-top: 22px; }
.caja-reportes { padding: 16px; background: var(--menta); border-radius: 12px; margin-bottom: 18px; }
.caja-reportes p { margin-top: 0; font-size: 14px; }
@media(max-width:430px) { .inventario-cabecera button { width: 100%; } }
.caja-cierre { display: flex; justify-content: space-between; align-items: center; gap: 16px; padding: 16px; background: #fff4df; border: 1px solid #eed8ad; border-radius: 12px; margin: 16px 0 24px; }
.caja-cierre span { font-size: 13px; }
.caja-cierre button { flex-shrink: 0; min-height: 44px; background: #123b40; color: white; border: 0; border-radius: 9px; padding: 11px 16px; }
.inventario-herramientas { display: grid; gap: 8px; margin: 24px 0 16px; }
.inventario-herramientas h3, .inventario-herramientas p { margin: 0 0 6px; }
.inventario-herramientas label { font-size: 13px; }
.producto-fila-stock strong, .producto-fila-stock small { display: block; }
.producto-fila-stock small { color: var(--muted); font-size: 12px; margin: 4px 0; }
.stock-producto { font-size: 18px; font-weight: 650; }
.stock-actual { padding: 16px; border-radius: 12px; background: var(--menta); line-height: 1.6; margin-bottom: 22px; }
.stock-resultado { font-size: 14px; color: var(--verde); line-height: 1.6; }
#modal-stock { z-index: 25; }
.stock-box { max-width: 480px; }
.boton-mas { display: block; width: 100%; min-height: 46px; margin: 18px 0; padding: 12px; background: white; color: var(--verde); border: 1px solid var(--borde); border-radius: 10px; }
@media(max-width:700px) { .caja-cierre { flex-direction: column; align-items: stretch; } #tabla-productos-body .producto-fila-stock { grid-column: 1/-1; } }
.imagen-editor { min-width: 0; margin: 12px 0; padding: 16px; border: 1px solid var(--borde); border-radius: 14px; background: #f8faf8; }
.imagen-editor legend { font-weight: 650; }
.imagen-editor p { font-size: 13px; }
.imagen-producto-nombre { font-weight: 650; }
.imagen-opciones { display: flex; flex-wrap: wrap; gap: 8px; margin: 12px 0; }
.imagen-opciones button { min-height: 44px; padding: 10px 13px; border: 1px solid var(--borde); border-radius: 9px; background: white; color: var(--tinta); }
.imagen-opciones #imagen-guardar { background: var(--verde); color: white; }
.imagen-comparacion { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 12px; }
.imagen-comparacion figure { margin: 0; min-width: 0; }
.imagen-comparacion img { display: block; width: 100%; aspect-ratio: 1; object-fit: contain; background: white; border: 1px solid var(--borde); border-radius: 10px; }
.imagen-comparacion figcaption { font-size: 12px; color: var(--muted); padding: 5px 0; }
.imagen-ayuda { color: var(--muted); }
.producto-card .producto-imagen { width: 100%; height: 130px; object-fit: contain; background: white; border-radius: 10px; margin-bottom: 12px; }
#btn-actualizar-productos { min-height: 44px; border: 1px solid var(--borde); background: white; color: var(--verde); border-radius: 10px; padding: 8px 12px; margin-left: auto; }
@media(max-width:700px) { .producto-card .producto-imagen { height: 110px; } .imagen-editor { padding: 12px; } .imagen-opciones button { flex: 1 1 130px; } }

.boton-comprobante { margin-top: 12px; width: 100%; padding: 12px; border: 1px solid var(--borde); border-radius: 10px; background: var(--menta); color: var(--tinta); }
.caja-box #btn-historial-caja { margin-top: 14px; background: var(--menta); color: var(--tinta); }
#modal-comprobante { z-index: 30; }
.comprobante-box { width: min(760px,100%); }
.comprobante-contenido { color: #173b40; }
.comprobante-contenido header { padding-bottom: 18px; border-bottom: 1px solid var(--borde); }
.comprobante-contenido header h2 { font-size: 27px; margin: 8px 0; }
.comprobante-contenido header p { margin: 4px 0; }
.comprobante-no-fiscal { display: inline-block; margin-top: 12px; color: #945a11; background: #fff4df; border-radius: 8px; padding: 7px 12px; }
.comprobante-datos { display: grid; grid-template-columns: auto minmax(0,1fr); gap: 8px 18px; font-size: 13px; margin: 22px 0; }
.comprobante-datos dt { color: var(--muted); }
.comprobante-datos dd { margin: 0; overflow-wrap: anywhere; }
.comprobante-referencia { font-family: ui-monospace,monospace; }
.comprobante-tabla { overflow-x: auto; }
.comprobante-tabla table { width: 100%; border-collapse: collapse; font-size: 13px; }
.comprobante-tabla th, .comprobante-tabla td { padding: 12px 7px; border-bottom: 1px solid var(--borde); text-align: right; }
.comprobante-tabla th:first-child, .comprobante-tabla td:first-child { text-align: left; overflow-wrap: anywhere; }
.comprobante-tabla small { display: block; color: var(--muted); }
.comprobante-total { display: flex; justify-content: space-between; align-items: center; margin: 22px 0; font-size: 24px; }
.comprobante-contenido h3 { font-size: 15px; }
.comprobante-pagos { list-style: none; padding: 0; font-size: 14px; }
.comprobante-pagos li { display: flex; justify-content: space-between; gap: 12px; margin: 8px 0; }
.comprobante-contenido footer, .comprobante-nota { font-size: 12px; color: var(--muted); margin-top: 24px; }
.comprobante-acciones { border-top: 1px solid var(--borde); margin-top: 24px; padding-top: 16px; }
.comprobante-acciones p { font-size: 12px; color: var(--muted); }
.comprobante-acciones button { width: 100%; min-height: 46px; padding: 12px; background: var(--verde); color: white; border: 0; border-radius: 10px; }
@media print {
  @page { size: A4; margin: 16mm; }
  body.comprobante-abierto { background: white; color: black; }
  body.comprobante-abierto > :not(#modal-comprobante) { display: none !important; }
  body.comprobante-abierto #modal-comprobante { display: block !important; position: static; padding: 0; background: white; }
  body.comprobante-abierto .comprobante-box { width: 100%; max-width: none; max-height: none; overflow: visible; border: 0; border-radius: 0; box-shadow: none; padding: 0; }
  body.comprobante-abierto .modal-header, body.comprobante-abierto .comprobante-acciones { display: none !important; }
  .comprobante-contenido { color: black; }
  .comprobante-tabla { overflow: visible; }
  .comprobante-tabla thead { display: table-header-group; }
  .comprobante-tabla tr, .comprobante-total, .comprobante-pagos li { break-inside: avoid; }
}
* { box-sizing: border-box; }
html { scroll-padding-top: 150px; }
body { margin: 0; background: var(--fondo); color: var(--tinta); font-family: "Segoe UI", system-ui, sans-serif; line-height: 1.45; }
button, input, select { font: inherit; }
button { cursor: pointer; }
button:disabled { cursor: not-allowed; opacity: .5; }
input, select { min-width: 0; min-height: 46px; border: 1px solid var(--borde); border-radius: 10px; background: var(--papel); padding: 10px 12px; color: var(--tinta); font-size: 15px; }
input::placeholder { color: #718383; }
input:focus, select:focus { outline: 2px solid var(--verde); outline-offset: 2px; }
button:focus-visible, a:focus-visible { outline: 3px solid #b98733; outline-offset: 3px; }
input:disabled, select:disabled { background: #f1f4f2; }
button, a, input, select { -webkit-tap-highlight-color: transparent; }
h1, h2, h3, p { overflow-wrap: anywhere; }
h1, h2, h3 { line-height: 1.2; letter-spacing: -.025em; }
h2 { font-size: 21px; }
a { color: var(--verde); }
.oculto { display: none !important; }
.sr-only { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; border: 0; }
.pantalla { display: none; min-height: 100vh; }
.pantalla.activa { display: block; }
.eyebrow { display: block; font-size: 11px; font-weight: 750; letter-spacing: .14em; color: var(--verde); margin-bottom: 8px; }
.texto-secundario { color: var(--muted); }
.marca { display: flex; gap: 12px; align-items: center; font-weight: 700; line-height: 1.3; }
.marca small { display: block; font-size: 11px; font-weight: 400; letter-spacing: .03em; margin-top: 4px; opacity: .75; }
.marca-simbolo { display: inline-grid; place-items: center; width: 44px; height: 44px; border-radius: 13px; background: #d8f1e5; color: #123b40; font-size: 16px; font-weight: 850; letter-spacing: -.08em; flex-shrink: 0; }
.pantalla-acceso.activa { display: grid; place-items: center; padding: 40px; min-height: 100svh; }
.acceso-layout { display: grid; grid-template-columns: 1.15fr 1fr; max-width: 1120px; width: 100%; min-height: 650px; background: var(--papel); border: 1px solid var(--borde); border-radius: 26px; overflow: hidden; box-shadow: var(--sombra); }
.acceso-presentacion { background: radial-gradient(ellipse at 100% 0%, #426858 0%, transparent 65%), #123b40; color: white; padding: 48px; display: flex; flex-direction: column; justify-content: space-between; gap: 40px; }
.acceso-copy .eyebrow { color: #f1ce9d; }
.acceso-copy h1 { font-size: clamp(34px, 4vw, 49px); font-weight: 650; margin: 18px 0; line-height: 1.12; letter-spacing: -.045em; }
.acceso-copy p { color: #c0d7d5; max-width: 370px; margin: 0; font-size: 16px; }
.acceso-modulos { display: grid; gap: 14px; }
.acceso-modulos > div { display: grid; grid-template-columns: 36px 1fr; column-gap: 12px; align-items: center; }
.acceso-modulos > div > span { grid-row: span 2; font-size: 11px; color: #bbdacf; border: 1px solid #4b6e6b; border-radius: 10px; height: 36px; display: grid; place-items: center; }
.acceso-modulos strong { font-size: 14px; font-weight: 600; }
.acceso-modulos small { color: #bad0cc; font-size: 12px; }
.login-box { width: min(430px, calc(100% - 32px)); margin: 9vh auto; padding: 36px; border: 1px solid var(--borde); background: var(--papel); border-radius: 20px; box-shadow: var(--sombra); }
.acceso-layout .login-box { width: 100%; margin: 0; border: 0; border-radius: 0; box-shadow: none; align-self: center; padding: 56px; }
.login-box h1, .login-box h2 { font-size: 29px; margin: 0 0 10px; }
.login-box > p { color: var(--muted); margin: 0 0 28px; font-size: 14px; }
.login-box form { display: grid; gap: 9px; }
.login-box label { font-size: 13px; font-weight: 650; margin-top: 8px; }
.login-box input { width: 100%; min-height: 49px; }
.login-box button, .caja-box button, .modal-box button[type="submit"] { min-height: 46px; padding: 11px 16px; background: var(--verde); color: white; border: 1px solid transparent; border-radius: 11px; font-weight: 650; }
.login-box button:hover:not(:disabled), .caja-box button:hover:not(:disabled), .modal-box button[type="submit"]:hover:not(:disabled) { background: var(--verde-hover); }
.login-box > .marca-simbolo { margin-bottom: 20px; }
.login-box .acceso-nota { font-size: 11px; text-align: center; margin: 24px 0 0; color: var(--muted); }
.error-msg { color: var(--rojo); font-size: 13px; line-height: 1.5; overflow-wrap: anywhere; }
.error-msg:empty { display: none; }
.caja-box { width: min(440px, calc(100% - 32px)); margin: 10vh auto; background: var(--papel); border: 1px solid var(--borde); border-radius: 22px; box-shadow: var(--sombra); padding: 36px; }
.caja-box > .marca-simbolo { margin-bottom: 24px; }
.caja-box h1 { font-size: 30px; margin: 0 0 14px; }
.caja-box > p { font-size: 14px; }
.caja-box form { display: grid; gap: 12px; margin: 26px 0 0; }
.caja-box label { font-size: 13px; font-weight: 650; }
.caja-box button { width: 100%; }
.caja-box #btn-logout-caja { margin-top: 14px; color: var(--tinta); background: transparent; border-color: var(--borde); }
.topbar { display: flex; align-items: center; justify-content: space-between; background: #123b40; color: white; padding: 16px 24px; gap: 24px; }
#pantalla-venta .topbar { display: grid; grid-template-columns: auto minmax(0,1fr) auto; position: sticky; top: 0; z-index: 5; }
.topbar .marca { font-size: 15px; }
.topbar .marca-simbolo { width: 38px; height: 38px; font-size: 14px; border-radius: 11px; }
.topbar .info { font-size: 12px; max-width: 195px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; color: #d3e7e1; }
.topbar-acciones { display: flex; gap: 4px; overflow-x: auto; justify-content: center; scrollbar-width: thin; min-width: 0; }
.topbar button { background: transparent; color: #e5efeb; border: 1px solid transparent; border-radius: 9px; padding: 10px 11px; white-space: nowrap; min-height: 42px; font-size: 13px; }
.topbar button:hover:not(:disabled) { background: #2a5052; }
.topbar #btn-cerrar-caja { border-color: #607775; color: #ffe5b3; }
.workspace-heading { max-width: 1550px; margin: 30px auto 24px; padding: 0 28px; display: flex; justify-content: space-between; align-items: center; gap: 16px; }
.workspace-heading h1 { margin: 0; font-size: 31px; font-weight: 700; }
.workspace-heading p { font-size: 14px; color: var(--muted); margin: 8px 0 0; }
.workspace-heading .eyebrow { margin-bottom: 6px; }
.estado-caja { background: var(--menta); color: #11644e; border: 1px solid #cde5d6; padding: 8px 12px; border-radius: 30px; white-space: nowrap; font-size: 12px; font-weight: 650; }
.estado-caja::before { content: ""; display: inline-block; width: 7px; height: 7px; background: #198566; border-radius: 50%; margin-right: 7px; }
.estado-caja.pendiente { background: var(--ambar-fondo); border-color: #eed8ad; color: var(--ambar); }
.estado-caja.pendiente::before { background: var(--ambar); }
.app-body { display: grid; grid-template-columns: minmax(0,1fr) 380px; gap: 26px; max-width: 1550px; margin: auto; padding: 0 28px 40px; align-items: start; }
.catalogo { min-width: 0; }
.seccion-encabezado { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-bottom: 18px; }
.seccion-encabezado h2 { margin: 0; font-size: 20px; }
.seccion-encabezado .eyebrow { margin-bottom: 5px; }
.contador { font-size: 11px; font-weight: 600; border-radius: 24px; padding: 5px 9px; background: #e9eeeb; color: var(--muted); white-space: nowrap; }
.herramientas-catalogo { display: grid; grid-template-columns: minmax(0,1fr) minmax(190px,.8fr); gap: 12px; margin-bottom: 12px; }
.buscador { display: flex; align-items: center; gap: 10px; padding: 0 14px; background: white; border: 1px solid var(--borde); border-radius: 12px; min-width: 0; }
.buscador:focus-within { outline: 2px solid var(--verde); outline-offset: 2px; }
.buscador svg { width: 19px; height: 19px; stroke: var(--muted); fill: none; stroke-width: 1.8; flex-shrink: 0; }
.buscador input { border: 0; width: 100%; min-height: 58px; background: transparent; padding: 12px 0; outline: 0; font-size: 14px; }
.lector { background: #e9f1ec; border: 1px solid #c9ddd2; border-radius: 12px; padding: 7px 12px; min-width: 0; display: flex; flex-direction: column; }
.lector > span { font-size: 10px; text-transform: uppercase; letter-spacing: .08em; font-weight: 700; color: #306c5e; }
.input-escaner { border: 0; padding: 3px 0; min-height: 28px; width: 100%; font-size: 12px; background: transparent; border-radius: 4px; }
.input-escaner:focus { outline-offset: 1px; }
.grid-productos { display: grid; grid-template-columns: repeat(auto-fill,minmax(168px,1fr)); gap: 14px; }
.producto-card { display: flex; flex-direction: column; align-items: stretch; text-align: left; min-width: 0; background: var(--papel); border: 1px solid var(--borde); border-radius: 16px; padding: 18px; box-shadow: 0 2px 4px rgba(18,59,40,.02); color: var(--tinta); transition: border-color .15s, box-shadow .15s; }
.producto-card:hover:not(:disabled) { border-color: #5ca18a; box-shadow: 0 6px 18px rgba(18,59,40,.08); }
.producto-card:disabled { opacity: 1; }
.producto-card.sin-stock { background: #edf1ee; }
.producto-card.sin-stock .precio { color: var(--muted); }
.producto-cabecera { display: flex; justify-content: space-between; align-items: center; gap: 6px; margin-bottom: 18px; }
.producto-inicial { display: grid; place-items: center; height: 34px; min-width: 34px; border-radius: 10px; background: #f0f5f1; color: #537c6b; font-weight: 650; font-size: 13px; }
.stock-etiqueta { font-size: 10px; font-weight: 650; padding: 4px 7px; background: var(--menta); color: #226448; border-radius: 20px; }
.stock-etiqueta.bajo { background: var(--ambar-fondo); color: var(--ambar); }
.stock-etiqueta.agotado { background: #e0e6e1; color: #526962; }
.producto-card .nombre { font-weight: 650; line-height: 1.35; font-size: 14px; min-height: 38px; overflow-wrap: anywhere; margin-bottom: 12px; }
.producto-card .precio { font-size: 22px; font-weight: 750; letter-spacing: -.035em; margin-top: auto; }
.producto-pie { display: flex; align-items: center; justify-content: space-between; gap: 8px; margin-top: 7px; }
.producto-card .stock { color: var(--muted); font-size: 11px; overflow-wrap: anywhere; }
.producto-agregar { display: grid; place-items: center; width: 26px; height: 26px; flex-shrink: 0; border: 1px solid #cfe2d7; color: var(--verde); border-radius: 50%; font-size: 20px; line-height: 1; }
.catalogo-vacio { grid-column: 1/-1; padding: 44px 20px; text-align: center; background: white; border: 1px dashed #bdcfc4; border-radius: 14px; color: var(--muted); font-size: 14px; }
.catalogo-vacio strong { display: block; font-size: 17px; color: var(--tinta); margin-bottom: 6px; }
.carrito { min-width: 0; padding: 24px; border: 1px solid var(--borde); border-radius: 20px; background: var(--papel); box-shadow: var(--sombra); position: sticky; top: 100px; scroll-margin-top: 140px; }
.carrito-vacio { display: flex; flex-direction: column; align-items: center; text-align: center; padding: 28px 14px; }
.carrito-vacio > span { width: 48px; height: 48px; border: 1px dashed #a8c7b7; background: #f2f7f3; border-radius: 15px; font-size: 27px; color: #739981; margin-bottom: 16px; }
.carrito-vacio strong { font-size: 14px; }
.carrito-vacio p { color: var(--muted); font-size: 12px; max-width: 225px; margin: 7px 0 0; }
.item-carrito { border-bottom: 1px solid #e5ede7; padding: 15px 0; }
.item-cabecera { display: flex; gap: 12px; align-items: flex-start; justify-content: space-between; margin-bottom: 12px; }
.item-nombre { min-width: 0; font-size: 13px; font-weight: 650; overflow-wrap: anywhere; }
.item-nombre small { display: block; color: var(--muted); font-size: 11px; font-weight: 400; margin-top: 4px; }
.item-subtotal { font-size: 14px; font-weight: 700; white-space: nowrap; }
.item-controles { display: flex; align-items: center; justify-content: space-between; gap: 8px; }
.cantidad-control { display: inline-flex; align-items: center; gap: 2px; background: #f3f6f3; border-radius: 10px; padding: 3px; }
.cantidad-control button { width: 36px; height: 36px; border: 0; border-radius: 7px; background: white; color: var(--tinta); font-size: 20px; }
.cantidad-control input { width: 52px; min-height: 36px; padding: 4px 2px; border: 0; background: transparent; text-align: center; font-size: 14px; font-weight: 650; appearance: textfield; -moz-appearance: textfield; }
.cantidad-control input::-webkit-inner-spin-button { appearance: none; }
.btn-quitar { padding: 8px 5px; background: transparent; border: 0; color: var(--muted); min-height: 36px; font-size: 12px; text-decoration: underline; text-underline-offset: 3px; }
.btn-quitar:hover:not(:disabled) { color: var(--rojo); }
.carrito-total { border-top: 1px solid var(--borde); padding: 20px 0; margin-top: 18px; display: flex; justify-content: space-between; align-items: center; gap: 10px; }
.carrito-total > span { font-size: 13px; color: var(--muted); }
.carrito-total strong { font-size: 28px; font-weight: 750; letter-spacing: -.04em; overflow-wrap: anywhere; min-width: 0; }
.label-cobro, #pago-mixto label, .efectivo-panel > label { display: block; font-size: 12px; font-weight: 650; margin-bottom: 7px; }
.carrito select, .carrito input:not(.cantidad-input) { width: 100%; }
#pago-mixto { display: grid; grid-template-columns: 1fr 1fr; gap: 8px 12px; padding: 14px 0 4px; }
#pago-mixto label { margin: 0; align-self: center; }
#pago-mixto input { min-height: 40px; }
#pago-mixto-resumen { grid-column: 1/-1; color: var(--muted); font-size: 12px; margin: 6px 0; }
.efectivo-panel { margin-top: 16px; padding: 14px; background: #f3f7f3; border: 1px solid #e2ebe3; border-radius: 12px; }
.opcional { font-weight: 400; color: var(--muted); }
.vuelto { display: flex; align-items: center; justify-content: space-between; margin-top: 12px; font-size: 13px; }
.vuelto strong { font-size: 20px; color: var(--verde); }
.vuelto.insuficiente strong { color: var(--rojo); }
.ayuda-cobro { font-size: 11px; color: var(--muted); margin: 7px 0 0; }
.carrito button.cobrar { width: 100%; min-height: 51px; margin-top: 16px; border: 0; border-radius: 12px; background: var(--verde); color: white; font-weight: 650; font-size: 15px; }
.carrito button.cobrar:hover:not(:disabled) { background: var(--verde-hover); }
.resumen-movil { display: none; }
.modal { position: fixed; inset: 0; padding: 20px; display: flex; align-items: center; justify-content: center; background: rgba(12,36,36,.57); z-index: 20; }
.modal-box { background: var(--papel); border: 1px solid var(--borde); border-radius: 20px; padding: 26px; width: min(740px,100%); max-height: 89dvh; overflow: auto; box-shadow: 0 24px 70px rgba(9,33,30,.2); }
.modal-header { display: flex; justify-content: space-between; align-items: center; gap: 14px; margin-bottom: 22px; }
.modal-header h2 { margin: 0; font-size: 24px; }
.modal-header .cerrar { width: 42px; height: 42px; border: 0; border-radius: 50%; background: #f0f4f0; color: var(--tinta); font-size: 26px; flex-shrink: 0; }
.modal-box form { display: flex; flex-direction: column; gap: 10px; margin-bottom: 24px; padding-bottom: 24px; border-bottom: 1px solid var(--borde); }
.modal-box .fila-2 { display: flex; gap: 10px; }
.modal-box .fila-2 input { flex: 1; width: 0; }
#form-producto > label, #form-producto .fila-2 > label { font-size: 13px; font-weight: 600; line-height: 1.5; }
#form-producto .fila-2 > label { display: grid; gap: 6px; flex: 1; }
#form-producto .fila-2 label input { width: 100%; }
.modal-box #btn-limpiar-form-producto { background: #edf3ee; color: var(--tinta); min-height: 44px; border: 1px solid var(--borde); border-radius: 10px; }
.importar-csv { margin-bottom: 24px; padding: 18px; border-radius: 12px; background: #f4f7f3; border: 1px solid var(--borde); }
.importar-csv h3 { margin: 0 0 8px; font-size: 16px; }
.ayuda-csv { font-size: 12px; color: var(--muted); line-height: 1.7; margin: 0 0 12px; overflow-wrap: anywhere; }
.ayuda-csv code { font-size: 11px; background: #e6ede6; border-radius: 4px; padding: 2px 4px; }
.importar-csv input { max-width: 100%; font-size: 12px; }
#csv-resultado { font-size: 12px; margin-top: 10px; }
.tabla-productos { width: 100%; border-collapse: collapse; font-size: 13px; }
.tabla-productos th { color: var(--muted); font-weight: 650; background: #f3f6f2; font-size: 11px; letter-spacing: .035em; }
.tabla-productos th, .tabla-productos td { text-align: left; padding: 12px 9px; border-bottom: 1px solid var(--borde); vertical-align: middle; overflow-wrap: normal; }
.producto-fila-nombre { min-width: 160px; overflow-wrap: break-word; }
.producto-estado { color: var(--verde); font-size: 14px; line-height: 1.5; margin: 0 0 8px; }
.producto-estado:empty { display: none; }
#form-producto { scroll-margin-top: 12px; }
.modal-box { min-width: 0; }
.modal-box form > *, .modal-box .fila-2 > * { min-width: 0; }
.tabla-productos button { min-height: 36px; border: 1px solid var(--borde); background: #f1f6f1; color: var(--tinta); border-radius: 8px; padding: 7px 10px; font-size: 11px; margin: 2px; white-space: nowrap; }
.btn-danger { background: #fcecee !important; border-color: #f0d0d3 !important; color: var(--rojo) !important; }
.btn-danger:hover { background: #f6dce0 !important; }
@media(max-width:1200px) {
  #pantalla-venta .topbar { grid-template-columns: 1fr auto; gap: 12px; padding: 12px 24px; }
  .topbar-acciones { grid-column: 1/-1; grid-row: 2; justify-content: flex-start; }
  .app-body { grid-template-columns: minmax(0,1fr) 350px; gap: 20px; }
  .carrito { top: 145px; padding: 20px; }
  .herramientas-catalogo { grid-template-columns: 1fr; }
  .lector { flex-direction: row; align-items: center; gap: 12px; padding: 10px 14px; }
  .lector > span { white-space: nowrap; }
  .grid-productos { grid-template-columns: repeat(auto-fill,minmax(150px,1fr)); }
}
@media(max-width:800px) {
  .pantalla-acceso.activa { padding: 20px; }
  .acceso-layout { grid-template-columns: 1fr 1fr; min-height: 600px; }
  .acceso-presentacion { padding: 30px; }
  .acceso-copy h1 { font-size: 36px; }
  .acceso-layout .login-box { padding: 32px; }
  .app-body { grid-template-columns: minmax(0,1fr) 320px; padding-left: 20px; padding-right: 20px; gap: 16px; }
  .workspace-heading { padding: 0 20px; }
}
@media(max-width:700px) {
  .pantalla-acceso.activa { padding: 0; display: block; }
  .acceso-layout { display: block; border: 0; border-radius: 0; min-height: 100svh; }
  .acceso-presentacion { padding: 28px 24px; gap: 28px; }
  .acceso-presentacion .marca { font-size: 15px; }
  .acceso-copy h1 { font-size: 32px; margin: 8px 0 12px; }
  .acceso-copy p { font-size: 13px; max-width: 340px; }
  .acceso-copy .eyebrow { font-size: 9px; }
  .acceso-modulos { display: none; }
  .acceso-layout .login-box { padding: 30px 24px; }
  .login-box h2 { font-size: 25px; }
  .login-box > p { margin-bottom: 20px; }
  .login-box input, input, select { font-size: 16px; }
  #pantalla-venta .topbar { padding: 12px 16px; gap: 10px; }
  .topbar .marca { font-size: 13px; gap: 8px; }
  .topbar .marca small { font-size: 9px; }
  .topbar .marca-simbolo { width: 32px; height: 32px; font-size: 12px; border-radius: 9px; }
  .topbar .info { max-width: 135px; font-size: 10px; }
  .topbar-acciones { gap: 3px; padding-bottom: 2px; -webkit-overflow-scrolling: touch; }
  .topbar button { flex-shrink: 0; min-height: 44px; padding: 9px 12px; font-size: 12px; }
  .workspace-heading { padding: 0 16px; margin: 22px 0; align-items: flex-start; }
  .workspace-heading h1 { font-size: 27px; }
  .workspace-heading p { font-size: 12px; }
  .estado-caja { font-size: 10px; padding: 7px 9px; margin-top: 24px; }
  .app-body { display: grid; grid-template-columns: minmax(0,1fr); padding: 0 16px 110px; gap: 24px; }
  .herramientas-catalogo { gap: 9px; }
  .buscador input { min-height: 52px; font-size: 15px; }
  .lector .input-escaner { font-size: 12px; }
  .grid-productos { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 10px; }
  .producto-card { padding: 14px; border-radius: 13px; }
  .producto-card .nombre { font-size: 13px; min-height: 35px; }
  .producto-card .precio { font-size: 22px; }
  .producto-cabecera { margin-bottom: 14px; }
  .producto-inicial { height: 30px; min-width: 30px; font-size: 12px; }
  .stock-etiqueta { font-size: 9px; padding: 4px 6px; }
  .carrito { position: static; width: 100%; padding: 22px; border-radius: 18px; }
  .cantidad-control button { height: 44px; width: 40px; }
  .cantidad-control input { height: 44px; font-size: 16px; }
  .btn-quitar { min-height: 44px; padding: 8px; }
  .item-nombre { font-size: 14px; }
  .resumen-movil { display: flex; position: fixed; z-index: 8; bottom: max(12px,env(safe-area-inset-bottom)); left: 16px; right: 16px; width: calc(100% - 32px); padding: 14px 18px; align-items: center; gap: 16px; background: #123b40; color: white; border: 1px solid #45635d; border-radius: 15px; box-shadow: 0 10px 35px rgba(10,40,30,.22); min-height: 62px; text-align: left; }
  .resumen-movil > span:first-child { flex: 1; font-size: 13px; font-weight: 650; }
  .resumen-movil small { display: block; font-size: 10px; font-weight: 400; color: #c0d6cc; margin-top: 2px; }
  .resumen-movil strong { font-size: 19px; }
  .modal { padding: 10px; }
  .modal-box { padding: 20px; max-height: 91dvh; border-radius: 16px; }
  .modal-header h2 { font-size: 22px; }
  .tabla-productos { display: block; overflow-x: auto; font-size: 12px; }
  .tabla-productos button { min-height: 44px; }
  .tabla-productos th, .tabla-productos td { white-space: nowrap; }
  #modal-productos .tabla-productos { overflow: visible; }
  #modal-productos .tabla-productos thead { display: none; }
  #tabla-productos-body { display: grid; gap: 14px; }
  #tabla-productos-body .producto-fila { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 10px 8px; padding: 14px; border: 1px solid var(--borde); border-radius: 12px; background: white; }
  #tabla-productos-body td { display: block; min-width: 0; border: 0; padding: 0; white-space: normal; overflow-wrap: break-word; font-size: 14px; line-height: 1.5; }
  #tabla-productos-body .producto-fila-nombre { grid-column: 1/-1; font-size: 16px; font-weight: 650; }
  #tabla-productos-body .producto-fila-precio { grid-column: 1/3; }
  #tabla-productos-body [data-label]::before { content: attr(data-label); display: block; color: var(--muted); font-size: 12px; }
  #tabla-productos-body button { width: 100%; height: 100%; min-height: 44px; margin: 0; padding: 9px 5px; font-size: 12px; line-height: 1.35; white-space: normal; word-break: normal; }
  .imagen-editor p { font-size: 14px; line-height: 1.6; overflow-wrap: break-word; }
  .imagen-comparacion { gap: 8px; }
  .imagen-opciones { display: grid; grid-template-columns: minmax(0,1fr); }
  .imagen-opciones button { width: 100%; font-size: 14px; line-height: 1.45; }
  .modal-header h2 { overflow-wrap: normal; font-size: clamp(19px,5vw,22px); }
  .seccion-encabezado { flex-wrap: wrap; }
  .catalogo .seccion-encabezado h2 { min-width: 130px; flex: 1; overflow-wrap: normal; }
}
@media(max-width:430px) {
  .modal-box .fila-2 { flex-direction: column; }
  .modal-box .fila-2 input { width: 100%; }
  #form-producto .fila-2 > label { flex: auto; width: 100%; }
  .carrito { padding: 18px; }
}
@media(prefers-reduced-motion:reduce) {
  *, *::before, *::after { scroll-behavior: auto !important; transition: none !important; }
}

.historial-filtros{display:flex;flex-wrap:wrap;align-items:end;gap:12px}.historial-filtros label{flex:1 1 150px;min-width:0}.historial-filtros input,.historial-filtros select{width:100%;min-width:0}.historial-paginacion{display:flex;justify-content:space-between;gap:12px;margin-top:16px}.historial-paginacion button{min-height:44px}

#modal-devolucion{z-index:60}#modal-devolucion .modal-box{width:min(720px,96vw)}.devolucion-item{padding:16px;margin:12px 0;border:1px solid var(--borde);border-radius:12px}.devolucion-item p{font-size:14px}.devolucion-check{display:flex;align-items:center;gap:10px;margin:16px 0}.devolucion-check input[type=checkbox]{width:22px;height:22px;flex:0 0 22px}.devolucion-total{font-size:20px;font-weight:700}#devolucion-referencia{overflow-wrap:anywhere}#devolucion-mixto{display:flex;gap:12px;flex-wrap:wrap}#devolucion-mixto label{flex:1 1 120px;min-width:0}#form-devolucion textarea{width:100%;min-height:85px;box-sizing:border-box;font:inherit;padding:12px;border:1px solid var(--borde);border-radius:10px}.devolucion-aviso{padding:14px 20px;background:#fff0c2;color:#493b12}.comprobante-devoluciones>div{border-top:1px solid #ccd6d2;margin-top:14px;padding-top:8px;overflow-wrap:anywhere}@media print{#modal-devolucion,.devolucion-aviso{display:none!important}}

#modal-ingreso,#modal-ingresos-historial{z-index:60}.inventario-ingresos{display:flex;flex-wrap:wrap;gap:10px;margin:12px 0}.ingreso-linea,.ingreso-detalle{padding:14px;border:1px solid var(--borde);border-radius:12px;margin:12px 0}.ingreso-detalle{overflow-wrap:anywhere}.ingreso-detalle summary{cursor:pointer;font-weight:650;line-height:1.6}.ingreso-linea .fila-2>label{flex:1;min-width:0}#form-ingreso textarea{width:100%;min-height:70px;box-sizing:border-box;font:inherit;padding:12px}#catalogo-categoria{width:100%;margin:0 0 12px}#tabla-productos-body .producto-fila-nombre small{display:block;font-size:12px;font-weight:400;color:var(--muted)}@media print{#modal-ingreso,#modal-ingresos-historial,#ingreso-aviso{display:none!important}}

#form-ingreso .fila-2>label{display:grid;gap:6px;flex:1;min-width:0}#form-ingreso .fila-2 input{width:100%}

.modal-box form.historial-filtros{flex-direction:row}.modal-box form.historial-filtros label{display:flex;flex-direction:column;gap:6px;align-items:stretch;margin:0}@media(max-width:430px){.modal-box form.historial-filtros label{flex:1 1 100%}}

#modal-respaldos{z-index:70}.reportes-resumen{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:16px 0}.reportes-resumen>div{border:1px solid var(--borde);padding:14px;border-radius:12px;background:#f2f7f4}.reportes-resumen span,.reportes-resumen strong{display:block}.reportes-resumen strong{font-size:22px;overflow-wrap:anywhere;margin-top:8px}#respaldo-preview,#respaldo-estado{overflow-wrap:anywhere}#modal-respaldos p{line-height:1.65}#modal-respaldos input[type=file]{max-width:100%}@media(max-width:430px){.reportes-resumen{grid-template-columns:1fr}}@media print{#modal-respaldos{display:none!important}}

#modal-proveedores,#modal-csv{z-index:65}.proveedor-card,.csv-fila{padding:14px;margin:12px 0;border:1px solid var(--borde);border-radius:12px;overflow-wrap:anywhere}.proveedor-card p{white-space:pre-wrap}.csv-fila label{display:block;margin:10px 0}.csv-fila select{width:100%;max-width:100%}.csv-herramientas{display:flex;gap:8px;flex-wrap:wrap}.csv-herramientas button{white-space:normal;line-height:1.5}#form-proveedor .fila-2>label{display:grid;flex:1;min-width:0}#form-proveedor .fila-2 input{width:100%}#form-proveedor textarea{width:100%;min-height:75px;box-sizing:border-box;font:inherit;padding:10px}#ingreso-proveedor-ayuda{display:block;line-height:1.5;margin:8px 0}#ingreso-proveedor-id{max-width:100%;width:100%}@media print{#modal-proveedores,#modal-csv,#csv-aviso{display:none!important}}
.tg-box{max-width:900px!important}.tg-box>details{border:1px solid #d9e3df;border-radius:12px;margin:16px 0;padding:16px}.tg-box summary{cursor:pointer;padding:8px 0}.tg-tools{display:flex;flex-wrap:wrap;gap:10px;margin:16px 0}.tg-tools select{min-width:150px}.tg-pedido{border-top:1px solid #d9e3df;padding:12px 0;overflow-wrap:anywhere}.tg-pedido small{display:block}.tg-pedido button{margin:6px}.tg-fields{display:grid;grid-template-columns:1fr 1fr;gap:16px}.tg-fields input,.tg-fields textarea{width:100%}.tg-producto{display:flex!important;align-items:center;gap:12px;padding:12px 0;border-bottom:1px solid #e2e8e2}.tg-producto input{width:20px!important;min-height:20px!important;margin:0!important;flex-shrink:0}.tg-producto span{min-width:0;overflow-wrap:anywhere}.tg-producto small{display:block}#tg-lista{max-height:360px;overflow:auto;margin-bottom:20px}#tg-enlace{display:block;overflow-wrap:anywhere;margin:15px 0;color:#245e4c}#tg-cobro{background:#eff5ea;padding:18px;border-radius:10px;margin:16px 0}#tg-cobro input[type=checkbox],#tg-form>label input{width:auto;min-height:18px;display:inline-block}#modal-tienda{z-index:70}@media(max-width:600px){.tg-fields{grid-template-columns:1fr}.tg-box>details{padding:12px}.tg-box{padding:18px!important}}@media print{#modal-tienda{display:none!important}}
.inventario-estados{display:flex;gap:8px;flex-wrap:wrap;margin:14px 0}.inventario-estados button{min-height:44px;padding:10px 14px;border:1px solid #c9d8d1;border-radius:10px;background:#f2f6f1;color:#173f3b;font:inherit;cursor:pointer}.inventario-estados button[aria-pressed=true]{background:#173f3b;color:#fff;border-color:#173f3b}
.marca-perfil{display:flex;align-items:center;text-align:left;border:0;background:transparent;color:inherit;padding:0;cursor:pointer;min-width:0}.marca-perfil strong{font-size:inherit;font-weight:700;overflow-wrap:anywhere}.marca-perfil>span:last-child{min-width:0}.marca-perfil .marca-simbolo img{width:100%;height:100%;object-fit:contain;border-radius:12px}.perfil-usuario{background:transparent;border:1px solid #ffffff35;border-radius:10px;color:inherit;padding:9px 12px;min-height:44px;cursor:pointer;font:inherit;max-width:100%;overflow-wrap:anywhere}.perfil-box{max-width:580px!important}.perfil-preview{height:108px;width:108px;margin:0 auto 20px;background:#edf4e7;border-radius:20px;display:grid;place-items:center;font-size:32px;color:#173f3b;font-weight:bold}.perfil-preview img{width:100%;height:100%;object-fit:contain;border-radius:20px}#perfil-form input[type=file]{padding:10px;max-width:100%}#modal-perfil{z-index:90}.navegacion-aviso{position:fixed;bottom:18px;left:50%;transform:translateX(-50%);background:#173f3b;color:white;padding:14px 20px;border-radius:12px;z-index:200;max-width:calc(100% - 24px);box-shadow:0 8px 30px #0003}.instalar-app{min-height:44px}body{overscroll-behavior-x:none}button:focus-visible{outline:3px solid #80bda2;outline-offset:3px}@media(max-width:600px){.marca-perfil{max-width:calc(100% - 12px)}.marca-perfil strong{font-size:16px}.perfil-usuario{font-size:13px}.perfil-box{padding:20px!important}.perfil-box h2{font-size:22px}}@media print{#modal-perfil,.navegacion-aviso{display:none!important}}
#marca-perfil{white-space:normal;max-width:280px}#marca-negocio-nombre{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;overflow-wrap:anywhere}.perfil-usuario{max-width:160px}@media(max-width:600px){.topbar .perfil-usuario{max-width:120px}#marca-perfil{padding:0}}

[data-modulo-tienda][hidden]{display:none!important}

.tg-compartir-acciones{display:flex;flex-wrap:wrap;gap:10px;margin:14px 0}.tg-compartir-acciones button{min-height:44px}#tg-compartir-estado{font-size:14px;overflow-wrap:anywhere}#tg-enlace{display:block;overflow-wrap:anywhere}

/* Service offerings use the catalog without inventory quantities. */
[data-negocio="servicios"] #modal-productos :is(.producto-fila-stock,.tabla-productos th:nth-child(3),#inventario-filtro,label[for="inventario-filtro"],.inventario-ingresos #btn-proveedores,.inventario-ingresos #btn-ingreso-mercaderia,.inventario-ingresos #btn-ingresos-historial,.importar-csv){display:none}
[data-negocio="servicios"] #modal-productos .tabla-productos th:last-child{width:auto}
[data-negocio="servicios"] [hidden]{display:none!important}

#gestion-tienda-acceso{position:fixed;right:20px;bottom:24px;z-index:9;max-width:calc(100vw - 40px);display:flex;flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;text-align:right}#gestion-tienda-acceso[hidden]{display:none!important}#gestion-tienda-flotante,#gestion-tienda-compartir{display:inline-flex;justify-content:center;align-items:center;gap:6px;min-height:44px;padding:8px 14px;margin:0;border:1px solid #5c8b78;border-radius:999px;background:#173f3b;color:#fff;font-size:13px;font-weight:700;line-height:1.2;box-shadow:0 4px 14px #102f3528}#gestion-tienda-flotante:hover{background:#24594f}#gestion-tienda-compartir{border-color:#9cbda9;background:#eef5e8;color:#173f3b}#gestion-tienda-compartir:hover{background:#deecd5}#gestion-tienda-estado:empty{display:none}#gestion-tienda-estado{flex-basis:100%;margin:0;padding:12px;background:#fff;color:#173f3b;border:1px solid #cbd9d1;border-radius:12px;max-width:320px;box-shadow:0 4px 16px #0002}body:has(.modal:not(.oculto)) #gestion-tienda-acceso,body:has(#pantalla-login.activa) #gestion-tienda-acceso{display:none}@media(max-width:600px){#gestion-tienda-acceso{right:12px;bottom:calc(94px + env(safe-area-inset-bottom));flex-direction:column;align-items:flex-end;gap:6px;max-width:calc(100vw - 24px)}#gestion-tienda-flotante,#gestion-tienda-compartir{width:142px;min-height:44px;font-size:12px;padding:7px 10px}#gestion-tienda-estado{flex-basis:auto;max-width:min(280px,calc(100vw - 24px))}}@media print{#gestion-tienda-acceso{display:none!important}}

#producto-variantes{margin:16px 0;padding:16px;border:1px solid #cbd9d1;border-radius:12px}#producto-variantes[hidden],#prod-variante-campos[hidden],#prod-otra-variante[hidden]{display:none!important}#producto-variantes p{font-size:13px;color:#53675e}#prod-otra-variante{font-size:13px;margin-top:12px}

.pwa-instalar-panel{position:fixed;bottom:16px;left:50%;transform:translateX(-50%);z-index:250;display:flex;flex-wrap:wrap;align-items:center;gap:12px;padding:14px;background:#123b40;color:white;border:1px solid #91bba9;border-radius:14px;box-shadow:0 8px 30px #0004;width:max-content;max-width:calc(100vw - 24px)}.pwa-instalar-panel button{min-height:44px;cursor:pointer}.pwa-instalar-panel p{flex-basis:100%;margin:0;font-size:14px}#pwa-instalacion-estado{overflow-wrap:anywhere}

.actualizacion-controles{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-top:18px;max-width:100%}.actualizacion-controles button{font:inherit;font-size:13px;padding:10px 14px;border:1px solid #71897c;border-radius:8px;background:transparent;color:inherit;min-height:44px;cursor:pointer}.actualizacion-controles p{font-size:13px;flex-basis:100%;margin:0;overflow-wrap:anywhere}.actualizacion-controles p:empty{display:none}.actualizacion-aviso{position:fixed;top:max(12px,env(safe-area-inset-top));left:50%;transform:translateX(-50%);z-index:3000;width:min(560px,calc(100vw - 24px));box-sizing:border-box;display:flex;flex-wrap:wrap;gap:10px;padding:16px;border-radius:14px;border:1px solid #88ad9a;background:#123b40;color:white;box-shadow:0 10px 35px #0005;font-family:Arial,sans-serif}.actualizacion-aviso[hidden]{display:none!important}.actualizacion-aviso p{width:100%;margin:0;font-size:15px}.actualizacion-aviso button{min-height:44px;padding:10px 14px;border-radius:8px;border:1px solid #b8cfc2;background:#e9f2e5;color:#143b35;font-weight:700;cursor:pointer}@media print{.actualizacion-aviso,.actualizacion-controles{display:none!important}}

.pwa-acceso{box-sizing:border-box;display:flex;justify-content:space-between;align-items:center;gap:18px;width:calc(100% - 32px);max-width:1280px;margin:14px auto;padding:14px 18px;border:1px solid var(--line,#c4d6ca);border-radius:12px;background:var(--paper,#f2f7ef);color:var(--ink,#173f3b);font-family:inherit}.pwa-acceso[hidden],.instalar-app[hidden]{display:none!important}.pwa-acceso strong{display:block;font-size:15px;line-height:1.3}.pwa-acceso [data-pwa-nombre]{display:block;font-size:12px;opacity:.8;margin-top:3px;overflow-wrap:anywhere}.pwa-acceso-acciones{display:flex;gap:8px;flex-shrink:0;align-items:center}.pwa-acceso button,#pwa-ayuda button{min-height:44px;padding:10px 14px;border:1px solid #839c8d;border-radius:8px;font:inherit;font-size:13px;cursor:pointer}.pwa-acceso .instalar-app,#pwa-ayuda .instalar-app{background:var(--ink,#173f3b);color:var(--paper,#fff);font-weight:750}.pwa-como-instalar{background:transparent;color:inherit}.pwa-acceso #pwa-instalacion-estado{font-size:13px;line-height:1.5;flex-basis:100%;margin:0}.pwa-acceso:has(#pwa-instalacion-estado){flex-wrap:wrap}#pwa-ayuda{box-sizing:border-box;width:min(460px,calc(100% - 24px));max-height:calc(100svh - 24px);overflow:auto;margin:auto;padding:26px;border:1px solid #82998b;border-radius:18px;background:var(--paper,#fff);color:var(--ink,#173f3b);box-shadow:0 20px 80px #0005;font-family:inherit}#pwa-ayuda::backdrop{background:#051c24a6}#pwa-ayuda .pwa-ayuda-cerrar{position:absolute;right:10px;top:10px;font-size:23px;line-height:1;padding:7px 13px;background:transparent;color:inherit;border:0}#pwa-ayuda h2{font-size:26px;margin:16px 0 8px;line-height:1.2}#pwa-ayuda p{font-size:14px;line-height:1.6}.pwa-ayuda-icono{display:grid;place-items:center;width:72px;height:72px;border:1px solid #819b8980;border-radius:14px;background:#edf3e9;color:#173f3b;font-size:24px;font-weight:850}.pwa-ayuda-icono img{height:100%;width:100%;object-fit:contain;border-radius:13px}.pwa-ayuda-nombre{font-weight:750;overflow-wrap:anywhere}#pwa-ayuda ol{padding-left:22px;margin:18px 0}#pwa-ayuda li{padding:5px 0 9px 5px;font-size:14px;line-height:1.6}.pwa-ayuda-nota{padding:12px;border:1px solid #819b8960;border-radius:9px;font-size:12px!important}.pwa-ayuda-acciones{display:flex;gap:8px;flex-wrap:wrap}.pwa-ayuda-estado p{font-size:13px!important}#pantalla-caja .pwa-acceso{width:100%;text-align:left;margin-top:24px}@media(max-width:650px){.pwa-acceso{align-items:flex-start;flex-direction:column;gap:10px;padding:12px 14px;margin:10px auto}.pwa-acceso-acciones{width:100%;display:grid;grid-template-columns:1fr 1fr;gap:8px}.pwa-acceso button{font-size:12px;padding:9px 10px;white-space:normal}.pwa-acceso strong{font-size:14px}#pwa-ayuda{padding:22px}#pwa-ayuda h2{font-size:24px}}@media print{.pwa-acceso,#pwa-ayuda{display:none!important}}

#catalogo>.pwa-acceso{width:100%;max-width:none;margin:16px 0}.instalar-app{max-width:100%;overflow-wrap:anywhere}
