:root{--noche: #08070c;--panel: #13111c;--panel-2: #1b1828;--borde: #2a2540;--texto: #ece9f5;--tenue: #9a93b3;--violeta: #8b5cf6;--violeta-2: #a78bfa;--oro: #fbbf24;--rojo: #f87171;--verde: #4ade80;--hielo: #7dd3fc}*{box-sizing:border-box}html,body{margin:0;height:100%;background:var(--noche);color:var(--texto);font-family:Inter,system-ui,sans-serif;overflow:hidden}canvas#lienzo{position:fixed;inset:0;width:100vw;height:100vh;display:block}.oculto,.oculta{display:none!important}.pantalla{position:fixed;inset:0;display:flex;align-items:center;justify-content:center;padding:16px;overflow:auto;z-index:5}.velo{background:#08070cb8;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.velo-claro{background:#08070c59}#p-inicio,#p-armado,#p-tienda{background:radial-gradient(1200px 600px at 70% -10%,#2a1a5a 0%,transparent 60%),var(--noche)}.tarjeta{background:var(--panel);border:1px solid var(--borde);border-radius:18px;padding:28px;max-width:540px;width:100%;text-align:center;box-shadow:0 20px 60px #00000080}.tarjeta h2{margin:0 0 16px}.inicio h1{font-size:54px;font-weight:900;letter-spacing:-.03em;margin:10px 0 4px;background:linear-gradient(90deg,#fff,var(--violeta-2),var(--oro));-webkit-background-clip:text;background-clip:text;color:transparent}.inicio .bajada{font-size:18px;font-weight:600;margin:0 0 6px}.sub{color:var(--tenue);margin:0 0 20px;line-height:1.45}.inicio .logo{border-radius:18px}.teclas{margin-top:22px;color:var(--tenue);font-size:14px;display:grid;gap:8px}kbd{display:inline-block;min-width:22px;padding:1px 6px;margin:0 1px;border:1px solid var(--borde);border-bottom-width:2px;border-radius:6px;background:var(--panel-2);color:var(--texto);font:600 12px Inter,sans-serif}.firma{margin:22px 0 0;font-size:12px;color:var(--tenue)}.btn{font:700 15px Inter,sans-serif;padding:11px 22px;border-radius:12px;border:1px solid var(--borde);background:var(--panel-2);color:var(--texto);cursor:pointer;margin:4px}.btn:hover:not(:disabled){border-color:var(--violeta)}.btn:disabled{opacity:.45;cursor:not-allowed}.btn.primario{background:var(--violeta);border-color:var(--violeta);color:#fff}.btn.primario:hover:not(:disabled){background:#7c4ff0}.btn.grande{width:100%;font-size:18px;padding:14px;margin:16px 0 0}.btn.chico{font-size:13px;padding:7px 12px;border-radius:9px}.btn.fantasma{background:transparent;color:var(--tenue)}.btn:focus-visible,.modo:focus-visible,.carta:focus-visible{outline:3px solid var(--violeta-2);outline-offset:2px}.armado{width:100%;max-width:1150px;align-self:flex-start}.armado header{display:flex;justify-content:space-between;align-items:center;margin:4px 0 18px;gap:12px}.marca{display:flex;align-items:center;gap:10px;font-weight:900;font-size:22px}.marca img{border-radius:8px}.marca em{font-style:normal;font-weight:500;color:var(--tenue);font-size:16px}.marcador-partidas{color:var(--tenue);font-size:14px}.grilla{display:grid;grid-template-columns:1.1fr 1.2fr .9fr;gap:14px}@media(max-width:980px){.grilla{grid-template-columns:1fr}}.bloque{background:var(--panel);border:1px solid var(--borde);border-radius:16px;padding:18px}.bloque h2{margin:0 0 12px;font-size:13px;text-transform:uppercase;letter-spacing:.08em;color:var(--tenue);display:flex;justify-content:space-between}.bloque label{display:grid;gap:6px;font-size:13px;color:var(--tenue);margin-bottom:12px}select{font:600 15px Inter,sans-serif;padding:9px 10px;border-radius:10px;background:var(--panel-2);color:var(--texto);border:1px solid var(--borde)}.nota{color:var(--tenue);font-size:13px;margin:-4px 0 10px}.cuenta{color:var(--texto)}.cuenta.mal{color:var(--rojo)}.estilos{display:grid;gap:8px}.estilo{display:grid;grid-template-columns:44px 1fr;gap:12px;align-items:center;text-align:left;padding:10px 12px;border:1px solid var(--borde);border-radius:12px;background:var(--panel-2);cursor:pointer;color:var(--texto);font:inherit}.estilo.activo{border-color:var(--violeta);box-shadow:0 0 0 1px var(--violeta) inset}.estilo canvas{width:44px;height:44px}.estilo b{font-size:15px}.estilo small{display:block;color:var(--tenue);font-size:12.5px;margin:1px 0 6px}.barras{display:grid;grid-template-columns:auto 1fr;gap:2px 8px;font-size:11px;color:var(--tenue);align-items:center}.barra{height:5px;background:#2a2540;border-radius:3px;overflow:hidden}.barra i{display:block;height:100%;background:var(--violeta-2);border-radius:3px}.mazo{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:8px;margin-bottom:8px}.mcarta{border:1px solid var(--borde);border-radius:12px;padding:8px 10px;background:var(--panel-2);display:grid;gap:4px}.mcarta.en{border-color:var(--violeta)}.mcarta .cab{display:flex;justify-content:space-between;align-items:center;font-weight:700;font-size:14px}.mcarta p{margin:0;font-size:11.5px;color:var(--tenue);line-height:1.35}.costo{display:inline-grid;place-items:center;min-width:22px;height:22px;border-radius:50%;background:#3b2a7a;color:#fff;font-size:12px;font-weight:800}.paso{display:flex;align-items:center;gap:6px;justify-content:flex-end}.paso button{width:24px;height:24px;border-radius:7px;border:1px solid var(--borde);background:var(--panel);color:var(--texto);cursor:pointer;font-weight:800}.paso b{min-width:14px;text-align:center}.ventajas{font-size:13px;color:var(--tenue);line-height:1.5;background:var(--panel-2);border-radius:12px;padding:10px 12px}.ventajas b{color:var(--texto)}.aviso{color:var(--rojo);min-height:1em;font-size:13px}#hud{position:fixed;inset:0;pointer-events:none;z-index:3}.hud-arriba{display:flex;justify-content:space-between;align-items:flex-start;padding:14px 18px;gap:12px}.ficha{background:#13111cd9;border:1px solid var(--borde);border-radius:14px;padding:10px 14px;min-width:250px}.ficha.der{text-align:right}.ficha .nom{font-weight:800;font-size:15px;display:flex;gap:8px;align-items:center}.ficha.der .nom{justify-content:flex-end}.ficha .nom small{color:var(--tenue);font-weight:600}.ficha .sentido{font-size:16px}.giro{height:12px;background:#2a2540;border-radius:6px;margin:7px 0 6px;overflow:hidden}.ficha.der .giro{transform:scaleX(-1)}.giro i{display:block;height:100%;border-radius:6px;transition:width .1s linear}.energia{display:flex;gap:3px}.ficha.der .energia{justify-content:flex-end}.energia span{width:16px;height:7px;border-radius:3px;background:#2a2540;position:relative;overflow:hidden}.energia span i{position:absolute;inset:0;background:var(--oro);transform-origin:left}.efectos{display:flex;gap:4px;margin-top:6px;flex-wrap:wrap;min-height:18px}.ficha.der .efectos{justify-content:flex-end}.efectos span{font-size:11px;padding:1px 6px;border-radius:6px;background:#2a2540;color:var(--texto)}.centro-hud{text-align:center}.ronda{font-size:13px;color:var(--texto);font-weight:700;text-shadow:0 1px 4px #000,0 0 8px #000}.reloj{text-shadow:0 2px 8px #000}.reloj{font-size:28px;font-weight:900;font-variant-numeric:tabular-nums}.mano{position:fixed;bottom:16px;left:50%;transform:translate(-50%);display:flex;gap:10px;pointer-events:auto}.carta{width:150px;min-height:104px;border-radius:14px;border:1px solid var(--borde);background:#1b1828f0;padding:9px 10px;text-align:left;color:var(--texto);cursor:pointer;font:inherit;position:relative;overflow:hidden;transition:transform .12s}.carta:hover:not(:disabled){transform:translateY(-4px);border-color:var(--violeta)}.carta:disabled{cursor:default}.carta.sin{opacity:.5}.carta .cab{display:flex;justify-content:space-between;align-items:center;font-weight:800;font-size:14px;gap:6px}.carta p{margin:6px 0 0;font-size:11.5px;color:var(--tenue);line-height:1.35}.carta .tecla{position:absolute;bottom:6px;right:8px;font-size:11px;color:var(--tenue)}.carta .enfria{position:absolute;left:0;bottom:0;height:3px;background:var(--violeta-2)}.carta.t-ataque{border-top:3px solid #f97316}.carta.t-control{border-top:3px solid var(--hielo)}.carta.t-defensa{border-top:3px solid #a3a3a3}.carta.t-giro{border-top:3px solid var(--verde)}.carta.t-movimiento{border-top:3px solid var(--violeta-2)}#lanza{pointer-events:auto;position:fixed;left:50%;bottom:18px;transform:translate(-50%);z-index:4;width:min(560px,calc(100vw - 32px))}.lanza-caja{background:#13111ceb;border:1px solid var(--borde);border-radius:16px;padding:14px 16px}.lanza-titulo{font-weight:800;margin-bottom:10px}.lanza-fila{display:grid;grid-template-columns:90px 1fr auto;align-items:center;gap:10px;margin-bottom:8px;font-size:13px;color:var(--tenue)}.modos{display:flex;gap:6px;flex-wrap:wrap}.modo{font:600 13px Inter,sans-serif;padding:7px 12px;border-radius:9px;border:1px solid var(--borde);background:var(--panel-2);color:var(--texto);cursor:pointer}.modo.activo{background:var(--violeta);border-color:var(--violeta)}.fuerza{position:relative;height:22px;border-radius:11px;background:linear-gradient(90deg,#2a2540,#4c3a8a);margin:12px 0 8px;overflow:hidden}.fuerza-zona{position:absolute;left:84%;width:8%;top:0;bottom:0;background:#4ade808c}.fuerza-pasado{position:absolute;inset:0 0 0 92%;background:#f8717173}.aguja{position:absolute;top:-2px;bottom:-2px;width:4px;margin-left:-2px;background:#fff;box-shadow:0 0 8px #fff;left:0}.lanza-ayuda{margin:0;font-size:12.5px;color:var(--tenue)}.clave{max-width:620px;border-color:var(--oro);box-shadow:0 0 60px #fbbf2440}.clave-tit{font-size:30px;font-weight:900;color:var(--oro);letter-spacing:-.02em;margin-bottom:4px}.clave-cartas{display:flex;gap:10px;justify-content:center;flex-wrap:wrap;margin-bottom:10px}.clave-cartas .carta{width:160px}.revela{display:flex;justify-content:center;gap:30px;align-items:center;margin:4px 0 12px;font-weight:800;font-size:17px}.revela small{display:block;color:var(--tenue);font-weight:600;font-size:12px}.fin-tit{font-size:34px;font-weight:900;letter-spacing:-.02em}.fin-tit.gana{color:var(--verde)}.fin-tit.pierde{color:var(--rojo)}.marcador{display:flex;justify-content:center;gap:24px;align-items:center;margin:6px 0 14px;font-weight:700}.puntos{display:flex;gap:5px}.puntos i{width:14px;height:14px;border-radius:50%;border:2px solid var(--borde)}.puntos i.si{background:var(--oro);border-color:var(--oro)}.stats-fin{font-size:13px;color:var(--tenue);line-height:1.6;margin-bottom:12px}.acciones{display:flex;justify-content:center;flex-wrap:wrap}@media(max-width:700px){.ficha{min-width:0;flex:1;padding:8px 10px}.carta{width:31vw;min-height:90px}.carta p{display:none}.reloj{font-size:20px}}.pie-mano{position:fixed;bottom:16px;left:50%;transform:translate(-50%);display:grid;gap:6px;justify-items:center}.pie-mano .mano{position:static;transform:none}.turno-falta{font-size:13px;font-weight:700;color:var(--oro);text-shadow:0 1px 4px #000;min-height:1em}.carta:disabled:not(.sin){opacity:.9}#p-clave.abajo{align-items:flex-end;padding-bottom:20px}#p-clave.abajo .tarjeta.clave{max-width:760px;padding:16px 20px}#p-clave.abajo .clave-tit{font-size:22px}#p-clave.abajo .sub{margin-bottom:10px;font-size:14px}#p-clave.abajo .clave-cartas .carta{width:160px}.plazo{font-size:14px;color:var(--tenue);font-weight:700;margin-left:6px}.saltos{font-size:14px;color:var(--verde);letter-spacing:1px;margin-left:4px}.saltos i{font-style:normal;color:#3f3a55}.chispas{font-size:13px;color:#22d3ee;margin-left:6px;font-weight:800}.monedero{font-weight:800;color:var(--oro);font-size:15px;margin:4px 0 12px}.monedero:before{content:"🪙 "}.cab-der{display:flex;align-items:center;gap:12px}.cab-der .monedero{margin:0}.premio{font-weight:800;color:var(--oro);margin:-4px 0 12px;min-height:1em}.pestanas{margin-bottom:10px}.grilla-tienda{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:10px}.titem{background:var(--panel);border:1px solid var(--borde);border-radius:14px;padding:12px;display:grid;gap:6px;justify-items:center;text-align:center}.titem.puesto{border-color:var(--verde);box-shadow:0 0 0 1px var(--verde) inset}.titem canvas{width:96px;height:96px}.titem .icono{font-size:44px;height:96px;display:grid;place-items:center}.titem b{font-size:15px}.titem small{color:var(--tenue);font-size:12px;min-height:1.2em}.titem .precio{color:var(--oro);font-weight:800;font-size:13px}.titem .btn{margin:2px 0 0;width:100%}.poder-recarga{position:absolute;inset:0;display:grid;place-items:center;font-size:26px;font-weight:900;color:#fff;background:#08070c8c;text-shadow:0 2px 6px #000}.vueltas{font-size:13px;font-weight:800;color:var(--hielo)}
