/* The Zeus editorial pattern, extended with original game symbols. */
.gx-visual{padding:28px;background:#201b30}
.gx-scene{display:flex;flex-direction:column;justify-content:center;min-height:380px;margin-bottom:24px}
.gx-board{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:5px;width:100%;aspect-ratio:7/4}
.gx-sugar{aspect-ratio:7/5}
.gx-cell{position:relative;display:grid;place-items:center;background:#362f4f;border-radius:5px;overflow:hidden;transition:background .5s,transform .5s}
.gx-cell img{width:90%;height:90%;object-fit:contain;transition:opacity .5s,transform .5s}
.gx-cell .gx-wild{position:absolute;opacity:0}
.gx-charge{position:absolute;inset:28%;border-radius:50%;background:#f2b5ed;opacity:0;transform:scale(.3);transition:opacity .5s,transform .5s}
.gx-core{background:#66396e}.gx-core .gx-candy{visibility:hidden}
.gx-core .gx-charge{opacity:.45;transform:scale(.7)}
.gx-caption{font-size:18px;font-weight:500;text-align:center;line-height:1.4;margin:24px 0 0;min-height:2.8em;display:grid;place-items:center}
.gx-shapes,.gx-world{display:none}
.gx-visual[data-feature=core][data-phase="1"] .gx-core .gx-charge,.gx-visual[data-feature=core][data-phase="2"] .gx-core .gx-charge{opacity:1;transform:scale(1.2)}
.gx-visual[data-feature=core][data-phase="2"] .gx-cell:nth-child(n+15):nth-child(-n+21){background:#925899}
.gx-visual[data-feature=shift] .gx-shapes{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:20px}
.gx-shapes span{padding:10px;background:#362f4f;text-align:center;font-size:13px;border-radius:6px}
.gx-visual[data-feature=shift][data-phase="0"] .gx-shapes span:first-child,.gx-visual[data-feature=shift][data-phase="1"] .gx-shapes span:nth-child(2),.gx-visual[data-feature=shift][data-phase="1"] .gx-shapes span:nth-child(3),.gx-visual[data-feature=shift][data-phase="2"] .gx-shapes span:last-child{background:#f2b5ed;color:#201b30}
.gx-visual[data-feature=shift][data-phase="0"] .gx-core{background:#925899}
.gx-visual[data-feature=shift][data-phase="1"] .gx-board{transform:scaleY(1.08)}
.gx-visual[data-feature=shift][data-phase="2"] .gx-cell:nth-child(7n+1),.gx-visual[data-feature=shift][data-phase="2"] .gx-cell:nth-child(7n+2),.gx-visual[data-feature=shift][data-phase="2"] .gx-cell:nth-child(7n+3){transform:translateX(-3px)}
.gx-visual[data-feature=worlds] .gx-board{display:none}.gx-visual[data-feature=worlds] .gx-world{display:block}.gx-world img{display:block;width:100%;aspect-ratio:16/10;object-fit:cover;border-radius:8px}
.gx-rage{font-size:14px;text-align:center;margin-top:24px;color:#c5ef80}.gx-visual:not([data-feature=stone]) .gx-rage{display:none}
.gx-visual[data-feature=venom]:not([data-phase="0"]) .gx-cell:nth-child(9) .gx-wild,.gx-visual[data-feature=venom]:not([data-phase="0"]) .gx-cell:nth-child(20) .gx-wild{opacity:1}
.gx-visual[data-feature=venom]:not([data-phase="0"]) .gx-cell:nth-child(9) .gx-candy,.gx-visual[data-feature=venom]:not([data-phase="0"]) .gx-cell:nth-child(20) .gx-candy{opacity:0}
.gx-visual[data-feature=venom][data-phase="2"] .gx-cell:nth-child(9),.gx-visual[data-feature=venom][data-phase="2"] .gx-cell:nth-child(20){background:#506631}
.gx-visual[data-feature=stone] .gx-cell[data-col="2"],.gx-visual[data-feature=harvest] .gx-cell[data-col="2"],.gx-visual[data-feature=stone][data-phase="2"] .gx-cell[data-col="4"]{background:#6a7663}
.gx-visual[data-feature=stone] .gx-cell[data-col="2"] .gx-wild,.gx-visual[data-feature=stone][data-phase="2"] .gx-cell[data-col="4"] .gx-wild{opacity:1}
.gx-visual[data-feature=stone] .gx-cell[data-col="2"] .gx-candy,.gx-visual[data-feature=stone][data-phase="2"] .gx-cell[data-col="4"] .gx-candy,.gx-visual[data-feature=harvest] .gx-cell[data-col="2"] .gx-candy{opacity:0}
.gx-visual[data-feature=harvest] .gx-cell[data-col="2"] .gx-charge{opacity:.6;transform:scale(.7);background:#c5ef80}
.gx-visual[data-feature=harvest]:not([data-phase="0"]) .gx-cell[data-col="2"]{background:#263e2d}
.gx-visual[data-feature=harvest]:not([data-phase="0"]) .gx-cell[data-col="2"] .gx-charge{opacity:1;transform:scale(1.5)}
.game-explainer .zx-tabs button{font-size:14px}
@media(max-width:850px){.gx-visual{padding:20px}.gx-scene{min-height:300px}.gx-board{gap:3px}}
@media(max-width:600px){.gx-scene{min-height:280px}.gx-caption{font-size:16px}.game-explainer .zx-tabs button{font-size:12px;padding:10px 8px}.game-explainer .zx-copy h3{font-size:34px}.game-explainer .zx-steps button{grid-template-columns:76px 1fr}}
@media(prefers-reduced-motion:reduce){.gx-board{transform:none!important}}
