:root{color:#dce7e4;font-synthesis:none;--mint:#7de8d1;--cyan:#67bad0;--gold:#bda365;--panel:#071b1deb;--line:#78dccd33;background:#051113;font-family:Noto Sans SC,sans-serif}*{box-sizing:border-box}body{background:radial-gradient(circle at 50% 42%,#123a3b 0,#081b1d 34%,#030b0d 100%);min-width:320px;min-height:100vh;margin:0;overflow-x:hidden}body:before{content:"";opacity:.28;pointer-events:none;background-image:linear-gradient(30deg,#0000 48%,#70d7c514 49%,#0000 50%),linear-gradient(150deg,#0000 48%,#70d7c50f 49%,#0000 50%);background-size:90px 156px;position:fixed;inset:0}button,input,select,textarea{font:inherit}button{color:inherit;border:1px solid var(--line);cursor:pointer;letter-spacing:.04em;background:#0b282ad9;padding:.7rem 1rem;transition:all .18s}button:hover:not(:disabled){border-color:var(--mint);color:#fff;box-shadow:0 0 18px #44e0c31f}button:disabled{opacity:.35;cursor:not-allowed}button.primary{color:#fff;background:linear-gradient(110deg,#2b8f82,#346f78);border-color:#7de8d1}button.danger{color:#edc09e;border-color:#d1895fb3}button.wide{width:100%;margin-top:1rem}small{color:#75bdc8;letter-spacing:.18em;text-transform:uppercase}h1,h2,h3,p{margin-top:0}.landing{grid-template-columns:minmax(300px,1.25fr) minmax(320px,.75fr);align-items:center;gap:8vw;min-height:100vh;padding:8vw;display:grid;position:relative}.brand small{font:600 1rem Rajdhani,sans-serif}.brand h1{letter-spacing:-.07em;margin:1.3rem 0 2rem;font-size:clamp(3.5rem,8vw,8rem);font-weight:300;line-height:.9}.brand h1 em{color:var(--mint);font-style:normal}.brand p{color:#91aaa7;letter-spacing:.12em}.entry-panel{border:1px solid var(--line);background:linear-gradient(140deg,#0c2628f5,#041214f5);gap:1rem;padding:2rem;display:grid;position:relative;box-shadow:0 28px 80px #00000073}.entry-panel:before{content:"";border-left:1px solid var(--mint);border-top:1px solid var(--mint);width:60px;height:60px;position:absolute;top:-1px;left:-1px}label{color:#7ea5a5;letter-spacing:.1em;gap:.5rem;font-size:.82rem;display:grid}input,select,textarea{border:1px solid var(--line);color:#fff;background:#020c0ec7;outline:none;padding:.85rem 1rem}input:focus,select:focus,textarea:focus{border-color:var(--mint)}.divider{text-align:center;color:#597676;font-size:.78rem}.form-error,.toast{color:#ffb398}.landing>footer{color:#577173;letter-spacing:.18em;font-size:.72rem;position:absolute;bottom:2rem;left:8vw}.loading{text-align:center;place-content:center;min-height:100vh;display:grid}.sigil{color:var(--mint);font-size:8rem;animation:4s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.toast{z-index:110;background:#381f1a;border:1px solid #bb715b;padding:.7rem 1.3rem;position:fixed;top:1rem;left:50%;transform:translate(-50%);box-shadow:0 8px 30px #000}.connection-fallback{z-index:1300;background:#301911fa;border:1px solid #d89b69;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:.2rem 1rem;width:min(620px,100vw - 2rem);padding:.85rem 1rem;display:grid;position:fixed;bottom:1rem;left:50%;transform:translate(-50%);box-shadow:0 18px 55px #000}.connection-fallback strong{color:#ffd0aa}.connection-fallback span{color:#bda99d;font-size:.7rem}.connection-fallback button{grid-area:1/2/3}.lobby-page{min-height:100vh;padding:4vw 6vw}.lobby-page>header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:flex-end;padding-bottom:1.5rem;display:flex}.lobby-page h1{margin:.4rem 0 0;font-size:3rem;font-weight:300}.seat-grid{grid-template-columns:repeat(3,1fr);gap:1rem;margin:6vh 0;display:grid}.seat-grid article{border:1px solid var(--line);background:#071b1db8;flex-direction:column;justify-content:space-between;min-height:190px;padding:1.5rem;display:flex}.seat-grid article span{color:var(--cyan);letter-spacing:.2em;font:600 1rem Rajdhani}.seat-grid article b{color:#668784;font-weight:400}.lobby-actions{background:var(--panel);border:1px solid var(--line);align-items:center;gap:1rem;padding:1.5rem;display:flex}.lobby-actions>div{flex:1;display:grid}.lobby-actions span{color:#789490;font-size:.8rem}.game-shell{min-height:100vh;padding-bottom:215px}.game-header{border-bottom:1px solid var(--line);z-index:30;background:#030f11f0;justify-content:space-between;align-items:center;height:82px;padding:1rem 2.2rem;display:flex;position:sticky;top:0}.game-header h1{letter-spacing:.1em;margin:.1rem 0 0;font-weight:300}.room-chip{color:#76918f;align-items:baseline;gap:.8rem;display:flex}.room-chip b{letter-spacing:.16em;color:var(--mint);font:700 1.4rem Rajdhani}.room-chip span{border-left:1px solid var(--line);padding-left:.8rem}.pause-banner{color:#ffe0a5;text-align:center;z-index:29;background:#5c4020;padding:.6rem;position:sticky;top:82px}.battlefield{max-width:1500px;margin:auto;padding:1rem 2rem 3rem}.player-field{border:1px solid var(--line);background:linear-gradient(100deg,#081f20cc,#05121499);min-height:245px;padding:1rem 170px 1rem 1rem;position:relative}.player-field.opponent,.player-field.opponent>*{transform:rotate(180deg)}.player-summary{flex-wrap:wrap;align-items:center;gap:.8rem;width:145px;display:flex;position:absolute;top:1rem;right:1rem}.avatar{border:1px solid var(--mint);width:42px;height:42px;color:var(--mint);place-content:center;display:grid;transform:rotate(45deg)}.avatar:first-letter{transform:rotate(-45deg)}.player-summary>div:nth-child(2){display:grid}.player-summary small{letter-spacing:.05em;font-size:.55rem}.health{color:#e7e0cf;align-items:baseline;gap:.3rem;width:100%;display:flex}.health b{font:700 2rem Rajdhani}.health span{color:#6a8583}.characters{justify-content:center;gap:1.6rem;min-height:160px;display:flex}.character-stack{background:0 0;border-color:#0000;justify-items:center;width:120px;padding:.4rem;display:grid;position:relative}.character-stack.leader{border-color:var(--gold);background:#bda36514}.character-stack>span{color:var(--gold);letter-spacing:.12em;font:600 .7rem Rajdhani}.character-stack>small{font-size:.55rem}.character-stack>i{border:1px solid var(--mint);background:#164749;padding:.25rem .4rem;font-size:.65rem;font-style:normal;position:absolute;bottom:22px;right:-8px}.zones{align-items:center;gap:.6rem;display:flex}.zones>button{align-items:baseline;gap:.55rem;padding:.4rem .8rem;display:flex}.zones b{color:var(--mint);font:700 1.4rem Rajdhani}.zones span{font-size:.72rem}.draft-ribbon{border-left:2px solid var(--mint);color:#94cbc2;padding:.4rem .8rem;font-size:.74rem}.center-line{justify-content:center;align-items:center;height:145px;display:flex;position:relative}.center-line:before{content:"";background:linear-gradient(90deg, transparent, var(--gold), transparent);height:1px;position:absolute;left:0;right:0}.action-lane{background:#030e10d9;border:1px solid #bda36547;justify-content:center;align-items:center;gap:.3rem;min-width:450px;min-height:105px;padding:.4rem 90px .4rem 1rem;display:flex}.action-lane>span{color:#bda36573;letter-spacing:.4em;position:absolute}.turn-medallion{border:1px solid var(--gold);text-align:center;z-index:2;background:#071719;border-radius:50%;place-content:center;width:108px;height:108px;display:grid;position:absolute;right:calc(50% - 220px)}.turn-medallion b{color:#e8d9ae;font:700 2.2rem Rajdhani}.turn-medallion span{color:#87a09c;max-width:82px;font-size:.58rem}.hand-dock{z-index:35;border-top:1px solid var(--line);background:linear-gradient(#051517eb,#02090a);align-items:stretch;height:155px;display:flex;position:fixed;bottom:60px;left:0;right:0}.hand-title{border-right:1px solid var(--line);align-content:center;width:90px;padding:1rem;display:grid}.hand-title b{color:var(--mint);font:700 2.6rem Rajdhani}.hand-cards{flex:1;justify-content:center;align-items:flex-start;gap:.25rem;padding:.45rem 1rem 0;display:flex;overflow:auto visible}.command-bar{z-index:40;border-top:1px solid var(--line);background:#031012;justify-content:flex-end;align-items:center;gap:.5rem;height:60px;padding:.55rem 2rem;display:flex;position:fixed;bottom:0;left:0;right:0}.task-button{border-color:var(--gold);color:#e8d9ae;margin-right:auto}.card-wrap{z-index:1;flex:none;width:92px;position:relative}.card-wrap:hover{z-index:50}.card-wrap.compact{width:68px}.card{aspect-ratio:1241/1733;background:#0b2426;border:0;border-radius:5px;width:100%;padding:0;display:block;overflow:hidden;box-shadow:0 5px 12px #00000061}.card:disabled{cursor:not-allowed;filter:grayscale(.72);opacity:.58}.card img{object-fit:cover;width:100%;height:100%;display:block}.card.selected{outline:3px solid var(--mint);transform:translateY(-8px)}.card-back{background:#071012;border:1px solid #426d6a;width:68px}.card-back-character{background:#f5f1e6;border-color:#d8bd72}.card-back img{object-fit:cover;width:100%;height:100%}.card-footer{justify-content:center;display:flex}.card-footer button{border-top:0;padding:.15rem .45rem;font-size:.62rem}.card-tooltip-layer{z-index:1000;pointer-events:none;position:fixed;inset:0}.card-tooltip{border:1px solid var(--mint);pointer-events:none;background:#030f11fc;gap:.35rem;max-height:min(420px,100vh - 20px);padding:1rem;display:grid;position:fixed;overflow:hidden auto;box-shadow:0 15px 50px #000}.card-tooltip strong{font-size:1rem}.card-tooltip small{letter-spacing:.06em;font-size:.62rem}.card-tooltip p,.card-viewer aside p{white-space:pre-wrap;color:#c4cfcb;margin:.4rem 0;font-size:.78rem;line-height:1.6}.card-tooltip em{color:var(--gold);font-size:.65rem;font-style:normal}.stacked-effect-list{gap:.55rem;display:grid}.stacked-effect-list article{border-top:1px solid #7de8d133;gap:.12rem;padding-top:.45rem;display:grid}.stacked-effect-list article b{color:#f0d99d;font-size:.72rem}.stacked-effect-list article p{margin:.15rem 0}.card-viewer{z-index:1100;-webkit-backdrop-filter:blur(9px);backdrop-filter:blur(9px);background:#000506e6;place-content:center;padding:2vh 2vw;display:grid;position:fixed;inset:0}.card-viewer>section{border:1px solid var(--mint);background:#031113;grid-template-columns:minmax(280px,.78fr) minmax(320px,1fr);gap:1.4rem;width:min(980px,96vw);height:min(92vh,840px);padding:1.2rem;display:grid;position:relative;box-shadow:0 30px 100px #000}.card-viewer-close{z-index:2;border-color:var(--gold);color:#fff;background:#102526;width:42px;height:42px;padding:0;font-size:1.7rem;line-height:1;position:absolute;top:.8rem;right:.8rem}.card-viewer-image{place-content:center;min-height:0;display:grid}.card-viewer-image img{border-radius:8px;max-width:100%;max-height:calc(92vh - 2.4rem);box-shadow:0 20px 60px #000}.card-viewer aside{align-content:start;gap:.5rem;min-height:0;padding:3rem 1rem 1rem;display:grid;overflow:auto}.card-viewer aside>strong{color:#f0d99d;font-size:1.4rem}.card-viewer aside>small{color:var(--cyan)}.drawer{z-index:100;border:1px solid var(--line);background:#051618fa;padding:1.4rem;position:fixed;overflow:auto;box-shadow:0 20px 80px #000}.drawer header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:flex-start;margin-bottom:1rem;padding-bottom:1rem;display:flex}.drawer h2{margin:.25rem 0 0;font-weight:400}.side-drawer{width:min(520px,92vw);top:82px;bottom:60px;right:0}.task-drawer,.confirm-drawer{width:min(560px,100vw - 4rem);max-height:calc(100vh - 100px);bottom:72px;right:2rem}.drawer>p{color:#8ba09d;font-size:.8rem}.drawer-cards{grid-template-columns:repeat(auto-fill,minmax(90px,1fr));gap:1rem;display:grid}.drawer-cards .card-wrap{width:100%}.empty{color:#5d7975;padding:3rem 1rem}.mini-list,.choice-grid{flex-wrap:wrap;gap:.5rem;display:flex}.mini-list button,.choice-grid button{font-size:.72rem}.mini-list button.active,.choice-grid button.active,.segmented button.active{border-color:var(--mint);color:var(--mint);background:#153d3c}.segmented{grid-template-columns:repeat(3,1fr);margin-bottom:1rem;display:grid}.receipt{grid-template-columns:repeat(3,1fr);gap:.6rem;margin-bottom:1rem;display:grid}.receipt span{color:#66827f;background:#061618;padding:.8rem;font-size:.7rem;display:grid}.receipt b{color:#fff;margin-top:.3rem}.deck-builder{z-index:150;flex-direction:column;display:flex;inset:2vh 2vw}.deck-builder>header{flex:none}.deck-builder-heading{grid-template-columns:minmax(240px,1fr) auto;align-items:end;gap:1rem;margin-bottom:.8rem;display:grid}.deck-builder-heading label input{min-width:240px}.preset-row{align-items:center;gap:.5rem;display:flex}.preset-row span{color:#789490;font-size:.72rem}.preset-row button{padding:.55rem .8rem}.deck-type-tabs{grid-template-columns:1fr 1fr;gap:.55rem;display:grid}.deck-type-tabs button{text-align:left;justify-content:space-between;align-items:center;padding:.65rem 1rem;display:flex}.deck-type-tabs button.active{border-color:var(--mint);box-shadow:inset 3px 0 var(--mint);background:linear-gradient(105deg,#2671698c,#082022cc)}.deck-type-tabs span{font-size:.9rem}.deck-type-tabs b{color:#fff;font:700 1.5rem Rajdhani}.deck-type-tabs b small{color:#82a5a1;letter-spacing:.02em;text-transform:none;font:500 .72rem Noto Sans SC,sans-serif}.deck-metrics{grid-template-columns:repeat(4,1fr);gap:.5rem;margin:.55rem 0;display:grid}.deck-metrics span{color:#66827f;background:#061618;border:1px solid #78dccd17;justify-content:space-between;align-items:baseline;padding:.45rem .65rem;font-size:.65rem;display:flex}.deck-metrics b{color:#e4efeb;font:700 1rem Rajdhani}.deck-rule-panel{border-left:2px solid var(--gold);background:#bda3650f;grid-template-columns:230px 1fr;align-items:center;gap:1rem;padding:.65rem .8rem;display:grid}.deck-rule-panel h3{margin:.15rem 0 0;font-size:.92rem;font-weight:500}.deck-rule-panel ul{color:#a6b5b1;flex-wrap:wrap;gap:.3rem 1.4rem;margin:0;padding:0;font-size:.72rem;list-style-position:inside;display:flex}.deck-rule-panel li::marker{color:var(--gold)}.validation{background:#061618;flex-wrap:wrap;gap:.4rem 1rem;margin:.55rem 0;padding:.55rem .8rem;font-size:.7rem;display:flex}.validation strong{color:var(--mint)}.validation span{color:#c89d88}.deck-workspace{flex:auto;grid-template-columns:minmax(280px,330px) 1fr;gap:.75rem;min-height:0;display:grid}.selected-deck,.deck-catalog-panel{border:1px solid var(--line);background:#020c0e6b;flex-direction:column;min-height:0;display:flex}.selected-deck>header,.deck-catalog-panel>header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;padding:.6rem .75rem;display:flex}.selected-deck h3,.deck-catalog-panel h3{margin:.1rem 0 0;font-size:.9rem;font-weight:500}.selected-deck>header>b{color:var(--mint);font:700 1.2rem Rajdhani}.deck-catalog-panel>header>span{color:#789490;font-size:.7rem}.selected-deck-list{padding:.4rem;overflow:auto}.selected-deck-list article{border-bottom:1px solid #78dccd17;grid-template-columns:48px minmax(0,1fr) auto;align-items:center;gap:.55rem;min-height:76px;padding:.4rem;display:grid}.selected-deck-list article .card-wrap{width:44px}.selected-deck-list article>div:nth-child(2){gap:.08rem;min-width:0;display:grid}.selected-deck-list article strong,.selected-deck-list article span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.selected-deck-list article strong{font-size:.75rem}.selected-deck-list article span{color:#a5b4b0;font-size:.68rem}.selected-deck-list article small{letter-spacing:.03em;font-size:.5rem}.selected-deck-list article>button,.selected-count button{padding:.3rem .45rem;font-size:.62rem}.selected-deck-list article.unknown-card{border-color:#d1895f59;grid-template-columns:1fr auto}.selected-count{align-items:center;gap:.35rem;display:flex}.selected-count b{text-align:center;width:1.2rem}.filters{grid-template-columns:2fr 1fr 1fr;gap:.5rem;padding:.55rem;display:grid}.filters input,.filters select{padding:.55rem .65rem;font-size:.72rem}.card-catalog{grid-template-columns:repeat(auto-fill,minmax(128px,1fr));align-content:start;gap:.8rem;padding:.55rem;display:grid;overflow:auto}.catalog-entry{border:1px solid #0000;align-content:start;justify-items:center;gap:.25rem;padding:.45rem .25rem;display:grid}.catalog-entry:hover{background:#0a262873;border-color:#78dccd29}.catalog-entry .card-wrap{width:84px}.catalog-entry>strong{text-overflow:ellipsis;white-space:nowrap;max-width:100%;font-size:.7rem;font-weight:500;overflow:hidden}.catalog-entry>small{text-overflow:ellipsis;white-space:nowrap;letter-spacing:.02em;max-width:100%;font-size:.48rem;overflow:hidden}.catalog-entry>div{align-items:center;gap:.55rem;display:flex}.catalog-entry button{padding:.2rem .5rem}.catalog-entry>em{color:#bb8f79;text-align:center;font-size:.55rem;font-style:normal;line-height:1.35}.deck-import-export{flex:none;margin-top:.6rem}.deck-import-export summary{color:#75a4a7;cursor:pointer;font-size:.7rem}.deck-io{grid-template-columns:1fr auto auto;gap:.5rem;margin-top:.5rem;display:grid}.deck-io textarea{resize:vertical;min-height:70px}@media (width<=800px){.landing{grid-template-columns:1fr;padding:2rem}.brand h1{font-size:4rem}.seat-grid{grid-template-columns:1fr}.lobby-actions{flex-direction:column;align-items:stretch}.battlefield{padding-inline:.5rem}.player-field{padding-right:100px}.player-summary{width:85px}.characters{gap:.4rem}.character-stack{width:82px}.action-lane{min-width:95%}.receipt{grid-template-columns:1fr}.command-bar{justify-content:flex-start;padding-inline:.5rem;overflow-x:auto}.command-bar button{white-space:nowrap}.game-header{padding-inline:1rem}.room-chip span{display:none}}.game-shell{--log-width:280px;min-height:100vh;padding:0 0 280px}.game-main{margin-left:var(--log-width);transition:margin-left .2s}.game-shell.log-is-collapsed{--log-width:0px}.battle-log{z-index:70;border-right:1px solid var(--line);background:#030f11fb;grid-template-rows:auto auto 1fr;width:280px;display:grid;position:fixed;inset:0 auto 0 0;box-shadow:12px 0 40px #00000047}.battle-log>header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;padding:1rem;display:flex}.battle-log h2{margin:.2rem 0 0;font-size:1.25rem;font-weight:400}.battle-log header button{padding:.4rem .65rem;font-size:.72rem}.motion-setting{background:#06191b;grid-template-columns:auto 1fr;align-items:center;gap:.5rem;padding:.65rem 1rem;display:flex}.motion-setting input{width:auto;padding:0}.log-list{scroll-behavior:smooth;padding:.6rem .75rem 6rem;overflow:auto}.log-list article{border-bottom:1px solid #78dccd14;border-left:2px solid #315c59;gap:.24rem;padding:.7rem .65rem;display:grid}.log-list article.log-judgment{border-left-color:var(--gold);background:#bda3650f}.log-list article.log-damage{border-left-color:#bb715b}.log-list article small{letter-spacing:.08em;font-size:.52rem}.log-list article strong{font-size:.82rem;font-weight:500}.log-list article p{color:#91a7a3;margin:0;font-size:.7rem;line-height:1.5}.log-list article div{flex-wrap:wrap;gap:.25rem;display:flex}.log-card-reference{color:#e7d9aa;text-align:left;background:#bda3650a;border:1px solid #bda36547;width:auto;padding:.12rem .28rem;font-size:.6rem;line-height:1.25}.log-card-reference:hover,.log-card-reference:focus-visible{color:var(--mint);border-color:var(--mint);background:#7de8d117;outline:none}.battle-log .unread{color:var(--mint);position:absolute;bottom:1rem;left:50%;transform:translate(-50%)}.game-header{top:0;left:var(--log-width);transition:left .2s;position:fixed;right:0}.pause-banner{top:82px;left:var(--log-width);z-index:65;margin:0;position:fixed;right:0}.battlefield{max-width:1320px;padding:94px 1.1rem 1rem}.player-field{min-height:205px;padding:.6rem 165px 74px 82px}.player-field.opponent,.player-field.opponent>*{transform:none}.player-summary{width:145px;top:.7rem;right:.7rem}.characters{gap:1rem;min-height:112px}.character-stack .upgrade-entry{border-color:var(--gold);padding:.22rem .42rem;font-size:.62rem;position:absolute;bottom:17px;right:-10px}.deck-zone{border:1px solid var(--line);text-align:center;background:#050708 url(/cards/back/action-black.png) 50%/cover no-repeat;place-content:center;width:64px;height:84px;display:grid;position:absolute;top:.7rem;left:.7rem;overflow:hidden}.deck-zone:before{content:"";background:#0007098c;position:absolute;inset:0}.deck-zone span,.deck-zone b{z-index:1;text-shadow:0 2px 5px #000;position:relative}.deck-zone span{color:#c7d7d3;font-size:.6rem}.deck-zone b{color:var(--mint);font:700 1.5rem Rajdhani}.field-zones{align-items:stretch;gap:.55rem;height:64px;display:flex;position:absolute;bottom:.45rem;left:.7rem;right:.7rem}.discard-preview{text-align:left;width:112px;color:inherit;border:1px solid var(--line);cursor:pointer;background:#0b282ad9;grid-template-rows:1fr 1fr;grid-template-columns:38px 1fr;align-items:center;gap:0 .45rem;padding:.25rem .45rem;display:grid}.discard-preview:hover,.discard-preview:focus-visible{border-color:var(--mint);outline:none}.discard-preview .card-wrap{grid-row:1/3;width:34px}.discard-preview b{color:var(--mint);font:700 1.25rem Rajdhani}.discard-preview small{font-size:.52rem}.empty-card{color:#65817e;grid-row:1/3;font-size:.56rem}.resonance-zone{border:1px solid var(--line);background:#020c0ea6;flex:1;min-width:0;display:flex}.zone-heading{border:0;border-right:1px solid var(--line);text-align:left;flex:0 0 112px;grid-template-columns:1fr auto;align-items:center;width:112px;padding:.3rem .6rem;display:grid}.zone-heading b{color:var(--mint);font:700 1.35rem Rajdhani}.zone-heading small{letter-spacing:.02em;grid-column:1/3;font-size:.47rem}.resonance-strip{flex:1;align-items:center;min-width:0;padding:.18rem .35rem;display:flex;overflow:visible}.resonance-card{cursor:pointer;flex:0 0 58px;width:58px;transition:transform .15s,margin .15s;position:relative}.resonance-card .card-wrap{width:58px}.resonance-card:hover{z-index:30;transform:translateY(-10px)}.resonance-card.selected-payment .card{outline:3px solid var(--gold)}.selection-number{z-index:60;background:var(--gold);color:#071415;border-radius:50%;place-content:center;width:24px;height:24px;font:700 .8rem Rajdhani;display:grid;position:absolute;top:-5px;right:-5px}.draft-ribbon{align-content:center;max-width:320px;display:grid}.opponent-hand-anchor{pointer-events:none;width:160px;height:28px;position:absolute;top:.4rem;left:50%}.center-line{height:104px}.action-lane{min-width:420px;min-height:82px}.hand-dock{height:220px;left:var(--log-width);transition:left .2s;bottom:60px;overflow:visible}.hand-title{flex:0 0 112px;width:112px;padding:.8rem}.hand-title b{font-size:2.8rem}.hand-title small{letter-spacing:.03em;font-size:.48rem}.hand-cards{touch-action:pan-x;justify-content:flex-start;gap:.45rem;padding:.65rem 1rem .3rem}.hand-slot{outline:none;flex:none;width:clamp(108px,8vw,132px);transition:transform .15s,opacity .15s;position:relative}.hand-slot .card-wrap{width:100%}.hand-slot.dragging{opacity:.28;transform:scale(.96)}.hand-slot.insert-before:before{content:"";z-index:70;background:var(--mint);width:3px;box-shadow:0 0 14px var(--mint);position:absolute;top:0;bottom:.4rem;left:-.28rem}.hand-slot.just-drawn{animation:1.2s handGlow}@keyframes handGlow{0%,to{filter:none}35%{filter:drop-shadow(0 0 18px var(--mint)) brightness(1.22)}}.hand-quick{z-index:55;border:1px solid var(--mint);background:#031113f5;align-items:center;gap:.45rem;padding:.45rem .55rem;display:flex;position:absolute;top:.55rem;right:1rem;box-shadow:0 8px 24px #000}.hand-quick strong{font-size:.75rem}.hand-quick span{color:#8ea39f;font-size:.62rem}.hand-quick button{padding:.35rem .55rem;font-size:.68rem}.command-bar{left:var(--log-width);transition:left .2s}.command-bar .log-open{margin-right:auto}.selection-prompt{z-index:85;left:calc(var(--log-width) + (100vw - var(--log-width)) / 2);width:min(620px, calc(100vw - var(--log-width) - 2rem));border:1px solid var(--gold);background:#041416f7;max-height:54vh;padding:1rem;position:fixed;top:50%;overflow:auto;transform:translate(-50%,-50%);box-shadow:0 24px 70px #000}.selection-prompt header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;margin-bottom:.7rem;padding-bottom:.7rem;display:flex}.selection-prompt header div{gap:.25rem;display:grid}.selection-prompt p{color:#a8b7b3;font-size:.82rem;line-height:1.6}.prompt-actions{justify-content:flex-end;gap:.5rem;display:flex}.prompt-cards{gap:.7rem;margin:.6rem 0;display:flex}.choice-grid{margin-bottom:.7rem}.public-zone-panel{z-index:120;width:min(420px,94vw);top:0;bottom:0;right:0}.zone-tabs{grid-template-columns:1fr 1fr;gap:.3rem;display:grid}.zone-tabs button{padding:.45rem;font-size:.65rem}.zone-tabs button.active{border-color:var(--mint);color:var(--mint)}.presentation-overlay{z-index:170;-webkit-backdrop-filter:blur(9px);backdrop-filter:blur(9px);background:#000809d1;place-content:center;display:grid;position:fixed;inset:0}.presentation-overlay>section{border:1px solid var(--gold);text-align:center;background:#061719;width:min(720px,100vw - 2rem);padding:2rem;box-shadow:0 30px 100px #000}.presentation-overlay h2{margin:.6rem 0;font-weight:400}.presentation-overlay p{color:#8ea5a1}.dice-sides{grid-template-columns:1fr 1fr;gap:1rem;margin:1.4rem 0;display:grid}.dice-sides article{border:1px solid var(--line);gap:.8rem;padding:1rem;display:grid}.dice-sides article>div{justify-content:center;gap:.7rem;display:flex}.dice-sides i{color:#071315;background:#d9e5df;border-radius:8px;place-content:center;width:62px;height:62px;font:700 2rem Rajdhani;display:grid}.dice-overlay.rolling .dice-sides i{animation:.28s linear infinite diceRoll}.dice-sides b{color:var(--gold);font:700 1.35rem Rajdhani}.first-choice{flex-wrap:wrap;justify-content:center;align-items:center;gap:.6rem;display:flex}.starting-roles-overlay>section{width:min(860px,100vw - 2rem);max-height:94vh;overflow:auto}.leader-options{justify-content:center;gap:1rem;margin:1.3rem 0;display:flex}.leader-options>div{border:1px solid #0000;justify-items:center;gap:.4rem;width:150px;padding:.8rem;display:grid}.leader-options>div.selected{border-color:var(--gold);background:#bda36517}.leader-options .card-wrap{width:116px}.leader-options span{color:#7f9995;font-size:.72rem}.starting-arrangement{border:1px solid var(--line);background:#020c0e80;grid-template-columns:repeat(3,minmax(100px,1fr));gap:.7rem;padding:.8rem;display:grid}.starting-arrangement article{justify-items:center;gap:.35rem;display:grid}.starting-arrangement article:nth-child(2){border-inline:1px solid var(--gold)}.starting-role-actions{justify-content:center;gap:.7rem;margin-top:1rem;display:flex}.facedown-roles{justify-content:center;gap:1rem;margin:1.5rem 0;display:flex}.facedown-roles .card-back{width:104px}@keyframes diceRoll{0%{transform:rotate(0)translateY(0)}50%{transform:rotate(18deg)translateY(-12px)}to{transform:rotate(0)translateY(0)}}.judgment-banner{z-index:160;left:calc(var(--log-width) + (100vw - var(--log-width)) / 2);width:min(650px, calc(100vw - var(--log-width) - 2rem));text-align:center;border:1px solid var(--gold);background:#041214fa;padding:1.2rem;animation:.35s both judgmentIn;position:fixed;top:50%;transform:translate(-50%,-50%);box-shadow:0 25px 90px #000}.judgment-cards{grid-template-columns:1fr 1fr;gap:1rem;margin:.9rem 0;display:grid}.judgment-cards article{place-items:center;gap:.3rem;display:grid}.judgment-cards article .card-wrap{animation:.7s .3s both cardFlip}.judgment-cards article span{color:#91a6a2;font-size:.7rem}.judgment-banner h3{color:#e7d6a4;margin:.6rem 0 .2rem}.judgment-banner p{color:var(--mint);margin:0}.no-response{color:#6d8581;border:1px dashed var(--line);place-content:center;height:92px;padding:1rem;display:grid}@keyframes judgmentIn{0%{opacity:0;transform:translate(-50%,-44%)scale(.96)}}@keyframes cardFlip{0%{opacity:0;transform:rotateY(90deg)}}.flight-layer{z-index:150;pointer-events:none;position:fixed;inset:0}.flight-card{aspect-ratio:1241/1733;opacity:0;width:60px;animation:1.05s cubic-bezier(.2,.72,.2,1) forwards flyToHand;position:fixed}.flight-card img{object-fit:cover;border-radius:4px;width:100%;height:100%}@keyframes flyToHand{0%{opacity:0;transform:scale(.7)rotate(-8deg)}15%{opacity:1}to{opacity:0;transform:translate(var(--flight-x), var(--flight-y)) scale(1.35) rotate(2deg)}}.reduced-motion *{scroll-behavior:auto!important;transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important}@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important}}@media (width<=1099px){.game-shell{--log-width:0px}.battle-log{z-index:130;width:min(320px,92vw)}.game-main{margin-left:0}.game-header,.hand-dock,.command-bar{left:0}.selection-prompt,.judgment-banner{width:min(620px,100vw - 1rem);left:50%}.deck-builder{inset:1vh 1vw}.deck-workspace{grid-template-columns:minmax(240px,290px) 1fr}}@media (height<=800px) and (width>=801px){.game-shell{padding-bottom:266px}.game-header{height:64px;padding-block:.45rem}.game-header h1{font-size:1.45rem}.game-header small{font-size:.55rem}.pause-banner{top:64px}.battlefield{padding-top:72px;padding-bottom:.3rem}.player-field{min-height:142px;padding:.3rem 152px 51px 68px}.player-summary{grid-template-columns:34px 1fr;align-items:center;gap:.15rem .35rem;width:138px;display:grid;top:.35rem;right:.45rem}.player-summary .avatar{width:34px;height:34px}.player-summary>div:nth-child(2){min-width:0}.player-summary strong{white-space:nowrap;text-overflow:ellipsis;font-size:.7rem;overflow:hidden}.player-summary .health{grid-column:1/3;width:auto;margin-top:-.2rem}.health b{font-size:1.45rem}.deck-zone{width:54px;height:60px;top:.35rem;left:.4rem}.characters{gap:.7rem;min-height:78px}.character-stack{width:82px}.character-stack .compact{width:43px}.character-stack>span{font-size:.58rem}.character-stack>small{font-size:.48rem}.character-stack .upgrade-entry{bottom:9px}.field-zones{height:47px;bottom:.25rem;left:.4rem;right:.4rem}.discard-preview{grid-template-columns:29px 1fr;width:98px}.discard-preview .card-wrap{width:27px}.zone-heading{flex-basis:100px;width:100px}.resonance-card,.resonance-card .card-wrap{width:42px}.resonance-card{flex-basis:42px}.draft-ribbon{max-width:180px;padding-inline:.45rem;font-size:.58rem;overflow:hidden}.center-line{height:72px}.action-lane{min-height:58px}.turn-medallion{width:64px;height:64px}.turn-medallion b{font-size:1.25rem}.hand-dock{height:210px;bottom:56px}.command-bar{height:56px}.hand-slot{width:clamp(108px,8vw,126px)}.pause-banner+.battlefield{padding-top:115px}.pause-banner+.battlefield .player-field{min-height:125px}.pause-banner+.battlefield .characters{min-height:61px}.pause-banner+.battlefield .center-line{height:58px}.pause-banner+.battlefield .action-lane{min-height:48px}}@media (width<=800px){.deck-builder{inset:0}.deck-builder-heading,.deck-rule-panel,.deck-workspace{grid-template-columns:1fr}.deck-builder-heading{align-items:stretch}.preset-row{flex-wrap:wrap}.deck-metrics{grid-template-columns:1fr 1fr}.deck-rule-panel{gap:.4rem}.deck-rule-panel ul{gap:.25rem;display:grid}.deck-workspace{flex:initial;overflow:visible}.selected-deck{max-height:42vh}.deck-catalog-panel{min-height:65vh}.filters{grid-template-columns:1fr}.deck-type-tabs button{gap:.15rem;display:grid}.deck-io{grid-template-columns:1fr 1fr}.deck-io textarea{grid-column:1/3}.game-shell{padding-bottom:260px}.battlefield{padding:90px .35rem .5rem}.player-field{min-height:190px;padding:.4rem 94px 68px 58px}.player-summary{width:86px}.deck-zone{width:48px;height:68px}.characters{gap:.2rem}.character-stack{width:75px}.character-stack .compact{width:48px}.field-zones{left:.3rem;right:.3rem}.discard-preview{grid-template-columns:28px 1fr;width:82px;padding:.2rem}.discard-preview .card-wrap{width:26px}.zone-heading{flex-basis:74px;width:74px;padding:.2rem}.zone-heading small{display:none}.center-line{height:90px}.action-lane{min-width:94%}.turn-medallion{right:3%}.hand-dock{height:200px}.hand-title{flex-basis:74px;width:74px}.hand-slot{width:108px}.hand-quick{top:-48px;left:78px;right:auto}.command-bar{height:60px}.dice-sides{grid-template-columns:1fr}.public-zone-panel{width:94vw}.draft-ribbon{display:none}.leader-options{gap:.25rem}.leader-options>div{width:31%;padding:.35rem}.leader-options .card-wrap{width:82px}.starting-arrangement{gap:.25rem;padding:.4rem}.starting-role-actions{flex-direction:column;align-items:stretch}}.room-share{border:1px solid var(--gold);text-align:center;background:radial-gradient(circle at 50% 0,#bda3652e,#031113f5 62%);grid-template-columns:1fr auto;align-items:center;gap:.55rem 1.2rem;width:min(720px,100%);margin:2.2rem auto 0;padding:1.35rem 1.6rem;display:grid;box-shadow:0 18px 55px #0006,0 0 32px #bda3651f}.room-share small{color:var(--gold);letter-spacing:.28em;grid-column:1/-1}.room-share strong{color:#f2e4bc;letter-spacing:.2em;text-shadow:0 0 25px #f0cc6d42;font:700 clamp(2.8rem,6vw,5.2rem)/1 Rajdhani,sans-serif}.room-share button{min-width:170px}.room-share p{color:var(--mint);overflow-wrap:anywhere;grid-column:1/-1;margin:.15rem 0 0;font-size:.72rem}.seat-grid{margin-block:3.4vh}.seat-grid article.vacant{opacity:.68;border-style:dashed}.invite-prefill{border:1px solid var(--gold);background:#bda36514;justify-items:center;gap:.25rem;padding:.9rem;display:grid}.invite-prefill small{color:var(--gold);letter-spacing:.18em}.invite-prefill strong{color:#f3e5ba;letter-spacing:.18em;font:700 2.2rem Rajdhani,sans-serif}.dialog-scrim{z-index:800;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#000607d1;place-content:center;padding:1rem;display:grid;position:fixed;inset:0}.confirm-dialog{border:1px solid var(--gold);background:#041719;width:min(560px,100vw - 2rem);padding:1.25rem;box-shadow:0 26px 90px #000}.confirm-dialog h2{color:#f0d99d;margin:0 0 .6rem;font-weight:400}.confirm-dialog p{color:#a4b6b2;line-height:1.65}.confirm-dialog>div{justify-content:flex-end;gap:.6rem;display:flex}.stage-controls{z-index:58;pointer-events:none;gap:.55rem;width:150px;display:grid;position:fixed;top:51%;right:clamp(20px,4vw,72px);transform:translateY(-50%)}.stage-controls:empty{display:none}.stage-controls button{pointer-events:auto;border-color:var(--gold);background:#051517f5;min-height:52px;padding:.65rem .9rem;font-weight:700;box-shadow:0 12px 34px #0000009e,0 0 22px #bda3651f}.phase-status-notice{z-index:4;pointer-events:none;text-align:center;background:#031113f0;border:1px solid #7de8d173;justify-items:center;gap:.12rem;width:min(260px,100% - 150px);padding:.4rem .6rem;display:grid;position:absolute;top:50%;left:calc(50% - 65px);transform:translate(-50%,-50%);box-shadow:0 9px 26px #00000080}.phase-status-notice small{color:var(--gold);letter-spacing:.18em}.phase-status-notice strong{color:#e7f2ef}.phase-status-notice span{color:#8ea7a2;font-size:.6rem}.phase-status-notice.own{border-color:var(--gold)}.phase-prompt-stage{border-color:var(--gold);background:#121912f0}.phase-prompt-stage>small{color:var(--gold);letter-spacing:.2em}.reduced-motion .phase-prompt-stage{animation:none}.initiative-result-stage{z-index:170}.initiative-badge{border:1px solid var(--gold);color:#f3e4b7;letter-spacing:.12em;background:#bda3651f;margin-bottom:.5rem;padding:.35rem .7rem;display:inline-block}.game-over-overlay section{gap:.7rem;display:grid}.game-over-overlay section>button{width:100%}.game-over-overlay section>p{margin:0}@media (width<=1099px){.stage-controls{width:132px;right:12px}}@media (width<=800px){.lobby-page{padding:1rem}.room-share{grid-template-columns:1fr;margin-top:1rem;padding:1rem}.room-share strong{letter-spacing:.12em}.room-share button{width:100%}.seat-grid{margin-block:1rem}.stage-controls{width:116px;top:49%;right:7px}.stage-controls button{min-height:46px;padding:.48rem;font-size:.65rem}.phase-status-notice{width:min(230px,100% - 120px);padding:.32rem .45rem;left:calc(50% - 38px)}}.game-main{min-height:0}.game-header{height:68px;padding-block:.55rem}.game-header h1{font-size:1.55rem}.battlefield{isolation:isolate;background:linear-gradient(#020c0e6b,#020a0cbd),url(/board/duel-board.webp) 50%/cover no-repeat;grid-template-rows:minmax(155px,1fr) 92px minmax(155px,1fr);max-width:none;height:calc(100dvh - 280px);min-height:430px;padding:76px clamp(.5rem,1.4vw,1.4rem) .55rem;display:grid;position:relative;overflow:hidden}.battlefield:before{content:"";z-index:-1;border:1px solid #7de8d11c;position:absolute;inset:6% 9%;transform:perspective(900px)rotateX(57deg);box-shadow:inset 0 0 110px #50dcc20e}.player-field,.player-field.opponent{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:linear-gradient(100deg,#05191bb8,#020c0e6b);height:100%;min-height:0;padding:.4rem 152px 51px 66px;transform:none}.player-field.opponent>*{transform:none}.characters{align-items:center;gap:clamp(.45rem,1.7vw,1.2rem);height:100%;min-height:92px}.character-stack{width:clamp(82px,7vw,108px);padding:.22rem}.character-stack .compact{width:clamp(48px,4.2vw,62px)}.character-stack.leader{box-shadow:0 0 24px #bda36521,inset 0 0 28px #bda3650d}.center-line{height:92px;min-height:0}.action-lane{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#020d0fc2;min-width:min(430px,78%);min-height:76px}.turn-medallion{width:76px;height:76px;right:calc(50% - 205px)}.turn-medallion b{font-size:1.5rem}.player-summary{top:.45rem;right:.55rem}.deck-zone{height:70px;top:.45rem;left:.55rem}.field-zones{height:46px;bottom:.3rem;left:.5rem;right:.5rem}.discard-preview{grid-template-columns:31px 1fr;width:104px}.discard-preview .card-wrap{width:29px}.zone-heading{flex-basis:105px;width:105px}.resonance-card,.resonance-card .card-wrap{width:44px}.resonance-card{flex-basis:44px}.hand-dock{height:220px;bottom:60px}.hand-cards{justify-content:flex-start}.hand-slot{width:clamp(108px,8vw,132px)}.selection-prompt.focus-prompt{width:min(560px, calc(100vw - var(--log-width) - 2rem));-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#031113f5;max-height:205px;padding:.75rem .9rem;top:13%;overflow:auto;transform:translate(-50%)}.selection-prompt.focus-prompt header{margin-bottom:.4rem;padding-bottom:.42rem}.selection-prompt.focus-prompt p{margin:0 0 .5rem;line-height:1.45}.focus-card-tray{z-index:82;left:var(--log-width);background:linear-gradient(#031113ed,#01080afa);border-block:1px solid #7de8d161;height:232px;padding:.65rem 1rem .8rem;position:fixed;bottom:280px;right:0;box-shadow:0 -10px 35px #0000006b,0 14px 40px #0009}.focus-card-tray>header{justify-content:space-between;align-items:center;gap:1rem;height:34px;display:flex}.focus-card-tray>header div{align-items:baseline;gap:.8rem;display:flex}.focus-card-tray>header small{font-size:.52rem}.focus-card-tray>header strong{font-size:.8rem}.focus-card-tray>header span{color:var(--gold);font:700 .85rem Rajdhani,sans-serif}.focus-card-list{align-items:flex-start;gap:.65rem;height:184px;padding:.3rem .4rem 0;display:flex;overflow:auto hidden}.focus-card-option{flex:0 0 108px;position:relative}.focus-card-option.disabled em{z-index:4;color:#efb49c;text-align:center;background:#32110eeb;padding:.22rem;font-size:.55rem;font-style:normal;line-height:1.3;position:absolute;inset:auto .2rem .3rem}.timeline-stage{z-index:155;left:calc(var(--log-width) + (100vw - var(--log-width)) / 2);min-width:210px;max-width:min(520px, calc(100vw - var(--log-width) - 2rem));text-align:center;pointer-events:none;background:#031012d6;border:1px solid #7de8d173;place-items:center;gap:.35rem;padding:.75rem 1rem;animation:.24s both timelineStageIn;display:grid;position:fixed;top:48%;transform:translate(-50%,-50%);box-shadow:0 18px 55px #0000009e,0 0 35px #5ce0c71a}.timeline-stage>div{justify-content:center;gap:.4rem;display:flex}.timeline-stage>p{color:#9ab0ac;margin:0;font-size:.72rem}.timeline-stage .card-wrap{width:64px}.draft-stage{min-width:190px;padding-block:.55rem}.judgment-banner{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#041214e8;top:48%}@keyframes timelineStageIn{0%{opacity:0;transform:translate(-50%,-42%)scale(.96)}}@media (width<=1099px){.focus-card-tray{left:0}.timeline-stage{max-width:calc(100vw - 1rem);left:50%}}@media (height<=800px) and (width>=801px){.battlefield{grid-template-rows:minmax(136px,1fr) 72px minmax(136px,1fr);height:calc(100dvh - 276px);min-height:0;padding-top:70px}.player-field,.player-field.opponent{min-height:0}.hand-dock{height:220px;bottom:56px}.focus-card-tray{height:216px;bottom:266px}.focus-card-list{height:168px}.selection-prompt.focus-prompt{top:9%}}@media (width<=800px){.game-shell{padding-bottom:280px}.battlefield{grid-template-rows:190px 84px 190px;height:auto;min-height:calc(100dvh - 280px);padding-top:72px;overflow:auto}.player-field,.player-field.opponent{min-height:190px}.focus-card-tray{height:220px;padding-inline:.45rem;bottom:280px;left:0}.focus-card-list{height:174px}.focus-card-option,.focus-card-option .card-wrap{flex-basis:100px;width:100px}.selection-prompt.focus-prompt{width:calc(100vw - .7rem);max-height:190px;top:70px}.timeline-stage{top:43%}}button:disabled{opacity:.38;filter:grayscale(.65);cursor:not-allowed}.focus-scrim{z-index:80;-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px);background:#0007087a;position:fixed;inset:0}.selection-prompt.focus-prompt{z-index:92;width:min(680px, calc(100vw - var(--log-width) - 2rem));max-height:250px;top:9%}.focus-card-tray{z-index:90;height:clamp(250px,32vh,310px)}.focus-card-list{gap:.85rem;height:calc(100% - 38px);padding-top:.45rem}.focus-card-option{flex-basis:clamp(126px,10vw,150px)}.focus-card-option .card-wrap{width:clamp(126px,10vw,150px)}.focus-card-option.disabled{filter:grayscale(.9)brightness(.42)}.public-return-card,.public-confirm-cards{place-content:center;gap:.8rem;margin:.6rem 0;display:flex}.public-return-card .card-wrap,.public-confirm-cards .card-wrap{width:142px}.task-origin{color:var(--mint);margin-bottom:.25rem;font-size:.68rem;font-weight:600;display:block}.selection-prompt.focus-prompt.inspection-prompt{width:min(920px, calc(100vw - var(--log-width) - 2rem));flex-direction:column;height:min(72dvh,640px);max-height:min(72dvh,640px);display:flex;top:50%;overflow:hidden;transform:translate(-50%,-50%)}.inspection-prompt>header,.inspection-prompt>p,.inspection-prompt>.prompt-actions{flex:none}.inspection-prompt .prompt-cards,.inspection-prompt .public-confirm-cards{background:#010a0c9e;border-block:1px solid #7de8d12e;flex:auto;justify-content:flex-start;align-items:flex-start;height:clamp(260px,42dvh,420px);min-height:260px;padding:.65rem;overflow:auto hidden}.inspection-prompt .public-confirm-cards{justify-content:center}.inspection-prompt .prompt-cards .card-wrap,.inspection-prompt .public-confirm-cards .card-wrap{flex:none;width:clamp(126px,10vw,150px)}.inspection-prompt .prompt-actions{margin-top:.65rem}.focus-resume{z-index:145;text-align:left;border:1px solid var(--gold);color:#f3e4b7;background:linear-gradient(135deg,#1a3d39,#0a1d1e);grid-template-rows:1fr 1fr;grid-template-columns:46px 1fr;align-items:center;gap:0 .65rem;width:220px;min-height:64px;padding:.65rem .8rem;animation:1.8s ease-in-out infinite focusResumePulse;display:grid;position:fixed;bottom:76px;right:24px;box-shadow:0 0 0 2px #bda3651f,0 10px 35px #000000bf,0 0 28px #7de8d133}.focus-resume small{background:var(--gold);color:#061416;border-radius:50%;grid-row:1/3;place-content:center;width:42px;height:42px;font:700 .85rem Rajdhani,sans-serif;display:grid}.focus-resume strong{align-self:end;font-size:.78rem}.focus-resume span{color:var(--mint);align-self:start;font-size:.58rem}@keyframes focusResumePulse{50%{border-color:var(--mint);box-shadow:0 0 0 3px #7de8d121,0 12px 38px #000c,0 0 38px #7de8d14d}}.hand-card-actions{z-index:196;border:1px solid var(--mint);background:#031113fa;flex-wrap:wrap;justify-content:center;align-items:center;gap:.35rem;min-width:190px;max-width:min(300px,100vw - 16px);padding:.48rem;display:flex;position:fixed;bottom:auto;transform:translate(-50%,-100%);box-shadow:0 12px 32px #000}.hand-card-actions:after{content:"";border-right:1px solid var(--mint);border-bottom:1px solid var(--mint);background:#071b1d;width:12px;height:12px;position:absolute;bottom:-7px;left:50%;transform:translate(-50%)rotate(45deg)}.hand-card-actions strong{text-overflow:ellipsis;white-space:nowrap;text-align:center;flex-basis:100%;font-size:.7rem;overflow:hidden}.hand-card-actions button{min-width:70px;padding:.38rem .55rem;font-size:.68rem}.hand-card-actions em{color:#e2a58e;text-align:center;flex-basis:100%;font-size:.56rem;font-style:normal;line-height:1.35}.character-stack.leader{z-index:4;background:radial-gradient(circle,#f0cc6d33,#bda3650d 65%,#0000);border-color:#f0cc6d;animation:2.1s ease-in-out infinite leaderAura;transform:translateY(-5px)scale(1.07);box-shadow:0 0 0 2px #f0cc6d33,0 0 30px #f0cc6d7a,inset 0 0 32px #f0cc6d24}.character-stack.leader:before{content:"";z-index:-1;filter:drop-shadow(0 0 8px #f0cc6db3);border:1px solid #f0cc6d8c;border-radius:50%;position:absolute;inset:-10px}.character-stack>i{color:#081313;letter-spacing:.12em;background:linear-gradient(90deg,#c8a44d,#f1d98e,#c8a44d);border-color:#f5dea1;font-weight:800;display:block;bottom:-4px;right:50%;transform:translate(50%)}.character-stack.leader-draggable{cursor:grab;-webkit-user-select:none;user-select:none}.character-stack.leader-draggable:active,.character-stack.leader-dragging{cursor:grabbing}.character-stack.leader-dragging{opacity:.62;transform:translateY(-3px)scale(.98)}.character-stack .leader-switch-entry{border-color:var(--mint);padding:.22rem .4rem;font-size:.58rem;position:absolute;bottom:15px;left:-12px}.character-stack .upgrade-entry{bottom:15px;right:-12px}.character-stack.leader:before{pointer-events:none}.character-stack .character-actions{z-index:24;white-space:nowrap;justify-content:center;gap:.22rem;min-height:25px;margin-top:.16rem;display:flex;position:relative}.character-stack .character-actions .leader-switch-entry,.character-stack .character-actions .upgrade-entry{pointer-events:auto;padding:.24rem .38rem;font-size:.56rem;line-height:1.15;position:static;inset:auto;transform:none}:is(.character-stack:has(.character-actions:hover),.character-stack:has(.character-actions:focus-within)){z-index:26}@keyframes leaderAura{50%{box-shadow:0 0 0 3px #f0cc6d42,0 0 44px #f0cc6da8,inset 0 0 40px #f0cc6d33}}.processing-task-badge{text-align:left;background:#231b09f0;border:1px solid #f0cc6db3;gap:.12rem;width:clamp(190px,19vw,285px);padding:.38rem .5rem;animation:1.8s ease-in-out infinite processingTaskPulse;display:grid;position:absolute;top:0;right:146px;box-shadow:0 0 22px #f0cc6d2e}.processing-task-badge b{color:#f1d98e;letter-spacing:.1em;font-size:.58rem}.processing-task-badge span{color:#d6e2de;font-size:.56rem;line-height:1.35}@keyframes processingTaskPulse{50%{border-color:var(--mint);box-shadow:0 0 28px #7de8d13d}}.public-task-notice{z-index:78;left:calc(var(--log-width) + (100vw - var(--log-width)) / 2);width:min(560px, calc(100vw - var(--log-width) - 2rem));border:1px solid var(--gold);text-align:center;background:#031113f0;justify-items:center;gap:.42rem;padding:.8rem 1rem;display:grid;position:fixed;top:46%;transform:translate(-50%,-50%);box-shadow:0 18px 60px #000000b3}.public-task-notice>small{color:var(--gold);letter-spacing:.12em}.public-task-notice>strong{color:#e9f2ef}.public-task-notice>p{color:#9fb2ae;margin:0;font-size:.7rem}.public-task-notice>div{justify-content:center;gap:.55rem;display:flex}.public-task-notice .card-wrap{width:92px}.public-task-notice>b{color:var(--mint);font-size:.7rem}.opponent-hand-zone{z-index:8;pointer-events:none;background:#020e10e0;border:1px solid #7de8d157;grid-template-rows:1fr 1fr;grid-template-columns:1fr 34px;align-items:center;width:118px;height:42px;padding:.2rem .35rem;display:grid;position:absolute;top:.28rem;left:50%;transform:translate(-50%);box-shadow:0 7px 20px #00000073}.opponent-hand-zone>div{grid-row:1/3;height:34px;position:relative}.opponent-hand-zone>div span{background:#050708 url(/cards/back/action-black.png) 50%/cover no-repeat;border:1px solid #4f7e79;border-radius:2px;width:23px;height:32px;display:block;position:absolute;top:1px;left:2px}.opponent-hand-zone b{color:var(--mint);text-align:right;align-self:end;font:700 1.15rem/1 Rajdhani,sans-serif}.opponent-hand-zone small{color:#78928e;text-align:right;align-self:start;font-size:.48rem}.turn-transition-stage{z-index:165;left:calc(var(--log-width) + (100vw - var(--log-width)) / 2);width:min(680px, calc(100vw - var(--log-width) - 2rem));border-block:1px solid var(--gold);text-align:center;pointer-events:none;background:linear-gradient(90deg,#0000,#031214f0 15%,#081f1ffa 50%,#031214f0 85%,#0000);place-content:center;justify-items:center;gap:.5rem;min-height:190px;animation:.45s both turnTransitionIn;display:grid;position:fixed;top:49%;overflow:hidden;transform:translate(-50%,-50%);box-shadow:0 0 70px #000000ad}.turn-transition-stage:before,.turn-transition-stage:after{content:"";border:1px solid #bda3653d;width:180px;height:180px;position:absolute;transform:rotate(45deg)}.turn-transition-stage:before{left:-105px}.turn-transition-stage:after{right:-105px}.turn-transition-stage small{color:var(--gold);letter-spacing:.34em}.turn-transition-stage strong{color:#f4e6bd;letter-spacing:.08em;font:500 2rem Rajdhani,sans-serif}.turn-transition-stage span{color:#a8bbb7}.turn-transition-stage b{color:var(--mint);font-size:.78rem}@keyframes turnTransitionIn{0%{opacity:0;transform:translate(-50%,-50%)scaleX(.75)}}.reduced-motion .character-stack.leader,.reduced-motion .focus-resume,.reduced-motion .processing-task-badge{animation:none}@media (width<=1099px){.selection-prompt.focus-prompt{width:min(680px,100vw - 1rem)}.turn-transition-stage{width:min(680px,100vw - 1rem);left:50%}.public-task-notice{width:min(560px,100vw - 1rem);left:50%}}@media (height<=800px) and (width>=801px){.focus-card-tray{height:clamp(240px,31vh,260px)}.focus-card-list{height:calc(100% - 38px)}.focus-card-option,.focus-card-option .card-wrap{flex-basis:126px;width:126px}.selection-prompt.focus-prompt{max-height:175px;top:42px}}@media (width<=800px){.selection-prompt.focus-prompt{max-height:240px;top:66px}.focus-card-tray{height:250px;bottom:260px}.focus-card-list{height:204px}.focus-card-option,.focus-card-option .card-wrap{flex-basis:118px;width:118px}.focus-resume{width:196px;min-height:58px;bottom:70px;right:8px}.hand-card-actions{min-width:174px}.opponent-hand-zone{width:104px;left:46%}.turn-transition-stage strong{font-size:1.6rem}.processing-task-badge{z-index:45;width:min(270px,100vw - .8rem);position:fixed;top:74px;right:.4rem}.public-task-notice{top:42%}.selection-prompt.focus-prompt.inspection-prompt{width:calc(100vw - .7rem);height:min(72dvh,560px);max-height:min(72dvh,560px);top:50%}.inspection-prompt .prompt-cards,.inspection-prompt .public-confirm-cards{height:min(42dvh,340px);min-height:220px}.inspection-prompt .prompt-cards .card-wrap,.inspection-prompt .public-confirm-cards .card-wrap{width:clamp(110px,31vw,126px)}.connection-fallback{grid-template-columns:1fr}.connection-fallback button{grid-area:auto/1}}.character-stack.leader{background-color:#bda36514;background-image:radial-gradient(circle,#f0cc6d33,#bda3650d 65%,#0000),url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='48' viewBox='0 0 180 48'%3E%3Ctext x='90' y='34' text-anchor='middle' fill='%23f0cc6d' fill-opacity='.22' font-family='sans-serif' font-size='25' font-weight='700' letter-spacing='4'%3ELEADER%3C/text%3E%3C/svg%3E");background-position:50%,center bottom 28px;background-repeat:no-repeat,no-repeat;background-size:auto,112px}.character-stack>i{display:none!important}.game-header-actions{align-items:center;gap:.45rem;display:flex}.game-header-actions>button{padding:.48rem .7rem;font-size:.66rem}.game-header-actions .room-chip{margin-right:.35rem}.pause-banner{justify-content:center;align-items:center;gap:1rem;display:flex}.pause-banner button{padding:.35rem .65rem}.settings-overlay,.confirm-overlay,.game-over-overlay{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#000607cc;place-content:center;padding:1rem;display:grid;position:fixed;inset:0}.settings-overlay{z-index:620}.confirm-overlay{z-index:720}.game-over-overlay{z-index:520}.settings-overlay>section,.confirm-overlay>section,.game-over-overlay>section{border:1px solid var(--gold);background:#041719;width:min(560px,100vw - 2rem);padding:1.25rem;box-shadow:0 26px 90px #000}.settings-overlay header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:flex-start;padding-bottom:.8rem;display:flex}.settings-overlay h2,.confirm-overlay h2,.game-over-overlay h2{margin:.25rem 0;font-weight:400}.settings-list{grid-template-columns:1fr 1fr;gap:.55rem;margin:1rem 0;display:grid}.settings-list label{border:1px solid var(--line);background:#061e1fa6;align-items:center;gap:.6rem;padding:.65rem;display:flex}.settings-list input{width:auto}.settings-overlay p,.confirm-overlay p,.game-over-overlay p{color:#a4b6b2;line-height:1.65}.confirm-overlay section>div{justify-content:flex-end;gap:.6rem;display:flex}.game-over-overlay section{text-align:center}.game-over-overlay small{color:var(--gold);letter-spacing:.3em}.game-over-overlay h2{color:#f0d99d;font-size:2rem}.game-over-overlay>section{animation:.45s both gameResultIn}.game-result-resume{z-index:510;text-align:left;color:#f3e4b7;border:1px solid var(--gold);background:linear-gradient(135deg,#1d332e,#08191b);grid-template-columns:1fr;gap:.12rem;width:220px;min-height:64px;padding:.65rem .85rem;animation:1.8s ease-in-out infinite focusResumePulse;display:grid;position:fixed;bottom:76px;right:24px;box-shadow:0 0 0 2px #bda36524,0 12px 38px #000c,0 0 30px #f0cc6d33}.game-result-resume small{color:var(--mint);letter-spacing:.16em;font-size:.56rem}.game-result-resume strong{font-size:.82rem}.game-result-resume span{color:#9fb1ad;font-size:.58rem}@keyframes gameResultIn{0%{opacity:0;transform:translateY(18px)scale(.96)}}.effect-trigger-stage{width:min(520px, calc(100vw - var(--log-width) - 2rem));border-color:var(--gold);background:#121912f0;padding:1rem 1.2rem}.effect-trigger-stage>small{color:var(--gold);letter-spacing:.2em}.effect-trigger-stage>strong{color:#f0d99d}.effect-trigger-stage>.card-wrap{width:86px}.draw-stage{min-width:300px}.draw-stage.source-effect_draw{border-color:var(--gold);box-shadow:0 18px 55px #0000009e,0 0 42px #f0cc6d33}.draw-stage>small{color:var(--mint);letter-spacing:.16em}@media (width<=800px){.game-header{padding-inline:.7rem}.game-header h1{font-size:1.05rem}.game-header-actions .room-chip{display:none}.game-header-actions>button{padding:.4rem .48rem}.settings-list{grid-template-columns:1fr}.card-viewer{padding:.4rem}.card-viewer>section{grid-template-rows:minmax(250px,52vh) 1fr;grid-template-columns:1fr;gap:.5rem;width:calc(100vw - .8rem);height:calc(100vh - .8rem);padding:.7rem}.card-viewer-image img{max-height:50vh}.card-viewer aside{padding:.5rem}.card-viewer-close{top:.4rem;right:.4rem}.effect-trigger-stage{width:calc(100vw - 1rem);left:50%}.game-result-resume{width:196px;min-height:58px;bottom:70px;right:8px}}.battlefield{grid-template-rows:minmax(130px,1fr) 168px minmax(130px,1fr)}.center-line{grid-template-columns:minmax(0,1fr) 78px;justify-content:stretch;align-items:center;gap:.65rem;height:168px;min-height:0;padding:.35rem clamp(170px,16vw,220px) .35rem clamp(168px,18vw,240px);display:grid}.contest-board{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#020d0fdb;border:1px solid #bda36559;grid-template-rows:minmax(0,1fr) 1px minmax(0,1fr);justify-self:center;width:100%;min-width:0;max-width:760px;height:100%;display:grid;overflow:hidden;box-shadow:0 12px 32px #0000005c}.contest-track{border-left:3px solid #0000;grid-template-columns:112px minmax(0,1fr);align-items:stretch;min-width:0;min-height:0;display:grid}.contest-track.upper{border-left-color:var(--gold);background:linear-gradient(90deg,#bda36524,#0000 58%)}.contest-track.lower{border-left-color:var(--mint);background:linear-gradient(90deg,#7de8d11f,#0000 58%)}.contest-track>header{border-right:1px solid #bda36533;align-content:center;gap:.08rem;min-width:0;padding:.25rem .55rem;display:grid}.contest-track>header small{color:#9eb1ad;letter-spacing:.18em;font-size:.52rem}.contest-track.upper>header small{color:#d5bd80}.contest-track.lower>header small{color:var(--mint)}.contest-track>header strong{color:#e5eeeb;text-overflow:ellipsis;white-space:nowrap;font-size:.68rem;overflow:hidden}.contest-cards{scrollbar-width:thin;scrollbar-color:#7de8d159 transparent;justify-content:center;align-items:center;gap:.4rem;min-width:0;min-height:0;padding:.2rem .55rem;display:flex;overflow:auto hidden}.contest-card{background:#020c0e57;border:1px solid #0000;flex:none;align-content:center;justify-items:center;gap:.08rem;min-width:48px;height:100%;padding:.1rem .18rem;display:grid}.contest-card.current{background:#bda3651a;border-color:#f0cc6d8c}.contest-card.revealed{border-color:#7de8d19e;box-shadow:inset 0 0 12px #7de8d114}.contest-card .card-wrap.compact,.contest-card>.card-back{width:44px}.contest-card>small{color:#8ba09c;white-space:nowrap;font-size:.46rem;line-height:1}.contest-card.current>small{color:#ead89f}.contest-card.revealed>small{color:var(--mint)}.contest-empty{color:#5e7774;letter-spacing:.1em;align-self:center;font-size:.58rem}.contest-divider{z-index:2;background:linear-gradient(90deg,#0000,#f0cc6dd9 20%,#7de8d1d9 80%,#0000);height:1px;position:relative}.contest-divider span{color:#cdbb89;letter-spacing:.18em;white-space:nowrap;background:#071719;border-inline:1px solid #f0cc6d8c;padding:.08rem .55rem;font-size:.47rem;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.center-line .turn-medallion{justify-self:center;width:76px;height:76px;position:static}.center-line .phase-status-notice{width:clamp(145px,15vw,210px);left:clamp(.4rem,2vw,1.2rem);transform:translateY(-50%)}@media (height<=800px) and (width>=801px){.battlefield{grid-template-rows:minmax(120px,1fr) 150px minmax(120px,1fr)}.center-line{height:150px;padding-block:.25rem}.contest-card .card-wrap.compact,.contest-card>.card-back{width:40px}.contest-card{min-width:44px}.center-line .turn-medallion{width:68px;height:68px}}@media (width<=800px){.battlefield{grid-template-rows:minmax(120px,1fr) 188px minmax(120px,1fr)}.center-line{grid-template-rows:minmax(0,1fr) auto;grid-template-columns:minmax(0,1fr) 58px;gap:.25rem;height:188px;padding:.25rem 124px .25rem .25rem}.contest-board{grid-area:1/1}.contest-track{grid-template-columns:62px minmax(0,1fr)}.contest-track>header{padding-inline:.28rem}.contest-track>header small{letter-spacing:.08em;font-size:.43rem}.contest-track>header strong{font-size:.55rem}.contest-cards{justify-content:flex-start;gap:.25rem;padding-inline:.3rem}.contest-card{min-width:42px;padding-inline:.08rem}.contest-card .card-wrap.compact,.contest-card>.card-back{width:38px}.contest-card>small{font-size:.4rem}.contest-divider span{padding-inline:.3rem;font-size:.4rem}.center-line .turn-medallion{grid-area:1/2;width:56px;height:56px;position:static}.center-line .turn-medallion span{font-size:.46rem}.center-line .phase-status-notice{grid-area:2/1/auto/3;width:100%;padding:.25rem .35rem;position:static;transform:none}.center-line .phase-status-notice span{display:none}}.player-summary{z-index:12}.health{flex-wrap:wrap;position:relative}.health span{white-space:nowrap;font-size:.58rem}.health em{color:#8de8c9;letter-spacing:.08em;flex-basis:100%;font-size:.52rem;font-style:normal;font-weight:700}.health.overhealed b{color:#f1d67d;text-shadow:0 0 14px #f0cc6d85}.health.overhealed span{color:#9fbd9f}.field-health-presentation{z-index:18;color:#ff9d8b;pointer-events:none;background:#140808f0;border:1px solid;gap:.12rem;width:min(250px,100% - 1.1rem);padding:.52rem .7rem;animation:.36s both fieldHealthNotice;display:grid;position:absolute;top:76px;right:.55rem;box-shadow:0 12px 34px #0000008f,0 0 26px #ff59482e}.field-health-presentation.heal{color:#88e8c8;background:#041e18f2;box-shadow:0 12px 34px #0000008f,0 0 28px #52e7b833}.field-health-presentation small{color:currentColor;letter-spacing:.12em;font-size:.52rem}.field-health-presentation strong{color:#f4efdf;font-size:.8rem}.field-health-presentation span{font:700 1.25rem/1 Rajdhani,sans-serif}.field-health-presentation em{color:#a7b8b4;font-size:.52rem;font-style:normal}.player-field.health-event-damage{animation:.65s both fieldDamageFlash}.player-field.health-event-heal{animation:.75s both fieldHealFlash}@keyframes fieldHealthNotice{0%{opacity:0;transform:translate(18px)scale(.96)}}@keyframes fieldDamageFlash{35%{border-color:#ff765f;box-shadow:inset 0 0 52px #ff47323d}}@keyframes fieldHealFlash{40%{border-color:#77e5bd;box-shadow:inset 0 0 52px #46e0af33}}.reduced-motion .field-health-presentation,.reduced-motion .player-field.health-event-damage,.reduced-motion .player-field.health-event-heal{animation:none}@media (width<=800px){.health b{font-size:1.5rem}.health span{font-size:.48rem}.health em{letter-spacing:.03em;font-size:.44rem}.field-health-presentation{width:min(185px,100% - .6rem);padding:.4rem .5rem;top:70px;right:.3rem}.field-health-presentation strong{font-size:.68rem}.field-health-presentation span{font-size:1rem}.field-health-presentation em{font-size:.45rem}}
