/* Apolo v0.24 - Sidebar rebuild real
   Objetivo: una sola corona, menú legible, sin deformar ni pisar contenido. */
:root{
  --apolo-sidebar-width:300px;
  --apolo-sidebar-mobile-width:288px;
  --apolo-gold:#d4af37;
  --apolo-gold-soft:#f2cf6b;
  --apolo-gold-dark:#8a6212;
  --apolo-panel:#070707;
}

/* El header de marca viejo generaba otra corona/texto. Lo dejamos limpio con sólo hamburger. */
.nav-header{
  background:#050505!important;
  border-right:1px solid rgba(212,175,55,.18)!important;
  box-shadow:none!important;
  overflow:hidden!important;
}
.nav-header .brand-logo{
  color:transparent!important;
  font-size:0!important;
  line-height:0!important;
  text-indent:-9999px!important;
  overflow:hidden!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  width:calc(100% - 68px)!important;
  min-width:0!important;
}
.nav-header .brand-logo::before,
.nav-header .brand-logo::after,
.nav-header .brand-logo *{
  display:none!important;
  content:none!important;
}
.nav-control{right:18px!important;z-index:4!important;}
.nav-control .hamburger .line{background:var(--apolo-gold)!important;}

/* Sidebar desktop: ancho real y contenido sin pisar */
@media (min-width: 769px){
  .nav-header{width:var(--apolo-sidebar-width)!important;min-width:var(--apolo-sidebar-width)!important;}
  .deznav{
    width:var(--apolo-sidebar-width)!important;
    min-width:var(--apolo-sidebar-width)!important;
    left:0!important;
    background:linear-gradient(180deg,#050505 0%,#090806 55%,#050505 100%)!important;
    border-right:1px solid rgba(212,175,55,.20)!important;
    box-shadow:10px 0 32px rgba(0,0,0,.30)!important;
    overflow:hidden!important;
  }
  .header{left:var(--apolo-sidebar-width)!important;width:calc(100% - var(--apolo-sidebar-width))!important;}
  .content-body{margin-left:var(--apolo-sidebar-width)!important;}
  .footer{padding-left:var(--apolo-sidebar-width)!important;}
}

/* Scroll interno prolijo */
.deznav .deznav-scroll{
  height:100%!important;
  overflow-y:auto!important;
  overflow-x:hidden!important;
  padding:10px 12px 18px!important;
  scrollbar-width:thin;
  scrollbar-color:rgba(212,175,55,.45) rgba(255,255,255,.04);
}
.deznav .deznav-scroll::-webkit-scrollbar{width:6px!important;}
.deznav .deznav-scroll::-webkit-scrollbar-track{background:rgba(255,255,255,.04)!important;}
.deznav .deznav-scroll::-webkit-scrollbar-thumb{background:rgba(212,175,55,.45)!important;border-radius:12px!important;}

/* Una sola corona dentro del menú, sin caja/fondo repetida */
.deznav .metismenu .apolo-crown-menu-title,
.apolo-crown-menu-title{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  margin:4px 0 16px!important;
  padding:10px 0 8px!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  min-height:auto!important;
}
.apolo-sidebar-crown{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:100%!important;
  min-height:auto!important;
  padding:0!important;
  margin:0!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
}
.apolo-sidebar-crown::before,.apolo-sidebar-crown::after,
.apolo-crown-menu-title::before,.apolo-crown-menu-title::after{display:none!important;content:none!important;}
.apolo-crown-icon{
  display:block!important;
  font-size:58px!important;
  line-height:.9!important;
  color:var(--apolo-gold)!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  text-shadow:0 0 20px rgba(212,175,55,.56),0 10px 22px rgba(0,0,0,.65)!important;
}
.apolo-crown-sub{display:none!important;}

/* Menú reconstruido: letras entran, iconos alineados, sin deformación */
.deznav .metismenu{
  display:flex!important;
  flex-direction:column!important;
  gap:3px!important;
  padding:0!important;
  margin:0!important;
  width:100%!important;
}
.deznav .metismenu>li{width:100%!important;min-width:0!important;}
.deznav .metismenu>li>a{
  width:100%!important;
  min-width:0!important;
  min-height:48px!important;
  display:flex!important;
  align-items:center!important;
  gap:11px!important;
  padding:9px 12px!important;
  margin:2px 0!important;
  border-radius:15px!important;
  background:transparent!important;
  border:1px solid transparent!important;
  color:#e6dcc6!important;
  font-weight:760!important;
  letter-spacing:0!important;
  line-height:1.2!important;
  text-decoration:none!important;
  overflow:hidden!important;
}
.deznav .metismenu>li>a:hover,
.deznav .metismenu>li.mm-active>a,
.deznav .metismenu>li>a.active,
.deznav .metismenu>li>a[aria-expanded="true"]{
  background:linear-gradient(135deg,rgba(212,175,55,.22),rgba(212,175,55,.06))!important;
  border-color:rgba(212,175,55,.28)!important;
  color:#fff4d4!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.05),0 10px 22px rgba(0,0,0,.18)!important;
}
.deznav .menu-icon{
  width:36px!important;
  height:36px!important;
  min-width:36px!important;
  max-width:36px!important;
  flex:0 0 36px!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  border-radius:13px!important;
  background:rgba(212,175,55,.10)!important;
  border:1px solid rgba(212,175,55,.18)!important;
  margin:0!important;
}
.deznav .menu-icon i,
.deznav .menu-icon svg{
  color:var(--apolo-gold)!important;
  width:18px!important;
  height:18px!important;
  font-size:17px!important;
  line-height:1!important;
  margin:0!important;
}
.deznav .menu-icon svg path,
.deznav .menu-icon svg circle,
.deznav .menu-icon svg line,
.deznav .menu-icon svg polyline{
  stroke:var(--apolo-gold)!important;
}
.deznav .nav-text{
  flex:1 1 auto!important;
  min-width:0!important;
  display:block!important;
  color:inherit!important;
  font-size:13.5px!important;
  line-height:1.18!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  padding:0!important;
  margin:0!important;
}
.deznav .nav-text::first-letter{ }

/* Logout siempre visible abajo del flujo, sin deformar */
.deznav .apolo-sidebar-logout-item{
  margin-top:auto!important;
  padding-top:12px!important;
  border-top:1px solid rgba(212,175,55,.16)!important;
}
.deznav .metismenu>li>a.apolo-sidebar-logout{
  color:#ffd36b!important;
  background:rgba(212,175,55,.06)!important;
  border-color:rgba(212,175,55,.18)!important;
}
.deznav .metismenu>li>a.apolo-sidebar-logout:hover{
  background:rgba(212,175,55,.16)!important;
  color:#fff4d4!important;
}

/* Estado mini: una sola columna de iconos, sin textos aplastados */
@media (min-width:769px){
  body.menu-toggle .nav-header{width:82px!important;min-width:82px!important;}
  body.menu-toggle .deznav{width:82px!important;min-width:82px!important;}
  body.menu-toggle .header{left:82px!important;width:calc(100% - 82px)!important;}
  body.menu-toggle .content-body{margin-left:82px!important;}
  body.menu-toggle .footer{padding-left:82px!important;}
  body.menu-toggle .deznav .deznav-scroll{padding:10px 8px!important;}
  body.menu-toggle .apolo-crown-icon{font-size:34px!important;}
  body.menu-toggle .deznav .metismenu>li>a{justify-content:center!important;padding:8px!important;gap:0!important;}
  body.menu-toggle .deznav .nav-text{display:none!important;}
  body.menu-toggle .deznav .menu-icon{margin:0!important;}
}

/* Mobile: sidebar overlay limpio, textos completos dentro del ancho */
@media (max-width:768px){
  .nav-header{height:64px!important;width:100%!important;min-width:100%!important;left:0!important;right:0!important;}
  .nav-header .brand-logo{display:none!important;}
  .deznav{
    position:fixed!important;
    top:64px!important;
    left:calc(-1 * var(--apolo-sidebar-mobile-width))!important;
    width:var(--apolo-sidebar-mobile-width)!important;
    min-width:var(--apolo-sidebar-mobile-width)!important;
    height:calc(100vh - 64px)!important;
    z-index:1005!important;
    background:#050505!important;
    border-right:1px solid rgba(212,175,55,.22)!important;
    transition:left .22s ease!important;
    overflow:hidden!important;
  }
  body.menu-toggle .deznav,.deznav.show{left:0!important;}
  .header{left:0!important;width:100%!important;}
  .content-body{margin-left:0!important;padding-top:74px!important;}
  .deznav .deznav-scroll{padding:10px 12px 18px!important;}
  .apolo-crown-icon{font-size:46px!important;}
  .deznav .metismenu>li>a{min-height:46px!important;padding:8px 10px!important;gap:10px!important;}
  .deznav .menu-icon{width:34px!important;height:34px!important;min-width:34px!important;flex-basis:34px!important;}
  .deznav .nav-text{font-size:13px!important;white-space:nowrap!important;}
}
