/* A separate layout row, not an overlay over the game or its touch controls. */
body.has-banner{display:grid;grid-template-rows:minmax(0,1fr) auto;height:var(--window-height,100dvh);min-height:0}
#nightfall-banner{grid-row:2;position:relative;align-self:end;box-sizing:border-box;width:100%;min-width:0;margin:0;padding:10px max(0px,env(safe-area-inset-right)) calc(4px + env(safe-area-inset-bottom)) max(0px,env(safe-area-inset-left));background:#07111a;border-top:1px solid #34434a;z-index:50;text-align:center;touch-action:auto}
.banner-label{display:block;margin:0 0 3px;color:#8c9b9f;font:9px/12px system-ui;letter-spacing:1px;pointer-events:none}
.banner-slot{position:relative;width:320px;height:50px;margin:0 auto;background:#0d1c26}
#nightfall-banner-unit{position:relative;display:inline-block;width:320px;height:50px;margin:0;padding:0;z-index:1}
.banner-placeholder{position:absolute;inset:0;display:grid;place-items:center;pointer-events:none;color:#697c84;font:11px system-ui;z-index:0}
#nightfall-banner[data-filled=true] .banner-placeholder{visibility:hidden}
body.has-banner #app,body.has-banner #brass-shell{left:var(--viewport-left,0px);top:var(--viewport-top,0px);right:auto;bottom:auto;width:var(--viewport-width,100vw);height:var(--viewport-height,calc(100dvh - 80px))}
body.has-banner #nightfall-loading,body.has-banner .screen-layer{bottom:var(--banner-reserved,80px)}
body.has-banner .screen-layer{transform:translateZ(0)}
@media(max-width:319px){#nightfall-banner{display:none}}

#nightfall-banner[hidden]{display:none!important}
