:root {
  --ink: #173225;
  --muted: #5e7164;
  --green-950: #0d3824;
  --green-850: #145132;
  --green-700: #1e7447;
  --green-600: #268654;
  --green-100: #e9f5ec;
  --fairway: #78b85a;
  --lime: #b8d857;
  --sand: #d7b76a;
  --water: #2d88c9;
  --paper: #fbfcf8;
  --white: #ffffff;
  --line: #d7e2d7;
  --danger: #a63d35;
  --warning: #b17718;
  --shadow: 0 16px 40px rgba(28, 64, 41, .12);
  --radius: 22px;
}
* { box-sizing: border-box; }
html { background: #edf3eb; color: var(--ink); font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; }
body { margin: 0; min-height: 100vh; background: radial-gradient(circle at 10% 0%, #f7fbf1 0, #edf3eb 44%, #e5eee3 100%); }
a { color: var(--green-700); text-decoration: none; }
button, input, select, textarea { font: inherit; }
button { cursor: pointer; }
.clubhouse-header { position: sticky; top: 0; z-index: 50; display: flex; align-items: center; justify-content: space-between; gap: 24px; min-height: 76px; padding: 12px clamp(18px, 4vw, 52px); background: rgba(250, 253, 247, .96); border-bottom: 1px solid rgba(30, 116, 71, .14); backdrop-filter: blur(14px); }
.brand { display: flex; align-items: center; gap: 12px; color: var(--green-950); }
.brand-mark { display: grid; place-items: center; width: 46px; height: 46px; border-radius: 16px; background: linear-gradient(145deg, var(--green-700), var(--green-950)); font-size: 24px; box-shadow: 0 8px 22px rgba(20, 81, 50, .25); }
.brand strong, .brand small { display: block; }
.brand strong { font-size: 1.05rem; letter-spacing: .01em; }
.brand small { color: var(--muted); font-weight: 700; }
.main-nav { display: flex; align-items: center; gap: 6px; flex-wrap: wrap; justify-content: flex-end; }
.main-nav > a, .nav-button { padding: 10px 12px; border: 0; border-radius: 12px; color: var(--green-950); background: transparent; font-weight: 750; }
.main-nav > a:hover, .nav-button:hover { background: var(--green-100); }
.inline-form { display: inline; margin: 0; }
.page-shell { width: min(1440px, calc(100% - 30px)); margin: 0 auto; padding: 30px 0 70px; }
.page-heading { display: flex; align-items: flex-end; justify-content: space-between; gap: 24px; margin: 8px 0 26px; }
.page-heading h1 { margin: 6px 0 7px; max-width: 900px; font-size: clamp(2rem, 5vw, 4rem); line-height: 1.02; letter-spacing: -.045em; color: var(--green-950); }
.page-heading p { margin: 0; max-width: 800px; color: var(--muted); font-size: 1.08rem; line-height: 1.55; }
.eyebrow, .card-kicker { color: var(--green-700); font-size: .78rem; font-weight: 900; letter-spacing: .14em; text-transform: uppercase; }
.card { background: rgba(255,255,255,.93); border: 1px solid rgba(30, 116, 71, .15); border-radius: var(--radius); box-shadow: var(--shadow); padding: clamp(20px, 3vw, 34px); }
.card h2, .card h3 { margin: 6px 0 10px; color: var(--green-950); }
.card p { color: var(--muted); line-height: 1.55; }
.notice { display: flex; gap: 10px; align-items: baseline; margin-bottom: 20px; padding: 14px 18px; border-radius: 14px; border: 1px solid; }
.notice strong { white-space: nowrap; }
.notice.error { background: #fff2ef; border-color: #efb9b3; color: #762a24; }
.notice.success { background: #edf9ef; border-color: #b8dfbf; color: #185a34; }
.button { display: inline-flex; align-items: center; justify-content: center; gap: 8px; min-height: 44px; padding: 10px 16px; border: 1px solid transparent; border-radius: 13px; font-weight: 850; transition: transform .16s ease, box-shadow .16s ease, background .16s ease; }
.button:hover:not(:disabled) { transform: translateY(-1px); }
.button:disabled { opacity: .55; cursor: not-allowed; }
.button.primary { color: white; background: linear-gradient(145deg, var(--green-600), var(--green-850)); box-shadow: 0 8px 20px rgba(25, 108, 65, .22); }
.button.secondary { color: var(--green-950); background: var(--green-100); border-color: #c9dfcb; }
.button.ghost { color: var(--green-950); background: #fff; border-color: var(--line); }
.button.danger { color: #fff; background: var(--danger); }
.button.small { min-height: 36px; padding: 7px 11px; border-radius: 10px; font-size: .88rem; }
.button.wide { width: 100%; }
.login-layout { min-height: calc(100vh - 160px); display: grid; grid-template-columns: minmax(0, 1.2fr) minmax(320px, .7fr); gap: clamp(26px, 6vw, 90px); align-items: center; }
.login-hero h1 { margin: 8px 0 18px; font-size: clamp(2.8rem, 7vw, 6rem); line-height: .96; letter-spacing: -.06em; color: var(--green-950); }
.login-hero p { max-width: 750px; color: var(--muted); font-size: 1.2rem; line-height: 1.65; }
.fairway-stripes { height: 170px; margin-top: 34px; border-radius: 40px 40px 120px 120px; background: repeating-linear-gradient(105deg, #73b454 0 38px, #83c361 38px 76px); clip-path: polygon(5% 14%, 95% 0, 77% 100%, 20% 88%); box-shadow: inset 0 16px 34px rgba(255,255,255,.2); }
.login-card { max-width: 480px; width: 100%; justify-self: end; }
.login-card h2 { font-size: 2rem; margin-bottom: 26px; }
label { display: grid; gap: 7px; color: var(--green-950); font-weight: 800; }
input, select, textarea { width: 100%; border: 1px solid #cbd9cc; border-radius: 12px; background: #fff; color: var(--ink); padding: 12px 13px; outline: none; }
input:focus, select:focus, textarea:focus { border-color: var(--green-600); box-shadow: 0 0 0 4px rgba(38, 134, 84, .12); }
.login-card label + label { margin-top: 16px; }
.login-card .button { margin-top: 22px; }
.password-field { position: relative; display: block; }
.password-field input { padding-right: 48px; }
.peek-button { position: absolute; top: 50%; right: 7px; transform: translateY(-50%); width: 36px; height: 36px; border: 0; border-radius: 10px; background: var(--green-100); }
.muted { color: var(--muted); font-size: .9rem; }
.optional { color: var(--muted); font-size: .78rem; font-weight: 600; }
.stats-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 16px; margin-bottom: 24px; }
.stat-card { display: grid; gap: 4px; min-height: 150px; padding: 23px; border-radius: 20px; background: linear-gradient(150deg, #fff, #eef7ec); border: 1px solid #d2e2d3; box-shadow: 0 12px 30px rgba(30, 78, 46, .08); }
.stat-card span { color: var(--muted); font-weight: 800; }
.stat-card strong { font-size: 3rem; color: var(--green-850); line-height: 1; }
.stat-card small { align-self: end; color: var(--muted); }
.provider-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 20px; }
.provider-grid.two { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.provider-card { display: flex; flex-direction: column; gap: 16px; padding: 26px; border-radius: var(--radius); background: rgba(255,255,255,.94); border: 1px solid #d7e3d6; box-shadow: var(--shadow); }
.provider-card.recommended { border: 2px solid var(--green-600); background: linear-gradient(155deg, #ffffff 0, #f0f8ed 100%); }
.provider-icon { display: grid; place-items: center; width: 54px; height: 54px; border-radius: 17px; background: var(--green-100); font-size: 28px; }
.badge { display: inline-block; padding: 5px 9px; border-radius: 999px; color: white; background: var(--green-700); font-size: .73rem; font-weight: 900; letter-spacing: .04em; text-transform: uppercase; }
.badge.secondary { color: var(--green-950); background: #dcebd9; }
.provider-card h2 { margin: 6px 0 4px; font-size: 1.55rem; }
.provider-card p { margin: 0; }
.provider-status { display: flex; justify-content: space-between; gap: 12px; align-items: baseline; padding: 12px 0; border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); }
.provider-status span { text-align: right; color: var(--muted); font-size: .88rem; }
.provider-lock { padding: 12px; border-radius: 12px; background: #fff4dc; color: #734e0f; font-weight: 750; }
.quota-meter { height: 10px; overflow: hidden; border-radius: 99px; background: #dfe9df; }
.quota-meter > div { height: 100%; background: linear-gradient(90deg, var(--green-600), var(--lime)); border-radius: inherit; }
.quota-chip { display: grid; place-items: center; min-width: 88px; padding: 12px; border-radius: 16px; background: var(--green-100); }
.quota-chip strong { font-size: 1.25rem; }
.quota-chip span { color: var(--muted); font-size: .75rem; }
.quota-chip.locked { background: #fff2df; color: #7a4d0b; }
.compact-card, .danger-zone { margin-top: 22px; display: flex; align-items: center; justify-content: space-between; gap: 20px; }
.status-pill { display: inline-flex; align-items: center; padding: 5px 9px; border-radius: 999px; background: #e9eeea; color: #536359; font-size: .76rem; font-weight: 900; text-transform: uppercase; }
.status-pill.complete, .status-pill.saved, .status-pill.review { background: #dff3e3; color: #1a6437; }
.status-pill.failed { background: #fde5e1; color: #902f28; }
.status-pill.running, .status-pill.scanning, .status-pill.queued { background: #fff0cc; color: #815b0d; }
.section-heading, .split-heading { display: flex; align-items: flex-end; justify-content: space-between; gap: 20px; margin: 34px 0 16px; }
.section-heading h2, .split-heading h2 { margin: 4px 0; font-size: 1.7rem; color: var(--green-950); }
.provider-search-card { margin-bottom: 30px; }
.search-row { display: grid; grid-template-columns: 1fr auto; gap: 12px; margin-top: 22px; }
.inline-status { min-height: 24px; margin-top: 12px; color: var(--muted); font-weight: 700; }
.inline-status.error { color: var(--danger); }
.inline-status.success { color: var(--green-700); }
.search-results { display: grid; gap: 12px; margin-top: 16px; }
.search-result { display: grid; grid-template-columns: 1fr auto; gap: 18px; align-items: center; padding: 16px; border-radius: 15px; border: 1px solid var(--line); background: #fdfefb; }
.search-result h3 { margin: 0 0 4px; }
.search-result p { margin: 0; }
.course-grid { display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: 18px; }
.course-card { display: flex; flex-direction: column; gap: 10px; padding: 22px; border-radius: 20px; background: #fff; border: 1px solid #d5e1d5; box-shadow: 0 10px 26px rgba(28, 70, 41, .08); }
.course-card-top, .course-meta { display: flex; justify-content: space-between; gap: 12px; color: var(--muted); font-size: .82rem; font-weight: 750; }
.course-card h3 { margin: 4px 0 0; font-size: 1.35rem; color: var(--green-950); }
.course-card p { margin: 0; color: var(--muted); }
.course-card .button { margin-top: auto; }
.empty-state { grid-column: 1 / -1; display: grid; justify-items: center; text-align: center; gap: 6px; padding: 44px; border: 1px dashed #b9cab9; border-radius: 20px; background: rgba(255,255,255,.55); color: var(--muted); }
.empty-state span { font-size: 2rem; }
.empty-state.small { padding: 18px; }
.scanner-card { display: grid; grid-template-columns: auto 1fr auto; align-items: center; gap: 22px; }
.scanner-icon { display: grid; place-items: center; width: 72px; height: 72px; border-radius: 22px; background: var(--green-100); font-size: 34px; }
.scanner-card form { display: flex; gap: 10px; align-items: center; }
.scanner-card input[type=file] { max-width: 330px; }
.review-card { margin-top: 22px; }
.review-card textarea { min-height: 420px; font: 13px/1.5 ui-monospace, SFMono-Regular, Menlo, monospace; }
.hidden { display: none !important; }
.button-row, .form-actions { display: flex; gap: 10px; flex-wrap: wrap; margin-top: 16px; }
.table-card { overflow-x: auto; background: #fff; border: 1px solid var(--line); border-radius: 18px; box-shadow: 0 10px 26px rgba(28, 70, 41, .07); }
table { width: 100%; border-collapse: collapse; min-width: 720px; }
th, td { padding: 14px 16px; text-align: left; border-bottom: 1px solid #e4ebe4; vertical-align: middle; }
th { color: var(--green-850); background: #f3f8f1; font-size: .78rem; letter-spacing: .05em; text-transform: uppercase; }
.form-grid { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 16px; }
.form-grid.compact { grid-template-columns: repeat(3, minmax(0,1fr)); }
.form-grid .form-actions, .form-grid .checkbox-stack { grid-column: 1 / -1; }
.checkbox-stack { display: flex; gap: 18px; flex-wrap: wrap; }
.check { display: flex; grid-template-columns: auto 1fr; align-items: center; gap: 8px; }
.check input { width: auto; }
.stack-form { display: grid; gap: 16px; }
.narrow-card { max-width: 680px; }
.danger-zone { padding: 20px 24px; border: 1px solid #e8b6b0; border-radius: 18px; background: #fff4f2; }
.course-detail-grid { display: grid; grid-template-columns: 1.2fr .8fr; gap: 20px; }
.tee-panel { border: 1px solid var(--line); border-radius: 15px; padding: 0 14px; margin-top: 12px; }
.tee-panel summary { display: flex; justify-content: space-between; gap: 12px; padding: 14px 0; cursor: pointer; }
.tee-panel summary span { color: var(--muted); }
.hole-strip { display: grid; grid-template-columns: repeat(9, minmax(78px,1fr)); gap: 8px; padding: 0 0 14px; overflow-x: auto; }
.hole-strip > div { display: grid; gap: 2px; padding: 10px; border-radius: 12px; background: #f0f6ee; }
.hole-strip span { color: var(--green-700); font-weight: 900; }
.hole-strip strong { font-size: 1.15rem; }
.hole-strip small { color: var(--muted); white-space: nowrap; }
.layer-lab { margin-top: 20px; }
.layer-grid { display: grid; gap: 8px; }
.layer-row { display: grid; grid-template-columns: minmax(180px,1fr) 100px 100px minmax(150px,.8fr); gap: 12px; align-items: center; padding: 12px 14px; border-radius: 13px; background: #f4f8f2; border: 1px solid #e0e9df; }
.layer-row label { font-size: .82rem; }
.layer-row input[type=color] { height: 38px; padding: 3px; }
.switch-line { display: flex; grid-template-columns: auto 1fr; align-items: center; gap: 10px; font-size: .96rem !important; }
.switch-line input { width: auto; }
.course-map { height: 620px; border-radius: 18px; overflow: hidden; border: 1px solid var(--line); }
.attribution { font-size: .82rem; }
code { padding: 2px 6px; border-radius: 6px; background: #edf2ec; }

@media (max-width: 1050px) {
  .stats-grid { grid-template-columns: repeat(2, minmax(0,1fr)); }
  .provider-grid, .course-grid { grid-template-columns: repeat(2, minmax(0,1fr)); }
  .course-detail-grid { grid-template-columns: 1fr; }
  .scanner-card { grid-template-columns: auto 1fr; }
  .scanner-card form { grid-column: 1 / -1; }
}
@media (max-width: 760px) {
  .clubhouse-header { position: static; align-items: flex-start; flex-direction: column; }
  .main-nav { justify-content: flex-start; }
  .page-shell { width: min(100% - 20px, 1440px); padding-top: 20px; }
  .page-heading, .section-heading, .split-heading { align-items: flex-start; flex-direction: column; }
  .login-layout { grid-template-columns: 1fr; }
  .login-hero h1 { font-size: clamp(2.6rem, 15vw, 4.8rem); }
  .login-card { justify-self: stretch; }
  .fairway-stripes { height: 100px; }
  .stats-grid, .provider-grid, .provider-grid.two, .course-grid { grid-template-columns: 1fr; }
  .search-row, .search-result { grid-template-columns: 1fr; }
  .form-grid, .form-grid.compact { grid-template-columns: 1fr; }
  .scanner-card { grid-template-columns: 1fr; }
  .scanner-card form { display: grid; }
  .layer-row { grid-template-columns: 1fr 1fr; }
  .layer-row .switch-line, .layer-row label:last-child { grid-column: 1 / -1; }
  .course-map { height: 460px; }
}
.catalog-linker { margin: 16px 0 22px; padding: 15px; border-radius: 15px; background: #eef6ec; border: 1px solid #d6e4d5; }
.compact-search { margin-top: 8px; grid-template-columns: 1fr auto; }

/* Kintara Golf standalone player application v2.0 */
.mobile-golf-nav { display:none; }
.player-hero { position:relative; overflow:hidden; display:grid; gap:18px; padding:28px; border-radius:28px; color:#fff; background:linear-gradient(145deg,#0d3824,#1d7447 70%,#6eab4d); box-shadow:0 18px 44px rgba(13,56,36,.24); }
.player-hero::after { content:""; position:absolute; right:-60px; bottom:-90px; width:260px; height:260px; border-radius:50%; border:26px solid rgba(255,255,255,.10); }
.player-hero h1 { margin:0; font-size:clamp(2rem,7vw,4rem); line-height:1.02; }
.player-hero p { max-width:680px; margin:0; color:rgba(255,255,255,.84); font-size:1.05rem; }
.hero-actions { display:flex; gap:12px; flex-wrap:wrap; }
.button.sunny { background:#fff; color:var(--green-950); }
.button.ghost-light { background:rgba(255,255,255,.12); color:#fff; border:1px solid rgba(255,255,255,.25); }
.player-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px; margin-top:22px; }
.golf-action-card { display:flex; flex-direction:column; gap:10px; min-height:190px; padding:22px; border-radius:24px; background:#fff; border:1px solid var(--line); box-shadow:var(--shadow); text-decoration:none; color:var(--ink); }
.golf-action-card .icon { font-size:2rem; }
.golf-action-card h2 { margin:0; color:var(--green-950); }
.golf-action-card p { margin:0; color:var(--muted); }
.golf-action-card strong { margin-top:auto; color:var(--green-700); }
.active-round-card { display:grid; grid-template-columns:1fr auto; gap:18px; align-items:center; margin-top:22px; padding:22px; border-radius:24px; background:linear-gradient(140deg,#fff,#eef7ec); border:2px solid #60ad6d; box-shadow:var(--shadow); }
.round-badge { display:inline-flex; padding:5px 9px; border-radius:999px; background:#dff3e3; color:#176637; font-size:.76rem; font-weight:900; text-transform:uppercase; }
.round-setup-layout { display:grid; grid-template-columns:minmax(0,1.15fr) minmax(320px,.85fr); gap:20px; align-items:start; }
.phone-card { padding:22px; border-radius:24px; background:#fff; border:1px solid var(--line); box-shadow:var(--shadow); }
.phone-card h2 { margin-top:0; }
.step-number { display:grid; place-items:center; width:34px; height:34px; border-radius:50%; background:var(--green-700); color:#fff; font-weight:900; }
.step-heading { display:flex; align-items:center; gap:10px; margin-bottom:14px; }
.course-select-grid { display:grid; gap:10px; }
.player-picker { display:grid; gap:10px; max-height:380px; overflow:auto; }
.player-choice { display:grid; grid-template-columns:auto 48px 1fr auto; align-items:center; gap:12px; padding:12px; border-radius:16px; background:#f4f8f2; border:1px solid #dce7db; }
.player-choice input { width:22px; height:22px; }
.avatar { display:grid; place-items:center; width:46px; height:46px; border-radius:15px; color:white; background:linear-gradient(145deg,#287ed8,#164c9f); font-weight:900; font-size:1.2rem; }
.guest-box { display:grid; gap:10px; padding:16px; border-radius:18px; background:#fff8e8; border:1px solid #ead3a2; }
.guest-box strong { color:#76530c; }
.round-summary { position:sticky; top:94px; }
.round-summary-list { display:grid; gap:10px; margin:16px 0; }
.round-summary-list div { display:flex; justify-content:space-between; gap:14px; padding-bottom:10px; border-bottom:1px solid var(--line); }
.round-live-shell { max-width:900px; margin:0 auto; padding-bottom:110px; }
.live-round-header { display:grid; grid-template-columns:1fr auto; gap:14px; align-items:center; margin-bottom:14px; }
.live-round-header h1 { margin:0; font-size:clamp(1.7rem,7vw,2.7rem); }
.hole-pill { min-width:120px; padding:12px 14px; border-radius:18px; background:var(--green-950); color:#fff; text-align:center; }
.caddie-hero { display:grid; grid-template-columns:1fr 1fr; border-radius:26px; overflow:hidden; color:#fff; background:#071b12; box-shadow:var(--shadow); }
.caddie-hero > div { padding:20px; }
.caddie-hero > div + div { border-left:1px solid rgba(255,255,255,.13); }
.caddie-hero span { display:block; color:#9fb4a6; font-size:.75rem; font-weight:900; letter-spacing:.12em; text-transform:uppercase; }
.caddie-hero strong { display:block; margin-top:6px; font-size:clamp(2rem,9vw,3.5rem); color:#68e29a; }
.caddie-hero .plays strong { color:#fff; }
.caddie-adjustment { color:#a8baae; font-size:.85rem; }
.round-tabs { display:flex; gap:8px; margin:14px 0; padding:7px; border-radius:18px; background:#eaf2e8; overflow:auto; }
.round-tabs button { flex:1; min-width:100px; border:0; border-radius:13px; padding:11px; background:transparent; color:var(--green-950); font-weight:900; }
.round-tabs button.active { background:#fff; box-shadow:0 5px 14px rgba(24,67,39,.12); }
.round-panel { display:none; }
.round-panel.active { display:block; }
.caddie-input-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
.caddie-result-list { display:grid; gap:8px; margin-top:16px; }
.caddie-result-list div { display:flex; justify-content:space-between; gap:14px; padding:10px 0; border-bottom:1px solid var(--line); }
.score-player-card { margin-bottom:14px; padding:16px; border-radius:20px; background:#fff; border:1px solid var(--line); box-shadow:0 8px 22px rgba(28,70,41,.07); }
.score-player-top { display:flex; justify-content:space-between; align-items:center; gap:12px; margin-bottom:12px; }
.score-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:10px; }
.stat-toggle-row { display:flex; flex-wrap:wrap; gap:10px; margin-top:10px; }
.tri-toggle { border:1px solid var(--line); background:#f4f8f2; border-radius:999px; padding:8px 12px; font-weight:800; }
.tri-toggle.yes { background:#dff3e3; color:#1b6738; }
.tri-toggle.no { background:#fde8e3; color:#8f342b; }
.live-map { height:520px; border-radius:22px; overflow:hidden; background:linear-gradient(145deg,#dce9d8,#b4d19f); border:1px solid var(--line); }
.map-empty { display:grid; place-items:center; height:100%; padding:30px; text-align:center; color:var(--muted); }
.bag-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; }
.club-card { display:grid; grid-template-columns:1fr auto; gap:12px; padding:18px; border-radius:20px; background:#fff; border:1px solid var(--line); }
.club-distance { text-align:right; }
.club-distance strong { display:block; font-size:1.8rem; color:var(--green-700); }
.location-card { background:linear-gradient(145deg,#f6fbf4,#e4f2df); }
.location-readout { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:10px; margin:14px 0; }
.location-readout div { padding:12px; border-radius:14px; background:#fff; border:1px solid var(--line); }
.location-readout span { display:block; color:var(--muted); font-size:.78rem; }
.admin-launch { margin-top:24px; padding:18px; border-radius:20px; background:#102f20; color:#fff; }
.admin-launch a { color:#c8f39a; font-weight:900; }
.region-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; }
.region-card { padding:20px; border-radius:20px; background:#fff; border:1px solid var(--line); }
.region-card.ready { border-color:#63b678; }
.region-card.downloading { border-color:#e2b34d; }
.region-progress { height:10px; margin:12px 0; border-radius:99px; background:#e5ece3; overflow:hidden; }
.region-progress > div { height:100%; background:linear-gradient(90deg,#268654,#a6cf52); }

@media (max-width: 850px) {
  body.signed-in { padding-bottom:84px; }
  .clubhouse-header { position:static; padding:14px 18px; }
  .clubhouse-header .main-nav { display:none; }
  .mobile-golf-nav { position:fixed; z-index:1000; display:grid; grid-template-columns:repeat(5,1fr); left:10px; right:10px; bottom:max(8px,env(safe-area-inset-bottom)); padding:7px; border:1px solid rgba(23,50,37,.14); border-radius:22px; background:rgba(255,255,255,.96); box-shadow:0 14px 34px rgba(14,50,29,.22); backdrop-filter:blur(14px); }
  .mobile-golf-nav a { display:grid; justify-items:center; gap:2px; padding:7px 3px; border-radius:15px; color:#4e6255; text-decoration:none; font-size:.72rem; }
  .mobile-golf-nav a span { font-size:1.25rem; }
  .mobile-golf-nav a.active { color:#fff; background:var(--green-700); }
  .page-shell { width:min(100% - 18px,1440px); padding-top:14px; }
  .player-grid, .bag-grid, .region-grid { grid-template-columns:1fr; }
  .round-setup-layout { grid-template-columns:1fr; }
  .round-summary { position:static; }
  .active-round-card { grid-template-columns:1fr; }
  .live-round-header { align-items:start; }
  .caddie-input-grid { grid-template-columns:1fr 1fr; }
  .score-grid { grid-template-columns:repeat(3,1fr); }
  .location-readout { grid-template-columns:1fr; }
}
@media (max-width: 520px) {
  .brand small { display:none; }
  .page-shell { width:min(100% - 12px,1440px); }
  .player-hero, .phone-card { padding:18px; border-radius:22px; }
  .caddie-hero > div { padding:15px; }
  .caddie-hero strong { font-size:2rem; }
  .score-grid { grid-template-columns:1fr 1fr; }
  .score-grid label:last-child { grid-column:1/-1; }
  .caddie-input-grid { grid-template-columns:1fr 1fr; }
  .player-choice { grid-template-columns:auto 42px 1fr; }
  .player-choice small { grid-column:3; }
}
.kintara-modal-backdrop { position:fixed; z-index:2000; inset:0; display:grid; place-items:center; padding:18px; background:rgba(6,28,17,.68); backdrop-filter:blur(8px); }
.kintara-dialog { width:min(100%,520px); padding:26px; border-radius:28px; background:#fff; color:var(--ink); box-shadow:0 30px 80px rgba(0,0,0,.3); }
.kintara-dialog h2 { margin:8px 0; font-size:1.8rem; }
.dialog-icon { display:grid; place-items:center; width:58px; height:58px; margin-bottom:14px; border-radius:18px; background:var(--green-100); font-size:30px; }

.skins-board{margin:14px 0;padding:14px;border-radius:18px;background:#f4f8f1;border:1px solid #cfe0c8}.skins-board h3{margin:0 0 8px;color:#123f2a}.skins-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:9px 0;border-bottom:1px solid #dce8d8}.skins-row:last-of-type{border-bottom:0}.skins-row span{font-weight:750}.skins-row strong{color:#126b3a;text-align:right}.muted{color:#65736b}

.course-admin-card{margin-top:18px}.danger-zone{margin-top:18px;border:1px solid #e5b9b1;border-radius:18px;background:#fff8f6;padding:14px}.danger-zone summary{font-weight:850;color:#8d2f25;cursor:pointer}.danger-zone form{display:grid;gap:12px;margin-top:12px}.full-width{grid-column:1/-1}

/* Kintara Golf Standalone v2.1 — separated player/admin shells and phone-first live round */
:root {
  --player-green:#0f4f2f;
  --player-green-2:#1f7a48;
  --player-lime:#b7e36a;
  --player-cream:#f7f5eb;
  --player-gold:#d6ad50;
  --player-blue:#2587d9;
  --player-pink:#e54692;
}
body.player-app-shell { min-height:100vh; background:linear-gradient(180deg,#f6f7ef 0,#edf3e9 100%); color:var(--ink); }
.player-topbar { position:sticky; z-index:900; top:0; display:flex; align-items:center; justify-content:space-between; gap:16px; min-height:72px; padding:10px clamp(14px,3vw,34px); background:rgba(255,255,255,.97); border-bottom:1px solid #dce6d8; box-shadow:0 8px 24px rgba(18,65,36,.07); backdrop-filter:blur(14px); }
.player-brand { display:flex; align-items:center; gap:11px; color:var(--player-green); text-decoration:none; }
.player-brand-mark { display:grid; place-items:center; width:44px; height:44px; border-radius:15px; background:linear-gradient(145deg,#0f5e36,#2a8a50); color:#fff; font-size:1.4rem; box-shadow:0 8px 16px rgba(15,79,47,.2); }
.player-brand strong,.player-brand small { display:block; }.player-brand strong{font-size:1.08rem}.player-brand small{color:#6e7b71;font-size:.73rem;margin-top:1px}
.player-account-menu { display:flex; align-items:center; gap:9px; }.player-avatar{display:grid;place-items:center;width:38px;height:38px;border-radius:13px;background:#e2f0df;color:var(--player-green);font-weight:950}.player-account-copy strong,.player-account-copy small{display:block}.player-account-copy small{color:#758078;font-size:.72rem}.admin-entry-link{padding:8px 11px;border-radius:999px;background:#e7f2e4;color:var(--player-green);font-size:.76rem;font-weight:900;text-decoration:none}.icon-button{display:grid;place-items:center;width:38px;height:38px;border:1px solid #d9e3d6;border-radius:12px;background:#fff;color:#4d5c51;font-size:1.1rem}.player-page-shell{width:min(100% - 28px,1180px);margin:0 auto;padding:24px 0 112px}
.player-hero-v2{position:relative;overflow:hidden;grid-template-columns:minmax(0,1.6fr) minmax(220px,.5fr);background:radial-gradient(circle at 84% 20%,rgba(183,227,106,.28),transparent 30%),linear-gradient(135deg,#0a3b25,#17663b 65%,#237b48);}.player-hero-v2:after{content:"";position:absolute;width:280px;height:280px;border:38px solid rgba(255,255,255,.045);border-radius:50%;right:-80px;bottom:-130px}.hero-copy,.hero-actions{position:relative;z-index:2}.eyebrow.light{color:#c9efb3}.hero-actions-stack{display:grid;align-content:center;min-width:220px}.hero-main-action{font-size:1.04rem;padding:14px 18px}.hero-status-row{display:flex;flex-wrap:wrap;gap:8px;margin-top:5px}.hero-status{padding:7px 10px;border-radius:999px;background:rgba(255,255,255,.11);border:1px solid rgba(255,255,255,.15);font-size:.76rem;font-weight:850}.hero-status.ready:before{content:"✓ ";color:#b7ed79}.hero-status.needs:before{content:"! ";color:#ffd678}
.player-callout{display:flex;justify-content:space-between;align-items:center;gap:18px;margin-top:18px;padding:16px 18px;border:1px solid #c9dcc5;border-radius:20px;background:#fff;box-shadow:0 8px 20px rgba(22,64,36,.06)}.player-callout>div{display:flex;gap:12px;align-items:center}.player-callout p{margin:3px 0 0;color:var(--muted)}.callout-icon{display:grid;place-items:center;min-width:46px;height:46px;border-radius:15px;background:#e8f3e4;font-size:1.4rem}.warning-callout{background:#fff9e9;border-color:#e8d49e}.warning-callout .callout-icon{background:#fff0bf}
.active-round-card-v2{border:0;background:linear-gradient(120deg,#fff,#eaf5e7);box-shadow:0 12px 34px rgba(19,74,38,.1)}.active-round-main h2{margin:7px 0 3px}.player-summary-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:13px;margin:18px 0}.player-summary-grid article{padding:16px 18px;border:1px solid #dbe5d7;border-radius:20px;background:#fff;box-shadow:0 7px 18px rgba(20,66,35,.05)}.player-summary-grid span,.player-summary-grid small{display:block;color:#748078}.player-summary-grid span{font-size:.72rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.player-summary-grid strong{display:block;margin:3px 0;font-size:1.65rem;color:var(--player-green)}.player-grid-v2{grid-template-columns:repeat(4,1fr)}.player-grid-v2 .golf-action-card{min-height:220px;transition:transform .16s ease,box-shadow .16s ease}.player-grid-v2 .golf-action-card:hover{transform:translateY(-3px);box-shadow:0 16px 34px rgba(18,69,35,.12)}.feature-play{background:linear-gradient(145deg,#fff,#eef8e9);border-color:#b9d8b0}.section-heading-tight{margin-top:20px;margin-bottom:10px}.recent-round-grid{grid-template-columns:repeat(3,1fr)}
.player-page-heading{align-items:flex-end}.round-setup-v2{position:relative}.setup-progress{grid-column:1/-1;display:grid;grid-template-columns:repeat(4,1fr);gap:7px;padding:7px;border:1px solid #dbe5d8;border-radius:17px;background:#fff}.setup-progress span{padding:9px;text-align:center;border-radius:11px;color:#718076;font-size:.77rem;font-weight:900}.setup-progress span.active{background:#e5f3df;color:var(--player-green)}.setup-step .step-heading{align-items:flex-start}.setup-step .step-heading h2,.setup-step .step-heading p{margin:0}.setup-step .step-heading p{color:var(--muted);font-size:.86rem;margin-top:3px}.holes-choice{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;padding:0;border:0;margin:15px 0 0}.holes-choice legend{grid-column:1/-1;margin-bottom:7px;font-weight:900}.holes-choice label{position:relative}.holes-choice input{position:absolute;opacity:0}.holes-choice span{display:grid;gap:2px;padding:12px;border:2px solid #dce6d9;border-radius:15px;background:#f8faf5;text-align:center}.holes-choice small{color:#748079}.holes-choice input:checked+span{border-color:#2b8a50;background:#e5f4e0;color:#0f5a32}.feature-switch{display:flex;align-items:center;gap:12px;padding:15px;border:1px solid #d9e5d5;border-radius:17px;background:#f7faf5}.feature-switch input{width:24px;height:24px}.feature-switch span strong,.feature-switch span small{display:block}.feature-switch span small{color:var(--muted)}.skins-setup-box{margin-top:12px;padding:14px;border-radius:16px;background:#f4f8f1}.round-summary-v2{border:2px solid #94c38a}.start-round-button{padding:15px;font-size:1rem}.dialog-action-stack{display:grid;gap:9px;margin-top:18px}.large-empty-state{min-height:360px;display:grid;place-items:center;align-content:center;text-align:center}
.round-live-v2{max-width:980px}.live-round-header-v2{position:sticky;z-index:750;top:82px;margin:-3px 0 12px;padding:9px;border:1px solid #dce5d8;border-radius:19px;background:rgba(255,255,255,.96);box-shadow:0 8px 24px rgba(15,61,32,.09);backdrop-filter:blur(12px)}.hole-navigation{display:grid;grid-template-columns:44px minmax(0,1fr) 44px;gap:8px;align-items:center}.hole-nav-button{width:44px;height:44px;border:0;border-radius:14px;background:#e7f2e4;color:var(--player-green);font-size:1.8rem;line-height:1}.hole-nav-button:disabled{opacity:.35}.hole-select-form label span{display:block;padding-left:4px;color:#68776d;font-size:.7rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.hole-select-form select{height:42px;padding:4px 34px 4px 4px;border:0;background:transparent;color:var(--player-green);font-size:1rem;font-weight:950}.round-status-cluster{display:flex;justify-content:center;align-items:center;gap:8px;grid-column:1/-1;padding-top:3px}.round-status-cluster small{color:#758177}.caddie-hero-v2{margin-top:8px;background:linear-gradient(135deg,#051c11,#0d3d24)}.yardage-dashboard{display:grid;grid-template-columns:repeat(4,1fr);gap:9px;margin:12px 0}.yardage-dashboard article{padding:13px 10px;border:1px solid #dbe7d8;border-radius:17px;background:#fff;text-align:center;box-shadow:0 5px 14px rgba(21,67,36,.05)}.yardage-dashboard span,.yardage-dashboard small{display:block;color:#748078}.yardage-dashboard span{font-size:.7rem;text-transform:uppercase;font-weight:900;letter-spacing:.08em}.yardage-dashboard strong{display:block;margin:2px 0;font-size:1.65rem;color:var(--player-green)}.card-title-row{display:flex;justify-content:space-between;align-items:flex-start;gap:14px}.card-title-row h2,.card-title-row p{margin:0}.caddie-control-card,.shot-tracker-card{margin-top:12px}.caddie-advanced{margin-top:14px;border-top:1px solid #e1e8de;padding-top:12px}.caddie-advanced summary,.recent-shot-list summary{cursor:pointer;color:var(--player-green);font-weight:900}.caddie-advanced[open] summary{margin-bottom:12px}.shot-tracker-card #live-shot-distance{font-size:1.5rem;color:var(--player-green)}.shot-finish-fields{margin-top:12px}.button.danger.subtle{background:#fff4f1;color:#97382f;border:1px solid #ebc2ba}.recent-shot-list{margin-top:12px}.recent-shot-list div{display:flex;justify-content:space-between;padding:8px 0;border-bottom:1px solid #e2e9df}
.round-tabs-v2{position:fixed;z-index:950;left:50%;bottom:max(8px,env(safe-area-inset-bottom));transform:translateX(-50%);width:min(calc(100% - 18px),720px);display:grid;grid-template-columns:repeat(5,1fr);margin:0;padding:7px;border:1px solid #d1ded0;border-radius:22px;background:rgba(255,255,255,.97);box-shadow:0 16px 38px rgba(10,44,24,.24);backdrop-filter:blur(16px)}.round-tabs-v2 button{display:grid;justify-items:center;gap:2px;min-width:0;padding:7px 3px;border-radius:15px;font-size:.7rem}.round-tabs-v2 button span{font-size:1.15rem}.round-tabs-v2 button.active{background:var(--player-green);color:#fff}.round-panel{padding-bottom:9px}.autosave-label{padding:6px 9px;border-radius:999px;background:#e7f3e3;color:#176338;font-size:.72rem;font-weight:900}.score-player-top{justify-content:flex-start}.score-player-top>.status-pill{margin-left:auto}.full-scorecard-card{margin-bottom:14px;border:1px solid #dbe5d8;border-radius:21px;background:#fff;overflow:hidden;box-shadow:0 7px 20px rgba(19,65,34,.06)}.full-scorecard-heading{display:flex;justify-content:space-between;align-items:center;padding:14px 16px;background:#f4f8f1}.full-scorecard-heading>div{display:flex;align-items:center;gap:10px}.full-scorecard-heading>div:last-child{display:grid;grid-template-columns:auto auto;column-gap:8px;text-align:right}.full-scorecard-heading>div:last-child span{grid-row:1/3;color:#768078;font-size:.7rem;text-transform:uppercase}.full-scorecard-heading>div:last-child strong{font-size:1.5rem;color:var(--player-green)}.full-scorecard-heading>div:last-child small{color:#66746a}.scorecard-scroll{overflow-x:auto;overscroll-behavior-inline:contain}.scorecard-table{width:max-content;min-width:100%;border-collapse:collapse}.scorecard-table th,.scorecard-table td{min-width:52px;padding:9px 6px;border:1px solid #e1e8de;text-align:center}.scorecard-table th{background:#f3f7f0;color:#536258}.scorecard-table th.current{background:#dff0d9;color:#0b5c31}.scorecard-table input{width:42px;min-height:38px;padding:4px;border-radius:9px;text-align:center}.scorecard-table input.save-error{border-color:#c6473c;background:#fff0ed}.par-row td{color:#68756c;font-weight:800}.scorecard-summary-row{display:flex;justify-content:space-around;gap:10px;padding:11px;color:#647168;font-size:.78rem}.round-player-summary-list{display:grid;gap:8px}.round-player-summary-list>div{display:flex;justify-content:space-between;align-items:center;padding:12px;border-radius:15px;background:#f4f8f1}.round-player-summary-list span small,.round-player-summary-list strong small{display:block;color:#718078;font-size:.72rem}.round-player-summary-list strong{text-align:right}.round-danger-actions{display:grid;gap:9px;margin-top:18px}
.map-card-v2{padding:15px}.osm-attribution{font-size:.7rem;color:#76827a}.map-mode-toolbar{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;margin:12px 0 8px;padding:5px;border-radius:14px;background:#e9f0e6}.map-mode-toolbar button{border:0;border-radius:10px;padding:9px;background:transparent;color:#526157;font-weight:900}.map-mode-toolbar button.active{background:#fff;color:var(--player-green);box-shadow:0 4px 12px rgba(22,63,34,.11)}.map-action-row{display:flex;align-items:center;gap:8px;margin-bottom:8px}.map-action-button{border:1px solid #cbdac7;border-radius:12px;padding:8px 10px;background:#fff;color:var(--player-green);font-weight:900}.map-action-row span{margin-left:auto;color:#718078;font-size:.72rem;text-align:right}.live-map-v2{height:min(64vh,620px);min-height:430px}.map-legend{display:flex;flex-wrap:wrap;gap:13px;padding:10px 4px 0;color:#667369;font-size:.75rem}.map-legend span{display:flex;align-items:center;gap:6px}.map-legend i{display:block;width:13px;height:13px;border-radius:50%}.legend-player{background:#1984e6;border:3px solid #fff;box-shadow:0 0 0 1px #1984e6}.legend-ball{background:#fff;border:3px solid #21cdec}.legend-flag{background:#f34594}.golf-map-player,.golf-map-ball,.golf-map-flag{display:grid;place-items:center;user-select:none}.golf-map-player{width:26px;height:26px;border:4px solid #fff;border-radius:50%;background:#1984e6;color:#fff;box-shadow:0 3px 12px rgba(0,0,0,.35);font-size:.85rem}.golf-map-ball{width:28px;height:28px;border:3px solid #24d6f2;border-radius:50%;background:radial-gradient(circle at 35% 30%,#fff,#e6e6e6 72%);color:#a9a9a9;box-shadow:0 3px 10px rgba(0,0,0,.32);cursor:grab}.golf-map-flag{width:30px;height:36px;color:#f34594;font-size:2rem;text-shadow:0 2px 3px #fff,0 2px 7px rgba(0,0,0,.4)}
.round-history-list{display:grid;gap:13px}.round-history-row{display:grid;grid-template-columns:76px minmax(0,1fr) 105px auto;gap:16px;align-items:center;padding:16px;border:1px solid #dbe5d8;border-radius:21px;background:#fff;box-shadow:0 7px 20px rgba(21,67,36,.05)}.round-history-date{text-align:center;border-right:1px solid #e3e9e0}.round-history-date strong,.round-history-date span{display:block}.round-history-date strong{font-size:1.55rem;color:var(--player-green)}.round-history-date span{font-size:.72rem;color:#78827b}.round-history-main h2,.round-history-main p{margin:3px 0}.round-history-main p{color:var(--muted)}.round-history-score{text-align:right}.round-history-score span,.round-history-score small{display:block;color:#758078}.round-history-score strong{font-size:1.8rem;color:var(--player-green)}
body.admin-app-shell{min-height:100vh;background:#eef1eb}.admin-sidebar{position:fixed;z-index:1000;inset:0 auto 0 0;width:250px;display:flex;flex-direction:column;padding:18px;background:linear-gradient(180deg,#153322,#0b2115);color:#fff}.admin-brand{display:flex;align-items:center;gap:11px;padding:8px;color:#fff;text-decoration:none}.admin-brand>span{font-size:1.7rem}.admin-brand strong,.admin-brand small{display:block}.admin-brand small{color:#aac4b1}.admin-navigation{display:grid;gap:5px;margin-top:22px}.admin-navigation a{display:flex;gap:11px;align-items:center;padding:11px 12px;border-radius:12px;color:#c8d9ce;text-decoration:none;font-weight:800}.admin-navigation a.active,.admin-navigation a:hover{background:rgba(255,255,255,.11);color:#fff}.admin-sidebar-footer{display:grid;gap:8px;margin-top:auto}.admin-page-shell{width:min(calc(100% - 290px),1260px);margin-left:270px;padding:28px 0 60px}.admin-mobile-header{display:none}.admin-app-shell .mobile-golf-nav{display:none!important}
.auth-app-shell{min-height:100vh;background:radial-gradient(circle at 70% 20%,rgba(183,227,106,.24),transparent 28%),linear-gradient(145deg,#092a1a,#155c36)}.auth-page-shell{width:min(100% - 24px,520px);margin:0 auto;padding:6vh 0}
@media(max-width:1000px){.player-grid-v2{grid-template-columns:repeat(2,1fr)}.recent-round-grid{grid-template-columns:repeat(2,1fr)}.admin-sidebar{width:220px}.admin-page-shell{width:min(calc(100% - 250px),1260px);margin-left:235px}}
@media(max-width:850px){.player-topbar{position:sticky;min-height:62px;padding:9px 12px}.player-account-copy{display:none}.admin-entry-link{font-size:0;padding:8px}.admin-entry-link:after{content:"Admin";font-size:.72rem}.player-page-shell{width:min(100% - 14px,1180px);padding-top:12px}.player-hero-v2{grid-template-columns:1fr;padding:20px}.hero-actions-stack{min-width:0}.player-summary-grid{grid-template-columns:1fr 1fr}.player-summary-grid article:last-child{grid-column:1/-1}.live-round-header-v2{top:70px}.yardage-dashboard{grid-template-columns:repeat(4,1fr)}.round-history-row{grid-template-columns:56px minmax(0,1fr) auto}.round-history-score{display:none}.admin-sidebar{display:none}.admin-mobile-header{position:sticky;z-index:900;top:0;display:flex;justify-content:space-between;padding:14px 16px;background:#153322;color:#fff}.admin-mobile-header a{color:#fff;text-decoration:none}.admin-page-shell{width:min(100% - 18px,1260px);margin:0 auto;padding-top:18px}.admin-app-shell .page-heading{align-items:flex-start}}
@media(max-width:620px){.player-brand small{display:none}.player-account-menu{gap:6px}.player-grid-v2,.recent-round-grid{grid-template-columns:1fr}.player-summary-grid{grid-template-columns:1fr 1fr}.setup-progress{grid-template-columns:repeat(4,1fr);overflow-x:auto}.setup-progress span{font-size:.66rem;padding:8px 3px}.holes-choice{grid-template-columns:1fr}.round-setup-v2{display:block}.round-summary-v2{margin-top:12px}.live-round-header-v2{top:63px}.round-status-cluster{font-size:.75rem}.caddie-hero-v2>div{padding:13px}.caddie-hero-v2 strong{font-size:1.8rem}.yardage-dashboard{grid-template-columns:repeat(2,1fr)}.yardage-dashboard strong{font-size:1.45rem}.caddie-input-grid{grid-template-columns:1fr 1fr}.round-tabs-v2{width:calc(100% - 12px)}.round-tabs-v2 button{font-size:.65rem}.live-map-v2{height:58vh;min-height:390px}.map-action-row{flex-wrap:wrap}.map-action-row span{width:100%;margin-left:0;text-align:left}.round-history-row{grid-template-columns:50px 1fr}.round-history-row>.button{grid-column:1/-1}.round-history-date{border-right:0}.player-callout{align-items:flex-start;flex-direction:column}.player-callout .button{width:100%}.scorecard-summary-row{justify-content:flex-start;overflow:auto}.scorecard-summary-row span{white-space:nowrap}.player-avatar{display:none}}
@media(max-width:390px){.player-brand strong{font-size:.96rem}.player-brand-mark{width:38px;height:38px}.player-summary-grid{grid-template-columns:1fr}.player-summary-grid article:last-child{grid-column:auto}.caddie-input-grid{grid-template-columns:1fr}.yardage-dashboard article{padding:10px 7px}.round-tabs-v2 button b{font-size:.62rem}}


/* Kintara Golf v2.2 developer GPS and live course yardages */
.developer-gps-card,.developer-help-card{align-self:start}.switch-row{display:flex!important;align-items:center;justify-content:space-between;gap:18px;padding:14px 15px;border:1px solid #cfe0ca;border-radius:16px;background:#f1f7ef}.switch-row span{display:grid;gap:3px}.switch-row small{color:#6b796f}.switch-row input{width:26px;height:26px;accent-color:#147a45}.golf-number-list{display:grid;gap:12px;padding-left:24px;color:#3e5145}.golf-number-list li{padding-left:5px}.player-callout.compact{margin-top:16px;padding:13px}
.legend-club{background:#f5c84c;border:2px solid #6f5712}.legend-bunker{background:#d9b665;border:2px solid #fff0b8}.legend-water{background:#2f81d3;border:2px solid #9ed5ff}
.golf-ball-marker-wrap,.golf-flag-marker-wrap{display:flex;flex-direction:column;align-items:center;pointer-events:auto}.golf-ball-marker-wrap{cursor:grab}.golf-ball-marker-wrap .golf-map-ball{position:relative}.golf-ball-marker-wrap .golf-map-ball:after{content:"";position:absolute;left:50%;top:100%;width:2px;height:12px;background:#24d6f2;transform:translateX(-50%)}
.golf-yardage-chip,.golf-yardage-marker{white-space:nowrap;border-radius:12px;background:rgba(5,28,17,.94);color:#fff;box-shadow:0 5px 15px rgba(0,0,0,.28);border:1px solid rgba(255,255,255,.7);font-family:inherit}.golf-yardage-chip{margin-bottom:5px;padding:5px 8px;text-align:center}.golf-yardage-chip strong,.golf-yardage-chip small{display:block}.golf-yardage-chip strong{font-size:.78rem}.golf-yardage-chip small{font-size:.55rem;color:#d9e8dc;text-transform:uppercase;letter-spacing:.06em}.golf-flag-marker-wrap .golf-map-flag{font-size:2.35rem;height:44px;line-height:1}.golf-yardage-marker{display:flex;align-items:center;gap:6px;padding:5px 7px;transform:translateY(-5px)}.golf-yardage-marker .yardage-icon{display:grid;place-items:center;min-width:21px;height:21px;padding:0 4px;border-radius:7px;background:#fff;color:#123b25;font-size:.65rem;font-weight:950}.golf-yardage-marker strong,.golf-yardage-marker small{display:block}.golf-yardage-marker strong{font-size:.72rem}.golf-yardage-marker small{font-size:.52rem;color:#dbe9df;text-transform:uppercase;letter-spacing:.05em}.golf-yardage-marker.green-front,.golf-yardage-marker.green-back{background:rgba(18,104,54,.95)}.golf-yardage-marker.bunker{background:rgba(116,82,18,.95)}.golf-yardage-marker.water{background:rgba(13,78,139,.95)}.golf-yardage-marker.club-carry{background:rgba(99,73,5,.96);border-color:#ffe68d}.golf-yardage-marker.club-carry .yardage-icon{background:#ffe68d}.status-pill.running{background:#dff6ea;color:#087241}
@media(max-width:620px){.golf-yardage-marker{padding:4px 6px}.golf-yardage-marker strong{font-size:.68rem}.golf-yardage-marker small{font-size:.48rem}.golf-yardage-chip{padding:4px 7px}.developer-gps-card .button-row .button{width:100%}}
