/* Observatory theme: visual surfaces only; idea layout and gauges stay intact. */
:root {
  color-scheme: dark;
  --dark-bg: #050810;
  --dark-surface: #0d1524;
  --dark-border: rgba(137, 177, 207, .20);
  --pastel-blue: #80dfff;
  --pastel-purple: #b8d7ec;
  --text-primary: #eff4ff;
  --text-secondary: #b9c9dc;
  --text-muted: #93a6be;
  --tape-top: #080e19;
  --tape-bottom: #070c15;
  --nav-top: #0c1421;
  --nav-bottom: #080f1b;
  --filters-top: rgba(13, 23, 38, .97);
  --filters-bottom: rgba(8, 16, 29, .97);
  --gauge-left: #ff8193;
  --gauge-mid: #b8d7ec;
  --gauge-right: #64d8a3;
  --orbit-accent: #80dfff;
  --orbit-line: rgba(128, 223, 255, .30);
  --orbit-panel: linear-gradient(160deg, #101d2e 0%, #0c1523 45%, #09111e 100%);
}
html { background: #050810; }
::selection { background: #80dfff; color: #050810; }

/* A static, oversized planetary limb. No canvas loop or image download. */
.observatory-bg {
  position: fixed;
  inset: 0;
  z-index: 0;
  overflow: hidden;
  pointer-events: none;
  contain: layout paint;
  background:
    radial-gradient(ellipse at 79% 18%, rgba(78, 87, 147, .13), transparent 44%),
    radial-gradient(ellipse at 28% 32%, rgba(32, 94, 127, .12), transparent 52%),
    #050810;
}
.observatory-stars {
  position: absolute;
  inset: 0;
  opacity: .48;
  background-image:
    radial-gradient(circle at 23px 41px, #d4eaff 0 .65px, transparent 1.2px),
    radial-gradient(circle at 149px 103px, #8bb3cf 0 .6px, transparent 1.1px),
    radial-gradient(circle at 307px 61px, #eff4ff 0 .9px, transparent 1.5px);
  background-size: 293px 257px, 431px 373px, 683px 487px;
  mask-image: linear-gradient(#000, rgba(0,0,0,.65) 48%, transparent 90%);
}
.observatory-planet {
  position: absolute;
  top: clamp(165px, 25vh, 280px);
  left: -25%;
  width: 150%;
  height: max(950px, 120vh);
  border-radius: 50%;
  border-top: 1px solid rgba(177, 232, 255, .74);
  background:
    radial-gradient(ellipse at 50% 0%, rgba(29, 69, 98, .52), transparent 34%),
    linear-gradient(180deg, #0b1827, #050810 43%);
  box-shadow:
    0 -2px 4px rgba(171, 228, 255, .38),
    0 -12px 34px rgba(70, 159, 207, .20),
    0 -36px 100px rgba(48, 104, 159, .16),
    inset 0 16px 45px rgba(94, 174, 215, .10);
  transform: rotate(-9deg);
}
.observatory-bg::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, transparent 35%, rgba(5,8,16,.55) 70%, #050810);
}

#topbar {
  background: linear-gradient(180deg, var(--nav-top), var(--nav-bottom));
  box-shadow: 0 1px 0 rgba(137,177,207,.15);
}
#topbar::after { background: transparent; }
#topbar .mobile-brand-title {
  background: linear-gradient(110deg, #eff4ff, #a9d9ee) !important;
  background-clip: text !important;
  -webkit-background-clip: text !important;
}
#topbar .tab-btn { color: var(--text-secondary); }
#topbar .tab-btn:hover {
  color: #eff4ff;
  background: rgba(128,223,255,.07);
}
#topbar .tab-btn.active,
.view-switch-btn.active {
  color: #c6f0ff;
  background: linear-gradient(135deg, rgba(65,137,167,.26), rgba(36,76,110,.20));
  border-color: var(--orbit-line);
  box-shadow: inset 0 1px 0 rgba(195,239,255,.09), 0 0 18px rgba(73,164,209,.05);
}
.lang-switch-btn.bg-slate-100 { background: #c7e9f6; color: #081421; }
#ticker.marquee::before, #filters-bar::before { opacity: .22; }
#filters-bar select, #filters-bar input, #leaderboards-filters select,
#leaderboards-filters input {
  background: #142235 !important;
  border-color: rgba(137,177,207,.23) !important;
  color: var(--text-primary) !important;
}
#filters-bar input::placeholder { color: var(--text-muted); }
select option { background: #101b2c; color: #eff4ff; }
a:focus-visible, button:focus-visible, input:focus-visible, select:focus-visible {
  outline: 2px solid var(--orbit-accent);
  outline-offset: 3px;
}
#filters-bar select:focus, #filters-bar input:focus {
  border-color: var(--orbit-accent) !important;
}
.dark-surface, .idea-card, .leader-card, .tariff-plan,
.markets-panel, .markets-kpi, .markets-list-row,
.crypto-pulse-card, .crypto-top-board-card, .polymarket-card {
  background: var(--orbit-panel);
  border-color: var(--dark-border) !important;
  box-shadow: 0 16px 36px rgba(0,0,0,.24), inset 0 1px 0 rgba(190,220,242,.04) !important;
}
.idea-card::before { opacity: .24; }
.idea-card::after { opacity: .08; }
.idea-card:hover, .leader-card:hover {
  background: linear-gradient(160deg, #13273a, #0b1524 65%) !important;
  border-color: rgba(128,223,255,.42) !important;
  box-shadow: 0 18px 38px rgba(0,0,0,.32), 0 0 22px rgba(70,153,191,.07), inset 0 1px 0 rgba(190,235,255,.08) !important;
}
.idea-card-link:focus-visible { outline-color: var(--orbit-accent); }
.idea-actions a, .view-switch-btn {
  background: rgba(24,42,61,.70);
  border-color: rgba(137,177,207,.24);
  color: #c4d8e9;
}
.idea-actions a:hover {
  background: rgba(42,85,110,.5);
  border-color: var(--orbit-line);
  color: #def6ff;
}
.tariff-plan.recommended {
  background: linear-gradient(155deg, #172e41, #0b1625 65%);
  border-color: var(--orbit-line) !important;
}
.tariff-plan.recommended::after { background: linear-gradient(135deg, #80dfff80, #80dfff08); }
.tariff-cta:not(.secondary) { background: linear-gradient(135deg, #bcecff, #80cfe8); color: #071321; }
.tracking-consent-banner { background: #0c1625; border-color: var(--dark-border); }
::-webkit-scrollbar-track { background: #080e18; }
::-webkit-scrollbar-thumb { background: #30475e; }

@media (max-width: 767px) {
  .observatory-planet {
    top: 260px;
    left: -90%;
    width: 280%;
    height: 1100px;
    transform: rotate(-12deg);
  }
  .observatory-stars { opacity: .32; }
}
