:root{--fondo: #f2f2f6;--superficie: #ffffff;--superficie-2: #ececf1;--superficie-3: #e1e1e8;--texto: #0b0b0d;--texto-2: #5c5c66;--texto-3: #8d8d97;--linea: rgba(0, 0, 0, .08);--tinta: #0b0b0d;--tinta-texto: #ffffff;--rojo: #d42a1e;--rojo-suave: rgba(212, 42, 30, .08);--azul: #1a73e8;--cabecera: rgba(242, 242, 246, .78);--sombra: 0 1px 2px rgba(0, 0, 0, .04), 0 8px 24px rgba(0, 0, 0, .06);--radio: 20px;--radio-chico: 14px;--t: .2s cubic-bezier(.2, .8, .2, 1);--seg-arriba: env(safe-area-inset-top, 0px);--seg-abajo: env(safe-area-inset-bottom, 0px);--seg-izq: env(safe-area-inset-left, 0px);--seg-der: env(safe-area-inset-right, 0px);--alto-cabecera: 52px;color-scheme:light dark}@media(prefers-color-scheme:dark){:root{--fondo: #000000;--superficie: #161618;--superficie-2: #232327;--superficie-3: #2e2e33;--texto: #f5f5f7;--texto-2: #a3a3ad;--texto-3: #6f6f78;--linea: rgba(255, 255, 255, .1);--tinta: #f5f5f7;--tinta-texto: #000000;--rojo: #ff5446;--rojo-suave: rgba(255, 84, 70, .13);--cabecera: rgba(0, 0, 0, .72);--sombra: 0 0 0 1px rgba(255, 255, 255, .04)}}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html,body{margin:0;padding:0;background:var(--fondo);color:var(--texto);overscroll-behavior:none;scrollbar-width:none}html::-webkit-scrollbar,body::-webkit-scrollbar,*::-webkit-scrollbar{display:none}body{font-family:-apple-system,SF Pro Text,Roboto,Segoe UI,system-ui,sans-serif;font-size:17px;line-height:1.35;-webkit-font-smoothing:antialiased;-webkit-text-size-adjust:100%;text-size-adjust:100%;touch-action:manipulation;min-height:100vh;min-height:100dvh}h1,h2,p{margin:0}button,input,textarea,label{font:inherit;color:inherit;touch-action:manipulation}button{border:0;background:none;padding:0;cursor:pointer;-webkit-user-select:none;user-select:none}img{display:block;max-width:100%;-webkit-user-drag:none;-webkit-touch-callout:none}[hidden]{display:none!important}.app{max-width:560px;margin:0 auto;min-height:100vh;min-height:100dvh;padding:0 max(16px,var(--seg-der)) calc(28px + var(--seg-abajo)) max(16px,var(--seg-izq))}.pantalla{animation:aparecer .26s cubic-bezier(.2,.8,.2,1)}@keyframes aparecer{0%{opacity:0;transform:translateY(6px)}}.cargando-app{padding:40px;text-align:center;color:var(--texto-3)}.boton{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;min-height:54px;padding:0 20px;border-radius:16px;background:var(--tinta);color:var(--tinta-texto);font-weight:600;font-size:17px;transition:transform var(--t),opacity var(--t)}.boton:active{transform:scale(.98)}.boton:disabled{opacity:.28;transform:none}.boton.secundario{background:var(--superficie-2);color:var(--texto)}.boton.texto{background:none;color:var(--texto-2);font-weight:500;min-height:48px}.boton.chico{width:auto;min-height:36px;padding:0 14px;border-radius:999px;font-size:15px}.boton-icono{width:44px;height:44px;min-width:44px;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;transition:background-color var(--t),transform var(--t)}.boton-icono:active{background:var(--superficie-3);transform:scale(.94)}.boton-icono:disabled{opacity:.3}.giro{width:18px;height:18px;border-radius:999px;border:2px solid currentColor;border-right-color:transparent;animation:girar .8s linear infinite;flex:none}@keyframes girar{to{transform:rotate(360deg)}}.centro{min-height:calc(100dvh - 28px);display:flex;flex-direction:column;padding-top:calc(var(--seg-arriba) + 12vh)}.marca{width:56px;height:56px;border-radius:15px;background:var(--tinta);color:var(--tinta-texto);display:flex;align-items:center;justify-content:center;margin-bottom:22px}.titulo-grande{font-size:44px;line-height:1.05;font-weight:800;letter-spacing:-.03em}.bajada{margin-top:8px;color:var(--texto-2);font-size:17px}.formulario{margin-top:36px;display:flex;flex-direction:column;gap:14px}.campo{width:100%;height:60px;border-radius:16px;border:0;outline:none;background:var(--superficie);box-shadow:var(--sombra),inset 0 0 0 1px var(--linea);padding:0 20px;font-size:19px;font-weight:500;transition:box-shadow var(--t)}.campo:focus{box-shadow:var(--sombra),inset 0 0 0 2px var(--tinta)}.campo::placeholder{color:var(--texto-3);font-weight:500}.campo-clave{height:64px;font-size:26px;font-weight:650;letter-spacing:.18em;text-transform:uppercase;font-variant-numeric:tabular-nums}.campo-clave::placeholder{letter-spacing:.04em;text-transform:none;font-size:19px}.nota{color:var(--texto-2);font-size:15px;margin:2px 4px 0;display:flex;gap:8px;align-items:flex-start}.nota svg{flex:none;margin-top:1px}.error-linea{margin:0 4px;font-size:15px;font-weight:500;color:var(--texto);background:var(--superficie-2);border-radius:12px;padding:12px 14px}.pie{margin-top:auto;padding-top:32px;color:var(--texto-3);font-size:14px;text-align:center}.cabecera{position:fixed;z-index:1000;top:0;left:0;right:0;padding-top:var(--seg-arriba);background:var(--cabecera);-webkit-backdrop-filter:saturate(180%) blur(20px);backdrop-filter:saturate(180%) blur(20px);border-bottom:1px solid transparent;transition:border-color var(--t)}.cabecera.con-borde{border-bottom-color:var(--linea)}.cabecera-fila{max-width:560px;margin:0 auto;height:var(--alto-cabecera);display:grid;grid-template-columns:96px 1fr 96px;align-items:center;padding:0 max(6px,var(--seg-izq))}.cabecera-titulo{text-align:center;font-weight:650;font-size:17px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;opacity:0;transform:translateY(4px);transition:opacity var(--t),transform var(--t)}.cabecera.con-borde .cabecera-titulo{opacity:1;transform:none}.cabecera-izq{justify-self:start}.cabecera-der{justify-self:end;display:flex}.volver{display:inline-flex;align-items:center;gap:2px;height:44px;padding:0 10px 0 4px;border-radius:999px;font-size:17px}.volver:active{background:var(--superficie-3)}.contenido{padding-top:calc(var(--seg-arriba) + var(--alto-cabecera) + 6px)}.encabezado{padding:8px 4px 18px}.encabezado h1{font-size:34px;line-height:1.08;font-weight:800;letter-spacing:-.025em}.encabezado .sub{margin-top:6px;font-size:17px;font-weight:500}.encabezado .responsable{margin-top:3px;font-size:14px;color:var(--texto-3)}.progreso{margin-top:18px}.progreso-texto{display:flex;justify-content:space-between;align-items:baseline;font-size:15px;color:var(--texto-2);margin-bottom:8px}.progreso-texto strong{color:var(--texto);font-weight:650}.barra{height:4px;border-radius:999px;background:var(--superficie-3);overflow:hidden}.barra>i{display:block;height:100%;border-radius:999px;background:var(--tinta);transition:width .4s cubic-bezier(.2,.8,.2,1)}.aviso{margin-top:14px;display:flex;align-items:center;gap:10px;font-size:14px;color:var(--texto-2);background:var(--superficie-2);border-radius:12px;padding:10px 12px}.aviso svg,.aviso .giro{flex:none}.aviso .giro{width:14px;height:14px}.aviso .acciones{margin-left:auto;display:flex;gap:14px;flex:none}.aviso .acciones button{font-weight:600;color:var(--texto);text-decoration:underline;text-underline-offset:2px}.aviso.rojo{background:var(--rojo-suave);color:var(--rojo)}.lista{display:flex;flex-direction:column;gap:14px}.tarjeta{background:var(--superficie);border-radius:var(--radio);box-shadow:var(--sombra);padding:16px}.seccion{margin-top:22px}.etiqueta-seccion{margin:0 4px 8px;font-size:13px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--texto-3)}.siguiente{display:flex;align-items:center;gap:14px;width:100%;text-align:left;margin-top:18px;padding:16px 14px 16px 18px;border-radius:var(--radio);background:var(--tinta);color:var(--tinta-texto);box-shadow:var(--sombra);transition:transform var(--t)}.siguiente:active{transform:scale(.98)}.siguiente .cuerpo{flex:1;min-width:0}.siguiente small{display:block;font-size:13px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;opacity:.7}.siguiente b{display:block;font-size:28px;font-weight:800;letter-spacing:-.02em;line-height:1.15}.siguiente span{display:block;font-size:15px;opacity:.8;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.buscador{position:relative;margin-top:18px}.buscador svg{position:absolute;left:14px;top:50%;transform:translateY(-50%);color:var(--texto-3)}.buscador input{width:100%;height:46px;border:0;outline:none;border-radius:12px;background:var(--superficie-2);padding:0 14px 0 40px;font-size:17px;transition:box-shadow var(--t)}.buscador input:focus{box-shadow:inset 0 0 0 2px var(--tinta)}.buscador input::placeholder{color:var(--texto-3)}.segmentos{display:flex;gap:2px;margin-top:10px;padding:2px;border-radius:11px;background:var(--superficie-2)}.segmentos button{flex:1;display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:36px;border-radius:9px;font-size:15px;font-weight:550;color:var(--texto-2);transition:background-color var(--t),color var(--t)}.segmentos button.activo{background:var(--superficie);color:var(--texto);box-shadow:0 1px 3px #0000001f;font-weight:650}.vacio{text-align:center;color:var(--texto-3);padding:28px 0}.pildora{display:inline-flex;align-items:center;gap:4px;height:24px;padding:0 9px 0 7px;border-radius:999px;font-size:12px;font-weight:650;background:var(--superficie-2);color:var(--texto);white-space:nowrap}.pildora.hecha{background:var(--tinta);color:var(--tinta-texto)}.pildora.mala{background:var(--rojo);color:#fff}.pildora .giro{width:11px;height:11px}.barda .pildora{margin-top:6px}.paso-cabeza{display:flex;align-items:flex-start;gap:12px}.paso-num{width:30px;height:30px;min-width:30px;border-radius:999px;display:flex;align-items:center;justify-content:center;font-size:15px;font-weight:700;background:var(--superficie-2);color:var(--texto-2);transition:background-color var(--t),color var(--t)}.paso-num.listo{background:var(--tinta);color:var(--tinta-texto)}.paso-titulos{flex:1;min-width:0;padding-top:3px}.paso-titulos h2{font-size:19px;font-weight:700;letter-spacing:-.01em}.paso-titulos h2 small{font-size:15px;font-weight:500;color:var(--texto-3)}.paso-titulos p{margin-top:3px;font-size:15px;color:var(--texto-2)}.paso-cuerpo{margin-top:14px}.casilla{position:relative;display:flex;width:100%;aspect-ratio:2 / 1;border-radius:var(--radio-chico);overflow:hidden;background:var(--superficie-2);transition:transform var(--t)}.casilla:active{transform:scale(.98)}.casilla.vacia{flex-direction:column;align-items:center;justify-content:center;gap:8px;color:var(--texto-2);font-size:15px;font-weight:600}.casilla.vacia .camara{width:48px;height:48px;border-radius:999px;background:var(--superficie);color:var(--texto);display:flex;align-items:center;justify-content:center;box-shadow:var(--sombra)}.casilla.con-foto{aspect-ratio:4 / 3;cursor:default}.casilla.con-foto:active{transform:none}.casilla img{width:100%;height:100%;object-fit:cover}.estado-pildora{position:absolute;left:8px;bottom:8px;display:inline-flex;align-items:center;gap:5px;height:26px;padding:0 10px 0 8px;border-radius:999px;font-size:13px;font-weight:600;background:#ffffffeb;color:#0b0b0d;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.etiqueta-casilla{position:absolute;top:8px;left:8px;font-size:12px;font-weight:600;padding:3px 8px;border-radius:999px;background:#00000073;color:#fff;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.repetir{position:absolute;right:8px;bottom:8px;height:30px;padding:0 12px;border-radius:999px;font-size:14px;font-weight:600;background:#0000009e;color:#fff;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.galeria-boton{margin-top:8px;display:flex;align-items:center;justify-content:center;gap:8px;width:100%;min-height:44px;border-radius:12px;font-size:15px;font-weight:600;color:var(--texto-2)}.galeria-boton:active{background:var(--superficie-2)}.chips{display:flex;flex-wrap:wrap;gap:8px}.chip{min-height:42px;padding:0 15px;border-radius:999px;background:var(--superficie-2);font-size:16px;font-weight:550;transition:background-color var(--t),color var(--t),transform var(--t)}.chip:active{transform:scale(.97)}.chip.activo{background:var(--rojo);color:#fff}.decision{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:14px}.decision button{min-height:52px;border-radius:14px;background:var(--superficie-2);font-size:17px;font-weight:650;transition:background-color var(--t),color var(--t),transform var(--t)}.decision button:active{transform:scale(.98)}.decision .bueno.activo{background:var(--tinta);color:var(--tinta-texto)}.decision .malo.activo{background:var(--rojo);color:#fff}.ayuda{margin:8px 4px 0;font-size:13px;color:var(--texto-3)}.ayuda.rojo{color:var(--rojo);font-weight:500}.campo-texto{width:100%;min-height:96px;resize:none;border:0;outline:none;border-radius:14px;background:var(--superficie-2);padding:14px 16px;font-size:17px;line-height:1.4;transition:box-shadow var(--t)}.campo-texto:focus{box-shadow:inset 0 0 0 2px var(--texto)}.campo-texto::placeholder{color:var(--texto-3)}.validar{position:sticky;bottom:0;z-index:900;margin:22px calc(-1*max(16px,var(--seg-izq))) 0;padding:12px max(16px,var(--seg-izq)) calc(12px + var(--seg-abajo));background:var(--cabecera);-webkit-backdrop-filter:saturate(180%) blur(20px);backdrop-filter:saturate(180%) blur(20px);border-top:1px solid var(--linea)}.validar .lineas{display:flex;justify-content:space-between;gap:12px;margin:0 4px 10px;font-size:14px;color:var(--texto-2)}.validar .lineas span{display:inline-flex;align-items:center;gap:6px}.ampliada{position:fixed;inset:0;z-index:1100;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;background:#000000e6;color:#fff;padding:16px;font-size:15px}.ampliada img{max-height:80vh;object-fit:contain;border-radius:12px}.toast{position:fixed;left:50%;bottom:calc(20px + var(--seg-abajo));transform:translate(-50%);z-index:1200;width:min(92vw,520px);display:flex;align-items:center;gap:10px;padding:14px 16px;border-radius:16px;font-size:15px;font-weight:600;background:var(--tinta);color:var(--tinta-texto);box-shadow:0 8px 30px #00000040;animation:aparecer .22s ease}.toast.rojo{background:var(--rojo);color:#fff}.casilla-grande{aspect-ratio:16 / 10}.casilla.vacia small{font-size:13px;font-weight:500;color:var(--texto-3)}.centro-texto{text-align:center}.pasos{list-style:none;margin:14px 0 0;padding:6px 16px}.paso{display:flex;align-items:center;gap:12px;padding:12px 0}.paso+.paso{border-top:1px solid var(--linea)}.paso-marca{width:30px;height:30px;min-width:30px;border-radius:999px;display:flex;align-items:center;justify-content:center;font-size:15px;font-weight:700;background:var(--superficie-2);color:var(--texto-2);transition:background-color var(--t),color var(--t)}.paso-marca .giro{width:15px;height:15px}.paso-texto{flex:1;min-width:0;display:flex;flex-direction:column}.paso-texto b{font-size:16px;font-weight:650}.paso-texto small{font-size:14px;color:var(--texto-3);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.paso-ms{font-size:15px;font-weight:600;color:var(--texto-2);font-variant-numeric:tabular-nums}.paso-pendiente .paso-texto b{color:var(--texto-3)}.paso-listo .paso-marca{background:var(--tinta);color:var(--tinta-texto)}.paso-curso .paso-marca{background:var(--superficie-3);color:var(--texto)}.paso-espera .paso-marca{background:var(--tinta);color:var(--tinta-texto)}.paso-mal .paso-marca{background:var(--rojo);color:#fff}.error-linea{margin-top:14px}.error-linea.con-acciones{display:flex;align-items:center;gap:12px}.error-linea.con-acciones span{flex:1}.error-linea.con-acciones button{flex:none;font-weight:650;text-decoration:underline;text-underline-offset:2px}.avisos{margin:10px 4px 0;padding:0 0 0 18px;color:var(--texto-2);font-size:14px}.datos{margin-top:14px;padding-bottom:0}.datos h2,.titulo-tarjeta{font-size:17px;font-weight:700;margin:0 0 6px}.dato{display:block;padding:10px 0;border-bottom:1px solid var(--linea)}.dato span{display:block;font-size:13px;font-weight:600;color:var(--texto-3);margin-bottom:2px}.dato input{width:100%;border:0;outline:none;background:none;padding:2px 0;font-size:18px;font-weight:550;text-transform:uppercase}.dato input:disabled{opacity:.6}.dato-clave input{font-size:20px;font-weight:700;letter-spacing:.04em;font-variant-numeric:tabular-nums}.datos .validar{margin-left:-16px;margin-right:-16px;border-radius:0 0 var(--radio) var(--radio)}.resultado{text-align:center;padding:28px 18px 24px}.resultado-marca{width:64px;height:64px;border-radius:999px;margin:0 auto 14px;display:flex;align-items:center;justify-content:center;background:var(--tinta);color:var(--tinta-texto)}.resultado-encontrado .resultado-marca,.resultado-duplicado .resultado-marca{background:var(--superficie-2);color:var(--texto)}.resultado h2{font-size:28px;font-weight:800;letter-spacing:-.02em}.resultado-nombre{margin-top:10px;font-size:19px;font-weight:650}.resultado-clave{margin-top:4px;font-size:15px;color:var(--texto-2);font-variant-numeric:tabular-nums;letter-spacing:.02em}.resultado-nota{margin-top:12px;font-size:15px;color:var(--texto-2)}.tiempos{margin-top:14px}.fila-tiempo{display:flex;justify-content:space-between;align-items:baseline;gap:12px;padding:9px 0;font-size:16px}.fila-tiempo+.fila-tiempo{border-top:1px solid var(--linea)}.fila-tiempo small{color:var(--texto-3);font-size:14px}.fila-tiempo b{font-variant-numeric:tabular-nums;font-weight:650}.fila-tiempo.total b{font-size:18px}.siguiente-boton{margin-top:18px}.resultados .tarjeta+.tarjeta{margin-top:14px}.actualizado{display:flex;align-items:center;gap:8px;margin:-6px 4px 12px;font-size:14px;color:var(--texto-3)}.actualizado .giro{width:12px;height:12px}.cifras{display:grid;grid-template-columns:1fr 1fr;gap:0;padding:4px 16px}.cifra{padding:12px 0;display:flex;flex-direction:column}.cifra:nth-child(n+3){border-top:1px solid var(--linea)}.cifra b{font-size:28px;font-weight:800;letter-spacing:-.02em;font-variant-numeric:tabular-nums}.cifra span{font-size:14px;color:var(--texto-2)}.cifra small{font-size:13px;color:var(--texto-3)}.alertas p{font-size:15px;color:var(--texto-2)}.alertas p+p{margin-top:8px}.tabla{width:100%;border-collapse:collapse;font-size:15px;font-variant-numeric:tabular-nums}.tabla th{text-align:right;font-size:13px;font-weight:600;color:var(--texto-3);padding:6px 0 6px 8px}.tabla td{text-align:right;padding:8px 0 8px 8px;border-top:1px solid var(--linea);white-space:nowrap}.tabla th:first-child,.tabla td:first-child{text-align:left;padding-left:0;white-space:normal}.tabla td small{color:var(--texto-3);font-size:13px}.tabla td.mal{color:var(--rojo);font-weight:650}
