/* Shared feature-page composition, following the supplied dream-page reference. */
html body.tianji-mystic.orchid-tool-page {
  background: var(--page-background, radial-gradient(ellipse at 78% 0%, #c5afe52b, transparent 45%), #fbfafe);
  background-attachment: fixed;
}
html body.tianji-mystic.orchid-tool-page::before {
  content: ''; position: fixed; inset: 0; z-index: -1; pointer-events: none;
  opacity: .28; mix-blend-mode: normal;
  background: radial-gradient(circle, #7959bc1c 0 1px, transparent 1.6px) 0 0 / 54px 54px;
}
html body.tianji-mystic.orchid-tool-page::after {
  content: ''; position: fixed; inset: 0; z-index: -1; pointer-events: none; opacity: 1;
  background:
    radial-gradient(circle 155px at 2% 37%, #ad87d810 99%, #7959bc24 99.4%, transparent 100%),
    radial-gradient(circle 245px at 105% 29%, #ad87d816 99%, #7959bc24 99.4%, transparent 100%);
}
html body.tianji-mystic.orchid-tool-page .dream-atmosphere { display: none; }
html body.tianji-mystic.orchid-tool-page :is(main.page-shell, main.hehun-main, main.layout) {
  width: min(1180px, calc(100% - 48px));
  max-width: 1180px;
  margin: 0 auto;
  padding: 32px 0 64px;
  gap: 0;
}
html body.tianji-mystic.orchid-tool-page :is(.hero, .hehun-hero, .orchid-input-intro, .ziwei-entry-head).mystic-tool-intro {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  grid-column: 1 / -1;
  gap: 0;
  width: min(1040px, 100%);
  max-width: none;
  min-height: 220px;
  margin: 0 auto 36px;
  padding: 18px 155px 18px 35px;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  overflow: visible;
  text-align: center;
}
html body.tianji-mystic.orchid-tool-page :is(.hero, .hehun-hero, .orchid-input-intro, .ziwei-entry-head).mystic-tool-intro :is(h1, h2) {
  max-width: 880px;
  margin: 20px 0 12px;
  color: var(--ink, #2b263d);
  font: 600 clamp(30px, 3.1vw, 42px)/1.55 var(--serif);
  letter-spacing: .055em;
  text-align: center;
  text-wrap: balance;
  text-shadow: none;
}
html body.tianji-mystic.orchid-tool-page .mystic-tool-intro .eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 9px;
  margin: 0;
  color: var(--dim, #736b83);
  font: 500 13px/1.6 var(--sans);
  letter-spacing: .18em;
}
html body.tianji-mystic.orchid-tool-page .mystic-tool-intro .eyebrow span { display: inline-block; width: 24px; height: 1px; margin: 0; background: var(--gold, #7959bc); }
html body.tianji-mystic.orchid-tool-page .hehun-hero-copy { min-width: 0; max-width: 100%; }
html body.tianji-mystic.orchid-tool-page :is(.hero-copy, .hehun-hero-copy > p:not(.eyebrow), .hero > p:not(.eyebrow), .orchid-input-intro > p:not(.eyebrow)) {
  margin: 0;
  max-width: 720px;
  color: var(--dim, #736b83);
  font: 13px/1.85 var(--sans);
  text-align: center;
}
html body.tianji-mystic.orchid-tool-page .mystic-tool-intro .mystic-tool-art {
  top: 50%; right: 0;
  width: 140px; height: 140px;
  margin: 0;
}
html body.tianji-mystic.orchid-tool-page .mystic-tool-intro .mystic-tool-art::before {
  inset: 10%; border: 1px solid #7959bc24;
  transform: rotateX(61deg) rotate(-22deg) scale(1.18);
  box-shadow: none;
}
html body.tianji-mystic.orchid-tool-page .mystic-tool-intro .mystic-tool-art::after { display: none; }
html body.tianji-mystic.orchid-tool-page .mystic-tool-intro .mystic-tool-art img { filter: saturate(1.04) brightness(1.03) drop-shadow(0 12px 22px #8b68b426); }

/* Separate, softly lit working cards below the heading. */
html body.tianji-mystic.orchid-tool-page :is(.paper-card, .hehun-panel, #inputPanel) {
  border: 1px solid var(--line, rgba(121, 89, 188, .14));
  border-radius: 22px;
  background: var(--surface-card-gradient, linear-gradient(145deg, #ffffff, #f8f5fc));
  box-shadow: var(--shadow-card, inset 0 1px 0 #ffffffcc, 0 16px 40px #3e286313);
}
html body.tianji-mystic.orchid-tool-page #inputPanel::before { display: none; }
html body.tianji-mystic.orchid-tool-page :is(#inputPanel, .dream-form, .xiangshu-form, .ritual-card, .reading-card, #inputSection, .result-card) { padding: 28px; }
html body.tianji-mystic.orchid-tool-page #inputSection { margin-top: 0; }
html body.tianji-mystic.orchid-tool-page :is(.dream-workspace, .xiangshu-workspace) {
  display: grid;
  grid-template-columns: minmax(0, 1.04fr) minmax(0, .96fr);
  gap: 22px;
  align-items: start;
}
html body.tianji-mystic.orchid-tool-page .result-card { min-height: 600px; position: sticky; top: 24px; }
html body.tianji-mystic.orchid-tool-page .result-empty { min-height: 420px; }
html body.tianji-mystic.orchid-tool-page .mystic-empty-object { width: 138px; height: 138px; }
html body.tianji-mystic.orchid-tool-page .orchid-stepper { margin: 0 0 22px; }
html body.tianji-mystic.orchid-tool-page .orchid-stepper li + li::before { content: '·'; opacity: .55; }
html body.tianji-mystic.orchid-tool-page .dream-form .form-actions { margin-top: 18px; }
html body.tianji-mystic.orchid-tool-page .divination-grid { width: 100%; }
html body.tianji-mystic.orchid-tool-page .ziwei-entry-head > div { width: 100%; }
html body.tianji-mystic.orchid-tool-page #inputPanel:has(:is(#baziForm, #ziweiForm).birth-input-simple:not([hidden])) { width: 100%; max-width: none; margin: 0; }
html body.tianji-mystic.orchid-tool-page :is(#baziForm, #ziweiForm).birth-input-simple > [data-birth-step='3'] {
  padding: 4px 0 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}
html body.tianji-mystic.orchid-tool-page :is(#baziForm, #ziweiForm).birth-input-simple .birth-confirm-actions { max-width: 360px; margin-left: auto; }
html body.tianji-mystic.orchid-tool-page :is(#baziForm, #ziweiForm).birth-input-simple .birth-flow-heading { border: 0; }
html body.tianji-mystic.orchid-tool-page :is(#baziForm, #ziweiForm).birth-input-simple .birth-flow-heading h3 { font-size: 23px; }

@media (max-width: 980px) {
  html body.tianji-mystic.orchid-tool-page :is(.dream-workspace, .xiangshu-workspace) { grid-template-columns: minmax(0, 1fr); }
  html body.tianji-mystic.orchid-tool-page .result-card { position: static; min-height: 0; }
  html body.tianji-mystic.orchid-tool-page .result-empty { min-height: 300px; }
}
@media (max-width: 680px) {
  html body.tianji-mystic.orchid-tool-page :is(main.page-shell, main.hehun-main, main.layout) { width: calc(100% - 28px); padding: 18px 0 60px; }
  html body.tianji-mystic.orchid-tool-page :is(.hero, .hehun-hero, .orchid-input-intro, .ziwei-entry-head).mystic-tool-intro {
    min-height: 170px; margin-bottom: 24px; padding: 12px 80px 12px 0;
    align-items: flex-start; text-align: left;
  }
  html body.tianji-mystic.orchid-tool-page :is(.hero, .hehun-hero, .orchid-input-intro, .ziwei-entry-head).mystic-tool-intro :is(h1, h2) { margin: 12px 0 10px; font-size: 25px; line-height: 1.6; letter-spacing: .035em; text-align: left; }
  html body.tianji-mystic.orchid-tool-page .mystic-tool-intro .eyebrow { font-size: 11px; letter-spacing: .08em; }
  html body.tianji-mystic.orchid-tool-page :is(.hero-copy, .hehun-hero-copy > p:not(.eyebrow), .hero > p:not(.eyebrow), .orchid-input-intro > p:not(.eyebrow)) { font-size: 11px; text-align: left; }
  html body.tianji-mystic.orchid-tool-page .mystic-tool-intro .mystic-tool-art { width: 82px; height: 82px; right: -2px; }
  html body.tianji-mystic.orchid-tool-page :is(#inputPanel, .dream-form, .xiangshu-form, .ritual-card, .reading-card, #inputSection, .result-card) { padding: 20px 17px; border-radius: 18px; }
  html body.tianji-mystic.orchid-tool-page :is(#baziForm, #ziweiForm).birth-input-simple .birth-confirm-actions { max-width: none; }
  html body.tianji-mystic.orchid-tool-page .calendar-row { grid-template-columns: minmax(80px, 1.4fr) repeat(2, minmax(0, 1fr)); }
  html body.tianji-mystic.orchid-tool-page .calendar-row input { padding-inline: 9px; }
}
@media (max-width: 360px) {
  html body.tianji-mystic.orchid-tool-page :is(.hero, .hehun-hero, .orchid-input-intro, .ziwei-entry-head).mystic-tool-intro { padding-right: 68px; }
  html body.tianji-mystic.orchid-tool-page :is(.hero, .hehun-hero, .orchid-input-intro, .ziwei-entry-head).mystic-tool-intro :is(h1, h2) { font-size: 23px; }
  html body.tianji-mystic.orchid-tool-page .mystic-tool-intro .mystic-tool-art { width: 70px; height: 70px; }
}
@media print {
  html body.tianji-mystic.orchid-tool-page::before,
  html body.tianji-mystic.orchid-tool-page::after,
  html body.tianji-mystic.orchid-tool-page .mystic-tool-intro { display: none; }
}
