/* Keep transient labels below both rows of the HUD. */
#audio-controls { top:var(--hud-safe-top,104px) !important; }
#run-tip, #logro-notif, #resistance-overlay, #fog-label {
    left:64px !important; right:14px !important; bottom:auto !important;
    width:auto !important; max-width:none !important; box-sizing:border-box;
    transform:none !important; white-space:normal !important;
    overflow-wrap:anywhere; text-align:center;
}
#fog-label { position:absolute; z-index:46; padding:6px; color:#dbe9f1; background:#182631e6; font:12px sans-serif; pointer-events:none; }
#phase-overlay, #boss-warning {
    top:var(--labels-safe-top,120px) !important;
    bottom:var(--controls-safe-bottom,110px) !important; left:62px !important; right:14px !important;
    gap:20px; overflow:auto; justify-content:flex-start !important;
    padding:20px 8px 12px; box-sizing:border-box;
}
.phase-title-container { flex-shrink:0; max-width:calc(100% - 24px); padding:10px 14px; transform:none !important; animation:labelFade 2.8s ease-out both !important; }
#phase-title-text { overflow-wrap:anywhere; text-align:center; }
#phase-subtitle-text { margin:0; flex-shrink:0; }
.boss-warning-name { margin:0; max-width:95%; box-sizing:border-box; text-align:center; overflow-wrap:anywhere; }
.warning-bar { box-sizing:border-box; padding:12px 6px; }
.floating-text, .onomatopoeia {
    max-width:calc(100% - 90px); white-space:normal; overflow-wrap:anywhere;
    box-sizing:border-box; transform:none !important;
    animation:labelFade 1.6s ease-out forwards !important;
}
.onomatopoeia { font-size:20px; animation-duration:.6s !important; }
#game-wrapper:has(#phase-overlay[style*="display: flex"]) .floating-text,
#game-wrapper:has(#phase-overlay[style*="display: flex"]) .onomatopoeia,
#game-wrapper:has(#boss-warning[style*="display: flex"]) .floating-text,
#game-wrapper:has(#boss-warning[style*="display: flex"]) .onomatopoeia { visibility:hidden; }
@keyframes labelFade { 0% {opacity:0} 12%,70% {opacity:1} 100% {opacity:0} }
#flash-horde-banner { left:12px; right:12px; max-width:calc(100% - 24px); box-sizing:border-box; white-space:normal; text-align:center; }
#mobile-bomb-btn { position:absolute !important; }
.hud-coins, .hud-score, .ui-combo, #hp-text {
    box-shadow:0 3px 0 rgba(0,0,0,.65), 0 5px 9px rgba(0,0,0,.35), inset 0 1px 0 rgba(255,255,255,.3) !important;
}
@media(max-height:500px) {
    #phase-title-text { font-size:22px !important; }
    #phase-overlay, #boss-warning { gap:10px; padding-top:10px; }
    .phase-title-container { padding:4px 10px; }
    #phase-subtitle-text { font-size:11px !important; padding:4px; }
}
