
/* Hide every previous in-app header implementation while logged in. */
body.v371-game-ui .app > header{
  display:none!important;
}

/* This new shell is inserted directly under <body>, so it is not affected by
   any old .app max-width / centering rules. */
#v371TopbarShell{
  position:sticky!important;
  top:0!important;
  left:0!important;
  right:0!important;
  z-index:50000!important;
  width:100vw!important;
  max-width:100vw!important;
  margin:0!important;
  padding:0!important;
  box-sizing:border-box!important;
  background:linear-gradient(180deg,#030905,#020704)!important;
  border-bottom:1px solid rgba(151,148,46,.38)!important;
  box-shadow:0 8px 24px rgba(0,0,0,.5)!important;
}

.v371-topbar{
  display:grid!important;
  grid-template-columns:46px 112px minmax(78px,1fr) minmax(72px,.9fr) minmax(92px,1.08fr) 38px 38px 38px!important;
  gap:5px!important;
  align-items:center!important;
  width:100%!important;
  min-height:62px!important;
  padding:6px 8px!important;
  box-sizing:border-box!important;
}

.v371-menu{
  width:44px!important;
  height:46px!important;
  padding:0!important;
  border:1px solid #77712d!important;
  border-radius:9px!important;
  background:linear-gradient(180deg,#181b0e,#090d07)!important;
  color:#f7e6b0!important;
  font-size:27px!important;
  font-weight:900!important;
  display:grid!important;
  place-items:center!important;
}

.v371-logo{
  min-width:0!important;
  line-height:.80!important;
}
.v371-logo strong{
  display:block!important;
  margin:0!important;
  font-family:Georgia,"Times New Roman",serif!important;
  font-size:18px!important;
  line-height:.85!important;
  color:#92e54d!important;
  text-transform:uppercase!important;
  white-space:nowrap!important;
  text-shadow:0 2px 0 #2b4d17!important;
}
.v371-logo span{
  display:block!important;
  margin:1px 0 0 8px!important;
  font-family:Georgia,"Times New Roman",serif!important;
  font-size:9px!important;
  color:#d6a850!important;
  font-weight:900!important;
}
.v371-logo em{
  display:block!important;
  margin:3px 0 0 8px!important;
  color:#66d5da!important;
  font-family:system-ui,sans-serif!important;
  font-size:5.5px!important;
  line-height:1!important;
  font-style:normal!important;
  font-weight:1000!important;
}

.v371-res{
  min-width:0!important;
  height:43px!important;
  padding:3px 4px!important;
  display:grid!important;
  grid-template-columns:18px minmax(0,1fr) 19px!important;
  gap:3px!important;
  align-items:center!important;
  box-sizing:border-box!important;
  border:1px solid #666027!important;
  border-radius:8px!important;
  background:linear-gradient(180deg,#11160c,#070b06)!important;
}
.v371-res .ico{
  font-size:15px!important;
  text-align:center!important;
}
.v371-res small{
  display:block!important;
  margin:0 0 3px!important;
  font-size:5px!important;
  line-height:1!important;
  color:#9a9f94!important;
  text-transform:uppercase!important;
}
.v371-res b{
  display:block!important;
  min-width:0!important;
  color:#fff!important;
  font-size:9.5px!important;
  line-height:1!important;
  white-space:nowrap!important;
  overflow:visible!important;
}
.v371-res.gold b{color:#fff3d3!important}
.v371-res.harz b{color:#f0c6ff!important}
.v371-res.dampf b{color:#d8f4ff!important}

.v371-plus{
  width:19px!important;
  height:27px!important;
  min-width:19px!important;
  padding:0!important;
  border:1px solid #758531!important;
  border-radius:5px!important;
  background:#11180b!important;
  color:#a9ee58!important;
  font-size:17px!important;
  line-height:1!important;
}

.v371-iconbtn{
  width:36px!important;
  height:36px!important;
  min-width:36px!important;
  padding:0!important;
  border:1px solid #615a29!important;
  border-radius:8px!important;
  background:linear-gradient(180deg,#11150c,#070a06)!important;
  color:#e8d7a5!important;
  font-size:17px!important;
}

/* Dropdown is anchored to viewport-left, directly below the new hamburger. */
#v032MenuPanel{
  position:fixed!important;
  top:62px!important;
  left:4px!important;
  right:auto!important;
  width:min(280px,calc(100vw - 8px))!important;
  max-width:calc(100vw - 8px)!important;
  margin:0!important;
  transform:none!important;
  z-index:100000!important;
  pointer-events:auto!important;
}

/* Keep the header on one row even on small phones; shrink, never stack. */
@media(max-width:430px){
  .v371-topbar{
    grid-template-columns:42px 88px 66px 60px 75px 30px 30px 30px!important;
    gap:3px!important;
    padding:5px 4px!important;
    min-height:58px!important;
  }
  .v371-menu{width:40px!important;height:42px!important;font-size:24px!important}
  .v371-logo strong{font-size:15px!important}
  .v371-logo span{font-size:7.5px!important;margin-left:5px!important}
  .v371-logo em{font-size:5px!important;margin-left:5px!important}
  .v371-res{height:39px!important;grid-template-columns:14px minmax(0,1fr) 15px!important;gap:1px!important;padding:2px!important}
  .v371-res .ico{font-size:12px!important}
  .v371-res small{font-size:4px!important}
  .v371-res b{font-size:7.5px!important}
  .v371-plus{width:15px!important;min-width:15px!important;height:23px!important;font-size:13px!important}
  .v371-iconbtn{width:28px!important;height:31px!important;min-width:28px!important;font-size:14px!important}
  #v032MenuPanel{top:58px!important}
}
