.unit-selection-box { position: absolute; z-index: 3; pointer-events: none; border: 1px solid #a2d9ff; background: #63b9ff24; }
.unit-selection-bar { position: absolute; z-index: 5; left: 12px; bottom: 68px; max-width: calc(100% - 24px); display: flex; align-items: center; flex-wrap: wrap; gap: 5px 10px; padding: 7px 9px; border: 1px solid #6f9cba; border-radius: 8px; color: #dcefff; background: #101824ef; font: 12px system-ui; }
.unit-selection-bar b { font-size: 11px; }
.unit-selection-bar nav { display: flex; gap: 5px; }
.unit-selection-bar button { border: 1px solid #53697b; background: #263c4e; color: #eff8ff; border-radius: 5px; padding: 7px 10px; cursor: pointer; }
.unit-selection-bar button.armed { border-color: #ffd46a; background: #665127; }
.unit-selection-bar kbd { font: inherit; opacity: .7; }
.unit-selection-box[hidden], .unit-selection-bar[hidden] { display: none; }
#stage #field.unit-order-aim, #stage #field.aiming { cursor: crosshair !important; } /* OrbitControls also writes an inline cursor. */
#stage #field[data-unit-order="attackMove"] { cursor: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='36' height='36' viewBox='0 0 36 36'%3E%3Cg fill='none' stroke='%23101925' stroke-width='5'%3E%3Cpath d='M18 2v9m0 14v9M2 18h9m14 0h9'/%3E%3Ccircle cx='18' cy='18' r='10'/%3E%3C/g%3E%3Cg fill='none' stroke='%23ff6655' stroke-width='2'%3E%3Cpath d='M18 2v9m0 14v9M2 18h9m14 0h9'/%3E%3Ccircle cx='18' cy='18' r='10'/%3E%3C/g%3E%3C/svg%3E") 18 18, crosshair !important; }
#stage #field[data-hero-aim="heal"], #stage #field[data-hero-aim="wildlife"] { cursor: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='32' height='32'%3E%3Cpath d='M16 3v26M3 16h26' stroke='%23101925' stroke-width='8'/%3E%3Cpath d='M16 3v26M3 16h26' stroke='%237dffb0' stroke-width='4'/%3E%3C/svg%3E") 16 16, crosshair !important; }
@media (pointer: coarse) { .unit-selection-bar button { min-height: 42px; } }
@media (max-width: 780px) { .unit-selection-bar { left: 5px; max-width: calc(100% - 10px); bottom: 112px; padding: 5px; } }
