.os-main-heading { font-size: 1.6rem !important; padding-bottom: 0.6rem; border-bottom: 3px solid var(--color-primary); margin-top: 3rem !important; margin-bottom: 2rem !important; }
.math-toc { display: flex; justify-content: center; gap: 10px; flex-wrap: wrap; margin: 0 0 var(--spacing-md); }
.math-toc a { border: 1px solid var(--color-border); background: var(--color-surface); color: var(--color-text-muted); text-decoration: none; padding: 8px 18px; border-radius: 20px; font-size: 0.86rem; font-weight: 700; }
.math-toc a:hover { color: var(--color-primary); border-color: var(--color-primary); }
.math-section-intro { color: var(--color-text-muted); max-width: 70ch; margin-bottom: var(--spacing-md); }
.math-subheading { font-size: 1.1rem; color: var(--color-primary); margin: var(--spacing-lg) 0 0.6rem; }
.math-subheading:first-of-type { margin-top: 0; }
.math-subheading-intro { color: var(--color-text-muted); font-size: 0.9rem; margin-bottom: 0.8rem; }
.math-cards-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(220px, 1fr)); gap: 14px; }
.math-card { background: var(--color-surface); border: 1px solid var(--color-border); border-radius: var(--radius); padding: 18px; }
.math-card svg { width: 100%; height: 60px; display: block; margin-bottom: 12px; }
.math-card-name { font-weight: 800; font-size: 1.02rem; margin-bottom: 6px; color: var(--color-text); }
.math-card-desc { color: var(--color-text-muted); font-size: 0.88rem; }
.math-table-wrap { overflow-x: auto; background: var(--color-surface); border: 1px solid var(--color-border); border-radius: var(--radius); margin-bottom: 26px; }
table.math-formula-table { width: 100%; border-collapse: collapse; font-size: 0.86rem; }
table.math-formula-table th { text-align: left; padding: 10px 16px; background: var(--color-bg-alt); border-bottom: 1px solid var(--color-border); font-size: 0.76rem; text-transform: uppercase; letter-spacing: 0.04em; color: var(--color-text-muted); white-space: nowrap; }
table.math-formula-table td { padding: 10px 16px; border-bottom: 1px solid var(--color-border); vertical-align: middle; color: var(--color-text); }
table.math-formula-table tr:last-child td { border-bottom: none; }
table.math-formula-table .math-fig-cell { width: 108px; }
table.math-formula-table .math-fig-cell svg { width: 92px; height: 76px; display: block; }
table.math-formula-table .math-formula { white-space: nowrap; font-variant-numeric: tabular-nums; }
.math-symbols-columns { columns: 2; column-gap: 16px; }
.math-symbol-group { background: var(--color-surface); border: 1px solid var(--color-border); border-radius: var(--radius); margin-bottom: 16px; overflow: hidden; break-inside: avoid; }
.math-symbol-group-header { padding: 14px 20px; font-weight: 800; font-size: 1.02rem; background: var(--color-bg-alt); border-bottom: 1px solid var(--color-border); color: var(--color-primary); }
.math-symbol-list { display: flex; flex-direction: column; }
.math-symbol-row { display: grid; grid-template-columns: 52px 1fr; align-items: center; gap: 14px; padding: 10px 20px; border-bottom: 1px solid var(--color-border); }
.math-symbol-row:last-child { border-bottom: none; }
.math-symbol-glyph { font-size: 1.5rem; font-weight: 700; text-align: center; color: var(--color-primary-light); }
.math-symbol-name { font-weight: 700; font-size: 0.92rem; color: var(--color-text); }
.math-symbol-meaning { color: var(--color-text-muted); font-size: 0.84rem; margin-top: 2px; }
.math-timeline { position: relative; padding-left: 26px; }
.math-timeline::before { content: ""; position: absolute; left: 6px; top: 6px; bottom: 6px; width: 2px; background: var(--color-accent); opacity: 0.5; }
.math-timeline-item { position: relative; padding-bottom: 22px; }
.math-timeline-item:last-child { padding-bottom: 0; }
.math-timeline-item::before { content: ""; position: absolute; left: -26px; top: 4px; width: 12px; height: 12px; border-radius: 999px; background: var(--color-surface); border: 3px solid var(--color-primary); }
.math-timeline-era { font-size: 0.76rem; font-weight: 800; color: var(--color-primary-light); text-transform: uppercase; letter-spacing: 0.04em; margin-bottom: 4px; }
.math-timeline-card { background: var(--color-surface); border: 1px solid var(--color-border); border-radius: var(--radius); padding: 14px 18px; }
.math-timeline-card h3 { margin: 0 0 6px; font-size: 1.02rem; color: var(--color-text); }
.math-timeline-card p { margin: 0; color: var(--color-text-muted); font-size: 0.9rem; }
@media (max-width: 720px) { .math-symbols-columns { columns: 1; } }
