.al-layout{--bw:min(560px, calc(100vw - 16px), max(320px, calc((100dvh - 28rem) / 1.08)));--hw:min(19%, 6rem);grid-template-columns:var(--bw);grid-template-areas:"board""info""hand";justify-content:center;display:grid}@media (min-width:64rem){.al-layout{--bw:min(620px, max(380px, calc((100dvh - 24.5rem) / 1.08)));--hw:min(11%, 7.5rem);grid-template-columns:var(--bw) 340px;grid-template-areas:"board side""hand hand";column-gap:1.25rem}}.al-hand{width:var(--hw)}.al-hand+.al-hand{margin-left:min(.3rem, calc((100% - var(--n) * var(--hw)) / (var(--n) - 1)))}@keyframes al-pulse-green{0%,to{box-shadow:0 0 0 2px #4ade80aa,0 0 6px #4ade8055}50%{box-shadow:0 0 0 3px #86efac,0 0 16px #4ade80aa}}.al-ready{animation:1.4s ease-in-out infinite al-pulse-green}@keyframes al-pulse-gold{0%,to{box-shadow:0 0 0 2px #fcd34d99}50%{box-shadow:0 0 0 3px #fde68a,0 0 14px #fcd34daa}}.al-playable{animation:1.6s ease-in-out infinite al-pulse-gold}.al-slot{animation:1.2s ease-in-out infinite al-pulse-gold;background:#fde68a22!important;border:2px solid #fde68a!important}@keyframes al-pulse-red{0%,to{box-shadow:0 0 0 3px #f87171cc}50%{box-shadow:0 0 0 4px #fca5a5,0 0 18px #ef4444}}.al-target{border-radius:.6rem;animation:1s ease-in-out infinite al-pulse-red}button.al-target{border-radius:9999px}.grid>.al-target{border-radius:.6rem}@keyframes al-ripple{0%{opacity:.9;transform:scale(1)}to{opacity:0;transform:scale(1.6)}}.al-hero-target:before,.al-hero-target:after{content:"";pointer-events:none;border:3px solid #f87171;border-radius:9999px;animation:1.2s ease-out infinite al-ripple;position:absolute;inset:-2px}.al-hero-target:after{animation-delay:.6s}@keyframes al-lunge-up{0%{transform:translateY(0)scale(1)}35%{transform:translateY(8%)scale(1.06)}60%{z-index:20;transform:translateY(-55%)scale(1.08)}to{transform:translateY(0)scale(1)}}@keyframes al-lunge-down{0%{transform:translateY(0)scale(1)}35%{transform:translateY(-8%)scale(1.06)}60%{z-index:20;transform:translateY(55%)scale(1.08)}to{transform:translateY(0)scale(1)}}.al-lunge-up{z-index:20;animation:.5s ease-in-out al-lunge-up;position:relative}.al-lunge-down{z-index:20;animation:.5s ease-in-out al-lunge-down;position:relative}@keyframes al-death{0%{filter:brightness();opacity:1;transform:scale(1)}30%{filter:brightness(2.5);transform:scale(1.05)rotate(-2deg)}to{filter:brightness(3);opacity:0;transform:scale(.7)rotate(6deg)}}.al-death{animation:.42s ease-in forwards al-death}@keyframes al-pop{0%{opacity:0;transform:scale(1.4)translateY(-10%)}60%{opacity:1;transform:scale(.96)}to{transform:scale(1)}}.al-pop{animation:.35s cubic-bezier(.2,.9,.3,1.2) al-pop}@keyframes al-float{0%{opacity:0;transform:translate(-50%)scale(.6)}20%{opacity:1;transform:translate(-50%,-20%)scale(1.25)}to{opacity:0;transform:translate(-50%,-110%)scale(1)}}.al-float{animation:.9s ease-out forwards al-float}@keyframes al-flash{0%{opacity:.9}to{opacity:0}}.al-flash{animation:.45s ease-out forwards al-flash}@keyframes al-barrier{0%,to{opacity:.5}50%{opacity:1}}.al-barrier{background:radial-gradient(#0000 55%,#fef9c355);animation:1.8s ease-in-out infinite al-barrier}@keyframes al-banner{0%{opacity:0;transform:translate(-100%,-50%)}18%{opacity:1;transform:translateY(-50%)}82%{opacity:1;transform:translateY(-50%)}to{opacity:0;transform:translate(100%,-50%)}}.al-banner{background:linear-gradient(90deg,#0000,#000c 20% 80%,#0000);animation:1s ease-in-out forwards al-banner}@keyframes al-showcase{0%{opacity:0;transform:scale(.85)}15%{opacity:1;transform:scale(1)}to{opacity:1}}.al-showcase>div{animation:.5s ease-out al-showcase}@keyframes al-toast{0%{opacity:0;transform:translate(-50%,-8px)}10%,85%{opacity:1;transform:translate(-50%)}to{opacity:0;transform:translate(-50%,-4px)}}.al-toast{animation:2.2s forwards al-toast}@keyframes al-endturn{0%,to{box-shadow:0 0 0 2px #fde68a,0 0 8px #fcd34d88}50%{box-shadow:0 0 0 3px #fef3c7,0 0 22px #fcd34d}}.al-endturn{animation:1.1s ease-in-out infinite al-endturn}@keyframes al-victory{0%{opacity:0;letter-spacing:.6em;transform:scale(.6)}to{opacity:1;letter-spacing:.08em;transform:scale(1)}}.al-victory{text-shadow:0 0 24px #fcd34d;animation:.8s cubic-bezier(.2,.9,.3,1.1) al-victory}@keyframes al-dash{to{stroke-dashoffset:-44px}}.al-aim-line{animation:.6s linear infinite al-dash}@keyframes al-aim-in{0%{opacity:0}to{opacity:1}}.al-aim{animation:.15s ease-out al-aim-in}@keyframes al-ring{0%,to{opacity:.6}50%{opacity:1}}.al-aim-ring{animation:.5s ease-in-out infinite al-ring}.al-aimed{border-radius:.6rem;box-shadow:0 0 0 3px #f87171,0 0 22px #ef4444}button.rounded-full.al-aimed{border-radius:9999px}.al-crosshair{border-radius:inherit;opacity:.85;background:linear-gradient(#f87171,#f87171) 50%/2px 70% no-repeat,linear-gradient(#f87171,#f87171) 50%/70% 2px no-repeat;animation:.5s ease-in-out infinite al-ring}@keyframes al-sword{0%,to{transform:translate(-50%)}50%{transform:translate(-50%,-3px)}}.al-sword{animation:.9s ease-in-out infinite al-sword}@media (prefers-reduced-motion:reduce){.al-ready,.al-playable,.al-slot,.al-target,.al-barrier,.al-endturn{animation:none}.al-hero-target:after{display:none}.al-hero-target:before{animation:none;transform:scale(1.15)}.al-lunge-up,.al-lunge-down,.al-pop{animation-duration:10ms}}
