:root{--papel:#f7f4f4;--superficie:#fff;--superficie-2:#f0eaeb;--tinta:#221a1d;--tinta-2:#584a4e;--tinta-3:#8b7a7e;--regla:#e3dadb;--guinda:#7a1f3d;--guinda-2:#9b3355;--guinda-lavado:#f4e6eb;--teal:#2b5d68;--teal-lavado:#e4edef;--ok:#2e6b4f;--ok-lavado:#e3efe8;--aviso:#8a5b14;--aviso-lavado:#f6ebda;--alerta:#a83a2a;--alerta-lavado:#f7e5e1;--sombra:0 1px 2px #221a1d0d, 0 8px 24px -16px #221a1d2e;--mono:"IBM Plex Mono", ui-monospace, "SF Mono", Consolas, monospace;--cuerpo:"IBM Plex Sans", system-ui, -apple-system, "Segoe UI", sans-serif}@media (prefers-color-scheme:dark){:root{--papel:#181215;--superficie:#211a1d;--superficie-2:#2a2125;--tinta:#efe7e8;--tinta-2:#bcaaaf;--tinta-3:#8d7c81;--regla:#372b30;--guinda:#e38aa6;--guinda-2:#c96a8b;--guinda-lavado:#361a24;--teal:#8fc4ce;--teal-lavado:#16292e;--ok:#7fc49f;--ok-lavado:#16271e;--aviso:#d9a65b;--aviso-lavado:#2c2114;--alerta:#e8836f;--alerta-lavado:#301a16;--sombra:0 1px 2px #0006, 0 8px 24px -16px #000000b3}}*{box-sizing:border-box}body{background:var(--papel);color:var(--tinta);font-family:var(--cuerpo);-webkit-font-smoothing:antialiased;margin:0;font-size:15px;line-height:1.55}h1,h2,h3{letter-spacing:-.015em;text-wrap:balance;margin:0}h1{font-size:1.5rem}h2{font-size:1.15rem}h3{font-size:.95rem}a{color:var(--guinda)}:focus-visible{outline:2px solid var(--guinda);outline-offset:2px}.barra{border-bottom:1px solid var(--regla);background:var(--superficie)}.barra-interior{align-items:center;gap:20px;max-width:1180px;margin:0 auto;padding:14px 24px;display:flex}.marca{font-size:.95rem;font-weight:600}.marca span{color:var(--guinda)}.barra nav{gap:4px;margin-left:auto;display:flex}.barra nav a{color:var(--tinta-2);border-radius:5px;padding:6px 12px;font-size:.88rem;text-decoration:none}.barra nav a:hover{background:var(--superficie-2)}.barra nav a.activo{background:var(--guinda-lavado);color:var(--guinda);font-weight:500}main{max-width:1180px;margin:0 auto;padding:28px 24px 80px}.encabezado{flex-wrap:wrap;align-items:baseline;gap:16px;margin-bottom:20px;display:flex}.encabezado p{color:var(--tinta-3);margin:0;font-size:.88rem}.tarjeta{background:var(--superficie);border:1px solid var(--regla);box-shadow:var(--sombra);border-radius:8px}.tarjeta+.tarjeta{margin-top:18px}.tarjeta-titulo{border-bottom:1px solid var(--regla);background:var(--superficie-2);letter-spacing:.1em;text-transform:uppercase;color:var(--tinta-2);border-radius:7px 7px 0 0;padding:13px 18px;font-size:.75rem;font-weight:600}.tarjeta-cuerpo{padding:18px}.tabla-envoltura{border-radius:7px;overflow-x:auto}table{border-collapse:collapse;width:100%;min-width:640px;font-size:.88rem}th{text-align:left;font-family:var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--tinta-3);border-bottom:1px solid var(--regla);white-space:nowrap;padding:10px 16px;font-size:.66rem;font-weight:500}td{border-bottom:1px solid var(--regla);color:var(--tinta-2);padding:11px 16px}tr:last-child td{border-bottom:0}tbody tr:hover td{background:var(--superficie-2)}td.num{text-align:right;font-variant-numeric:tabular-nums}td.mono{font-family:var(--mono);color:var(--tinta);font-size:.8rem}.pastilla{font-family:var(--mono);letter-spacing:.05em;white-space:nowrap;border-radius:4px;padding:3px 8px;font-size:.68rem;font-weight:500;display:inline-block}.p-timbrado{background:var(--ok-lavado);color:var(--ok)}.p-error_pac{background:var(--aviso-lavado);color:var(--aviso)}.p-rechazado{background:var(--alerta-lavado);color:var(--alerta)}.p-sellado,.p-borrador{background:var(--superficie-2);color:var(--tinta-3)}.p-cancelado{background:var(--alerta-lavado);color:var(--alerta)}.p-cancelacion_pendiente{background:var(--aviso-lavado);color:var(--aviso)}.p-pendiente{background:var(--superficie-2);color:var(--tinta-2)}.p-facturado{background:var(--ok-lavado);color:var(--ok)}.p-en_global{background:var(--guinda-lavado);color:var(--guinda)}.p-expirado{background:var(--aviso-lavado);color:var(--aviso)}label{color:var(--tinta-2);margin-bottom:5px;font-size:.78rem;font-weight:500;display:block}input,select,textarea{width:100%;color:var(--tinta);background:var(--superficie);border:1px solid var(--regla);border-radius:5px;padding:8px 11px;font-family:inherit;font-size:.9rem}input:focus,select:focus{border-color:var(--guinda);outline:none}input[type=number]{font-variant-numeric:tabular-nums}.campos{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:14px;display:grid}.campo-ancho{grid-column:1/-1}button{cursor:pointer;background:var(--guinda);color:#fff;border:1px solid #0000;border-radius:5px;padding:9px 18px;font-family:inherit;font-size:.88rem;font-weight:500}button:hover:not(:disabled){background:var(--guinda-2)}button:disabled{opacity:.5;cursor:not-allowed}button.suave{background:var(--superficie);color:var(--tinta-2);border-color:var(--regla)}button.suave:hover:not(:disabled){background:var(--superficie-2)}button.ligero{color:var(--guinda);background:0 0;padding:4px 8px;font-size:.82rem}button.ligero:hover:not(:disabled){background:var(--guinda-lavado)}.boton-archivo{cursor:pointer;background:var(--superficie);color:var(--tinta-2);border:1px solid var(--regla);border-radius:8px;padding:8px 14px;font-size:.9rem;font-weight:500;display:inline-block}.boton-archivo:hover{background:var(--superficie-2)}.acciones{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.acciones-fin{margin-left:auto}a.boton{background:var(--guinda);color:#fff;border:1px solid #0000;border-radius:5px;padding:9px 18px;font-size:.88rem;font-weight:500;text-decoration:none;display:inline-block}a.boton:hover{background:var(--guinda-2)}a.boton.suave{background:var(--superficie);color:var(--tinta-2);border-color:var(--regla)}a.boton.suave:hover{background:var(--superficie-2)}a.boton.grande{padding:14px 22px;font-size:1rem}.acciones-grandes{flex-wrap:wrap;gap:12px;margin-bottom:22px;display:flex}.cifras{grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:14px;margin-bottom:22px;display:grid}.cifra{background:var(--superficie);border:1px solid var(--regla);box-shadow:var(--sombra);border-radius:8px;flex-direction:column;gap:4px;padding:16px 18px;display:flex}.cifra.atencion{border-color:var(--aviso);background:var(--aviso-lavado)}.cifra-num{letter-spacing:-.02em;font-variant-numeric:tabular-nums;font-size:1.5rem;font-weight:600}.cifra-txt{color:var(--tinta-3);font-size:.82rem}.lista-limpia{flex-direction:column;gap:8px;margin:0;padding-left:18px;font-size:.9rem;display:flex}details.plegable{border:1px solid var(--regla);background:var(--superficie);border-radius:8px;margin-top:18px}details.plegable>summary{cursor:pointer;letter-spacing:.1em;text-transform:uppercase;color:var(--tinta-2);align-items:center;gap:10px;padding:13px 18px;font-size:.75rem;font-weight:600;list-style:none;display:flex}details.plegable>summary::-webkit-details-marker{display:none}details.plegable>summary:before{content:"▸";color:var(--tinta-3);font-size:.8rem}details.plegable[open]>summary:before{content:"▾"}details.plegable>summary .resumen-corto{text-transform:none;letter-spacing:0;color:var(--tinta-3);font-weight:400}details.plegable>.tarjeta-cuerpo{border-top:1px solid var(--regla)}details.plegable .tarjeta{box-shadow:none;border:0;margin:0}details.plegable .tarjeta>.tarjeta-titulo{display:none}details.detalle-fiscal{margin-top:8px}details.detalle-fiscal>summary{cursor:pointer;color:var(--tinta-3);font-size:.78rem;font-family:var(--mono);list-style:none}details.detalle-fiscal>summary::-webkit-details-marker{display:none}details.detalle-fiscal>summary:before{content:"▸ "}details.detalle-fiscal[open]>summary:before{content:"▾ "}.pasos{counter-reset:paso;grid-template-columns:repeat(3,1fr);gap:8px;margin:0 0 20px;padding:0;list-style:none;display:grid}.pasos li{counter-increment:paso;background:var(--superficie-2);color:var(--tinta-3);border:1px solid var(--regla);border-radius:8px;padding:10px 12px;font-size:.85rem}.pasos li:before{content:counter(paso) " · ";font-family:var(--mono);font-size:.75rem}.pasos li.actual{background:var(--guinda-lavado);color:var(--guinda);border-color:var(--guinda-lavado);font-weight:600}.pasos li.hecho{background:var(--ok-lavado);color:var(--ok);border-color:var(--ok-lavado)}.pasos li.hecho:before{content:"✓ "}.fichas{flex-wrap:wrap;gap:8px;display:flex}.ficha{border:1px solid var(--regla);background:var(--superficie);color:var(--tinta-2);cursor:pointer;border-radius:999px;padding:6px 12px;font-size:.82rem}.ficha:hover{background:var(--superficie-2)}.ficha.activa{background:var(--guinda-lavado);color:var(--guinda);border-color:var(--guinda-lavado);font-weight:500}.pie-emitir{background:var(--superficie);border:1px solid var(--regla);border-radius:8px;flex-wrap:wrap;align-items:center;gap:16px;margin-top:20px;padding:14px 18px;display:flex;position:sticky;bottom:0;box-shadow:0 -8px 24px -16px #221a1d4d}.pie-emitir .total{font-variant-numeric:tabular-nums;margin-left:auto;font-size:1.25rem;font-weight:600}@media (height<=640px){.pie-emitir{box-shadow:var(--sombra);position:static}}.renglon{grid-template-columns:minmax(200px,3fr) 90px 130px 110px auto;align-items:end;gap:10px;display:grid}@media (width<=760px){.renglon{grid-template-columns:1fr 1fr}.renglon .campo-ancho-movil{grid-column:1/-1}}.aviso{border-left:3px solid var(--alerta);background:var(--alerta-lavado);color:var(--tinta);border-radius:0 5px 5px 0;margin-bottom:16px;padding:13px 16px;font-size:.88rem}.aviso.exito{border-left-color:var(--ok);background:var(--ok-lavado)}.aviso.atencion{border-left-color:var(--aviso);background:var(--aviso-lavado)}.aviso strong{margin-bottom:3px;display:block}.aviso code{font-family:var(--mono);font-size:.82em}.vacio{text-align:center;color:var(--tinta-3);padding:48px 24px;font-size:.9rem}.concepto{border:1px solid var(--regla);background:var(--superficie);border-radius:6px;margin-bottom:12px;padding:14px}.concepto-encabezado{align-items:center;gap:10px;margin-bottom:12px;display:flex}.concepto-encabezado span{font-family:var(--mono);color:var(--tinta-3);letter-spacing:.08em;text-transform:uppercase;font-size:.7rem}.sugerencias{position:relative}.sugerencias:focus-within{z-index:30}.sugerencias ul{z-index:30;background:var(--superficie);border:1px solid var(--regla);max-height:220px;box-shadow:var(--sombra);border-radius:6px;margin:0;padding:4px;list-style:none;position:absolute;top:calc(100% + 3px);left:0;right:0;overflow-y:auto}.sugerencias li{cursor:pointer;border-radius:4px;gap:10px;padding:7px 10px;font-size:.82rem;display:flex}.sugerencias li:hover,.sugerencias li[aria-selected=true]{background:var(--guinda-lavado)}.sugerencias li b{font-family:var(--mono);color:var(--guinda);font-size:.78rem}.totales{flex-direction:column;align-items:flex-end;gap:6px;display:flex}.totales div{gap:28px;font-size:.9rem;display:flex}.totales dt{color:var(--tinta-3)}.totales .grande{color:var(--tinta);font-size:1.15rem;font-weight:600}.acceso{max-width:420px;margin:12vh auto;padding:0 24px}.acceso h1{margin-bottom:6px}.acceso p{color:var(--tinta-3);margin:0 0 22px;font-size:.88rem}.datos{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:18px 28px;display:grid}.datos dt{font-family:var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--tinta-3);margin-bottom:3px;font-size:.68rem}.datos dd{color:var(--tinta);word-break:break-word;margin:0;font-size:.9rem}.datos dd.mono{font-family:var(--mono);font-size:.8rem}@media (prefers-reduced-motion:no-preference){button,.barra nav a,tbody tr td{transition:background .12s}}.casilla{color:var(--tinta-2);cursor:pointer;align-items:center;gap:9px;margin:2px 0 0;font-size:.85rem;display:flex}.casilla input[type=checkbox]{width:auto;accent-color:var(--guinda);cursor:pointer;margin:0}.nota{color:var(--tinta-3);max-width:68ch;margin:14px 0 0;font-size:.82rem;line-height:1.5}.nota code{font-family:var(--mono);font-size:.92em}input[type=file]{padding:6px 8px;font-size:.82rem}.constancia{border:1px dashed var(--regla);background:var(--superficie-2);border-radius:6px;margin-bottom:16px;padding:14px}.constancia label{color:var(--guinda);font-weight:600}.constancia span{color:var(--tinta-3);margin-top:7px;font-size:.78rem;display:block}.casilla input[type=radio]{width:auto;accent-color:var(--guinda);margin:0}.leido{background:var(--ok-lavado);color:var(--ok);border-radius:5px;margin:10px 0 0;padding:9px 12px;font-size:.82rem;line-height:1.45}.leido.error{background:var(--alerta-lavado);color:var(--alerta)}.leido b{font-family:var(--mono);font-size:.95em}.tarjeta{border-radius:10px}.tarjeta-titulo{border-radius:9px 9px 0 0}button,a.boton{border-radius:7px}input,select,textarea{border-radius:7px;padding:9px 12px}.encabezado h1{font-size:1.6rem}@media (width<=720px){main{padding:16px 14px 90px}.barra-interior{flex-wrap:wrap;gap:10px;padding:10px 14px}.barra nav{-webkit-overflow-scrolling:touch;scrollbar-width:none;order:3;width:100%;margin-left:0;padding-bottom:2px;overflow-x:auto}.barra nav::-webkit-scrollbar{display:none}.barra nav a{white-space:nowrap;padding:8px 12px}.encabezado{gap:6px 12px;margin-bottom:14px}.encabezado h1{font-size:1.35rem}.tarjeta-cuerpo{padding:14px}input,select,textarea{padding:11px 12px;font-size:16px}button,a.boton{padding:12px 16px;font-size:.95rem}button.ligero{padding:8px 10px}.cifras{grid-template-columns:1fr 1fr;gap:10px}.cifra{padding:12px 14px}.cifra-num{font-size:1.25rem}.acciones-grandes a.boton.grande{text-align:center;flex:100%}table{min-width:0;font-size:.84rem}th,td{padding:9px 10px}.pie-emitir{padding:12px 14px;position:sticky}.pie-emitir .totales{align-items:flex-end;width:100%}.pasos{grid-template-columns:1fr}details.plegable>summary{padding:12px 14px}}
