:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#0f1c14;--bg-elevated:#17281d;--bg-input:#1e3326;--line:#2a4433;--text:#eef4ef;--text-dim:#9fb4a6;--accent:#4ade80;--accent-dark:#16a34a;--under:#7dd3fc;--info:#7dd3fc;--over:#fca5a5;--danger:var(--score-birdie);--scrim:#0000008c;--score-eagle:#f2c14e;--score-eagle-ink:#14210f;--score-birdie:#e8402a;--score-birdie-ink:#fff;--score-par:#3b9ce8;--score-par-ink:#14210f;--score-bogey:#5bb85b;--score-bogey-ink:#14210f;--score-double:#8a8a8a;--score-double-ink:#fff;--score-triple:#1c1c1c;--score-triple-ink:#fff;--score-triple-gap:#8a8a8a;--scorecard-summary:#24402e;--tap:48px}:root[data-theme=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg:#eef2ea;--bg-elevated:#fff;--bg-input:#e6ede2;--line:#ccd8c7;--text:#14241a;--text-dim:#5a6f60;--accent:#15803d;--accent-dark:#15803d;--under:#0b6ea8;--info:#0b6ea8;--over:#b4342a;--danger:#b4342a;--scrim:#0f1c1466;--score-triple-gap:#eef0ec;--scorecard-summary:#dde7d8}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html,body{height:100%;margin:0}body{background:var(--bg);color:var(--text);overscroll-behavior:none;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-size:16px;line-height:1.4}#root{min-height:100%}button{font:inherit;color:inherit;cursor:pointer;background:0 0;border:none}.screen{height:100dvh;padding:env(safe-area-inset-top) env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left);flex-direction:column;display:flex;overflow:hidden}.app-header{border-bottom:1px solid var(--line);padding:16px 20px 12px}.app-header h1{letter-spacing:-.01em;margin:0;font-size:22px;font-weight:650}.brand-mark{align-items:center;gap:8px;display:inline-flex}.brand-mark svg{color:var(--accent);flex:none}.brand-mark-text em{color:var(--accent);font-style:normal}.setup-header-row{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.screen-header-row{align-items:center;gap:10px;display:flex}.screen-header-row h1{flex:1;min-width:0}.language-switcher{background:var(--bg-elevated);border-radius:10px;gap:4px;padding:3px;display:flex}.language-button{filter:grayscale(.75);opacity:.65;border-radius:8px;justify-content:center;align-items:center;width:40px;height:36px;display:flex}.language-button.selected{background:var(--bg-input);filter:none;opacity:1}.subtitle{color:var(--text-dim);margin:2px 0 0;font-size:14px}.content{overscroll-behavior:contain;flex-direction:column;flex:1;gap:24px;min-height:0;padding:20px;display:flex;overflow-y:auto}.app-footer{padding:12px 20px calc(12px + env(safe-area-inset-bottom));border-top:1px solid var(--line);background:var(--bg)}.footer-row{gap:10px;display:flex}.footer-row>button{flex:1}.section{flex-direction:column;gap:10px;display:flex}.card{background:var(--bg-elevated);border:1px solid var(--line);border-radius:14px;padding:14px}.section-title{text-transform:uppercase;letter-spacing:.06em;color:var(--text-dim);margin:0;font-size:13px;font-weight:600}.scorecard-title-row{justify-content:space-between;align-items:center;gap:10px;display:flex}.scorecard-control{flex:0 auto;gap:3px;padding:3px}.scorecard-control .segment{white-space:nowrap;min-height:34px;padding:0 9px;font-size:12px}.hint{color:var(--text-dim);margin:0;font-size:13px}.primary-button,.secondary-button{width:100%;min-height:var(--tap);border-radius:12px;font-size:17px;font-weight:600}.primary-button{background:var(--accent-dark);color:#fff}.primary-button:disabled{background:var(--bg-input);color:var(--text-dim)}.secondary-button{background:var(--bg-input);color:var(--text)}.link-button{color:var(--accent);min-height:var(--tap);align-self:center;padding:8px;font-size:15px;font-weight:550}.link-row{flex-wrap:wrap;justify-content:center;gap:8px 24px;display:flex}.pwa-install{text-align:center;flex-direction:column;align-items:center;gap:4px;margin-top:12px;display:flex}.pwa-install-button{padding-inline:12px}.pwa-install-benefit{max-width:440px}.pwa-install-help{box-sizing:border-box;border:1px solid var(--line);background:var(--bg-elevated);text-align:left;border-radius:12px;width:100%;padding:12px 14px}.pwa-install-help p{margin:4px 0 0}.pwa-install-help .link-button{padding-left:0}.file-input{display:none}.icon-button{width:var(--tap);height:var(--tap);background:var(--bg-elevated);border-radius:10px;flex:none;font-size:20px;line-height:1}.home-new-round{margin-top:4px}.home-section{flex-direction:column;gap:10px;display:flex}.home-section-head{justify-content:space-between;align-items:baseline;gap:12px;display:flex}.home-section-head h2,.home-section>h2{margin:0;font-size:15px;font-weight:650}.home-section-head .link-button{min-height:auto;padding:0}.home-round-list{flex-direction:column;gap:8px;display:flex}.home-card{text-align:left;background:var(--bg-input);border-radius:12px;flex-direction:column;gap:4px;padding:14px 16px;display:flex}.home-card-title{font-size:15px;font-weight:600}.home-card-meta{color:var(--text-dim);font-size:13px}.chip-meta{color:var(--text-dim);font-weight:500}.menu-backdrop{z-index:10;background:var(--scrim);animation:.15s ease-out menu-fade;display:flex;position:fixed;inset:0}.menu-drawer{box-sizing:border-box;width:82%;max-width:320px;height:100%;padding:calc(20px + env(safe-area-inset-top)) 16px calc(16px + env(safe-area-inset-bottom));background:var(--bg-elevated);border-right:1px solid var(--line);flex-direction:column;animation:.18s ease-out menu-slide;display:flex;overflow-y:auto}@keyframes menu-fade{0%{opacity:0}}@keyframes menu-slide{0%{transform:translate(-100%)}}.menu-drawer-head{justify-content:space-between;align-items:center;margin-bottom:14px;display:flex}.menu-drawer-head h2{margin:0;font-size:19px;font-weight:650}.menu-drawer-list{flex-direction:column;gap:2px;display:flex}.menu-drawer-item{width:100%;min-height:var(--tap);text-align:left;border-radius:10px;align-items:center;gap:12px;padding:0 6px;display:flex}.menu-drawer-item:active{background:var(--bg-input)}.menu-drawer-icon{color:var(--accent);flex:none;display:flex}.menu-drawer-label{flex:1;min-width:0;font-size:16px;font-weight:600}.menu-drawer-count{color:var(--text-dim);flex:none;font-size:12px}.menu-drawer-divider{background:var(--line);height:1px;margin:10px 2px}.menu-drawer-foot{flex-direction:column;gap:12px;margin:auto 0 0;padding-top:14px;display:flex}.menu-drawer-version{color:var(--text-dim);margin:0;font-size:12px}.menu-drawer-setting{flex-direction:column;gap:8px;display:flex}.menu-drawer-setting-label{letter-spacing:.06em;text-transform:uppercase;color:var(--text-dim);font-size:11px;font-weight:700}.menu-drawer-setting .segmented{background:var(--bg-input)}.menu-drawer-setting .segment{justify-content:center;align-items:center;gap:8px;font-size:15px;display:flex}.players-add-row{align-items:center;gap:8px;display:flex}.players-add-row .name-input{flex:1;min-width:0}.players-add-row .value-input,.players-row .players-hcp{text-align:center;font-variant-numeric:tabular-nums;flex:0 0 72px;min-width:0;padding:0 4px}.players-add-button{font-size:24px;font-weight:600}.players-add-button:disabled{opacity:.4}.players-list{flex-direction:column;gap:8px;margin:16px 0 0;padding:0;list-style:none;display:flex}.players-row{background:var(--bg-elevated);border-radius:12px;align-items:center;gap:10px;padding:8px 10px;display:flex}.favorite-star{width:32px;height:32px;color:var(--text-dim);flex:none;font-size:19px}.favorite-star.active{color:var(--score-eagle)}.players-name{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-size:15px;font-weight:550;overflow:hidden}.players-remove{width:32px;height:32px;color:var(--text-dim);border-radius:10px;flex:none;font-size:20px;line-height:1}.notice{background:var(--bg-elevated);color:var(--text);border-radius:12px;padding:12px 14px;font-size:15px;line-height:1.4}.notice.error{background:color-mix(in srgb, var(--danger) 18%, var(--bg-elevated));color:var(--danger)}.danger-button{width:100%;min-height:var(--tap);background:color-mix(in srgb, var(--danger) 22%, var(--bg-elevated));color:var(--danger);border-radius:12px;font-size:17px;font-weight:600}.account-name{margin:0;font-size:19px;font-weight:650}.prose .section-title{margin-bottom:4px}.bullet-list{color:var(--text-dim);margin:0;padding-left:20px;font-size:15px;line-height:1.5}.bullet-list li{margin-bottom:4px;list-style:outside}.game-list{flex-direction:column;gap:8px;display:flex}.game-choice{grid-template-columns:minmax(0, 1fr) var(--tap);gap:8px;display:grid}.game-card{text-align:left;background:var(--bg-elevated);border:1.5px solid #0000;border-radius:12px;flex-direction:column;gap:2px;padding:14px 16px;display:flex}.game-choice .game-card{width:100%}.game-settings-button{min-height:var(--tap);background:var(--bg-elevated);color:var(--text-dim);border-radius:12px;font-size:22px}.game-settings-button:hover,.game-settings-button:focus-visible{color:var(--accent);background:var(--bg-input)}.game-card.selected{border-color:var(--accent);background:var(--bg-input)}.game-name{font-size:17px;font-weight:600}.game-tagline{color:var(--text-dim);font-size:13px}.pairing-line{flex-wrap:wrap;align-items:baseline;gap:8px;font-size:16px;font-weight:550;display:flex}.pairing-line.stacked{flex-direction:column;align-items:flex-start;gap:4px}.pairing-vs{color:var(--text-dim);font-size:13px;font-weight:400}.segmented{background:var(--bg-elevated);border-radius:12px;gap:6px;padding:4px;display:flex}.segment{min-height:var(--tap);color:var(--text-dim);border-radius:9px;flex:1;font-weight:600}.segment.selected{background:var(--accent-dark);color:#fff}.segmented.compact{flex:none;width:180px}.segmented.compact .segment{min-height:40px}.tee-field{align-items:stretch}.tee-swatch{border:1px solid color-mix(in srgb, var(--tee-color) 70%, white);background:var(--tee-color);border-radius:50%;flex:0 0 18px;width:18px;height:18px}.col-tee{color:var(--text-dim);text-overflow:ellipsis;white-space:nowrap;font-size:10px;font-weight:400;line-height:1.2;display:block;overflow:hidden}.setup-player-list{flex-direction:column;gap:12px;display:flex}.setup-player-row{flex-direction:column;gap:6px;display:flex}.setup-player-main{align-items:center;gap:8px;display:flex}.setup-player-main .name-input{flex:1;min-width:0}.tee-dot{--tee-color:var(--text-dim);border:1px solid color-mix(in srgb, var(--tee-color) 55%, transparent);background:color-mix(in srgb, var(--tee-color) 18%, var(--bg-elevated));border-radius:12px;flex:none;justify-content:center;align-items:center;width:40px;height:40px;display:flex}.tee-dot svg{width:22px;height:22px;color:var(--tee-color)}.tee-dot.tee-option-black svg{color:var(--tee-contrast)}.setup-player-main .setup-player-handicap{text-align:center;flex:0 0 76px;width:76px}.setup-player-strokes{color:var(--text-dim);text-align:right;padding-inline-end:48px;font-size:13px;display:block}.tee-rows{flex-direction:column;gap:8px;display:flex}.tee-row{--tee-color:var(--text-dim);border:1px solid var(--line);background:var(--bg-elevated);min-height:52px;color:var(--text);text-align:left;border-radius:12px;align-items:center;gap:10px;padding:8px 12px;display:flex}.tee-row.selected{border-color:var(--tee-color);box-shadow:inset 0 0 0 2px var(--tee-color)}.tee-row-main{flex-direction:column;gap:2px;min-width:0;display:flex}.tee-row-name{font-weight:600}.tee-row-meta{color:var(--text-dim);font-size:12px;line-height:1.2}.tee-row-strokes{white-space:nowrap;margin-inline-start:auto;font-size:13px;font-weight:600}.tee-option-black{--tee-color:#111827;--tee-contrast:#f8fafc;border-color:#64748b}.tee-option-black:hover,.tee-option-black:focus-visible{border-color:var(--tee-contrast)}.tee-option-black.selected{border-color:var(--tee-contrast);box-shadow:inset 0 0 0 2px var(--tee-contrast), 0 0 0 1px var(--tee-color)}.tee-option-black .tee-swatch{border:2px solid var(--tee-contrast);box-shadow:0 0 0 1px var(--tee-color)}.tee-option-blue{--tee-color:#2563eb}.tee-option-bronze{--tee-color:#b87333}.tee-option-dark-green{--tee-color:#166534}.tee-option-gold,.tee-option-yellow{--tee-color:#facc15}.tee-option-green{--tee-color:#22c55e}.tee-option-jade{--tee-color:#14b8a6}.tee-option-members,.tee-option-silver{--tee-color:#cbd5e1}.tee-option-men{--tee-color:#60a5fa}.tee-option-middle,.tee-option-tournament{--tee-color:#f59e0b}.tee-option-orange{--tee-color:#f97316}.tee-option-players,.tee-option-purple{--tee-color:#a855f7}.tee-option-red{--tee-color:#ef4444}.tee-option-white{--tee-color:#f8fafc}:root[data-theme=light] .tee-dot svg,:root[data-theme=light] .pick-row-tee-icon{color:color-mix(in srgb, var(--tee-color,var(--text-dim)) 62%, var(--text))}:root[data-theme=light] .tee-dot{border-color:color-mix(in srgb, var(--tee-color) 45%, var(--line))}:root[data-theme=light] .tee-swatch{border-color:color-mix(in srgb, var(--tee-color) 60%, var(--text))}:root[data-theme=light] .tee-row.selected{border-color:color-mix(in srgb, var(--tee-color) 62%, var(--text));box-shadow:inset 0 0 0 2px color-mix(in srgb, var(--tee-color) 62%, var(--text))}:root[data-theme=light] .tee-option-black{--tee-contrast:#475569}.name-list{flex-direction:column;gap:8px;display:flex}.name-input{min-height:var(--tap);border:1px solid var(--line);background:var(--bg-input);color:var(--text);border-radius:12px;padding:0 14px;font-size:16px}.name-input::placeholder{color:var(--text-dim)}.name-input:focus{outline:2px solid var(--accent);outline-offset:-2px}.hole-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.hole-nav{justify-content:space-between;align-items:center;gap:12px;width:100%;display:flex}.hole-center{flex:1;justify-content:center;align-items:center;gap:10px;min-width:0;display:flex}.nav-arrow{width:var(--tap);height:var(--tap);background:var(--bg-elevated);color:var(--text);border-radius:12px;font-size:26px;line-height:1}.nav-arrow:disabled{opacity:.3}.hole-title{flex-direction:column;align-items:center;display:flex}.hole-number{background:var(--bg-elevated);width:44px;height:44px;color:var(--text);font-variant-numeric:tabular-nums;border-radius:50%;justify-content:center;align-items:center;font-size:22px;font-weight:650;display:inline-flex}.hole-number.par-3{background:var(--score-birdie);color:var(--score-birdie-ink)}.hole-number.par-4{background:var(--score-bogey);color:var(--score-bogey-ink)}.hole-number.par-5{background:var(--score-par);color:var(--score-par-ink)}.hole-number.par-6{background:var(--score-triple);color:var(--score-triple-ink);border:2px solid #f8fafc}.game-header-summary{flex-direction:column;flex:1;gap:2px;min-width:0;padding:0;display:flex}.game-header-score{flex-wrap:wrap;gap:2px 8px;display:flex}.game-header-score.stacked{flex-direction:column;gap:0}.game-header-score.stacked .game-header-entry{flex-wrap:nowrap;display:flex}.game-header-score.stacked .game-header-entry>span:first-child{flex:0 auto;max-width:none}.game-header-score.stacked .game-header-entry strong{white-space:nowrap;flex:none}.game-header-hint{text-overflow:ellipsis;white-space:nowrap;min-width:0;color:var(--text-dim);flex:0 auto;font-size:12px;overflow:hidden}.game-header-summary.dormie .game-header-hint,.game-header-summary.decided .game-header-hint{color:inherit}.game-header-entry{min-width:0;color:var(--text-dim);align-items:baseline;gap:5px;font-size:13px;display:inline-flex}.game-header-entry>span:first-child{text-overflow:ellipsis;white-space:nowrap;max-width:160px;overflow:hidden}.game-header-entry strong{color:var(--text);font-variant-numeric:tabular-nums;font-size:16px}.game-header-entry.highlight strong,.game-header-summary.dormie .game-header-note{color:var(--score-eagle)}.game-header-entry.positive strong{color:var(--accent)}.game-header-entry.negative strong{color:var(--score-birdie)}.game-header-entry.neutral strong{color:var(--text-dim)}.game-header-summary.decided .game-header-note{color:var(--accent);font-weight:650}.game-header-summary.outOfPlay{border-left:1px solid var(--over);padding-left:8px}.game-header-summary.outOfPlay .game-header-note,.hole-header.out-of-play .hole-number{color:var(--over);font-weight:650}.game-header-note{min-width:0;color:var(--text-dim);text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.par-row{justify-content:space-between;align-items:center;gap:12px;display:flex}.par-label{text-transform:uppercase;letter-spacing:.06em;color:var(--text-dim);font-size:13px;font-weight:600}.hole-setup{border:1px solid var(--line);background:var(--bg-elevated);border-radius:14px;flex-direction:column;gap:12px;padding:14px;display:flex}.hole-setup.choices-mode{background:0 0;border:0;padding:0}.hole-setup-heading{justify-content:space-between;align-items:baseline;gap:12px;display:flex}.hole-setup-heading .section-title,.hole-setup-heading .hint{margin:0}.hole-setup-heading .hint{text-align:right}.hole-setup-list{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.hole-setup-row{justify-content:space-between;align-items:center;gap:12px;display:flex}.hole-setup-name{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-weight:600;overflow:hidden}.hole-setup-options{flex:0 0 170px}.hole-setup-options .segment{min-height:40px}.hole-setup-groups{color:var(--text-dim);flex-wrap:wrap;gap:8px 16px;font-size:13px;display:flex}.hole-setup-group{gap:5px;display:flex}.hole-setup-group strong{color:var(--text)}.team-block{flex-direction:column;gap:8px;display:flex}.team-header{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:4px 12px;padding:0 4px;display:flex}.team-name{text-overflow:ellipsis;white-space:nowrap;text-transform:uppercase;letter-spacing:.06em;min-width:0;color:var(--text-dim);font-size:13px;font-weight:600;overflow:hidden}.team-summary{min-width:0;color:var(--text-dim);flex-wrap:wrap;align-items:center;gap:4px 12px;font-size:13px;display:flex}.info-button{border:1px solid color-mix(in srgb, var(--info) 55%, transparent);background:color-mix(in srgb, var(--info) 16%, transparent);width:22px;height:22px;color:var(--info);cursor:pointer;border-radius:50%;flex:none;padding:0;font-family:inherit;font-size:13px;font-style:italic;font-weight:700;line-height:1}.breakdown-list{flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.breakdown-row{border-bottom:1px solid var(--line);justify-content:space-between;align-items:baseline;gap:12px;padding:10px 0;display:flex}.breakdown-text{flex-direction:column;min-width:0;display:flex}.breakdown-label{font-size:15px;font-weight:600}.breakdown-note{color:var(--text-dim);font-size:13px}.breakdown-points{color:var(--text-dim);font-variant-numeric:tabular-nums;flex:none;font-size:17px}.breakdown-row.earned .breakdown-points{color:var(--accent);font-weight:700}.breakdown-total{justify-content:space-between;align-items:baseline;gap:12px;font-size:15px;display:flex}.breakdown-total strong{font-variant-numeric:tabular-nums;font-size:20px}.team-metric strong{color:var(--text);font-variant-numeric:tabular-nums;margin-left:3px}.player-list{flex-direction:column;gap:10px;margin:0;padding:0;list-style:none;display:flex}.player-row{background:var(--bg-elevated);border-radius:14px;justify-content:space-between;align-items:center;gap:12px;padding:12px 14px;display:flex}.player-info{flex-direction:column;min-width:0;display:flex}.player-name{align-items:center;min-width:0;font-size:17px;font-weight:600;display:flex}.player-name-text{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.player-total{color:var(--text-dim);font-size:13px}.stepper{flex:none;align-items:center;gap:6px;display:flex}.step-button{width:var(--tap);height:var(--tap);background:var(--bg-input);border-radius:12px;font-size:24px;line-height:1}.score-value{min-width:50px;height:var(--tap);-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;justify-content:center;align-items:center;display:inline-flex}.standings{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.standing{background:var(--bg-elevated);border:1.5px solid #0000;border-radius:14px;align-items:center;gap:12px;padding:14px 16px;display:flex}.standing.leader{border-color:var(--accent)}.position{color:var(--text-dim);min-width:26px;font-size:18px;font-weight:700}.standing.leader .position{color:var(--accent)}.standing-name{flex-direction:column;flex:1;min-width:0;font-size:17px;font-weight:600;display:flex}.standing-detail{color:var(--text-dim);font-size:13px;font-weight:400}.standing-score{font-variant-numeric:tabular-nums;align-items:baseline;gap:8px;display:flex}.standing-score strong{font-size:22px}.standing-secondary{color:var(--text-dim);text-align:right;font-size:13px}.roster{flex-direction:column;gap:8px;display:flex}.roster-head{justify-content:space-between;align-items:baseline;display:flex}.roster-label{text-transform:uppercase;letter-spacing:.06em;color:var(--text-dim);font-size:13px;font-weight:600}.roster-toggle{color:var(--accent);padding:6px 4px;font-size:14px;font-weight:550}.chip-row{flex-wrap:wrap;gap:8px;display:flex}.chip{background:var(--bg-input);border:1px solid var(--line);border-radius:20px;align-items:center;gap:6px;min-height:40px;padding:0 14px;font-size:15px;font-weight:550;display:inline-flex}.chip.removable{border-color:var(--over);color:var(--over)}.chip-x{font-size:18px;line-height:1}.favorite-course-row{flex-wrap:wrap;gap:8px;display:flex}.favorite-course-chip{background:var(--bg-input);border:1px solid var(--line);text-align:left;border-radius:20px;align-items:center;gap:8px;max-width:100%;min-height:40px;padding:0 14px 0 10px;font-size:14px;font-weight:550;display:inline-flex}.favorite-course-chip svg{width:16px;height:16px;color:var(--score-birdie);flex:none}.favorite-course-chip-name{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.field{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.field-label{flex:180px;min-width:0;font-size:15px}.field-input{align-items:center;gap:8px;display:flex}.value-input{text-align:right;width:90px}.value-control{flex:none;grid-template-columns:48px 76px 48px auto;align-items:center;gap:6px;display:grid}.value-control .value-input{text-align:center;font-variant-numeric:tabular-nums;width:76px;min-height:48px;padding:0 8px}.value-step{border:1px solid var(--line);background:var(--bg-input);width:48px;height:48px;color:var(--text);touch-action:manipulation;-webkit-user-select:none;user-select:none;border-radius:12px;font-size:24px;font-weight:600;line-height:1}.value-step:active{background:var(--accent-dark);color:#fff}.value-step:focus-visible,.value-control .value-input:focus{outline:2px solid var(--accent);outline-offset:2px}.field-suffix{color:var(--text-dim);min-width:20px;font-size:15px}.bet-card{flex-direction:column;gap:14px;margin-top:12px;display:flex}.bet-card .hint{margin:0}.amount-input{min-height:var(--tap);border:1px solid var(--line);background:var(--bg-input);border-radius:12px;align-items:center;gap:8px;padding:0 14px;display:flex}.amount-value-input{min-width:0;color:var(--text);font-variant-numeric:tabular-nums;background:0 0;border:none;flex:1;padding:0;font-size:16px}.amount-value-input:focus{outline:none}@media (width<=480px){.hole-setup-heading{flex-direction:column;align-items:flex-start;gap:4px}.hole-setup-heading .hint{text-align:left}.hole-setup-row{flex-direction:column;align-items:stretch;gap:4px}.hole-setup-options{flex-basis:auto;width:100%}.field{flex-direction:column;align-items:stretch;gap:8px}.field-label{flex-basis:auto}.value-control{align-self:flex-end}}.switch{min-height:var(--tap);align-items:center;gap:12px;font-size:15px;display:flex}.switch input{width:24px;height:24px;accent-color:var(--accent-dark);flex:none}.switch em{color:var(--text-dim);font-style:normal}.settlement{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.settlement-row{background:var(--bg-elevated);border-radius:12px;justify-content:space-between;align-items:center;gap:12px;padding:12px 16px;display:flex}.settlement-subtitle{color:var(--text-dim);text-transform:uppercase;letter-spacing:.04em;margin:4px 0 0;font-size:13px;font-weight:600}.settlement-toggle{width:100%}.settlement-toggle .segment{font-size:13px}.settlement-name{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:16px;font-weight:550;overflow:hidden}.settlement-arrow{color:var(--text-dim);margin:0 8px}.settlement-amount{font-variant-numeric:tabular-nums;flex:none;font-size:18px;font-weight:700}.settlement-amount.wins{color:var(--accent)}.settlement-amount.owes{color:var(--over)}.game-summary{background:var(--bg-elevated);color:var(--text-dim);border-radius:12px;flex-wrap:wrap;gap:16px;padding:12px 14px;font-size:14px;display:flex}.archive-list{flex-direction:column;gap:10px;margin:0;padding:0;list-style:none;display:flex}.archive-item{align-items:stretch;gap:8px;display:flex}.archive-open{text-align:left;background:var(--bg-elevated);border-radius:14px;flex-direction:column;flex:1;gap:4px;min-width:0;padding:14px 16px;display:flex}.archive-top{justify-content:space-between;align-items:baseline;gap:10px;display:flex}.archive-game{font-size:17px;font-weight:600}.archive-date{color:var(--text-dim);font-size:13px}.archive-winner{color:var(--accent);font-size:15px;font-weight:550}.archive-players{color:var(--text-dim);text-overflow:ellipsis;white-space:nowrap;font-size:13px;overflow:hidden}.archive-delete{width:var(--tap);background:var(--bg-elevated);color:var(--text-dim);border-radius:14px;font-size:24px;line-height:1}.version{text-align:center;color:var(--text-dim);margin:8px 0 0;font-size:12px}.scorecard-wrap{background:var(--bg-elevated);border-radius:14px;overflow-x:auto}.scorecard tr.current-hole>th,.scorecard tr.current-hole>td{box-shadow:inset 0 0 0 2px var(--accent)}.landscape-scorecard{min-height:100dvh;padding:env(safe-area-inset-top) env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left)}.landscape-scorecard .scorecard-section{height:100%;min-height:100dvh}.scorecard-live .scorecard-wrap{flex:1;min-height:0;overflow:auto}.scorecard-live .scorecard th,.scorecard-live .scorecard td{padding:5px 3px}.scorecard-live .mark{width:22px;height:22px}.scorecard{border-collapse:collapse;font-variant-numeric:tabular-nums;width:100%;font-size:14px}.scorecard th,.scorecard td{text-align:center;border-bottom:1px solid var(--line);padding:8px 4px}.col-name{text-overflow:ellipsis;white-space:nowrap;max-width:56px;margin:0 auto;display:block;overflow:hidden}.scorecard thead th{color:var(--text-dim);text-transform:uppercase;letter-spacing:.04em;background:var(--bg-elevated);font-size:12px;font-weight:600;position:sticky;top:0}.scorecard tbody th{color:var(--text-dim);font-weight:600}.scorecard .par-cell{color:var(--text-dim)}.scorecard .player-col-a,.scorecard .extra-col.player-col-a{background:color-mix(in srgb, var(--accent) 7%, var(--bg-elevated))}.scorecard .player-col-b,.scorecard .extra-col.player-col-b{background:color-mix(in srgb, var(--accent) 2%, var(--bg-elevated))}.scorecard .group-row th{border-bottom:none;padding-bottom:2px;font-size:11px}.scorecard .extra-col{border-left:1px solid var(--line);color:var(--accent);font-weight:600}.scorecard-player-cell{justify-content:center;align-items:center;gap:3px;min-height:24px;display:inline-flex}.scorecard-extra-suffix{color:var(--accent);font-variant-numeric:tabular-nums;font-size:11px;font-weight:700}.scorecard-hcp-dots{color:var(--text-dim);letter-spacing:1px;font-size:11px;font-weight:700;line-height:1}.scorecard td.skin-awarded{background:color-mix(in srgb, var(--score-eagle) 30%, var(--bg-elevated));box-shadow:inset 0 0 0 1.5px color-mix(in srgb, var(--score-eagle) 72%, var(--bg-elevated))}.scorecard td.pairing-marked,.scorecard td.pairing-marked-extra{box-shadow:inset 0 1px 0 var(--score-eagle), inset 0 -1px 0 var(--score-eagle)}.scorecard td.pairing-marked{box-shadow:inset 1px 0 0 var(--score-eagle), inset 0 1px 0 var(--score-eagle), inset 0 -1px 0 var(--score-eagle);border-radius:4px 0 0 4px}.scorecard td.pairing-marked-extra{box-shadow:inset 0 1px 0 var(--score-eagle), inset -1px 0 0 var(--score-eagle), inset 0 -1px 0 var(--score-eagle);border-radius:0 4px 4px 0}.scorecard tbody tr.scorecard-turn-row>th,.scorecard tbody tr.scorecard-turn-row>td,.scorecard tfoot tr>th,.scorecard tfoot tr>td{background:var(--scorecard-summary);border-top:1px solid var(--line);font-weight:700}.scorecard tbody tr.scorecard-turn-row>th,.scorecard tbody tr.scorecard-turn-row>td{border-bottom:1px solid var(--line)}.scorecard tbody tr.scorecard-turn-row .scorecard-turn-label,.scorecard tfoot tr>th{letter-spacing:.04em;color:var(--text-dim);font-size:11px}.scorecard-game-total-row{border-top:1px solid var(--line)}.scorecard-total-label{color:var(--text-dim);white-space:nowrap;font-size:11px;text-align:right!important}.scorecard-game-total-value{color:var(--accent);white-space:nowrap;font-size:11px;font-weight:700}.scorecard thead th.extra-col{color:var(--text-dim)}.scorecard td.extra-col.empty{color:var(--line);font-weight:400}.mark{font-variant-numeric:tabular-nums;justify-content:center;align-items:center;width:24px;height:24px;font-weight:600;display:inline-flex}.mark.eagle,.mark.birdie{border-radius:50%}.mark.par,.mark.bogey,.mark.double,.mark.triple{border-radius:3px}.mark.eagle{background:var(--score-eagle);color:var(--score-eagle-ink);box-shadow:inset 0 0 0 2px var(--score-eagle), inset 0 0 0 3.5px var(--bg-elevated)}.mark.birdie{background:var(--score-birdie);color:var(--score-birdie-ink)}.mark.par{background:var(--score-par);color:var(--score-par-ink)}.mark.bogey{background:var(--score-bogey);color:var(--score-bogey-ink)}.mark.double{background:var(--score-double);color:var(--score-double-ink);box-shadow:inset 0 0 0 2px var(--score-double), inset 0 0 0 3.5px var(--bg-elevated)}.mark.triple{background:var(--score-triple);color:var(--score-triple-ink);box-shadow:inset 0 0 0 1.5px var(--score-triple), inset 0 0 0 2.5px var(--score-triple-gap), inset 0 0 0 4px var(--score-triple), inset 0 0 0 5px var(--score-triple-gap)}.mark.empty{color:var(--line)}.mark.large{width:38px;height:38px;font-size:20px}.scorecard tbody td{padding:9px 5px}.legend{background:var(--bg-elevated);color:var(--text-dim);border-radius:12px;flex-wrap:wrap;gap:12px 16px;margin:0;padding:12px 14px;font-size:13px;list-style:none;display:flex}.legend li{align-items:center;gap:7px;display:flex}.scorecard tfoot td,.scorecard tfoot th{border-bottom:none;font-weight:700}.bonus-button{background:var(--bg-input);width:40px;height:40px;color:var(--text-dim);font-variant-numeric:tabular-nums;border-radius:12px;flex:none;font-size:16px;font-weight:700}.bonus-button.active{background:var(--score-eagle);color:var(--score-eagle-ink)}.sheet-backdrop{z-index:10;background:var(--scrim);align-items:flex-end;display:flex;position:fixed;inset:0}.sheet{width:100%;max-height:85dvh;padding:20px 20px calc(20px + env(safe-area-inset-bottom));background:var(--bg);border-top:1px solid var(--line);border-radius:18px 18px 0 0;flex-direction:column;gap:14px;display:flex;overflow-y:auto}.sheet-header h2{margin:0;font-size:20px;font-weight:650}.bonus-list{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.bonus-option{text-align:left;background:var(--bg-elevated);border:1.5px solid #0000;border-radius:12px;align-items:center;gap:12px;width:100%;padding:12px 14px;display:flex}.bonus-option.selected{border-color:var(--accent);background:var(--bg-input)}.bonus-check{width:22px;color:var(--accent);flex:none;font-size:18px;font-weight:700}.bonus-text{flex-direction:column;flex:1;min-width:0;display:flex}.bonus-name{font-size:16px;font-weight:600}.bonus-desc{color:var(--text-dim);font-size:13px}.bonus-value{color:var(--accent);font-variant-numeric:tabular-nums;flex:none;font-size:15px;font-weight:700}.field-note{color:var(--text-dim);font-size:13px;display:block}.field-label{min-width:0}.team-block.winning .player-row{box-shadow:inset 0 0 0 1.5px var(--accent)}.team-metric.highlight{background:var(--score-birdie);color:#fff;border-radius:6px;padding:1px 6px}.team-metric.highlight strong{color:#fff}.player-mark{background:var(--score-eagle);min-width:18px;height:18px;color:var(--score-eagle-ink);vertical-align:middle;border-radius:5px;flex:none;justify-content:center;align-items:center;margin-left:6px;padding:0 4px;font-size:12px;font-weight:700;display:inline-flex}.player-mark.own{background:var(--accent);color:var(--score-eagle-ink)}.player-mark.opponent{background:var(--score-birdie);color:#fff}.player-mark.pending{background:var(--bg-input);color:var(--text-dim)}.player-mark.multiplier{background:var(--score-par);color:var(--score-par-ink)}.bonus-mark{background:var(--score-eagle);min-width:18px;height:18px;color:var(--score-eagle-ink);border-radius:5px;justify-content:center;align-items:center;margin-right:6px;padding:0 4px;font-size:12px;font-weight:700;display:inline-flex}.loop-options{grid-template-columns:repeat(auto-fit,minmax(min(100%,120px),1fr));gap:8px;width:100%;display:grid}.loop-option{border:1px solid var(--line);background:var(--bg-elevated);min-height:44px;color:var(--text);text-align:left;border-radius:12px;flex-direction:column;gap:2px;padding:6px 10px;font-weight:600;display:flex}.loop-option.selected{border-color:var(--accent);box-shadow:inset 0 0 0 2px var(--accent)}.loop-option-meta{color:var(--text-dim);font-size:12px;font-weight:400;line-height:1.2}.course-loop+.course-loop{margin-top:16px}.course-hole-list{flex-direction:column;gap:8px;display:flex}.course-hole-row{border-bottom:1px solid var(--line);flex-wrap:wrap;align-items:center;gap:8px;padding:6px 0;display:flex}.course-hole-number{font-variant-numeric:tabular-nums;color:var(--text-dim);flex:0 0 28px;font-weight:600}.course-hole-row .segmented.compact{width:auto}.course-hole-row .segmented.compact .segment{min-width:40px;padding:0 8px}.course-si{align-items:center;gap:4px;margin-left:auto;display:flex}.course-si .value-step{width:40px;height:40px;font-size:20px}.course-si-value{text-align:center;font-variant-numeric:tabular-nums;min-width:46px;color:var(--text-dim)}.course-tee{border-bottom:1px solid var(--line);flex-direction:column;gap:8px;padding:12px 0;display:flex}.course-tee-ratings{gap:12px;display:flex}.course-tee-ratings .field{flex:1 1 0}.hint.error,.link-button.danger{color:var(--danger)}.player-mark.gain{background:var(--bg-input);color:var(--text-dim)}.player-mark.gain.best{background:var(--accent-dark);color:#fff}.player-mark.strokes{color:var(--text-dim);letter-spacing:1px;background:0 0;font-size:14px}.scorecard .si-cell{color:var(--text-dim);font-size:13px}.course-list{flex-direction:column;gap:6px;display:flex}.picker-search-row{align-items:center;gap:8px;display:flex}.picker-search-row .name-input{flex:1;min-width:0}.location-sort-button{flex:0 0 var(--tap);width:var(--tap);height:var(--tap);border:1px solid var(--line);background:var(--bg-elevated);color:var(--text-dim);border-radius:12px;font-size:25px;line-height:1}.location-sort-button.active{border-color:var(--accent);background:var(--bg-input);color:var(--accent)}.location-sort-button:focus-visible,.location-sort-button:hover{border-color:var(--accent)}.pick-trigger{text-align:left;justify-content:space-between;align-items:center;gap:8px;width:100%;display:flex}.pick-trigger svg{color:var(--text-dim);flex:none}.pick-rows{flex-direction:column;gap:8px;display:flex}.pick-row{border:1px solid var(--line);background:var(--bg-elevated);min-height:48px;color:var(--text);text-align:left;border-radius:12px;align-items:center;gap:10px;padding:10px 14px;font-size:15px;display:flex}.pick-row.selected{border-color:var(--accent);box-shadow:inset 0 0 0 2px var(--accent);font-weight:600}.pick-row-label{flex:1;min-width:0}.pick-row-tee-icon{color:var(--tee-color,var(--text-dim));flex:none;display:inline-flex}.pick-row-tee-icon.tee-option-black{color:var(--tee-contrast)}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.course-item{text-align:left;background:var(--bg-elevated);min-height:var(--tap);border:1.5px solid #0000;border-radius:12px;flex-direction:column;gap:2px;padding:12px 14px;display:flex}div.course-item{flex-direction:row;align-items:center;gap:8px}.course-item.selected{border-color:var(--accent);background:var(--bg-input)}.course-item-name{font-size:16px;font-weight:600}.course-item-meta{color:var(--text-dim);font-size:13px}.course-item-main{text-align:left;flex-direction:column;flex:auto;gap:2px;min-width:0;padding:0;display:flex}.course-item-main:disabled{opacity:.6}.course-favorite{flex:0 0 var(--tap);width:var(--tap);height:var(--tap);color:var(--text-dim);border-radius:12px;justify-content:center;align-items:center;display:flex}.course-favorite:hover,.course-favorite:focus-visible,.course-favorite.active{color:var(--score-birdie)}.course-item-tag{background:var(--bg-input);color:var(--text-dim);border-radius:6px;margin-left:8px;padding:1px 6px;font-size:12px;font-weight:500}.course-item-tag-catalog{color:var(--under)}.course-item-tag-downloaded{background:color-mix(in srgb, var(--accent) 18%, var(--bg-input));color:var(--accent)}.course-item-tag-private{background:color-mix(in srgb, var(--score-eagle) 18%, var(--bg-input));color:var(--score-eagle)}.course-item:disabled{opacity:.6}.catalog-credit{text-align:center;margin-top:10px}.catalog-credit a{color:var(--accent)}:root{--app-max-width:560px;--screen-padding:20px}.screen{width:100%;max-width:var(--app-max-width);margin-inline:auto}.landscape-scorecard{width:100%}.content{padding:var(--screen-padding)}.app-header,.app-footer{padding-inline:var(--screen-padding)}.player-info,.player-name,.player-name-text,.standing-name,.settlement-name,.game-header-entry,.course-item,.archive-open{min-width:0}.standing-name,.settlement-name{overflow-wrap:anywhere}.sheet-backdrop{justify-content:center}.sheet{max-width:var(--app-max-width)}@media (width<=360px){:root{--screen-padding:14px}.app-header h1{font-size:20px}.language-button{width:34px;height:32px}.hole-number{font-size:40px}.primary-button,.secondary-button{font-size:16px}.segment{padding-inline:6px;font-size:14px}.players-row{gap:6px;padding-inline:8px}.players-row .tee-dot{width:36px;height:36px}}@media (width>=600px){:root{--app-max-width:620px;--screen-padding:28px}.name-list{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px;display:grid}.game-list{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:10px;display:grid}.game-choice{height:100%}}@media (width>=900px){:root{--app-max-width:720px}.screen{border-inline:1px solid var(--line)}.link-button:hover,.game-card:hover,.segment:hover,.course-item:hover{background:var(--bg-input)}.link-button:hover{background:0 0;text-decoration:underline}}@media (orientation:landscape) and (height<=520px){.app-header{padding-block:10px 8px}.content{gap:16px;padding-block:14px}.app-footer{padding-block:8px}.sheet{max-height:94dvh}}
