/* The Edge Golf workspace — Data Golf-inspired information architecture,
   native Edge styling. Tables stay tables at every width and scroll sideways
   on small screens so no analytical columns silently disappear. */

#v-sports.golf-active { max-width: none; }
body.dt-owner #v-sports.golf-active { display: block; }

.golf-workspace {
  --golf-row: rgba(15, 20, 27, .78);
  --golf-row-alt: rgba(17, 23, 31, .9);
  --golf-head: #0f141b;
  --golf-line: rgba(148, 163, 184, .17);
  --golf-chart-grid: rgba(151, 190, 225, .18);
  --golf-chart-track: rgba(148, 163, 184, .13);
  --golf-chart-radius: 24px;
  width: 100%;
  min-width: 0;
  color: var(--text);
  font-family: var(--body);
}

.golf-workspace .sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

.golf-trust-hold {
  min-height: clamp(360px, 58vh, 620px);
  display: grid;
  place-items: center;
  padding: 42px 18px 70px;
  border: 1px solid rgba(245, 181, 68, .18);
  border-radius: 16px;
  background:
    radial-gradient(circle at 50% 12%, rgba(245, 181, 68, .09), transparent 42%),
    linear-gradient(180deg, rgba(18, 21, 28, .92), rgba(12, 15, 21, .82));
  box-shadow: var(--shadow);
}

.golf-trust-card {
  width: min(100%, 610px);
  text-align: center;
}

.golf-trust-icon {
  width: 58px;
  height: 58px;
  display: grid;
  place-items: center;
  margin: 0 auto 18px;
  border: 1px solid rgba(245, 181, 68, .28);
  border-radius: 18px;
  background: rgba(245, 181, 68, .09);
  color: var(--amber);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .08), 0 12px 36px rgba(0, 0, 0, .25);
}

.golf-trust-icon svg {
  width: 28px;
  height: 28px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.7;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.golf-trust-card > small {
  color: var(--amber);
  font-size: 10px;
  font-weight: 800;
  letter-spacing: .14em;
  text-transform: uppercase;
}

.golf-trust-card h1 {
  max-width: 560px;
  margin: 10px auto 0;
  font: 800 clamp(28px, 3vw, 42px)/1.04 var(--display);
  letter-spacing: .01em;
}

.golf-trust-card p {
  max-width: 540px;
  margin: 14px auto 0;
  color: #bdc5d0;
  font-size: 14px;
  line-height: 1.62;
}

.golf-trust-note {
  display: inline-flex;
  margin-top: 22px;
  padding: 8px 12px;
  border: 1px solid var(--golf-line);
  border-radius: 999px;
  background: rgba(8, 11, 15, .38);
  color: var(--dim);
  font-size: 10px;
  font-weight: 700;
  line-height: 1.35;
}

.golf-view-tabs {
  display: flex;
  align-items: center;
  gap: 8px;
  width: 100%;
  margin: -4px 0 16px;
  padding-bottom: 10px;
  overflow-x: auto;
  border-bottom: 1px solid var(--line);
  scrollbar-width: none;
}

.golf-view-tabs::-webkit-scrollbar,
.golf-segments::-webkit-scrollbar { display: none; }

.golf-view-tab,
.golf-segments button,
.golf-display-control button {
  min-height: 34px;
  flex: 0 0 auto;
  border: 1px solid var(--golf-line);
  border-radius: 7px;
  background: var(--panel2);
  color: #b8c1ce;
  font: 700 12px/1 var(--body);
  letter-spacing: .02em;
  padding: 0 15px;
  transition: background .15s ease, border-color .15s ease, color .15s ease, transform .15s ease;
}

.golf-view-tab:hover,
.golf-segments button:hover,
.golf-display-control button:hover {
  border-color: rgba(239, 68, 68, .38);
  color: var(--text);
}

.golf-view-tab:active,
.golf-segments button:active,
.golf-display-control button:active { transform: translateY(1px); }

.golf-view-tab.is-active,
.golf-segments button.is-active,
.golf-display-control button.is-active {
  border-color: #ef6a6a;
  background: linear-gradient(180deg, #b91c1c, #8f1515);
  color: #fff;
  box-shadow: 0 5px 16px rgba(239, 68, 68, .2), inset 0 1px 0 rgba(255, 255, 255, .14);
}

.golf-view-tab:focus-visible,
.golf-segments button:focus-visible,
.golf-display-control button:focus-visible,
.golf-table .golf-sort:focus-visible {
  outline: none;
  box-shadow: var(--focus-ring);
}

.golf-controls {
  display: flex;
  align-items: flex-end;
  gap: 30px;
  width: 100%;
  padding: 0 0 14px;
  border-bottom: 1px solid var(--line);
}

.golf-control-group {
  display: flex;
  flex-direction: column;
  gap: 7px;
  min-width: 0;
}

.golf-control-group > span,
.golf-odds-format > span,
.golf-sort-select > span {
  color: var(--dim);
  font-size: 9px;
  font-weight: 800;
  letter-spacing: .13em;
  text-transform: uppercase;
}

.golf-segments {
  display: flex;
  gap: 5px;
  min-width: 0;
  overflow-x: auto;
  scrollbar-width: none;
}

.golf-segments button { min-width: 80px; }
.golf-market-group { flex: 1 1 auto; }
.golf-market-group .golf-segments button { min-width: 78px; }

.golf-odds-format {
  display: flex;
  flex: 0 0 auto;
  flex-direction: column;
  gap: 7px;
  margin-left: auto;
}

.golf-odds-format b {
  display: flex;
  align-items: baseline;
  gap: 4px;
  min-height: 34px;
  padding: 8px 12px;
  border: 1px solid var(--golf-line);
  border-radius: 7px;
  background: var(--panel2);
  font-size: 12px;
  white-space: nowrap;
}

.golf-odds-format small { color: var(--dim); font-size: 10px; }

.golf-event-head,
.golf-simple-head {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 24px;
  padding: 17px 2px 12px;
}

.golf-event-head h1,
.golf-simple-head h1 {
  margin: 0;
  font: 800 clamp(25px, 2.1vw, 34px)/1.02 var(--display);
  letter-spacing: .01em;
}

.golf-event-head p,
.golf-simple-head p {
  margin: 5px 0 0;
  color: #aeb8c6;
  font-size: 13px;
  font-weight: 600;
}

.golf-event-meta,
.golf-simple-head > div:last-child {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 24px;
  color: #bdc5d0;
  font-size: 10.5px;
  white-space: nowrap;
}

.golf-event-meta span,
.golf-simple-head > div:last-child span {
  display: inline-flex;
  align-items: center;
  gap: 6px;
}

.golf-event-meta svg {
  width: 15px;
  height: 15px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.7;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.golf-insight {
  margin: 2px 0 10px;
  overflow: hidden;
  border: 1px solid rgba(239, 68, 68, .2);
  border-radius: 10px;
  background:
    radial-gradient(circle at 92% 0%, rgba(239, 68, 68, .085), transparent 34%),
    linear-gradient(145deg, rgba(18, 24, 32, .98), rgba(13, 18, 24, .98));
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .025), 0 14px 34px rgba(0, 0, 0, .13);
}

.golf-insight > summary {
  display: grid;
  grid-template-columns: 34px minmax(0, 1fr) 18px;
  gap: 10px;
  align-items: center;
  min-height: 56px;
  padding: 10px 13px;
  cursor: pointer;
  list-style: none;
}

.golf-insight > summary::-webkit-details-marker { display: none; }
.golf-insight > summary:focus-visible { outline: none; box-shadow: inset 0 0 0 2px rgba(239, 68, 68, .6); }

.golf-insight-mark {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 32px;
  height: 32px;
  border: 1px solid rgba(239, 68, 68, .3);
  border-radius: 8px;
  background: rgba(239, 68, 68, .09);
  color: #ff6868;
}

.golf-insight-mark svg,
.golf-insight-chevron,
.golf-details-btn svg {
  fill: none;
  stroke: currentColor;
  stroke-width: 1.8;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.golf-insight-mark svg { width: 17px; height: 17px; }
.golf-insight > summary > span:nth-child(2) { min-width: 0; }
.golf-insight > summary small { display: block; color: #8995a4; font-size: 8.5px; font-weight: 800; letter-spacing: .12em; text-transform: uppercase; }
.golf-insight > summary b { display: block; margin-top: 3px; overflow: hidden; color: #f1f4f8; font: 800 14px/1.1 var(--display); letter-spacing: .015em; text-overflow: ellipsis; white-space: nowrap; }
.golf-insight-chevron { width: 17px; height: 17px; color: #8d98a7; transition: transform .18s ease; }
.golf-insight[open] .golf-insight-chevron { transform: rotate(180deg); }

.golf-insight-body {
  padding: 0 13px 13px;
  border-top: 1px solid rgba(148, 163, 184, .11);
}

.golf-insight-body > p {
  max-width: 1050px;
  margin: 11px 0;
  color: #bcc6d2;
  font-size: 11.5px;
  font-weight: 550;
  line-height: 1.55;
}

.golf-insight-stats {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(126px, 1fr));
  gap: 7px;
}

.golf-row-facts {
  display: grid;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  gap: 7px;
}

.golf-insight-stat {
  min-width: 0;
  min-height: 68px;
  padding: 10px;
  border: 1px solid rgba(148, 163, 184, .13);
  border-radius: 7px;
  background: rgba(10, 14, 19, .64);
}

.golf-insight-stat > span {
  display: block;
  overflow: hidden;
  color: #7f8b9a;
  font-size: 8.5px;
  font-weight: 800;
  letter-spacing: .09em;
  text-overflow: ellipsis;
  text-transform: uppercase;
  white-space: nowrap;
}

.golf-insight-stat > b {
  display: block;
  margin-top: 6px;
  overflow: hidden;
  color: #f0f3f7;
  font: 800 14px/1 var(--display);
  text-overflow: ellipsis;
  white-space: nowrap;
}

.golf-insight-stat > small {
  display: block;
  margin-top: 4px;
  overflow: hidden;
  color: #7f8b9a;
  font-size: 8.5px;
  line-height: 1.25;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.golf-definitions {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 7px 16px;
  margin-top: 11px;
  padding-top: 10px;
  border-top: 1px solid rgba(148, 163, 184, .1);
}

.golf-definitions p { display: flex; flex-direction: column; gap: 3px; margin: 0; }
.golf-definitions b { color: #d9e0e8; font-size: 9.5px; }
.golf-definitions span { color: #7f8b9a; font-size: 9px; line-height: 1.45; }

.golf-toolbar {
  display: flex;
  align-items: flex-end;
  gap: 12px;
  min-height: 52px;
  padding: 7px 2px 10px;
}

.golf-toolbar-spacer { flex: 1 1 auto; }

.golf-snapshot-context {
  display: flex;
  flex-direction: column;
  gap: 3px;
  padding: 7px 10px;
  border: 1px solid var(--golf-line);
  border-radius: 7px;
  background: var(--panel2);
}

.golf-snapshot-context > span { color: var(--dim); font-size: 8.5px; font-weight: 800; letter-spacing: .1em; text-transform: uppercase; }
.golf-snapshot-context > b { color: #dbe2ea; font-size: 11px; }
.golf-snapshot-context > small { color: #8793a2; font-size: 9px; }

.golf-swipe-hint { display: none; }

.golf-search {
  position: relative;
  display: block;
  flex: 0 1 250px;
  min-width: 190px;
}

.golf-search svg {
  position: absolute;
  left: 11px;
  top: 50%;
  width: 16px;
  height: 16px;
  transform: translateY(-50%);
  fill: none;
  stroke: var(--dim);
  stroke-width: 1.8;
  stroke-linecap: round;
}

.golf-search input,
.golf-sort-select select {
  width: 100%;
  min-height: 34px;
  border: 1px solid var(--golf-line);
  border-radius: 7px;
  outline: none;
  background: var(--panel2);
  color: var(--text);
  font: 600 11.5px/1 var(--body);
}

.golf-search input { padding: 8px 10px 8px 35px; }
.golf-search input::placeholder { color: #7f8996; }
.golf-search input:focus,
.golf-sort-select select:focus { border-color: rgba(239, 68, 68, .7); box-shadow: var(--focus-ring); }

.golf-sort-select {
  display: flex;
  flex: 0 0 176px;
  flex-direction: column;
  gap: 5px;
}

.golf-sort-select select { padding: 7px 30px 7px 10px; }

.golf-result-stack { min-width: 0; }

.golf-result-controls {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  min-height: 50px;
  margin-top: 8px;
  padding: 8px 10px 8px 13px;
  border: 1px solid var(--golf-line);
  border-radius: 9px;
  background: linear-gradient(180deg, rgba(18, 24, 32, .96), rgba(13, 18, 24, .96));
}

.golf-result-count {
  margin: 0;
  color: #aeb8c6;
  font-size: 11px;
  font-weight: 600;
  font-variant-numeric: tabular-nums;
}

.golf-result-count strong { color: #f1f4f8; font-weight: 800; }

.golf-load-more {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  min-height: 36px;
  padding: 0 13px;
  border: 1px solid rgba(239, 68, 68, .42);
  border-radius: 7px;
  background: rgba(185, 28, 28, .14);
  color: #f7f9fb;
  font: 800 11px/1 var(--body);
}

.golf-load-more small { color: #aeb8c6; font-size: 9px; font-weight: 650; }
.golf-load-more:hover { border-color: #ef6a6a; background: rgba(185, 28, 28, .24); }
.golf-load-more:focus-visible { outline: none; box-shadow: var(--focus-ring); }

.golf-results-complete {
  color: #8f9aa8;
  font-size: 9.5px;
  font-weight: 750;
  letter-spacing: .06em;
  text-transform: uppercase;
}

.golf-results-complete:focus {
  outline: none;
  border-radius: 3px;
  box-shadow: var(--focus-ring);
}

.golf-table-shell {
  width: 100%;
  max-height: min(66vh, 720px);
  overflow: auto;
  border: 1px solid var(--golf-line);
  border-radius: 9px;
  background: #0e1319;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .02), 0 12px 32px rgba(0, 0, 0, .16);
  scrollbar-color: #303947 #0e1319;
  scrollbar-width: thin;
}

.golf-table-shell:focus-visible {
  outline: none;
  box-shadow: var(--focus-ring), inset 0 1px 0 rgba(255, 255, 255, .02), 0 12px 32px rgba(0, 0, 0, .16);
}

.golf-table {
  width: 100%;
  border-collapse: separate;
  border-spacing: 0;
  table-layout: fixed;
  color: #dbe1e9;
  font-size: 11px;
  line-height: 1.25;
  font-variant-numeric: tabular-nums;
}

.golf-pre-table { min-width: 1110px; }
.golf-live-table { min-width: 1080px; }
.golf-skills-table { min-width: 1240px; }
.golf-decomp-table { min-width: 1266px; }

.golf-table th,
.golf-table td {
  height: 43px;
  padding: 7px 11px;
  border-right: 1px solid rgba(148, 163, 184, .1);
  border-bottom: 1px solid rgba(148, 163, 184, .13);
  text-align: left;
  vertical-align: middle;
  overflow: hidden;
}

.golf-table th:last-child,
.golf-table td:last-child { border-right: 0; }

.golf-table tbody tr:last-child td { border-bottom: 0; }

.golf-table thead th {
  position: sticky;
  z-index: 3;
  top: 0;
  height: 36px;
  background: var(--golf-head);
  color: #aeb7c4;
  font-size: 9px;
  font-weight: 800;
  letter-spacing: .085em;
  text-transform: uppercase;
  white-space: nowrap;
}

.golf-table tbody tr:nth-child(odd) > :is(td, th[scope="row"]) { background: var(--golf-row); }
.golf-table tbody tr:nth-child(even) > :is(td, th[scope="row"]) { background: var(--golf-row-alt); }
.golf-table tbody tr:hover > :is(td, th[scope="row"]) { background: #18202a; }
.golf-table tbody th[scope="row"] { font-weight: inherit; }

/* Keep the player's identity in view whenever a wide data table scrolls.
   This is useful on tablets and smaller desktops too, not only phones. */
.golf-pre-table,
.golf-skills-table,
.golf-decomp-table { --golf-first-col: 44px; }
.golf-live-table { --golf-first-col: 54px; }
.golf-table thead > tr:first-child > th:nth-child(1) { position: sticky; left: 0; z-index: 7; }
.golf-table thead > tr:first-child > th:nth-child(2) { position: sticky; left: var(--golf-first-col); z-index: 7; box-shadow: 8px 0 13px rgba(0, 0, 0, .22); }
.golf-table tbody > tr:not(.golf-detail-row) > :nth-child(1) { position: sticky; left: 0; z-index: 2; }
.golf-table tbody > tr:not(.golf-detail-row) > :nth-child(2) { position: sticky; left: var(--golf-first-col); z-index: 2; box-shadow: 8px 0 13px rgba(0, 0, 0, .2); }

.golf-table .golf-sort {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  min-height: 28px;
  color: inherit;
  font: inherit;
  letter-spacing: inherit;
  text-align: left;
  text-transform: inherit;
  white-space: nowrap;
}

.golf-table .golf-sort:hover,
.golf-table .golf-sort.is-active { color: var(--text); }
.golf-table .golf-sort > span:last-child { color: #697483; font-size: 9px; }
.golf-table .golf-sort.is-active > span:last-child { color: var(--accent); }
.golf-sort-copy { display: flex; flex-direction: column; gap: 2px; color: inherit; font: inherit; letter-spacing: inherit; }
.golf-sort-copy small { color: #7f8a99; font-size: 8px; font-weight: 700; letter-spacing: .04em; text-transform: none; }

.golf-pre-table th:nth-child(1), .golf-pre-table td:nth-child(1) { width: 44px; }
.golf-pre-table th:nth-child(2), .golf-pre-table td:nth-child(2) { width: 205px; }
.golf-pre-table th:nth-child(3), .golf-pre-table td:nth-child(3) { width: 180px; }
.golf-pre-table th:nth-child(4), .golf-pre-table td:nth-child(4),
.golf-pre-table th:nth-child(5), .golf-pre-table td:nth-child(5) { width: 90px; }
.golf-pre-table th:nth-child(6), .golf-pre-table td:nth-child(6) { width: 105px; }
.golf-pre-table th:nth-child(7), .golf-pre-table td:nth-child(7),
.golf-pre-table th:nth-child(8), .golf-pre-table td:nth-child(8) { width: 96px; }
.golf-pre-table th:nth-child(9), .golf-pre-table td:nth-child(9) { width: 125px; }

.golf-live-table th:nth-child(1), .golf-live-table td:nth-child(1) { width: 54px; }
.golf-live-table th:nth-child(2), .golf-live-table td:nth-child(2) { width: 210px; }
.golf-live-table th:nth-child(3), .golf-live-table td:nth-child(3),
.golf-live-table th:nth-child(4), .golf-live-table td:nth-child(4),
.golf-live-table th:nth-child(5), .golf-live-table td:nth-child(5) { width: 72px; }
.golf-live-table th:nth-child(6), .golf-live-table td:nth-child(6) { width: 185px; }
.golf-live-table th:nth-child(7), .golf-live-table td:nth-child(7),
.golf-live-table th:nth-child(8), .golf-live-table td:nth-child(8) { width: 105px; }
.golf-live-table th:nth-child(9), .golf-live-table td:nth-child(9) { width: 128px; }

.golf-rank { color: #f0f4f9; font-weight: 700; }

.golf-player-cell {
  display: flex;
  align-items: center;
  gap: 8px;
  min-width: 0;
}

.golf-player-cell small {
  min-width: 30px;
  padding: 3px 4px;
  border: 1px solid rgba(148, 163, 184, .17);
  border-radius: 4px;
  background: #171e27;
  color: #8f9baa;
  font-size: 8px;
  font-weight: 800;
  letter-spacing: .04em;
  text-align: center;
}

.golf-player-cell b {
  overflow: hidden;
  color: #eef2f7;
  font-size: 11px;
  font-weight: 700;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.golf-prob-cell {
  display: grid;
  grid-template-columns: 48px minmax(45px, 1fr);
  gap: 8px;
  align-items: center;
}

.golf-prob-cell b { font-weight: 700; text-align: right; }
.golf-prob-cell.is-missing { display: block; }
.golf-prob-cell.is-missing b { display: block; text-align: center; }

.golf-prob-cell > span,
.golf-metric-track {
  position: relative;
  height: 7px;
  overflow: hidden;
  border: 1px solid var(--golf-chart-grid);
  border-radius: 99px;
  background: var(--golf-chart-track);
  box-shadow: inset 0 1px 3px rgba(0, 0, 0, .34);
}

.golf-prob-cell i,
.golf-metric-track i {
  display: block;
  height: 100%;
  border-radius: inherit;
  background: var(--green);
  box-shadow: 0 0 12px rgba(52, 210, 122, .24);
}

.golf-odds,
.golf-book,
.golf-value,
.golf-baseline,
.golf-final { font-weight: 700; }

.golf-value.is-positive,
.golf-metric.is-positive > b,
.golf-metric.is-positive .golf-metric-reading > b,
.golf-adjust.is-positive .golf-adjust-value > b { color: var(--green); }

.golf-value.is-negative,
.golf-metric.is-negative > b,
.golf-metric.is-negative .golf-metric-reading > b,
.golf-adjust.is-negative .golf-adjust-value > b { color: var(--red); }

.golf-status {
  display: block;
  color: #f1f4f8;
  font-size: 9px;
  font-weight: 800;
  letter-spacing: .08em;
  text-transform: uppercase;
}

.golf-status.is-live { color: #d8b45d; }

.golf-research {
  display: block;
  margin-top: 2px;
  color: var(--dim);
  font-size: 9px;
  white-space: nowrap;
}

.golf-details-btn {
  display: inline-flex;
  align-items: center;
  gap: 3px;
  min-height: 32px;
  margin-top: 4px;
  padding: 0 4px;
  border: 0;
  background: transparent;
  color: #aeb8c5;
  cursor: pointer;
  font-size: 9.5px;
  font-weight: 750;
  white-space: nowrap;
}

.golf-pre-table .golf-data-row > td,
.golf-live-table .golf-data-row > td { height: 56px; }

.golf-details-btn:hover { color: #fff; }
.golf-details-btn:focus-visible { outline: none; border-radius: 3px; box-shadow: var(--focus-ring); }
.golf-details-btn svg { width: 11px; height: 11px; transition: transform .16s ease; }
.golf-details-btn[aria-expanded="true"] { color: #ff7070; }
.golf-details-btn[aria-expanded="true"] svg { transform: rotate(180deg); }

.golf-table .golf-detail-row > td,
.golf-table tbody tr.golf-detail-row:hover > td {
  height: auto;
  padding: 0;
  border-bottom: 1px solid rgba(239, 68, 68, .22);
  background: #10161e;
  overflow: visible;
}

.golf-row-context { padding: 13px; box-shadow: inset 3px 0 0 rgba(239, 68, 68, .5); }
.golf-row-context-lead { display: grid; grid-template-columns: 112px minmax(0, 1fr); gap: 12px; align-items: start; margin-bottom: 12px; }
.golf-row-context-lead > span { color: #ff8585; font-size: 9px; font-weight: 850; letter-spacing: .1em; text-transform: uppercase; }
.golf-row-context-lead p { margin: 0; color: #c3ccd7; font-size: 10.5px; line-height: 1.5; }

.golf-compare { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; margin: 0 0 12px; }
.golf-compare-row { display: grid; grid-template-columns: minmax(100px, .7fr) minmax(90px, 1.4fr) 47px; gap: 10px; align-items: center; min-height: 44px; padding: 9px 11px; border: 1px solid var(--golf-chart-grid); border-radius: 15px; background: linear-gradient(180deg, rgba(255, 255, 255, .018), rgba(2, 7, 13, .18)); }
.golf-compare-row > span:first-child { min-width: 0; }
.golf-compare-row b { display: block; overflow: hidden; color: #dce3eb; font-size: 9.5px; text-overflow: ellipsis; white-space: nowrap; }
.golf-compare-row small { display: block; margin-top: 2px; overflow: hidden; color: #8793a2; font-size: 8.5px; text-overflow: ellipsis; white-space: nowrap; }
.golf-compare-row strong { color: #eef2f6; font-size: 10px; text-align: right; }
.golf-compare-track { height: 7px; overflow: hidden; border: 1px solid var(--golf-chart-grid); border-radius: 99px; background: var(--golf-chart-track); box-shadow: inset 0 1px 3px rgba(0, 0, 0, .34); }
.golf-compare-track i { display: block; height: 100%; border-radius: inherit; }
.golf-compare-track i.is-model { background: var(--red); box-shadow: 0 0 12px rgba(239, 68, 68, .25); }
.golf-compare-track i.is-market { background: #8793a4; box-shadow: 0 0 10px rgba(135, 147, 164, .22); }

.golf-score {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 38px;
  padding: 4px 7px;
  border: 1px solid var(--golf-line);
  border-radius: 4px;
  background: #111821;
  font-weight: 800;
}

.golf-score.positive { border-color: rgba(52, 210, 122, .36); color: var(--green); }
.golf-score.negative { border-color: rgba(240, 86, 107, .4); color: var(--red); }

.golf-live-overview {
  display: grid;
  grid-template-columns: minmax(0, 1.65fr) minmax(260px, .75fr);
  gap: 14px;
  margin: 0 0 16px;
}

.golf-live-panel {
  min-width: 0;
  border: 1px solid var(--golf-chart-grid);
  border-radius: var(--golf-chart-radius);
  background: linear-gradient(155deg, rgba(23, 31, 42, .84), rgba(8, 13, 21, .82));
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .055), 0 16px 34px rgba(0, 0, 0, .22);
  overflow: hidden;
}

.golf-section-title {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 16px;
  padding: 12px 14px;
  border-bottom: 1px solid var(--golf-line);
}

.golf-section-title h2 {
  margin: 0;
  font: 800 15px/1 var(--display);
  letter-spacing: .015em;
}

.golf-section-title p,
.golf-source-note {
  margin: 4px 0 0;
  color: var(--dim);
  font-size: 10px;
}

.golf-section-title > span {
  color: var(--dim);
  font-size: 9.5px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: .06em;
}

.golf-live-bars { margin: 0; padding: 5px 14px 7px; list-style: none; }

.golf-live-bar {
  display: grid;
  grid-template-columns: 22px minmax(130px, .8fr) minmax(120px, 2fr) 52px;
  gap: 10px;
  align-items: center;
  min-height: 35px;
  border-bottom: 1px solid rgba(148, 163, 184, .1);
  font-size: 10px;
}

.golf-live-bar:last-child { border-bottom: 0; }
.golf-live-rank { color: var(--dim); font-weight: 700; }
.golf-live-bar b { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.golf-live-bar strong { color: var(--green); text-align: right; }
.golf-live-track { height: 7px; overflow: hidden; border: 1px solid var(--golf-chart-grid); border-radius: 99px; background: var(--golf-chart-track); box-shadow: inset 0 1px 3px rgba(0, 0, 0, .34); }
.golf-live-track i { display: block; height: 100%; border-radius: inherit; background: var(--green); box-shadow: 0 0 12px rgba(52, 210, 122, .24); }
.golf-source-note { margin: 0; padding: 9px 14px 11px; border-top: 1px solid var(--golf-line); line-height: 1.45; }

.golf-hole-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); margin: 0; padding: 0; list-style: none; }
.golf-hole-grid > li { min-height: 82px; padding: 13px; border-right: 1px solid var(--golf-line); border-bottom: 1px solid var(--golf-line); }
.golf-hole-grid > li:nth-child(2n) { border-right: 0; }
.golf-hole-grid > li:nth-last-child(-n+2) { border-bottom: 0; }
.golf-hole-grid span { display: block; color: var(--dim); font-size: 8px; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
.golf-hole-grid b { display: block; margin-top: 6px; color: var(--red); font: 800 18px/1 var(--display); }
.golf-hole-grid b.is-negative { color: var(--green); }
.golf-hole-grid b.is-neutral { color: #c8d0da; }
.golf-hole-grid small { display: block; margin-top: 5px; color: #98a3b1; font-size: 9px; }
.golf-table-title { margin-top: 0; border: 1px solid var(--golf-line); border-bottom: 0; border-radius: 9px 9px 0 0; background: #0e1319; }
.golf-table-title + .golf-table-shell { border-radius: 0 0 9px 9px; }

.golf-simple-head {
  align-items: center;
  padding: 1px 2px 13px;
  border-bottom: 1px solid var(--line);
}

.golf-simple-head h1 { font-size: clamp(27px, 2.2vw, 36px); }
.golf-simple-head p { max-width: 720px; }
.golf-decomp-head { padding-top: 1px; }

.golf-display-control {
  display: flex;
  align-items: center;
  gap: 5px;
}

.golf-display-control > span {
  margin-right: 4px;
  color: var(--dim);
  font-size: 9px;
  font-weight: 700;
}

.golf-display-control button { min-height: 34px; min-width: 74px; padding: 0 11px; }

.golf-skills-table th:nth-child(1), .golf-skills-table td:nth-child(1) { width: 42px; }
.golf-skills-table th:nth-child(2), .golf-skills-table td:nth-child(2) { width: 190px; }
.golf-skills-table th:nth-child(n+3), .golf-skills-table td:nth-child(n+3) { width: 128px; }
.golf-skills-table thead th { height: 46px; }

.golf-metric {
  display: grid;
  grid-template-columns: 50px minmax(34px, 1fr);
  align-items: center;
  gap: 7px;
  width: 100%;
}

.golf-metric > b { text-align: right; font-weight: 600; }
.golf-metric-reading {
  display: flex;
  min-width: 0;
  flex-direction: column;
  align-items: flex-end;
  gap: 2px;
}
.golf-metric-reading > b { font-weight: 600; text-align: right; }
.golf-metric-cap {
  color: #f2c963;
  font-size: 8px;
  font-weight: 900;
  letter-spacing: .03em;
  line-height: 1;
  white-space: nowrap;
}
.golf-metric.is-negative .golf-metric-track i { background: var(--red); box-shadow: 0 0 12px rgba(240, 86, 107, .24); }
.golf-metric.is-heatmap { display: block; width: calc(100% + 14px); margin: -7px; padding: 10px 7px; border-radius: 3px; }
.golf-metric.is-heatmap .golf-metric-reading { align-items: center; }
.golf-metric.is-heatmap .golf-metric-reading > b { color: var(--text); text-align: center; }
.golf-metric.is-capped .golf-metric-track::after {
  position: absolute;
  top: -2px;
  right: 0;
  bottom: -2px;
  width: 2px;
  border-radius: 1px;
  background: #f2c963;
  content: "";
}

.golf-decomp-table thead tr:first-child th { top: 0; }
.golf-decomp-table thead tr:nth-child(2) th { top: 36px; z-index: 4; }
.golf-decomp-table .golf-group-head th { background: #111821; text-align: center; }
.golf-decomp-table .golf-group-head th:nth-child(4) { box-shadow: inset 0 2px 0 rgba(239, 68, 68, .46); }
.golf-decomp-table .golf-group-head th:nth-child(5) { box-shadow: inset 0 2px 0 rgba(52, 210, 122, .46); }
.golf-decomp-table th:nth-child(1), .golf-decomp-table td:nth-child(1) { width: 42px; }
.golf-decomp-table th:nth-child(2), .golf-decomp-table td:nth-child(2) { width: 210px; }
.golf-decomp-table th:nth-child(3), .golf-decomp-table td:nth-child(3) { width: 84px; }
.golf-decomp-table th:nth-child(n+4):nth-child(-n+12), .golf-decomp-table td:nth-child(n+4):nth-child(-n+12) { width: 103px; }
.golf-decomp-table th:nth-child(13), .golf-decomp-table td:nth-child(13) { width: 112px; }
.golf-decomp-table th:nth-child(14), .golf-decomp-table td:nth-child(14) { width: 110px; }

.golf-adjust {
  display: flex;
  min-width: 0;
  flex-direction: column;
  gap: 4px;
}

.golf-adjust-value {
  display: flex;
  min-width: 0;
  align-items: center;
  justify-content: space-between;
  gap: 3px;
}
.golf-adjust-value > b { font-weight: 600; white-space: nowrap; }
.golf-cap-mark {
  display: inline-block;
  padding: 2px 3px;
  border: 1px solid rgba(230, 189, 97, .42);
  border-radius: 3px;
  background: rgba(230, 189, 97, .10);
  color: #e6bd61;
  font-size: 8px;
  font-weight: 900;
  letter-spacing: .02em;
  line-height: 1;
  white-space: nowrap;
}

.golf-adjust-track {
  position: relative;
  height: 9px;
  overflow: hidden;
  border: 1px solid var(--golf-chart-grid);
  border-radius: 99px;
  background: var(--golf-chart-track);
  box-shadow: inset 0 1px 3px rgba(0, 0, 0, .34);
}

.golf-adjust-track::before {
  position: absolute;
  z-index: 2;
  top: 0;
  bottom: 0;
  left: 50%;
  width: 1px;
  background: #778394;
  content: "";
}

.golf-adjust-track i { position: absolute; top: 1px; bottom: 1px; border-radius: 99px; background: var(--green); box-shadow: 0 0 10px rgba(52, 210, 122, .24); }
.golf-adjust.is-negative .golf-adjust-track i { background: var(--red); box-shadow: 0 0 10px rgba(240, 86, 107, .24); }
.golf-adjust.is-capped .golf-adjust-track::after {
  position: absolute;
  z-index: 3;
  top: 1px;
  bottom: 1px;
  width: 2px;
  border-radius: 1px;
  background: #e6bd61;
  content: "";
}
.golf-adjust.is-capped.is-positive .golf-adjust-track::after { right: 0; }
.golf-adjust.is-capped.is-negative .golf-adjust-track::after { left: 0; }
.golf-final { color: #f5f7fa; font-size: 11px; }

.golf-empty {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  min-height: 180px;
  padding: 28px;
  border: 1px solid var(--golf-line);
  border-radius: 9px;
  background: #0e1319;
  text-align: center;
}

.golf-empty b { font: 800 17px/1.15 var(--display); }
.golf-empty span { max-width: 460px; margin-top: 7px; color: var(--dim); font-size: 11px; }

@media (min-width: 1600px) {
  .golf-table { font-size: 11px; }
  .golf-table th, .golf-table td { padding-inline: 12px; }
  .golf-live-overview { grid-template-columns: minmax(0, 2fr) minmax(310px, .72fr); }
}

@media (max-width: 1600px) {
  .golf-swipe-hint { display: flex; align-items: center; gap: 7px; margin: -3px 2px 7px; color: #9aa5b3; font-size: 10px; }
  .golf-swipe-hint span { color: #b5bfcb; font-size: 13px; }
}

@media (max-width: 1120px) {
  .golf-controls { flex-wrap: wrap; gap: 15px 22px; }
  .golf-market-group { order: 3; flex-basis: 100%; }
  .golf-odds-format { margin-left: auto; }
  .golf-live-overview { grid-template-columns: 1fr; }
  .golf-hole-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); }
  .golf-hole-grid > li { border-bottom: 0; }
  .golf-hole-grid > li:nth-child(2n) { border-right: 1px solid var(--golf-line); }
  .golf-hole-grid > li:last-child { border-right: 0; }
  .golf-insight-stats,
  .golf-row-facts { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .golf-definitions { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 760px) {
  .golf-view-tabs { margin-top: -2px; padding-bottom: 8px; }
  .golf-view-tab,
  .golf-segments button,
  .golf-display-control button { min-height: 44px; font-size: 12px; }
  .golf-view-tab { padding-inline: 13px; }
  .golf-controls { display: block; padding-bottom: 11px; }
  .golf-control-group, .golf-odds-format { margin-top: 11px; }
  .golf-control-group > span,
  .golf-odds-format > span,
  .golf-sort-select > span { font-size: 10px; }
  .golf-odds-format { align-items: flex-start; }
  .golf-odds-format b { min-height: 44px; }
  .golf-market-group .golf-segments { width: calc(100vw - 28px); }
  .golf-market-group .golf-segments button { min-width: 80px; }
  .golf-event-head, .golf-simple-head { display: block; padding-top: 15px; }
  .golf-event-head h1, .golf-simple-head h1 { font-size: 27px; }
  .golf-event-meta, .golf-simple-head > div:last-child { justify-content: flex-start; gap: 13px; margin-top: 11px; overflow-x: auto; font-size: 11px; scrollbar-width: none; }
  .golf-insight { margin-top: 2px; border-radius: 8px; }
  .golf-insight > summary { grid-template-columns: 32px minmax(0, 1fr) 16px; min-height: 54px; padding: 9px 10px; }
  .golf-insight > summary b { font-size: 13px; }
  .golf-insight-body { padding: 0 10px 10px; }
  .golf-insight-body > p { font-size: 11.5px; }
  .golf-insight-stats,
  .golf-row-facts { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .golf-insight-stat { min-height: 65px; padding: 9px; }
  .golf-insight-stat > span,
  .golf-insight-stat > small { font-size: 9.5px; }
  .golf-insight-stat > b { font-size: 13px; }
  .golf-definitions { grid-template-columns: 1fr; }
  .golf-definitions b { font-size: 10.5px; }
  .golf-definitions span { font-size: 10px; }
  .golf-toolbar { flex-wrap: wrap; padding-top: 10px; }
  .golf-search { flex: 1 1 100%; min-width: 0; }
  .golf-search input,
  .golf-sort-select select { min-height: 44px; font-size: 16px; }
  .golf-toolbar-spacer { display: none; }
  .golf-sort-select { flex: 1 1 150px; }
  .golf-display-control { order: 2; width: 100%; overflow-x: auto; scrollbar-width: none; }
  .golf-snapshot-context { order: 2; width: 100%; }
  .golf-result-controls { align-items: stretch; flex-direction: column; padding: 10px; }
  .golf-load-more { width: 100%; min-height: 44px; }
  .golf-results-complete { align-self: flex-start; padding: 4px 1px; }
  .golf-swipe-hint { display: flex; align-items: center; gap: 7px; margin: -3px 2px 7px; color: #9aa5b3; font-size: 10px; }
  .golf-swipe-hint span { color: #b5bfcb; font-size: 13px; }
  .golf-table-shell { max-height: 64vh; border-radius: 7px; }
  .golf-table { font-size: 11.5px; line-height: 1.3; }
  .golf-table th, .golf-table td { height: 46px; padding: 8px 9px; }
  .golf-table thead th { font-size: 9.5px; }
  .golf-table .golf-sort { min-height: 32px; }
  .golf-sort-copy small { font-size: 8.5px; }
  .golf-player-cell b { font-size: 12px; }
  .golf-details-btn { min-height: 36px; font-size: 10px; }
  .golf-pre-table,
  .golf-skills-table,
  .golf-decomp-table { --golf-first-col: 44px; }
  .golf-live-table { --golf-first-col: 54px; }
  .golf-table thead > tr:first-child > th:nth-child(1) { position: sticky; left: 0; z-index: 7; }
  .golf-table thead > tr:first-child > th:nth-child(2) { position: sticky; left: var(--golf-first-col); z-index: 7; box-shadow: 8px 0 13px rgba(0, 0, 0, .22); }
  .golf-table tbody > tr:not(.golf-detail-row) > :nth-child(1) { position: sticky; left: 0; z-index: 2; }
  .golf-table tbody > tr:not(.golf-detail-row) > :nth-child(2) { position: sticky; left: var(--golf-first-col); z-index: 2; box-shadow: 8px 0 13px rgba(0, 0, 0, .2); }
  .golf-row-context { padding: 11px; }
  .golf-row-context-lead { display: block; }
  .golf-row-context-lead > span { display: block; margin-bottom: 5px; }
  .golf-compare { grid-template-columns: 1fr; }
  .golf-compare-row { grid-template-columns: minmax(100px, .8fr) minmax(80px, 1.3fr) 45px; }
  .golf-live-bar { grid-template-columns: 20px minmax(100px, 1fr) 45px; min-height: 44px; font-size: 11px; }
  .golf-live-track { grid-column: 2 / 4; margin-top: -3px; }
  .golf-hole-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .golf-hole-grid > li { border-bottom: 1px solid var(--golf-line); }
  .golf-hole-grid > li:nth-child(2n) { border-right: 0; }
  .golf-hole-grid > li:nth-last-child(-n+2) { border-bottom: 0; }
  .golf-section-title { padding: 11px 12px; }
}

@media (min-width: 761px) and (max-width: 1023px) {
  .golf-view-tab,
  .golf-segments button,
  .golf-display-control button,
  .golf-details-btn { min-height: 44px; }
  .golf-search input,
  .golf-sort-select select { min-height: 44px; font-size: 14px; }
  .golf-swipe-hint { display: flex; align-items: center; gap: 7px; margin: -3px 2px 7px; color: #9aa5b3; font-size: 10px; }
  .golf-swipe-hint span { color: #b5bfcb; font-size: 13px; }
}

@media (prefers-reduced-motion: reduce) {
  .golf-workspace,
  .golf-workspace *,
  .golf-workspace *::before,
  .golf-workspace *::after {
    scroll-behavior: auto !important;
    animation: none !important;
    transition: none !important;
  }
  .golf-view-tab:active,
  .golf-segments button:active,
  .golf-display-control button:active { transform: none; }
}
