/* shared/sidebar.css — left nav rail (desktop) / off-canvas drawer (mobile) */

@media (min-width: 900px) {
  body { padding-left: 220px; }
}

.app-sidebar {
  position: fixed; top: 0; left: 0; bottom: 0; width: 220px;
  background: var(--surface); border-right: 1px solid var(--border);
  z-index: 150; overflow-y: auto;
  padding: 16px 0 16px;
  transition: transform 0.2s ease, background 0.2s;
}
.app-sidebar-brand {
  display: flex; align-items: center;
  padding: 0 16px 16px; margin-bottom: 8px; border-bottom: 1px solid var(--border);
}
.app-sidebar-brand-logo {
  height: 28px; width: auto; display: block;
}
/* The logo's "Arden" wordmark is solid black with no dark-mode variant —
   back it with a light chip so it stays legible on the dark sidebar. */
html.dark .app-sidebar-brand-logo {
  background: #fff; border-radius: 6px; padding: 5px 8px;
}

.app-sidebar-label {
  font-size: 11px; text-transform: uppercase; letter-spacing: 0.06em;
  color: var(--text-faint); padding: 10px 16px 6px;
}
.app-sidebar a.app-sidebar-link {
  display: flex; align-items: center; gap: 10px;
  padding: 8px 12px; margin: 0 8px 2px; border-radius: var(--radius);
  font-size: 13px; color: var(--text-muted); text-decoration: none;
}
.app-sidebar a.app-sidebar-link:hover { background: var(--surface2); color: var(--text); text-decoration: none; }
.app-sidebar a.app-sidebar-link.active { background: var(--blue-bg); color: var(--blue-text); font-weight: 600; }
.app-sidebar a.app-sidebar-link i { font-size: 15px; width: 16px; text-align: center; flex-shrink: 0; }
.app-sidebar-children { margin: 0 8px 4px 22px; padding-left: 10px; border-left: 1px solid var(--border); }
.app-sidebar-children a.app-sidebar-link { margin: 0 0 2px; font-size: 12.5px; }

.app-sidebar-backdrop { display: none; }

#sidebarHamburgerBtn {
  display: none;
  background: none; border: 1px solid var(--border-strong); border-radius: var(--radius);
  width: 32px; height: 26px; padding: 0;
  align-items: center; justify-content: center; cursor: pointer;
  color: var(--text-muted); font-size: 15px; flex-shrink: 0;
}
#sidebarHamburgerBtn:hover { background: var(--surface2); color: var(--text); }

@media (max-width: 899px) {
  body { padding-left: 0; }
  .app-sidebar { transform: translateX(-100%); }
  body.sidebar-open .app-sidebar { transform: translateX(0); }
  body.sidebar-open .app-sidebar-backdrop {
    display: block; position: fixed; inset: 0; background: rgba(0,0,0,0.4); z-index: 149;
  }
  #sidebarHamburgerBtn { display: inline-flex; }
}
