/* The next cut stays prominent above the whole-game progress line. */
:root{--survival-clock-text:800 26px/1 var(--mono);--survival-label-text:700 10px/1.15 var(--sans)}
.competition-strip[data-survival-urgency]:not([data-survival-urgency=""]) #competition-gap{max-width:none;overflow-wrap:anywhere}
.competition-strip .survival-countdown{display:flex;flex-direction:column;align-items:center;gap:3px;text-align:center;color:var(--brand)}
.survival-countdown[hidden]{display:none}
#survival-label{font:var(--survival-label-text);text-transform:uppercase;white-space:nowrap}
#survival-clock{font:var(--survival-clock-text);font-variant-numeric:tabular-nums;white-space:nowrap}
/* Color communicates placement; urgency never changes a qualifying rank to red. */
.competition-strip[data-placement=preparing]{background:var(--surface-2);border-bottom:3px solid var(--action-blue)}
.competition-strip[data-placement=preparing] #competition-open,.competition-strip[data-placement=preparing] .survival-countdown{color:var(--action-blue)}
.competition-strip[data-placement=inside]{background:var(--up-soft);border-bottom:3px solid var(--up)}
.competition-strip[data-placement=inside] #competition-open,.competition-strip[data-placement=inside] .survival-countdown{color:var(--ink)}
.competition-strip[data-placement=outside]{background:var(--warning-bg);border-bottom:3px solid var(--warning-ink)}
.competition-strip[data-placement=outside] #competition-open,.competition-strip[data-placement=outside] .survival-countdown{color:var(--warning-ink)}
.competition-strip[data-placement=spectating]{background:var(--surface-2);border-color:var(--line)}
.competition-strip[data-placement=spectating] .survival-countdown{color:var(--dim)}
.competition-strip[data-survival-urgency=critical] #survival-clock{text-decoration:underline;text-underline-offset:3px}
/* One-time notices must not cover the countdown when a cut is imminent. */
.phone.in-round #survival-alert{top:calc(var(--game-top) + 4px)}
/* Only the result and promotion scroll; both next-step actions stay in view. */
#elimination-dialog{max-height:calc(100dvh - 24px);padding:0;overflow:hidden}
#elimination-dialog[open]{display:flex;flex-direction:column}
#elimination-dialog .elimination-content{min-height:0;overflow-y:auto;overscroll-behavior:contain;padding:16px;scroll-padding:16px}
#elimination-dialog .elimination-actions{flex:none;gap:8px;padding:12px 16px max(16px,env(safe-area-inset-bottom));border-top:1px solid var(--line);background:var(--surface)}
#elimination-dialog .elimination-actions .btn{min-height:60px;padding:10px 12px}
#elimination-dialog .elimination-eyebrow{margin:0 0 6px;color:var(--dim);font:var(--chart-control-text);text-transform:uppercase;letter-spacing:.1em}
#elimination-dialog h2{font:var(--room-title-text);margin:0 0 10px}
#elimination-next,#elimination-spectate{justify-content:flex-start;text-align:left}
#elimination-next{background:var(--action-blue);border-color:var(--action-blue);color:var(--button-ink)}
#elimination-spectate{background:var(--surface);border-color:var(--chrome);color:var(--chrome)}
#elimination-next>span:last-child,#elimination-spectate>span:last-child{margin-left:auto}
#elimination-next small,#elimination-spectate small{display:block;margin-top:4px;font:var(--form-help-text)}
#elimination-next small{color:var(--button-ink)}
#elimination-spectate small{color:var(--dim)}
#survival-alert{display:flex;align-items:center;gap:8px;pointer-events:auto}
#survival-alert[hidden]{display:none}
#survival-message{flex:1}
#survival-dismiss{flex:none;width:44px;min-height:44px;border:1px solid currentColor;border-radius:var(--r-sm);font:var(--control-emphasis)}
#elimination-award{display:flex;align-items:center;gap:12px;margin-bottom:12px;color:var(--ink);font:var(--room-title-text)}
#elimination-award[hidden]{display:none}
#elimination-award .medal{margin:0;filter:var(--bronze-trophy-filter)}
