:root{--fondo: #f6f1ea;--tarjeta: #ffffff;--texto: #221c1a;--tenue: #6d6360;--borde: #e6ddd2;--marca: #8a1c2b;--marca-suave: #f7e6e8;--oro: #c9a24a;--verde: #2e8b57;--verde-suave: #e3f3e8;--amarillo: #d9a400;--amarillo-suave: #fff3c4;--amarillo-texto: #6f5300;--rojo: #c8372d;--rojo-suave: #fbe6e3;--gris-suave: #efebe6;--radio: 12px;color-scheme:light}*{box-sizing:border-box}html,body{margin:0;background:var(--fondo);color:var(--texto)}body{font:15px/1.45 system-ui,-apple-system,Segoe UI,Roboto,sans-serif;-webkit-text-size-adjust:100%}button{font:inherit;color:inherit;cursor:pointer}input,textarea,select{font:inherit;color:inherit}h1{font-size:1.5rem;margin:10px 0 4px}h2{font-size:1.2rem;margin:18px 0 10px}h3{font-size:1rem;margin:0 0 8px}a{color:var(--marca)}ul.compacta{margin:4px 0;padding-left:18px}ul.compacta li{margin:3px 0}.app{min-height:100dvh}.cargando{padding:40px;text-align:center;color:var(--tenue)}.cabecera{position:sticky;top:0;z-index:5;display:flex;justify-content:space-between;align-items:center;padding:calc(8px + env(safe-area-inset-top)) 14px 8px;background:#f6f1eaf0;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-bottom:1px solid var(--borde)}.marca{background:none;border:0;padding:0;font-weight:700;font-size:1.05rem;color:var(--marca)}.enlace-nav{background:none;border:0;padding:6px 8px;color:var(--tenue);font-weight:600}.enlace-nav.activa{color:var(--marca);border-bottom:2px solid var(--marca)}.contenido{max-width:760px;margin:0 auto;padding:6px 14px 40px}.tarjeta{background:var(--tarjeta);border:1px solid var(--borde);border-radius:var(--radio);padding:12px 14px;margin-bottom:10px}.tarjeta-grupo{width:100%;text-align:left;display:block}.tarjeta-grupo:hover{border-color:var(--marca)}.lista{display:flex;flex-direction:column}.fila{display:flex;justify-content:space-between;align-items:center;gap:8px;flex-wrap:wrap}.fila-titulo{display:flex;justify-content:space-between;align-items:center;gap:8px;margin-top:12px}.fila-titulo h2{margin:0}.tenue{color:var(--tenue);font-size:.9rem}.pequeno{font-size:.82rem}.centrado{text-align:center}.error{color:var(--rojo);font-weight:600}.aviso{border-radius:10px;padding:9px 12px;margin:8px 0;font-size:.92rem}.aviso-info{background:#eaf0f7}.aviso-ok{background:var(--verde-suave)}.aviso-rojo{background:var(--rojo-suave)}.aviso-amarillo{background:var(--amarillo-suave);color:var(--amarillo-texto)}.insignia{display:inline-block;font-size:.74rem;font-weight:700;padding:1px 7px;border-radius:999px;white-space:nowrap}.insignia-gris{background:var(--gris-suave);color:var(--tenue)}.insignia-verde{background:var(--verde-suave);color:var(--verde)}.insignia-amarillo{background:var(--amarillo-suave);color:var(--amarillo-texto)}.insignia-rojo{background:var(--rojo-suave);color:var(--rojo)}.insignia-marca{background:var(--marca-suave);color:var(--marca)}.boton{background:var(--marca);color:#fff;border:0;border-radius:9px;padding:8px 14px;font-weight:600;min-height:38px;transition:transform .1s ease,opacity .15s ease;white-space:nowrap}.boton:active{transform:scale(.97)}.boton:disabled{opacity:.5;cursor:default}.boton.secundario{background:transparent;color:var(--texto);border:1px solid var(--borde)}.boton.peligro{color:var(--rojo)}.boton.pequeno{min-height:30px;padding:4px 10px;font-size:.85rem}.boton.grande{width:100%;font-size:1.1rem;padding:14px;min-height:52px}.boton.oro{background:var(--oro);color:#3a2a00}.enlace{background:none;border:0;padding:2px 4px;color:var(--marca);font-weight:600;text-decoration:underline;font-size:.88rem}.enlace.peligro{color:var(--rojo)}.botonera{display:flex;gap:8px;flex-wrap:wrap;margin-top:10px}.formulario .campo{margin-bottom:8px}.campo{display:flex;flex-direction:column;gap:3px}.etiqueta{font-size:.8rem;color:var(--tenue);font-weight:600}.ayuda{font-size:.78rem;color:var(--tenue)}.campo input,.campo select,.campo textarea,.fila-formulario input,.fila-formulario select{border:1px solid var(--borde);border-radius:8px;padding:7px 9px;background:#fff;min-height:36px;width:100%}.campo textarea{resize:vertical}.campo input:focus,.campo textarea:focus,.campo select:focus{outline:2px solid var(--marca);outline-offset:0;border-color:var(--marca)}.dos{display:grid;grid-template-columns:1fr 1fr;gap:8px}.tres{display:grid;grid-template-columns:1.2fr 1.6fr 1fr auto;gap:6px;align-items:end}@media(max-width:560px){.tres{grid-template-columns:1fr 1fr}.dos{grid-template-columns:1fr}}.fila-formulario{display:flex;gap:8px;align-items:center}.fila-formulario input{flex:1}.fila-formulario select{width:auto;flex:1;min-width:130px}.login{max-width:360px;margin:12vh auto 0;padding:20px;text-align:center;display:flex;flex-direction:column;gap:10px}.login .campo{text-align:left}table.tabla{width:100%;border-collapse:collapse;font-size:.9rem}.tabla th{text-align:left;font-size:.75rem;color:var(--tenue);font-weight:600;padding:4px 6px;border-bottom:1px solid var(--borde)}.tabla td{padding:5px 6px;border-bottom:1px solid var(--gris-suave);vertical-align:middle}.tabla tr.baja td{color:var(--tenue);text-decoration:line-through}.tabla tr.baja td.acciones{text-decoration:none}.tabla .acciones{white-space:nowrap;text-align:right}.tabla .email{color:var(--tenue);font-size:.82rem;word-break:break-all}.marcas{display:inline-flex;gap:4px}.marca-ok{color:var(--verde);font-weight:700}.marca-no{opacity:.22;filter:grayscale(1)}.marca-mal{color:var(--rojo);font-weight:700}@media(max-width:560px){.tabla .ocultable{display:none}}.exclusiones{display:flex;flex-wrap:wrap;gap:6px;margin:6px 0}.chip{display:inline-flex;align-items:center;gap:4px;background:var(--gris-suave);border-radius:999px;padding:2px 8px 2px 10px;font-size:.85rem}.chip button{background:none;border:0;padding:0 2px;color:var(--tenue);font-size:1rem;line-height:1}.pasos{display:grid;grid-template-columns:repeat(4,1fr);gap:4px;margin:6px 0 10px}.paso{text-align:center;font-size:.72rem;padding:5px 2px;border-radius:8px;background:var(--gris-suave);color:var(--tenue)}.paso.hecho{background:var(--verde-suave);color:var(--verde)}.paso.actual{background:var(--marca);color:#fff;font-weight:700}.registro{font-size:.82rem}.registro div{display:grid;grid-template-columns:90px 1fr 90px;gap:6px;padding:3px 0;border-bottom:1px solid var(--gris-suave)}.participante{max-width:520px;margin:0 auto;padding:16px 14px 40px}.participante .cabecera-p{text-align:center;margin:10px 0 14px}.participante .cabecera-p h1{color:var(--marca)}.sobre{background:var(--marca);color:#fff;border-radius:16px;padding:22px 18px;text-align:center;margin-bottom:12px;box-shadow:0 8px 24px #8a1c2b40}.sobre .nombre{font-size:2rem;font-weight:800;margin:6px 0;line-height:1.15}.sobre .boton{background:#fff;color:var(--marca)}.sobre .tenue{color:#fffc}.deseos-caja{white-space:pre-wrap;background:var(--gris-suave);border-radius:10px;padding:10px 12px;font-size:.95rem}.conmutador{display:flex;align-items:center;justify-content:space-between;gap:10px}.conmutador .boton{min-width:130px}.pregunta{border-left:3px solid var(--oro);padding:4px 10px;margin:8px 0}.pregunta .respuesta{color:var(--verde);margin-top:4px}.pregunta .pendiente{color:var(--tenue);font-style:italic;margin-top:4px}.candidatos{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin:8px 0}.candidatos button{border:1px solid var(--borde);background:#fff;border-radius:10px;padding:9px;font-weight:600}.candidatos button.elegido{border-color:var(--marca);background:var(--marca-suave);color:var(--marca)}.resultado div{display:flex;justify-content:space-between;padding:5px 0;border-bottom:1px solid var(--gris-suave)}.barra{height:8px;background:var(--gris-suave);border-radius:999px;overflow:hidden;margin:6px 0}.barra span{display:block;height:100%;background:var(--verde)}
