/* =========================
   Header (admin)
   ========================= */

.snq-header-right {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 2.4rem;
}

.snq-admin-header-center {
  text-align: center;
  color: #ffffff;
  font-weight: var(--snq-font-semibold);
  letter-spacing: 0.08em;
  font-size: 2rem;
  text-transform: uppercase;
  min-width: 0;
}

.snq-header-link {
  color: #fff !important;
  font-weight: 700;
  text-decoration: none;
  white-space: nowrap;
}

.snq-header-link:hover,
.snq-header-link:focus {
  text-decoration: underline;
}

.snq-admin-dropdown {
  min-width: 180px;
  height: 40px;
  font-size: 1.6rem;
}

.header-funding {
  font-size: 2rem;
}

/* =========================
   Admin subnav / tabs
   ========================= */

.snq-site nav {
  box-shadow: none;
  margin-bottom: 0 !important;
}

.snq-site .wrapper.row2,
.snq-site .wrapper.row2.active {
  background: #e6f5fa !important;
  border-bottom: 1px solid #97e7f3 !important;
  box-shadow: none !important;
}

.snq-site .wrapper.row2 nav,
.snq-site .wrapper.row2 > [id$="cphAdminHeader"] {
  width: min(
    100%,
    calc(var(--snq-snap-width, 1100px) + (2 * var(--snq-gutter)))
  );
  margin: 0 auto;
  padding: 18px var(--snq-gutter);
  box-sizing: border-box;
}

.snq-site #topnav,
.snq-site #topnav.full_width.no-print.active,
.snq-site nav.active {
  padding: 0;
  margin: 0;
  background: transparent !important;
  box-shadow: none !important;
  color: inherit;
  clear: both;
}

/* reset */
.snq-site #ulNavLinks,
.snq-site #ulNavLinks ul,
.snq-site #ulNavLinks ol,
.snq-site #topnav ul,
.snq-site #topnav ol {
  list-style: none;
  margin: 0;
  padding: 0;
}

/* IMPORTANT: the inner UL is the row */
.snq-site #ulNavLinks > ul,
.snq-site #ulNavLinks ul.level1 {
  display: flex !important;
  flex-wrap: wrap;
  gap: 14px;
  align-items: center;
}

/* li items */
.snq-site #ulNavLinks > ul > li,
.snq-site #ulNavLinks ul.level1 > li,
.snq-site #ulNavLinks > ul > li.static,
.snq-site #ulNavLinks ul.level1 > li.static,
.snq-site #ulNavLinks ul.level1 > li.active,
.snq-site #topnav li {
  position: static;
  display: block !important;
  float: none !important;
  margin: 0;
  padding: 0;
}

/* Base tab link */
.snq-site #ulNavLinks ul.level1 > li > a,
.snq-site #ulNavLinks ul.level1 > li.static > a,
.snq-site #ulNavLinks ul.level1 > li.static > a.level1,
.snq-site #topnav #ulNavLinks li a {
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  min-height: 56px;
  padding: 0 18px;
  border: 2px solid transparent !important;
  background: transparent !important;
  color: #485c3a !important;
  font-size: 2rem !important;
  font-weight: 700 !important;
  line-height: 1;
  text-align: center;
  text-decoration: none !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  transition: background-color 0.2s ease, border-color 0.2s ease,
    color 0.2s ease;
}

/* Hover / focus */
.snq-site #ulNavLinks ul.level1 > li > a:hover,
.snq-site #ulNavLinks ul.level1 > li > a:focus,
.snq-site #ulNavLinks ul.level1 > li.static > a:hover,
.snq-site #ulNavLinks ul.level1 > li.static > a:focus,
.snq-site #ulNavLinks ul.level1 > li.static > a.level1:hover,
.snq-site #ulNavLinks ul.level1 > li.static > a.level1:focus,
.snq-site #topnav #ulNavLinks li a:hover,
.snq-site #topnav #ulNavLinks li a:focus {
  background: #ffffff !important;
  border: 2px solid #485c3a !important;
  color: #485c3a !important;
  text-decoration: none !important;
  outline: none;
}

/* Active */
.snq-site #ulNavLinks ul.level1 > li.active > a,
.snq-site #ulNavLinks ul.level1 > li.static.active > a,
.snq-site #ulNavLinks ul.level1 > li.static.active > a.level1,
.snq-site #ulNavLinks ul.level1 > li.selected > a,
.snq-site #ulNavLinks ul.level1 > li.selected > a.level1,
.snq-site #topnav li.active a {
  background: #ffffff !important;
  border: 2px solid #485c3a !important;
  color: #485c3a !important;
  font-weight: 700 !important;
  box-shadow: none !important;
}

.snq-site #topnav li a.drop,
.snq-site #topnav li.active a.drop {
  padding-left: 18px !important;
  background-image: none !important;
}

/* Desktop: hide generated mobile menu */
.snq-site #topnav form,
.snq-site #topnav select,
.snq-site #topnav .jquery-mobilemenu,
.snq-site #topnav .mobilemenu,
.snq-site #topnav .mobileMenu {
  display: none !important;
}

/* Mobile: hide tabs, show generated select */
@media (max-width: 800px) {
  .snq-site #ulNavLinks > ul,
  .snq-site #ulNavLinks ul.level1,
  .snq-site #ulNavLinks ul.level1 > li,
  .snq-site #topnav ul,
  .snq-site #topnav table {
    display: none !important;
  }

  .snq-site #topnav form,
  .snq-site #topnav select,
  .snq-site #topnav .jquery-mobilemenu,
  .snq-site #topnav .mobilemenu,
  .snq-site #topnav .mobileMenu {
    display: block !important;
    width: 100%;
    max-width: 320px;
    margin: 0 0 8px;
  }

  .snq-site #topnav form select {
    display: block;
    font-size: 1.6rem;
    width: 100%;
    padding: 10px 12px;
    color: #485c3a;
    background-color: #fff;
    border: 1px solid #485c3a;
    outline: none;
    cursor: pointer;
  }

  .snq-site #topnav form select option {
    color: #000000;
    background-color: #ffffff;
  }
}

/* Current tab */
.snq-site #ulNavLinks li.current-tab > a,
.snq-site #ulNavLinks li.current-tab > a.level1,
.snq-site #ulNavLinks a.current-tab {
  background: #ffffff !important;
  border: 2px solid #485c3a !important;
  color: #485c3a !important;
  font-weight: 700 !important;
  box-shadow: none !important;
}

/* Current tab - direct anchor target */
.snq-site #topnav #ulNavLinks a.current-tab {
  background: #ffffff !important;
  border: 2px solid #485c3a !important;
  color: #485c3a !important;
  font-weight: 700 !important;
  box-shadow: none !important;
}

/* Active/current admin tab */
.snq-site #ulNavLinks ul.level1 > li.current-tab > a.level1,
.snq-site #ulNavLinks ul.level1 > li.current-tab > a,
.snq-site #ulNavLinks ul.level1 > li > a.level1.current-tab,
.snq-site #ulNavLinks ul.level1 > li > a.current-tab {
  background-color: #ffffff !important;
  border: 2px solid #485c3a !important;
  color: #485c3a !important;
  font-weight: 700 !important;
  box-shadow: none !important;
}

/* Mobile nav dropdown (closed state text) */
.snq-site #mobilemenu select {
  font-weight: 700; /* bold */
  font-size: 1.6rem; /* optional */
  line-height: 1.2;
  height: 44px; /* ensures vertical centering */
  padding: 0 12px; /* remove vertical padding for better centering */
  display: flex;
  align-items: center; /* vertical center */
}

/* =========================
   INPUT STYLES
   ========================= */

.select-width {
  max-width: 35rem !important;
}

/* =========================
   ADMIN ADMINISTRATORS PAGE STYLES
   ========================= */

.admin-row td {
  padding-bottom: 1.4rem; /* spacing between rows */
}

.admin-row-alt td {
  padding-bottom: 1.4rem; /* spacing between rows */
}
