/* Lane U1: "new version" strip (#ver-bar) and the What's new sheet (.nv). See public/js/whatsnew.js.
   The strip is a full-width row at the very top edge. While it shows (body.has-ver) every top-anchored HUD piece moves down by the strip's
   own height (--ver-h minus the safe-area inset the strip already pads), with the `translate` property so their own transforms stay intact.
   Nothing new ever sits in the play area. */
:root{--ver-h:0px}
#ver-bar{position:fixed;z-index:45;top:0;left:0;right:0;display:flex;align-items:stretch;gap:4px;
  padding-top:env(safe-area-inset-top,0px);padding-left:max(12px,env(safe-area-inset-left,0px));padding-right:max(6px,env(safe-area-inset-right,0px));
  background:rgba(14,20,42,.94);border-bottom:1px solid rgba(233,184,92,.55);color:#f1ece0;font:13px/1.3 "Gowun Dodum",system-ui,sans-serif;
  -webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}
#ver-bar .vb-go{flex:1;min-width:0;display:flex;align-items:center;justify-content:center;gap:8px;min-height:34px;padding:4px 6px;
  background:none;border:0;color:inherit;font:inherit;cursor:pointer;touch-action:manipulation}
#ver-bar .vb-txt{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
#ver-bar .vb-act{color:#e9b85c;font-weight:700;white-space:nowrap}
#ver-bar .vb-dot{flex:none;width:7px;height:7px;border-radius:50%;background:#e9b85c;box-shadow:0 0 8px rgba(233,184,92,.8)}
#ver-bar .vb-x{flex:none;width:40px;min-height:34px;background:none;border:0;color:rgba(241,236,224,.7);font-size:20px;line-height:1;cursor:pointer;touch-action:manipulation}
body.has-ver :is(.top,.livebar,.places,.hint,.toast,.netnote,.banner,#inapp-bar,#fs-btn,#fs-pop,.hymn-card,.bl-band,.bl-offer,.world-pill,#minimap,#zone-ribbon,#qlc-ob .ob-card){
  translate:0 calc(var(--ver-h) - env(safe-area-inset-top,0px))}
/* on phones an open sheet or the walking joystick (body.subs-top) pulls the captions up under the top stack (app.css): they move down with it, else they cover the LIVE line */
@media (max-width:860px){body.has-ver:is(.sheet-open,.subs-top) .subs{translate:0 calc(var(--ver-h) - env(safe-area-inset-top,0px))}}

.nv-lead{margin:0 0 10px;color:var(--muted)}
.nv .nv-list{margin:8px 0 0;padding-left:1.15em;display:flex;flex-direction:column;gap:6px;line-height:1.5}
.nv .nv-note{margin:8px 0 0;font-size:12.5px;color:var(--muted)}
.nv-more{margin-top:12px}
.nv-more>summary{cursor:pointer;color:var(--muted);padding:6px 0}
.nv-old{margin-top:10px;padding-top:10px;border-top:1px solid var(--line)}
.nv .nv-ok{display:block;width:100%;margin-top:14px}
.nv-row{display:flex;align-items:center;justify-content:space-between;width:100%;gap:10px;padding:12px 14px;margin-bottom:10px;
  background:rgba(233,184,92,.08);border:1px solid rgba(233,184,92,.35);border-radius:14px;color:inherit;font:inherit;text-align:left;cursor:pointer}
.nv-row small{display:block;color:var(--muted);font-size:12.5px;margin-top:2px}
