/* Yumi CDS 1.0.2 — admin console grouped accordion nav (YUM-210/YUM-217, AdminNavGroups
   component, see _ds_bundle.js). Owned by the central design system under /_cds/, loaded
   by admin.html alongside app-extensions.css. Kept in its own file (not app-extensions.css)
   deliberately: app-extensions.css was under a live file claim (YUMI-CDS-STRICT) for the
   utility-layer -> semantic-class conversion when this landed — see
   apps/yumi-app/public/admin.html for the <link> that loads this file.

   Replaces the flat 18-entry .yumyum-admin nav list with 6 groups; exactly one .nav-group
   carries .open at a time (React state in admin.js owns that — this file is purely
   presentational, tokens only, no raw hex/rgb). Sticky + its own scroll so a fully-open
   Growth group (11 sub-entries) never forces the page body to scroll at 1280x800. */
.yumyum-admin nav.nav-groups {
  padding: 8px 0;
  position: sticky;
  top: 54px;
  align-self: start;
  max-height: calc(100vh - 54px);
  overflow-y: auto;
}
/* YUM-217 scroll-fix: verified defect — at 1280x800 the admin console page-scrolled past the
   viewport (document.scrollingElement.scrollHeight > clientHeight, e.g. Users measured 843 vs
   800; a Billing tab with two DataTables measured 973 vs 800) because .yumyum-admin main (base
   bundle 1.0.0, .layout grid's right-hand column) had no height cap — .layout's min-height only
   guarantees a floor, so any content taller than the viewport grew the whole document instead of
   scrolling in place. main gets the exact same treatment as nav.nav-groups above: capped to the
   viewport below the sticky top bar, with its OWN internal scroll, so the document itself never
   scrolls at 1280x800 — a tall panel/table scrolls inside main, never the page. Does not touch
   the accordion nav's open/closed behavior (nav-groups rule above is unchanged). */
.yumyum-admin main {
  max-height: calc(100vh - 54px);
  overflow-y: auto;
}
.yumyum-admin .nav-group + .nav-group {
  border-top: 1px solid var(--line-soft);
  margin-top: 4px;
  padding-top: 4px;
}
.yumyum-admin .nav-group-hd {
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 100%;
  border: 0;
  background: transparent;
  padding: 8px 12px;
  margin: 0;
  font-family: var(--mono);
  font-size: 10.5px;
  font-weight: 600;
  letter-spacing: 0.07em;
  text-transform: uppercase;
  color: var(--mute);
  cursor: pointer;
  border-radius: var(--r-xs);
}
.yumyum-admin .nav-group-hd:hover {
  color: var(--ink);
  background: var(--paper-2);
}
.yumyum-admin .nav-group.open > .nav-group-hd {
  color: var(--ink);
}
.yumyum-admin .nav-group-chev {
  font-family: var(--mono);
  font-size: 11px;
  color: var(--faint);
  line-height: 1;
}
.yumyum-admin .nav-group.open .nav-group-chev {
  color: var(--accent);
}
.yumyum-admin .nav-group-body {
  padding: 2px 0 4px;
}
.yumyum-admin .nav-group-body a {
  padding-left: 22px;
}
