.calendar-page { padding-top: 28px; padding-bottom: 40px; max-width: 1200px; }
.calendar-page article, .calendar-page section, .calendar-page figure { min-width: 0; }
.calendar-page figure { margin: 16px 0; }
.calendar-page h1 { max-width: 900px; }
.calendar-eyebrow { color: var(--muted); font-weight: 600; }
.calendar-notice { padding: 16px; border-left: 3px solid #b8942c; background: rgba(184,148,44,.08); border-radius: 6px; }
.calendar-chart { height: 410px; width: 100%; }
.calendar-chart > p { padding: 24px; }
.calendar-page small { display: block; font-size: .8rem; font-weight: 400; color: var(--muted); white-space: normal; line-height: 1.5; }
.calendar-metrics dd { font-size: 1.25rem; margin: 8px 0; }
.calendar-table { min-width: 1050px; font-variant-numeric: tabular-nums; }
.calendar-table th, .calendar-table td { vertical-align: top; }
.calendar-page .analysis-table-wrap { max-width: 100%; overflow-x: auto; overscroll-behavior-x: contain; }
.calendar-page select { max-width: 100%; min-height: 44px; font: inherit; background: var(--surface); color: var(--text); border: 1px solid var(--border); border-radius: 6px; padding: 8px; }
.calendar-page [hidden] { display: none !important; }
.calendar-page :focus-visible { outline: 2px solid #b8942c; outline-offset: 3px; }
.calendar-page .analysis-links { margin-top: 24px; }
.calendar-page .metal-analysis { content-visibility: auto; contain-intrinsic-size: auto 600px; }
.calendar-page .metal-analysis p { margin: 0 0 1.35rem; line-height: 1.85; max-width: 72ch; }
.calendar-page .analysis-heading p { margin: 0 0 1.35rem; line-height: 1.85; max-width: 72ch; }
.calendar-page .analysis-heading h1 { margin: 1.25rem 0 1.5rem; }
.calendar-page .metal-analysis h3 { margin: 2.25rem 0 .85rem; line-height: 1.4; }
.calendar-page .metal-analysis h2 + h3 { margin-top: 1.75rem; }
.calendar-formulas { margin: .8rem 0 1.4rem; padding-left: 1.5rem; max-width: 78ch; }
.calendar-formulas li { margin: .65rem 0; padding-left: .2rem; line-height: 1.8; }
@media (max-width: 600px) {
  .calendar-page { padding-top: 18px; }
  .calendar-chart { height: 340px; }
  .calendar-page .analysis-controls { align-items: stretch; }
  .calendar-page .analysis-controls label { width: 100%; }
  .calendar-page .analysis-metrics { grid-template-columns: 1fr; }
}
