/* Sports stats calculators (golf handicap, ERA, batting, win percentage, passer rating). Scoped to [data-stats]. */
[data-stats] { user-select: text; -webkit-user-select: text; }
[data-stats] .st-block { display: flex; flex-direction: column; gap: 12px; min-width: 0; }
[data-stats] .st-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px 12px; }
[data-stats] .st-grid3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
[data-stats] .st-grid4 { grid-template-columns: repeat(4, minmax(0, 1fr)); }
[data-stats] .st-grid .inp { font-size: 20px; font-weight: 600; min-height: 52px; font-variant-numeric: tabular-nums; }
[data-stats] .st-grid .inp::placeholder { color: var(--mute); font-weight: 400; font-size: 15px; }
[data-stats] .st-opts { display: flex; flex-wrap: wrap; gap: 8px; }
[data-stats] .st-h { font-size: 15px; margin: 6px 0 0; }
[data-stats] .st-out { display: flex; flex-direction: column; gap: 8px; min-height: 64px; min-width: 0; }
[data-stats] .st-out p { margin: 0; }
[data-stats] .st-big { display: flex; align-items: baseline; flex-wrap: wrap; gap: 4px 12px; }
[data-stats] .st-big .big { font-size: clamp(48px, 12vw, 88px); }
[data-stats] .st-big span { font-weight: 600; font-size: 18px; color: var(--body); }
[data-stats] .st-line { font-size: 17px; font-weight: 500; }
[data-stats] .st-work { font-size: 15px; font-variant-numeric: tabular-nums; color: var(--ink); overflow-wrap: anywhere; }
[data-stats] .st-note { font-size: 14px; margin: 0; }
[data-stats] .st-msg { color: var(--body); font-weight: 500; }
[data-stats] .st-scroll { position: relative; max-width: 100%; }
[data-stats] .st-rounds { min-width: 600px; background: var(--canvas); border-radius: 12px; }
[data-stats] .st-rounds td, [data-stats] .st-rounds th { padding: 6px 4px; }
[data-stats] .st-rounds .inp { padding: 8px; font-size: 16px; font-variant-numeric: tabular-nums; background: var(--soft); }
[data-stats] .st-rounds .st-date { width: 9.5em; }
[data-stats] .st-rounds .st-n2 { width: 3.2em; }
[data-stats] .st-rounds .st-n3 { width: 4.2em; }
[data-stats] .st-rounds .st-n4 { width: 4.8em; }
[data-stats] .st-rounds tr.st-used td { background: var(--softer); }
[data-stats] .st-rounds tr.st-used td:first-child { box-shadow: inset 4px 0 0 var(--ink); }
[data-stats] .st-dcell { white-space: nowrap; }
[data-stats] .st-tag { display: inline-block; font-size: 12px; font-weight: 700; background: var(--ink); color: var(--on-ink); border-radius: var(--pill); padding: 1px 7px; margin-left: 2px; }
[data-stats] .st-empty { text-align: center !important; padding: 18px 8px; }
[data-stats] .st-chips { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 8px; }
[data-stats] .st-chip { background: var(--soft); border-radius: 10px; padding: 8px 10px; display: flex; flex-direction: column; min-width: 0; }
[data-stats] .st-chip span { font-size: 13px; font-weight: 600; color: var(--body); }
[data-stats] .st-chip b { font-size: 24px; font-weight: 800; font-variant-numeric: tabular-nums; letter-spacing: -0.02em; }
[data-stats] .st-parts { min-width: 340px; }
[data-stats] .st-parts td:nth-child(2) { font-size: 14px; color: var(--body); }
[data-stats] .st-parts td:last-child { white-space: nowrap; }
body.is-focus [data-stats] .stage { gap: 16px; }
@media (max-width: 720px) {
  [data-stats] .st-grid4 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  [data-stats] .st-grid3 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  [data-stats] .st-chips { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 400px) {
  [data-stats] .st-grid .inp { font-size: 18px; }
  [data-stats] .seg button { padding: 8px 10px; font-size: 14px; }
}
