[data-theme="stellar"] {
  --bg: #090b1a;
  --header-bg: rgba(9, 11, 26, .82);
  --surface: rgba(20, 24, 54, .72);
  --surface-2: rgba(97, 85, 184, .17);
  --text: #e7e9ff;
  --heading: #ffffff;
  --muted: #abb3d9;
  --accent: #8b8cff;
  --accent-strong: #5ee7df;
  --button-text: #080a18;
  --border: rgba(140, 149, 255, .28);
  --focus: #5ee7df;
  --art-bg: radial-gradient(circle at 70% 25%, #5657a4, transparent 26%),
    linear-gradient(140deg, #151936, #242351 55%, #0f5260);
  --card-shadow: 0 18px 45px rgba(0, 0, 0, .26), inset 0 1px rgba(255, 255, 255, .05);
  color-scheme: dark;
}

[data-theme="stellar"] body {
  background-image:
    radial-gradient(circle at 12% 18%, rgba(111, 106, 255, .21), transparent 24rem),
    radial-gradient(circle at 88% 34%, rgba(36, 218, 211, .12), transparent 28rem),
    linear-gradient(rgba(116, 126, 255, .045) 1px, transparent 1px),
    linear-gradient(90deg, rgba(116, 126, 255, .045) 1px, transparent 1px);
  background-size: auto, auto, 42px 42px, 42px 42px;
}

[data-theme="stellar"] .content-card,
[data-theme="stellar"] .category-card,
[data-theme="stellar"] .project-card,
[data-theme="stellar"] .idea-card,
[data-theme="stellar"] .study-card,
[data-theme="stellar"] .article-aside,
[data-theme="stellar"] .filter-panel,
[data-theme="stellar"] .research-list li {
  backdrop-filter: blur(14px);
}

[data-theme="stellar"] .site-header {
  box-shadow: 0 1px 0 rgba(141, 150, 255, .08), 0 10px 45px rgba(0, 0, 0, .2);
}

[data-theme="stellar"] .hero-home {
  isolation: isolate;
  min-height: clamp(560px, 66vw, 720px);
  margin-block: 1.5rem 0;
  padding: clamp(2rem, 6vw, 5rem);
  overflow: hidden;
  border: 1px solid rgba(140, 149, 255, .32);
  border-radius: var(--radius-lg);
  box-shadow: 0 28px 80px rgba(0, 0, 0, .38);
}

[data-theme="stellar"] .hero-home::before {
  content: "";
  position: absolute;
  z-index: 1;
  inset: 0;
  pointer-events: none;
  background:
    linear-gradient(90deg, rgba(7, 10, 25, .96) 0%, rgba(7, 10, 25, .82) 38%, rgba(7, 10, 25, .22) 68%, rgba(7, 10, 25, .42) 100%),
    linear-gradient(0deg, rgba(7, 10, 25, .82), transparent 45%);
}

[data-theme="stellar"] .hero-home .hero-content {
  position: relative;
  z-index: 2;
  max-width: 650px;
}

[data-theme="stellar"] .hero-home .hero-copy,
[data-theme="stellar"] .hero-home .status-line,
[data-theme="stellar"] .hero-home .bgm-note {
  color: #c9cee8;
}

[data-theme="stellar"] .hero-home .hero-orbit {
  position: absolute;
  z-index: 0;
  inset: 0;
  min-height: 0;
}

[data-theme="stellar"] .hero-home .stellar-banner-media {
  position: absolute;
  display: block;
  inset: 0;
  background-image: url("../images/stellar/home-banner.webp");
  background-position: 59% center;
  background-size: cover;
}

[data-theme="stellar"] .hero-home .paper-banner-placeholder,
[data-theme="stellar"] .hero-home .hero-orbit::before,
[data-theme="stellar"] .hero-home .hero-orbit::after {
  display: none;
}

[data-theme="stellar"] .hero-home .button {
  border-color: rgba(184, 190, 255, .35);
  background: rgba(12, 16, 38, .72);
  backdrop-filter: blur(10px);
}

[data-theme="stellar"] .hero-home .button.primary {
  color: var(--button-text);
  border-color: transparent;
  background: var(--accent);
}

[data-theme="stellar"] .hero-orbit::before,
[data-theme="stellar"] .hero-orbit::after {
  content: "";
  position: absolute;
  inset: 8%;
  pointer-events: none;
  border: 1px solid rgba(121, 132, 255, .35);
  border-radius: 50%;
  transform: rotate(18deg);
}

[data-theme="stellar"] .hero-orbit::after {
  inset: 20% -5%;
  border-color: rgba(94, 231, 223, .22);
  transform: rotate(-28deg);
}

[data-theme="stellar"] .portrait-placeholder {
  border-color: rgba(145, 151, 255, .5);
  box-shadow: 0 0 55px rgba(98, 87, 218, .2);
}

[data-theme="stellar"] .eyebrow::before,
[data-theme="stellar"] .content-type::before {
  content: "◇ ";
}

@media (max-width: 760px) {
  [data-theme="stellar"] body {
    background-image:
      radial-gradient(circle at 20% 12%, rgba(111, 106, 255, .18), transparent 20rem),
      linear-gradient(rgba(116, 126, 255, .035) 1px, transparent 1px),
      linear-gradient(90deg, rgba(116, 126, 255, .035) 1px, transparent 1px);
    background-size: auto, 56px 56px, 56px 56px;
  }
  [data-theme="stellar"] .hero-home {
    min-height: 0;
    margin-top: .75rem;
    padding: 17rem 1.25rem 2.5rem;
    align-items: end;
  }
  [data-theme="stellar"] .hero-home::before {
    background:
      linear-gradient(0deg, rgba(7, 10, 25, .99) 4%, rgba(7, 10, 25, .94) 58%, rgba(7, 10, 25, .2) 100%),
      linear-gradient(90deg, rgba(7, 10, 25, .38), transparent 78%);
  }
  [data-theme="stellar"] .hero-home .stellar-banner-media {
    background-position: 50% center;
  }
  [data-theme="stellar"] .hero-home h1 {
    font-size: clamp(2.4rem, 13vw, 3.65rem);
  }
  [data-theme="stellar"] .hero-home .hero-copy {
    font-size: 1rem;
  }
  [data-theme="stellar"] .hero-orbit::after { display: none; }
}
