/* Spatial proof: equal hero scale, quiet backdrop, stable input surfaces. */
.team .world.world-art {--sprite:clamp(165px,22.8vh,246px);}
.landscape img {filter:saturate(.86) brightness(.86);}
.lead-distance {display:inline-block;margin-left:8px;font-size:15px;color:#f3e1b1;text-shadow:0 1px 4px #081522;}
.power-panel[data-selectable='true'] .power-buttons button:not(:disabled)::after {content:'';position:absolute;inset:-4px;border-radius:inherit;padding:2px;background:conic-gradient(#f7deb0 var(--selection-turn),#eedbab18 0);mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);mask-composite:exclude;pointer-events:none;}
.power-buttons button {position:relative;}
.team.shielded .power-buttons [data-power='shield'] {box-shadow:inset 0 0 10px var(--accent);opacity:.95;}
.bridge-support {position:absolute;bottom:calc(var(--baseline) - var(--tile-height)*1.84);width:calc(100% / 15);height:calc(var(--tile-height)*2);pointer-events:none;z-index:0;}
.bridge-support img {width:100%;height:100%;}
@media(max-height:650px){.team .world.world-art{--sprite:110px;}}

/* Leave a clear vertical silhouette for the right-hand gateway. */
.team > .prompt {margin-right:clamp(80px,7vw,135px);}
.bridge-support {mask-image:linear-gradient(#000 0 77%,transparent 100%);}

#gameScene[data-scene='ancient-grove'] .motes i:nth-child(3n) {width:6px;height:3px;border-radius:80% 0;background:#a9b47c;box-shadow:none;}
#gameScene[data-scene='sky-ruins'] .mist-near {height:60%;opacity:.55;}
#gameScene[data-scene='sky-ruins'] .motes i {width:2px;height:2px;}

/* Prepared take-off reads at board distance without adding instructional text. */
.bridge-gap[data-state='ready'][data-pending='false']::before {content:'';position:absolute;left:-24px;top:calc(var(--tile-height)*.45 - 3px);width:24px;height:5px;border-radius:50%;background:#fff1bd;box-shadow:0 0 9px var(--accent);}
.bridge-gap[data-state='ready']::after {left:-19px;top:calc(var(--tile-height)*.45 - 19px);width:13px;height:13px;clip-path:polygon(0 70%,55% 0,100% 15%,100% 65%,75% 40%,25% 100%);border:0;transform:none;background:#fff1bd;}
.world-figure .ward[data-phase='stored'] {width:20%;height:25%;opacity:1;}
.world-figure .ward[data-phase='stored'] i {width:4px;height:5px;box-shadow:0 0 3px #efffff,0 0 6px var(--accent);}

/* Source manifest controls the rock support bounds and its exact deck anchor. */
.bridge-support {width:calc(100% / 15 * var(--support-span,1));height:calc(var(--tile-height) * 384 / 320 * var(--support-span,1) * var(--support-ratio,1.666667));bottom:calc(var(--baseline) - var(--tile-height) * 384 / 320 * var(--support-span,1) * var(--support-ratio,1.666667) * (1 - var(--support-anchor,.08)));}
.bridge-support[data-span="3"] {mask-image:none;}

.portal-layer[data-casting='true'] .portal-membrane {filter:brightness(1.8) drop-shadow(0 0 9px #d8b0ff);}
