/* Selected visual target: Jade Oracle, option 2. Loaded after the legacy sheet. */
#home-view {
  margin-inline: 0;
  background: #f5efe3;
}

/* Shared Jade Oracle system for the rest of the product flow. */
.app-shell:has(.view:not(#home-view).is-active) {
  width: min(100%, 760px);
  margin-inline: auto;
  background: #f5efe3;
}

.app-shell:has(.view:not(#home-view).is-active) .screen-panel {
  padding-inline: 0;
  background: #f5efe3;
}

.view:not(#home-view).is-active {
  min-height: 100dvh;
  padding: 0 16px 104px;
  background: #f5efe3;
}

.view:not(#home-view) > .section-head,
.chart-pro-hero,
.prediction-hero {
  margin-inline: -16px;
  padding: 30px 24px 27px;
  border: 0;
  border-radius: 0 0 26px 26px;
  background: #123f38;
  color: #f1d59a;
  box-shadow: 0 12px 28px rgba(32, 45, 38, 0.14);
}

.view:not(#home-view) > .section-head > p,
.chart-pro-hero span,
.prediction-hero span {
  color: rgba(239, 211, 154, 0.74);
  font-size: 12px;
  font-weight: 800;
  letter-spacing: 0.16em;
}

.view:not(#home-view) > .section-head > h2,
.chart-pro-hero h2,
.prediction-hero h2 {
  margin-top: 8px;
  color: #f1d59a;
  font-family: "Songti SC", "Noto Serif SC", "STSong", serif;
  font-size: clamp(30px, 8vw, 43px);
  font-weight: 900;
  line-height: 1.22;
  letter-spacing: 0.035em;
}

.chart-pro-hero p,
.prediction-hero p {
  color: rgba(249, 231, 194, 0.72);
}

.form-grid,
.question-choice-panel,
.daily-energy-panel,
.current-location,
.context-grid,
.chart-pillar-board,
.chart-relation-board,
.chart-useful-analysis,
.fortune-axis-board,
.archive-card,
.history-item,
.prediction-report-metrics,
.prediction-report-teaser,
.prediction-report-section,
.engine-state-card {
  border: 1px solid rgba(171, 143, 91, 0.3);
  background: rgba(255, 253, 247, 0.94);
  box-shadow: 0 10px 28px rgba(38, 49, 42, 0.07);
}

.primary-action,
.prediction-report-toggle {
  min-height: 52px;
  border: 1px solid #1f584c;
  border-radius: 13px;
  background: #1f584c;
  color: #fff8e8;
  font-weight: 800;
  box-shadow: 0 9px 20px rgba(31, 88, 76, 0.15);
}

.secondary-action {
  min-height: 48px;
  border: 1px solid rgba(31, 88, 76, 0.28);
  border-radius: 13px;
  background: rgba(255, 253, 247, 0.82);
  color: #1f584c;
  font-weight: 800;
}

.profile-gender-field {
  display: grid;
  gap: 9px;
  padding: 14px;
  border: 1px solid rgba(171, 143, 91, 0.26);
  border-radius: 12px;
  background: rgba(255, 253, 247, 0.78);
}

.profile-gender-field > span {
  color: #655d50;
  font-weight: 800;
}

.profile-gender-field small {
  margin-left: 6px;
  color: #8b8172;
  font-size: 11px;
  font-weight: 600;
}

.profile-gender-field select {
  min-height: 48px;
  border-color: rgba(31, 88, 76, 0.25);
  background: #fffdf7;
}

.engine-state-card {
  display: grid;
  gap: 9px;
  margin: 16px 0;
  padding: 24px 20px;
  border-radius: 18px;
  text-align: left;
}

.engine-state-card > span {
  color: #9a763f;
  font-size: 12px;
  font-weight: 900;
  letter-spacing: 0.12em;
}

.engine-state-card h3 {
  color: #18382f;
  font-family: "Songti SC", "Noto Serif SC", "STSong", serif;
  font-size: 24px;
  line-height: 1.35;
}

.engine-state-card p {
  color: #746b5d;
  font-size: 14px;
  line-height: 1.75;
}

.engine-state-card .primary-action {
  width: 100%;
  margin-top: 5px;
}

#home-view .engine-state-card {
  width: min(720px, 100%);
  margin: 8px auto 0;
}

.question-system-head {
  align-items: flex-start;
}

.question-guidance-copy {
  margin: 13px 0 0;
  color: #574f43;
  font-size: 15px;
  line-height: 1.75;
}

.question-context-tags {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 15px;
}

.question-context-tags span {
  padding: 7px 10px;
  border: 1px solid rgba(31, 88, 76, 0.18);
  border-radius: 999px;
  background: rgba(31, 88, 76, 0.07);
  color: #315e52;
  font-size: 12px;
  font-weight: 700;
}

.daily-energy-panel > small {
  display: block;
  margin-top: 13px;
  color: #8b8172;
  line-height: 1.6;
}

.ritual-accessible-action {
  min-height: 44px;
  margin: 8px auto 0;
  padding: 8px 14px;
  border: 0;
  background: transparent;
  color: #e6c884;
  font-size: 13px;
  font-weight: 800;
  text-decoration: underline;
  text-underline-offset: 4px;
}

.history-empty-state {
  display: grid;
  gap: 10px;
  padding: 30px 22px;
  text-align: center;
}

.history-empty-state strong {
  color: #18382f;
  font-family: "Songti SC", "Noto Serif SC", "STSong", serif;
  font-size: 22px;
}

.history-empty-state p {
  color: #7b7264;
  line-height: 1.65;
}

.history-empty-state .primary-action {
  width: 100%;
  margin-top: 5px;
}

@media (max-width: 520px) {
  .view:not(#home-view) > .section-head,
  .chart-pro-hero,
  .prediction-hero {
    padding: 25px 20px 23px;
    border-radius: 0 0 22px 22px;
  }

  .chart-core-fallback .professional-pillar-matrix {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }

  .chart-core-fallback .professional-pillar-matrix article {
    min-width: 0;
  }

  .chart-core-fallback .professional-pillar-matrix article > strong {
    font-size: 25px;
    writing-mode: initial;
  }
}

.app-shell:has(#home-view.is-active) {
  width: min(100%, 980px);
  margin-inline: auto;
}

.app-shell:has(#home-view.is-active) .screen-panel {
  padding-inline: 0;
}

#home-view .reference-home-header {
  position: relative;
  z-index: 5;
  width: 100%;
  min-height: 72px;
  margin: 0;
  padding: 18px 28px 10px;
  border: 0;
  background: #0d3933;
}

#home-view .reference-brand {
  gap: 11px;
  color: #ebce91;
}

#home-view .reference-brand-seal {
  width: 38px;
  height: 38px;
  border: 1px solid rgba(235, 206, 145, 0.55);
  border-radius: 50%;
  background: rgba(7, 31, 28, 0.3);
  color: #ebce91;
  box-shadow: none;
}

#home-view .reference-brand-copy {
  display: grid;
  gap: 2px;
  text-align: left;
}

#home-view .reference-brand strong {
  color: #f0d79e;
  font-family: "Songti SC", "Noto Serif SC", "STSong", serif;
  font-size: 17px;
  font-weight: 800;
  letter-spacing: 0.12em;
}

#home-view .reference-brand small {
  color: rgba(246, 225, 179, 0.7);
  font-size: 9px;
  font-weight: 700;
  letter-spacing: 0.12em;
}

#home-view .reference-home-tools button {
  min-height: 36px;
  padding: 7px 10px;
  border-color: rgba(235, 206, 145, 0.28);
  background: rgba(7, 31, 28, 0.26);
  color: rgba(246, 225, 179, 0.86);
  box-shadow: none;
}

#home-view .reference-home-hero {
  position: relative;
  display: grid;
  align-items: center;
  width: 100%;
  min-height: 490px;
  margin: 0;
  padding: 44px 70px 70px;
  overflow: hidden;
  background: #0d3933 url("assets/home-hero-jade-oracle-v1.png") center center / cover no-repeat;
}

#home-view .reference-home-hero::after {
  display: none;
}

#home-view .reference-hero-copy {
  width: min(760px, 100%);
  max-width: none;
  margin: 0 auto;
  text-align: center;
}

#home-view .brand-position {
  display: inline-block;
  margin: 0 0 27px;
  padding: 0 0 11px;
  border: 0;
  border-bottom: 1px solid rgba(235, 206, 145, 0.48);
  border-radius: 0;
  background: transparent;
  color: #e8c983;
  font-family: "Songti SC", "Noto Serif SC", "STSong", serif;
  font-size: 18px;
  font-weight: 800;
  letter-spacing: 0.18em;
}

#home-view .reference-hero-copy h1 {
  max-width: 13em;
  margin: 0 auto;
  color: #f1d59a;
  font-family: "Songti SC", "Noto Serif SC", "STSong", serif;
  font-size: clamp(46px, 6vw, 72px);
  font-weight: 900;
  line-height: 1.28;
  letter-spacing: 0.025em;
  text-wrap: balance;
  white-space: normal;
  overflow-wrap: normal;
}

#home-view .reference-hero-copy .reference-verdict-action {
  max-width: 32em;
  margin: 25px auto 0;
  color: rgba(249, 231, 194, 0.8);
  font-size: 16px;
  font-weight: 700;
  line-height: 1.7;
  letter-spacing: 0.04em;
}

#home-view .reference-verdict-proof {
  display: inline-flex;
  align-items: center;
  gap: 9px;
  margin-top: 27px;
  padding: 9px 18px;
  border: 1px solid rgba(235, 206, 145, 0.5);
  border-radius: 999px;
  color: #edd29b;
}

#home-view .reference-verdict-proof span {
  display: grid;
  width: 22px;
  height: 22px;
  place-items: center;
  border: 1px solid currentColor;
  border-radius: 50%;
  font-size: 12px;
}

#home-view .reference-verdict-proof strong {
  font-size: 12px;
  letter-spacing: 0.12em;
}

#home-view .ming-dashboard {
  width: 100%;
  margin: 0;
  padding: 44px 48px 42px;
  background: #f5efe3 url("assets/home-hero-ink-landscape.jpg") center bottom / 100% auto no-repeat;
}

#home-view .ming-dashboard::before,
#home-view .ming-dashboard::after {
  display: none;
}

#home-view .ming-dashboard-body {
  width: min(940px, 100%);
  margin: 0 auto;
  gap: 17px;
}

#home-view .ming-dashboard .daily-question-banner {
  grid-template-columns: minmax(0, 1fr) 56px;
  width: min(720px, 100%);
  min-height: 96px;
  margin: 0 auto;
  padding: 17px 28px;
  border: 2px solid #c7a05c;
  border-radius: 24px;
  background: #123f38;
  box-shadow: 0 14px 26px rgba(34, 51, 43, 0.18);
}

#home-view .ming-dashboard .daily-question-banner::before,
#home-view .ming-dashboard .daily-question-banner::after {
  display: none;
}

#home-view .daily-question-copy {
  text-align: center;
}

#home-view .ming-dashboard .daily-question-copy > span {
  color: #efd39a;
  font-family: "Songti SC", "Noto Serif SC", "STSong", serif;
  font-size: 30px;
  font-weight: 900;
  letter-spacing: 0.08em;
}

#home-view .ming-dashboard .daily-question-copy p {
  margin-top: 5px;
  color: rgba(248, 227, 185, 0.7);
  font-size: 13px;
}

#home-view .ming-dashboard .daily-question-banner .route-arrow {
  width: 46px;
  height: 46px;
  border-color: #d0ae6d;
  color: #e9c982;
}

#home-view .home-evidence-link {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  justify-self: center;
  padding: 8px 14px;
  border: 0;
  border-bottom: 1px solid rgba(30, 83, 71, 0.32);
  background: transparent;
  color: #22594d;
  font-family: "Songti SC", "Noto Serif SC", "STSong", serif;
  font-size: 18px;
  font-weight: 800;
}

#home-view .home-evidence-link .route-arrow {
  width: 12px;
  height: 12px;
  border: 0;
}

#home-view .home-evidence-link .route-arrow::after {
  width: 7px;
  height: 7px;
}

#home-view .destiny-overview-system {
  margin-top: 8px;
  padding: 22px 26px;
  border: 1px solid rgba(185, 141, 75, 0.32);
  border-radius: 18px;
  background: rgba(255, 252, 245, 0.78);
  box-shadow: none;
  backdrop-filter: none;
}

#home-view .destiny-overview-system::after {
  display: none;
}

#home-view .destiny-overview-system-body {
  grid-template-columns: 150px minmax(0, 1fr);
  gap: 24px;
}

#home-view .destiny-guardian-portrait img {
  width: 128px;
}

#home-view .destiny-guardian-portrait figcaption {
  display: none;
}

#home-view .home-fate-kicker {
  display: block;
  margin-bottom: 8px;
  color: #a27a3c;
  font-size: 11px;
  font-weight: 900;
  letter-spacing: 0.15em;
}

#home-view .destiny-profile-lines > strong {
  display: block;
  color: #173f37;
  font-family: "Songti SC", "Noto Serif SC", "STSong", serif;
  font-size: 23px;
  line-height: 1.42;
}

#home-view .destiny-status-pods {
  grid-column: 1 / -1;
}

@media (max-width: 720px) {
  #home-view .reference-home-header {
    padding: 16px 16px 9px;
  }

  #home-view .reference-brand-seal {
    width: 34px;
    height: 34px;
  }

  #home-view .reference-brand strong {
    font-size: 16px;
  }

  #home-view .reference-home-tools button {
    min-width: 36px;
    min-height: 34px;
    padding: 7px 8px;
  }

  #home-view .reference-home-tools button span {
    display: none;
  }

  #home-view .reference-home-hero {
    min-height: 410px;
    padding: 30px 20px 44px;
    background-position: center center;
  }

  #home-view .brand-position {
    margin-bottom: 21px;
    font-size: 15px;
  }

  #home-view .reference-hero-copy h1 {
    max-width: 9.6em;
    font-size: clamp(33px, 9.2vw, 41px);
    line-height: 1.35;
  }

  #home-view .reference-verdict-action {
    max-width: 20em;
    margin-top: 20px;
    font-size: 13px;
    line-height: 1.65;
  }

  #home-view .reference-verdict-proof {
    margin-top: 22px;
    padding: 8px 14px;
  }

  #home-view .ming-dashboard {
    padding: 30px 16px 96px;
    background-size: auto 300px;
  }

  #home-view .ming-dashboard-body {
    gap: 13px;
  }

  #home-view .ming-dashboard .daily-question-banner {
    grid-template-columns: minmax(0, 1fr) 42px;
    min-height: 80px;
    padding: 13px 16px;
    border-radius: 21px;
  }

  #home-view .ming-dashboard .daily-question-copy > span {
    font-size: 25px;
  }

  #home-view .ming-dashboard .daily-question-copy p {
    font-size: 11px;
  }

  #home-view .ming-dashboard .daily-question-banner .route-arrow {
    width: 37px;
    height: 37px;
  }

  #home-view .home-evidence-link {
    font-size: 16px;
  }

  #home-view .destiny-overview-system {
    margin-top: 2px;
    padding: 17px 15px;
    border-radius: 16px;
  }

  #home-view .destiny-overview-system > header {
    display: none;
  }

  #home-view .destiny-overview-system-body {
    grid-template-columns: 90px minmax(0, 1fr);
    gap: 14px;
    justify-items: stretch;
    text-align: left;
  }

  #home-view .destiny-guardian-portrait {
    width: 90px;
  }

  #home-view .destiny-guardian-portrait img {
    width: 86px;
  }

  #home-view .destiny-profile-lines {
    align-self: center;
  }

  #home-view .destiny-profile-lines > strong {
    font-size: 17px;
    line-height: 1.42;
  }

  #home-view .destiny-profile-lines p {
    font-size: 11px;
    line-height: 1.55;
  }

  #home-view .destiny-status-pods {
    display: none;
  }

  #home-view .ming-structure-zone,
  #home-view .dashboard-utility-line {
    margin-top: 8px;
  }
}
