/* =========================================================
   SENVY - sidebar.css
   ========================================================= */

.sidebar{
  width: 270px;
  flex: 0 0 270px;
  min-height: 100vh;
  position: sticky;
  top: 0;

  background: linear-gradient(180deg, rgba(18,18,28,.85), rgba(10,10,16,.85));
  border-right: 1px solid rgba(255,255,255,.10);
  padding: 14px 12px;
  overflow: auto;
}

.sidebar-brand{
  display:flex;
  align-items:center;
  gap: 12px;
  padding: 10px 10px 14px;
  border-bottom: 1px solid rgba(255,255,255,.08);
  margin-bottom: 12px;
}

.brand-dot{
  width: 38px;
  height: 38px;
  border-radius: 14px;
  border: 1px solid rgba(180,92,255,.35);
  background: radial-gradient(circle at 30% 30%, rgba(180,92,255,.55), rgba(180,92,255,.12));
  box-shadow: 0 16px 40px rgba(180,92,255,.18);
}

.brand-title{
  font-weight: 900;
  letter-spacing: .22em;
  font-size: 14px;
}

.brand-sub{
  font-size: 12px;
  color: rgba(255,255,255,.62);
  margin-top: 2px;
}

.sidebar-nav{
  display:flex;
  flex-direction: column;
  gap: 6px;
  padding: 6px 4px 12px;
}

.nav-section{
  margin: 12px 6px 6px;
  font-size: 11px;
  color: rgba(255,255,255,.55);
  letter-spacing: .12em;
  text-transform: uppercase;
}

.nav-item{
  display:flex;
  align-items:center;
  gap: 10px;
  padding: 10px 10px;
  border-radius: 12px;
  text-decoration:none;
  border: 1px solid transparent;
  color: rgba(255,255,255,.88);
  background: transparent;
  transition: background .15s ease, border-color .15s ease, transform .05s ease;
}

.nav-item:hover{
  background: rgba(255,255,255,.06);
  border-color: rgba(255,255,255,.10);
}

.nav-item:active{
  transform: translateY(1px);
}

.nav-item.active{
  background: rgba(180,92,255,.14);
  border-color: rgba(180,92,255,.22);
  color: #fff;
}

.nav-item.active::before{
  content:"";
  width: 6px;
  height: 20px;
  border-radius: 999px;
  background: rgba(180,92,255,.90);
  box-shadow: 0 0 0 6px rgba(180,92,255,.10);
}

/* Scrollbar (Chrome/Safari) */
.sidebar::-webkit-scrollbar{ width: 10px; }
.sidebar::-webkit-scrollbar-thumb{
  background: rgba(255,255,255,.10);
  border-radius: 999px;
  border: 2px solid rgba(0,0,0,0);
  background-clip: padding-box;
}
.sidebar::-webkit-scrollbar-thumb:hover{
  background: rgba(255,255,255,.16);
  background-clip: padding-box;
}

/* =========================================================
   Responsivo: sidebar vira topo (modo simples)
   ========================================================= */
@media (max-width: 960px){
  .sidebar{
    width: 100%;
    flex: 0 0 auto;
    min-height: auto;
    position: relative;
    border-right: none;
    border-bottom: 1px solid rgba(255,255,255,.10);
    padding: 10px;
  }
  .sidebar-nav{
    display:grid;
    grid-template-columns: repeat(2, minmax(0,1fr));
    gap: 8px;
  }
  .nav-section{
    grid-column: 1 / -1;
    margin-top: 10px;
  }
}