/* The clock is the shared anchor. Scene tint never covers these UI layers. */
.unified-ui>header,.unified-ui>footer,.unified-ui>#status,.unified-ui .bullet-wrap,.unified-ui #world-clock{display:none!important}
.unified-ui.bullet-active:after{display:none}.unified-ui .scene-frame,.unified-ui .service-frame,.unified-ui #backdrop{transition:filter .18s ease}.unified-ui.ui-paused .scene-frame,.unified-ui.ui-paused .service-frame,.unified-ui.ui-paused>#backdrop{filter:brightness(.46) blur(3px)}
.scene-tint{position:absolute;inset:0;z-index:5;pointer-events:none;background:rgba(57,138,202,.16);opacity:0}.unified-ui .shade{pointer-events:none;background:linear-gradient(#07131b22,transparent 25%,transparent 80%,#07131b22)}
.info-hud{position:absolute;inset:0;z-index:65;pointer-events:none;opacity:0;transform:translateY(-3px);transition:opacity .16s,transform .16s}.info-expanded .info-hud{opacity:1;transform:none}.info-pause{position:absolute;top:var(--pause-top);right:calc(18px + env(safe-area-inset-right));width:44px;height:44px;min-height:44px;padding:0!important;border:0;background:transparent;color:#d9e9ea;font-size:18px;font-weight:300;text-shadow:0 1px 4px #000;pointer-events:auto}.minimal-gauges{position:absolute;right:calc(23px + env(safe-area-inset-right));top:var(--gauges-top);width:143px;display:grid;gap:9px;filter:drop-shadow(0 1px 2px #081820)}
.minimal-gauges>div{height:4px;position:relative;background:#add6db22}.gauge-hp{background:none!important}.gauge-hp:before{content:'';position:absolute;inset:0;background:repeating-linear-gradient(90deg,#e2e9df33 0 calc(5% - 1px),transparent calc(5% - 1px) 5%)}.gauge-hp i{position:absolute;inset:0 auto 0 0;width:var(--value);background:repeating-linear-gradient(90deg,#e2e9df 0 calc(7.15px - 1px),transparent calc(7.15px - 1px) 7.15px)}.gauge-energy i{position:absolute;left:0;top:0;height:100%}.energy-current{background:#8bd6df}.energy-trail{background:#c9c1a280}.minimal-gauges .gauge-charge{display:flex;gap:3px;background:none}.gauge-charge i{position:relative;flex:1;background:#add6db22}.gauge-charge i:after{content:'';position:absolute;inset:0 auto 0 0;width:var(--value);background:#b9e3e8}
.unified-ui #panel{position:absolute;inset:0;z-index:10;background:none!important;border:0!important;padding:0!important;pointer-events:none}.unified-ui #panel>small,.unified-ui #panel>h2,.unified-ui #panel>p,.unified-ui #attack{display:none!important}.unified-ui #act{display:none;pointer-events:auto;position:absolute;bottom:calc(120px + env(safe-area-inset-bottom));left:50%;transform:translateX(-50%);width:auto;min-width:150px;max-width:70%;margin:0;padding:10px 18px;min-height:42px;border:1px solid #d5e9e877;background:#11252d99;color:#ebeeee;font-size:12px}.unified-ui.ui-ready #act,.unified-ui.ui-stage-white #act{display:block}.unified-ui #choices{display:none}.unified-ui.ui-stage-white #choices:not([hidden]){display:flex;position:absolute;left:20px;right:20px;bottom:calc(175px + env(safe-area-inset-bottom));pointer-events:auto;gap:8px}.unified-ui #choices button{background:#10212c99;color:#e2ece9;border:1px solid #b2cdce66;min-height:44px}
.unified-ui .control-row{position:static;display:block;margin:0;pointer-events:none}.unified-ui #pad{position:absolute;left:calc(20px + env(safe-area-inset-left));bottom:calc(22px + env(safe-area-inset-bottom));width:94px;height:94px;min-height:94px;border-radius:50%;margin:0;background:#b7d6da0b;border:1px solid #e7f5f277;box-shadow:none;color:#e2efec;touch-action:none;pointer-events:auto;display:flex;align-items:center;justify-content:center;font-size:10px;letter-spacing:2px}.unified-ui #pad:before{content:'';position:absolute;inset:20px;border:1px solid #e7f5f288;border-radius:50%;pointer-events:none}.unified-ui #pad.active{background:#c2e9ea16}.unified-ui #pad i{display:none}.unified-ui #message,.unified-ui #notice{position:absolute;bottom:calc(128px + env(safe-area-inset-bottom));left:24px;right:24px;top:auto;background:transparent;border:0;text-shadow:0 1px 5px #000;pointer-events:none;font-size:11px;text-align:center;min-height:0;padding:0;color:#dbe9e7;z-index:12}
.attack-control{position:absolute;right:calc(20px + env(safe-area-inset-right));bottom:calc(24px + env(safe-area-inset-bottom));z-index:15;width:76px;height:76px;min-height:76px;margin:0;padding:13px!important;border-radius:50%;border:1px solid #bbdfe2bb;background:#0b202722;color:#e4f3f1;touch-action:none;user-select:none;-webkit-user-select:none;display:block;box-shadow:0 1px 4px #081b2333}.attack-control svg{width:42px;height:42px;fill:none;stroke:currentColor;stroke-width:1.2;pointer-events:none}.attack-control>span{position:absolute;top:28px;font-size:13px;opacity:.7;pointer-events:none}.attack-prev{left:4px}.attack-next{right:4px}.attack-control small{position:absolute;bottom:84px;left:-15px;right:-15px;text-align:center;color:#daecec;font-size:11px;white-space:nowrap;text-shadow:0 1px 5px #000;pointer-events:none}.attack-control:disabled{opacity:0;pointer-events:none}.ui-paused #panel,.ui-paused #waypoints,.ui-paused .attack-control,.ui-paused #poi{pointer-events:none!important;visibility:hidden}.ui-paused .clock-hud{opacity:.4!important}
.unified-pause{position:absolute;inset:0;z-index:75;background:#05101744;display:flex;align-items:center;justify-content:center;padding:100px 25px 30px;box-sizing:border-box;overflow:auto;backdrop-filter:blur(1px)}.unified-pause[hidden]{display:none!important}.pause-card{width:100%;max-width:330px;padding:24px 22px;border:1px solid #abd4d680;background:#0b1b22b8;color:#dceae7;box-sizing:border-box}.pause-card>small{display:block;text-align:center;font-size:15px;letter-spacing:4px;border-bottom:1px solid #a1cbdc66;padding-bottom:18px}.pause-card .pause-stage{text-align:center;margin:20px 0 6px;font-size:10px;letter-spacing:2px;color:#bfd4d4}.pause-card h2{font-size:21px;letter-spacing:3px;font-weight:400;text-align:center;margin:8px 0 26px}.pause-card dl{font-size:12px;line-height:1.9}.pause-card dt{font-size:10px;color:#91b1b6;margin-top:12px}.pause-card dd{margin:3px 0 18px;white-space:pre-line}.pause-card button{display:block;width:100%;min-height:44px;padding:9px;margin:4px 0;border:0;background:none;color:#d9e9e6;font-size:14px;font-weight:400;letter-spacing:2px}.pause-card [data-menu=resume]{border:1px solid #9ed9df;background:#17313b44;margin:20px 0 12px}.pause-extra{font-size:11px;line-height:1.9;white-space:pre-line;padding:12px 0;border-top:1px solid #a1cbdc44}.pause-extra input{display:block;width:100%;accent-color:#a9dee1}.unified-ui.ui-playing #curtain[hidden]{display:none}.unified-ui #poi{background:#10253055;color:#e7eeee;min-height:44px;min-width:44px;font-size:19px}
/* Descending regions keep choices and ETA available in the pause menu. */
.unified-ui .telemetry{display:none!important}.unified-ui.descent-unified #panel{display:none!important}.descent-pause-actions{display:grid;gap:8px;margin:16px 0}.descent-pause-actions button{border:1px solid #a5cbd366!important;font-size:11px!important;letter-spacing:0!important}.descent-pause-actions small{display:block;opacity:.65;font-size:9px}.unified-ui.descent-unified #waypoints button{font-size:16px;min-width:44px;min-height:44px;padding:5px}.unified-ui.descent-unified #waypoints span{font-size:9px}.descent-context{position:absolute;left:50%;bottom:calc(128px + env(safe-area-inset-bottom));transform:translateX(-50%);z-index:12;border:1px solid #bedfdf77;background:#0d222a88;color:#dfefeb;min-height:44px;padding:8px 18px;font-size:11px;white-space:nowrap}.ui-paused .descent-context{display:none}
.clock-shot .unified-pause{display:flex}.clock-shot .unified-pause[hidden]{display:none!important}.clock-shot.unused{display:none}
@media(max-height:650px){.pause-card{padding:16px}.pause-card h2{margin:8px 0 12px}.pause-card button{min-height:44px}.unified-pause{padding-top:82px}.pause-card>small{padding-bottom:12px}.minimal-gauges{gap:7px}}

/* Auto cross-axis margins keep long pause menus scrollable on short phones. */
.unified-pause{align-items:flex-start}.pause-card{margin:auto 0;flex-shrink:0}

.ui-pending>header,.ui-pending>footer,.ui-pending>#panel,.ui-pending>#status,.ui-pending>.telemetry{visibility:hidden}
body.play-ui .intro,body.play-ui .side{display:none}body.play-ui .layout,body.play-ui>main{gap:0}

/* A consumed gauge can remain visible without opening dates, pause or bullet time. */
.unified-ui .info-hud{opacity:1;transform:none;transition:none}.unified-ui .minimal-gauges{opacity:var(--gauge-opacity,0);pointer-events:none}.unified-ui .info-pause{opacity:0;pointer-events:none;transition:opacity .16s}.unified-ui.info-expanded .info-pause{opacity:1;pointer-events:auto}

.unified-ui .info-pause{visibility:hidden}.unified-ui.info-expanded .info-pause{visibility:visible}

/* Shared controls stay present across all rooms, overlays and pause states. */
.unified-ui #pad,.unified-ui .attack-control,.unified-ui .clock-hud{visibility:visible!important;z-index:80}.unified-ui .attack-control:disabled{opacity:.45;pointer-events:none}.unified-ui #pad[aria-disabled=true]{opacity:.45;pointer-events:none}.unified-ui.ui-paused #pad,.unified-ui.ui-paused .attack-control{visibility:visible!important;pointer-events:none!important}.unified-pause{padding-bottom:134px}.pause-card{max-height:100%;overflow:auto}

/* The same four-way touch surface in every room and descent state. */
.unified-ui #pad{font-size:0;letter-spacing:0;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none}.unified-ui #pad>button{position:absolute;width:32px;height:32px;min-height:32px;padding:0!important;margin:0;border:0;background:transparent;color:#e2efec;font:18px Arial,sans-serif;line-height:32px;touch-action:none;z-index:2;box-shadow:none}.unified-ui #pad>[data-direction=up]{left:30px;top:0}.unified-ui #pad>[data-direction=down]{left:30px;bottom:0}.unified-ui #pad>[data-direction=left]{left:0;top:30px}.unified-ui #pad>[data-direction=right]{right:0;top:30px}.pad-center{position:absolute;width:7px;height:7px;border-radius:50%;background:#e2efec;transform:translate(var(--stick-x,0),var(--stick-y,0));pointer-events:none}.unified-ui #pad[aria-disabled=true]>button{pointer-events:none}
.bullet-visible {outline-color:#a2d8e0!important;}
.bullet-visible::after{content:'';position:absolute;inset:0;pointer-events:none;background:radial-gradient(ellipse at center,transparent 50%,#60c6e317);box-shadow:inset 0 0 24px #9deaff15;z-index:3;animation:bullet-arrive .22s ease-out;}
@keyframes bullet-arrive{from{box-shadow:inset 0 0 70px #a9efff60}to{box-shadow:inset 0 0 24px #9deaff15}}
/* One shared baseline, with the original movement-pad anchor and pad sizes. */
.unified-ui{--control-center-bottom:calc(69px + env(safe-area-inset-bottom));}
.unified-ui .attack-control{bottom:calc(var(--control-center-bottom) - 38px);}
/* Visual 60 x 15; invisible 84 x 48 hit area extends on all four sides. */
.unified-ui .dash-control{position:absolute;left:50%;bottom:var(--control-center-bottom);transform:translate(-50%,50%);z-index:80;display:flex;align-items:center;justify-content:center;box-sizing:border-box;width:84px;height:48px;min-width:0;min-height:48px;margin:0;padding:0!important;border:0;border-radius:0;background:transparent;box-shadow:none;opacity:1;touch-action:none;user-select:none;-webkit-user-select:none;pointer-events:auto;}
.dash-gauge{display:block;box-sizing:border-box;width:60px;height:15px;padding:3px;border:1px solid #e7f5f2;border-radius:999px;pointer-events:none;}
.dash-gauge-track{display:block;width:100%;height:100%;overflow:hidden;border-radius:999px;background:#4c5c63;}
.dash-gauge-fill{display:block;width:40%;height:100%;background:#45e6dd;}
.unified-ui .dash-control:focus-visible{outline:1px solid #e7f5f2;outline-offset:2px;}
.ui-paused .dash-control,.ui-pending .dash-control{visibility:hidden;pointer-events:none;}

/* Quiet press feedback; the gauge always retains the approved 40% fill. */
.unified-ui .dash-control.dash-held .dash-gauge{background:#e7f5f21a;box-shadow:0 0 5px #e7f5f233;}
