/* 只修命盘与操作细节；沿用纸墨色板、宋体及正文节卡。 */
.chart-element-glyph { display: inline-block; width: 18px; height: 18px; flex: 0 0 18px; vertical-align: middle; color: var(--stone); }
.deck-pillars .dp { display: grid; grid-template-rows: auto auto auto 1fr auto; align-content: start; padding: 12px 10px 18px; }
.deck-pillars .dp.is-day { background: color-mix(in srgb, var(--warm-sand) 30%, transparent); }
.dp .lab { display: flex; flex-wrap: wrap; justify-content: center; align-items: center; gap: 6px; min-height: 25px; letter-spacing: .08em; }
.chart-day-label { display: inline-block; font-family: var(--sans); font-size: 12px; font-weight: 400; line-height: 1.6; letter-spacing: .04em; color: var(--seal); border-bottom: 1px solid var(--border-soft); }
.dp .chart-pillar-pair { display: grid; gap: 10px; margin-top: 14px; font-size: 34px; line-height: 1.2; }
.chart-pillar-pair > span { display: flex; align-items: center; justify-content: center; gap: 6px; }
.dp .hid { display: grid; align-content: start; gap: 5px; margin-top: 10px; line-height: 1.7; }
.chart-hidden-stem { display: block; }
.dp .gong { line-height: 1.7; letter-spacing: .03em; }
.rg-pillar { grid-template-rows: 44px auto 1fr; align-content: start; }
.rg-pillar > span { min-height: 44px; display: flex; flex-wrap: wrap; align-items: center; justify-content: center; gap: 5px; }
.rg-pillar > b i { display: flex; align-items: center; gap: 5px; }
.rg-pillar.is-day > b::after { content: none; }
.rg-pillar > small { display: grid; grid-template-rows: 44px auto; align-content: start; overflow: visible; white-space: normal; line-height: 1.7; padding-inline: 4px; }
#ai-download-pdf, #report-link, #report-share-copy { display: inline-flex; justify-content: center; align-items: center; gap: 7px; min-height: 44px; }
#ai-download-pdf::before, #report-link::before, #report-share-copy::before { content: ''; display: inline-block; width: 17px; height: 17px; flex: 0 0 17px; background: currentColor; mask: var(--reading-action-icon) center / contain no-repeat; }
#ai-download-pdf { --reading-action-icon: url('/assets/brand/download.svg'); }
#report-link { --reading-action-icon: url('/assets/brand/share.svg'); }
#report-share-copy { --reading-action-icon: url('/assets/brand/copy.svg'); }
#ai-download button:focus-visible, #report-share-copy:focus-visible { outline: 2px solid var(--seal); outline-offset: 3px; }
@media (max-width: 700px) {
  .deck-pillars .dp { display: grid; grid-template-rows: auto auto auto 1fr auto; align-content: start; padding: 12px 6px 16px; }
  .dp .chart-pillar-pair { font-size: 28px; }
  .chart-pillar-pair > span { gap: 3px; }
  .chart-element-glyph { width: 16px; height: 16px; flex-basis: 16px; }
  .rg-pillar > b { padding-inline: 3px; }
  .rg-pillar > b i { gap: 2px; }
  .dp .hid { font-size: 12px; }
  #ai-download { flex-wrap: wrap; gap: 8px 12px; }
}
