/* MafiasDistrict NextGen UI Patch 1 — premium sidebar + integrated HUD */
:root{
  --ng-sidebar:286px;
  --ng-bg:#050910;
  --ng-panel:rgba(8,15,25,.985);
  --ng-card:rgba(18,28,43,.72);
  --ng-card-2:rgba(7,11,18,.76);
  --ng-line:rgba(131,169,214,.16);
  --ng-line-2:rgba(131,169,214,.26);
  --ng-text:#f4f7ff;
  --ng-muted:rgba(228,237,255,.62);
  --ng-blue:#5ca8ff;
  --ng-purple:#a78bfa;
  --ng-red:#ff5f70;
}
body:not(.md-nextgen-ui) .md-ng-side,
body:not(.md-nextgen-ui) .md-ng-live-rail{display:none!important;}
@media (min-width:1180px){
  body.md-nextgen-ui{padding-left:var(--ng-sidebar);background-color:var(--ng-bg);}
  body.md-nextgen-ui .topnav-outer{display:none!important;}
  body.md-nextgen-ui header .brand,
  body.md-nextgen-ui .topbar .brand,
  body.md-nextgen-ui .hud .brand,
  body.md-nextgen-ui .game-header .brand,
  body.md-nextgen-ui .site-brand,
  body.md-nextgen-ui .logo-card,
  body.md-nextgen-ui .topbar img[src*="mafiad"],
  body.md-nextgen-ui .hudbar img[src*="mafiad"],
  body.md-nextgen-ui .game-header img[src*="mafiad"],
  body.md-nextgen-ui header img[src*="mafiad"]{display:none!important;}
  body.md-nextgen-ui .topbar,
  body.md-nextgen-ui .topbar.hud,
  body.md-nextgen-ui header.topbar,
  body.md-nextgen-ui .hudbar,
  body.md-nextgen-ui .game-header{
    margin-left:0!important;
    border-left:0!important;
    border-radius:0 0 0 24px!important;
    min-height:76px!important;
    padding-left:18px!important;
    background:radial-gradient(700px 180px at 48% 0%,rgba(92,168,255,.12),transparent 70%),linear-gradient(180deg,rgba(8,15,24,.96),rgba(5,8,14,.90))!important;
    border-bottom:1px solid rgba(131,169,214,.14)!important;
    box-shadow:0 14px 42px rgba(0,0,0,.22)!important;
  }
  body.md-nextgen-ui .topbar:before,
  body.md-nextgen-ui .topbar:after,
  body.md-nextgen-ui .hudbar:before,
  body.md-nextgen-ui .hudbar:after{display:none!important;}
}
@media (max-width:1179px){
  body.md-nextgen-ui{padding-left:0;}
  .md-ng-side{display:none!important;}
  body.md-nextgen-ui .topnav-outer{display:block!important;}
}
.md-ng-side{
  position:fixed;inset:0 auto 0 0;width:var(--ng-sidebar);z-index:9997;
  padding:16px 13px 34px;overflow:auto;scrollbar-width:thin;color:var(--ng-text);
  background:linear-gradient(180deg,rgba(8,15,25,.99),rgba(5,8,14,.99)),radial-gradient(380px 540px at 0 0,rgba(92,168,255,.16),transparent 70%);
  border-right:1px solid var(--ng-line);box-shadow:20px 0 70px rgba(0,0,0,.40);
}
.md-ng-side:before{content:"";position:fixed;left:0;top:0;width:var(--ng-sidebar);height:1px;background:linear-gradient(90deg,transparent,rgba(92,168,255,.65),transparent);pointer-events:none;}
.md-ng-brand{display:flex;align-items:center;gap:12px;padding:12px;border:1px solid rgba(131,169,214,.18);border-radius:20px;text-decoration:none;background:linear-gradient(135deg,rgba(18,28,43,.94),rgba(8,13,22,.84));box-shadow:0 16px 50px rgba(0,0,0,.34);margin-bottom:10px;}
.md-ng-brand img{width:46px;height:46px;object-fit:contain;filter:drop-shadow(0 0 18px rgba(92,168,255,.38));}
.md-ng-brand strong{display:block;font-size:16px;letter-spacing:.045em;line-height:1;color:#fff;}
.md-ng-brand span{display:block;color:rgba(228,237,255,.55);text-transform:uppercase;letter-spacing:.16em;font-size:9px;margin-top:5px;}
.md-ng-status-strip{display:flex;justify-content:space-between;gap:10px;align-items:center;margin:0 0 12px;padding:8px 10px;border-radius:14px;border:1px solid rgba(131,169,214,.10);background:rgba(255,255,255,.025);color:rgba(228,237,255,.50);font-size:10px;text-transform:uppercase;letter-spacing:.13em;}
.md-ng-status-strip b{color:rgba(92,168,255,.92);font-weight:900;}
.md-ng-group{margin:8px 0;border:1px solid transparent;border-radius:16px;transition:background .16s ease,border-color .16s ease;}
.md-ng-group.is-open{background:rgba(255,255,255,.02);border-color:rgba(131,169,214,.08);}
.md-ng-group-toggle{width:100%;display:flex!important;justify-content:space-between;align-items:center;gap:10px;padding:10px 10px!important;margin:0!important;border:0!important;border-radius:14px!important;background:transparent!important;color:rgba(228,237,255,.55)!important;box-shadow:none!important;text-transform:uppercase;letter-spacing:.14em;font-size:11px!important;font-weight:950!important;cursor:pointer;}
.md-ng-group-toggle:hover{color:#fff!important;background:rgba(255,255,255,.04)!important;}
.md-ng-group-toggle i{font-style:normal;transition:transform .18s ease;opacity:.72;}
.md-ng-group.is-open .md-ng-group-toggle i{transform:rotate(180deg);}
.md-ng-nav{display:grid;gap:5px;max-height:0;overflow:hidden;opacity:0;padding:0;margin:0;transition:max-height .24s ease,opacity .18s ease,padding .18s ease;}
.md-ng-group.is-open .md-ng-nav{opacity:1;padding:3px 0 9px;}
.md-ng-nav a{display:flex;align-items:center;gap:10px;min-height:39px;padding:9px 11px;border-radius:13px;color:rgba(244,247,255,.82);text-decoration:none;border:1px solid transparent;background:transparent;font-weight:800;font-size:13px;transition:background .16s ease,border-color .16s ease,transform .16s ease,color .16s ease,box-shadow .16s ease;}
.md-ng-nav a:hover,.md-ng-nav a.active{color:#fff;background:linear-gradient(90deg,rgba(92,168,255,.18),rgba(167,139,250,.08));border-color:rgba(92,168,255,.26);box-shadow:inset 3px 0 0 rgba(92,168,255,.88),0 10px 26px rgba(0,0,0,.16);transform:translateX(2px);}
.md-ng-nav-link .md-ng-ico{width:18px;opacity:.9;flex:0 0 18px;text-align:center;}
.md-ng-footer{margin-top:22px;padding:14px 10px;border-top:1px solid rgba(131,169,214,.12);color:rgba(228,237,255,.43);font-size:12px;}
.md-ng-footer span,.md-ng-footer b{display:block;}
.md-ng-footer b{color:rgba(228,237,255,.62);font-size:11px;margin-top:3px;}
body.md-nextgen-ui .hud-item,body.md-nextgen-ui .stat-pill,body.md-nextgen-ui .top-stat{background:linear-gradient(180deg,rgba(19,29,44,.78),rgba(7,11,18,.82))!important;border:1px solid rgba(131,169,214,.13)!important;border-radius:12px!important;box-shadow:0 10px 32px rgba(0,0,0,.20)!important;}
body.md-nextgen-ui .hud-center{gap:8px!important;}
.md-ng-live-rail{position:fixed;right:16px;bottom:16px;width:360px;max-width:calc(100vw - 32px);z-index:9996;border:1px solid rgba(131,169,214,.18);border-radius:18px;background:linear-gradient(165deg,rgba(13,21,34,.94),rgba(5,8,14,.94));box-shadow:0 24px 80px rgba(0,0,0,.42);overflow:hidden;color:var(--ng-text);}
.md-ng-live-rail.is-hidden{display:none!important;}
.md-ng-live-head{display:flex;justify-content:space-between;align-items:center;padding:11px 13px;border-bottom:1px solid rgba(131,169,214,.12);font-weight:950;font-size:12px;text-transform:uppercase;letter-spacing:.12em;}
.md-ng-live-head button{width:24px;height:24px;border-radius:999px;border:1px solid rgba(131,169,214,.18);background:rgba(255,255,255,.04);color:#fff;cursor:pointer;}
.md-ng-live-body{display:grid;gap:8px;padding:10px;max-height:200px;overflow:auto;}
.md-ng-live-item{display:grid;gap:3px;padding:9px 10px;border:1px solid rgba(131,169,214,.11);border-radius:13px;background:rgba(255,255,255,.035);color:rgba(244,247,255,.82);font-size:12px;}
.md-ng-live-item b{font-size:10px;letter-spacing:.13em;text-transform:uppercase;color:rgba(92,168,255,.85);}
@media (max-width:900px){.md-ng-live-rail{display:none!important;}}


/* Patch 1D — restore sidebar brand and remove only the top HUD logo duplicate.
   This deliberately does NOT target .md-ng-brand, which is the left-sidebar logo. */
@media (min-width:1180px){
  body.md-nextgen-ui .topbar.hud .mdlogo,
  body.md-nextgen-ui .topbar .mdlogo,
  body.md-nextgen-ui .hudbar .mdlogo,
  body.md-nextgen-ui header .mdlogo,
  body.md-nextgen-ui .game-header .mdlogo{
    display:none!important;
    visibility:hidden!important;
  }

  body.md-nextgen-ui .topbar.hud .hud-left-empty{
    display:none!important;
    width:0!important;
    min-width:0!important;
    flex:0 0 0!important;
    margin:0!important;
    padding:0!important;
  }
}

/* Sidebar logo card — locked layout */
body.md-nextgen-ui .md-ng-side .md-ng-brand{
  box-sizing:border-box!important;
  width:100%!important;
  min-height:70px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:flex-start!important;
  gap:12px!important;
  padding:12px!important;
  margin:0 0 10px!important;
  overflow:hidden!important;
  white-space:normal!important;
}

body.md-nextgen-ui .md-ng-side .md-ng-brand img{
  display:block!important;
  flex:0 0 46px!important;
  width:46px!important;
  height:46px!important;
  max-width:46px!important;
  max-height:46px!important;
  object-fit:contain!important;
  margin:0!important;
}

body.md-nextgen-ui .md-ng-side .md-ng-brand-copy,
body.md-nextgen-ui .md-ng-side .md-ng-brand > div{
  display:flex!important;
  min-width:0!important;
  flex:1 1 auto!important;
  flex-direction:column!important;
  justify-content:center!important;
  align-items:flex-start!important;
  gap:4px!important;
  overflow:hidden!important;
}

body.md-nextgen-ui .md-ng-side .md-ng-brand strong{
  display:block!important;
  max-width:100%!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  white-space:nowrap!important;
  font-size:15px!important;
  line-height:1.05!important;
  letter-spacing:.035em!important;
}

body.md-nextgen-ui .md-ng-side .md-ng-brand span{
  display:block!important;
  max-width:100%!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  white-space:nowrap!important;
  font-size:8.5px!important;
  line-height:1.1!important;
  letter-spacing:.14em!important;
}

@media (max-width:1179px){
  body.md-nextgen-ui .md-ng-side{display:none!important;}
}


/* Elite UI Dashboard Pass v13 — premium shell alignment */
:root{--ng-sidebar:300px;--md13-glow:rgba(34,211,238,.34)}
@media (min-width:1180px){
  body.md-nextgen-ui{background:#060b13!important;background-image:radial-gradient(900px 420px at 46% 4%,rgba(59,130,246,.10),transparent 70%),radial-gradient(820px 520px at 55% 100%,rgba(239,68,68,.12),transparent 70%)!important;}
  body.md-nextgen-ui .topbar,body.md-nextgen-ui .topbar.hud,body.md-nextgen-ui header.topbar,body.md-nextgen-ui .hudbar,body.md-nextgen-ui .game-header{min-height:92px!important;background:linear-gradient(180deg,rgba(7,15,27,.98),rgba(4,8,15,.94))!important;border-bottom:1px solid rgba(121,167,219,.14)!important;box-shadow:0 18px 70px rgba(0,0,0,.36)!important;}
  body.md-nextgen-ui .hud-strip{gap:9px!important;justify-content:center!important;}
  body.md-nextgen-ui .hud-item,body.md-nextgen-ui .stat-pill,body.md-nextgen-ui .top-stat{border-radius:13px!important;background:linear-gradient(180deg,rgba(13,24,39,.92),rgba(6,11,20,.92))!important;border:1px solid rgba(121,167,219,.16)!important;box-shadow:0 12px 32px rgba(0,0,0,.24)!important;}
  body.md-nextgen-ui .md-ng-side{width:var(--ng-sidebar)!important;background:linear-gradient(180deg,rgba(7,15,27,.99),rgba(3,7,13,.995))!important;border-right:1px solid rgba(121,167,219,.15)!important;box-shadow:22px 0 80px rgba(0,0,0,.48)!important;}
  body.md-nextgen-ui .md-ng-brand{min-height:84px!important;border-radius:20px!important;background:linear-gradient(135deg,rgba(17,31,50,.92),rgba(7,13,23,.92))!important;}
  body.md-nextgen-ui .md-ng-nav a{min-height:42px!important;border-radius:12px!important;font-size:13px!important;}
  body.md-nextgen-ui .md-ng-nav a.active{background:linear-gradient(90deg,rgba(59,130,246,.26),rgba(168,85,247,.13))!important;border-color:rgba(96,165,250,.38)!important;box-shadow:inset 3px 0 0 #22d3ee,0 12px 30px rgba(0,0,0,.24)!important;}
  body.md-nextgen-ui main,body.md-nextgen-ui .page,body.md-nextgen-ui .content{min-width:0!important;}
}
.md-ng-live-rail{display:none!important;}


/* Nav Stabilizer v20 — route-safe sidebar polish */
body.md-nextgen-ui .md-ng-side{overflow-y:auto!important;overflow-x:hidden!important;overscroll-behavior:contain!important;}
body.md-nextgen-ui .md-ng-nav a b{min-width:0!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important;}
body.md-nextgen-ui .md-ng-nav-link[data-page="city"].active,
body.md-nextgen-ui .md-ng-nav-link[data-page="travel"].active,
body.md-nextgen-ui .md-ng-nav-link[data-page="world_map"].active,
body.md-nextgen-ui .md-ng-nav-link[data-page="world_state"].active,
body.md-nextgen-ui .md-ng-nav-link[data-page="economy_pulse"].active,
body.md-nextgen-ui .md-ng-nav-link[data-page="city_media"].active{box-shadow:inset 3px 0 0 #22d3ee,0 12px 30px rgba(0,0,0,.24),0 0 0 1px rgba(34,211,238,.10)!important;}
body.md-nextgen-ui .md-ng-group[data-group="world"].is-open{background:linear-gradient(180deg,rgba(15,25,42,.58),rgba(7,12,20,.42))!important;border-color:rgba(34,211,238,.14)!important;}
body.md-nextgen-ui .md-ng-group[data-group="world"] .md-ng-group-toggle span{letter-spacing:.16em!important;}
@media (min-width:1180px){
  body.md-nextgen-ui .md-ng-side::-webkit-scrollbar{width:7px!important;}
  body.md-nextgen-ui .md-ng-side::-webkit-scrollbar-track{background:rgba(255,255,255,.025)!important;}
  body.md-nextgen-ui .md-ng-side::-webkit-scrollbar-thumb{background:linear-gradient(180deg,rgba(34,211,238,.42),rgba(168,85,247,.36))!important;border-radius:999px!important;}
}
