:root,:root[lang=zh],[data-lang=zh],.lang-zh{--font-retro:"FusionPixelZh", "Fusion Pixel 12px Proportional SC", "Press Start 2P", monospace, sans-serif;--font-retro-mono:"VT323", "FusionPixelZh", monospace}:root[lang=en],[data-lang=en],.lang-en{--font-retro:"Press Start 2P", "FusionPixel", monospace, sans-serif;--font-retro-mono:"VT323", "Press Start 2P", monospace}.retro{font-family:var(--font-retro,"FusionPixel", "Press Start 2P", monospace, sans-serif);letter-spacing:.5px;line-height:1.5}.retro-mono{font-family:var(--font-retro-mono,"VT323", "FusionPixel", monospace);letter-spacing:1px}.retro-line{vertical-align:middle;align-items:center;line-height:1;display:inline-flex}.pixelated{image-rendering:pixelated;image-rendering:crisp-edges}.crt-screen{position:relative;overflow:hidden}.crt-screen:before{content:" ";z-index:20;pointer-events:none;background:linear-gradient(#12101000 50%,#00000040 50%) 0 0/100% 3px,linear-gradient(90deg,#ff000008,#00ff0003,#0000ff08) 0 0/6px 100%;display:block;position:absolute;inset:0}@keyframes pixel-shake{0%{transform:translate(0)}20%{transform:translate(-3px,2px)}40%{transform:translate(3px,-2px)}60%{transform:translate(-2px,-3px)}80%{transform:translate(2px,3px)}to{transform:translate(0)}}.animate-pixel-shake{animation:.35s ease-in-out infinite pixel-shake}@keyframes glitch-anim{0%{clip-path:inset(40% 0 61%);transform:skew(.3deg)}20%{clip-path:inset(92% 0 1%);transform:skew(-.5deg)}40%{clip-path:inset(10% 0 85%);transform:skew(.8deg)}60%{clip-path:inset(70% 0 15%);transform:skew(-.2deg)}80%{clip-path:inset(25% 0 58%);transform:skew(.5deg)}to{clip-path:inset(58% 0 35%);transform:skew(0deg)}}.glitch-text{display:inline-block;position:relative}.glitch-text:before,.glitch-text:after{content:attr(data-text);width:100%;height:100%;position:absolute;top:0;left:0}.glitch-text:before{text-shadow:-2px 0 #ef4444;clip-path:inset(0);animation:2s linear infinite alternate-reverse glitch-anim;left:2px}.glitch-text:after{text-shadow:-2px 0 #06b6d4;clip-path:inset(0);animation:2.5s linear infinite alternate-reverse glitch-anim;left:-2px}@keyframes flash-inverted{0%{filter:invert(0)}15%{filter:invert()}30%{filter:invert(0)}45%{filter:invert()}60%{filter:invert(0)}to{filter:invert(0)}}.animate-model-break-flash{animation:.6s ease-out flash-inverted}.battle-layout{flex-direction:column;flex:auto;gap:6px;min-height:0;display:flex}.battle-layout__rail{flex-direction:column;flex:none;gap:6px;min-width:0;display:flex}.battle-layout__arena{--battle-controls-clearance:145px;border:1px solid #5eead438;flex:auto;min-height:0;overflow:hidden}.battle-layout__arena--classic{--battle-controls-clearance:160px}.battle-stage__play-area{inset:16px 0 var(--battle-controls-clearance);flex-direction:column;justify-content:center;align-items:center;min-height:0;display:flex;position:absolute}.battle-stage__hand{width:calc(100% - 24px)}.battle-layout__oracle{display:none}.battle-layout__actions{z-index:20;width:calc(100% - 20px);max-width:800px;position:absolute;bottom:10px;left:50%;transform:translate(-50%)}@media (min-width:1024px),(min-width:640px) and (max-height:600px){.battle-layout{grid-template-rows:minmax(0,1fr);grid-template-columns:240px minmax(0,1fr);gap:10px;display:grid}.battle-layout__rail{background:#040a0feb;border:1px solid #5eead440;grid-area:1/1;padding:6px;overflow-y:auto}.battle-layout__arena{grid-area:1/2}.battle-layout__oracle{filter:drop-shadow(0 0 20px #2dd4bf4d);opacity:.86;background:url(/game/reader-oracle.webp) bottom/contain no-repeat,radial-gradient(55% 42% at 50% 75%,#14b8a62b,#0000 100%);flex:auto;min-height:130px;display:block}.battle-layout--boss .battle-layout__oracle{filter:hue-rotate(90deg)drop-shadow(0 0 24px #d946ef80)}.battle-layout--broken .battle-layout__oracle{filter:grayscale()drop-shadow(0 0 14px #ef444480)}}@media (min-width:640px) and (max-width:1023px) and (max-height:600px){.battle-stage__hand{width:min(100% - 24px,420px)}.battle-stage__hint{display:none}}.arcade-room{background:radial-gradient(34% 68% at 50% 52%,#03584638,#0000 100%),repeating-linear-gradient(0deg,#0000 0 39px,#26665609 40px),repeating-linear-gradient(90deg,#0000 0 39px,#26665609 40px),#030607}.arcade-room--boss{background:radial-gradient(34% 68% at 50% 52%,#6422873d,#0000 100%),repeating-linear-gradient(0deg,#0000 0 39px,#7a439109 40px),repeating-linear-gradient(90deg,#0000 0 39px,#7a439109 40px),#050407}.battle-stage{isolation:isolate;background:linear-gradient(#050d151a,#050d1533),url(/game/arena-normal.webp) 50%/cover no-repeat}.battle-stage--boss{background:linear-gradient(#0a04100f,#0a04102e),url(/game/arena-boss.webp) 50%/cover no-repeat;border-color:#e879f966}@keyframes arena-drift{0%{transform:translateY(12px)}to{transform:translateY(-16px)}}.battle-stage:after{content:"";z-index:0;opacity:.5;pointer-events:none;background-image:radial-gradient(circle,#99f6e480 0 1px,#0000 2px),radial-gradient(circle,#99f6e44d 0 1px,#0000 2px);background-position:5px 8px,48px 36px;background-size:79px 113px,131px 89px;animation:9s ease-in-out infinite alternate arena-drift;position:absolute;inset:-20px}.battle-stage--boss:after{filter:hue-rotate(95deg)}.battle-stage__orbit{aspect-ratio:1;pointer-events:none;border:1px solid #99f6e442;border-radius:50%;width:min(85%,560px);position:absolute;transform:scaleY(.42)rotate(-12deg);box-shadow:0 0 36px #10b9811f,inset 0 0 32px #10b98114}.battle-stage--boss .battle-stage__orbit{border-color:#c084fc33;box-shadow:0 0 40px #a855f721,inset 0 0 32px #a855f712}.score-scene{background:linear-gradient(#06091052,#06091080),url(/game/arena-normal.webp) 50%/cover no-repeat;border:1px solid #facc156b;padding:10px}.score-scene--boss{background:linear-gradient(#0a041047,#0a041075),url(/game/arena-boss.webp) 50%/cover no-repeat}.score-scene__panel{flex:none;width:min(100%,640px)}.score-scene__panel>div{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#05080eeb}.score-scene__cards{display:none}@keyframes score-card-arrive{0%{opacity:0;transform:translateY(-25px)rotate(-7deg)scale(.84)}to{opacity:1;transform:translateY(0)rotate(0)scale(1)}}@media (min-width:768px) and (min-height:700px){.score-scene__cards{flex:none;justify-content:center;gap:8px;display:flex}.score-scene__cards .poker-card{animation:.42s cubic-bezier(.18,1.3,.42,1) both score-card-arrive}.score-scene__cards .poker-card:nth-child(2){animation-delay:50ms}.score-scene__cards .poker-card:nth-child(3){animation-delay:.1s}.score-scene__cards .poker-card:nth-child(4){animation-delay:.15s}.score-scene__cards .poker-card:nth-child(5){animation-delay:.2s}}.poker-card{--card-paper:#e7eee9;--card-ink:#122329;background:radial-gradient(circle at 52% 43%, #ffffffd9, transparent 52%), repeating-linear-gradient(135deg, transparent 0 12px, #11182706 13px 14px), var(--card-paper);transform:translateY(0) rotate(var(--card-angle,0deg));transform-origin:50% 80%;will-change:transform;transition:transform .24s cubic-bezier(.2,1.4,.4,1),border-color .16s,box-shadow .16s}.poker-card[data-suit=♥]{--card-paper:#f7d7da;--card-ink:#9f1239}.poker-card[data-suit=♦]{--card-paper:#f9e0cc;--card-ink:#b42331}.poker-card[data-suit=♣]{--card-paper:#d9eee2;--card-ink:#104f46}.poker-card[data-suit=♠]{--card-paper:#dce6f3;--card-ink:#213c67}.poker-card:before{content:"";pointer-events:none;border:1px solid #16223024;border-radius:3px;position:absolute;inset:5px}.poker-card__pip{color:var(--card-ink)}.poker-card:after{content:"";pointer-events:none;background:linear-gradient(115deg,#ffffff57,#0000 38% 63%,#ffffff17);border:1px solid #ffffff7a;position:absolute;inset:2px}.poker-card--interactive:hover{z-index:21;transform:translateY(-7px)rotate(0)scale(1.035)}.poker-card--selected,.poker-card--selected:hover{transform:translateY(-13px)rotate(0)scale(1.035)}.poker-card--interactive:active{transform:translateY(-4px)rotate(0)scale(.97)}@keyframes score-punch{0%{filter:brightness(1.7);transform:scale(.92)}55%{transform:scale(1.055)}to{filter:brightness();transform:scale(1)}}.score-tally__formula,.score-tally__total{animation:.31s cubic-bezier(.2,1.3,.4,1) both score-punch;position:relative}.score-tally__total--final{background:linear-gradient(105deg,#44280bd9,#643e0980,#44280bd9);border-color:#facc15e6;overflow:hidden;box-shadow:0 0 22px #facc1547,inset 0 0 20px #facc1514}.score-tally__total--final:after{content:"";pointer-events:none;background:linear-gradient(90deg,#0000,#fff4b4a6,#0000);width:20%;animation:.65s ease-out 90ms both score-sheen;position:absolute;inset:-40% auto -40% -30%;transform:skew(-22deg)}.score-tally__total--final .score-tally__total-value{color:#fff0a7;text-shadow:0 0 12px #facc15e6,2px 2px #713f12}@keyframes score-sheen{0%{left:-30%}to{left:130%}}.score-tally__rays{opacity:.35;pointer-events:none;background:repeating-conic-gradient(at 50% 55%,#facc1513 0deg 7deg,#0000 7deg 22deg);position:absolute;inset:0;-webkit-mask-image:radial-gradient(circle,#000,#0000 68%);mask-image:radial-gradient(circle,#000,#0000 68%)}@keyframes combo-arrive{0%{opacity:0;transform:scale(.45)rotate(-7deg)}65%{opacity:1;transform:scale(1.18)rotate(2deg)}to{opacity:1;transform:scale(1)rotate(-2deg)}}@keyframes combo-spark{0%{transform:rotate(var(--spark-angle)) translateY(0) scale(1);opacity:1}to{transform:rotate(var(--spark-angle)) translateY(-38px) scale(0);opacity:0}}.score-tally__combo{z-index:1;color:#11110a;background:#facc15;border:2px solid #fef08a;padding:2px 10px;font-size:12px;font-weight:900;animation:.35s cubic-bezier(.16,1,.3,1) both combo-arrive;position:relative;box-shadow:3px 3px #9a3412,0 0 18px #facc158c}.score-tally__combo-sparks{pointer-events:none;position:absolute;inset:0}.score-tally__combo-sparks i{background:#fef08a;width:4px;height:8px;animation:.5s ease-out both combo-spark;position:absolute;top:50%;left:50%;box-shadow:0 0 5px #facc15}@media (prefers-reduced-motion:reduce){.battle-stage:after{animation:none}.poker-card,.poker-card--interactive:hover,.poker-card--selected,.poker-card--selected:hover,.poker-card--interactive:active{transition:none;transform:none}.score-tally__formula,.score-tally__total,.score-tally__total--final:after,.score-tally__combo,.score-tally__combo-sparks i,.score-scene__cards .poker-card{animation:none}}
