/* The one admin top bar (lib/admin-desk-nav.js). Harbor Linen palette, self-contained: it must look the same on
   pages that load style.css (Today, Registry...) and on Rentals, which does not. 44 px targets everywhere.
   Wide (768 px and up): every item inline, dropdowns open under their button.
   Narrow: one Menu button; the dropdowns become expandable groups inside the opened panel. */
#adminTopBar { display: block; }
#adminTopBar[hidden] { display: none; }
.atb {
  --atb-linen: #F3EDE2; --atb-paper: #FFFDF9; --atb-ink: #1E1A15; --atb-muted: #5B544A;
  --atb-green: #1F5F4A; --atb-green-soft: #E3EFE9; --atb-line: #E2D9C8; --atb-line-strong: #8A8070;
  background: var(--atb-linen); border-bottom: 1px solid var(--atb-line); position: relative; z-index: 40;
  font: 600 14px/1.2 system-ui, -apple-system, "Segoe UI", Roboto, Helvetica, Arial, sans-serif; color: var(--atb-ink);
}
.atb *, .atb *::before, .atb *::after { box-sizing: border-box; }
.atb [hidden] { display: none !important; }
.atb__in { max-width: 1376px; margin: 0 auto; padding: 6px 16px; }
.atb__menu-btn {
  display: flex; align-items: center; justify-content: space-between; width: 100%; min-height: 44px; padding: 0 14px;
  font: inherit; color: var(--atb-ink); background: var(--atb-paper); border: 1px solid var(--atb-line-strong); border-radius: 10px; cursor: pointer;
}
.atb__menu-btn::after { content: "\25BE"; }
.atb.is-open .atb__menu-btn::after { content: "\25B4"; }
.atb__panel { display: none; padding-top: 6px; }
.atb.is-open .atb__panel { display: block; }
.atb__list { list-style: none; margin: 0; padding: 0; }
.atb__link, .atb__trigger, .atb__sublink {
  display: flex; align-items: center; gap: 6px; width: 100%; min-height: 44px; padding: 0 14px;
  font: inherit; color: var(--atb-ink); background: transparent; border: 0; border-radius: 10px;
  text-decoration: none; cursor: pointer; text-align: left;
}
.atb__trigger { justify-content: space-between; }
.atb__link:hover, .atb__trigger:hover, .atb__sublink:hover { background: var(--atb-paper); color: var(--atb-ink); }
.atb__link.is-current, .atb__trigger.is-current { background: var(--atb-green); color: var(--atb-paper); }
.atb__link.is-current:hover, .atb__trigger.is-current:hover { background: var(--atb-green); color: var(--atb-paper); }
.atb__sublink.is-current { background: var(--atb-green-soft); color: var(--atb-green); }
.atb__caret { font-size: 12px; transition: transform .12s; }
.atb__group.is-open .atb__caret { transform: rotate(180deg); }
.atb__menu { list-style: none; margin: 0; padding: 0 0 0 14px; display: none; }
.atb__group.is-open .atb__menu { display: block; }
.atb__end { display: flex; flex-direction: column; gap: 2px; margin-top: 6px; padding-top: 6px; border-top: 1px solid var(--atb-line); }
.atb__switch { display: block; }
.atb__select {
  width: 100%; min-height: 44px; padding: 0 10px; font: inherit; font-weight: 500; color: var(--atb-ink);
  background: var(--atb-paper); border: 1px solid var(--atb-line-strong); border-radius: 10px;
}
/* System switcher (Courts / Clubhouse): first in the bar, a little heavier than the page links so it reads as "where am I". */
.atb__sys, .atb__trigger--system { font-weight: 700; }
.atb__sys { display: flex; align-items: center; min-height: 44px; padding: 0 14px; color: var(--atb-green); }
.atb__trigger--system { color: var(--atb-green); background: var(--atb-green-soft); }
.atb__trigger--system:hover { background: var(--atb-green-soft); color: var(--atb-green); }
.atb__item--system { margin-bottom: 4px; padding-bottom: 4px; border-bottom: 1px solid var(--atb-line); }
.atb__sr { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
.atb a:focus-visible, .atb button:focus-visible, .atb select:focus-visible {
  outline: none; box-shadow: 0 0 0 2px var(--atb-paper), 0 0 0 4px var(--atb-green);
}

@media (min-width: 768px) {
  .atb__in { display: flex; align-items: center; padding: 6px 24px; }
  .atb__menu-btn { display: none; }
  .atb__panel { display: flex; flex: 1; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 4px 16px; padding-top: 0; }
  .atb__list { display: flex; flex-wrap: wrap; gap: 2px; }
  .atb__item { position: relative; }
  .atb__item--system { margin: 0 6px 0 0; padding: 0 8px 0 0; border: 0; border-right: 1px solid var(--atb-line); }
  .atb__link, .atb__trigger { width: auto; }
  .atb__menu {
    position: absolute; top: 100%; left: 0; min-width: 190px; padding: 6px; margin-top: 2px;
    background: var(--atb-paper); border: 1px solid var(--atb-line); border-radius: 12px; box-shadow: 0 8px 24px rgba(30, 26, 21, .14);
  }
  .atb__end { flex-direction: row; align-items: center; gap: 4px; margin: 0; padding: 0; border: 0; }
  .atb__select { width: auto; min-width: 180px; max-width: 260px; }
}
@media print { #adminTopBar { display: none !important; } }
