:root{--bg: #F3F3F7;--surface: #FFFFFF;--ink: #000000;--muted: #60646C;--accent: #3B3BF5;--accent-soft: #EEEEFE;--on-accent: #FFFFFF;--field: #B9BBC6;--line: #E0E1E6;--ok: #1D5B2A;--ok-bg: #EEF6EF;--bad: #A32A1D;--bad-bg: #FBECEA;--warn: #8A3B0A;--warn-bg: #FDF1E7;--radio: 12px;--font: "Inter", system-ui, -apple-system, "Segoe UI", sans-serif;color-scheme:light}*{box-sizing:border-box}html,body{margin:0}body{background:var(--bg);color:var(--ink);font-family:var(--font);font-size:17px;line-height:1.45;-webkit-font-smoothing:antialiased}h1{font-size:22px;font-weight:700;margin:0 0 4px;letter-spacing:-.01em}p{margin:0}code{font-family:ui-monospace,Cascadia Mono,Menlo,monospace;font-weight:600}.tenue{color:var(--muted)}.centro{text-align:center;padding:48px 0}.chico-texto{font-size:14px}.logo{font-weight:800;letter-spacing:.04em;font-size:15px}.encabezado{display:flex;align-items:center;gap:12px;padding:12px 16px;padding-top:max(12px,env(safe-area-inset-top));background:var(--surface);border-bottom:1px solid var(--line)}.encabezado-lugar{flex:1;display:flex;flex-direction:column;min-width:0;font-size:14px}.encabezado-lugar>*{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.contenido{max-width:560px;margin:0 auto;padding:16px}.tarjeta{background:var(--surface);border:1px solid var(--line);border-radius:var(--radio);padding:20px;display:flex;flex-direction:column;gap:16px}button{font:inherit;font-weight:600;border-radius:var(--radio);cursor:pointer;min-height:48px;padding:0 18px;border:1px solid transparent}button:disabled{opacity:.45;cursor:default}button:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid var(--accent);outline-offset:2px}.primario{background:var(--accent);color:var(--on-accent)}.secundario{background:var(--surface);color:var(--ink);border-color:var(--field)}.grande{min-height:56px;font-size:18px;width:100%}.chico{min-height:40px;padding:0 12px;font-size:14px}.acciones{display:flex;flex-direction:column;gap:10px}.formulario{display:flex;flex-direction:column;gap:14px}label{display:flex;flex-direction:column;gap:6px;font-size:15px;font-weight:500;color:var(--muted)}input,select{font:inherit;color:var(--ink);background:var(--surface);border:1px solid var(--field);border-radius:var(--radio);min-height:52px;padding:0 14px;width:100%}input.codigo{font-family:ui-monospace,Cascadia Mono,Menlo,monospace;font-size:20px;letter-spacing:.06em;text-transform:uppercase}input.pin{font-size:24px;letter-spacing:.4em}.error{color:var(--bad);background:var(--bad-bg);border-radius:var(--radio);padding:10px 14px;font-size:15px}.nota{background:var(--accent-soft);border-radius:var(--radio);padding:10px 14px;font-size:15px}.nota.alerta{background:var(--warn-bg);color:var(--warn)}.cert{display:flex;flex-direction:column;align-items:flex-start;gap:6px}.cert-monto{font-size:44px;font-weight:700;letter-spacing:-.02em;line-height:1.1}.chip{display:inline-block;font-size:14px;font-weight:600;border-radius:999px;padding:4px 12px;align-self:flex-start}.chip.ok{background:var(--ok-bg);color:var(--ok)}.aviso-estado{display:flex;flex-direction:column;gap:4px;border-radius:var(--radio);padding:12px 14px;width:100%;font-size:15px}.aviso-estado strong{font-size:17px}.aviso-estado.mal{background:var(--bad-bg);color:var(--bad)}.aviso-estado.alerta{background:var(--warn-bg);color:var(--warn)}.autorizacion{font-family:ui-monospace,Cascadia Mono,Menlo,monospace;font-size:44px;font-weight:700;letter-spacing:.08em;text-align:center;background:var(--accent-soft);border-radius:var(--radio);padding:16px 8px}.escaner{position:relative;border-radius:var(--radio);overflow:hidden;background:#000;aspect-ratio:4 / 3}.escaner video{width:100%;height:100%;object-fit:cover;display:block}.escaner-error{position:absolute;inset:auto 0 0;background:var(--bad-bg);color:var(--bad);padding:10px 14px;font-size:15px}.login{min-height:100dvh;display:grid;place-items:center;padding:16px}.login-caja{background:var(--surface);border:1px solid var(--line);border-radius:var(--radio);padding:32px 24px;max-width:420px;width:100%;display:flex;flex-direction:column;gap:14px}.login-caja .logo{font-size:18px}.contenido.ancho{max-width:1120px}.secciones{display:flex;gap:4px;background:var(--bg);border-radius:var(--radio);padding:4px}.secciones button{min-height:36px;padding:0 14px;font-size:14px;background:transparent;color:var(--muted)}.secciones button.elegido{background:var(--surface);color:var(--ink);border-color:var(--line)}.admin{display:flex;flex-direction:column;gap:20px}.admin-titulo{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:12px}.admin-titulo p{max-width:640px}.galeria-admin{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:16px}.ficha{display:flex;flex-direction:column;align-items:stretch;gap:8px;text-align:left;background:var(--surface);border:1px solid var(--line);padding:8px;min-height:0;font-weight:400}.ficha:hover{border-color:var(--field)}.ficha-nombre{font-weight:600;padding:0 4px}.ficha-datos{display:flex;flex-wrap:wrap;align-items:center;gap:8px;padding:0 4px 4px;font-size:14px}.chip.pendiente{background:var(--warn-bg);color:var(--warn)}.chip.apagado{background:var(--bg);color:var(--muted)}.editor{display:flex;flex-wrap:wrap;gap:24px;align-items:flex-start}.editor-vista{flex:1 1 380px;min-width:0;display:flex;flex-direction:column;gap:12px}.editor .formulario{flex:1 1 340px;min-width:0;background:var(--surface);border:1px solid var(--line);border-radius:var(--radio);padding:20px}.vista-vacia{aspect-ratio:1600 / 1008;border:2px dashed var(--field);border-radius:var(--radio);display:grid;place-items:center;color:var(--muted);padding:16px;text-align:center}.boton-archivo{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:0 18px;border:1px solid var(--field);border-radius:var(--radio);font-weight:600;color:var(--ink);cursor:pointer;align-self:flex-start}.boton-archivo input{display:none}.boton-archivo.deshabilitado{opacity:.45;cursor:default}.opciones{border:0;padding:0;margin:0;display:flex;flex-wrap:wrap;gap:8px}.opciones legend{font-size:15px;font-weight:500;color:var(--muted);margin-bottom:6px;padding:0}.opciones button{background:var(--surface);border-color:var(--field);color:var(--ink);font-weight:500}.opciones button.elegido{border:2px solid var(--accent);background:var(--accent-soft)}textarea{font:inherit;color:var(--ink);border:1px solid var(--field);border-radius:var(--radio);padding:12px 14px;width:100%;resize:vertical}.dos{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px}.vista-tarjeta{position:relative;width:100%;aspect-ratio:1600 / 1008;border-radius:var(--radio);overflow:hidden;container-type:inline-size;background:var(--line)}.vista-tarjeta img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.vista-tarjeta span{position:absolute}.vista-tarjeta.texto-blanco{color:#fff}.vista-tarjeta.texto-negro{color:#000}.vt-marca{left:6cqw;top:5cqw;font-size:3cqw;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.vt-monto{left:6cqw;bottom:5cqw;font-size:6.5cqw;font-weight:700;line-height:1}.vt-valido{right:6cqw;bottom:6cqw;font-size:3cqw;font-weight:600}.barra-busqueda{display:flex;flex-wrap:wrap;gap:8px}.barra-busqueda input{flex:3 1 280px}.barra-busqueda select{flex:1 1 160px;width:auto}.tabla-caja{overflow-x:auto;background:var(--surface);border:1px solid var(--line);border-radius:var(--radio)}.tabla-caja table{border-collapse:collapse;width:100%;font-size:15px}.tabla-caja th,.tabla-caja td{text-align:left;padding:12px 14px;border-bottom:1px solid var(--line);vertical-align:top}.tabla-caja th{font-size:13px;color:var(--muted);font-weight:600;white-space:nowrap}.tabla-caja tbody tr{cursor:pointer}.tabla-caja tbody tr:hover,.tabla-caja tbody tr:focus-visible{background:var(--bg)}.detalle{display:flex;flex-wrap:wrap;gap:16px;align-items:flex-start}.detalle-col{flex:1 1 340px;min-width:0;display:flex;flex-direction:column;gap:16px}.caja-admin{background:var(--surface);border:1px solid var(--line);border-radius:var(--radio);padding:18px;display:flex;flex-direction:column;gap:10px}.caja-admin h2{font-size:16px;margin:0}.dato{display:flex;justify-content:space-between;gap:12px;font-size:15px}.dato>span:last-child{text-align:right;overflow-wrap:anywhere}.historial{margin:0;padding-left:18px;display:flex;flex-direction:column;gap:8px;font-size:15px}.canje-item{border-top:1px solid var(--line);padding-top:8px;font-size:15px}.canje-item:first-of-type{border-top:0;padding-top:0}.canje-item.anulado{opacity:.6}.acciones-admin{display:flex;flex-wrap:wrap;gap:8px}.acciones-admin button{min-height:44px}.secundario.peligro{color:var(--bad);border-color:var(--bad)}.primario.peligro{background:var(--bad)}.formulario-accion{display:flex;flex-direction:column;gap:10px;border-top:1px solid var(--line);padding-top:12px}.codigo-grande{font-family:ui-monospace,Cascadia Mono,Menlo,monospace;font-size:26px;font-weight:700;letter-spacing:.06em}.tabla-caja tbody tr.sin-clic{cursor:default}.tabla-caja tbody tr.sin-clic:hover{background:transparent}.interruptor{flex-direction:row;align-items:center;gap:8px;color:var(--ink);font-size:15px;cursor:pointer}.interruptor input{width:20px;height:20px;min-height:0;accent-color:var(--accent)}.secciones{flex-wrap:wrap}.contenido.ancho:has(.editor-correo){max-width:1280px}.editor-correo{display:flex;flex-wrap:wrap;gap:20px;align-items:flex-start}.editor-correo>.formulario{flex:1 1 380px;min-width:0}.editor-correo h2{font-size:16px;margin:6px 0 0}.vista-correo{flex:1.3 1 420px;min-width:0;position:sticky;top:12px;display:flex;flex-direction:column;gap:8px}.vista-barra{display:flex;align-items:center;gap:8px}.vista-barra select{width:auto;min-height:40px}.vista-asunto{background:var(--surface);border:1px solid var(--line);border-radius:var(--radio);padding:10px 14px;font-size:14px}.vista-correo iframe{width:100%;height:78vh;border:1px solid var(--line);border-radius:var(--radio);background:#fff}.color{display:flex;gap:8px;align-items:center}.color input[type=color]{width:52px;min-width:52px;padding:4px;cursor:pointer}.subtitulo{font-size:18px;margin:8px 0 0}.grupos-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:12px}.marca-admin{gap:14px}.sucursal-admin{border-top:1px solid var(--line);padding-top:14px;display:flex;flex-direction:column;gap:10px}.sucursal-admin.inactiva{opacity:.6}.sucursal-titulo{display:flex;flex-wrap:wrap;align-items:center;gap:10px}.sucursal-titulo .chico{margin-left:auto}.grupo-admin{border:1px solid var(--line);border-radius:var(--radio);padding:12px;display:flex;flex-direction:column;gap:8px}.grupo-cabeza{display:flex;flex-direction:column}.grupo-vacio{border:1px dashed var(--field);border-radius:var(--radio);padding:12px;display:flex;align-items:center;justify-content:space-between;gap:8px}.personas{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}.personas li{display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:15px}.personas li>span{display:flex;flex-direction:column;min-width:0}.personas li>span>*{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.personas.resultados{background:var(--bg);border-radius:var(--radio);padding:8px}.grupo-admin input{min-height:44px}
