/* Avatar-inspired biolum zones · liquid adventure path */

html[data-biolum-zone="canopy"] { --zone-glow: rgba(0, 212, 238, 0.12); --zone-accent: #00d4ee; }
html[data-biolum-zone="grove"]  { --zone-glow: rgba(57, 255, 180, 0.14); --zone-accent: #39ffb4; }
html[data-biolum-zone="river"]  { --zone-glow: rgba(0, 160, 255, 0.12); --zone-accent: #00a8ff; }
html[data-biolum-zone="temple"] { --zone-glow: rgba(255, 200, 80, 0.1); --zone-accent: #ffc850; }
html[data-biolum-zone="deep"]   { --zone-glow: rgba(140, 80, 255, 0.12); --zone-accent: #8c50ff; }
html[data-biolum-zone="summit"] { --zone-glow: rgba(0, 255, 200, 0.14); --zone-accent: #00ffc8; }
html[data-biolum-zone="return"] { --zone-glow: rgba(232, 50, 138, 0.12); --zone-accent: #e8328a; }

/* Liquid mind-map path (fixed to document height) — always behind text */
.pm-liquid-path-wrap {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  pointer-events: none;
  z-index: 0;
  overflow: visible;
}
#pm-liquid-path-svg {
  display: block;
  width: 100%;
  overflow: visible;
}
.pm-liquid-track {
  fill: none;
  stroke: rgba(255, 255, 255, 0.04);
  stroke-width: 3;
  stroke-linecap: round;
}
.pm-liquid-flow {
  fill: none;
  stroke: url(#pmLiquidGrad);
  stroke-width: 2;
  stroke-linecap: round;
  opacity: 0.55;
  filter: drop-shadow(0 0 8px rgba(0, 212, 238, 0.35));
  transition: stroke-dashoffset 0.15s ease-out;
}

/* All main content stacks above the liquid path */
main > section,
main > .trust-bar,
main > .neon-marquee-stack,
main > .pm-os-welcome {
  position: relative;
  z-index: 1;
}
#pm-adventure-marker {
  fill: url(#pmMarkerGrad);
  filter: drop-shadow(0 0 14px rgba(232, 50, 138, 0.8));
}

.pm-adventure-pill {
  position: fixed;
  bottom: calc(var(--pm-dock-offset, 5rem) + 0.5rem);
  left: 50%;
  transform: translateX(-50%);
  z-index: 7500;
  padding: 0.35rem 0.85rem;
  border-radius: 999px;
  font-family: var(--font-display, 'Syne', sans-serif);
  font-size: 0.62rem;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: rgba(255, 255, 255, 0.75);
  background: rgba(4, 8, 16, 0.82);
  border: 1px solid rgba(0, 212, 238, 0.25);
  backdrop-filter: blur(12px);
  pointer-events: none;
}

/* Zone section treatments */
[data-biolum-zone]::before {
  content: '';
  position: absolute;
  inset: 0;
  pointer-events: none;
  background: radial-gradient(ellipse 90% 60% at 50% 20%, var(--zone-glow), transparent 65%);
  opacity: 0.9;
  z-index: 0;
}
[data-biolum-zone] > .container,
[data-biolum-zone].hero .hero-grid { position: relative; z-index: 1; }
[data-biolum-zone] { position: relative; overflow: hidden; }

.hero[data-biolum-zone="canopy"]::after {
  content: '';
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  height: 120px;
  background: linear-gradient(to bottom, transparent, rgba(4, 12, 8, 0.4));
  pointer-events: none;
}

.biolum-zone-label {
  display: inline-block;
  margin-bottom: 0.5rem;
  padding: 0.2rem 0.55rem;
  border-radius: 999px;
  font-size: 0.58rem;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  border: 1px solid rgba(57, 255, 180, 0.35);
  color: var(--zone-accent, #39ffb4);
  text-shadow: 0 0 12px var(--zone-glow);
}

/* Adventure return hub */
.adventure-home {
  padding: clamp(4rem, 10vw, 6rem) 0;
  text-align: center;
  border-top: 1px solid rgba(0, 212, 238, 0.2);
  border-bottom: 1px solid rgba(232, 50, 138, 0.15);
}
.adventure-home::before {
  background:
    radial-gradient(ellipse 80% 50% at 50% 0%, rgba(0, 212, 238, 0.15), transparent 55%),
    radial-gradient(ellipse 70% 40% at 80% 80%, rgba(232, 50, 138, 0.1), transparent 50%),
    radial-gradient(ellipse 60% 40% at 20% 70%, rgba(57, 255, 180, 0.08), transparent 50%) !important;
}
.adventure-hub-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 160px), 1fr));
  gap: 0.75rem;
  margin: 2rem auto;
  max-width: 920px;
}
.adventure-hub-card {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0.35rem;
  padding: 1.1rem 0.85rem;
  border-radius: 14px;
  border: 1px solid rgba(255, 255, 255, 0.1);
  background: rgba(6, 10, 18, 0.75);
  backdrop-filter: blur(12px);
  color: inherit;
  text-decoration: none;
  font: inherit;
  cursor: pointer;
  transition: transform 0.25s, border-color 0.25s, box-shadow 0.25s;
}
.adventure-hub-card:hover {
  transform: translateY(-3px);
  border-color: var(--zone-accent, #00d4ee);
  box-shadow: 0 16px 40px rgba(0, 212, 238, 0.12);
}
.adventure-hub-card span:first-child { font-size: 1.5rem; }
.adventure-hub-card strong { font-size: 0.82rem; color: #fff; }
.adventure-hub-card em {
  font-style: normal;
  font-size: 0.65rem;
  color: rgba(255, 255, 255, 0.45);
}
.adventure-loop-note {
  margin-top: 1.5rem;
  font-size: 0.82rem;
  color: rgba(255, 255, 255, 0.5);
}

.neural-journey { background: rgba(4, 14, 10, 0.88) !important; }
#mission-control { background: rgba(12, 10, 6, 0.9) !important; }
#playbooks { background: rgba(8, 6, 14, 0.92) !important; }
#book { background: rgba(4, 12, 16, 0.9) !important; }

@media (prefers-reduced-motion: reduce) {
  .pm-liquid-path-wrap,
  .pm-adventure-pill { display: none; }
}

@media (max-width: 768px) {
  .pm-liquid-path-wrap { opacity: 0.45; }
  .adventure-hub-grid { grid-template-columns: repeat(2, 1fr); }
}
