/* NAT on Tour QA22.7: consistent blue palette, accessible CTA and visible public Easter egg. */
:root { --primary:#2563EB; --primary-foreground:#FFFFFF; --accent:#00BFFF; --accent-foreground:#041725; --ring:#60A5FA; --lime:#00BFFF; --sidebar-primary:#2563EB; --sidebar-primary-foreground:#FFFFFF; --sidebar-ring:#60A5FA; --chart-1:#00BFFF; }
.site-shell .site-logo img, .track-page .site-logo img, .footer .site-logo img {
  filter: brightness(0) saturate(100%) invert(62%) sepia(89%) saturate(2033%) hue-rotate(153deg) brightness(103%) contrast(106%) drop-shadow(0 0 10px rgba(0,191,255,.35));
}
.site-shell .track-nav-button, .site-shell .primary-cta {
  background:#2563EB; color:#FFFFFF; border-color:rgba(255,255,255,.17);
  box-shadow:0 10px 33px rgba(37,99,235,.28);
}
.site-shell .track-nav-button:hover, .site-shell .primary-cta:hover {
  background:#3B82F6; color:#FFFFFF; box-shadow:0 14px 44px rgba(37,99,235,.39);
}
.site-shell .language-link { color:#66E0FF!important; }
.site-shell .live-dot { background:#00BFFF; box-shadow:0 0 0 6px rgba(0,191,255,.13),0 0 18px #00BFFF; }
.site-shell a:focus-visible, .nat-halloween-secret:focus-visible, .nat-halloween-close:focus-visible, .nat-halloween-back:focus-visible {
  outline:3px solid #66E0FF; outline-offset:3px;
}
/* An unobtrusive but always visible pumpkin on the PUBLIC home page. */
.nat-halloween-secret {
  appearance:none; display:inline-grid; place-items:center; flex:none;
  width:28px; height:28px; margin-inline-start:8px; padding:0; border:1px solid rgba(255,255,255,.24);
  border-radius:50%; background:rgba(4,18,29,.44); color:#fff; font:19px/1 system-ui,sans-serif;
  cursor:pointer; vertical-align:middle; box-shadow:0 0 0 1px rgba(0,191,255,.13); transition:transform .2s,box-shadow .2s;
}
.nat-halloween-secret:hover {transform:rotate(-12deg) scale(1.13); box-shadow:0 0 22px rgba(255,156,45,.6);}
.nat-halloween-overlay {
  position:fixed; inset:0; z-index:2147483000; display:grid; place-items:center;
  padding:clamp(16px,4vw,38px); overflow:auto; overscroll-behavior:contain;
  background:rgba(3,10,23,.84); backdrop-filter:blur(12px); -webkit-backdrop-filter:blur(12px);
  opacity:0; visibility:hidden; transition:opacity .28s ease,visibility .28s;
}
.nat-halloween-overlay.is-visible { opacity:1; visibility:visible; }
.nat-halloween-card {
  position:relative; isolation:isolate; overflow:hidden; text-align:center; width:min(620px,100%);
  padding:clamp(28px,7vw,62px) clamp(20px,6vw,50px) clamp(28px,6vw,45px);
  border:1px solid rgba(0,191,255,.65); border-radius:28px;
  background:radial-gradient(circle at 50% 20%,rgba(0,191,255,.16),transparent 47%),linear-gradient(158deg,#111a2e,#060d1b 75%);
  box-shadow:0 0 78px rgba(0,191,255,.25),0 24px 85px rgba(0,0,0,.5); color:#fff;
}
.nat-halloween-close {
  position:absolute; z-index:5; top:13px; right:13px; width:42px; height:42px; display:grid; place-items:center;
  border-radius:50%; border:1px solid rgba(255,255,255,.28); background:rgba(0,0,0,.24); color:#fff;
  font-size:26px; line-height:1; cursor:pointer;
}
.nat-halloween-close:hover {background:rgba(0,191,255,.2);}
.nat-halloween-moon { width:88px; height:88px; border-radius:50%; margin:0 auto 12px;
  background:radial-gradient(circle at 37% 30%,#eaffff,#81dfff 67%,#2499c8);
  box-shadow:0 0 33px rgba(107,221,255,.7),0 0 94px rgba(0,191,255,.3); }
.nat-halloween-pumpkin { position:relative; z-index:2; display:block; margin:-48px auto 8px; width:max-content;
  font-size:clamp(72px,17vw,112px); line-height:1.2; filter:drop-shadow(0 15px 24px rgba(255,114,0,.2));
  animation:nat-pumpkin-bob 3s ease-in-out infinite alternate; }
.nat-halloween-eyebrow {font:800 12px/1.4 system-ui,sans-serif; letter-spacing:.2em; text-transform:uppercase; color:#80DEFF;}
.nat-halloween-card h2 {margin:14px 0 12px; font:900 clamp(37px,9vw,71px)/.98 system-ui,sans-serif;
  letter-spacing:-.065em; text-transform:uppercase; text-shadow:0 0 27px rgba(0,191,255,.28);}
.nat-halloween-card h2 span {color:#00BFFF; display:block;}
.nat-halloween-card p {max-width:490px; margin:10px auto 22px; font:400 clamp(15px,3.2vw,19px)/1.58 system-ui,sans-serif; color:#d8e8f7;}
.nat-halloween-back {border:0; background:#00BFFF; color:#041521; font:800 15px/1 system-ui,sans-serif;
  min-height:48px; padding:14px 24px; border-radius:999px; cursor:pointer;
  box-shadow:0 12px 38px rgba(0,191,255,.24);}
.nat-halloween-back:hover { background:#66E0FF; }
.nat-halloween-bat {pointer-events:none; position:absolute; z-index:1; display:block; font-size:30px;
  animation:nat-bat-fly 4s ease-in-out infinite alternate; opacity:.8;}
.nat-halloween-bat.one {left:10%; top:16%; animation-delay:-1s;}
.nat-halloween-bat.two {right:11%; top:29%; animation-delay:-2.2s; font-size:23px;}
.nat-halloween-bat.three {right:24%; top:10%; animation-delay:-.4s; font-size:18px;}
body.nat-halloween-open {overflow:hidden;}
@keyframes nat-pumpkin-bob {from{transform:translateY(-3px) rotate(-3deg)}to{transform:translateY(8px) rotate(3deg)}}
@keyframes nat-bat-fly {from{transform:translate(-7px,-9px) rotate(-13deg)}to{transform:translate(15px,12px) rotate(10deg)}}
@media(max-width:550px){.nat-halloween-card{border-radius:22px}.nat-halloween-overlay{padding:14px}.nat-halloween-bat.one{left:4%}.nat-halloween-bat.two{right:4%}}
@media(prefers-reduced-motion:reduce){.nat-halloween-pumpkin,.nat-halloween-bat{animation:none}.nat-halloween-overlay,.nat-halloween-secret{transition:none}}

/* QA22.7: primary actions are royal blue; information accents and GPS line are neon cyan. */
.site-shell .track-nav-button,.site-shell .primary-cta,
.track-page .track-nav-button,.track-page .primary-cta,
.member-page .primary-cta { background:#2563EB!important;color:#fff!important;border-color:rgba(147,197,253,.42)!important;box-shadow:0 10px 28px rgba(37,99,235,.30)!important; }
.site-shell .track-nav-button:hover,.site-shell .primary-cta:hover,
.track-page .track-nav-button:hover,.track-page .primary-cta:hover,
.member-page .primary-cta:hover { background:#3B82F6!important;color:#fff!important;box-shadow:0 13px 32px rgba(37,99,235,.38)!important; }
.site-shell .track-nav-button:active,.site-shell .primary-cta:active{background:#1D4ED8!important;transform:translateY(1px)}
.site-shell .track-nav-button:focus-visible,.site-shell .primary-cta:focus-visible,
.member-page button:focus-visible,.member-page a:focus-visible{outline:3px solid #93C5FD!important;outline-offset:3px}
/* Public showcase: visible, accessible, not obscuring the menu or its primary CTA. */
.nat-halloween-secret{position:fixed;right:20px;bottom:20px;z-index:1500;width:49px;height:49px;margin:0;
 border:1px solid rgba(255,190,90,.65);border-radius:16px;background:linear-gradient(155deg,#182C45,#071117);
 font-size:25px;box-shadow:0 9px 27px rgba(0,0,0,.48),0 0 0 3px rgba(0,191,255,.12);
 animation:nat-pumpkin-attention 3.4s ease-in-out infinite; }
.nat-halloween-secret:hover{transform:rotate(-9deg) scale(1.08);}
@keyframes nat-pumpkin-attention{0%,100%{box-shadow:0 9px 27px rgba(0,0,0,.48),0 0 0 3px rgba(0,191,255,.12)}50%{box-shadow:0 11px 29px rgba(0,0,0,.55),0 0 0 6px rgba(0,191,255,.24)}}
@media(max-width:600px){.nat-halloween-secret{right:13px;bottom:13px;width:45px;height:45px;font-size:23px}}
@media(prefers-reduced-motion:reduce){.nat-halloween-secret{animation:none}}
/* Isolated content highlights: neutral UI chrome with clear cyan focus. */
.member-page .journey-note-list article.nat-linked-report:target,
.member-page .journey-note-list article.nat-linked-report.nat-point-selected { outline:2px solid #00BFFF; }
.member-page .nat-album-report-link:hover{color:#72D9FF}
.member-page .nat-photo-lightbox-close:hover,.member-page .nat-photo-lightbox-retry:hover{border-color:#60A5FA}

.nat-halloween-secret[hidden]{display:none!important}
