.vesta-sidebar { position: fixed; inset: 0 auto 0 0; width: var(--vesta-sidebar-w); height: 100vh; background:var(--vesta-sidebar-bg); color:var(--vesta-sidebar-text); padding:18px 14px; border-right:1px solid rgba(255,255,255,.04); overflow:auto; transition:width .22s ease, padding .22s ease, transform .24s ease; z-index: 220; -webkit-overflow-scrolling: touch; }
.vesta-sidebar__brand { display:flex; gap:12px; align-items:center; padding:6px 8px 18px; margin-bottom:12px; border-bottom:1px solid rgba(255,255,255,.08); }
.vesta-sidebar__logo-mark { width:36px; height:36px; border-radius:12px; background:linear-gradient(135deg,#d08a49 0%,#9a5720 100%); color:#fff; display:grid; place-items:center; font-weight:700; }
.vesta-sidebar__brand-copy strong { display:block; font-size:14px; }
.vesta-sidebar__brand-copy span { display:block; color:var(--vesta-sidebar-muted); font-size:11px; margin-top:2px; }
.vesta-sidebar__group { margin-bottom:18px; }
.vesta-sidebar__group-label { padding:8px 10px; color:var(--vesta-sidebar-muted); font-size:11px; text-transform:uppercase; letter-spacing:.08em; }
.vesta-sidebar__item { display:flex; align-items:center; gap:12px; padding:10px 12px; border-radius:12px; color:var(--vesta-sidebar-text); margin-bottom:4px; }
.vesta-sidebar__item.is-active { background:var(--vesta-sidebar-active-bg); color:var(--vesta-sidebar-active-text); }
.vesta-sidebar__label { font-size:13px; font-weight:500; }
.vesta-icon-pill, .vesta-sidebar__item .vesta-icon { width:20px; height:20px; display:grid; place-items:center; flex:0 0 auto; }
.vesta-app-shell.is-sidebar-collapsed .vesta-sidebar { width: var(--vesta-sidebar-w-collapsed); padding-left:10px; padding-right:10px; }
.vesta-app-shell.is-sidebar-collapsed .vesta-sidebar__brand { justify-content:center; padding-left:0; padding-right:0; }
.vesta-app-shell.is-sidebar-collapsed .vesta-sidebar__brand-copy,
.vesta-app-shell.is-sidebar-collapsed .vesta-sidebar__group-label,
.vesta-app-shell.is-sidebar-collapsed .vesta-sidebar__label { display:none; }
.vesta-app-shell.is-sidebar-collapsed .vesta-sidebar__item { justify-content:center; padding-left:0; padding-right:0; }
@media (max-width: 1023px) {
  .vesta-sidebar { width:min(280px, 84vw); transform:translateX(-100%); z-index:9997; box-shadow: 18px 0 38px rgba(0,0,0,.22); }
  .vesta-sidebar.is-open { transform:none; }
  .vesta-app-shell.is-sidebar-open::after { content:''; position:fixed; inset:0; background:rgba(0,0,0,.34); z-index:9996; }
}
@media (max-width: 767px) {
  .vesta-sidebar { width: min(300px, 88vw); padding: 16px 12px 24px; }
  .vesta-sidebar__brand { padding-bottom: 16px; }
}
