.admin-nav_header__CzXI_ {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  height: var(--nav-height);
  z-index: 100;
  background: var(--c-cream);
  border-bottom: 1px solid transparent;
  transition: border-color 0.2s, box-shadow 0.2s;
}

.admin-nav_headerScrolled__2DgHm {
  border-bottom-color: var(--c-border);
  box-shadow: var(--shadow);
}

.admin-nav_nav__q08OX {
  display: flex;
  align-items: center;
  height: 100%;
  padding: 0 var(--page-gutter);
  max-width: var(--max-width-wide);
  margin: 0 auto;
  gap: 24px;
}

.admin-nav_logo__lw3U0 {
  display: flex;
  align-items: center;
  gap: 8px;
  flex-shrink: 0;
}

.admin-nav_logoImage__9lRLA {
  width: 32px;
  height: 32px;
  object-fit: contain;
  flex-shrink: 0;
}

.admin-nav_logoNari__CxX5R {
  font-family: var(--font-heading);
  font-size: 20px;
  font-weight: 500;
  color: var(--c-light-head);
  letter-spacing: -0.03em;
}

.admin-nav_logoBadge__Dxsvq {
  font-family: var(--font-body);
  font-size: 11px;
  font-weight: 500;
  color: var(--c-cream);
  background: var(--c-navy);
  padding: 2px 8px;
  border-radius: 4px;
  letter-spacing: 0.02em;
  text-transform: uppercase;
}

.admin-nav_links__NqMRW {
  display: flex;
  align-items: center;
  gap: 2px;
  list-style: none;
  flex: 1 1;
  overflow-x: auto;
  scrollbar-width: none;
}

.admin-nav_links__NqMRW::-webkit-scrollbar {
  display: none;
}

.admin-nav_link__JIcr_ {
  font-family: var(--font-body);
  font-size: 13px;
  font-weight: 400;
  color: var(--c-light-body);
  padding: 6px 10px;
  border-radius: 6px;
  border-bottom: 2px solid transparent;
  transition: background 0.15s, color 0.15s, border-color 0.15s;
  white-space: nowrap;
}

.admin-nav_link__JIcr_:hover {
  background: var(--c-green-faint);
  color: var(--c-light-head);
}

.admin-nav_linkActive__UKUkP {
  color: var(--c-green-dark);
  font-weight: 500;
  border-bottom-color: var(--c-green-dark);
}

/* ── Identity pill ── */
.admin-nav_identity__Mzurv {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  height: 32px;
  padding: 0 12px;
  border: 1px dashed var(--c-border);
  border-radius: 6px;
  background: transparent;
  font-family: var(--font-body);
  font-size: 12px;
  color: var(--c-light-body);
  white-space: nowrap;
  flex-shrink: 0;
}

.admin-nav_identityLabel__7don7 {
  color: var(--c-light-mute, var(--c-light-body));
  font-size: 11px;
  text-transform: uppercase;
  letter-spacing: 0.04em;
}

.admin-nav_identityName__cT9Md {
  font-weight: 500;
  color: var(--c-light-head);
  max-width: 180px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

/* ── Avatar button ── */
.admin-nav_avatar__VnAdF {
  width: 32px;
  height: 32px;
  border-radius: 50%;
  background: var(--c-green-faint);
  color: var(--c-green-dark);
  font-family: var(--font-body);
  font-size: 14px;
  font-weight: 600;
  display: flex;
  align-items: center;
  justify-content: center;
  border: none;
  cursor: pointer;
  flex-shrink: 0;
  transition: box-shadow 0.15s;
}

.admin-nav_avatar__VnAdF:hover {
  box-shadow: 0 0 0 2px var(--c-green-faint);
}

/* ── Account dropdown ── */
.admin-nav_accountWrap__AV62X {
  position: relative;
  display: inline-flex;
  flex-shrink: 0;
}

.admin-nav_dropdown__LZvGr {
  position: absolute;
  top: calc(100% + 8px);
  right: 0;
  background: var(--c-cream-light);
  border: 1px solid var(--c-border);
  border-radius: 10px;
  box-shadow: var(--shadow-hov);
  padding: 8px 0;
  min-width: 200px;
  z-index: 200;
  animation: admin-nav_nari-fadeUp__UrF8W 0.15s ease both;
}

.admin-nav_dropdownEmail__FkoXu {
  font-family: var(--font-body);
  font-size: 13px;
  font-weight: 300;
  color: var(--c-light-mute);
  padding: 6px 16px 8px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.admin-nav_dropdownSep__B2Fj_ {
  height: 1px;
  background: var(--c-border);
  margin: 4px 0;
}

.admin-nav_dropdownItem__LbJEq {
  display: block;
  width: 100%;
  font-family: var(--font-body);
  font-size: 14px;
  font-weight: 400;
  color: var(--c-light-body);
  padding: 8px 16px;
  background: none;
  border: none;
  text-align: left;
  cursor: pointer;
  transition: background 0.15s, color 0.15s;
}

.admin-nav_dropdownItem__LbJEq:hover,
.admin-nav_dropdownItem__LbJEq[data-highlighted] {
  background: var(--c-green-faint);
  color: var(--c-light-head);
  outline: none;
}

/* ── Hamburger toggle (hidden on desktop) ── */
.admin-nav_menuToggle__0YhAw {
  display: none;
  background: none;
  border: none;
  padding: 8px;
  cursor: pointer;
  -webkit-tap-highlight-color: transparent;
}

.admin-nav_hamburger__ryJJZ {
  display: block;
  width: 20px;
  height: 2px;
  background: var(--c-light-head);
  border-radius: 1px;
  position: relative;
  transition: background 0.2s;
}

.admin-nav_hamburger__ryJJZ::before,
.admin-nav_hamburger__ryJJZ::after {
  content: "";
  display: block;
  width: 20px;
  height: 2px;
  background: var(--c-light-head);
  border-radius: 1px;
  position: absolute;
  left: 0;
  transition: transform 0.2s, top 0.2s;
}

.admin-nav_hamburger__ryJJZ::before { top: -6px; }
.admin-nav_hamburger__ryJJZ::after  { top: 6px; }

.admin-nav_hamburgerOpen__fYZSr { background: transparent; }
.admin-nav_hamburgerOpen__fYZSr::before { top: 0; transform: rotate(45deg); }
.admin-nav_hamburgerOpen__fYZSr::after  { top: 0; transform: rotate(-45deg); }

/* ── Mobile menu panel ── */
.admin-nav_mobileMenu__dMX1G {
  display: none;
}

@media (max-width: 640px) {
  .admin-nav_links__NqMRW    { display: none; }
  .admin-nav_avatar__VnAdF   { display: none; }
  .admin-nav_identity__Mzurv { display: none; }

  .admin-nav_menuToggle__0YhAw {
    display: block;
    margin-left: auto;
  }

  .admin-nav_mobileMenu__dMX1G {
    display: flex;
    flex-direction: column;
    gap: 8px;
    position: absolute;
    top: var(--nav-height);
    left: 0;
    right: 0;
    background: var(--c-cream);
    border-bottom: 1px solid var(--c-border);
    box-shadow: var(--shadow);
    padding: 16px var(--page-gutter) 20px;
    animation: admin-nav_nari-fadeUp__UrF8W 0.2s ease both;
  }

  .admin-nav_mobileLinks__NOzxW {
    list-style: none;
    display: flex;
    flex-direction: column;
    gap: 2px;
  }

  .admin-nav_mobileLink__iAniy {
    display: block;
    font-family: var(--font-body);
    font-size: 15px;
    font-weight: 400;
    color: var(--c-light-body);
    padding: 10px 12px;
    border-radius: 8px;
    transition: background 0.15s, color 0.15s;
  }

  .admin-nav_mobileLink__iAniy:hover {
    background: var(--c-green-faint);
    color: var(--c-light-head);
  }

  .admin-nav_mobileLinkActive__v4kr5 {
    color: var(--c-green-dark);
    font-weight: 500;
  }

  .admin-nav_mobileCta__cHC8h {
    display: flex;
    flex-direction: column;
    gap: 8px;
    margin-top: 8px;
    padding-top: 12px;
    border-top: 1px solid var(--c-border);
  }

  .admin-nav_mobileNavBtn__Lb1FG {
    display: block;
    text-align: center;
    font-family: var(--font-body);
    font-size: 15px;
    font-weight: 400;
    color: var(--c-light-head);
    padding: 10px 16px;
    border: 1px solid var(--c-border-mid);
    border-radius: 9px;
    transition: background 0.15s;
  }

  .admin-nav_mobileNavBtn__Lb1FG:hover {
    background: var(--c-cream-dark);
  }

  .admin-nav_mobileSignOutBtn__Xa_Hx {
    display: block;
    width: 100%;
    text-align: center;
    font-family: var(--font-body);
    font-size: 15px;
    font-weight: 400;
    color: var(--c-light-mute);
    padding: 10px 16px;
    background: none;
    border: 1px solid var(--c-border);
    border-radius: 9px;
    cursor: pointer;
    transition: background 0.15s, color 0.15s;
  }

  .admin-nav_mobileSignOutBtn__Xa_Hx:hover {
    background: var(--c-cream-dark);
    color: var(--c-light-head);
  }
}

.blocked-screen_overlay__Rl9Vz {
  position: fixed;
  inset: 0;
  background: var(--c-cream-light);
  display: flex;
  align-items: center;
  justify-content: center;
  padding: var(--page-gutter);
  z-index: 200;
}

.blocked-screen_card__aqLP5 {
  width: 100%;
  max-width: 420px;
  background: #fff;
  border: 1px solid var(--c-border);
  border-radius: 16px;
  padding: 40px 32px;
  box-shadow: var(--shadow);
  text-align: center;
}

.blocked-screen_iconWrapper__kNkOQ {
  font-size: 40px;
  margin-bottom: 16px;
  opacity: 0.8;
}

.blocked-screen_title__gNv_c {
  font-family: var(--font-heading);
  font-size: 22px;
  font-weight: 500;
  color: var(--c-light-head);
  letter-spacing: -0.02em;
  margin-bottom: 10px;
}

.blocked-screen_body__87mtc {
  font-family: var(--font-body);
  font-size: 14px;
  font-weight: 300;
  color: var(--c-light-mute);
  line-height: 1.65;
  margin-bottom: 12px;
}

.blocked-screen_email__wTNyg {
  font-family: var(--font-mono);
  font-size: 12px;
  color: var(--c-light-mute);
  background: var(--c-cream-dark);
  border-radius: 6px;
  padding: 4px 10px;
  display: inline-block;
  margin-bottom: 24px;
}

.blocked-screen_contactBtn__OTx0N {
  display: block;
  width: 100%;
  padding: 12px 16px;
  background: var(--c-navy);
  color: var(--c-cream);
  border-radius: 9px;
  font-family: var(--font-body);
  font-size: 14px;
  font-weight: 500;
  text-align: center;
  transition: background 0.15s;
  margin-bottom: 10px;
}

.blocked-screen_contactBtn__OTx0N:hover {
  background: #1a2a3a;
}

.blocked-screen_signOutBtn__a4Pk7 {
  background: none;
  border: none;
  font-family: var(--font-body);
  font-size: 13px;
  font-weight: 300;
  color: var(--c-light-mute);
  cursor: pointer;
  padding: 6px 0;
  text-decoration: underline;
  text-underline-offset: 2px;
}

.blocked-screen_signOutBtn__a4Pk7:hover {
  color: var(--c-light-body);
}

.access-denied_overlay__RIePr {
  position: fixed;
  inset: 0;
  background: var(--c-cream-light);
  display: flex;
  align-items: center;
  justify-content: center;
  padding: var(--page-gutter);
  z-index: 200;
}

.access-denied_card__EQjJf {
  width: 100%;
  max-width: 420px;
  background: #fff;
  border: 1px solid var(--c-border);
  border-radius: 16px;
  padding: 40px 32px;
  box-shadow: var(--shadow);
  text-align: center;
}

.access-denied_iconWrapper__jgpsY {
  font-size: 40px;
  margin-bottom: 16px;
  opacity: 0.8;
}

.access-denied_title__UFace {
  font-family: var(--font-heading);
  font-size: 22px;
  font-weight: 500;
  color: var(--c-light-head);
  letter-spacing: -0.02em;
  margin-bottom: 10px;
}

.access-denied_body__woXtm {
  font-family: var(--font-body);
  font-size: 14px;
  font-weight: 300;
  color: var(--c-light-mute);
  line-height: 1.65;
  margin-bottom: 24px;
}

.access-denied_backBtn__7rLET {
  display: block;
  width: 100%;
  padding: 12px 16px;
  background: var(--c-navy);
  color: var(--c-cream);
  border-radius: 9px;
  font-family: var(--font-body);
  font-size: 14px;
  font-weight: 500;
  text-align: center;
  transition: background 0.15s;
  margin-bottom: 10px;
}

.access-denied_backBtn__7rLET:hover {
  background: #1a2a3a;
}

.access-denied_signOutBtn___LUx1 {
  background: none;
  border: none;
  font-family: var(--font-body);
  font-size: 13px;
  font-weight: 300;
  color: var(--c-light-mute);
  cursor: pointer;
  padding: 6px 0;
  text-decoration: underline;
  text-underline-offset: 2px;
}

.access-denied_signOutBtn___LUx1:hover {
  color: var(--c-light-body);
}

.coach-picker_trigger__1lEY5 {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  height: 32px;
  padding: 0 12px;
  border: 1px dashed var(--c-border);
  border-radius: 6px;
  background: transparent;
  cursor: pointer;
  font-family: var(--font-body);
  font-size: 12px;
  color: var(--c-light-body);
  white-space: nowrap;
}

.coach-picker_trigger__1lEY5:hover {
  background: var(--c-cream-2, rgba(0, 0, 0, 0.03));
}

.coach-picker_viewingAs__faVYg {
  color: var(--c-light-mute, var(--c-light-body));
  font-size: 11px;
  text-transform: uppercase;
  letter-spacing: 0.04em;
}

.coach-picker_name__JvT6d {
  font-weight: 500;
  color: var(--c-light-head);
  max-width: 180px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.coach-picker_chevron__5inG5 {
  font-size: 10px;
  opacity: 0.6;
}

.coach-picker_content__iupif {
  background: var(--c-cream);
  border: 1px solid var(--c-border);
  border-radius: 8px;
  padding: 6px;
  box-shadow: var(--shadow);
  min-width: 260px;
  max-height: 360px;
  overflow-y: auto;
  z-index: 200;
}

.coach-picker_item__HiNXT {
  display: flex;
  flex-direction: column;
  gap: 2px;
  padding: 8px 10px;
  border-radius: 6px;
  cursor: pointer;
  outline: none;
  font-family: var(--font-body);
}

.coach-picker_item__HiNXT:hover,
.coach-picker_item__HiNXT[data-highlighted] {
  background: var(--c-cream-2, rgba(0, 0, 0, 0.04));
}

.coach-picker_itemLabel__J3Hys {
  display: flex;
  align-items: center;
  gap: 6px;
  font-size: 13px;
  font-weight: 500;
  color: var(--c-light-head);
}

.coach-picker_itemEmail__dZP5z {
  font-size: 11px;
  color: var(--c-light-mute, var(--c-light-body));
}

.coach-picker_tag__dV6a8 {
  font-size: 10px;
  font-weight: 500;
  padding: 1px 6px;
  border-radius: 4px;
  background: var(--c-green-dark);
  color: var(--c-cream);
  letter-spacing: 0.02em;
  text-transform: uppercase;
}

.coach-picker_sep__AD0EB {
  height: 1px;
  background: var(--c-border);
  margin: 6px 0;
}

.coach-nav_header__duRvh {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  height: var(--nav-height);
  z-index: 100;
  background: var(--c-cream);
  border-bottom: 1px solid transparent;
  transition: border-color 0.2s, box-shadow 0.2s;
}

.coach-nav_headerScrolled__P1Lrg {
  border-bottom-color: var(--c-border);
  box-shadow: var(--shadow);
}

.coach-nav_nav__ivsQr {
  display: flex;
  align-items: center;
  height: 100%;
  padding: 0 var(--page-gutter);
  max-width: var(--max-width-wide);
  margin: 0 auto;
  gap: 24px;
}

.coach-nav_logo__inPu5 {
  display: flex;
  align-items: center;
  gap: 8px;
  flex-shrink: 0;
}

.coach-nav_logoImage__TGzlG {
  width: 32px;
  height: 32px;
  object-fit: contain;
  flex-shrink: 0;
}

.coach-nav_logoNari__7_MUK {
  font-family: var(--font-heading);
  font-size: 20px;
  font-weight: 500;
  color: var(--c-light-head);
  letter-spacing: -0.03em;
}

.coach-nav_logoBadge__sr1yp {
  font-family: var(--font-body);
  font-size: 11px;
  font-weight: 500;
  color: var(--c-cream);
  background: var(--c-green-dark);
  padding: 2px 8px;
  border-radius: 4px;
  letter-spacing: 0.02em;
  text-transform: uppercase;
}

.coach-nav_links__KA3KS {
  display: flex;
  align-items: center;
  gap: 2px;
  list-style: none;
  flex: 1 1;
  overflow-x: auto;
  scrollbar-width: none;
}

.coach-nav_links__KA3KS::-webkit-scrollbar {
  display: none;
}

.coach-nav_link___4BPp {
  font-family: var(--font-body);
  font-size: 13px;
  font-weight: 400;
  color: var(--c-light-body);
  padding: 6px 10px;
  border-radius: 6px;
  border-bottom: 2px solid transparent;
  transition: background 0.15s, color 0.15s, border-color 0.15s;
  white-space: nowrap;
}

.coach-nav_link___4BPp:hover {
  background: var(--c-green-faint);
  color: var(--c-light-head);
}

.coach-nav_linkActive__uQUtS {
  color: var(--c-green-dark);
  font-weight: 500;
  border-bottom-color: var(--c-green-dark);
}

/* ── Avatar button ── */
.coach-nav_avatar__GWxas {
  width: 32px;
  height: 32px;
  border-radius: 50%;
  background: var(--c-green-faint);
  color: var(--c-green-dark);
  font-family: var(--font-body);
  font-size: 14px;
  font-weight: 600;
  display: flex;
  align-items: center;
  justify-content: center;
  border: none;
  cursor: pointer;
  flex-shrink: 0;
  transition: box-shadow 0.15s;
}

.coach-nav_avatar__GWxas:hover {
  box-shadow: 0 0 0 2px var(--c-green-faint);
}

/* ── Account dropdown ── */
.coach-nav_accountWrap__8NHPX {
  position: relative;
  display: inline-flex;
  flex-shrink: 0;
}

.coach-nav_dropdown__DCFTF {
  position: absolute;
  top: calc(100% + 8px);
  right: 0;
  background: var(--c-cream-light);
  border: 1px solid var(--c-border);
  border-radius: 10px;
  box-shadow: var(--shadow-hov);
  padding: 8px 0;
  min-width: 200px;
  z-index: 200;
  animation: coach-nav_nari-fadeUp__NSxqb 0.15s ease both;
}

.coach-nav_dropdownEmail___Gid5 {
  font-family: var(--font-body);
  font-size: 13px;
  font-weight: 300;
  color: var(--c-light-mute);
  padding: 6px 16px 8px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.coach-nav_dropdownSep___DyRg {
  height: 1px;
  background: var(--c-border);
  margin: 4px 0;
}

.coach-nav_dropdownItem__zGeG7 {
  display: block;
  width: 100%;
  font-family: var(--font-body);
  font-size: 14px;
  font-weight: 400;
  color: var(--c-light-body);
  padding: 8px 16px;
  background: none;
  border: none;
  text-align: left;
  cursor: pointer;
  transition: background 0.15s, color 0.15s;
}

.coach-nav_dropdownItem__zGeG7:hover,
.coach-nav_dropdownItem__zGeG7[data-highlighted] {
  background: var(--c-green-faint);
  color: var(--c-light-head);
  outline: none;
}

/* ── Hamburger toggle (hidden on desktop) ── */
.coach-nav_menuToggle__nyHhT {
  display: none;
  background: none;
  border: none;
  padding: 8px;
  cursor: pointer;
  -webkit-tap-highlight-color: transparent;
}

.coach-nav_hamburger__G0SJA {
  display: block;
  width: 20px;
  height: 2px;
  background: var(--c-light-head);
  border-radius: 1px;
  position: relative;
  transition: background 0.2s;
}

.coach-nav_hamburger__G0SJA::before,
.coach-nav_hamburger__G0SJA::after {
  content: "";
  display: block;
  width: 20px;
  height: 2px;
  background: var(--c-light-head);
  border-radius: 1px;
  position: absolute;
  left: 0;
  transition: transform 0.2s, top 0.2s;
}

.coach-nav_hamburger__G0SJA::before { top: -6px; }
.coach-nav_hamburger__G0SJA::after  { top: 6px; }

.coach-nav_hamburgerOpen__WY6Gm { background: transparent; }
.coach-nav_hamburgerOpen__WY6Gm::before { top: 0; transform: rotate(45deg); }
.coach-nav_hamburgerOpen__WY6Gm::after  { top: 0; transform: rotate(-45deg); }

/* ── Mobile menu panel ── */
.coach-nav_mobileMenu__cradF {
  display: none;
}

@media (max-width: 640px) {
  .coach-nav_links__KA3KS  { display: none; }
  .coach-nav_avatar__GWxas { display: none; }

  .coach-nav_menuToggle__nyHhT {
    display: block;
    margin-left: auto;
  }

  .coach-nav_mobileMenu__cradF {
    display: flex;
    flex-direction: column;
    gap: 8px;
    position: absolute;
    top: var(--nav-height);
    left: 0;
    right: 0;
    background: var(--c-cream);
    border-bottom: 1px solid var(--c-border);
    box-shadow: var(--shadow);
    padding: 16px var(--page-gutter) 20px;
    animation: coach-nav_nari-fadeUp__NSxqb 0.2s ease both;
  }

  .coach-nav_mobileLinks__e_jDm {
    list-style: none;
    display: flex;
    flex-direction: column;
    gap: 2px;
  }

  .coach-nav_mobileLink__GaiW3 {
    display: block;
    font-family: var(--font-body);
    font-size: 15px;
    font-weight: 400;
    color: var(--c-light-body);
    padding: 10px 12px;
    border-radius: 8px;
    transition: background 0.15s, color 0.15s;
  }

  .coach-nav_mobileLink__GaiW3:hover {
    background: var(--c-green-faint);
    color: var(--c-light-head);
  }

  .coach-nav_mobileLinkActive__Ab7bz {
    color: var(--c-green-dark);
    font-weight: 500;
  }

  .coach-nav_mobileCta__qdAIj {
    display: flex;
    flex-direction: column;
    gap: 8px;
    margin-top: 8px;
    padding-top: 12px;
    border-top: 1px solid var(--c-border);
  }

  .coach-nav_mobileNavBtn__0829t {
    display: block;
    text-align: center;
    font-family: var(--font-body);
    font-size: 15px;
    font-weight: 400;
    color: var(--c-light-head);
    padding: 10px 16px;
    border: 1px solid var(--c-border-mid);
    border-radius: 9px;
    transition: background 0.15s;
  }

  .coach-nav_mobileNavBtn__0829t:hover {
    background: var(--c-cream-dark);
  }

  .coach-nav_mobileSignOutBtn__ScMvi {
    display: block;
    width: 100%;
    text-align: center;
    font-family: var(--font-body);
    font-size: 15px;
    font-weight: 400;
    color: var(--c-light-mute);
    padding: 10px 16px;
    background: none;
    border: 1px solid var(--c-border);
    border-radius: 9px;
    cursor: pointer;
    transition: background 0.15s, color 0.15s;
  }

  .coach-nav_mobileSignOutBtn__ScMvi:hover {
    background: var(--c-cream-dark);
    color: var(--c-light-head);
  }
}

.layout_skipLink__O8w15 {
  position: absolute;
  left: -9999px;
  top: auto;
  width: 1px;
  height: 1px;
  overflow: hidden;
}

.layout_skipLink__O8w15:focus {
  position: fixed;
  top: 8px;
  left: 8px;
  width: auto;
  height: auto;
  padding: 8px 16px;
  background: var(--c-navy);
  color: var(--c-cream);
  font-size: 14px;
  font-weight: 500;
  border-radius: 6px;
  z-index: 9999;
  overflow: visible;
}

.layout_main__5iV0k {
  padding-top: 44px;
}

.member-subnav_subNav__1kNew {
  position: fixed;
  top: var(--nav-height);
  left: 0;
  right: 0;
  z-index: 99;
  height: 44px;
  background: rgba(245, 242, 235, 0.90);
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
  border-bottom: 1px solid color-mix(in srgb, var(--c-green) 15%, transparent);
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 12px;
  overflow-x: auto;
  scrollbar-width: none;
  -webkit-overflow-scrolling: touch;
  padding: 0 var(--page-gutter);
}

.member-subnav_subNav__1kNew::-webkit-scrollbar {
  display: none;
}

.member-subnav_link__hbt0c {
  position: relative;
  flex-shrink: 0;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  font-family: var(--font-body);
  font-size: 13px;
  font-weight: 400;
  color: var(--c-light-mute);
  padding: 6px 12px;
  background: transparent;
  cursor: pointer;
  white-space: nowrap;
  letter-spacing: 0.005em;
  text-decoration: none;
  transition: color 0.2s ease;
}

.member-subnav_link__hbt0c:hover {
  color: var(--c-light-body);
}

.member-subnav_active__hjNP8 {
  color: var(--c-green-dark);
  font-weight: 500;
}

.member-subnav_badge__yUNjC {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 18px;
  height: 18px;
  padding: 0 6px;
  border-radius: 9px;
  background: color-mix(in srgb, var(--c-green) 15%, transparent);
  color: var(--c-green-dark);
  font-size: 11px;
  font-weight: 500;
  line-height: 1;
}

.member-subnav_external__7yxAT {
  font-size: 11px;
  opacity: 0.7;
}

.member-subnav_indicator__IdHix {
  position: absolute;
  bottom: 3px;
  left: 0;
  width: 12px;
  height: 12px;
  margin-left: -6px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: var(--c-green-dark);
  transform: translateX(-50px);
  opacity: 0;
  pointer-events: none;
  transition:
    transform 0.38s cubic-bezier(0.22, 1, 0.36, 1),
    opacity 0.2s ease;
}

.member-subnav_indicatorVisible__hKGId {
  opacity: 1;
}

@media (max-width: 768px) {
  .member-subnav_subNav__1kNew {
    justify-content: flex-start;
  }
}

@media (prefers-reduced-motion: reduce) {
  .member-subnav_indicator__IdHix {
    transition: opacity 0.2s ease;
  }
}

.motion-toggle_section__A7vaR {
  padding: 8px 14px 10px;
}

.motion-toggle_label__W06aG {
  font-family: var(--font-mono);
  font-size: 10px;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--c-wood-oak);
  margin: 0 0 6px;
}

.motion-toggle_group__em0v4 {
  display: flex;
  flex-direction: column;
  gap: 2px;
}

.motion-toggle_item__W0qip {
  display: flex;
  align-items: center;
  gap: 10px;
  width: 100%;
  padding: 6px 4px;
  border: none;
  background: none;
  text-align: left;
  border-radius: 6px;
  font-family: var(--font-body);
  font-size: 13px;
  color: var(--c-light-body);
  cursor: pointer;
  outline: none;
}

.motion-toggle_item__W0qip:hover,
.motion-toggle_item__W0qip[data-highlighted] {
  background: var(--c-cream);
  color: var(--c-light-head);
}

.motion-toggle_item__W0qip:focus-visible {
  outline: 2px solid var(--c-green-dark);
  outline-offset: 1px;
}

.motion-toggle_item__W0qip[data-state="checked"] .motion-toggle_dot__SwTjm {
  color: var(--c-green-dark);
}

.motion-toggle_dot__SwTjm {
  width: 12px;
  height: 12px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: 1px solid var(--c-border-mid);
  border-radius: 50%;
  font-size: 8px;
  line-height: 1;
  color: transparent;
  flex-shrink: 0;
}

.motion-toggle_item__W0qip[data-state="checked"] .motion-toggle_dot__SwTjm {
  border-color: var(--c-green-dark);
}

.motion-toggle_itemLabel__aUxOq {
  flex: 1 1;
}

.motion-toggle_hint__NcjGl {
  margin: 6px 0 0;
  padding-left: 22px;
  font-family: var(--font-body);
  font-size: 11px;
  font-style: italic;
  color: var(--c-light-mute);
  line-height: 1.3;
}

.public-nav_header__Zl03f {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  height: var(--nav-height);
  z-index: 100;
  background: rgba(245, 242, 235, 0.90);
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
  border-bottom: 1px solid color-mix(in srgb, var(--c-green) 15%, transparent);
  transition: background 0.2s, border-color 0.2s, box-shadow 0.2s;
}

.public-nav_headerScrolled__wdhnJ {
  background: rgba(245, 242, 235, 0.94);
  border-bottom-color: color-mix(in srgb, var(--c-green) 22%, transparent);
  box-shadow: var(--shadow);
}

.public-nav_nav__LApZI {
  display: flex;
  align-items: center;
  height: 100%;
  padding: 0 var(--page-gutter);
  max-width: var(--max-width-wide);
  margin: 0 auto;
  gap: 32px;
}

/* ── Left cluster: logo + (authenticated) My Journey ── */
.public-nav_leftCluster__UJsZN {
  display: flex;
  align-items: center;
  gap: 20px;
  flex-shrink: 0;
}

.public-nav_logo__8nDIx {
  display: inline-flex;
  align-items: center;
  flex-shrink: 0;
  text-decoration: none;
}

.public-nav_logoImage__Cd_TD {
  height: 32px;
  width: auto;
  display: block;
}

.public-nav_links__urLGQ {
  display: flex;
  align-items: center;
  gap: 4px;
  list-style: none;
  flex: 1 1;
}

.public-nav_link__LeOxC {
  font-family: var(--font-body);
  font-size: 14px;
  font-weight: 400;
  color: var(--c-light-body);
  padding: 6px 10px;
  border-radius: 6px;
  transition: background 0.15s, color 0.15s;
}

.public-nav_link__LeOxC:hover {
  background: var(--c-green-faint);
  color: var(--c-light-head);
}

.public-nav_linkActive__nRH9i {
  color: var(--c-green-dark);
  font-weight: 500;
}

.public-nav_cta__H2IYX {
  display: flex;
  align-items: center;
  gap: 8px;
  flex-shrink: 0;
}

.public-nav_loginBtn__n3Ywn {
  font-family: var(--font-body);
  font-size: 14px;
  font-weight: 400;
  color: var(--c-light-body);
  padding: 7px 14px;
  border-radius: 7px;
  transition: background 0.15s, color 0.15s;
}

.public-nav_loginBtn__n3Ywn:hover {
  background: var(--c-green-faint);
  color: var(--c-light-head);
}

.public-nav_joinBtn__LAsyt {
  font-family: var(--font-body);
  font-size: 14px;
  font-weight: 500;
  color: var(--c-cream);
  background: var(--c-navy);
  padding: 7px 16px;
  border-radius: 7px;
  transition: background 0.15s;
}

.public-nav_joinBtn__LAsyt:hover {
  background: #1a2a3a;
}

/* ── Avatar button (authenticated) ── */
.public-nav_avatar__Hequ4 {
  width: 32px;
  height: 32px;
  border-radius: 50%;
  background: var(--c-green-faint);
  color: var(--c-green-dark);
  font-family: var(--font-body);
  font-size: 14px;
  font-weight: 600;
  display: flex;
  align-items: center;
  justify-content: center;
  border: none;
  cursor: pointer;
  flex-shrink: 0;
  transition: box-shadow 0.15s;
}

.public-nav_avatar__Hequ4:hover {
  box-shadow: 0 0 0 2px var(--c-green-faint);
}

/* ── Account dropdown ── */
.public-nav_accountWrap__8ZGSn {
  position: relative;
  display: inline-flex;
  flex-shrink: 0;
}

.public-nav_dropdown__PqJ3h {
  position: absolute;
  top: calc(100% + 8px);
  right: 0;
  background: var(--c-cream-light);
  border: 1px solid var(--c-border);
  border-radius: 10px;
  box-shadow: var(--shadow-hov);
  padding: 8px 0;
  min-width: 200px;
  z-index: 200;
  animation: public-nav_nari-fadeUp__EaLu9 0.15s ease both;
}

.public-nav_dropdownEmail__WiYP9 {
  font-family: var(--font-body);
  font-size: 13px;
  font-weight: 300;
  color: var(--c-light-mute);
  padding: 6px 16px 8px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.public-nav_dropdownSep__h27fM {
  height: 1px;
  background: var(--c-border);
  margin: 4px 0;
}

.public-nav_dropdownItem__Qm8zk {
  display: block;
  width: 100%;
  font-family: var(--font-body);
  font-size: 14px;
  font-weight: 400;
  color: var(--c-light-body);
  padding: 8px 16px;
  background: none;
  border: none;
  text-align: left;
  cursor: pointer;
  transition: background 0.15s, color 0.15s;
}

.public-nav_dropdownItem__Qm8zk:hover,
.public-nav_dropdownItem__Qm8zk[data-highlighted] {
  background: var(--c-green-faint);
  color: var(--c-light-head);
  outline: none;
}

/* ── Hamburger toggle (hidden on desktop) ── */
.public-nav_menuToggle__RBooz {
  display: none;
  background: none;
  border: none;
  padding: 8px;
  cursor: pointer;
  -webkit-tap-highlight-color: transparent;
}

.public-nav_hamburger__6nW0m {
  display: block;
  width: 20px;
  height: 2px;
  background: var(--c-light-head);
  border-radius: 1px;
  position: relative;
  transition: background 0.2s;
}

.public-nav_hamburger__6nW0m::before,
.public-nav_hamburger__6nW0m::after {
  content: "";
  display: block;
  width: 20px;
  height: 2px;
  background: var(--c-light-head);
  border-radius: 1px;
  position: absolute;
  left: 0;
  transition: transform 0.2s, top 0.2s;
}

.public-nav_hamburger__6nW0m::before {
  top: -6px;
}

.public-nav_hamburger__6nW0m::after {
  top: 6px;
}

/* Open state: X shape */
.public-nav_hamburgerOpen__DsJI1 {
  background: transparent;
}

.public-nav_hamburgerOpen__DsJI1::before {
  top: 0;
  transform: rotate(45deg);
}

.public-nav_hamburgerOpen__DsJI1::after {
  top: 0;
  transform: rotate(-45deg);
}

/* ── Mobile menu panel ── */
.public-nav_mobileMenu__i1m9C {
  display: none;
}

/* ── Mobile ── */
@media (max-width: 640px) {
  .public-nav_links__urLGQ {
    display: none;
  }

  .public-nav_cta__H2IYX {
    display: none;
  }

  .public-nav_avatar__Hequ4 {
    display: none;
  }

  .public-nav_leftCluster__UJsZN > .public-nav_link__LeOxC {
    display: none;
  }

  .public-nav_menuToggle__RBooz {
    display: block;
    margin-left: auto;
  }

  .public-nav_mobileMenu__i1m9C {
    display: flex;
    flex-direction: column;
    gap: 8px;
    position: absolute;
    top: var(--nav-height);
    left: 0;
    right: 0;
    background: var(--c-cream-light);
    border-bottom: 1px solid var(--c-border);
    box-shadow: var(--shadow);
    padding: 16px var(--page-gutter) 20px;
    animation: public-nav_nari-fadeUp__EaLu9 0.2s ease both;
  }

  .public-nav_mobileLinks__1ApUd {
    list-style: none;
    display: flex;
    flex-direction: column;
    gap: 2px;
  }

  .public-nav_mobileLink__tNUVu {
    display: block;
    font-family: var(--font-body);
    font-size: 15px;
    font-weight: 400;
    color: var(--c-light-body);
    padding: 10px 12px;
    border-radius: 8px;
    transition: background 0.15s, color 0.15s;
  }

  .public-nav_mobileLink__tNUVu:hover {
    background: var(--c-green-faint);
    color: var(--c-light-head);
  }

  .public-nav_mobileLinkActive__9gGHL {
    color: var(--c-green-dark);
    font-weight: 500;
  }

  .public-nav_mobileCta__eON_c {
    display: flex;
    flex-direction: column;
    gap: 8px;
    margin-top: 8px;
    padding-top: 12px;
    border-top: 1px solid var(--c-border);
  }

  .public-nav_mobileLoginBtn__epDOh {
    display: block;
    text-align: center;
    font-family: var(--font-body);
    font-size: 15px;
    font-weight: 400;
    color: var(--c-light-head);
    padding: 10px 16px;
    border: 1px solid var(--c-border-mid);
    border-radius: 9px;
    transition: background 0.15s;
  }

  .public-nav_mobileLoginBtn__epDOh:hover {
    background: var(--c-cream-dark);
  }

  .public-nav_mobileJoinBtn__n9Gwx {
    display: block;
    text-align: center;
    font-family: var(--font-body);
    font-size: 15px;
    font-weight: 500;
    color: var(--c-cream);
    background: var(--c-navy);
    padding: 10px 16px;
    border-radius: 9px;
    transition: background 0.15s;
  }

  .public-nav_mobileJoinBtn__n9Gwx:hover {
    background: #1a2a3a;
  }

  .public-nav_mobileAccountBtn__FEFps {
    display: block;
    text-align: center;
    font-family: var(--font-body);
    font-size: 15px;
    font-weight: 400;
    color: var(--c-light-head);
    padding: 10px 16px;
    border: 1px solid var(--c-border-mid);
    border-radius: 9px;
    transition: background 0.15s;
  }

  .public-nav_mobileAccountBtn__FEFps:hover {
    background: var(--c-cream-dark);
  }

  .public-nav_mobileSignOutBtn__B3RLN {
    display: block;
    width: 100%;
    text-align: center;
    font-family: var(--font-body);
    font-size: 15px;
    font-weight: 400;
    color: var(--c-light-mute);
    padding: 10px 16px;
    background: none;
    border: 1px solid var(--c-border);
    border-radius: 9px;
    cursor: pointer;
    transition: background 0.15s, color 0.15s;
  }

  .public-nav_mobileSignOutBtn__B3RLN:hover {
    background: var(--c-cream-dark);
    color: var(--c-light-head);
  }
}

