:root{--tinta: #0a0a12;--niebla: #12121e;--hueso: #f4f2ee;--tenue: rgba(244, 242, 238, .55);--neon: #ff2d6f;--borde: rgba(244, 242, 238, .14);--titular: "Bebas Neue", "Arial Narrow", sans-serif;--texto: "Inter", system-ui, -apple-system, sans-serif}*{box-sizing:border-box}[hidden]{display:none!important}html,body{margin:0;height:100%;overflow:hidden;background:var(--tinta);color:var(--hueso);font-family:var(--texto);-webkit-font-smoothing:antialiased;overscroll-behavior:none}#lienzo{position:fixed;inset:0;width:100%;height:100%;display:block;touch-action:none}.carga{position:fixed;inset:0;z-index:40;display:grid;place-items:center;background:radial-gradient(ellipse at 50% 60%,#1a1428 0%,var(--tinta) 70%);transition:opacity .8s ease}.carga--fuera{opacity:0;pointer-events:none}.carga__inner{text-align:center;padding:2rem}.carga__marca{margin:0 0 .9rem;font-family:var(--titular);font-size:clamp(2rem,7.5vw,4rem);line-height:.95;letter-spacing:.18em;text-indent:.18em;color:var(--hueso);text-transform:uppercase;text-shadow:0 0 34px rgba(255,45,111,.75),0 0 90px rgba(255,45,111,.35)}.carga__titulo{margin:0;font-family:var(--titular);font-size:clamp(3rem,13vw,8rem);line-height:.85;letter-spacing:.02em;color:var(--hueso);text-shadow:0 0 42px rgba(255,45,111,.55)}.carga__titulo2{display:inline-block;font-size:.5em;letter-spacing:.14em;color:var(--neon)}.carga__sub{margin:.4rem 0 2.2rem;font-size:.95rem;letter-spacing:.35em;color:var(--tenue);text-transform:uppercase}.carga__barra{width:min(260px,60vw);height:2px;margin:0 auto;background:var(--borde);overflow:hidden}.carga__barra i{display:block;height:100%;width:0%;background:var(--neon);transition:width .3s ease}.btn-entrar{margin-top:2rem;padding:.9rem 2.4rem;font-family:var(--texto);font-size:.82rem;font-weight:800;letter-spacing:.18em;text-transform:uppercase;color:var(--tinta);background:var(--hueso);border:0;border-radius:999px;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease}.btn-entrar:hover{transform:translateY(-2px);box-shadow:0 10px 30px #ff2d6f59}.btn-entrar:focus-visible{outline:2px solid var(--neon);outline-offset:4px}.hud{position:fixed;inset:0;z-index:20;pointer-events:none}.hud__portal{position:absolute;top:max(1.2rem,env(safe-area-inset-top));left:1.4rem;display:flex;align-items:baseline;gap:.5rem;color:var(--tenue)}.hud__calle{font-family:var(--titular);font-size:1.5rem;letter-spacing:.1em;text-shadow:0 2px 12px rgba(10,10,18,.95),0 0 3px rgba(10,10,18,.9)}.hud__num{font-family:var(--titular);font-size:1.5rem;color:var(--hueso);text-shadow:0 2px 12px rgba(10,10,18,.95),0 0 3px rgba(10,10,18,.9)}.hud__num:before{content:"Nº ";font-size:.62em;color:var(--tenue)}.hud__ayuda{position:absolute;bottom:max(1.2rem,env(safe-area-inset-bottom));left:50%;transform:translate(-50%);font-size:.72rem;letter-spacing:.04em;color:var(--tenue);white-space:nowrap;transition:opacity .5s ease}.hud__ayuda--fuera{opacity:0}kbd{display:inline-block;min-width:1.5em;padding:.15em .4em;margin:0 .1em;font:inherit;font-size:.9em;text-align:center;color:var(--hueso);background:#f4f2ee1a;border:1px solid var(--borde);border-radius:4px}.hud__prompt{position:absolute;left:50%;bottom:22%;transform:translate(-50%);display:flex;align-items:center;gap:.7rem;padding:.7rem 1.4rem;background:#0a0a12d1;border:1px solid var(--borde);border-radius:999px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);font-size:.9rem;font-weight:600;animation:latido 2s ease-in-out infinite}@keyframes latido{0%,to{transform:translate(-50%) translateY(0)}50%{transform:translate(-50%) translateY(-5px)}}@media(prefers-reduced-motion:reduce){.hud__prompt{animation:none}}.joystick{position:fixed;width:124px;height:124px;margin:-62px 0 0 -62px;pointer-events:none;z-index:21;animation:aparecer .16s ease-out}@keyframes aparecer{0%{opacity:0;transform:scale(.7)}}@media(prefers-reduced-motion:reduce){.joystick{animation:none}}.joystick__base{width:100%;height:100%;border:1px solid rgba(244,242,238,.3);border-radius:50%;background:#0a0a1252;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.joystick__palanca{position:absolute;top:50%;left:50%;width:54px;height:54px;border-radius:50%;background:#f4f2eee6;transform:translate(-50%,-50%);box-shadow:0 4px 18px #00000073}.btn-accion{position:absolute;right:1.6rem;bottom:max(3.2rem,env(safe-area-inset-bottom));width:96px;height:96px;border-radius:50%;border:1px solid var(--borde);background:#ff2d6fe6;color:#fff;font-weight:800;font-size:.8rem;letter-spacing:.1em;text-transform:uppercase;pointer-events:auto;cursor:pointer}.panel{position:fixed;inset:0;z-index:30;display:flex;flex-direction:column;padding:clamp(1.4rem,5vw,4rem);overflow-y:auto;background:linear-gradient(100deg,#0a0a12f2,#0a0a12e0 40%,#0a0a1273 68%,#0a0a121f);animation:subir .5s cubic-bezier(.16,1,.3,1)}@keyframes subir{0%{opacity:0;transform:translateY(30px)}}@media(prefers-reduced-motion:reduce){.panel{animation:none}}.panel__cerrar{align-self:flex-end;padding:.6rem 1.2rem;font-size:.72rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--hueso);background:#f4f2ee14;border:1px solid var(--borde);border-radius:999px;cursor:pointer}.panel__cerrar:hover{background:#f4f2ee29}.panel__cab{margin:auto 0 2rem;max-width:62ch}.panel__portal{margin:0 0 .4rem;font-size:.72rem;letter-spacing:.35em;text-transform:uppercase;color:var(--tenue)}.panel__nombre{margin:0;font-family:var(--titular);font-size:clamp(3rem,11vw,7rem);line-height:.9;color:var(--acento, var(--neon));text-shadow:0 0 50px var(--acento, var(--neon))}.panel__claim{margin:.6rem 0 0;font-size:1.05rem;color:var(--hueso)}.panel__dir{margin:.3rem 0 0;font-size:.82rem;color:var(--tenue)}.panel__sesiones{display:grid;gap:.7rem;max-width:760px;padding-bottom:2rem}.sesion{display:grid;grid-template-columns:minmax(120px,190px) 1fr auto;gap:1.2rem;align-items:center;padding:1.1rem 1.3rem;background:#f4f2ee0b;border:1px solid var(--borde);border-radius:14px}.sesion--hoy{background:#f4f2ee17;border-color:var(--acento, var(--neon));box-shadow:0 0 34px -14px var(--acento, var(--neon))}.sesion__cuando{font-family:var(--titular);font-size:1.25rem;letter-spacing:.05em;color:var(--acento, var(--neon))}.sesion--hoy .sesion__cuando{font-size:1.7rem}.sesion__nombre{margin:0;font-size:1.02rem;font-weight:600}.sesion__artistas{margin:.15rem 0 0;font-size:.85rem;color:var(--tenue)}.sesion__meta{text-align:right;font-size:.8rem;color:var(--tenue);white-space:nowrap}.sesion__precio{display:block;font-weight:700;color:var(--hueso)}.panel__vacio{padding:1.4rem;color:var(--tenue);border:1px dashed var(--borde);border-radius:14px}@media(max-width:900px){.panel{background:linear-gradient(180deg,#0a0a1273,#0a0a12f0 45%)}}@media(max-width:640px){.sesion{grid-template-columns:1fr;gap:.4rem}.sesion__meta{text-align:left}.hud__ayuda{display:none}}.seo{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.portero{position:fixed;inset:0;z-index:32;display:grid;place-items:end center;padding:0 1.2rem max(3.5rem,env(safe-area-inset-bottom));background:linear-gradient(0deg,#0a0a12d1,#0a0a1200 45%);animation:subir .35s cubic-bezier(.16,1,.3,1)}@media(prefers-reduced-motion:reduce){.portero{animation:none}}.portero__caja{width:min(560px,100%);padding:1.4rem 1.5rem 1.2rem;background:#0e0e16f0;border:1px solid var(--borde);border-radius:18px;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);box-shadow:0 24px 60px -20px #000000e6}.portero__quien{margin:0 0 .5rem;font-size:.66rem;font-weight:800;letter-spacing:.22em;color:var(--tenue)}.portero__quien span{color:var(--acento, var(--neon))}.portero__texto{margin:0 0 1.2rem;font-size:1.18rem;line-height:1.35;color:var(--hueso)}.portero__texto:before{content:"— ";color:var(--tenue)}.portero__botones{display:flex;gap:.7rem;flex-wrap:wrap}.portero__botones button{flex:1 1 auto;min-height:48px;padding:.8rem 1.4rem;font-family:var(--texto);font-size:.82rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase;border-radius:999px;cursor:pointer;transition:transform .15s ease,background .15s ease}.portero__botones button:active{transform:scale(.97)}.portero__botones button:focus-visible{outline:2px solid var(--hueso);outline-offset:3px}.portero__si{color:#0a0a12;background:var(--acento, var(--neon));border:0}.portero__no{color:var(--hueso);background:#f4f2ee14;border:1px solid var(--borde)}.portero__no:hover{background:#f4f2ee29}
