.lobby{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1.6rem;padding:2.5rem 1.5rem}.lobby-logo{width:172px;height:172px;object-fit:contain;filter:drop-shadow(0 0 20px rgba(124,58,237,.45)) drop-shadow(0 0 40px rgba(201,168,76,.18));animation:logo-breathe 4s ease-in-out infinite alternate}@keyframes logo-breathe{0%{filter:drop-shadow(0 0 14px rgba(124,58,237,.3)) drop-shadow(0 0 28px rgba(201,168,76,.12))}to{filter:drop-shadow(0 0 28px rgba(124,58,237,.6)) drop-shadow(0 0 52px rgba(201,168,76,.28))}}.lobby-header{display:flex;flex-direction:column;align-items:center;gap:.4rem;text-align:center}.lobby-subtitle{font-family:Palatino Linotype,Georgia,serif;font-style:italic;color:#f4ead566;font-size:.88rem;letter-spacing:.06em}.connection-badge{display:inline-block;padding:.2rem .65rem;border-radius:999px;font-size:.72rem;font-family:Palatino Linotype,Georgia,serif;letter-spacing:.04em}.connection-badge.online{background:#22c55e1f;color:#4ade80;border:1px solid rgba(74,222,128,.35)}.connection-badge.offline{background:#ef44441f;color:#f87171;border:1px solid rgba(248,113,113,.35)}.connection-badge.clickable-badge{cursor:pointer;transition:background .18s,box-shadow .18s}.connection-badge.clickable-badge:hover{background:#22c55e38;box-shadow:0 0 10px #4ade8040}.lobby-ornament{width:100%;max-width:460px;height:1px;background:linear-gradient(90deg,transparent 0%,rgba(201,168,76,.45) 30%,rgba(201,168,76,.45) 70%,transparent 100%);position:relative}.lobby-ornament:before{content:"✦";position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);color:#c9a84c;font-size:.62rem;background:#08060f;padding:0 6px;opacity:.65}.lobby-form-col{width:100%;max-width:460px;display:flex;flex-direction:column;gap:1.4rem}.lobby-card{background:#120a20cc;border:1px solid rgba(201,168,76,.22);border-radius:12px;padding:1.75rem;display:flex;flex-direction:column;gap:1.4rem;box-shadow:0 0 0 1px #7c3aed14 inset,0 8px 40px #0009,0 0 24px #7c3aed0f}.form-group{display:flex;flex-direction:column;gap:.45rem}.form-group label{font-family:Palatino Linotype,Georgia,serif;color:#c9a84cbf;font-size:.72rem;letter-spacing:.13em;text-transform:uppercase}.form-group input{background:#ffffff0a;border:1px solid rgba(201,168,76,.25);border-radius:6px;color:#f4ead5;font-family:Palatino Linotype,Georgia,serif;font-size:1rem;padding:.6rem .9rem;transition:border-color .2s,box-shadow .2s}.form-group input:focus{outline:none;border-color:#c9a84c99;box-shadow:0 0 0 3px #7c3aed1f}.form-group input::placeholder{color:#f4ead547}.deck-picker{display:flex;flex-direction:row;gap:1.25rem;justify-content:center}.deck-card-btn{flex:1;max-width:175px;background:transparent;border:none;padding:0;cursor:pointer;display:flex;flex-direction:column;align-items:center;gap:.55rem;font-family:Palatino Linotype,Georgia,serif;transition:transform .18s}.deck-card-btn:hover{transform:translateY(-3px)}.deck-card-frame{width:100%;aspect-ratio:5 / 7;border-radius:10px;overflow:hidden;border:2px solid rgba(255,255,255,.1);box-shadow:0 8px 28px #000000b3;transition:border-color .2s,box-shadow .2s;position:relative}.deck-card-btn:hover .deck-card-frame{border-color:color-mix(in srgb,var(--deck-color) 60%,transparent);box-shadow:0 8px 28px #000000b3,0 0 18px color-mix(in srgb,var(--deck-color) 30%,transparent)}.deck-card-btn.selected .deck-card-frame{border-color:var(--deck-color);box-shadow:0 8px 28px #000000b3,0 0 28px color-mix(in srgb,var(--deck-color) 50%,transparent),0 0 6px color-mix(in srgb,var(--deck-color) 80%,transparent)}.deck-card-btn.selected .deck-card-frame:after{content:"✦";position:absolute;top:6px;right:8px;color:var(--deck-color);font-size:.8rem;text-shadow:0 0 8px var(--deck-color)}.deck-card-img{display:block;width:100%;height:100%;object-fit:cover}.deck-card-btn:not(.selected) .deck-card-img{filter:brightness(.72) saturate(.8);transition:filter .2s}.deck-card-btn:hover .deck-card-img,.deck-card-btn.selected .deck-card-img{filter:brightness(1) saturate(1)}.deck-name{font-weight:700;font-size:.88rem;color:#f4ead58c;text-align:center;line-height:1.2;transition:color .2s}.deck-card-btn.selected .deck-name{color:var(--deck-color);text-shadow:0 0 12px color-mix(in srgb,var(--deck-color) 40%,transparent)}.deck-subtitle{font-size:.7rem;color:#f4ead54d;font-style:italic;text-align:center;line-height:1.3}.lobby-actions{display:flex;flex-direction:column;gap:.75rem}.tab-bar{display:flex;border-radius:6px;overflow:hidden;border:1px solid rgba(201,168,76,.22)}.tab-bar button{flex:1;background:transparent;border:none;color:#f4ead566;padding:.48rem .5rem;font-family:Palatino Linotype,Georgia,serif;font-size:.82rem;letter-spacing:.03em;transition:background .2s,color .2s}.tab-bar button+button{border-left:1px solid rgba(201,168,76,.18)}.tab-bar button.active{background:#7c3aed26;color:#c9a84c}.solo-info{display:flex;flex-direction:column;gap:.65rem}.solo-desc{font-size:.82rem;color:#f4ead561;font-style:italic;font-family:Palatino Linotype,Georgia,serif;line-height:1.5}.btn-primary{background:linear-gradient(135deg,#c9a84c,#a07830);border:none;border-radius:7px;color:#12071e;font-family:Palatino Linotype,Georgia,serif;font-size:.95rem;font-weight:700;letter-spacing:.07em;padding:.72rem 1.5rem;width:100%;transition:opacity .2s,transform .1s}.btn-primary:hover:not(:disabled){opacity:.88;transform:translateY(-1px)}.btn-primary:active:not(:disabled){transform:translateY(0)}.join-form{display:flex;gap:.5rem}.join-form input{flex:1;background:#ffffff0a;border:1px solid rgba(201,168,76,.25);border-radius:6px;color:#f4ead5;font-family:Palatino Linotype,Georgia,serif;font-size:1.2rem;letter-spacing:.25em;padding:.6rem .9rem;text-transform:uppercase}.join-form input:focus{outline:none;border-color:#c9a84c99}.join-form button{width:auto;padding:.72rem 1.5rem;white-space:nowrap}@media (max-width: 600px){.lobby-logo{width:130px;height:130px}.lobby{padding:2rem 1rem}}.waiting-room{min-height:100vh;display:flex;align-items:center;justify-content:center}.waiting-card{background:#2c1810e6;border:1px solid var(--gold);border-radius:12px;padding:2.5rem;text-align:center;display:flex;flex-direction:column;gap:1.25rem;align-items:center;box-shadow:0 0 40px #c9a84c1a}.waiting-card h2{font-size:1.8rem}.waiting-card p{color:var(--parchment-dark)}.room-code-display{display:flex;align-items:center;gap:1rem;background:#0000004d;border:1px solid rgba(201,168,76,.5);border-radius:var(--border-radius);padding:.75rem 1.25rem}.code{font-family:monospace;font-size:2.5rem;letter-spacing:.3em;color:var(--gold-light)}.copy-btn{background:#c9a84c33;border:1px solid var(--gold);border-radius:4px;color:var(--gold);padding:.3rem .7rem;font-family:monospace;font-size:.85rem;transition:background .2s}.copy-btn:hover{background:#c9a84c59}.waiting-spinner{display:flex;gap:.5rem}.spinner-dot{width:10px;height:10px;border-radius:50%;background:var(--gold);animation:pulse 1.2s ease-in-out infinite}.spinner-dot:nth-child(2){animation-delay:.2s}.spinner-dot:nth-child(3){animation-delay:.4s}@keyframes pulse{0%,80%,to{opacity:.2;transform:scale(.8)}40%{opacity:1;transform:scale(1)}}.waiting-text{font-style:italic;color:var(--parchment-dark)}@keyframes cardEnter{0%{opacity:0;transform:translateY(28px) scale(.87)}to{opacity:1;transform:translateY(0) scale(1)}}.card{width:var(--card-width);height:var(--card-height);background:linear-gradient(160deg,#2c1f0e,#1a1208);border:2px solid var(--energy-color, var(--gold));border-radius:10px;display:flex;flex-direction:column;overflow:hidden;position:relative;-webkit-user-select:none;user-select:none;transition:box-shadow .15s;flex-shrink:0}.card-small{width:var(--card-small-width);height:var(--card-small-height)}.card-clickable{cursor:pointer;transition:transform .15s,box-shadow .15s}.card-clickable:hover:not(.card-selected):not(.card-lift):not(.card-deal):not(.card-played){transform:translateY(-4px);box-shadow:0 10px 24px #00000080,0 0 14px color-mix(in srgb,var(--energy-color, var(--gold)) 40%,transparent)}.card-selected{box-shadow:0 14px 28px #0009,0 0 22px color-mix(in srgb,var(--energy-color, var(--gold)) 60%,transparent);border-color:var(--gold-light)}.card-back{background:linear-gradient(135deg,#1a1208,#2c1f0e,#1a1208);border-color:var(--gold);align-items:center;justify-content:center}.card-back-pattern{font-size:2.5rem;opacity:.3}.card-header{display:flex;justify-content:space-between;align-items:flex-start;padding:5px 7px 3px;background:color-mix(in srgb,var(--energy-color, var(--gold)) 20%,transparent);border-bottom:1px solid color-mix(in srgb,var(--energy-color, var(--gold)) 40%,transparent);gap:3px;flex-shrink:0}.card-name{font-size:.82rem;font-weight:700;color:var(--parchment);line-height:1.2;flex:1}.card-hp{font-size:.82rem;font-weight:700;color:var(--gold-light);white-space:nowrap}.card-small .card-name,.card-small .card-hp{font-size:.7rem}.card-art{height:90px;display:flex;align-items:center;justify-content:center;font-size:3.5rem;background:#0003;position:relative;flex-shrink:0}.card-small .card-art{height:60px;font-size:2.5rem}.champion-badge{position:absolute;top:3px;right:5px;font-size:.9rem;color:var(--gold)}.card-img-full{padding:0}.card-full-img{position:absolute;top:0;left:0;width:100%;height:100%;object-fit:cover;object-position:center 20%;display:block}.cf-header{position:absolute;top:0;left:0;right:0;background:linear-gradient(to bottom,rgba(4,3,1,.92) 0%,rgba(4,3,1,.78) 55%,transparent 100%);padding:7px 9px 20px;display:flex;flex-direction:column;gap:1px}.cf-name-row{display:flex;align-items:baseline;gap:4px}.cf-name{font-weight:700;color:#f4ead5;font-size:.86rem;line-height:1.2;flex:1;text-shadow:0 1px 6px rgba(0,0,0,1);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cf-champ{color:#fde68a;font-size:.95rem;text-shadow:0 0 8px rgba(253,230,138,.7),0 1px 4px rgba(0,0,0,.9);flex-shrink:0}.cf-meta-row{display:flex;align-items:center;justify-content:space-between;gap:4px}.cf-hp{font-weight:700;color:#fde68a;font-size:.75rem;white-space:nowrap;text-shadow:0 1px 6px rgba(0,0,0,1);flex-shrink:0}.cf-badge{color:#93c5fd;font-size:.6rem;text-transform:uppercase;letter-spacing:.04em;opacity:.9;text-shadow:0 1px 4px rgba(0,0,0,.9);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cf-footer{position:absolute;bottom:0;left:0;right:0;background:linear-gradient(to top,rgba(4,3,1,.94) 0%,rgba(4,3,1,.82) 45%,rgba(4,3,1,.55) 70%,transparent 100%);padding:22px 9px 7px;display:flex;flex-direction:column;gap:2px}.cf-spell{display:flex;align-items:flex-start;gap:4px;font-size:.76rem}.cf-cost{flex-shrink:0;display:flex;align-items:center;gap:1px;padding-top:1px}.cf-spell-body{flex:1;display:flex;flex-direction:column;gap:1px;min-width:0}.cf-spell-row{display:flex;align-items:center;gap:4px;white-space:nowrap}.cf-seffect{color:#f4ead58c;font-style:italic;font-size:.62rem;line-height:1.25;white-space:normal}.cf-sname{flex:1;color:#f4ead5e6;overflow:hidden;text-overflow:ellipsis}.cf-sdmg{font-weight:700;font-size:.73rem;color:#fca5a5;flex-shrink:0;background:#ef444433;border-radius:3px;padding:0 3px}.cf-divider{border:none;border-top:1px solid rgba(255,255,255,.1);margin:1px 0}.cf-retreat{display:flex;align-items:center;gap:3px;font-size:.63rem;color:#f4ead58c}.cf-retreat-pips{display:flex;gap:1px;align-items:center}.cf-effect{color:#f4ead5d9;font-size:.72rem;line-height:1.35;overflow:hidden;display:-webkit-box;-webkit-line-clamp:5;-webkit-box-orient:vertical}.cf-evolves{color:#f4ead580;font-style:italic;font-size:.58rem;line-height:1.2}.cs-evolves{color:#f4ead580;font-style:italic;font-size:.58rem;line-height:1.1;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.de-card.card-img-full,.de-card.card-small{border-color:#7c3aed}.de-card .cf-badge{color:#c4b5fd!important}.de-card .cs-stage{color:#c4b5fdb3}.cl-card.card-img-full,.cl-card.card-small{border-color:#6b7280}.cl-card .cf-badge{color:#d1d5db!important}.cl-card .cs-stage{color:#d1d5dbb3}.spell-card.card-img-full,.spell-card.card-small{border-color:#c9a84c}.spell-card .cf-badge{color:#fde68a!important}.spell-card .cs-stage{color:#fde68ab3}@media (max-width: 1100px){.cf-header{padding:6px 7px 16px}.cf-name{font-size:.76rem}.cf-champ{font-size:.86rem}.cf-hp{font-size:.68rem}.cf-badge{font-size:.54rem}.cf-footer{padding:16px 7px 6px}.cf-spell{font-size:.66rem}.cf-sdmg{font-size:.63rem}.cf-retreat{font-size:.56rem}.cf-evolves{font-size:.52rem}.cf-seffect{font-size:.54rem}.cf-effect{font-size:.63rem;-webkit-line-clamp:4}}@media (max-width: 820px){.cf-header{padding:5px 6px 12px}.cf-name{font-size:.66rem}.cf-champ{font-size:.76rem}.cf-hp{font-size:.6rem}.cf-badge{font-size:.48rem}.cf-footer{padding:13px 6px 5px}.cf-spell{font-size:.58rem}.cf-sdmg{font-size:.56rem}.cf-retreat{font-size:.5rem}.cf-evolves{font-size:.46rem}.cf-seffect{font-size:.48rem}.cf-effect{font-size:.55rem;-webkit-line-clamp:4}}@media (max-width: 640px){.cf-header{padding:4px 5px 8px}.cf-name{font-size:.54rem}.cf-champ{font-size:.62rem}.cf-hp{font-size:.5rem}.cf-badge{font-size:.4rem}.cf-footer{padding:9px 5px 4px}.cf-spell{font-size:.46rem}.cf-sdmg{font-size:.44rem;padding:0 2px}.cf-retreat{display:none}.cf-evolves{font-size:.38rem}.cf-seffect,.cf-spell-2,.cf-divider{display:none}.cf-effect{font-size:.46rem;-webkit-line-clamp:3}}.small-card-face{position:relative;width:100%;height:100%;overflow:hidden}.small-card-face img{position:absolute;width:250%;height:auto;left:50%;transform:translate(-50%)}.card-body{flex:1;padding:4px 6px;display:flex;flex-direction:column;gap:3px;overflow:hidden}.card-type-badge{font-size:.7rem;color:color-mix(in srgb,var(--energy-color, var(--gold)) 80%,white);text-transform:uppercase;letter-spacing:.05em}.card-small .card-type-badge{font-size:.6rem}.attached-energy{display:flex;flex-wrap:wrap;gap:3px}.energy-pip{width:10px;height:10px;border-radius:50%;display:inline-block}.energy-pip-charms{background:#4a90d9}.energy-pip-dark_arts{background:#6b21a8}.energy-pip-colorless{background:#888}.damage-bar{height:4px;background:#ffffff1a;border-radius:2px;overflow:hidden}.damage-fill{height:100%;background:linear-gradient(90deg,#22c55e,#eab308,#ef4444);transition:width .3s}.spell-block{border-top:1px solid rgba(255,255,255,.05);padding:3px 0 1px}.spell-row{display:flex;align-items:center;gap:4px;font-size:.75rem}.spell-cost{flex-shrink:0;font-size:.8rem}.spell-name{flex:1;color:var(--parchment-dark);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.spell-damage{font-weight:700;color:var(--gold-light);flex-shrink:0}.spell-effect-text{font-size:.62rem;color:#d4b896b8;font-style:italic;line-height:1.3;margin:1px 0 0 1.4rem;white-space:normal;overflow:hidden;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical}.card-small .spell-block{padding:2px 0 0}.card-small .spell-row{font-size:.65rem}.card-small .spell-cost{font-size:.7rem}.card-small .spell-effect-text{display:none}.card-effect-text{font-size:.72rem;color:var(--parchment-dark);line-height:1.35;overflow:hidden}.card-small .card-effect-text{font-size:.62rem}.energy-card-body{align-items:center;justify-content:center;gap:6px}.energy-symbol{font-size:3.5rem}.card-small .energy-symbol{font-size:2.5rem}.energy-label{font-size:.6rem;text-align:center;color:var(--parchment-dark)}.retreat-cost-row{display:flex;align-items:center;gap:5px;padding-top:3px;border-top:1px solid rgba(255,255,255,.05)}.retreat-cost-label{font-size:.62rem;color:var(--parchment-dark)}.retreat-cost-pips{font-size:.68rem;color:#d4b896;letter-spacing:1px}.weakness-row{display:flex;gap:6px;flex-wrap:wrap;margin-top:2px;padding-top:3px;border-top:1px solid rgba(255,255,255,.05)}.weakness-entry{font-size:.65rem;color:#fca5a5}.resistance-entry{font-size:.65rem;color:#86efac}.evolves-from-badge{font-size:.62rem;color:#f4ead573;text-align:center;padding:2px;border-top:1px solid rgba(255,255,255,.05);flex-shrink:0}.card-small .evolves-from-badge{font-size:.55rem}@media (max-width: 1100px){.card:not(.card-small) .card-art{height:70px;font-size:3rem}.card-small .card-art{height:42px;font-size:2rem}}@media (max-width: 820px){.card:not(.card-small) .card-art{height:52px;font-size:2.6rem}.card:not(.card-small) .card-name{font-size:.7rem}.card:not(.card-small) .card-hp{font-size:.7rem}.card:not(.card-small) .spell-row{font-size:.65rem;padding:2px 0}.card:not(.card-small) .card-effect-text{font-size:.63rem}.card-small .card-art{height:32px;font-size:1.7rem}.card-small .card-name,.card-small .card-hp{font-size:.62rem}.card-small .spell-row{font-size:.58rem;padding:1px 0}.card-small .card-effect-text,.card-small .retreat-cost-row,.card-small .weakness-row{display:none}}@media (max-width: 640px){.card:not(.card-small) .card-art{height:44px;font-size:2.4rem}.card:not(.card-small) .card-name{font-size:.66rem}.card:not(.card-small) .card-hp{font-size:.66rem}.card:not(.card-small) .spell-row{font-size:.62rem}.card-small .card-art{height:26px;font-size:1.4rem}.card-small .card-name,.card-small .card-hp{font-size:.56rem}.card-small .card-type-badge{display:none}.card-small .spell-row{font-size:.52rem;padding:1px 0}.card-small .spell-cost{font-size:.58rem}.card-small .card-effect-text,.card-small .retreat-cost-row{display:none}.card-small .evolves-from-badge{font-size:.48rem}.card-small .weakness-row{display:none}}.card-small{background:#0d1a2e}.cs-header{flex-shrink:0;padding:4px 6px 3px;background:color-mix(in srgb,var(--energy-color, #4a90d9) 22%,transparent);border-bottom:1px solid color-mix(in srgb,var(--energy-color, #4a90d9) 40%,transparent);overflow:hidden;min-height:37px}.cs-name{font-weight:700;color:#f4ead5;font-size:.72rem;line-height:1.2;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.cs-art{flex:1;min-height:0;overflow:hidden;position:relative}.cs-art img{position:absolute;width:250%;height:auto;left:50%;transform:translate(-50%)}.cs-art-emoji{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;font-size:2.4rem}.cs-damage-bar{position:absolute;bottom:0;left:0;right:0;height:3px;background:#ffffff26}.cs-damage-fill{height:100%;background:#ef4444;transition:width .3s}.cs-footer{flex-shrink:0;display:flex;justify-content:space-between;align-items:center;padding:2px 5px 3px;background:#000000b8;border-top:1px solid color-mix(in srgb,var(--energy-color, #4a90d9) 25%,transparent)}.cs-hp{font-weight:700;color:#fde68a;font-size:.64rem;white-space:nowrap;flex-shrink:0}.cs-stage{color:#93c5fdb3;font-size:.5rem;text-transform:uppercase;letter-spacing:.04em;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@media (max-width: 1100px){.cs-header{min-height:30px}.cs-name{font-size:.62rem}.cs-hp{font-size:.58rem}.cs-stage{font-size:.46rem}.cs-evolves{font-size:.52rem}}@media (max-width: 820px){.cs-header{min-height:25px}.cs-name{font-size:.56rem}.cs-hp{font-size:.52rem}.cs-stage{font-size:.42rem}.cs-evolves{font-size:.46rem}}@media (max-width: 640px){.cs-header{min-height:22px}.cs-name{font-size:.48rem}.cs-footer,.cs-evolves{display:none}}.game-board{display:grid;grid-template-columns:minmax(0,1fr) 320px;grid-template-rows:1fr auto;height:100vh;max-height:100vh;overflow:hidden}.content-col{grid-column:1;grid-row:1;min-width:0;display:flex;flex-direction:column;overflow:hidden}.main-area{flex:1;min-height:0;overflow:hidden}.hand-panel{grid-column:1;grid-row:2;min-width:0;overflow:hidden}@keyframes cardDeal{0%{transform:scale(.82);filter:drop-shadow(0 0 12px rgba(201,168,76,.95)) brightness(1.5)}55%{transform:scale(1.07);filter:drop-shadow(0 0 8px rgba(201,168,76,.6)) brightness(1.1)}to{transform:scale(1);filter:none}}.card-deal{animation:cardDeal .55s cubic-bezier(.22,.61,.36,1) both}@keyframes cardLift{0%{transform:scale(1);filter:none}55%{transform:scale(1.12);filter:drop-shadow(0 0 18px rgba(201,168,76,.85)) brightness(1.15)}to{transform:scale(1.08);filter:drop-shadow(0 0 12px rgba(201,168,76,.55))}}.card-lift{animation:cardLift .22s ease-out forwards;position:relative;z-index:5}@keyframes cardPlayed{0%{transform:scale(.72);filter:drop-shadow(0 0 20px rgba(201,168,76,1)) brightness(2)}50%{transform:scale(1.1);filter:drop-shadow(0 0 12px rgba(201,168,76,.6)) brightness(1.2)}75%{transform:scale(.97);filter:none}to{transform:scale(1);filter:none}}.card-played{animation:cardPlayed .55s cubic-bezier(.22,.61,.36,1) both}@keyframes defeatFlash{0%{opacity:0}15%{opacity:.9}to{opacity:0}}@keyframes splitTop{0%{clip-path:polygon(0 0,100% 0,100% 50%,5% 53%);transform:none;opacity:1;filter:brightness(2) saturate(0)}25%{clip-path:polygon(0 0,100% 0,100% 50%,5% 53%);transform:none;opacity:1;filter:brightness(1.5) saturate(.2)}70%{clip-path:polygon(0 0,100% 0,100% 50%,5% 53%);transform:translate(-22px,-36px) rotate(-18deg);opacity:.85;filter:none}to{clip-path:polygon(0 0,100% 0,100% 50%,5% 53%);transform:translate(-55px,-95px) rotate(-32deg);opacity:0;filter:none}}@keyframes splitBottom{0%{clip-path:polygon(5% 53%,100% 50%,100% 100%,0 100%);transform:none;opacity:1;filter:brightness(2) saturate(0)}25%{clip-path:polygon(5% 53%,100% 50%,100% 100%,0 100%);transform:none;opacity:1;filter:brightness(1.5) saturate(.2)}70%{clip-path:polygon(5% 53%,100% 50%,100% 100%,0 100%);transform:translate(22px,36px) rotate(18deg);opacity:.85;filter:none}to{clip-path:polygon(5% 53%,100% 50%,100% 100%,0 100%);transform:translate(55px,95px) rotate(32deg);opacity:0;filter:none}}.defeated-split-wrapper{position:relative;width:var(--card-width);height:var(--card-height);pointer-events:none;flex-shrink:0}.defeated-flash{position:absolute;top:0;right:0;bottom:0;left:0;background:#fff;border-radius:10px;z-index:5;animation:defeatFlash .35s ease-out forwards;pointer-events:none}.defeated-half{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none;overflow:visible}.defeated-top{animation:splitTop 1.1s .1s ease-in both}.defeated-bottom{animation:splitBottom 1.1s .1s ease-in both}.defeated-split-wrapper .card{animation:none!important;transition:none!important}.game-over-screen{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:2rem}.game-over-panel{display:flex;flex-direction:column;align-items:center;gap:1.4rem;background:#080502f0;border:1px solid rgba(201,168,76,.3);border-radius:14px;padding:2.5rem 3rem;max-width:400px;width:100%;box-shadow:0 0 80px #000000e6}.game-over-crest{width:170px;height:238px;border-radius:10px;object-fit:cover;border:1.5px solid rgba(201,168,76,.35);box-shadow:0 8px 32px #000000b3}.game-over-divider{width:100%;height:1px;background:linear-gradient(90deg,transparent 0%,rgba(201,168,76,.35) 40%,rgba(201,168,76,.35) 60%,transparent 100%)}.game-over-title{font-family:Palatino Linotype,Georgia,serif;font-size:2.8rem;letter-spacing:.12em;text-align:center;margin:0}.game-over-victory .game-over-panel{border-color:#c9a84c73;box-shadow:0 0 80px #000000e6,0 0 40px #c9a84c14}.game-over-victory .game-over-title{color:#c9a84c;text-shadow:0 0 30px rgba(201,168,76,.5),0 0 60px rgba(201,168,76,.2)}.game-over-defeat .game-over-panel{border-color:#64503c59}.game-over-defeat .game-over-title{color:#f4ead559;text-shadow:none}.game-over-desc{font-family:Palatino Linotype,Georgia,serif;font-style:italic;font-size:1rem;color:#f4ead580;text-align:center;letter-spacing:.03em;margin:0}.game-over-btn{background:linear-gradient(135deg,#c9a84c,#a07830);border:none;border-radius:7px;color:#1a0e04;font-family:Palatino Linotype,Georgia,serif;font-size:.95rem;font-weight:700;letter-spacing:.08em;padding:.72rem 2.5rem;transition:opacity .2s,transform .1s;cursor:pointer}.game-over-btn:hover{opacity:.88;transform:translateY(-1px)}.game-over-btn:active{transform:translateY(0)}.top-bar{display:flex;align-items:center;justify-content:space-between;padding:.5rem 1.25rem;background:#0000008c;border-bottom:1px solid rgba(201,168,76,.25);flex-shrink:0;gap:1rem}.player-stat-group{display:flex;align-items:center;gap:1rem;flex:1}.player-stat-group.right{justify-content:flex-end}.pname{color:var(--gold);font-weight:700;font-size:1rem}.opp-name{color:#f87171}.pstat{color:var(--parchment-dark);font-size:.8rem}.hp-pts{color:#fbbf24;font-weight:700}.pname-avatar{display:inline-flex;align-items:center;justify-content:center;width:1.7rem;height:1.7rem;border-radius:50%;background:#c9a84c2e;border:1.5px solid rgba(201,168,76,.55);color:var(--gold-light);font-weight:700;font-size:.82rem;flex-shrink:0;cursor:default;-webkit-user-select:none;user-select:none;line-height:1}.pname-avatar.opp-name{background:#f8717126;border-color:#f8717180;color:#fca5a5}.turn-pill{padding:.35rem 1.25rem;border-radius:999px;font-size:.9rem;font-weight:700;white-space:nowrap;flex-shrink:0}.turn-pill.my-turn{background:#c9a84c40;color:var(--gold-light);border:1px solid var(--gold)}.turn-pill.opp-turn{background:#ef444426;color:#fca5a5;border:1px solid #ef4444}.turn-pill.ai-turn{background:#6b21a859;color:#e2c4ff;border:1px solid rgba(200,150,255,.5);animation:aiPulse 1.4s ease-in-out infinite}@keyframes aiPulse{0%,to{opacity:.75}50%{opacity:1}}.action-banner{background:#c9a84c2e;border-bottom:1px solid var(--gold);color:var(--gold-light);text-align:center;padding:.4rem 1rem;font-size:.9rem;animation:pulse-bg 1s ease infinite alternate;flex-shrink:0}@keyframes pulse-bg{0%{background:#c9a84c1a}to{background:#c9a84c47}}.action-banner-snipe{background:#a855f72e;border-bottom:1px solid #a855f7;color:#e9d5ff;animation:pulse-bg-snipe 1s ease infinite alternate}@keyframes pulse-bg-snipe{0%{background:#a855f71a}to{background:#a855f74d}}.main-area{display:flex;flex:1;min-height:0;overflow:hidden}.field{flex:1;display:flex;flex-direction:column;overflow-y:auto;padding:.75rem 1rem;gap:.5rem;min-width:0}.field-half{display:flex;flex-direction:column;gap:.6rem;min-width:0}.bench-row{display:flex;flex-direction:row;gap:.5rem;flex-wrap:nowrap;align-items:flex-start;overflow-x:auto;overflow-y:visible;scrollbar-width:none;padding-top:14px;margin-top:-14px}.bench-row::-webkit-scrollbar{display:none}.bench-slot-empty{width:var(--card-small-width);height:var(--card-small-height);border:1px dashed rgba(201,168,76,.2);border-radius:10px;flex-shrink:0}.active-zone{display:flex;justify-content:flex-start;align-items:flex-start;min-height:100px}.empty-active{width:var(--card-width);min-height:120px;border:2px dashed rgba(201,168,76,.3);border-radius:10px;display:flex;align-items:center;justify-content:center;font-size:.8rem;color:#f4ead566;text-align:center;padding:.75rem}.my-active-wrapper{display:flex;gap:.75rem;align-items:flex-start}.spell-buttons{display:flex;flex-direction:column;gap:.4rem;padding-top:.25rem;min-width:170px;margin-left:auto;position:relative;z-index:25}.spell-first-turn-note{font-size:.68rem;color:#f87171;font-style:italic;margin-bottom:.2rem}.spell-label{font-size:.72rem;color:var(--gold);text-transform:uppercase;letter-spacing:.06em;margin-bottom:.2rem}.btn-spell{background:#c9a84c1f;border:1px solid rgba(201,168,76,.5);border-radius:6px;color:var(--parchment);font-family:inherit;font-size:.82rem;padding:.45rem .6rem;display:flex;align-items:center;gap:.4rem;transition:background .15s;text-align:left}.btn-spell:hover{background:#c9a84c47}.spell-cost-display{font-size:.9rem;flex-shrink:0}.spell-name-display{flex:1;font-weight:700;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.spell-dmg-display{background:#ef44444d;border-radius:4px;padding:1px 5px;font-weight:700;color:#fca5a5;font-size:.8rem;flex-shrink:0}.field-divider{display:flex;align-items:center;gap:.5rem;padding:.1rem 0}.divider-line{flex:1;height:1px;background:linear-gradient(90deg,transparent,rgba(201,168,76,.35),transparent)}.divider-icon{color:var(--gold);font-size:1.1rem}.sidebar{grid-column:2;grid-row:1 / 3;display:flex;flex-direction:column;gap:0;background:#00000059;border-left:1px solid rgba(201,168,76,.2);overflow-y:auto;min-width:0}.sidebar-log{display:none}.sidebar-log-entry{font-size:.65rem;color:#f4ead599;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1.4}.sidebar-log-entry:first-child{color:#f4ead5d9}.sidebar-footer{display:flex;flex-direction:column;gap:.4rem;padding:.6rem .75rem;border-top:1px solid rgba(255,255,255,.05);flex-shrink:0}.footer-actions{display:flex;flex-direction:column;gap:.35rem}.action-panel{display:flex;flex-direction:column;gap:.75rem;padding:.75rem;border-bottom:1px solid rgba(201,168,76,.15);overflow-y:auto}.no-selection{color:var(--parchment-dark);font-size:.82rem;font-style:italic;text-align:center;padding:.5rem 0}.action-card-preview{display:flex;justify-content:center}.action-list{display:flex;flex-direction:column;gap:.45rem}.action-label{font-size:.75rem;color:var(--gold);text-transform:uppercase;letter-spacing:.05em;margin-bottom:.1rem}.action-label strong{color:var(--gold-light);text-transform:none}.action-note{font-size:.75rem;color:var(--parchment-dark);font-style:italic}.btn-action{width:100%;border-radius:6px;padding:.55rem .75rem;font-family:inherit;font-size:.85rem;font-weight:700;text-align:left;transition:filter .15s,transform .1s;border:none}.btn-action:hover:not(:disabled){filter:brightness(1.2);transform:translate(2px)}.btn-action:disabled{opacity:.45;cursor:not-allowed}.btn-primary-action{background:linear-gradient(135deg,#c9a84c4d,#c9a84c26);border:1px solid var(--gold)!important;color:var(--gold-light)}.btn-energy-action{background:linear-gradient(135deg,#4a90d940,#4a90d91a);border:1px solid #4a90d9!important;color:#93c5fd}.btn-retreat{background:linear-gradient(135deg,#8b5cf633,#8b5cf61a);border:1px solid #8b5cf6!important;color:#c4b5fd}.btn-cancel{background:#ffffff0a;border:1px solid rgba(255,255,255,.15)!important;color:var(--parchment-dark)}.btn-end-turn{background:linear-gradient(135deg,#ef44444d,#ef444426);border:1px solid #ef4444!important;color:#fca5a5}.retreat-section{display:flex;flex-direction:column;gap:.35rem}.btn-surrender{background:transparent;border:1px solid rgba(239,68,68,.3);color:#fca5a58c;border-radius:6px;padding:.28rem .6rem;font-size:.7rem;cursor:pointer;text-align:left;transition:border-color .15s,color .15s}.btn-surrender:hover{border-color:#ef4444a6;color:#fca5a5}.surrender-prompt{font-size:.72rem;color:#fca5a5;text-align:center;margin:0}.surrender-btns{display:flex;gap:.4rem}.btn-surrender-yes{flex:1;background:#ef444433;border:1px solid rgba(239,68,68,.5);color:#fca5a5;border-radius:6px;padding:.3rem;font-size:.7rem;cursor:pointer;transition:background .15s}.btn-surrender-yes:hover{background:#ef444459}.btn-surrender-no{flex:1;background:#c9a84c1f;border:1px solid rgba(201,168,76,.3);color:var(--gold-light);border-radius:6px;padding:.3rem;font-size:.7rem;cursor:pointer;transition:background .15s}.btn-surrender-no:hover{background:#c9a84c40}.event-log{flex:1;padding:.75rem;overflow-y:auto;display:flex;flex-direction:column;gap:.25rem}.log-title{font-size:.75rem;color:var(--gold);text-transform:uppercase;letter-spacing:.06em;margin-bottom:.25rem;flex-shrink:0}.log-entry{font-size:.72rem;color:var(--parchment-dark);line-height:1.35;padding:.25rem 0;border-bottom:1px solid rgba(255,255,255,.04)}.bench-wizard-wrapper{position:relative;flex-shrink:0}.bench-energy-badge{position:absolute;bottom:5px;right:4px;background:#000000d1;border:1px solid rgba(255,255,255,.22);border-radius:5px;color:#fff;font-size:.62rem;font-weight:700;padding:1px 4px;pointer-events:none;z-index:30;white-space:nowrap;display:flex;align-items:center;gap:2px}.energy-pip{display:inline-block;width:7px;height:7px;border-radius:50%;flex-shrink:0}.energy-pip-charms{background:radial-gradient(circle at 35% 35%,#2d7abf,#0d2137);box-shadow:0 0 3px #2d7abf88}.energy-pip-dark_arts{background:radial-gradient(circle at 35% 35%,#8b3cf7,#160829);box-shadow:0 0 3px #8b3cf788}.energy-pip-colorless{background:radial-gradient(circle at 35% 35%,#888,#1a1a1a)}@keyframes healFloat{0%{opacity:0;transform:translate(-50%) translateY(0) scale(.6)}15%{opacity:1;transform:translate(-50%) translateY(-6px) scale(1.25)}to{opacity:0;transform:translate(-50%) translateY(-60px) scale(.9)}}@keyframes healGlow{0%{filter:drop-shadow(0 0 0px rgba(74,222,128,0))}25%{filter:drop-shadow(0 0 26px rgba(74,222,128,1)) drop-shadow(0 0 8px rgba(74,222,128,.6))}to{filter:drop-shadow(0 0 2px rgba(74,222,128,0))}}.heal-float{position:absolute;top:12%;left:50%;transform:translate(-50%);color:#4ade80;font-size:1.55rem;font-weight:900;letter-spacing:-.02em;text-shadow:0 2px 10px rgba(0,0,0,.95),0 0 18px rgba(74,222,128,.7);pointer-events:none;z-index:300;white-space:nowrap;animation:healFloat 1.35s cubic-bezier(.22,.61,.36,1) forwards}.heal-float.small{font-size:1.1rem;top:8%}.is-healing{animation:healGlow 1.3s ease-out forwards}@keyframes dmgFloat{0%{opacity:0;transform:translate(-50%) translateY(0) scale(.6)}15%{opacity:1;transform:translate(-50%) translateY(-6px) scale(1.25)}to{opacity:0;transform:translate(-50%) translateY(-60px) scale(.9)}}@keyframes dmgGlow{0%{filter:none}25%{filter:drop-shadow(0 0 26px rgba(239,68,68,1)) drop-shadow(0 0 8px rgba(239,68,68,.6))}to{filter:none}}.dmg-float{position:absolute;top:12%;left:50%;transform:translate(-50%);color:#f87171;font-size:1.7rem;font-weight:700;text-shadow:0 0 10px rgba(239,68,68,.8),0 2px 4px rgba(0,0,0,.9);pointer-events:none;z-index:300;white-space:nowrap;animation:dmgFloat 1.35s cubic-bezier(.22,.61,.36,1) forwards}.dmg-float.small{font-size:1.1rem;top:8%}.is-damaged{animation:dmgGlow .8s ease-out forwards}@keyframes retreatPortal{0%{opacity:0;transform:scale(.4)}18%{opacity:1;transform:scale(1.05)}45%{opacity:.55;transform:scale(1)}to{opacity:0;transform:scale(1.2)}}.active-zone{position:relative}.retreat-portal{position:absolute;top:-8px;right:-8px;bottom:-8px;left:-8px;border-radius:16px;background:radial-gradient(ellipse at center,rgba(147,210,255,.55) 0%,rgba(120,180,255,.25) 40%,transparent 72%);box-shadow:0 0 40px #78beff80,inset 0 0 30px #a0d2ff4d;pointer-events:none;z-index:150;animation:retreatPortal .75s cubic-bezier(.25,.46,.45,.94) forwards}.card-inspect-modal{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000e0;z-index:9999;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2rem;overflow-y:auto;padding:2rem 1rem}.card-inspect-card-wrapper{flex-shrink:0;--card-width: 210px;--card-height: 294px}.card-inspect-card-wrapper .card-art{height:90px!important;font-size:3.5rem!important}.card-inspect-card-wrapper .card-name,.card-inspect-card-wrapper .card-hp{font-size:.82rem!important}.card-inspect-card-wrapper .spell-row{font-size:.72rem!important;padding:2px 0!important}.card-inspect-card-wrapper .card-effect-text{display:block!important;font-size:.72rem!important}.card-inspect-card-wrapper .retreat-cost-row,.card-inspect-card-wrapper .weakness-row{display:flex!important}.card-inspect-card-wrapper .cf-header{padding:7px 9px 20px!important}.card-inspect-card-wrapper .cf-name,.card-inspect-card-wrapper .cf-hp{font-size:.82rem!important}.card-inspect-card-wrapper .cf-spell{font-size:.72rem!important}.card-inspect-card-wrapper .cf-sdmg{font-size:.68rem!important}.card-inspect-card-wrapper .cf-seffect{display:block!important;font-size:.62rem!important}.card-inspect-card-wrapper .cf-footer{padding:22px 9px 7px!important}.card-inspect-card-wrapper .cf-retreat{display:flex!important;font-size:.63rem!important}.card-inspect-card-wrapper .cf-spell-2{display:flex!important}.card-inspect-card-wrapper .cf-divider{display:block!important}.card-inspect-close{background:#c9a84c26;border:1px solid rgba(201,168,76,.45);color:var(--gold-light);border-radius:6px;padding:.5rem 1.5rem;font-family:inherit;font-size:.9rem;cursor:pointer;transition:background .15s}.card-inspect-close:hover{background:#c9a84c4d}.target-highlight{outline:2px solid rgba(201,168,76,.8);outline-offset:2px;animation:targetPulse 1s ease-in-out infinite alternate;cursor:pointer}@keyframes targetPulse{0%{box-shadow:0 0 6px #c9a84c4d}to{box-shadow:0 0 16px #c9a84cb3}}.mob-retreat-zone,.mob-end-turn,.modal-actions,.mob-surrender-btn,.mob-surrender-confirm{display:none}.mob-actions-grid{display:contents}.action-card-preview{cursor:pointer}.wizard-energy-stack{position:relative;flex-shrink:0;overflow:visible;isolation:isolate}.wizard-card-layer{position:relative;z-index:20;filter:drop-shadow(0 8px 18px rgba(0,0,0,.75))}.energy-mini-card{position:absolute;width:var(--card-width);height:var(--card-height);border-radius:10px;border:2px solid rgba(255,255,255,.18);box-shadow:0 6px 20px #000000a6;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.55rem;animation:energyAttach .35s cubic-bezier(.34,1.56,.64,1) both}.energy-mini-charms{background:linear-gradient(160deg,#0d2137,#1a4f85,#2d7abf)}.energy-mini-dark_arts{background:linear-gradient(160deg,#160829,#3b0f6e,#6a1fc2)}.energy-mini-colorless{background:linear-gradient(160deg,#1a1a1a,#3a3a3a,#555)}.energy-mini-icon{font-size:3.4rem;line-height:1;filter:drop-shadow(0 0 8px rgba(255,255,255,.35))}.energy-mini-name{font-size:.68rem;font-weight:700;color:#ffffffbf;text-transform:uppercase;letter-spacing:.1em;text-align:center}@keyframes energyAttach{0%{transform:translateY(-12px) scale(.88);opacity:0}65%{transform:translateY(3px) scale(1.04);opacity:1}to{transform:none;opacity:1}}@keyframes boltDraw{0%{stroke-dashoffset:100;opacity:1}55%{stroke-dashoffset:0;opacity:1}to{stroke-dashoffset:0;opacity:0}}.attack-bolt-outer,.attack-bolt-core{stroke-dasharray:100;stroke-dashoffset:100;animation:boltDraw .5s ease-in forwards}@keyframes impactRingBurst{0%{transform:scale(0);opacity:0}10%{transform:scale(0);opacity:0}45%{transform:scale(1.1);opacity:.9}to{transform:scale(2.4);opacity:0}}@keyframes impactCoreBurst{0%{transform:scale(0);opacity:0}10%{transform:scale(0);opacity:0}40%{transform:scale(1.3);opacity:1}to{transform:scale(.2);opacity:0}}.attack-impact-ring{transform-box:fill-box;transform-origin:center;animation:impactRingBurst .65s .3s ease-out forwards;opacity:0}.attack-impact-core{transform-box:fill-box;transform-origin:center;animation:impactCoreBurst .45s .3s ease-out forwards;opacity:0}.attack-bolt-light{animation:boltDraw .35s ease-in forwards!important}.attack-bolt-heavy{animation:boltDraw .65s ease-in forwards!important}@keyframes impactRingBurst2{0%{transform:scale(0);opacity:0}15%{transform:scale(0);opacity:0}50%{transform:scale(.7);opacity:.55}to{transform:scale(3.2);opacity:0}}.attack-impact-ring-2{transform-box:fill-box;transform-origin:center;animation:impactRingBurst2 .9s .4s ease-out forwards;opacity:0}.card-preview-btn{position:absolute;bottom:4px;right:4px;background:#000000b8;border:1px solid rgba(201,168,76,.55);border-radius:50%;color:#f4ead5e6;font-size:.8rem;width:22px;height:22px;display:flex;align-items:center;justify-content:center;cursor:pointer;z-index:20;line-height:1;padding:0;touch-action:manipulation}.card-preview-btn:active{background:#c9a84c40}.hand-panel{background:#0000008c;border-top:1px solid rgba(201,168,76,.25);padding:.5rem 1rem .75rem;flex-shrink:0}.hand-label{font-size:.72rem;color:var(--gold);text-transform:uppercase;letter-spacing:.05em;margin-bottom:.4rem}.hand-carousel{overflow:visible}.carousel-flat{display:flex;flex-direction:row;align-items:flex-end;gap:8px;overflow-x:auto;padding:28px 12px 8px;margin-top:-28px;scrollbar-width:none;-ms-overflow-style:none;cursor:grab}.carousel-flat::-webkit-scrollbar{display:none}.carousel-flat:active{cursor:grabbing}.carousel-card-slot{flex-shrink:0;transform-origin:bottom center;transition:transform .18s ease;position:relative}.carousel-card-slot.is-selected{transform:translateY(-18px) scale(1.07);z-index:10}.coverflow-track{position:relative;width:100%;height:var(--card-small-height);perspective:900px;perspective-origin:50% 50%;display:flex;align-items:center;justify-content:center;overflow:visible}.coverflow-card{position:absolute;transform-origin:center center;transform-style:preserve-3d;transition:transform .28s cubic-bezier(.25,.46,.45,.94),opacity .28s ease;cursor:pointer}.coverflow-card.is-center{cursor:default}.hand-carousel.is-dragging .coverflow-card{transition:none}.coverflow-nav{display:flex;align-items:center;justify-content:center;gap:.9rem;margin-top:.4rem}.coverflow-btn{background:#c9a84c1f;border:1px solid rgba(201,168,76,.35);color:var(--gold);border-radius:50%;width:26px;height:26px;font-size:1.1rem;line-height:1;display:flex;align-items:center;justify-content:center;padding:0;transition:background .15s}.coverflow-btn:hover:not(:disabled){background:#c9a84c4d}.coverflow-btn:disabled{opacity:.25;cursor:not-allowed}.coverflow-counter{font-size:.68rem;color:var(--parchment-dark);min-width:44px;text-align:center}@media (max-width: 1100px){.game-board{grid-template-columns:1fr 240px}.bench-row{gap:.25rem}.spell-buttons{min-width:130px}.pname-avatar{width:1.5rem;height:1.5rem;font-size:.72rem}.pstat{font-size:.72rem}.turn-pill{font-size:.82rem;padding:.3rem .9rem}.btn-action{font-size:.8rem;padding:.45rem .6rem}.btn-spell{font-size:.76rem;padding:.38rem .5rem}.log-entry{font-size:.68rem}.field{padding:.5rem .75rem}}@media (max-width: 820px){.game-board{grid-template-columns:1fr 230px}.spell-buttons{min-width:105px}.btn-spell{font-size:.7rem;padding:.32rem .4rem}.spell-label{font-size:.65rem}.btn-action{font-size:.75rem;padding:.4rem .5rem}.pname-avatar{width:1.4rem;height:1.4rem;font-size:.68rem}.pstat{font-size:.66rem}.turn-pill{font-size:.74rem;padding:.25rem .75rem}.field{padding:.4rem .6rem;gap:.35rem}.field-half{gap:.35rem}.action-panel{padding:.6rem}.bench-row{min-width:0}}@media (max-width: 640px){.game-board{display:flex;flex-direction:column}.content-col{flex:1;min-height:0;overflow:hidden;grid-column:unset;grid-row:unset}.hand-panel{grid-column:unset;grid-row:unset;flex-shrink:0}.sidebar{display:none}.top-bar{padding:.3rem .4rem;gap:.2rem;overflow:hidden}.player-stat-group{gap:.3rem;min-width:0;flex-shrink:1}.pname-avatar{width:1.35rem;height:1.35rem;font-size:.65rem}.pstat{font-size:.68rem;white-space:nowrap}.turn-pill{font-size:.68rem;padding:.22rem .45rem;flex-shrink:1;overflow:hidden;text-overflow:ellipsis;max-width:44vw}.field{padding:.35rem .4rem;gap:.25rem}.field-half{gap:.25rem}.field-divider{padding:.05rem 0}.divider-icon{font-size:.9rem}.bench-row-wrapper{position:relative;overflow:hidden}.bench-row{flex-wrap:nowrap;overflow-x:auto;padding-bottom:3px}.bench-row-wrapper:after{content:"";position:absolute;top:0;right:0;bottom:3px;width:18px;background:linear-gradient(to right,transparent,rgba(8,6,15,.85));pointer-events:none;z-index:5}.empty-active{min-height:80px;font-size:.7rem}.mob-surrender-btn{display:flex;align-items:center;justify-content:center;background:#ef444426;border:1px solid rgba(239,68,68,.45);border-radius:6px;color:#fca5a5;font-size:.8rem;padding:.2rem .35rem;cursor:pointer;flex-shrink:0;transition:background .15s}.mob-surrender-btn:hover{background:#ef44444d}.mob-surrender-confirm{display:flex;gap:.2rem;flex-shrink:0}.mob-surrender-yes,.mob-surrender-no{border-radius:5px;font-size:.78rem;padding:.2rem .35rem;cursor:pointer;font-family:inherit;border:1px solid}.mob-surrender-yes{background:#ef444440;border-color:#ef444499;color:#fca5a5}.mob-surrender-no{background:#c9a84c1f;border-color:#c9a84c73;color:var(--parchment)}.my-active-wrapper{gap:.35rem;align-items:flex-start;width:100%}.mob-actions-grid{display:grid;grid-template-columns:1fr 1fr;gap:.25rem;flex:1;min-width:0;align-items:start}.spell-buttons{display:flex;flex-direction:column;gap:.25rem;min-width:0;padding-top:0;margin-left:0;flex-wrap:nowrap}.mob-retreat-zone{display:flex;flex-direction:column;gap:.25rem;align-items:stretch}.btn-spell{font-size:.6rem;padding:.3rem;gap:.15rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;width:100%;min-height:2.1rem;box-sizing:border-box;justify-content:flex-start}.spell-cost-display{font-size:.7rem;flex-shrink:0}.spell-dmg-display{font-size:.62rem}.mob-end-turn{display:flex;background:#ef444433;border-color:#ef444499;color:#fca5a5}.mob-end-turn:hover{background:#ef444459}.bench-row{gap:.25rem}.modal-actions{display:flex;flex-direction:column;gap:.4rem;align-items:stretch;width:100%;max-width:280px;padding:0 .5rem}.modal-actions .btn-action{font-size:.82rem;padding:.5rem .75rem;white-space:normal;text-align:left}.hand-panel{padding:.3rem .4rem .4rem}.hand-label{font-size:.62rem;margin-bottom:.25rem}.carousel-flat{padding:20px 6px 6px;margin-top:-20px;gap:5px}.coverflow-btn{width:22px;height:22px;font-size:.9rem}.coverflow-counter{font-size:.62rem}}@media (min-width: 1101px){.field-half{flex-direction:row;align-items:flex-start;gap:1rem}.field-half .active-zone{flex-shrink:0}.field-half .bench-row{flex:1;flex-wrap:wrap;align-content:flex-start;overflow-x:visible;overflow-y:visible;gap:.5rem}.opp-half .bench-row{order:2}.opp-half .active-zone{order:1}.my-active-wrapper{flex-direction:column;align-items:flex-start;gap:.5rem}.spell-buttons{min-width:var(--card-width);width:var(--card-width);margin-left:0}}.ai-thinking-pill{position:fixed;top:.6rem;left:50%;transform:translate(-50%);background:#6b21a8d9;color:#e2c4ff;border:1px solid rgba(200,150,255,.4);border-radius:999px;padding:.25rem 1rem;font-size:.78rem;letter-spacing:.05em;z-index:500;animation:aiPulse 1.4s ease-in-out infinite;pointer-events:none}@keyframes aiPulse{0%,to{opacity:.7}50%{opacity:1}}.solo-info{display:flex;flex-direction:column;gap:.75rem;align-items:stretch}.solo-desc{font-size:.82rem;color:#f4ead599;text-align:center;margin:0}.btn-solo{background:linear-gradient(135deg,#6b21a8b3,#c9a84c99);border-color:#c896ff80}.btn-solo:hover:not(:disabled){background:linear-gradient(135deg,#6b21a8e6,#c9a84ccc)}.stats-screen{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:2rem 1.5rem}.stats-panel{width:100%;max-width:520px;display:flex;flex-direction:column;align-items:center;gap:1.4rem}.stats-logo{width:120px;height:120px;object-fit:contain;filter:drop-shadow(0 0 16px rgba(124,58,237,.35)) drop-shadow(0 0 32px rgba(201,168,76,.18))}.stats-title{font-family:Palatino Linotype,Georgia,serif;font-size:2rem;color:#c9a84c;letter-spacing:.1em;text-shadow:0 0 24px rgba(201,168,76,.35);margin:0}.stats-ornament{width:100%;height:1px;background:linear-gradient(90deg,transparent 0%,rgba(201,168,76,.4) 35%,rgba(201,168,76,.4) 65%,transparent 100%);position:relative}.stats-ornament:before{content:"✦";position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);color:#c9a84c;font-size:.6rem;background:#08060f;padding:0 6px;opacity:.6}.stats-section{width:100%;background:#120a20bf;border:1px solid rgba(201,168,76,.18);border-radius:12px;padding:1.25rem 1.5rem;display:flex;flex-direction:column;gap:.75rem;box-shadow:0 4px 24px #00000080}.stats-section-title{font-family:Palatino Linotype,Georgia,serif;font-size:.95rem;color:#c9a84c;letter-spacing:.1em;text-transform:uppercase;margin:0 0 .25rem}.stat-group{display:flex;flex-direction:column;gap:.5rem}.stat-label{font-family:Palatino Linotype,Georgia,serif;font-size:.78rem;color:#f4ead573;letter-spacing:.05em;text-transform:uppercase;margin-top:.2rem}.stat-row{display:flex;align-items:center;gap:.7rem}.stat-bar-track{flex:1;height:7px;background:#ffffff12;border-radius:4px;overflow:hidden}.stat-bar-fill{height:100%;border-radius:4px;transition:width .8s ease;opacity:.85}.stat-pct{font-family:Palatino Linotype,Georgia,serif;font-size:.92rem;font-weight:700;color:#f4ead5;min-width:36px;text-align:right}.stat-games{font-family:Palatino Linotype,Georgia,serif;font-size:.72rem;color:#f4ead561;min-width:88px;text-align:right}.top-players-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.5rem}.top-player-row{display:flex;align-items:center;gap:.65rem;font-family:Palatino Linotype,Georgia,serif}.tp-rank{font-size:.72rem;color:#c9a84c80;min-width:18px;text-align:right;font-style:italic}.tp-name{font-size:.88rem;color:#f4ead5;flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tp-bar-wrap{width:80px;height:5px;background:#ffffff12;border-radius:3px;overflow:hidden;flex-shrink:0}.tp-bar-fill{display:block;height:100%;background:linear-gradient(90deg,#c9a84c,#f0d080);border-radius:3px;transition:width .8s ease}.tp-pct{font-size:.85rem;font-weight:700;color:#c9a84c;min-width:38px;text-align:right}.tp-record{font-size:.72rem;color:#f4ead573;min-width:60px;text-align:right;font-style:italic}.stats-loading,.stats-empty{font-family:Palatino Linotype,Georgia,serif;font-style:italic;color:#f4ead561;font-size:.88rem;text-align:center}.stats-back-btn{background:transparent;border:1px solid rgba(201,168,76,.3);border-radius:7px;color:#f4ead599;font-family:Palatino Linotype,Georgia,serif;font-size:.88rem;letter-spacing:.06em;padding:.6rem 2rem;transition:border-color .2s,color .2s,background .2s;cursor:pointer}.stats-back-btn:hover{border-color:#c9a84ca6;color:#c9a84c;background:#c9a84c0f}.app{position:relative;min-height:100vh}.error-toast{position:fixed;top:1rem;left:50%;transform:translate(-50%);background:#dc2626f2;border:1px solid #ef4444;border-radius:8px;color:#fff;padding:.6rem 1.2rem;font-size:.9rem;z-index:1000;cursor:pointer;display:flex;align-items:center;gap:.75rem;box-shadow:0 4px 12px #0006;pointer-events:all;animation:slideDown .25s ease,fadeOut .4s ease 4.6s forwards;-webkit-user-select:none;user-select:none;white-space:nowrap}.error-dismiss{font-size:1.1rem;opacity:.7}.coin-flip-toast{position:fixed;top:1rem;left:50%;transform:translate(-50%);background:#2c1810f2;border:1px solid var(--gold);border-radius:8px;color:var(--gold-light);padding:.6rem 1.5rem;font-size:1rem;z-index:999;box-shadow:0 4px 12px #0006;pointer-events:none;animation:slideDown .3s ease,fadeOut .5s ease 2s forwards}.grace-toast{position:fixed;top:1rem;left:50%;transform:translate(-50%);background:#14143cf2;border:1px solid #6366f1;border-radius:8px;color:#c7d2fe;padding:.6rem 1.4rem;font-size:.9rem;z-index:998;box-shadow:0 4px 12px #00000080;pointer-events:none;white-space:nowrap;animation:slideDown .25s ease}@keyframes slideDown{0%{opacity:0;transform:translate(-50%) translateY(-10px)}to{opacity:1;transform:translate(-50%) translateY(0)}}@keyframes fadeOut{to{opacity:0}}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--gold: #c9a84c;--gold-light: #f0d080;--parchment: #f4ead5;--parchment-dark: #e8d5b0;--ink: #2c1810;--gryffindor-red: #740001;--gryffindor-gold: #d3a625;--slytherin-green: #1a472a;--slytherin-silver: #aaaaaa;--charms-blue: #4a90d9;--dark-arts-purple: #6b21a8;--border-radius: 8px;--card-width: 210px;--card-height: 294px;--card-small-width: 148px;--card-small-height: 207px}@media (max-width: 1100px){:root{--card-width: 155px;--card-height: 217px;--card-small-width: 108px;--card-small-height:151px}}@media (max-width: 820px){:root{--card-width: 130px;--card-height: 182px;--card-small-width: 90px;--card-small-height:126px}}@media (max-width: 640px){:root{--card-width: 95px;--card-height: 133px;--card-small-width: 68px;--card-small-height:95px}}body{font-family:Palatino Linotype,Georgia,Times New Roman,serif;background-color:#08060f;color:var(--parchment);min-height:100vh;background-image:radial-gradient(ellipse 120% 80% at 50% 0%,#1e0d3a,#0e0720 45%,#08060f),url("data:image/svg+xml,%3Csvg width='60' height='60' viewBox='0 0 60 60' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='none' fill-rule='evenodd'%3E%3Cg fill='%23c9a84c' fill-opacity='0.025'%3E%3Cpath d='M36 34v-4h-2v4h-4v2h4v4h2v-4h4v-2h-4zm0-30V0h-2v4h-4v2h4v4h2V6h4V4h-4zM6 34v-4H4v4H0v2h4v4h2v-4h4v-2H6zM6 4V0H4v4H0v2h4v4h2V6h4V4H6z'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E")}h1,h2,h3{font-family:Palatino Linotype,Georgia,serif;color:var(--gold)}button{cursor:pointer;font-family:inherit}button:disabled{opacity:.5;cursor:not-allowed}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:#08060f}::-webkit-scrollbar-thumb{background:var(--gold);border-radius:3px}
