/* Shared calm workspace layer for the graph and training products. */
.galaxy-page,
.challenge-product {
  --bg: #0b101b;
  --panel: rgba(17, 25, 39, .94);
  --line: rgba(115, 129, 147, .23);
  --text: #e8edf2;
  --muted: #8d9aaa;
  --cyan: #8db6c9;
  --violet: #a8b4c1;
  --green: #8fc2a6;
  --yellow: #cfb77d;
  --red: #d18b96;
  --shell-cyan: #8db6c9;
  --shell-violet: #a8b4c1;
  --shell-green: #8fc2a6;
  --shell-yellow: #cfb77d;
  font-family: "Onest", "Segoe UI", sans-serif;
}

.galaxy-page { background: radial-gradient(circle at 58% 38%, #172233 0, #0d1522 34%, #0b101b 72%); }
.galaxy-page::before { opacity: .055; }
.galaxy-page .noise { opacity: .055; }
.galaxy-page .topbar,
.challenge-product .topbar { background: rgba(11, 16, 27, .9); border-bottom-color: var(--line); }
.galaxy-page .brand-mark { border-color: var(--cyan); box-shadow: none; }
.galaxy-page .brand-mark::after { box-shadow: none; }
.galaxy-page .panel,
.galaxy-page .filter-card,
.galaxy-page .zoom-tools button { background: var(--panel); border-color: var(--line); box-shadow: none; }
.galaxy-page .filter-card { border-radius: 14px; padding: 9px 12px; }
.galaxy-page .filter-pill { padding: 7px 14px; border-color: var(--line); background: rgba(255,255,255,.018); box-shadow: none !important; transition: background-color .18s cubic-bezier(.23,1,.32,1), border-color .18s cubic-bezier(.23,1,.32,1), transform .18s cubic-bezier(.23,1,.32,1); }
.galaxy-page .filter-pill:hover { transform: translateY(-1px); }
.galaxy-page .filter-pill.active { background: linear-gradient(112deg,rgba(141,182,201,.17),rgba(143,194,166,.09)); }
.galaxy-page .hero-copy h1 span { color: var(--text); background: none; }
.galaxy-page .layer > i,
.galaxy-page .loading span,
.galaxy-page .strong { box-shadow: none; }
.galaxy-page .inspector-head img,
.galaxy-page .personal-head img,
.galaxy-page .personal-hero:hover,
.galaxy-page .personal-hero:focus-visible { box-shadow: none; }
.galaxy-page .personal-section { background: rgba(13,21,34,.7); border-color: var(--line); }
.galaxy-page .personal-rec { background: rgba(11,16,27,.54); }

.challenge-product { background: #0b101b; color: var(--text); }
.challenge-product .challenge-page { width: min(1220px, calc(100% - 40px)); padding-top: 24px; }
.challenge-product .challenge-hero { min-height: 390px; padding: 44px 42px 116px; border-color: var(--line); background-image: linear-gradient(90deg,rgba(11,16,27,.98),rgba(11,16,27,.9) 55%,rgba(11,16,27,.55)),url("assets/challenge/skill-lab-nebula-v1.png"); box-shadow: none; }
.challenge-product .challenge-hero::before,
.challenge-product .challenge-hero::after { opacity: .08; }
.challenge-product .challenge-hero-copy { max-width: 620px; }
.challenge-product .challenge-hero-copy h1 { margin: 12px 0 14px; font-size: clamp(36px,4.4vw,56px); font-weight: 420; letter-spacing: -.045em; text-shadow: none; }
.challenge-product .challenge-hero-copy h1 em { color: var(--cyan); text-shadow: none; }
.challenge-product .challenge-hero-copy p { max-width: 540px; color: var(--muted); font-size: 14px; line-height: 1.6; }
.challenge-product .challenge-radar { opacity: .24; }
.challenge-product .challenge-radar > div,
.challenge-product .challenge-radar i { box-shadow: none; }
.challenge-product .challenge-totals { border-top-color: var(--line); background: linear-gradient(90deg,rgba(11,16,27,.96),rgba(11,16,27,.72)); }
.challenge-product .challenge-hero-actions button,
.challenge-product .challenge-hero-actions a,
.challenge-product .challenge-game-card button { border-radius: 9px; border-color: var(--line); background: rgba(141,182,201,.1); color: var(--text); }
.challenge-product .challenge-hero-actions button,
.challenge-product .challenge-game-card button { border-color: rgba(232,237,242,.14); background: linear-gradient(112deg,#8db6c9,#8fc2a6); color: #0b101b; box-shadow: inset 0 1px rgba(255,255,255,.22); }
.challenge-product .challenge-hero-actions button:hover,
.challenge-product .challenge-game-card button:hover { color: #0b101b; box-shadow: inset 0 1px rgba(255,255,255,.22); filter: brightness(1.08) saturate(1.04); }
.galaxy-page input[type="range"],
.challenge-product input[type="range"] { height: 20px; appearance: none; -webkit-appearance: none; background: transparent; }
.galaxy-page input[type="range"]::-webkit-slider-runnable-track,
.challenge-product input[type="range"]::-webkit-slider-runnable-track { height: 5px; border-radius: 999px; background: linear-gradient(90deg,rgba(141,182,201,.82),rgba(143,194,166,.72)); box-shadow: inset 0 0 0 1px rgba(232,237,242,.08); }
.galaxy-page input[type="range"]::-webkit-slider-thumb,
.challenge-product input[type="range"]::-webkit-slider-thumb { width: 16px; height: 16px; margin-top: -5.5px; appearance: none; -webkit-appearance: none; border: 2px solid #dce7e6; border-radius: 50%; background: #172233; box-shadow: 0 0 0 3px rgba(141,182,201,.14); }
.challenge-product .challenge-section { margin-top: 30px; }
.challenge-product .challenge-game-card,
.challenge-product .challenge-board-main,
.challenge-product .achievement-panel,
.challenge-product .roadmap-list article,
.challenge-product .coach-focus { border-color: var(--line); border-radius: 12px; background: rgba(17,25,39,.9); box-shadow: none; }
.challenge-product .challenge-game-card { min-height: 310px; padding: 20px; animation-duration: .28s; }
.challenge-product .challenge-game-card::before { opacity: .3; box-shadow: none; }
.challenge-product .game-card-visual { width: 84px; height: 84px; margin: 18px auto; }
.challenge-product .game-card-visual i,
.challenge-product .achievement-list .unlocked > i { box-shadow: none; }

@media (max-width: 700px) {
  .challenge-product .challenge-page { width: calc(100% - 20px); }
  .challenge-product .challenge-hero { min-height: auto; padding: 30px 22px 0; }
  .challenge-product .challenge-hero-copy h1 { font-size: 36px; }
  .challenge-product .challenge-radar { opacity: .12; }
}
