:root {
  --sidebar-width: 260px;
  --sidebar-bg: #0c0a08;
  --sidebar-border: rgba(255, 255, 255, 0.08);
  --sidebar-muted: #8f8880;
  --sidebar-orange: #f58220;
}

body.bv-has-sidebar { padding-left: var(--sidebar-width); }

.sidebar {
  position: fixed;
  inset: 0 auto 0 0;
  z-index: 9000;
  display: flex;
  flex-direction: column;
  width: var(--sidebar-width);
  height: 100vh;
  padding: 24px 16px;
  color: #fff;
  background: radial-gradient(circle at 10% 5%, rgba(245,130,32,.13), transparent 28%), var(--sidebar-bg);
  border-right: 1px solid var(--sidebar-border);
}

.sidebar-brand { display:flex; align-items:center; gap:12px; padding:0 8px 22px; border-bottom:1px solid var(--sidebar-border); }
.brand-mark { display:grid; flex:0 0 42px; width:42px; height:42px; place-items:center; color:#fff; border-radius:12px; background:linear-gradient(135deg,#ff922f,#d85c06); box-shadow:0 8px 24px rgba(245,130,32,.24); }
.brand-mark span { font-size:17px; font-weight:800; }
.brand-text { min-width:0; }
.brand-text p,.brand-text small { margin:0; }
.brand-text p { color:#fff; font-size:14px; font-weight:700; }
.brand-text small { display:block; margin-top:3px; color:var(--sidebar-muted); font-size:10px; }

.sidebar-toggle { display:none; margin-left:auto; width:42px; height:42px; padding:10px; border:1px solid var(--sidebar-border); border-radius:10px; background:rgba(255,255,255,.04); }
.sidebar-toggle span { display:block; width:100%; height:2px; margin:4px 0; border-radius:10px; background:#fff; }

.sidebar-nav { flex:1; margin-top:20px; overflow-y:auto; scrollbar-width:thin; }
.sidebar-menu { display:flex; flex-direction:column; gap:5px; width:100%; margin:0; padding:0; list-style:none; }
.sidebar-menu .menu-item { width:100%; margin:0; padding:0; border:0; }
.sidebar-menu .side-item { position:relative; display:flex; align-items:center; width:100%; min-height:44px; padding:10px 13px 10px 42px; color:#999189; font-size:12px; font-weight:500; text-decoration:none; border:1px solid transparent; border-radius:11px; transition:.2s ease; }
.sidebar-menu .side-item::before { content:""; position:absolute; left:16px; width:8px; height:8px; border:2px solid currentColor; border-radius:50%; opacity:.65; }
.sidebar-menu .side-item:hover { color:#fff; background:rgba(255,255,255,.045); border-color:rgba(255,255,255,.06); transform:translateX(2px); }
.sidebar-menu .side-item.is-active,.sidebar-menu .current-menu-item>.side-item,.sidebar-menu .current_page_item>.side-item { color:#fff; background:linear-gradient(90deg,rgba(245,130,32,.2),rgba(245,130,32,.06)); border-color:rgba(245,130,32,.22); box-shadow:inset 3px 0 0 var(--sidebar-orange); }
.sidebar-menu .side-item.is-active::before,.sidebar-menu .current-menu-item>.side-item::before { border-color:var(--sidebar-orange); background:var(--sidebar-orange); opacity:1; }

.sidebar-user { flex-shrink:0; margin-top:18px; padding:14px; border:1px solid var(--sidebar-border); border-radius:12px; background:rgba(255,255,255,.035); }
.sidebar-user p,.sidebar-user small { margin:0; }
.sidebar-user p { color:#fff; font-size:13px; font-weight:600; }
.sidebar-user small { display:block; margin-top:4px; color:var(--sidebar-muted); font-size:9px; }

@media (max-width: 768px) {
  body.bv-has-sidebar { padding-left:0; }
  .sidebar { position:relative; width:100%; height:auto; padding:14px; border-right:0; border-bottom:1px solid var(--sidebar-border); }
  .sidebar-brand { padding-bottom:14px; border-bottom:0; }
  .sidebar-toggle { display:block; }
  .sidebar-nav { display:none; max-height:65vh; margin-top:8px; padding-top:8px; border-top:1px solid var(--sidebar-border); }
  .sidebar-nav.is-open { display:block; }
  .sidebar-user { display:none; }
}
