:root{--tinta:#1a1a1a;--tinta-suave:#5c5c5c;--linea:#d4d4d4;--fondo:#fff;--fondo-suave:#f6f6f4;--acento:#1c4f7c;--error:#a3261d;--radio:3px;--fuente:-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif}*{box-sizing:border-box}body{font-family:var(--fuente);color:var(--tinta);background:var(--fondo);margin:0;font-size:16px;line-height:1.5}h1{margin:0 0 1rem;font-size:1.5rem}h2{margin:1.5rem 0 .75rem;font-size:1.2rem}a{color:var(--acento)}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible{outline:2px solid var(--acento);outline-offset:2px}label{margin:.75rem 0 .25rem;font-size:.9rem;font-weight:600;display:block}input,select,textarea{border:1px solid var(--linea);border-radius:var(--radio);width:100%;font:inherit;background:var(--fondo);color:var(--tinta);padding:.6rem}button{border:1px solid var(--acento);border-radius:var(--radio);background:var(--acento);color:#fff;min-height:44px;font:inherit;cursor:pointer;padding:.6rem 1.1rem}button:hover{background:#163e61}button:disabled{opacity:.55;cursor:default}button.secundario{background:var(--fondo);color:var(--acento)}.error{color:var(--error)}.muted{color:var(--tinta-suave);font-size:.9rem}.card-centro{width:100%;max-width:380px;margin:auto;padding:2rem 1rem}.card-centro form>button{margin-top:1.25rem}.barra-superior{border-bottom:1px solid var(--linea);background:var(--fondo-suave);align-items:center;gap:1rem;padding:.5rem 1rem;display:flex}.barra-superior .idioma{margin-left:auto}.contenido.documento{max-width:42rem}.documento section{margin-bottom:1.75rem}.documento li{margin-bottom:.35rem}#root{flex-direction:column;min-height:100dvh;display:flex}.contenido{flex:1 0 auto;width:100%;max-width:1100px;margin:0 auto;padding:1rem 1rem 3rem}nav.principal{border-bottom:1px solid var(--linea);background:var(--fondo-suave)}nav.principal ul{flex-wrap:wrap;align-items:center;gap:.25rem;margin:0;padding:.5rem 1rem;list-style:none;display:flex}nav.principal li.derecha{margin-left:auto}nav.principal a{border-radius:var(--radio);padding:.5rem .75rem;text-decoration:none;display:block}nav.principal a[aria-current=page]{background:var(--acento);color:#fff}footer.pie{border-top:1px solid var(--linea);color:var(--tinta-suave);padding:1rem;font-size:.85rem}.idioma{color:var(--linea);align-items:center;gap:.25rem;margin:0;display:flex}.idioma button{min-height:0;color:var(--tinta-suave);letter-spacing:.04em;background:0 0;border:0;padding:.5rem;font-weight:600}.idioma button:hover{color:var(--acento);background:0 0}.idioma button[aria-pressed=true]{color:var(--acento);text-decoration:underline}table{border-collapse:collapse;width:100%}th,td{text-align:left;border-bottom:1px solid var(--linea);padding:.5rem}th{text-transform:uppercase;letter-spacing:.02em;color:var(--tinta-suave);font-size:.85rem}td.dinero,th.dinero{text-align:right;font-variant-numeric:tabular-nums}@media (width<=767px){table.responsiva thead{display:none}table.responsiva tr{border:1px solid var(--linea);border-radius:var(--radio);margin-bottom:.75rem;padding:.5rem;display:block}table.responsiva td{border:none;justify-content:space-between;gap:1rem;padding:.35rem 0;display:flex}table.responsiva td:before{content:attr(data-label);color:var(--tinta-suave);font-weight:600}table.responsiva td.dinero{text-align:right}}.barra-contexto{border-bottom:1px solid var(--linea);flex-wrap:wrap;align-items:center;gap:1rem;margin-bottom:1rem;padding:.25rem 0 .75rem;display:flex}.nombre-negocio{margin:0;font-size:1.1rem;font-weight:600}.bienvenida{border:1px solid var(--linea);border-radius:var(--radio);background:var(--fondo-suave);max-width:34rem;margin:1rem 0 1.5rem;padding:1.25rem}.bienvenida h2{margin-top:0}.bienvenida p{margin:0 0 1rem}.campo-linea{flex-wrap:wrap;align-items:center;gap:.5rem;margin:0;display:flex}.campo-linea label{white-space:nowrap;margin:0}.campo-linea select,.campo-linea input{width:auto;min-width:8rem}.barra-lista{flex-wrap:wrap;align-items:center;gap:1rem;margin:1rem 0;display:flex}.barra-lista .agregar{margin-left:auto}.tabla-scroll{overflow-x:auto}table.conteo{width:auto;min-width:18rem;margin-bottom:1rem}table.conteo th{text-transform:none;color:var(--tinta);font-size:.9rem;font-weight:400}tfoot td{border-top:2px solid var(--linea);border-bottom:none}.oculto-visual{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.campo{margin-bottom:.25rem}.campo .error,.campo .muted{margin:.25rem 0 0;font-size:.85rem}.campo.casilla{align-items:center;gap:.5rem;margin:1rem 0 .25rem;display:flex}.campo.casilla input{width:auto;min-width:24px;min-height:24px}.campo.casilla label{margin:0;font-weight:400}.acciones-form{gap:.5rem;margin-top:1.25rem;display:flex}.aviso{border-left:4px solid var(--acento);background:var(--fondo-suave);margin:.75rem 0;padding:.6rem .75rem}.aviso.grave{border-left-color:var(--error)}.aviso p{margin:0 0 .25rem}.aviso ul{margin:.25rem 0 0;padding-left:1.25rem}dialog{border:1px solid var(--linea);border-radius:var(--radio);width:calc(100% - 2rem);max-width:480px;color:var(--tinta);background:var(--fondo);padding:1.25rem}dialog::backdrop{background:#00000073}dialog h2{margin-top:0}@media (width<=767px){.barra-lista .agregar{z-index:5;box-shadow:0 0 0 4px var(--fondo);margin-left:0;position:fixed;bottom:1rem;right:1rem}footer.pie{padding-bottom:5rem}}.solo-imprimir{display:none}@media print{@page{size:letter;margin:.5in}body{color:#000;background:#fff;font-size:10pt}nav.principal,footer.pie,.barra-contexto,.no-imprimir,button{display:none!important}.contenido{max-width:none;margin:0;padding:0}.solo-imprimir{display:block}.negocio-impreso{margin:0 0 .5rem;font-size:12pt;font-weight:600}h1{font-size:14pt}h2{margin:12pt 0 4pt;font-size:11pt}a{color:#000;text-decoration:none}table{border-collapse:collapse;width:100%}thead{display:table-header-group}tr,.aviso{break-inside:avoid;page-break-inside:avoid}h1,h2{break-after:avoid;page-break-after:avoid}th,td{border-bottom:1px solid #999;padding:2pt 4pt}th{color:#000}tfoot td{border-top:1pt solid #000}.tabla-scroll{overflow:visible}.muted{color:#333}.aviso{background:0 0;border-left:3pt solid #000;padding:4pt 6pt}.aviso.grave{border-left-color:#000}.error{color:#000;font-weight:600}}
