/* Shared account navigation used on every public page. */
.site-nav-account-area,.mobile-account-area{position:relative;min-width:0}
[data-account-signed-out][hidden],[data-account-signed-in][hidden]{display:none!important}
.site-nav .site-nav-account-link,.site-nav-account-menu>summary,.mobile-account-menu>summary{box-sizing:border-box;display:inline-flex;min-height:2.5em;align-items:center;justify-content:center;gap:6px;padding:clamp(.45rem,.55vw,.625rem) clamp(.7rem,.9vw,1rem);border:1px solid var(--line);border-radius:9px;color:var(--muted);background:color-mix(in srgb,var(--panel) 85%,transparent);font-size:clamp(.875rem,calc(.82rem + .18vw),1rem);font-weight:400;line-height:1.2;text-decoration:none;white-space:nowrap;cursor:pointer;list-style:none}
.site-nav-account-menu>summary::-webkit-details-marker,.mobile-account-menu>summary::-webkit-details-marker{display:none}
.site-nav-account-menu>summary::after,.mobile-account-menu>summary::after{content:"⌄";font-size:.8em;opacity:.8}
.site-nav-account-menu[open]>summary,.site-nav-account-menu>summary:hover,.site-nav .site-nav-account-link:hover{border-color:color-mix(in srgb,var(--accent) 55%,var(--line));color:var(--accent);background:var(--glow)}
.account-menu-items{position:absolute;top:calc(100% + 7px);right:0;z-index:30;display:grid;min-width:190px;gap:5px;padding:7px;border:1px solid var(--line);border-radius:12px;background:var(--panel);box-shadow:0 14px 30px #0009}
.site-nav .account-menu-items a,.mobile-account-items a,.account-menu-items button,.mobile-account-items button{box-sizing:border-box;display:flex;width:100%;min-height:2.5em;align-items:center;justify-content:flex-start;padding:9px 11px;border:1px solid transparent;border-radius:8px;color:var(--muted);background:transparent;font:inherit;font-size:.95rem;line-height:1.2;text-decoration:none;white-space:nowrap;cursor:pointer}
.site-nav .account-menu-items a:hover,.mobile-account-items a:hover,.account-menu-items button:hover,.mobile-account-items button:hover{border-color:color-mix(in srgb,var(--accent) 55%,var(--line));color:var(--accent);background:var(--glow)}
.account-menu-status{max-width:240px;padding:6px 8px;color:var(--red,var(--accent));font-size:.8rem;white-space:normal}
.mobile-account-area{display:none}
@media(max-width:650px){
  .mobile-account-area{display:block;width:100%;}
  .mobile-account-link,.mobile-account-menu>summary{box-sizing:border-box;display:flex;width:100%;min-height:2.5em;align-items:center;justify-content:space-between;padding:9px 11px;border:1px solid var(--line);border-radius:9px;color:var(--muted);background:color-mix(in srgb,var(--panel) 85%,transparent);font:inherit;font-size:1rem;text-decoration:none;list-style:none;cursor:pointer}
  .mobile-account-menu[open]>summary,.mobile-account-menu>summary:hover,.mobile-account-link:hover{border-color:var(--accent);color:var(--accent);background:var(--glow)}
  .mobile-account-items{display:grid;gap:4px;padding:5px 0 2px 12px}
  .mobile-account-items a,.mobile-account-items button{white-space:normal}
}
:root.halloween-theme .site-nav-account-menu[open]>summary,:root.halloween-theme .site-nav-account-menu>summary:hover,:root.halloween-theme .site-nav .site-nav-account-link:hover,:root.halloween-theme .mobile-account-menu[open]>summary,:root.halloween-theme .mobile-account-menu>summary:hover,:root.halloween-theme .mobile-account-link:hover{border-color:#704014;color:var(--accent);background:#2b1a0d}
:root.easter-theme .site-nav-account-menu[open]>summary,:root.easter-theme .site-nav-account-menu>summary:hover,:root.easter-theme .site-nav .site-nav-account-link:hover,:root.easter-theme .mobile-account-menu[open]>summary,:root.easter-theme .mobile-account-menu>summary:hover,:root.easter-theme .mobile-account-link:hover{border-color:#8e6c80;color:var(--accent);background:#2b2229}
:root.christmas-theme .site-nav-account-menu[open]>summary,:root.christmas-theme .site-nav-account-menu>summary:hover,:root.christmas-theme .site-nav .site-nav-account-link:hover,:root.christmas-theme .mobile-account-menu[open]>summary,:root.christmas-theme .mobile-account-menu>summary:hover,:root.christmas-theme .mobile-account-link:hover{border-color:#92743b;color:var(--accent);background:#29181a}
:root.newyear-theme .site-nav-account-menu[open]>summary,:root.newyear-theme .site-nav-account-menu>summary:hover,:root.newyear-theme .site-nav .site-nav-account-link:hover,:root.newyear-theme .mobile-account-menu[open]>summary,:root.newyear-theme .mobile-account-menu>summary:hover,:root.newyear-theme .mobile-account-link:hover{border-color:#746128;color:var(--accent);background:#25213d}

/* The My Clubs quick list opens as a compact, theme-aware side drawer. */
.site-nav .account-menu-items .account-menu-action{box-sizing:border-box;display:flex;width:100%;min-height:2.5em;align-items:center;justify-content:flex-start;padding:9px 11px;border:1px solid transparent;border-radius:8px;color:var(--muted);background:transparent;font:inherit;font-size:.95rem;line-height:1.2;text-align:left;white-space:nowrap;cursor:pointer}
.site-nav .account-menu-items .account-menu-action:hover{border-color:color-mix(in srgb,var(--accent) 55%,var(--line));color:var(--accent);background:var(--glow)}
.site-nav-account-menu>summary [data-account-username]{display:block;max-width:150px;overflow:hidden;text-overflow:ellipsis}
.site-nav .account-menu-items .account-avatar-action,.mobile-account-items .account-avatar-action{justify-content:space-between;gap:14px;text-align:left}
.account-avatar-action img{display:block;width:34px;height:34px;flex:0 0 34px;border:1px solid var(--line);border-radius:50%;background:var(--bg);object-fit:cover}
.account-menu-status[data-kind="success"]{color:var(--green,#65d99b)}
.my-clubs-drawer{position:fixed;inset:0 0 0 auto;width:min(390px,94vw);height:100dvh;max-height:100dvh;margin:0;padding:0;overflow:auto;border:0;border-left:1px solid var(--line);border-radius:16px 0 0 16px;color:var(--text);background:var(--panel);box-shadow:-18px 0 55px #0007}
.my-clubs-drawer[open]{display:block;animation:my-clubs-drawer-in .2s ease-out both}
.my-clubs-drawer::backdrop{background:#05070bd1;backdrop-filter:blur(3px)}
.my-clubs-drawer-inner{display:grid;grid-template-rows:auto auto 1fr;min-height:100%;padding:24px 20px 20px}
.my-clubs-drawer-header{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;padding-bottom:17px;border-bottom:1px solid var(--line)}
.my-clubs-drawer-kicker{margin:0 0 5px;color:var(--accent);font-size:10px;font-weight:800;letter-spacing:.14em}
.my-clubs-drawer-header h2{margin:0;color:var(--text);font-size:24px;line-height:1.2}
.my-clubs-drawer-close{display:grid;width:36px;height:36px;flex:0 0 36px;place-items:center;border:1px solid var(--line);border-radius:10px;color:var(--muted);background:var(--bg);font:inherit;font-size:24px;line-height:1;cursor:pointer}
.my-clubs-drawer-close:hover{border-color:var(--accent);color:var(--accent)}
.my-clubs-drawer-status{margin:16px 0;color:var(--muted);font-size:13px}
.my-clubs-drawer-status[data-kind="error"]{color:var(--red,var(--accent))}
.my-clubs-drawer-list{align-content:start;display:grid;gap:8px;padding-top:2px}
.my-club-drawer-link,.my-clubs-drawer-signin{display:flex;min-height:60px;align-items:center;justify-content:space-between;gap:12px;padding:11px 13px;border:1px solid var(--line);border-radius:12px;color:var(--text);background:color-mix(in srgb,var(--panel) 80%,var(--bg));text-decoration:none;transition:border-color .16s,background .16s,transform .16s}
.my-club-drawer-link:hover,.my-clubs-drawer-signin:hover{transform:translateX(-2px);border-color:color-mix(in srgb,var(--accent) 55%,var(--line));background:var(--glow)}
.my-club-drawer-copy{display:grid;min-width:0;gap:3px}
.my-club-drawer-copy strong{overflow:hidden;color:var(--text);font-size:14px;text-overflow:ellipsis;white-space:nowrap}
.my-club-drawer-copy small{color:var(--muted);font-size:11px}
.my-club-drawer-arrow{color:var(--accent);font-size:25px;line-height:1}
.my-clubs-drawer-signin{width:max-content;min-height:42px;align-items:center;justify-content:center;padding:8px 14px;border-color:var(--accent);color:var(--accent);font-size:13px;font-weight:750}
@keyframes my-clubs-drawer-in{from{transform:translateX(18px);opacity:.65}to{transform:translateX(0);opacity:1}}
@media(prefers-reduced-motion:reduce){.my-clubs-drawer[open]{animation:none}.my-club-drawer-link,.my-clubs-drawer-signin{transition:none}}
@media(max-width:650px){.my-clubs-drawer{width:min(390px,96vw);border-radius:14px 0 0 14px}.my-clubs-drawer-inner{padding:20px 15px 16px}}

/* Option C navigation frame: pages left, support centered, account tools right. */
@media(min-width:901px){
  .site-nav{box-sizing:border-box!important;width:100%;min-height:64px!important;grid-template-columns:minmax(0,1fr) auto minmax(0,1.35fr)!important;align-items:center!important;gap:10px!important;margin:0 0 28px!important;padding:8px 10px!important;border:1px solid color-mix(in srgb,var(--line) 88%,var(--accent))!important;border-radius:15px!important;background:color-mix(in srgb,var(--panel) 92%,var(--bg))!important;box-shadow:0 12px 32px #0003!important}
  .site-nav-links{grid-column:1!important;grid-row:1!important;display:flex!important;flex-wrap:nowrap!important;gap:7px!important;min-width:0!important}
  .site-nav-actions{grid-column:3!important;grid-row:1!important;display:flex!important;flex-wrap:nowrap!important;justify-content:flex-end!important;align-items:center!important;gap:6px!important;min-width:0!important}
  .site-nav-support{grid-column:2!important;grid-row:1!important;position:static!important;justify-self:center!important;width:auto!important;margin:0!important;transform:none!important}
  .site-nav-links>a,.site-nav-actions>a,.site-nav .support-link,.site-nav-live-visitors,.site-nav-account-link,.site-nav-account-menu>summary{box-sizing:border-box!important;min-height:36px!important;padding:0 10px!important;border-radius:9px!important;font-size:12px!important;line-height:1.1!important}
  .site-nav-links>a,.site-nav-actions>a,.site-nav-account-link,.site-nav-account-menu>summary,.site-nav-live-visitors,.site-nav .support-link{border-color:color-mix(in srgb,var(--line) 92%,var(--accent))!important;background:color-mix(in srgb,var(--panel) 90%,var(--bg))!important;color:var(--muted)!important}
  .site-nav-links>a:hover,.site-nav-links>a[aria-current="page"],.site-nav-actions>a:hover,.site-nav-account-link:hover,.site-nav-account-menu[open]>summary,.site-nav .support-link:hover{border-color:color-mix(in srgb,var(--accent) 72%,var(--line))!important;background:color-mix(in srgb,var(--accent) 12%,var(--panel))!important;color:var(--accent)!important;transform:none!important}
  .site-nav-links>a[aria-current="page"]{border-color:color-mix(in srgb,var(--accent) 72%,var(--line))!important;background:color-mix(in srgb,var(--accent) 13%,var(--panel))!important;color:var(--accent)!important}
  .site-nav .site-nav-support .support-link{gap:8px!important;padding:0 16px!important;color:var(--text)!important;font-weight:750!important}
  .site-nav .site-nav-support .support-link>span:first-child{font-size:15px}
  .site-nav-actions .site-nav-live-visitors{gap:6px!important;padding:0 10px!important}
  .site-nav-live-visitors img{display:none!important}
  .site-nav-live-visitors::before{content:"🌐";color:var(--accent);font-size:11px}
  .site-nav-account-area{display:flex!important;align-items:center!important;flex:0 0 auto!important;margin-left:2px!important;padding-left:12px!important;border-left:1px solid var(--line)!important}
  .site-nav-account-menu{position:relative!important}
  .site-nav-account-menu>summary{display:inline-flex!important;align-items:center!important;gap:8px!important;color:var(--accent)!important;font-weight:750!important;background:color-mix(in srgb,var(--accent) 10%,var(--panel))!important;border-color:color-mix(in srgb,var(--accent) 45%,var(--line))!important}
  .site-nav-account-menu>summary::before,.site-nav-account-link::before{content:"🔐";display:inline-grid;width:20px;height:20px;place-items:center;border-radius:50%;background:color-mix(in srgb,var(--accent) 18%,var(--panel));font-size:11px}
  .site-nav-account-menu>summary::after,.site-nav-account-link::after{content:"⌄";font-size:11px;opacity:.9}
  .site-nav-account-menu[open]>summary{color:var(--accent)!important}
  .site-nav-account-menu .account-menu-items{top:calc(100% + 8px)!important;right:0!important}
  .mobile-nav-dropdown,.mobile-account-area{display:none!important}
}
@media(max-width:900px){
  .site-nav{box-sizing:border-box!important;display:grid!important;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr)!important;align-items:center!important;gap:5px!important;min-height:54px!important;padding:6px 8px!important;border:1px solid color-mix(in srgb,var(--line) 88%,var(--accent))!important;border-radius:14px!important;background:color-mix(in srgb,var(--panel) 92%,var(--bg))!important}
  .site-nav-links,.site-nav-actions{display:none!important}
  .site-nav>.mobile-nav-dropdown{display:block!important;grid-column:1!important;grid-row:1!important;justify-self:start!important;width:max-content!important;max-width:100%!important;min-width:0!important}
  .site-nav>.site-nav-support{display:flex!important;grid-column:2!important;grid-row:1!important;justify-self:center!important;width:auto!important;margin:0!important;position:static!important;transform:none!important}
  .site-nav>.mobile-site-nav-visitors{display:none!important}
  .site-nav>.mobile-account-area{display:block!important;grid-column:3!important;grid-row:1!important;justify-self:end!important;width:max-content!important;max-width:100%!important;min-width:0!important}
  .site-nav>.mobile-account-area .mobile-account-link,.site-nav>.mobile-account-area .mobile-account-menu>summary{box-sizing:border-box!important;display:flex!important;min-height:36px!important;align-items:center!important;justify-content:center!important;gap:7px!important;padding:0 10px!important;border:1px solid color-mix(in srgb,var(--accent) 45%,var(--line))!important;border-radius:9px!important;background:color-mix(in srgb,var(--accent) 10%,var(--panel))!important;color:var(--accent)!important;font-size:12px!important;font-weight:750!important;line-height:1.1!important;white-space:nowrap!important}
  .mobile-account-menu>summary::before,.mobile-account-link::before{content:"🔐";display:inline-grid;width:20px;height:20px;place-items:center;border-radius:50%;background:color-mix(in srgb,var(--accent) 18%,var(--panel));font-size:11px}
  .mobile-account-menu>summary::after,.mobile-account-link::after{content:"⌄";font-size:11px;opacity:.9}
  .mobile-account-menu .mobile-account-items{position:absolute;top:calc(100% + 7px);right:0;z-index:30;display:grid;min-width:190px;gap:5px;margin:0;padding:7px;border:1px solid var(--line);border-radius:12px;background:var(--panel);box-shadow:0 14px 30px #0009}
  .mobile-account-items a,.mobile-account-items button{min-height:36px!important;padding:8px 10px!important;border-radius:8px!important;font-size:12px!important}
  .site-nav>.mobile-nav-dropdown>summary{min-height:36px!important;padding:0 10px!important;border:1px solid var(--line)!important;border-radius:9px!important;background:color-mix(in srgb,var(--panel) 90%,var(--bg))!important;color:var(--muted)!important;font-size:12px!important;line-height:1.1!important;white-space:nowrap!important}
  .site-nav .support-link{max-width:100%!important;min-height:36px!important;gap:5px!important;padding:0 8px!important;border-radius:9px!important;font-size:clamp(10px,2.9vw,12px)!important;font-weight:750!important;white-space:nowrap!important}
  .site-nav-live-visitors img{display:none!important}
  .footer-mobile-support{display:none!important}
}
@media(max-width:380px){
  .site-nav{gap:3px!important;padding-right:5px!important;padding-left:5px!important}
  .site-nav>.mobile-nav-dropdown>summary,.site-nav .support-link,.site-nav>.mobile-account-area .mobile-account-link,.site-nav>.mobile-account-area .mobile-account-menu>summary{padding-right:6px!important;padding-left:6px!important;font-size:10px!important}
}


/* Center the drink button on the site and keep the navigation emojis crisp at normal zoom. */
@media(min-width:901px){
  .site-nav{position:relative!important}
  .site-nav>.site-nav-support{position:absolute!important;left:50%!important;top:50%!important;transform:translate(-50%,-50%)!important;justify-self:auto!important;grid-column:auto!important;grid-row:auto!important}
  .site-nav-live-visitors::before{font-size:18px!important;line-height:1!important}
  .site-nav-account-menu>summary::before,.site-nav-account-link::before{width:24px!important;height:24px!important;font-size:18px!important}
  .site-nav-support .support-link>span:first-child{font-size:18px!important;line-height:1!important}
}
@media(max-width:900px){
  .site-nav{position:relative!important}
  .site-nav>.site-nav-support{position:absolute!important;left:50%!important;top:50%!important;transform:translate(-50%,-50%)!important;justify-self:auto!important;grid-column:auto!important;grid-row:auto!important}
  .site-nav>.mobile-account-area .mobile-account-menu>summary::before,.site-nav>.mobile-account-area .mobile-account-link::before{width:24px!important;height:24px!important;font-size:18px!important}
  .site-nav .support-link>span:first-child{font-size:18px!important;line-height:1!important}
}
@media(max-width:380px){
  .site-nav>.site-nav-support .support-link{gap:3px!important;padding-right:5px!important;padding-left:5px!important}
  .site-nav .support-link>span:first-child{font-size:16px!important}
}

/* Lower the Halloween web and spider together; bring the bat into view below the nav. */
:root.halloween-theme .halloween-spider{top:18px!important}
:root.halloween-theme .title::after,:root.halloween-theme h1:not(.title)::after{top:16vh!important;z-index:1!important;font-size:28px!important}


/* Show the account lock emoji without a decorative badge behind it. */
.site-nav-account-menu>summary::before,.site-nav .site-nav-account-link::before,.mobile-account-menu>summary::before,.mobile-account-link::before{display:inline-block!important;width:auto!important;height:auto!important;border-radius:0!important;background:transparent!important;place-items:initial!important}


/* passophonics-mobile-nav-fit-fix: keep controls separated on narrow phones and size the dropdown icon. */
@media (max-width: 650px) {
  .site-nav {
    grid-template-columns: minmax(0, 1fr) auto !important;
    grid-template-rows: auto auto !important;
    row-gap: 6px !important;
    min-height: 0 !important;
    padding: 8px 10px !important;
  }
  .site-nav > .mobile-nav-dropdown { grid-column: 1 !important; grid-row: 1 !important; }
  .site-nav > .mobile-account-area {
    grid-column: 2 !important; grid-row: 1 !important;
    justify-self: end !important; width: max-content !important; max-width: 100% !important;
  }
  .site-nav > .mobile-account-area .mobile-account-link,
  .site-nav > .mobile-account-area .mobile-account-menu > summary {
    gap: 4px !important; padding-right: 7px !important; padding-left: 7px !important;
    font-size: 11px !important;
  }
  .site-nav > .site-nav-support {
    position: static !important; grid-column: 1 / -1 !important; grid-row: 2 !important;
    justify-self: center !important; width: max-content !important; margin: 0 !important;
    transform: none !important;
  }
  .site-nav .mobile-nav-list a { gap: 4px !important; }
  .site-nav .mobile-nav-list .external-link-icon {
    display: inline-block !important; width: 12px !important; height: 12px !important;
    flex: 0 0 12px !important; margin: 0 0 0 4px !important; vertical-align: middle !important;
  }
}


/* passophonics-mobile-account-icons-fix */
@media (max-width: 650px) {
  .site-nav > .mobile-account-area .mobile-account-link,
  .site-nav > .mobile-account-area .mobile-account-menu > summary {
    box-sizing: border-box !important;
    display: flex !important;
    width: 46px !important; min-width: 46px !important; max-width: 46px !important;
    min-height: 36px !important; padding: 0 !important; gap: 0 !important;
    justify-content: center !important; font-size: 0 !important; line-height: 1 !important;
  }
  .site-nav > .mobile-account-area .mobile-account-link::before,
  .site-nav > .mobile-account-area .mobile-account-menu > summary::before {
    display: inline-block !important; width: auto !important; height: auto !important;
    flex: 0 0 auto !important; border-radius: 0 !important; background: transparent !important;
    font-size: 18px !important; line-height: 1 !important;
  }
  .site-nav > .mobile-account-area .mobile-account-link::before { content: "🔒" !important; }
  .site-nav > .mobile-account-area .mobile-account-menu > summary::before { content: "🔓" !important; }
  .site-nav > .mobile-account-area .mobile-account-link::after,
  .site-nav > .mobile-account-area .mobile-account-menu > summary::after {
    display: inline-block !important; margin-left: 2px !important;
    font-size: 11px !important; line-height: 1 !important; opacity: .9 !important;
  }
}


/* passophonics-mobile-nav-support-and-visitor-fix */
@media (max-width: 650px) {
  .site-nav {
    grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr) !important;
    grid-template-rows: auto !important; row-gap: 0 !important;
    min-height: 54px !important; padding: 6px 8px !important;
  }
  .site-nav > .mobile-nav-dropdown { grid-column: 1 !important; grid-row: 1 !important; }
  .site-nav > .site-nav-support {
    position: absolute !important; left: 50% !important; top: 50% !important;
    transform: translate(-50%, -50%) !important; grid-column: auto !important;
    grid-row: auto !important; justify-self: auto !important; width: auto !important;
    margin: 0 !important;
  }
  .site-nav > .mobile-account-area {
    grid-column: 3 !important; grid-row: 1 !important; justify-self: end !important;
    width: max-content !important; max-width: 100% !important; min-width: 0 !important;
  }
  .site-nav > .mobile-account-area .mobile-account-link,
  .site-nav > .mobile-account-area .mobile-account-menu > summary {
    width: max-content !important; min-width: 0 !important; max-width: 100% !important;
    padding: 0 7px !important; gap: 4px !important;
  }
  .site-nav > .mobile-account-area .mobile-account-visitors {
    display: inline-flex !important; align-items: center !important; gap: 3px !important;
    color: var(--muted) !important; font-size: 10px !important; line-height: 1.1 !important;
    white-space: nowrap !important;
  }
  .site-nav > .mobile-account-area .mobile-account-visitors strong {
    color: var(--accent) !important; font-weight: 850 !important; font-variant-numeric: tabular-nums;
  }
  .site-nav > .mobile-account-area .mobile-account-link::before { content: "🔒" !important; }
  .site-nav > .mobile-account-area .mobile-account-menu > summary::before { content: "🔓" !important; }
}


/* passophonics-mobile-nav-visitor-reposition-fix */
@media (max-width: 650px) {
  .site-nav {
    grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr) !important;
    grid-template-rows: auto !important; row-gap: 0 !important;
    min-height: 54px !important; padding: 6px 8px !important;
  }
  .site-nav > .mobile-nav-dropdown { grid-column: 1 !important; grid-row: 1 !important; }
  .site-nav > .site-nav-support {
    position: absolute !important; left: 50% !important; top: 50% !important;
    transform: translate(-50%, -50%) !important; grid-column: auto !important;
    grid-row: auto !important; justify-self: auto !important; width: auto !important;
    margin: 0 !important;
  }
  .site-nav > .mobile-account-area {
    display: flex !important; flex-direction: row !important; align-items: center !important;
    justify-self: end !important; grid-column: 3 !important; grid-row: 1 !important;
    width: max-content !important; max-width: 100% !important; min-width: 0 !important; gap: 4px !important;
  }
  .site-nav > .mobile-account-area > .mobile-site-nav-visitors {
    box-sizing: border-box !important; display: inline-flex !important; flex: 0 0 auto !important;
    min-height: 36px !important; align-items: center !important; justify-content: center !important;
    gap: 3px !important; padding: 0 7px !important; border: 1px solid var(--line) !important;
    border-radius: 9px !important; color: var(--muted) !important;
    background: color-mix(in srgb, var(--panel) 85%, transparent) !important;
    font-size: 11px !important; line-height: 1.1 !important; white-space: nowrap !important;
  }
  .site-nav > .mobile-account-area .mobile-site-nav-visitors img { display: none !important; }
  .site-nav > .mobile-account-area .mobile-visitors-globe { font-size: 14px !important; line-height: 1 !important; }
  .site-nav > .mobile-account-area .mobile-site-nav-visitors strong {
    color: var(--accent) !important; font-weight: 850 !important; font-variant-numeric: tabular-nums;
  }
  .site-nav > .mobile-account-area .mobile-account-link,
  .site-nav > .mobile-account-area .mobile-account-menu > summary {
    box-sizing: border-box !important; display: flex !important; flex: 0 0 46px !important;
    width: 46px !important; min-width: 46px !important; max-width: 46px !important;
    min-height: 36px !important; padding: 0 !important; gap: 0 !important;
    justify-content: center !important; font-size: 0 !important; line-height: 1 !important;
  }
  .site-nav > .mobile-account-area .mobile-account-link::before,
  .site-nav > .mobile-account-area .mobile-account-menu > summary::before {
    display: inline-block !important; width: auto !important; height: auto !important;
    flex: 0 0 auto !important; border-radius: 0 !important; background: transparent !important;
    font-size: 18px !important; line-height: 1 !important;
  }
  .site-nav > .mobile-account-area .mobile-account-link::before { content: "🔒" !important; }
  .site-nav > .mobile-account-area .mobile-account-menu > summary::before { content: "🔓" !important; }
  .site-nav > .mobile-account-area .mobile-account-link::after,
  .site-nav > .mobile-account-area .mobile-account-menu > summary::after {
    display: inline-block !important; margin-left: 2px !important;
    font-size: 11px !important; line-height: 1 !important; opacity: .9 !important;
  }
  .site-nav > .mobile-account-area .mobile-account-visitors { display: none !important; }
}


/* passophonics-mobile-account-seasonal-layer-fix */
@media (max-width: 900px) {
  /* The mobile account styles use display:flex!important; ensure the HTML hidden
     state still wins when the account session switches between signed out/in. */
  .site-nav > .mobile-account-area > [hidden] {
    display: none !important;
  }

  /* Keep account dropdowns above positioned seasonal heading decorations. */
  .site-nav {
    position: relative !important;
    z-index: 20 !important;
  }
}

/* Keep the My Clubs close glyph centered even when browser button defaults vary. */
.my-clubs-drawer-close {
  box-sizing: border-box !important;
  display: grid !important;
  width: 36px !important;
  height: 36px !important;
  padding: 0 !important;
  place-items: center !important;
  text-align: center !important;
  line-height: 1 !important;
}


/* passophonics-mobile-account-seasonal-bat-fix */
@media (max-width: 900px) {
  /* Account controls declare display:flex!important, so explicitly honor hidden. */
  .site-nav > .mobile-account-area > [hidden] {
    display: none !important;
  }

  /* Keep the account dropdown above positioned seasonal heading decorations. */
  .site-nav {
    position: relative !important;
    z-index: 20 !important;
  }
}

/* Anchor the Halloween bat beside the page heading instead of the viewport.
   Stop its bobbing animation so it stays in one decorative position. */
:root.halloween-theme .title::after,
:root.halloween-theme h1:not(.title)::after {
  position: absolute !important;
  top: -.72em !important;
  left: calc(100% + 9px) !important;
  right: auto !important;
  z-index: 1 !important;
  font-size: .56em !important;
  line-height: 1 !important;
  pointer-events: none !important;
  animation: none !important;
  transform: none !important;
}

@media (max-width: 650px) {
  :root.halloween-theme .title::after,
  :root.halloween-theme h1:not(.title)::after {
    top: -.62em !important;
    left: calc(100% + 6px) !important;
    font-size: .54em !important;
  }
}

/* Keep the My Clubs close glyph centered across browsers. */
.my-clubs-drawer-close {
  box-sizing: border-box !important;
  display: grid !important;
  width: 36px !important;
  height: 36px !important;
  padding: 0 !important;
  place-items: center !important;
  text-align: center !important;
  line-height: 1 !important;
}

