/* Sidebar controls and mobile drawer, aligned with the reference navigation. */
.sidebar-close { align-items:center; justify-content:center; width:44px; height:44px; padding:0; border:1px solid var(--line); border-radius:12px; background:var(--panel); color:var(--text-soft); }
.sidebar-close:focus-visible,.sidebar-nav .nav-link:focus-visible { outline:2px solid var(--focus); outline-offset:2px; }
.sidebar-actions { flex-shrink:0; padding:8px 4px 0; }
.sidebar-actions .btn { width:100%; }
@media(min-width:761px) {
  body.sidebar-collapsed .sidebar { padding-inline:8px; }
  body.sidebar-collapsed .sidebar-header { padding-bottom:4px; }
  body.sidebar-collapsed .nav-title,
  body.sidebar-collapsed .nav-label,
  body.sidebar-collapsed .nav-chevron,
  body.sidebar-collapsed .sidebar-art { display:none; }
  body.sidebar-collapsed .brand small { display:none; }
  body.sidebar-collapsed .sidebar .brand-logo { width:42px; }
  body.sidebar-collapsed .brand { gap:0; }
  body.sidebar-collapsed .sidebar-nav .nav-link { justify-content:center; gap:0; padding-inline:6px; }
  body.sidebar-collapsed .sidebar-subnav { display:none; }
}
@media(max-width:760px) {
  .sidebar-close { display:inline-flex; position:absolute; inset-inline-end:0; top:0; }
  .sidebar-header { padding-inline-end:40px; }
  .sidebar-nav .nav-link { min-height:44px; }
  .sidebar-art { display:none; }
}
@media(prefers-reduced-motion:reduce) { .sidebar,.main,.brand-logo,.nav-chevron,.sidebar-nav .nav-link { transition:none; } }
