/*! tailwindcss v4.2.2 | MIT License | https://tailwindcss.com */
@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial}}}@keyframes titlePulse{0%,to{opacity:.6}50%{opacity:1}}@keyframes runeGlow{0%,to{text-shadow:2px 2px #000;color:#c8a848}50%{text-shadow:2px 2px #000,0 0 2px #c8a848;color:#f0d080}}@keyframes toastIn{0%{opacity:0;transform:translate(-50%)translateY(10px)}to{opacity:1;transform:translate(-50%)translateY(0)}}@keyframes dbSrcFlashAdd{0%{outline:none}50%{outline:2px solid #32d250}to{outline:none}}@keyframes dbSrcFlashRemove{0%{outline:none}50%{outline:2px solid #d23232}to{outline:none}}@keyframes dbCountBumpAdd{0%{color:#c8a848;transform:scale(1)}40%{color:#50e880;transform:scale(1.3)}to{color:#c8a848;transform:scale(1)}}@keyframes dbCountBumpRemove{0%{color:#c8a848;transform:scale(1)}40%{color:#e85050;transform:scale(1.3)}to{color:#c8a848;transform:scale(1)}}@keyframes fieldCardIn{0%{opacity:0;transform:scale(.7)}50%{opacity:1;transform:scale(1.08)}to{opacity:1;transform:scale(1)}}@keyframes fieldCardInDef{0%{opacity:0;transform:rotate(90deg)scale(.7)}50%{opacity:1;transform:rotate(90deg)scale(1.08)}to{opacity:1;transform:rotate(90deg)scale(1)}}@keyframes targetPulse{0%{outline-color:#ff3c3c66}to{outline-color:#ff3c3c}}@keyframes directPulse{0%,to{border-color:#ff3c3c80}50%{border-color:#ff3c3c}}@keyframes nextPhasePulse{0%,to{filter:brightness()}50%{filter:brightness(1.25)}}@keyframes logFade{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:none}}@keyframes handGlow{0%{outline:2px solid #ffdc3c66}to{outline:2px solid #ffdc3ce6}}@keyframes cardDraw{0%{opacity:0;transform:translateY(28px)scale(.9)}60%{opacity:1;transform:translateY(-4px)scale(1.04)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes modalIn{0%{opacity:0;transform:scale(.92)}to{opacity:1;transform:scale(1)}}@keyframes atkBurst{0%{opacity:1;transform:translate(-50%,-50%)scale(.15)}50%{opacity:.85;transform:translate(-50%,-50%)scale(1.5)}to{opacity:0;transform:translate(-50%,-50%)scale(2.2)}}@keyframes atkHit{0%{filter:brightness();transform:none}25%{filter:brightness(3)saturate(.3);transform:scale(1.08)}50%{filter:brightness(1.5);transform:scale(.95)translate(-4px,3px)}75%{filter:brightness(1.2);transform:scale(1.02)translate(3px,-2px)}to{filter:brightness();transform:none}}@keyframes atkSlotGlow{0%,to{outline:none}35%{outline:3px solid #ff8c00}}@keyframes fusionBurst{0%{opacity:1;transform:translate(-50%,-50%)scale(.1)}30%{opacity:1;transform:translate(-50%,-50%)scale(1.2)}60%{opacity:.7;transform:translate(-50%,-50%)scale(2)}to{opacity:0;transform:translate(-50%,-50%)scale(3)}}@keyframes fusionSpark{0%{transform:translate(-50%,-50%) rotate(var(--fusion-angle)) translateY(0) scale(1);opacity:1}50%{opacity:1}to{transform:translate(-50%,-50%) rotate(var(--fusion-angle)) translateY(-80px) scale(.3);opacity:0}}@keyframes fusionResultPop{0%{opacity:0;filter:brightness(3)saturate(.5);transform:scale(.3)}40%{opacity:1;filter:brightness(2)saturate(.7);transform:scale(1.2)}70%{filter:brightness(1.3);transform:scale(.95)}to{opacity:1;filter:brightness();transform:scale(1)}}@keyframes spin-coin{0%{transform:rotateY(0)scale(1.2)}to{transform:rotateY(360deg)scale(1.2)}}@keyframes coinsPop{0%{opacity:0;transform:scale(.7)}60%{transform:scale(1.15)}to{opacity:1;transform:scale(1)}}@keyframes packReveal{0%{opacity:0;transform:scale(.7)}to{opacity:1;transform:scale(1)}}@keyframes vfxBuffSwirl{0%{transform:translate(-50%, -50%) rotate(var(--vfx-angle)) translateY(0px) scale(.3);opacity:0}15%{opacity:1}50%{transform:translate(-50%, -50%) rotate(calc(var(--vfx-angle) + 180deg)) translateY(-30px) scale(1);opacity:.9}to{transform:translate(-50%, -50%) rotate(calc(var(--vfx-angle) + 360deg)) translateY(-55px) scale(.4);opacity:0}}@keyframes vfxHealStar{0%{transform:translate(calc(-50% + var(--vfx-spread,0px)), -50%) scale(0) rotate(0deg);opacity:0}20%{transform:translate(calc(-50% + var(--vfx-spread,0px)), -50%) scale(1.2) rotate(30deg);opacity:1}60%{transform:translate(calc(-50% + var(--vfx-spread,0px)), calc(-50% - 40px)) scale(1) rotate(90deg);opacity:.8}to{transform:translate(calc(-50% + var(--vfx-spread,0px)), calc(-50% - 75px)) scale(.5) rotate(180deg);opacity:0}}@keyframes vfxFireball{0%{transform:translate(calc(-50% + var(--vfx-fire-ox,60px)), calc(-50% + var(--vfx-fire-oy,-60px))) scale(.5);opacity:0}25%{opacity:1;transform:translate(calc(-50% + var(--vfx-fire-ox,60px) * .5), calc(-50% + var(--vfx-fire-oy,-60px) * .5)) scale(1.1)}70%{opacity:1;transform:translate(-50%,-50%)scale(1.2)}85%{opacity:.8;transform:translate(-50%,-50%)scale(1.5)}to{opacity:0;transform:translate(-50%,-50%)scale(.3)}}.vfx-damage:first-child{--vfx-fire-ox:70px;--vfx-fire-oy:-50px}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.visible{visibility:visible}.absolute{position:absolute}.fixed{position:fixed}.static{position:static}.container{width:100%}.ml-auto{margin-left:auto}.block{display:block}.contents{display:contents}.flex{display:flex}.grid{display:grid}.inline-block{display:inline-block}.table{display:table}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.border{border-style:var(--tw-border-style);border-width:1px}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,ease);transition-duration:var(--tw-duration,0s)}*,:before,:after{box-sizing:border-box;margin:0;padding:0}:focus-visible{outline:2px solid var(--gold);outline-offset:2px}button:focus-visible,[role=button]:focus-visible{outline:2px solid var(--gold-light);outline-offset:2px;box-shadow:0 0 6px #c8a84866}.hand-card:focus-visible{z-index:100;outline:2px solid var(--gold-light);transform:translateY(-14px)scale(1.08)}:root{--bg:#060e0a;--bg2:#071210;--panel:#0e1c14;--border:#1e3828;--border-glow:#2a7848;--gold:#c8a848;--gold-light:#f0d080;--text:#d0e8d8;--text-dim:#5a7a60;--red:#c83030;--green:#30c860;--card-w:104px;--card-h:144px;--card-w-opp:68px;--card-h-opp:94px;--card-w-big:180px;--card-h-big:248px;--font-stats:-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif}html{font-size:16px}html,body{background:var(--bg);width:100%;height:100%;color:var(--text);-webkit-user-select:none;user-select:none;-webkit-font-smoothing:none;-moz-osx-font-smoothing:unset;image-rendering:pixelated;font-family:Pixelify Sans,monospace;overflow:hidden}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--bg)}::-webkit-scrollbar-thumb{background:var(--border-glow);border-radius:0}*{scrollbar-width:thin;scrollbar-color:var(--border-glow) var(--bg)}.title-bg{background:url(../title-bg.png) center center/cover no-repeat, var(--bg2);animation:6s ease-in-out infinite titlePulse;position:absolute;inset:0}.title-rune{color:var(--gold);text-shadow:2px 2px #000;font-size:3.75rem;animation:3s ease-in-out infinite runeGlow}button{cursor:pointer;border:none;font-family:inherit;transition:none}.btn-primary{color:var(--gold-light);letter-spacing:1px;background:#1a6040;border:2px solid #0a2c18;border-color:#30a060 #0a2c18 #0a2c18 #30a060;border-radius:0;padding:12px 28px;font-size:12px}.btn-primary:hover{box-shadow:none;background:#1e6848}.btn-secondary{color:var(--gold-light);background:#185838;border:2px solid #0a2c18;border-color:#2a9858 #0a2c18 #0a2c18 #2a9858;border-radius:0;padding:12px 28px;font-size:.9375rem}.btn-secondary:hover{border-color:var(--gold);color:var(--gold);box-shadow:none;background:#1c6440}.btn-cancel{color:#f88;background:#3c1414;border:2px solid #200808;border-color:#602020 #200808 #200808 #602020;border-radius:0;margin-top:10px;padding:8px 20px;font-size:.8125rem}.btn-cancel:hover{background:#501414}.btn-small{color:var(--text-dim);background:#0e1e14;border:2px solid #060e0a;border-color:#1a3828 #060e0a #060e0a #1a3828;border-radius:0;padding:5px 12px;font-size:.75rem}.btn-small:hover{color:var(--gold);border-color:var(--gold)}.btn-log{color:#50d890;border-color:#1a5a30}.btn-log:hover{color:#fff;background:#0e3c1e;border-color:#50d890}#game-screen{--card-h:calc((100vh - 40px) / 5);--card-w:calc(var(--card-h) * .715);--card-w-opp:var(--card-w);--card-h-opp:var(--card-h);grid-template-rows:calc(var(--card-h) * .25) 1fr calc(var(--card-h) * .75);grid-template-columns:1fr;width:100vw;height:100vh;display:grid;position:relative;overflow:hidden}#opp-hand-area{pointer-events:none;z-index:15;grid-row:1;justify-content:center;align-items:flex-end;padding-left:20%;display:flex;overflow:visible}#opp-hand{align-items:flex-end;gap:4px;margin-bottom:-30px;display:flex}.opp-hand-card{opacity:.85}#field{flex-direction:row;grid-row:2;width:100%;height:100%;display:flex;position:relative}#field-left{flex-shrink:0;width:15%;min-width:60px;position:relative}#btn-options{color:#a8d8b8;cursor:pointer;min-width:44px;height:44px;box-shadow:none;z-index:10;white-space:nowrap;background:#156040;border:2px solid #0e1e14;border-color:#2a7848 #0e1e14 #0e1e14 #2a7848;border-radius:0;justify-content:center;align-items:center;padding:0 8px;font-family:inherit;font-size:18px;transition:none;display:flex;position:absolute;top:8px;left:50%;transform:translate(-50%)}#btn-options:hover{box-shadow:none;background:#1a6848;border-color:#288050 #0a2418 #0a2418 #288050}.btn-options-mobile{display:none}.btn-options-desktop{letter-spacing:1px;font-size:.6875rem;font-weight:700;display:inline}@media (pointer:coarse),(width<=900px){.btn-options-mobile{display:inline}.btn-options-desktop{display:none}#btn-options{min-width:44px;padding:0;font-size:20px}}.options-btn-floating{color:#a8d8b8;cursor:pointer;min-width:44px;height:44px;box-shadow:none;z-index:200;white-space:nowrap;background:#156040;border:2px solid #0e1e14;border-color:#2a7848 #0e1e14 #0e1e14 #2a7848;border-radius:0;justify-content:center;align-items:center;padding:0 8px;font-family:inherit;font-size:18px;transition:none;display:flex;position:fixed;top:8px;left:8px}.options-btn-floating:hover{box-shadow:none;background:#1a6848;border-color:#288050 #0a2418 #0a2418 #288050}@media (pointer:coarse),(width<=900px){.options-btn-floating{min-width:44px;padding:0;font-size:20px}}#field-effect-slot{cursor:default;z-index:5;background:#0e1810;border:2px solid #288c5080;border-radius:0;flex-direction:column;justify-content:center;align-items:center;gap:2px;width:90%;max-width:200px;padding:4px;display:flex;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.field-effect-label{color:#64b478b3;text-align:center;letter-spacing:1px;text-transform:uppercase;font-size:11px;font-weight:700;line-height:1.4}.field-spell-empty{text-align:center;width:100%;padding:4px 0}.field-spell-active{cursor:pointer;text-align:center;background:#1dc0a01a;border:1px solid #1dc0a099;flex-direction:column;align-items:center;gap:2px;width:100%;padding:4px 6px;display:flex}.field-spell-active:hover{background:#1dc0a040}.field-spell-icon{color:#1dc0a0;font-size:14px}.field-spell-name{color:#b0e8d0;letter-spacing:.5px;text-transform:uppercase;word-break:break-word;font-size:9px;line-height:1.2}.field-spell-opp{background:#bc20601a;border-color:#bc206080}.field-spell-opp:hover{background:#bc206040}.field-spell-opp .field-spell-icon{color:#bc2060}.field-spell-opp .field-spell-name{color:#e8b0c0}#field-center{flex-direction:column;flex:1;justify-content:center;gap:2px;padding:4px 2px;display:flex;position:relative}.field-side{flex-direction:column;justify-content:center;gap:2px;display:flex}.zone-row{height:var(--card-h);justify-content:center;align-items:center;gap:3px;display:flex}.spell-trap-zone .zone-slot,.monster-zone .zone-slot{width:var(--card-w);height:var(--card-h);border:1px solid #28643c66;border-radius:0;flex-shrink:0;justify-content:center;align-items:center;transition:none;display:flex;position:relative}.monster-zone .zone-slot{border-color:#286e4166}.spell-trap-zone .zone-slot{border-color:#28784666}.zone-slot.empty .zone-label{color:#326e4666;font-size:9px}.zone-slot:not(.empty) .zone-label{display:none}.zone-slot.targetable{box-shadow:none;outline-offset:-2px;outline:2px solid #f44;animation:.7s ease-in-out infinite alternate targetPulse;border-color:#f44!important}#phase-display{text-align:center;pointer-events:none;flex-shrink:0;padding:1px 8px}#phase-name{color:var(--gold);letter-spacing:1px;font-size:10px;font-weight:700}.turn-info{color:var(--text-dim);font-size:9px}#btn-direct-attack{z-index:30;color:#fff;cursor:pointer;box-shadow:none;pointer-events:auto;white-space:nowrap;background:#6b0000;border:2px solid #f44;border-radius:0;padding:8px 22px;font-family:inherit;font-size:.8125rem;font-weight:700;animation:1s ease-in-out infinite directPulse;position:absolute;top:42%;left:50%;transform:translate(-50%)}#btn-direct-attack:hover{box-shadow:none;background:#9b0000}#action-hint{z-index:30;pointer-events:none;color:var(--gold);white-space:nowrap;text-align:center;text-shadow:1px 1px #000;font-size:11px;position:absolute;bottom:4px;left:50%;transform:translate(-50%)}#field-right{flex-shrink:0;width:22%;min-width:100px;position:relative}#field-right-center{z-index:5;flex-direction:row;justify-content:center;align-items:center;gap:10px;padding:0 8px 0 4px;display:flex;position:absolute;top:50%;left:0;right:0;transform:translateY(-50%)}.grave-icon{cursor:pointer;z-index:10;border-radius:0;flex-direction:column;justify-content:center;align-items:center;width:56px;height:56px;transition:none;display:flex;position:absolute}.opp-grave-icon{top:5%;left:50%;transform:translate(-50%)}.player-grave-icon{bottom:5%;left:50%;transform:translate(-50%)}.opp-grave-icon:hover{border-color:#dc5050cc}.player-grave-icon:hover{border-color:#28a050cc}.opp-grave-icon{box-shadow:none;background:#501414;border:2px solid #c83c3c}.player-grave-icon{box-shadow:none;background:#0e2e1a;border:2px solid #2a7040}.opp-grave-icon:hover{box-shadow:none;border-color:#dc5050cc}.player-grave-icon:hover{box-shadow:none;border-color:#28a050cc}.grave-icon-sym{font-size:22px;line-height:1}.grave-icon-count{color:#dcc8c8e6;margin-top:2px;font-size:10px;font-weight:700;line-height:1}#btn-next-phase{cursor:pointer;white-space:nowrap;letter-spacing:.5px;text-align:center;border-radius:0;flex-shrink:0;padding:10px 6px;font-family:inherit;font-size:.6875rem;font-weight:700;transition:none;animation:1.6s ease-in-out infinite nextPhasePulse}#btn-next-phase.phase-main{color:#fc8;box-shadow:none;background:#8c3c00;border:2px solid #ff8c28cc}#btn-next-phase.phase-battle{color:#faa;box-shadow:none;background:#780000;border:2px solid #ff3c3ce6}#btn-next-phase.phase-end,#btn-next-phase.phase-draw,#btn-next-phase.phase-standby{color:#daf;box-shadow:none;background:#3c0078;border:2px solid #b450ffcc}#btn-next-phase.waiting,#btn-next-phase:disabled{color:#50785a80;box-shadow:none;cursor:default;background:#14231980;border-color:#1e462d66;animation:none}#lp-panel{flex-direction:column;flex:1;gap:4px;min-width:0;padding-right:6px;display:flex}.lp-row{border-radius:0;flex-direction:column;gap:2px;padding:4px 6px;display:flex}.opp-lp-row{background:#501010;border:1px solid #962828}.player-lp-row{background:#0a1e12;border:1px solid #1e6040}.lp-who{letter-spacing:1.5px;color:var(--text-dim);text-transform:uppercase;margin-bottom:2px;font-size:9px;display:block}.lp-bottom{align-items:center;gap:4px;display:flex}.lp-bottom .io-bar-bg{flex:1}.lp-value{color:var(--gold-light);white-space:nowrap;font-size:.875rem;font-weight:700;line-height:1}.lp-deck{color:var(--gold-light);white-space:nowrap;opacity:.8;font-size:10px}.io-bar-bg{background:#101c12;border-radius:0;width:100%;height:6px;overflow:hidden}.opp-lp-bar{background:#a82020!important}.lp-bar{background:#1e6840;border-radius:0;width:100%;height:100%;transition:width .3s steps(8,end)}#hand-area{z-index:50;grid-row:3;justify-content:center;align-items:flex-start;padding:0 20% 0 4px;display:flex;position:relative;overflow:visible}#player-hand{flex-wrap:nowrap;justify-content:center;align-items:flex-start;gap:0;margin-top:-30px;display:flex}#battle-log{display:none}.log-header{color:var(--gold);border-bottom:1px solid var(--border);text-align:center;padding:6px 8px;font-size:.6875rem}#log-entries{flex:1;padding:4px;overflow-y:auto}.log-entry{color:var(--text-dim);border-bottom:1px solid #143c2366;padding:3px 4px;font-size:.6875rem;line-height:1.4;animation:.3s ease-in logFade}.log-entry:first-child{color:var(--text)}.card{width:var(--card-w);height:var(--card-h);z-index:1;border:2px solid #c8b46466;border-radius:0;flex-direction:column;flex-shrink:0;transition:none;display:flex;position:relative;overflow:hidden}.card>.card{border:none;flex-shrink:1;width:100%;height:100%}.normal-card{border-color:#dcdcdc99}.effect-card{border-color:#c87828cc}.fusion-card{box-shadow:none;border-color:#a050dce6;outline:2px solid #a050dc99}.spell-card{border-color:#28a078cc}.trap-card{border-color:#b42850cc}.equipment-card{border-color:#e08030cc}.normal-card:before{content:"";z-index:0;pointer-events:none;background:#dcdcdc59;border-radius:0;position:absolute;inset:0}.effect-card:before{content:"";z-index:0;pointer-events:none;background:#a0501473;border-radius:0;position:absolute;inset:0}.fusion-card:before{content:"";z-index:0;pointer-events:none;background:#7828c880;border-radius:0;position:absolute;inset:0}.spell-card:before{content:"";z-index:0;pointer-events:none;background:#148c5073;border-radius:0;position:absolute;inset:0}.trap-card:before{content:"";z-index:0;pointer-events:none;background:#b4143c73;border-radius:0;position:absolute;inset:0}.equipment-card:before{content:"";z-index:0;pointer-events:none;background:#e0803073;border-radius:0;position:absolute;inset:0}.attr-fire{background:#451005}.attr-water{background:#002040}.attr-earth{background:#201808}.attr-wind{background:#101828}.attr-light{background:#201c08}.attr-dark{background:#160830}.attr-spell{background:#002018}.face-down{background:#081610!important;border-color:#28784699!important}.card-back-pattern{width:100%;height:100%;image-rendering:pixelated;background:repeating-conic-gradient(#081610 0% 25%,#1e5a3226 0% 50%) 0 0/8px 8px;justify-content:center;align-items:center;display:flex}.back-label{color:#328c464d;letter-spacing:-2px;font-size:32px;font-weight:700}.facedown-overlay{color:#328246b3;text-align:center;background:#0000004d;justify-content:center;align-items:center;padding:4px;font-size:9px;display:flex;position:absolute;inset:0}.own-facedown{filter:brightness(.7)}.equip-badge{color:#fff;z-index:10;pointer-events:none;background:#e08030d9;border-radius:2px;padding:1px 2px;font-size:10px;line-height:1;position:absolute;top:1px;right:1px}.field-card{cursor:default;animation:.32s cubic-bezier(.34,1.56,.64,1) both fieldCardIn}.interactive{cursor:pointer}.interactive:hover{z-index:20;box-shadow:none;outline:2px solid #30c060;transform:translateY(-4px);border-color:#30c060!important}.viewable{cursor:pointer}.viewable:hover{z-index:20;box-shadow:none;outline:2px solid #6090d0;transform:translateY(-4px);border-color:#6090d0!important}.can-attack{cursor:pointer}.can-attack:hover{z-index:20;box-shadow:none;outline:2px solid #f84;transform:translateY(-4px);border-color:#f84!important}.selected{z-index:20;outline:2px solid #fd4;box-shadow:none!important;border-color:#fd4!important}.exhausted{opacity:.6;filter:grayscale(40%)}.pos-def{animation-name:fieldCardInDef;transform:rotate(90deg)}.pos-def:hover{transform:rotate(90deg)translateY(-4px)!important}.pos-def.selected{transform:rotate(90deg)}.hand-card{cursor:pointer;transition:none}.hand-card:hover{z-index:100;box-shadow:none;outline:2px solid var(--border-glow);transform:translateY(-14px)scale(1.08)}.hand-card.playable:hover{box-shadow:none;outline:2px solid #30c060}.hand-card.dimmed{opacity:.5;filter:grayscale(35%)}.hand-card.dimmed:hover{outline-color:var(--border-glow)}.hand-card.targetable{animation:.5s ease-in-out infinite alternate handGlow;border-color:#fd4!important}.hand-card.fusionable{box-shadow:none;outline:2px solid #be6eff;border-color:#be6effe6!important}.hand-card.fusionable:after{content:"✨";pointer-events:none;font-size:10px;line-height:1;position:absolute;bottom:2px;left:3px}.hand-card.chain-selected{outline:2px solid gold;box-shadow:0 0 8px #ffd70099;border-color:gold!important}.chain-badge{color:#000;pointer-events:none;z-index:10;background:gold;border-radius:50%;justify-content:center;align-items:center;width:16px;height:16px;font-family:"Press Start 2P",monospace;font-size:9px;font-weight:700;line-height:1;display:flex;position:absolute;top:2px;right:3px}.floating-fusion-bar{color:#eee;z-index:100;white-space:nowrap;pointer-events:auto;background:#000000d9;border:2px solid gold;border-radius:8px;justify-content:center;align-items:center;gap:8px;margin-bottom:4px;padding:6px 12px;font-family:Pixelify Sans,"Press Start 2P",monospace;font-size:10px;display:flex;position:absolute;bottom:100%;left:50%;transform:translate(-50%)}.fusion-preview-text{color:gold;font-weight:700}.fusion-execute-btn{color:#000;cursor:pointer;font-family:inherit;font-weight:700;font-size:inherit;background:gold;border:none;border-radius:4px;padding:4px 10px}.fusion-execute-btn:active{opacity:.8}.fusion-clear-btn{color:#aaa;cursor:pointer;font-family:inherit;font-size:inherit;background:0 0;border:1px solid #555;border-radius:4px;padding:4px 8px}.fusion-clear-btn:active{opacity:.7}@media (pointer:coarse),(width<=600px){.floating-fusion-bar{flex-wrap:wrap;gap:10px;padding:10px 12px;font-size:11px}.fusion-execute-btn,.fusion-clear-btn{touch-action:manipulation;min-width:80px;min-height:44px;padding:10px 16px;font-size:12px}}.big-card{width:var(--card-w-big);height:var(--card-h-big);border-radius:0;flex-shrink:0}#card-hover-preview{z-index:500;pointer-events:none;width:280px;box-shadow:none;opacity:0;background:#0e1e14;border:2px solid #0a2c18;border-color:#2a7848 #0a2c18 #0a2c18 #2a7848;border-radius:0;padding:14px;transition:none;position:fixed;transform:translateY(4px)}#card-hover-preview.visible{opacity:1;transform:translateY(0)}#hover-card-render{width:100%;aspect-ratio:var(--card-w) / var(--card-h);border-radius:6px;margin-bottom:8px;overflow:hidden}#hover-card-render .card{min-width:unset;cursor:default;font-size:11px;width:100%!important;height:100%!important}.hover-info{font-size:.8125rem}#hover-card-name{color:var(--gold-light);white-space:nowrap;text-overflow:ellipsis;margin-bottom:4px;font-size:.9375rem;font-weight:700;overflow:hidden}#hover-card-meta{color:var(--text-dim);margin-bottom:6px;font-size:.75rem}#hover-card-desc{color:var(--text);opacity:.9;max-height:110px;margin-bottom:6px;font-size:.8125rem;line-height:1.5;overflow:hidden}#hover-card-stats{color:#8da;letter-spacing:.03em;font-size:.8125rem;font-weight:700}#modal-overlay{z-index:200;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#00000abf;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal{border:1px solid var(--border-glow);background:linear-gradient(160deg,#0e1e14 0%,#071210 100%);border-radius:10px;max-width:90vw;padding:20px;animation:.2s ease-out modalIn;box-shadow:0 20px 60px #000c,0 0 30px #14643233}.modal h2,.modal h3{color:var(--gold-light);text-align:center;margin-bottom:14px}#card-action-menu{max-width:280px}#action-buttons{flex-direction:column;gap:8px;margin-bottom:10px;display:flex}.menu-action-btn{color:var(--text);border:1px solid var(--border);text-align:left;background:#0a2d19e6;border-radius:6px;padding:9px 16px;font-family:inherit;font-size:.8125rem;transition:all .15s}.menu-action-btn:hover{border-color:var(--gold);color:var(--gold);background:#144628e6;transform:translate(4px)}#card-detail-modal{max-width:420px}.detail-layout{gap:16px;margin-bottom:12px;display:flex}.detail-info{flex:1}.detail-info h2{color:var(--gold-light);text-align:left;margin-bottom:6px;font-size:1.125rem}.detail-type{color:var(--text-dim);margin-bottom:8px;font-size:.75rem}.detail-desc{color:var(--text);margin-bottom:8px;font-size:.75rem;line-height:1.5}.detail-stats{color:var(--gold);font-size:.875rem;font-weight:700;font-family:var(--font-stats)}.kw-effect{color:#f95;font-weight:700}.kw-passive{color:#5af;font-weight:700}.kw-fusion{color:#c8f;font-weight:700}.kw-atk{color:#f95;font-weight:700}.kw-def{color:#5af;font-weight:700}.kw-number{color:var(--gold-light);font-weight:700}.kw-term{color:var(--gold)}.kw-race,.kw-attr{font-weight:700}#trap-prompt-modal{text-align:center;max-width:380px}#trap-prompt-card{justify-content:center;margin:10px 0;display:flex}#trap-prompt-msg{color:var(--text);margin:8px 0;font-size:.75rem}.prompt-buttons{justify-content:center;gap:10px;margin-top:12px;display:flex}.trap-battle-cards{justify-content:center;align-items:center;gap:8px;margin:8px 0;display:flex}.trap-battle-card{flex:none}.trap-battle-vs{color:var(--gold);text-shadow:0 0 6px #ffc83299;font-size:1.5rem}.trap-battle-context{text-align:center;color:#fcc;background:#280a0ad9;border:1px solid #ff505080;border-radius:4px;margin:8px 0 4px;padding:8px 12px;font-family:Pixelify Sans,monospace;font-size:.75rem;line-height:1.5}#grave-select-modal{max-width:500px}.card-select-list{flex-wrap:wrap;justify-content:center;gap:8px;max-height:300px;padding:8px;display:flex;overflow-y:auto}#cardlist-modal{max-width:95vw;max-height:90vh;overflow-y:auto}#cardlist-content{margin-bottom:10px}.cardlist-group-title{color:var(--gold);border-bottom:1px solid var(--border);margin-bottom:8px;padding:8px 4px 4px;font-size:.875rem}.cardlist-row{flex-wrap:wrap;gap:8px;padding:8px 0;display:flex}.fusion-recipes{padding:8px}.recipe-line{color:var(--text-dim);border-bottom:1px solid #143c2366;padding:3px 0;font-size:.75rem}.recipe-line:before{content:"✨ ";color:#a6f}#result-modal{text-align:center;min-width:300px;padding:40px}.result-content h1{margin-bottom:16px;font-size:clamp(1.75rem,5vw,2.5rem)}.result-content p{color:var(--text);margin-bottom:24px;line-height:1.5}.result-buttons{justify-content:center;gap:12px;display:flex}.hidden{display:none!important}#card-activate-overlay{z-index:350;pointer-events:none;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}#card-activate-bg{background:0 0;transition:background .3s;position:absolute;inset:0}#card-activate-overlay.ca-visible #card-activate-bg{background:#00000ab8}#card-activate-content{opacity:0;flex-direction:column;align-items:center;gap:16px;transition:transform .38s cubic-bezier(.34,1.56,.64,1),opacity .3s;display:flex;position:relative;transform:translateY(50px)scale(.75)}#card-activate-overlay.ca-visible #card-activate-content{opacity:1;transform:translateY(0)scale(1)}#card-activate-overlay.ca-dissolve #card-activate-content{opacity:0;transition:transform .55s ease-in,opacity .5s ease-in;transform:translateY(-30px)scale(1.18)}#card-activate-render .card{cursor:default;pointer-events:none;width:var(--card-w-big)!important;height:var(--card-h-big)!important}#card-activate-render .spell-card{box-shadow:0 0 40px #28c896bf,0 0 80px #28c8964d}#card-activate-render .trap-card{box-shadow:0 0 40px #dc3c64bf,0 0 80px #dc3c644d}#card-activate-render .equipment-card{box-shadow:0 0 40px #e08030bf,0 0 80px #e080304d}#card-activate-render .effect-card,#card-activate-render .normal-card{box-shadow:0 0 40px #ffb432b3,0 0 80px #ffb4324d}#card-activate-render .fusion-card{box-shadow:0 0 40px #b450ffcc,0 0 80px #b450ff66}#card-activate-effect-box{border:1px solid var(--border-glow);text-align:center;background:#080c1cf0;border-radius:8px;max-width:340px;padding:12px 20px}#card-activate-label{letter-spacing:2.5px;text-transform:uppercase;color:var(--gold);margin-bottom:7px;font-size:.625rem;font-weight:700}#card-activate-effect-text{color:var(--text);font-size:.8125rem;line-height:1.55}.atk-burst{z-index:450;pointer-events:none;background:radial-gradient(circle,#fff 0%,#ffe066 28%,#f80 58%,#ff500000 80%);border-radius:50%;width:110px;height:110px;animation:.38s ease-out forwards atkBurst;position:fixed}.atk-burst.direct{background:radial-gradient(circle,#fff 0%,#adf 25%,#38f 55%,#1e50ff00 80%);width:140px;height:140px}.atk-hit{animation:.42s ease-out atkHit}.zone-slot.atk-impact{animation:.42s ease-out atkSlotGlow}.hand-card.newly-drawn{animation:.38s cubic-bezier(.22,1,.36,1) both cardDraw}.fusion-burst{z-index:450;pointer-events:none;background:radial-gradient(circle,#fff 0%,#ffe880 20%,#fc0 45%,#f80 65%,#ff780000 85%);border-radius:50%;width:160px;height:160px;animation:.55s ease-out forwards fusionBurst;position:fixed;box-shadow:0 0 40px #ffc83ccc,0 0 80px #ff960066}.fusion-spark{z-index:451;pointer-events:none;background:radial-gradient(circle,#fff 0%,#ffe060 50%,#f80 100%);border-radius:50%;width:8px;height:8px;animation:.5s ease-out forwards fusionSpark;position:fixed;box-shadow:0 0 6px #ffdc3ce6}.fusion-result-pop{animation:.45s cubic-bezier(.22,1,.36,1) both fusionResultPop!important}@media (pointer:coarse){.hand-card:hover,.hand-card.playable:hover{box-shadow:none;z-index:auto;transform:none}.interactive:hover,.can-attack:hover{box-shadow:none;transform:none;border-color:inherit!important}.pos-def:hover{transform:rotate(90deg)!important}.hand-card:active{z-index:50;transform:translateY(-8px)scale(1.04)}.interactive:active,.can-attack:active{transform:translateY(-3px)}.menu-action-btn:active{border-color:var(--gold);background:#283c78e6}.menu-action-btn{min-height:48px}.card,button,.zone-slot{touch-action:manipulation;-webkit-tap-highlight-color:transparent}#card-hover-preview{display:none!important}}@media (width<=480px){.zone-row{gap:2px}#field-left{width:13%;min-width:50px}#field-right{width:20%;min-width:80px}#btn-next-phase{padding:8px 4px;font-size:.625rem}.lp-value{font-size:.8125rem}#player-hand .hand-card{margin-right:-12px}#player-hand .hand-card:last-child{margin-right:0}}#options-modal{min-width:320px;max-width:420px}#options-modal h2{margin-bottom:20px}.options-row{flex-direction:column;gap:6px;margin-bottom:16px;display:flex}.options-row label{color:var(--text);justify-content:space-between;font-size:.8125rem;display:flex}.options-row label span{color:var(--gold);font-weight:700}.options-row select{color:var(--text);border:1px solid var(--border);cursor:pointer;background:#142350e6;border-radius:6px;padding:7px 10px;font-family:inherit;font-size:.8125rem}.options-row select:focus{border-color:var(--border-glow);outline:none}.options-row input[type=range]{width:100%;accent-color:var(--gold);cursor:pointer;height:4px}.options-buttons{border-top:1px solid var(--border);justify-content:flex-end;gap:10px;margin-top:20px;padding-top:16px;display:flex}.options-buttons .btn-cancel{margin-top:0}.options-log{border-top:1px solid var(--border);margin-top:16px;padding-top:16px}.options-log .btn-secondary{width:100%}#battle-log-modal{min-width:320px;max-width:460px}#battle-log-modal h2{margin-bottom:14px}.battle-log-entries{border:1px solid var(--border);background:#0000004d;border-radius:4px;max-height:50vh;padding:4px;overflow-y:auto}.battle-log-entries .log-empty{text-align:center;color:var(--text-dim);padding:16px}.options-surrender{border-top:1px solid #b4282866;margin-top:16px;padding-top:16px}.btn-surrender{color:#faa;cursor:pointer;letter-spacing:1px;background:#4a0a0a;border:2px solid #c83232b3;border-radius:0;width:100%;padding:10px 16px;font-family:inherit;font-size:.8125rem;font-weight:700;transition:none}.btn-surrender:hover{background:#6a1010;border-color:#e05050}.btn-surrender:active{background:#8a1a1a}.surrender-confirm p{color:#faa;margin-bottom:12px;font-size:.75rem;line-height:1.5}.surrender-confirm-btns{gap:8px;display:flex}.surrender-confirm-btns .btn-cancel{flex:1}.surrender-confirm-btns .btn-surrender{flex:2}#portrait-bar,.floating-phase-btn{display:none}@media (width<=540px){#game-screen{--card-w:calc((100vw - 46px) / 5);--card-h:calc(var(--card-w) / .715);--card-w-opp:var(--card-w);--card-h-opp:var(--card-h);height:calc(100vh - env(safe-area-inset-bottom,0px));height:calc(100dvh - env(safe-area-inset-bottom,0px));grid-template-rows:48px calc(var(--card-h-opp) * .25) 1fr var(--card-h)}#opp-hand-area{grid-row:2}#field{grid-row:3}#hand-area{grid-row:4}#portrait-bar{z-index:30;background:#020804f7;border-bottom:1px solid #1e502d80;grid-row:1;align-items:center;gap:8px;padding:0 8px;display:flex}.portrait-opts-btn{color:#a0e0b0;cursor:pointer;background:#143c1ecc;border:1px solid #3ca05066;border-radius:4px;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;padding:0;font-size:18px;display:flex}.portrait-hud{flex:1;justify-content:space-between;align-items:center;gap:4px;display:flex;overflow:hidden}.phud-lp{white-space:nowrap;font-family:"Press Start 2P",monospace;font-size:9px}.phud-opp{color:#ff8080}.phud-player{color:#80ff80}.phud-phase{color:#d0c090;text-align:center;text-overflow:ellipsis;white-space:nowrap;flex:1;font-family:"Press Start 2P",monospace;font-size:6px;overflow:hidden}.portrait-phase-btn{cursor:pointer;border:1px solid #3ca05066;border-radius:4px;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;padding:0;font-size:16px;display:flex}.portrait-phase-btn.phase-main{color:#fc0;background:#502800e6;border-color:#fc0}.portrait-phase-btn.phase-battle{color:#ff6060;background:#640000e6;border-color:#ff4040}.portrait-phase-btn.phase-end,.portrait-phase-btn.phase-draw,.portrait-phase-btn.phase-standby{color:#a0e0b0;background:#143c1ecc}.portrait-phase-btn.waiting,.portrait-phase-btn:disabled{color:#607060;opacity:.6;cursor:default;background:#141e19cc}#field-left{display:none}#field-right{background:0 0;border-left:none;flex-direction:column;justify-content:space-between;align-items:center;width:30px;min-width:30px;padding:0}#field-right-center{display:none}.grave-icon{width:26px;height:26px}.grave-icon-sym{font-size:13px}.grave-icon-count{font-size:8px}#field-center{box-sizing:border-box;flex:1;width:100%;padding:4px 2px}.zone-row{gap:2px}#hand-area{padding-left:0;padding-right:30px}#player-hand{margin-top:-8px}#opp-hand-area{padding-left:0}#player-hand .hand-card{margin-right:-14px}#player-hand .hand-card:last-child{margin-right:0}#opp-hand{gap:0}#opp-hand .opp-hand-card{margin-right:-10px}#opp-hand .opp-hand-card:last-child{margin-right:0}.floating-phase-btn{z-index:90;letter-spacing:.5px;cursor:pointer;border-radius:8px;justify-content:center;align-items:center;min-width:80px;height:48px;padding:0 14px;font-family:"Press Start 2P",monospace;font-size:.6rem;animation:1.6s ease-in-out infinite nextPhasePulse;display:flex;position:fixed;top:50%;right:12px;transform:translateY(-50%);box-shadow:0 2px 10px #0009}.floating-phase-btn.phase-main{color:#fc0;background:#502800f2;border:2px solid #fc0}.floating-phase-btn.phase-battle{color:#ff6060;background:#640000f2;border:2px solid #ff4040}.floating-phase-btn.phase-end,.floating-phase-btn.phase-draw,.floating-phase-btn.phase-standby{color:#a0e0b0;background:#143c1ef2;border:2px solid #3ca05099}.floating-phase-btn.waiting,.floating-phase-btn:disabled{color:#607060;opacity:.5;cursor:default;background:#141e19d9;border:2px solid #405040;animation:none}.portrait-phase-btn{opacity:.4}}@media (height<=450px){#game-screen{--card-h:calc((100vh - 40px) / 5);--card-w:calc(var(--card-h) * .715);--card-w-opp:var(--card-w);--card-h-opp:var(--card-h);grid-template-rows:calc(var(--card-h) * .25) 1fr calc(var(--card-h) * .75)}#portrait-bar{display:none}#opp-hand-area{grid-row:1}#field{grid-row:2}#hand-area{grid-row:3}#field-left{width:44px;min-width:44px;padding:0;display:flex}#field-right{background:#040c06e0;border-left:1px solid #1e502d66;width:72px;min-width:72px;padding:0}#field-right-center{flex-direction:column;align-items:stretch;gap:4px;padding:0 4px;display:flex}#btn-options{width:36px;height:36px;font-size:15px}#btn-next-phase{white-space:normal;padding:5px 2px;font-size:.5625rem;line-height:1.2}.grave-icon{width:34px;height:34px}.grave-icon-sym{font-size:13px}.grave-icon-count{font-size:8px}#lp-panel{flex:none;gap:2px;width:100%;padding-right:0}.lp-row{gap:1px;padding:2px 3px}.lp-who{margin-bottom:0;font-size:7px}.lp-bottom .io-bar-bg{display:none}.lp-value{font-size:.625rem}.lp-deck{font-size:7px}#hand-area{padding-right:72px}#opp-hand-area{padding-left:44px}.zone-row{gap:2px}#player-hand .hand-card{margin-right:-14px}#player-hand .hand-card:last-child{margin-right:0}}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}.vfx-particle{pointer-events:none;will-change:transform, opacity;position:fixed}.vfx-buff{width:10px;height:10px;left:var(--vfx-cx);top:var(--vfx-cy);background:radial-gradient(circle,#b4dcffe6 0%,#64b4ff66 60%,#0000 100%);border-radius:50%;animation:.9s ease-out forwards vfxBuffSwirl;box-shadow:0 0 6px #82c8ffb3}.vfx-heal{width:14px;height:14px;left:var(--vfx-cx);top:var(--vfx-cy);clip-path:polygon(50% 0%,61% 35%,98% 35%,68% 57%,79% 91%,50% 70%,21% 91%,32% 57%,2% 35%,39% 35%);background:linear-gradient(135deg,#50ff80 0%,#80ffa0 50%,#a0ffd0 100%);animation:1s ease-out forwards vfxHealStar;box-shadow:0 0 8px #50ff7899}.vfx-heal:nth-child(odd){--vfx-spread:-18px}.vfx-heal:nth-child(2n){--vfx-spread:14px}.vfx-heal:nth-child(3n){--vfx-spread:-8px}.vfx-heal:nth-child(3n+1){--vfx-spread:22px}.vfx-heal:nth-child(3n+2){--vfx-spread:-24px}.vfx-damage{width:16px;height:16px;left:var(--vfx-cx);top:var(--vfx-cy);background:radial-gradient(circle at 35% 35%,#fff8 0%,#ffe050 20%,#f80 50%,#f30 75%,#c8000000 100%);border-radius:50%;animation:.8s ease-in forwards vfxFireball;box-shadow:0 0 10px #ff6400cc,0 0 20px #ff320066}.vfx-damage:first-child{--vfx-fire-ox:70px;--vfx-fire-oy:-50px}.vfx-damage:nth-child(2){--vfx-fire-ox:-60px;--vfx-fire-oy:-70px}.vfx-damage:nth-child(3){--vfx-fire-ox:80px;--vfx-fire-oy:40px}.vfx-damage:nth-child(4){--vfx-fire-ox:-70px;--vfx-fire-oy:60px}.vfx-damage:nth-child(5){--vfx-fire-ox:40px;--vfx-fire-oy:-80px}.vfx-damage:nth-child(6){--vfx-fire-ox:-50px;--vfx-fire-oy:30px}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.result-coins{color:#f0d080;text-shadow:1px 1px #000;box-shadow:none;font-size:1.3rem;font-weight:700;font-family:var(--font-stats);border-radius:0;margin:10px 0}.result-coins:before{content:"◈ ";font-size:1.1rem}#btn-choose-opponent{color:#608070;box-shadow:none;background:#000;border-color:#2a7040;border-radius:0}#btn-choose-opponent:hover{color:#90c0a0;background:#0e2a1a}
