.world-map-viewport { width:325px; height:325px; overflow:hidden; position:relative; background:#080c0e; isolation:isolate; }
.world-map-grid { width:455px; height:455px; table-layout:fixed; border-collapse:collapse; transform:translate(-65px,-65px); }
.world-map-grid > tbody > tr, .world-map-grid > tr { height:65px; }
.world-map-grid > tbody > tr > td, .world-map-grid > tr > td { min-width:65px; width:65px; height:65px; padding:0; box-sizing:border-box; }
.world-player-marker { position:absolute; left:130px; top:130px; width:65px; height:65px; display:flex; align-items:center; justify-content:center; pointer-events:none; z-index:2; }
.world-map-canvas { position:absolute; inset:0; width:325px; height:325px; z-index:1; pointer-events:none; display:none; }
.world-map-canvas-ready > .world-map-canvas { display:block; }
.world-map-canvas-ready > .world-map-grid { opacity:0; }
.world-map-moving > .world-map-grid { pointer-events:none; }
#world-movement-status { min-height:18px; margin:0 auto 4px; width:600px; color:#cbd8df; font:11px Verdana,sans-serif; }
#world-movement-status button { background:#26383f; color:#fff; border:1px solid #6b8790; padding:4px 8px; cursor:pointer; }
#world-movement-status a { margin-left:8px; text-decoration:underline; }
#sigma-world-view[data-world-pending] .world-map-viewport { cursor:wait; }
.world-action-header { position:relative; }
.world-action-spinner { position:absolute; top:3px; left:197px; width:13px; height:13px; box-sizing:border-box; border:2px solid #42636d; border-top-color:#b4f4ff; border-radius:50%; animation:world-action-spin 700ms linear infinite; }
.world-action-loading-label { position:absolute; width:1px; height:1px; overflow:hidden; clip-path:inset(50%); white-space:nowrap; }
#world-action-list[inert] { opacity:.5; }
@keyframes world-action-spin { to { transform:rotate(360deg); } }
@media (prefers-reduced-motion:reduce) { .world-action-spinner { animation:none; } }
