
/* Painel único de detalhes para Peões, Efeitos e Arena */
.global-arena{cursor:pointer;transition:.2s}.global-arena:hover{filter:brightness(1.25);transform:translateY(-1px)}.effect-card.selected{outline:2px solid #f0c66d;outline-offset:2px;transform:translateY(-2px)}.effect-detail .effect-art{background:radial-gradient(circle at 50% 40%,#9b7348,#29212d);color:#ffe2a1}.effect-detail .effect-art span{font-size:48px;filter:drop-shadow(0 4px 5px #0008)}.effect-detail .full-effect{margin:10px 14px;padding:9px;border:1px solid #b5a485;background:#e6dcc9;font-size:10px;line-height:1.4}.play-card-btn{margin:5px auto 9px;padding:8px 13px;font-size:9px}.arena-status{color:#76512b;font:700 7px Arial!important;letter-spacing:1px}.right-panel .unit-card.effect-detail{min-height:230px}.piece.fusion-material{outline:3px solid #f4c34f;outline-offset:3px;box-shadow:0 0 18px #f3bb39}
.movement-label{margin-top:2px;color:#746958;font:700 7px Arial;letter-spacing:1.5px}.movement-preview{width:56px;margin:3px auto 5px;display:grid;grid-template-columns:repeat(7,6px);grid-auto-rows:6px;gap:1px;padding:3px;background:#302a35;border:1px solid #8e7c59}.movement-preview span{background:#d5ccba;border:1px solid #ffffff20}.movement-preview .reach{background:#d5a947;box-shadow:inset 0 0 0 1px #ffe29a}.movement-preview .origin{background:#7b3040;border-radius:50%;box-shadow:0 0 4px #e1a5af}

/* Escolha manual do novo portador da Espada Maldita */
.sword-transfer{position:fixed;inset:0;z-index:190;display:grid;place-items:center;background:#10080deF;color:#f6e8d7;backdrop-filter:blur(6px)}.sword-transfer-card{width:min(620px,92vw);padding:24px;text-align:center;background:radial-gradient(circle at 50% 0,#54243d,#1d121a 58%);border:1px solid #c6975c;box-shadow:0 24px 80px #000}.sword-mark{display:block;font-size:52px;color:#e1b665;text-shadow:0 0 20px #cf4b67}.sword-transfer-card>small{font:700 8px Arial;letter-spacing:4px;color:#d1a967}.sword-transfer-card h2{margin:5px 0}.sword-transfer-card p{margin:4px 0 16px;font-size:10px;opacity:.7}.sword-options{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:8px;max-height:260px;overflow:auto}.sword-option{min-height:105px;padding:8px;border:1px solid #7d5d65;background:#2c1d28;color:#f2e7da;cursor:pointer;display:grid;place-items:center}.sword-option:hover{border-color:#e1b665;transform:translateY(-3px);box-shadow:0 7px 15px #0007}.sword-option span{font-size:30px;color:#e1b665}.sword-option b{font-size:10px}.sword-option small{font:700 7px Arial;letter-spacing:1px;opacity:.6}

/* Mais área útil para o campo */
.topbar{height:48px}.brand .sigil{font-size:27px}.brand b{font-size:16px}.icon-btn{width:29px;height:29px}main{height:calc(100vh - 48px);padding:4px 8px;grid-template-rows:34px minmax(0,1fr) 34px 86px;gap:4px}.player-strip{padding:2px 10px}.player-crown{font-size:22px}.score span{font-size:20px}.game-layout{grid-template-columns:188px minmax(300px,1fr) 208px;gap:6px}.board-wrap{grid-template-rows:28px minmax(0,1fr) 22px}.global-arena{height:28px;width:min(100%,480px)}.arena-row{width:min(100%,480px)}.hint{height:22px;width:min(100%,480px);padding:5px}.hand-zone{grid-template-columns:minmax(0,1fr) 300px;padding:3px 7px;gap:8px}.hand-head,.reserve-head{height:18px}.hand{height:61px;padding-top:3px}.effect-card{height:55px;min-width:125px;width:125px}.pawn-hand{height:61px;margin-top:3px}.reserve-piece{width:43px;height:43px}.right-panel .unit-card{margin:4px}.card-art{height:66px}.log{height:calc(100% - 235px)}
@media(max-width:1050px) and (min-width:761px){.game-layout{grid-template-columns:165px minmax(260px,1fr) 180px}.hand-zone{grid-template-columns:minmax(0,1fr) 230px}}

/* Campo 7 × 10 e estado visual do Montador */
.board{aspect-ratio:7/10;grid-template-columns:repeat(7,1fr);grid-template-rows:repeat(10,1fr)}.reserve-piece.initial-pawn-card{background:linear-gradient(145deg,#d9cba9,#a8956e);border-color:#f1d88e;box-shadow:0 0 8px #e5c66d66}.reserve-piece.initial-pawn-card b{font-size:6px;color:#5c4022}.piece.mounted{box-shadow:0 0 0 3px #e6b95a,0 0 16px #df9e44}.mount-mark{position:absolute;left:-18%;top:-18%;width:20px;height:20px;border-radius:50%;display:grid;place-items:center;background:#75442c;color:#ffe09a;border:1px solid #e9ba63;font:bold 11px Arial;box-shadow:0 2px 6px #0008}.mounted-badge{background:#7b4b2e;color:#ffe5a5;border:1px solid #d6a454}.mount-status{margin:6px 8px;padding:7px;display:flex;align-items:center;gap:7px;text-align:left;background:linear-gradient(90deg,#4d3023,#835632);color:#fff1cd;border:1px solid #d7a65a}.mount-status>span{font-size:25px;color:#ffd47b}.mount-status b,.mount-status small{display:block}.mount-status b{font:700 8px Arial;letter-spacing:1px}.mount-status small{font:7px/1.25 Arial;opacity:.8;margin-top:2px}.mount-now{margin:4px auto 7px;padding:7px 10px;background:#6c472c;font-size:8px;animation:mountPulse 1.8s ease-in-out infinite}@keyframes mountPulse{50%{box-shadow:0 0 16px #d99642;transform:translateY(-1px)}}
@media(max-width:760px){.board{width:min(100%,490px);aspect-ratio:7/10}}

/* Lobby e estados da partida online WebRTC */
.game-mode{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin:0 auto 18px;max-width:760px}.mode-choice,.lobby-role{border:1px solid #62586a;background:#27212b;color:#eee4d6;cursor:pointer;padding:10px;display:grid;grid-template-columns:30px 1fr;text-align:left;align-items:center}.mode-choice>span,.lobby-role>span{grid-row:1/3;font-size:22px;color:#d8b56d}.mode-choice b,.lobby-role b{font:700 9px Arial;letter-spacing:1px}.mode-choice small,.lobby-role small{font:8px Arial;opacity:.6;margin-top:2px}.mode-choice.selected,.lobby-role.selected{border-color:#d6ad63;background:#3b2e3e;box-shadow:0 0 15px #d6ad6333}.online-lobby{max-width:580px;margin:0 auto 18px;padding:12px;border:1px solid #594b60;background:#151219}.lobby-roles{display:grid;grid-template-columns:1fr 1fr;gap:8px}.signal-panel{margin-top:10px;padding-top:10px;border-top:1px solid #4b414e}.signal-status{display:flex;align-items:center;justify-content:center;gap:7px;font:700 9px Arial;letter-spacing:1px}.signal-status i,.network-badge i{width:8px;height:8px;border-radius:50%;background:#8f7563;box-shadow:0 0 8px currentColor}.signal-status.connected i,.network-badge.connected i{background:#73d38c}.signal-status.connecting i{background:#e4b963;animation:netPulse 1s infinite}.signal-status.error i{background:#e46d75}.signal-panel p{font:9px/1.35 Arial;opacity:.7;margin:8px}.signal-panel textarea{width:100%;height:62px;resize:none;border:1px solid #62576a;background:#0d0b10;color:#ddd0bb;padding:7px;font:8px/1.25 monospace}.signal-actions{display:flex;justify-content:flex-end;gap:7px;margin-top:7px}.signal-actions button{border:1px solid #786775;background:#2c2530;color:#eee4d6;padding:8px 11px;font:700 8px Arial;cursor:pointer}.signal-actions .primary{background:var(--wine)}.network-badge{position:absolute;right:72px;display:flex;align-items:center;gap:6px;padding:5px 8px;border:1px solid #5d5362;border-radius:14px;color:#d9d0c5;font:700 7px Arial;letter-spacing:1px}.online-waiting .board{pointer-events:none;filter:saturate(.72)}.online-waiting .left-panel .action,.online-waiting .play-card-btn{pointer-events:none;opacity:.35}.online-waiting #hint{color:#e7c678}.online-only-player{outline:1px solid #d7ad61;outline-offset:3px}.remote-player{opacity:.38;pointer-events:none}.setup-card.online-setup{width:min(800px,94vw);padding-top:18px}.setup-card.online-setup .deck-choices{margin-bottom:14px}@keyframes netPulse{50%{opacity:.25;transform:scale(.7)}}
@media(max-width:760px){.game-mode{grid-template-columns:repeat(2,1fr)}.lobby-roles{grid-template-columns:1fr}.network-badge{right:52px}.signal-panel textarea{height:72px}.setup{overflow:auto;padding:12px}.setup-card{margin:auto}}

/* Perspectiva do duelista e controles essenciais */
.danger-btn{color:#d78b91;border-color:#73414b}.danger-btn:hover{color:#ffb0b7!important;border-color:#bd5b67!important;background:#3a1e27}.game-layout{grid-template-columns:164px minmax(300px,1fr) 208px}.left-panel .controls-title{padding-top:7px;padding-bottom:7px}.left-panel>.action{min-height:42px}.board[data-view="2"]{box-shadow:0 -10px 30px #0008}.board[data-view="2"] .intro-piece.p2{--fromY:180px}.board[data-view="2"] .intro-piece.p1{--fromY:-180px}

/* Miniaturas de arte reaproveitadas nas cartas que possuem imagem */
.art-crop{display:block;position:relative;overflow:hidden}.art-crop img{position:absolute;width:var(--art-scale,200%);height:auto;max-width:none;left:var(--art-x,0);top:var(--art-y,-12%);object-fit:contain}.piece .board-art{position:absolute;inset:2px;border-radius:50% 50% 43% 43%;z-index:0}.piece .board-art img{filter:saturate(.9) contrast(1.05)}.piece.facedown .art-crop{display:none}.piece.facedown::before{content:"▦";font-size:clamp(13px,1.9vw,24px);position:relative;z-index:1}.piece.facedown .glyph{display:none}.piece.facedown .glyph::after{display:none}.reserve-piece.has-art{position:relative;overflow:hidden}.reserve-piece .hand-art{position:absolute;inset:2px;border-radius:4px}.reserve-piece.has-art b{position:absolute;right:2px;bottom:2px;z-index:2;padding:1px 3px;border-radius:3px;background:#2c1720dd;color:#ffe6a8}.card-art{position:relative}.card-art .detail-art{position:absolute;inset:0}.sword-option .sword-art{width:48px;height:48px;border-radius:50%;border:1px solid #d3a65f}.sword-option .sword-art+ b{margin-top:3px}
.effect-card .effect-hand-art{grid-row:1/3;width:32px;height:44px;border-radius:3px;background:#08070a}.effect-card .effect-hand-art img{filter:saturate(.85) contrast(1.08)}.effect-detail .art-credit{display:block;margin:2px 5px 0;font:6px Arial;color:#766a58}
.art-crop.celestial-art img{width:100%;height:100%;left:0;top:0;object-fit:cover;object-position:center}.art-credit{display:block;margin:3px 7px 0;color:#746b5e;font:6px/1.2 Arial;text-align:center}

/* Correção de colisões e textos comprimidos */
.topbar{height:54px;display:grid;grid-template-columns:minmax(125px,1fr) auto minmax(205px,1fr);gap:14px;padding:0 18px}.turn-panel{min-width:190px}.turn-panel strong{white-space:nowrap}.header-actions{justify-self:end;align-items:center;min-width:0;gap:6px}.network-badge{position:static;right:auto;flex:0 0 auto;white-space:nowrap;max-width:none;padding:5px 9px}.icon-btn{flex:0 0 auto;display:grid;place-items:center;line-height:1}main{height:calc(100vh - 54px);grid-template-rows:46px minmax(0,1fr) 46px 102px;gap:5px}.player-strip{min-width:0;padding:5px 12px;gap:12px}.player-id{min-width:0!important;flex:1 1 170px;overflow:hidden}.player-id>div{min-width:0}.player-id small,.player-id b,.player-id em{max-width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.score{flex:0 0 auto;padding-left:12px;white-space:nowrap}.mini-stats{flex:0 0 auto;margin-left:auto;gap:12px;white-space:nowrap}.hand-zone{grid-template-columns:minmax(0,1fr) minmax(230px,280px);padding:5px 9px}.hand-head,.reserve-head{height:28px;min-height:28px;align-items:center}.hand-head>div{min-width:0}.hand-head b,.hand-head small{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.hand-head>span{flex:0 0 auto;white-space:nowrap;margin-left:10px}.hand{height:64px}.pawn-hand{height:64px}.reserve-block{min-width:0}
@media(max-width:1100px) and (min-width:761px){.topbar{grid-template-columns:minmax(105px,1fr) auto minmax(185px,1fr);gap:8px;padding:0 10px}.brand small,.player-id em,.hand-head>span{display:none}.turn-panel{min-width:170px}.mini-stats{gap:8px}.mini-stats span{font-size:10px}.game-layout{grid-template-columns:155px minmax(280px,1fr) 185px}.hand-zone{grid-template-columns:minmax(0,1fr) 225px}}
@media(max-width:760px){.topbar{height:48px;grid-template-columns:auto minmax(90px,1fr) auto;gap:5px;padding:0 7px}.brand{gap:4px}.brand .sigil{display:none}.brand b{font-size:13px;letter-spacing:2px}.turn-panel{min-width:0;overflow:hidden}.turn-panel strong{font-size:11px;overflow:hidden;text-overflow:ellipsis}.header-actions{gap:3px}.network-badge{width:14px;padding:2px;border:0}.network-badge span{display:none}.icon-btn{width:27px;height:27px;font-size:15px}main{height:auto}.player-strip{height:48px;padding:5px 8px;gap:7px}.player-id{flex-basis:auto}.player-crown{font-size:21px}.player-id b{font-size:11px}.score{padding-left:7px}.score span{font-size:18px}.hand-zone{height:auto;min-height:122px}.hand-head{height:30px}.hand-head>span{display:none}}
@media(min-width:761px){main{grid-template-rows:46px minmax(0,1fr) 46px 108px}}

/* Entrada online por código curto */
.online-lobby{display:grid;gap:9px}.room-label{font:700 8px Arial;letter-spacing:3px;color:#d4b36e}.room-code-row{display:grid;grid-template-columns:minmax(0,1fr) 78px;gap:7px}.room-code-row input{width:100%;height:48px;border:1px solid #9b8158;background:#0c0a0f;color:#f7e5b9;text-align:center;text-transform:uppercase;font:700 20px/1 monospace;letter-spacing:5px;outline:none}.room-code-row input:focus{border-color:#efc66f;box-shadow:0 0 14px #d7a64c44}.room-code-row input.invalid{border-color:#db6572;animation:codeShake .25s linear}.room-code-row button{border:1px solid #756679;background:#312936;color:#eadfce;font:700 8px Arial;letter-spacing:1px;cursor:pointer}.room-code-row button:hover{border-color:#d5ad62}.room-help{margin:0 0 3px!important;font:9px/1.35 Arial!important;opacity:.65}.online-lobby .signal-status{min-height:26px;margin-top:2px;padding-top:8px;border-top:1px solid #4b414e}.lobby-role:disabled{opacity:.4;cursor:not-allowed}@keyframes codeShake{25%{transform:translateX(-4px)}75%{transform:translateX(4px)}}
.point-goal-control{max-width:290px;margin:0 auto 14px;display:grid;grid-template-columns:1fr auto;align-items:center;gap:2px 10px;padding:8px 10px;border:1px solid #594b60;background:#151219;color:#eee4d6;text-align:left}.point-goal-control>span:first-child{font:700 8px Arial;letter-spacing:1.5px;color:#d4b36e}.point-goal-control>small{grid-column:1/-1;font:8px Arial;opacity:.58}.point-goal-input{display:flex;align-items:center;gap:5px}.point-goal-input input{width:54px;height:32px;border:1px solid #9b8158;background:#0c0a0f;color:#f7e5b9;text-align:center;font:700 17px Arial;outline:none}.point-goal-input input:focus{border-color:#efc66f;box-shadow:0 0 10px #d7a64c44}.point-goal-input input:disabled{opacity:.65;cursor:not-allowed}.point-goal-input b{font:700 7px Arial;letter-spacing:1px}
@media(max-width:480px){.room-code-row input{font-size:17px;letter-spacing:3px}.room-code-row{grid-template-columns:minmax(0,1fr) 65px}}
.connection-lost #hint{color:#f1c46f}.connection-lost #network-badge{border-color:#bb8c4e}.connection-lost #network-badge i{background:#e7b75d;animation:netPulse 1s infinite}

/* Experiência móvel: mantém o desktop intacto e reorganiza o duelo para toque */
@media(max-width:760px){
 html{scroll-behavior:smooth}
 body{width:100%;min-height:100dvh;overflow-x:hidden;padding-bottom:env(safe-area-inset-bottom)}
 .topbar{height:52px;padding:0 max(8px,env(safe-area-inset-left));grid-template-columns:58px minmax(0,1fr) auto;gap:6px}
 .brand b{font-size:14px;letter-spacing:2px}.brand small{display:none}
 .turn-panel{gap:1px}.turn-panel span:first-child{font-size:8px;letter-spacing:1.5px}.turn-panel strong{font-size:10px;letter-spacing:1px}.turn-panel span:last-child{display:block;font-size:8px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
 .header-actions{gap:5px}.icon-btn{width:34px;height:34px;font-size:17px}.network-badge{width:12px;min-width:12px;height:12px;padding:0}.network-badge i{width:9px;height:9px}
 main{width:100%;height:auto;padding:5px max(6px,env(safe-area-inset-right)) 12px;display:flex;flex-direction:column;gap:6px;overflow:visible}
 .game-layout{display:contents}
 .player-strip{height:52px;margin:0;padding:5px 9px;gap:8px;border-radius:5px}.player-strip.opponent{order:1}.board-wrap{order:2}.left-panel{order:3}.player-strip.current{order:4}.hand-zone{order:5}.right-panel{order:6}
 .player-id{flex:1 1 auto;min-width:0}.player-crown{font-size:24px}.player-id b{font-size:12px}.player-id small{font-size:7px}.player-id em{display:block;font-size:6px}.score{padding-left:8px}.score span{font-size:20px}.score small{font-size:7px}.mini-stats{display:flex;flex:0 1 auto;gap:7px;font-size:8px;overflow:hidden}.mini-stats span{white-space:nowrap}.mini-stats span:nth-child(n+3){display:none}
 .board-wrap{width:100%;height:auto;display:flex;flex-direction:column;align-items:center;overflow:visible}
 .global-arena,.hint,.board{width:min(100%,430px)}.global-arena{height:34px;flex:0 0 34px;padding:7px 9px;font-size:8px;border-radius:5px 5px 0 0}.global-arena span{white-space:nowrap}.global-arena b{max-width:54%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.global-arena em{display:none}
 .board{height:auto;max-width:430px;aspect-ratio:7/10;border-width:3px;touch-action:manipulation}.cell{aspect-ratio:auto}.piece{width:80%;height:80%;border-width:2px}.piece .glyph{font-size:clamp(17px,5.5vw,27px)}.piece .atk{font-size:8px;right:-10%;bottom:-7%}.mount-mark{width:17px;height:17px;font-size:9px}
 .hint{height:auto;min-height:34px;padding:8px 7px;font:9px/1.25 Arial;border-radius:0 0 5px 5px;display:grid;place-items:center}
 .left-panel{position:sticky;bottom:max(4px,env(safe-area-inset-bottom));z-index:18;width:100%;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));overflow:visible;border-color:#7e6b52;border-radius:7px;box-shadow:0 7px 24px #000b}
 .left-panel>.panel-title,.left-panel>.deck-shelf{display:none}.left-panel>.action,.left-panel>.end-turn{width:100%;min-width:0;min-height:50px;margin:0;padding:5px 3px;border:0;border-right:1px solid #b8aa91;display:flex;flex-direction:column;justify-content:center;gap:2px;text-align:center}.left-panel>.action>span{width:auto;font-size:19px;line-height:1}.left-panel>.action div{display:block}.left-panel>.action b{font:700 8px Arial;white-space:nowrap}.left-panel>.action small{display:none}.left-panel>.end-turn{font:700 8px/1.15 Arial;letter-spacing:.5px;border-radius:0 6px 6px 0;align-items:center}.left-panel>.end-turn span{font-size:15px}
 .hand-zone{width:100%;height:auto;min-height:0;padding:8px;display:grid;grid-template-columns:1fr;gap:9px;overflow:visible;border-radius:6px}.hand-block,.reserve-block{width:100%;min-width:0}.reserve-block{display:block;padding:0;border:0;border-top:1px solid #bcb19d}.hand-head,.reserve-head{height:30px;min-height:30px;padding:5px 2px}.hand-head b{font-size:12px}.hand-head small,.reserve-head small{font-size:8px}.hand{width:100%;height:82px;padding:5px 2px 7px;gap:8px;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x proximity;-webkit-overflow-scrolling:touch}.effect-card{flex:0 0 145px;width:145px;min-width:145px;height:68px;padding:6px;scroll-snap-align:start}.effect-card:hover{transform:none}.pawn-hand{width:100%;height:66px;margin:0;padding:6px 2px;display:flex;flex-wrap:nowrap;gap:8px;overflow-x:auto;overflow-y:hidden;-webkit-overflow-scrolling:touch}.reserve-piece{flex:0 0 54px;width:54px;height:54px;min-width:54px;touch-action:manipulation}
 .right-panel{display:block;width:100%;min-height:0;overflow:visible;border-radius:6px}.right-panel>.panel-title:first-child{display:block}.right-panel .unit-card{min-height:0;margin:7px}.right-panel .card-art{height:96px}.right-panel .log-title,.right-panel .log{display:none}.unit-card h3{font-size:14px}.unit-card p,.effect-detail .full-effect{font-size:11px!important}.play-card-btn,.mount-now{min-height:42px;font-size:10px}
 dialog{width:calc(100% - 20px);max-width:calc(100% - 20px);max-height:85dvh;padding:24px 16px;overflow:auto}.rules-grid{grid-template-columns:1fr}.pass-card{width:calc(100vw - 24px);padding:28px 14px}.pass-card h1{font-size:21px}.draw-choice-card,.sword-transfer-card{width:calc(100vw - 24px);padding:20px 14px}.big-pile{height:118px}
 .setup{padding:max(8px,env(safe-area-inset-top)) 8px;align-items:start}.setup-card,.setup-card.online-setup{width:100%;max-height:calc(100dvh - 16px);padding:18px 12px;overflow:auto}.setup-mark{font-size:32px}.setup-card h1{font-size:21px;margin:4px 0 13px}.game-mode{margin-bottom:12px}.mode-choice,.lobby-role{min-height:56px}.deck-choices{gap:10px}.deck-choice{min-height:82px}.room-code-row input{font-size:17px;letter-spacing:3px}
}

/* Efeitos visuais do deck Objeto Celeste */
.board.peace-active::before{content:"⚑  TRATADO DE PAZ · ATAQUES BLOQUEADOS";position:absolute;z-index:18;left:50%;top:50%;transform:translate(-50%,-50%);padding:8px 14px;border:1px solid #f2e6c0;background:#2b4267e8;color:#fff8df;font:700 clamp(7px,1vw,11px) Arial;letter-spacing:1.5px;box-shadow:0 6px 22px #0009;pointer-events:none;animation:peaceFlag 1.4s ease-in-out infinite}.piece.fire-target::after{content:"♨";position:absolute;inset:-24%;display:grid;place-items:center;color:#ffd36a;font-size:clamp(28px,5vw,62px);text-shadow:0 0 8px #ff3100,0 0 18px #ff6a00;z-index:10;animation:marsFire .72s ease-in-out both}.piece.asteroid-shield::after{content:"☄";position:absolute;inset:-18%;display:grid;place-items:center;border:3px solid #d7f3ff;border-radius:50%;color:#fff;font-size:clamp(22px,4vw,48px);background:#3375a744;box-shadow:0 0 20px #7dd7ff;z-index:10;animation:asteroidGuard .68s ease both}#winner-dialog.solar-victory{overflow:hidden;color:#fff7d4;border-color:#ffd55d;background:radial-gradient(circle at 50% 30%,#e78b20 0,#742415 38%,#100a19 78%);box-shadow:0 0 90px #ff9b2b99}#winner-dialog.solar-victory::before{content:"✦   ·   ✧   ·   ✦   ·   ✧   ·   ✦";position:absolute;inset:12px;color:#fff7c7;letter-spacing:12px;opacity:.75;animation:solarStars 2.8s linear infinite;pointer-events:none}#winner-dialog.solar-victory .winner-crest{color:#fff1a1;text-shadow:0 0 14px #fff,0 0 36px #ff9d00;animation:solarRise 1.15s cubic-bezier(.2,.85,.2,1.25) infinite alternate}#winner-dialog.solar-victory .primary{background:#b84b22}
@keyframes peaceFlag{50%{transform:translate(-50%,-50%) scale(1.04);filter:brightness(1.18)}}@keyframes marsFire{0%{opacity:0;transform:scale(.25) rotate(-25deg)}45%{opacity:1;transform:scale(1.25) rotate(8deg)}100%{opacity:0;transform:scale(1.6) rotate(20deg)}}@keyframes asteroidGuard{0%{opacity:0;transform:scale(.3) rotate(-80deg)}45%{opacity:1;transform:scale(1.15) rotate(12deg)}100%{opacity:0;transform:scale(1.45) rotate(45deg)}}@keyframes solarRise{from{transform:scale(.75) rotate(-8deg)}to{transform:scale(1.12) rotate(8deg)}}@keyframes solarStars{to{transform:rotate(1turn)}}

/* Versão 92 · ícones transparentes e identidades dos arquétipos */
.archetype-icon{width:1em;height:1em;display:block;object-fit:contain}.player-crown .archetype-icon{width:27px;height:27px}.pass-card .archetype-icon{width:72px;height:72px;margin:auto}.deck-choice>img{width:34px;height:34px;object-fit:contain}.deck-choice[data-deck=xadria]{--deck-color:#4b3455}.deck-choice[data-deck=wild]{--deck-color:#294d35}.deck-choice[data-deck=celestial]{--deck-color:#173b5c}.deck-choice[data-deck=abyss]{--deck-color:#351529}.deck-choice img{padding:5px;border-radius:7px;background:var(--deck-color)}.deck-choice[data-deck=celestial].selected{border-color:#70bce2;background:linear-gradient(145deg,#173b5c,#111a2b);box-shadow:0 0 22px #56bde044}.deck-choice[data-deck=abyss].selected{border-color:#c75488;background:linear-gradient(145deg,#4a1833,#180d16);box-shadow:0 0 22px #b1327544}
.player-strip[data-deck=celestial]{background:linear-gradient(90deg,#173b5c,#101a29);border-color:#497fa6}.player-strip.current[data-deck=celestial]{background:linear-gradient(90deg,#dceaf1,#9abdd3);color:#132b3b}.player-strip[data-deck=abyss]{background:linear-gradient(90deg,#42162f,#160b13);border-color:#7c2b52}.player-strip.current[data-deck=abyss]{background:linear-gradient(90deg,#ead7e1,#bd88a2);color:#351326}
.piece.deck-celestial{background:radial-gradient(circle at 36% 25%,#64a7ce,#102b43);border-color:#9cd8f2}.piece.deck-abyss{background:radial-gradient(circle at 36% 25%,#7c2d56,#1a0a14);border-color:#cf5b8e}.art-crop:not(.celestial-art) img{width:var(--art-scale,76%);height:var(--art-scale,76%);left:calc(50% - var(--art-scale,76%)/2);top:calc(50% - var(--art-scale,76%)/2);object-fit:contain}.art-crop.tone-black{background:linear-gradient(135deg,#eadff0,#b9a1c4)}.piece .art-crop.tone-black{inset:5px;border-radius:4px}.art-crop.tone-black img{filter:brightness(0)!important}.art-crop.tone-white img{filter:brightness(0) invert(1)!important}.unit-card[data-deck=xadria] .card-art{background:#4b3455}.unit-card[data-deck=wild] .card-art{background:#294d35}.unit-card[data-deck=celestial] .card-art{background:#173b5c}.unit-card[data-deck=abyss] .card-art{background:#351529}body[data-deck=xadria] .effect-card{background:#3f2b49}body[data-deck=wild] .effect-card{background:#24452f}body[data-deck=celestial] .effect-card{background:#153752}body[data-deck=abyss] .effect-card{background:#351426}.piece.facedown .art-crop{display:block}.piece.facedown::before{display:none}.piece .facedown-emblem{position:absolute;inset:12%;width:76%;height:76%;z-index:2;filter:drop-shadow(0 2px 3px #0009)}.card-ability-btn{margin:5px 8px 9px;font-size:8px;padding:8px 10px}
.setup-actions{display:flex;justify-content:center;gap:10px}.secondary{border:1px solid #8d7959;background:transparent;color:#eadfcf;padding:12px 18px;letter-spacing:1.3px;font-weight:bold;cursor:pointer}.secondary:hover{background:#ffffff0d;border-color:#d6ad63}
.peace-banner{display:none;align-items:center;gap:8px;min-height:38px;padding:6px 10px;border:1px solid #c8b36e;background:linear-gradient(90deg,#253957,#3a5476);color:#fff8df;box-shadow:0 5px 16px #0007;z-index:12}.peace-banner.active{display:flex}.peace-banner img{width:25px;height:25px}.peace-banner span{display:grid;text-align:left}.peace-banner b{font:700 8px Arial;letter-spacing:1.5px}.peace-banner small{font:7px Arial;opacity:.72}.board.peace-active::before{display:none}
.global-arena[data-arena=blackRoses],.global-arena[data-arena=kingdom]{background:linear-gradient(90deg,#160d16,#4a1730,#160d16);border-color:#a94b70;color:#f3dae5}.global-arena[data-arena=blackRoses] b,.global-arena[data-arena=blackRoses] em,.global-arena[data-arena=kingdom] b,.global-arena[data-arena=kingdom] em{color:#ffd9e8}.board[data-arena=blackRoses] .cell.light{background:#3c2634}.board[data-arena=blackRoses] .cell.dark{background:#160f18}.board[data-arena=blackRoses]{--arena-bloom:#7f284c;border-color:#7c2b50;box-shadow:0 0 23px #8b285d77}.board[data-arena=kingdom] .cell.light{background:#f6f2e8}.board[data-arena=kingdom] .cell.dark{background:#241a25}.board[data-arena=kingdom]{--arena-bloom:#d9b7c8;border-color:#b08c74;box-shadow:0 0 23px #d8c5b066}.board[data-arena=roses] .cell:nth-child(7n+2)::before,.board[data-arena=roses] .cell:nth-child(11n+1)::before,.board[data-arena=blackRoses] .cell:nth-child(7n+2)::before,.board[data-arena=blackRoses] .cell:nth-child(11n+1)::before,.board[data-arena=kingdom] .cell:nth-child(9n+1)::before{content:"";position:absolute;width:18%;height:18%;right:5%;top:5%;background:url('assets/icons/rose.svg') center/contain no-repeat;opacity:.24;pointer-events:none}.board[data-arena=blackRoses] .cell::before{filter:brightness(0) invert(22%) sepia(32%) saturate(2400%) hue-rotate(292deg)}.board[data-arena=roses] .cell::before{filter:brightness(0) opacity(.45)}
.global-arena[data-arena=abyss]{background:radial-gradient(circle at 15% 50%,#c84176 0 2px,transparent 3px),radial-gradient(circle at 82% 30%,#d85c8d 0 2px,transparent 3px),#120910;border-color:#7c234c;color:#f3d8e6}.board[data-arena=abyss] .cell.light{background:#29101f}.board[data-arena=abyss] .cell.dark{background:#0e080d}.board[data-arena=abyss]{--arena-bloom:#6e1740;border-color:#6f2043;box-shadow:0 0 26px #ac245f66}.black-hole,.tunnel-mark{position:absolute;inset:10%;z-index:2;display:grid;place-items:center;pointer-events:none}.black-hole img,.tunnel-mark img{width:100%;height:100%;object-fit:contain}.black-hole{filter:drop-shadow(0 0 7px #9b44c4);animation:blackHolePulse 1.2s ease-in-out infinite}.tunnel-mark{inset:18%;opacity:.78;filter:sepia(1) hue-rotate(85deg) drop-shadow(0 2px 2px #000)}@keyframes blackHolePulse{50%{transform:scale(.82) rotate(8deg);opacity:.72}}
#rules-dialog{max-width:900px}.rules-hero{display:flex;align-items:center;gap:16px;margin:0 26px 20px 0}.rules-hero>img{width:64px;height:64px;padding:12px;background:#4b3455;border-radius:12px}.rules-hero small{font:700 8px Arial;letter-spacing:3px;color:#8a6349}.rules-hero h2{margin:2px 0}.rules-hero p{margin:0;font-size:12px}.rules-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.rules-grid section{border:1px solid #c7b99e;border-left:4px solid #7b3040;padding:10px;background:#f7f1e5}.rule-picture{height:44px;margin-bottom:8px;display:flex;align-items:center;justify-content:center;gap:9px;background:#27212d;color:#f5e8ce;border-radius:5px;font:bold 16px Arial}.rule-picture.draw span{width:29px;height:29px;display:grid;place-items:center;border:1px solid #b99a5b}.rule-picture.deploy{position:relative;background:repeating-conic-gradient(#756b78 0 25%,#d8d0bf 0 50%) 0/28px 28px}.rule-picture.deploy .unit{width:28px;height:28px;background:#4b3455;border:2px solid #e2c475;border-radius:4px}.rule-picture.move i:not(.arrow){width:25px;height:25px;border-radius:3px}.rule-picture.move .origin{background:#4b3455}.rule-picture.move .target{border:2px solid #dfb54f;box-shadow:0 0 8px #dfb54f}.rule-picture.combine b{color:#e5b955}.rule-picture.hidden-piece img,.rule-picture.arena-rule img{width:34px;height:34px}.rule-picture.hidden-piece img{padding:5px;background:#294d35;border:2px solid #d5bc77}.rule-picture.victory span{font-size:28px;color:#d8b56d}.rule-picture.victory b{font-size:23px}
