/* Starman v9 growth formula (2026-11-10). v8 tokens only; v7.4 rule: no filled boxes, a bold top rule + thin lines. */
.sm-updated { font-size: var(--fs-sm); line-height: var(--lh-sm); color: var(--muted); margin: 0 0 var(--sp-4) !important; }
.sm-sources { font-size: var(--fs-sm); line-height: var(--lh-sm); color: var(--muted); margin: var(--sp-6) 0 0 !important; padding-top: var(--sp-3); border-top: 1px solid var(--rule); overflow-wrap: anywhere; }
.sm-sources span { font-weight: 700; color: var(--ink); margin-right: var(--sp-1); }
.sm-sources a { color: var(--muted) !important; text-decoration: underline; text-decoration-thickness: 1px; text-underline-offset: 3px; }
.sm-start, .sm-follow { margin: var(--sp-5) 0 0 !important; padding: var(--sp-3) 0 0; border-top: 2px solid var(--ink); background: none; }
.sm-start p, .sm-follow p { margin: 0 0 var(--sp-1) !important; font-size: var(--fs-ui); line-height: var(--lh-ui); }
.sm-start-lab, .sm-follow-lab { font-size: var(--fs-xs) !important; line-height: var(--lh-xs) !important; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; color: var(--accent); }
.sm-start-main a { font-weight: 700; color: var(--ink) !important; text-decoration: none; }
.sm-start-main a:hover { text-decoration: underline; }
.sm-start-txt { color: var(--muted); }
.sm-start-more a, .sm-follow a { color: var(--accent) !important; font-weight: 600; text-decoration: none; }
.sm-start-more a:hover, .sm-follow a:hover { text-decoration: underline; }
.sm-start-cat { margin: 0 0 var(--sp-6) !important; }
a.sm-gl { color: inherit !important; text-decoration: underline dotted; text-decoration-thickness: 1px; text-underline-offset: 4px; text-decoration-color: var(--muted); }
a.sm-gl:hover { text-decoration-style: solid; text-decoration-color: currentColor; }
/* ad slots keep their height so the page does not jump when an ad loads */
.sm-ad ins.adsbygoogle { min-height: 280px; }
@media (max-width: 760px) { .sm-ad ins.adsbygoogle { min-height: 250px; } }
/* calculators */
.sm-calc { margin: var(--sp-5) 0 var(--sp-6); padding-top: var(--sp-4); border-top: 2px solid var(--ink); }
.sm-calc-form { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--sp-4) var(--sp-5); margin: 0 0 var(--sp-5); }
.sm-calc-row { margin: 0 !important; display: flex; flex-direction: column; gap: var(--sp-1); }
.sm-calc-row label { font-size: var(--fs-sm); line-height: var(--lh-sm); font-weight: 600; color: var(--ink); }
.sm-calc-row input[type=text] { font: inherit; font-size: var(--fs-ui); line-height: var(--lh-ui); min-height: 44px; padding: var(--sp-2) var(--sp-3); border: 1px solid var(--rule); border-radius: 0; background: transparent; color: var(--ink); font-variant-numeric: tabular-nums; width: 100%; box-sizing: border-box; }
.sm-calc-row input[type=text]:focus { outline: 2px solid var(--accent); outline-offset: 1px; border-color: var(--ink); }
.sm-calc-check { flex-direction: row; align-items: center; gap: var(--sp-2); min-height: 44px; align-self: end; }
.sm-calc-check input { width: 20px; height: 20px; accent-color: var(--accent); }
.sm-calc-go { grid-column: 1 / -1; }
.sm-calc-stats { display: grid; grid-template-columns: repeat(auto-fit, minmax(160px, 1fr)); gap: var(--sp-4); margin: 0 0 var(--sp-4); }
.sm-calc-stat { border-top: 1px solid var(--rule); padding-top: var(--sp-2); }
.sm-calc-stat span { display: block; font-size: var(--fs-sm); line-height: var(--lh-sm); color: var(--muted); }
.sm-calc-stat strong { display: block; font-size: var(--fs-card); line-height: var(--lh-card); color: var(--ink); font-variant-numeric: tabular-nums; overflow-wrap: anywhere; }
.sm-calc-table { width: 100% !important; max-width: 100% !important; display: table !important; margin: 0 0 var(--sp-4) !important; font-variant-numeric: tabular-nums; }
.sm-calc-note { font-size: var(--fs-xs) !important; line-height: var(--lh-xs) !important; color: var(--muted); margin: 0 !important; }
@media (max-width: 560px) { .sm-calc-form { grid-template-columns: minmax(0, 1fr); } }
/* calculators hub + glossary + policy pages */
.sm-hub-list { list-style: none !important; margin: 0 0 var(--sp-6) !important; padding: 0 !important; }
.sm-hub-list li { border-top: 1px solid var(--rule); padding: var(--sp-3) 0; margin: 0 !important; }
.sm-hub-list a { font-weight: 700; font-size: var(--fs-card); line-height: var(--lh-card); color: var(--ink) !important; text-decoration: none; }
.sm-hub-list a:hover { text-decoration: underline; }
.sm-hub-list p { margin: var(--sp-1) 0 0 !important; color: var(--muted); }
.sm-glossary dt { font-weight: 700; margin: var(--sp-5) 0 var(--sp-1); padding-top: var(--sp-3); border-top: 1px solid var(--rule); scroll-margin-top: 80px; }
.sm-glossary dd { margin: 0; }
.sm-glossary dt:target { color: var(--accent); }
