:root{--green:#124b3c;--green2:#1d6752;--cream:#f5f0e3;--gold:#d3ad56;--ink:#18312a;--white:#fff;--muted:#6c7a75;--line:#d9ddd8;--danger:#8d332e;--shadow:0 12px 34px rgba(18,75,60,.13)}*{box-sizing:border-box}body{margin:0;background:var(--cream);color:var(--ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}button,input,select{font:inherit}.app{min-height:100vh}.topbar{background:var(--green);color:#fff;padding:16px 18px;position:sticky;top:0;z-index:4;box-shadow:0 3px 14px rgba(0,0,0,.15)}.brand{display:flex;align-items:center;justify-content:space-between;max-width:1120px;margin:auto}.wordmark{font-family:Georgia,serif;font-size:29px;letter-spacing:3px;font-weight:800}.wordmark small{display:block;font-family:Inter,sans-serif;letter-spacing:4px;font-size:9px;color:var(--gold);text-align:center;margin-top:-2px}.flag{color:var(--gold)}.version{font-size:11px;opacity:.7}.shell{max-width:1120px;margin:auto;padding:22px 16px 80px}.hero{background:linear-gradient(145deg,var(--green),var(--green2));color:#fff;border-radius:22px;padding:26px;box-shadow:var(--shadow);margin-bottom:20px}.hero h1{margin:0 0 7px;font-family:Georgia,serif;font-size:30px}.hero p{margin:0;color:#dcece6}.light{color:#f0d384!important}.card{background:#fff;border:1px solid var(--line);border-radius:18px;padding:18px;box-shadow:0 5px 18px rgba(18,75,60,.07)}.spacer{margin-top:14px}.card h2,.card h3{margin:0 0 10px}.eyebrow{text-transform:uppercase;font-size:11px;letter-spacing:1.7px;color:var(--green2);font-weight:800}.status{display:inline-flex;gap:7px;align-items:center;border-radius:999px;padding:6px 10px;background:#e5f2ed;color:var(--green);font-size:12px;font-weight:800}.status.warn{background:#fff4d7}.dot{height:8px;width:8px;border-radius:50%;background:#2b936d}.btn{border:0;border-radius:12px;padding:12px 16px;background:var(--green);color:#fff;font-weight:800;cursor:pointer}.btn.secondary{background:#fff;color:var(--green);border:1px solid var(--green)}.btn.gold{background:var(--gold);color:#24372f}.btn.danger{background:var(--danger)}.btn:disabled{opacity:.45;cursor:not-allowed}.full{width:100%}.row{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.meta{color:var(--muted);font-size:13px}.list{display:grid;gap:10px}.list-item{border:1px solid var(--line);border-radius:13px;padding:13px;display:flex;justify-content:space-between;gap:10px;align-items:center;background:#fff}.field{display:grid;gap:6px;margin:12px 0}.field label{font-weight:800;font-size:13px}.field input,.field select{width:100%;padding:14px;border-radius:12px;border:1px solid #bfc9c4;background:#fff}.center{max-width:620px;margin:24px auto}.code-wrap{position:relative}.code{letter-spacing:8px;text-transform:uppercase;text-align:center;font-size:24px;font-weight:900;padding-right:48px!important}.clear-code{position:absolute;right:10px;top:50%;transform:translateY(-50%);border:0;background:transparent;font-size:28px;color:var(--muted);cursor:pointer}.notice{background:#fff4d7;border:1px solid #e8cf8d;border-radius:13px;padding:13px}.score-header{display:grid;grid-template-columns:48px 1fr 48px;align-items:center;gap:8px;margin-bottom:14px}.hole-title{text-align:center}.hole-title strong{font-size:24px}.score-grid{display:grid;gap:10px}.score-row{display:grid;grid-template-columns:1fr 42px 60px 42px;gap:8px;align-items:center;border:1px solid var(--line);border-radius:14px;padding:12px}.score-net-label{grid-column:1/-1;text-align:right;color:var(--muted);font-size:12px;margin-top:-4px}.score-row small{display:block;color:var(--muted)}.score-num{text-align:center;font-size:25px;font-weight:900}.score-btn{border:0;border-radius:10px;background:#e8f0ed;color:var(--green);font-size:24px;font-weight:900;height:42px}.stroke-dots{color:var(--gold);letter-spacing:2px}.game-card{border:1px solid var(--line);border-radius:15px;padding:14px;margin-top:12px}.game-card h3{display:flex;justify-content:space-between;gap:10px}.leader-row,.result-row{display:flex;justify-content:space-between;gap:12px;border-top:1px solid #edf0ee;padding:9px 0}.tabs{display:flex;gap:8px;margin:12px 0;overflow:auto}.tab{white-space:nowrap;border:1px solid var(--green);background:#fff;color:var(--green);border-radius:999px;padding:8px 12px;font-weight:800}.tab.active{background:var(--green);color:#fff}.scorecard{overflow:auto}.scorecard table{border-collapse:collapse;min-width:760px;width:100%;font-size:12px}.scorecard th,.scorecard td{border:1px solid var(--line);padding:7px;text-align:center}.scorecard th:first-child,.scorecard td:first-child{position:sticky;left:0;background:#fff;text-align:left;z-index:1}.footer{padding:26px;text-align:center;color:var(--muted);font-size:12px}.hidden{display:none!important}@media(max-width:650px){.hero h1{font-size:26px}.shell{padding-top:14px}.score-row{grid-template-columns:1fr 38px 52px 38px;padding:10px}.center{margin-top:10px}}
.progress-track{height:9px;background:#e4ebe8;border-radius:999px;overflow:hidden;margin:10px 0 14px}.progress-track span{display:block;height:100%;background:var(--gold);transition:width .25s ease}.leader-row.leader{background:#f8f4e8;margin:0 -8px;padding-left:8px;padding-right:8px;border-radius:8px}.leader-row small{display:block;margin-top:3px}.money-summary{display:flex;gap:8px;flex-wrap:wrap;border-top:1px solid var(--line);margin-top:8px;padding-top:10px}.money-summary span{background:#f4f7f5;border-radius:999px;padding:6px 9px;font-size:12px}.payout-row{display:flex;justify-content:space-between;padding:7px 0;border-top:1px dashed var(--line)}.notice.compact{padding:9px;margin-top:8px;font-size:12px}

/* Build 010 stroke-allocation clarity */
.stroke-badge{display:inline-flex;align-items:center;margin-left:.35rem;padding:.15rem .45rem;border-radius:999px;background:#d4af47;color:#0b4a2e;font-weight:800;font-size:.72rem;white-space:nowrap}.no-stroke{margin-left:.35rem;color:#7d837f;font-size:.72rem}.score-row small{display:flex;align-items:center;flex-wrap:wrap;gap:.1rem}

/* Build 013 intentional scoring interface */
.hole-progress{display:flex;gap:8px;overflow-x:auto;padding:4px 2px 14px;scrollbar-width:thin}.hole-circle{flex:0 0 38px;height:38px;border-radius:50%;border:2px solid #cbd4d0;background:#fff;color:var(--muted);font-weight:900}.hole-circle.complete{background:var(--green2);border-color:var(--green2);color:#fff}.hole-circle.current{border-color:var(--gold);box-shadow:0 0 0 3px rgba(211,173,86,.22);color:var(--green)}.hole-circle.available{border-color:var(--green);color:var(--green)}.hole-circle.locked{opacity:.45}.score-header.simple{display:block}.score-header.simple .hole-title{background:#eef4f1;border-radius:16px;padding:12px}.score-player{min-width:0}.score-num{position:relative;border:2px solid #cbd4d0;border-radius:12px;background:#f1f3f2;color:#9aa39f;min-height:52px;font-size:25px;font-weight:900;display:flex;align-items:center;justify-content:center;gap:4px}.score-num.confirmed{background:#e0f2e9;border-color:#2b936d;color:var(--green)}.score-row.confirmed{border-color:#8fcab2}.score-num .stroke-dots,.score-num.stroke-dots{position:absolute;right:4px;bottom:2px;font-size:8px;color:var(--gold);letter-spacing:0}.team-method-card{border:1px solid var(--line);border-radius:12px;padding:10px;margin-top:10px}.custom-team-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}@media(max-width:650px){.hole-circle{flex-basis:34px;height:34px}.score-num{min-height:48px}.custom-team-grid{grid-template-columns:1fr}}
.hole-progress{display:grid;gap:8px}.hole-progress-row{display:grid;grid-template-columns:repeat(9,1fr);gap:5px}.hole-circle{min-width:0;width:100%;height:auto;aspect-ratio:1}.scorecard td.score-par{background:#fff}.scorecard td.score-birdie{background:#d9f3df}.scorecard td.score-eagle{background:#99d7a8}.scorecard td.score-bogey{background:#f7d7df}.scorecard td.score-double{background:#eca8b8}.scorecard td.score-empty{background:#f3f1eb;color:#999}.scorecard td.score-total{background:#f3ead0}.team-name-btn{appearance:none;border:0;background:none;padding:0;color:inherit;font:inherit;font-weight:700;text-decoration:underline;text-underline-offset:3px;cursor:pointer}.team-hole-detail{margin:0 0 10px 12px;padding:8px 10px;border-left:3px solid #c99f3f;background:#f7f3e7}.team-hole-detail.hidden{display:none}.team-hole-detail-header{display:grid;grid-template-columns:56px 1fr 46px 46px;gap:8px;padding:0 0 6px;font-size:10px;text-transform:uppercase;letter-spacing:1px;color:var(--green2);font-weight:800;border-bottom:2px solid #c99f3f}.team-hole-detail-header .thd-score{text-align:center}.team-hole-detail-header .thd-total{text-align:right}.team-hole-detail>div{display:grid;grid-template-columns:56px 1fr 46px 46px;gap:8px;align-items:center;padding:5px 0;border-bottom:1px solid rgba(0,0,0,.08);font-size:13px}.team-hole-detail .thd-hole{color:var(--muted)}.team-hole-detail .thd-who{font-weight:700}.team-hole-detail .thd-score{text-align:center;color:var(--muted)}.team-hole-detail .thd-total{text-align:right}

/* Build 014.1 focused scoring shell */
.mode-tabs{display:grid;grid-template-columns:1fr 1fr;margin-bottom:12px;border:2px solid var(--green);border-radius:16px;overflow:hidden}.mode-tab{border:0;background:#fff;color:var(--green);padding:13px 10px;font-weight:900}.mode-tab.active{background:var(--green);color:#fff}.round-banner{background:var(--green);color:#fff;border-radius:14px;padding:14px 16px;margin-bottom:14px}.round-banner p{margin:6px 0 0;color:#dcece6}.hole-metrics{display:grid!important;grid-template-columns:repeat(3,1fr);max-width:310px;margin:0 auto;background:#fff!important;border:1px solid var(--line);box-shadow:var(--shadow);padding:10px 8px!important}.hole-metrics>div{display:grid;gap:1px;text-align:center}.hole-metrics>div+div{border-left:1px solid var(--line)}.hole-metrics span{text-transform:uppercase;color:var(--gold);font-size:10px;font-weight:900;letter-spacing:1.2px}.hole-metrics strong{font-size:20px!important}.hole-metrics>div:first-child strong{font-size:34px!important}
body,button,a{touch-action:manipulation}.stroke-dots{position:absolute;right:7px;top:6px;display:flex;gap:3px;align-items:center}.stroke-dots i{display:block;width:8px;height:8px;border-radius:50%;background:var(--gold)}.stroke-dots b{font-size:9px;color:var(--gold)}.score-num .stroke-dots{right:7px;top:6px;bottom:auto}.score-num .stroke-dots i{width:8px;height:8px}.center:has(#entry-card.hidden){max-width:760px}.center:has(#entry-card.hidden) .hero.hidden{display:none!important}@media(max-width:650px){.shell{padding-left:10px;padding-right:10px}.card{padding:12px}.round-banner{padding:13px 14px}.mode-tab{padding:12px 8px}.hole-metrics{max-width:290px}}

/* Build 014.2 scoring cleanup */
.top-actions{display:flex;align-items:center;gap:12px}.menu-button{width:42px;height:42px;border:1px solid var(--gold);border-radius:12px;background:transparent;color:var(--gold);font-size:22px;font-weight:900;line-height:1;cursor:pointer}.brand{position:relative}.live-menu{position:absolute;right:18px;top:66px;z-index:8;background:#fff;border:1px solid var(--line);border-radius:12px;padding:6px;box-shadow:var(--shadow)}.live-menu button{border:0;background:#fff;color:var(--green);font-weight:800;padding:11px 13px;border-radius:8px;cursor:pointer;white-space:nowrap}.live-menu button:hover{background:#eef4f1}.score-actions{display:grid;grid-template-columns:1fr 1.12fr 1.55fr;gap:10px;align-items:stretch}.score-actions .btn{width:100%;min-height:50px}.stroke-markers{position:absolute!important;top:7px!important;right:7px!important;bottom:auto!important;display:flex!important;align-items:center!important;gap:4px!important;width:auto!important;height:8px!important;min-width:8px!important;background:transparent!important;border:0!important;border-radius:0!important;box-shadow:none!important;padding:0!important;margin:0!important}.stroke-marker{display:block!important;flex:0 0 8px!important;width:8px!important;height:8px!important;min-width:8px!important;max-width:8px!important;min-height:8px!important;max-height:8px!important;border-radius:999px!important;background:var(--gold)!important;border:0!important;box-shadow:none!important;padding:0!important;margin:0!important}.stroke-count{font-size:9px;line-height:1;color:var(--gold);font-weight:900}.stroke-give{position:absolute!important;top:6px!important;right:7px!important;font-size:10px!important;font-weight:900!important;color:var(--danger)!important;background:transparent!important;line-height:1!important}@media(max-width:420px){.score-actions{grid-template-columns:1fr 1.12fr 1.45fr;gap:7px}.score-actions .btn{padding:11px 8px;font-size:14px}.version{display:none}}

/* Build 020 match audit and Live Money */
.active-match{border-left:4px solid var(--gold);padding-left:10px;background:#fbf7ec}.match-detail{margin-left:0;border-left-color:var(--green2);padding:10px}.match-history{display:grid;gap:0}.match-history-head,.match-history-row{display:grid;grid-template-columns:42px 1fr 1fr 1.35fr;gap:8px;align-items:start}.match-history-head{padding:0 0 7px;color:var(--green2);font-size:10px;text-transform:uppercase;letter-spacing:.7px;font-weight:900;border-bottom:2px solid var(--gold)}.match-history-row{padding:8px 0;border-bottom:1px solid var(--line);font-size:12px}.match-history-row span:last-child{display:grid;gap:2px}.match-history-row small{color:var(--muted)}.match-history-row em{font-style:normal;color:var(--green);font-weight:800;background:#e5f2ec;border-radius:7px;padding:4px 6px;margin-top:3px}.match-final{display:grid;grid-template-columns:1fr auto;gap:4px 12px;padding:10px;margin-top:9px;background:#eef4f1;border-radius:10px}.match-final strong{grid-column:1/-1;color:var(--green)}.match-final b{font-size:16px}.live-money{border:2px solid var(--gold)}.money-overview{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:10px 0}.money-overview>div{display:grid;gap:3px;background:#f4f7f5;border-radius:12px;padding:12px}.money-overview span{font-size:12px;color:var(--muted)}.money-overview strong{font-size:22px;color:var(--green)}.negative{color:var(--danger)!important}.money-game{border-top:1px solid var(--line)}.money-game.private{border-left:3px solid var(--green2);padding-left:8px}.money-game-title{width:100%;display:flex;justify-content:space-between;gap:12px;align-items:center;border:0;background:transparent;padding:12px 0;color:var(--green);font-weight:900;text-align:left}.money-game-title strong{font-size:11px;color:var(--muted)}.money-game-body{padding:0 0 10px}.money-line{display:flex;justify-content:space-between;gap:10px;padding:7px 0;border-top:1px dashed var(--line)}.money-line.tip{color:var(--gold);font-weight:900}@media(max-width:520px){.match-history-head,.match-history-row{grid-template-columns:34px 1fr 1fr}.match-history-head span:last-child,.match-history-row span:last-child{grid-column:1/-1;padding-left:42px}.money-overview{grid-template-columns:1fr 1fr}}

/* Build 021 clean mobile Three Up board */
.three-up-card>h3{align-items:flex-start}.three-up-card>h3>span{font-size:1.25rem}.three-up-card>h3 small{text-align:right;max-width:48%}.three-up-match{border-top:1px solid var(--line)}.three-up-match:first-of-type{border-top:0}.three-up-match.active-match{margin:8px 0;border:2px solid var(--gold);border-radius:14px;background:#fbf7ec;padding:0}.three-up-match.match-complete{opacity:.98}.three-up-match-toggle{width:100%;display:grid;grid-template-columns:minmax(0,1fr) auto 24px;gap:10px;align-items:center;border:0;background:transparent;padding:14px 4px;text-align:left;color:var(--text)}.three-up-match.active-match .three-up-match-toggle{padding:14px}.three-up-match-toggle span{display:grid;gap:4px;min-width:0}.three-up-match-toggle small{color:var(--green2);font-size:11px;text-transform:uppercase;letter-spacing:1px;font-weight:900}.three-up-match-toggle strong{font-size:16px;line-height:1.25;overflow-wrap:anywhere}.three-up-match-toggle em{font-style:normal;color:var(--muted);font-size:13px;line-height:1.3}.three-up-match-toggle>b{font-size:14px;color:var(--green);white-space:nowrap;text-align:right}.three-up-match-toggle>i{font-style:normal;font-size:24px;color:var(--gold);text-align:center}.three-up-match .match-detail{margin:0;padding:0 12px 14px;border:0;background:transparent}.match-history{display:grid;gap:10px}.match-hole-card{border:1px solid var(--line);border-radius:12px;padding:11px;background:#fff}.match-hole-title{font-weight:900;color:var(--green);margin-bottom:6px}.match-hole-line{display:flex;justify-content:space-between;gap:12px;padding:4px 0;font-size:13px}.match-hole-line span{color:var(--muted)}.match-hole-line strong{text-align:right}.unit-added{display:grid;gap:3px;margin-top:8px;padding:9px 10px;border-radius:9px;background:#e5f2ec;color:var(--green)}.unit-added strong{font-size:13px}.unit-added span{font-size:12px}.three-up-card .match-final{margin:0;display:grid;grid-template-columns:1fr auto;gap:5px 12px;padding:12px;background:#eef4f1;border-radius:12px}.three-up-card .match-final strong{grid-column:1/-1;text-transform:uppercase;letter-spacing:1px;font-size:11px}.three-up-card .match-final b{font-size:17px;color:var(--green)}
@media(max-width:520px){.three-up-match-toggle{grid-template-columns:minmax(0,1fr) 22px}.three-up-match-toggle>b{grid-column:1/2;grid-row:2;text-align:left}.three-up-match-toggle>i{grid-column:2;grid-row:1/3}.three-up-card>h3{display:grid;gap:4px}.three-up-card>h3 small{max-width:none;text-align:left}}


/* Build 022 collapsed Live Money card */
.live-money{padding:0!important;overflow:hidden;border:1px solid var(--line)!important}.live-money-toggle{width:100%;display:flex;align-items:center;justify-content:space-between;gap:16px;border:0;background:#fff;color:var(--green);padding:18px 20px;font-size:20px;font-weight:900;text-align:left;cursor:pointer}.live-money-toggle i{font-style:normal;color:var(--gold);font-size:28px;line-height:1}.live-money-body{padding:0 18px 18px;border-top:1px solid var(--line)}.live-money-body>.eyebrow{padding-top:16px}.live-money.open{border:2px solid var(--gold)!important}@media(max-width:520px){.live-money-toggle{padding:17px 16px;font-size:19px}.live-money-body{padding:0 14px 15px}}

/* Build 023: consistent collapsed game cards */
.collapsible-game{padding:0!important;overflow:hidden;background:#fff}
.game-card-toggle{width:100%;display:flex;align-items:center;justify-content:space-between;gap:16px;border:0;background:#fff;color:var(--green);padding:18px 20px;font-size:20px;font-weight:900;text-align:left;cursor:pointer}
.game-card-toggle i{font-style:normal;color:var(--gold);font-size:28px;line-height:1}
.game-card-body{padding:0 18px 18px;border-top:1px solid var(--line)}
.game-card-body>.eyebrow{padding-top:16px;margin-bottom:8px}
.collapsible-game.open{border:2px solid var(--gold)}
@media(max-width:520px){.game-card-toggle{padding:17px 16px;font-size:19px}.game-card-body{padding:0 14px 15px}}
.scorecard-group + .scorecard-group{margin-top:24px;padding-top:20px;border-top:1px solid rgba(18,75,60,.18)}
.scorecard-group .eyebrow{margin-bottom:8px}

/* Build 027 branded Three Up match-complete popup */
.three-up-popup-backdrop{position:fixed;inset:0;z-index:1000;display:grid;place-items:center;padding:20px;background:rgba(4,25,20,.72);backdrop-filter:blur(5px)}
.three-up-popup{width:min(440px,100%);max-height:calc(100vh - 40px);overflow:auto;background:#fff;border:2px solid var(--gold);border-radius:22px;padding:24px;box-shadow:0 24px 70px rgba(0,0,0,.35);text-align:center}
.three-up-popup-brand{display:inline-flex;align-items:baseline;gap:5px;color:var(--green);font-size:24px;font-weight:950;letter-spacing:.5px}.three-up-popup-brand>span{color:var(--gold)}.three-up-popup-brand small{font-size:10px;letter-spacing:1.5px;color:var(--green2)}
.three-up-popup-kicker{margin-top:14px;color:var(--green2);font-size:11px;font-weight:900;letter-spacing:1.25px;text-transform:uppercase}
.three-up-popup h2{margin:7px 0 5px;color:var(--green);font-size:27px;line-height:1.15}
.three-up-popup-payout{display:inline-block;margin:8px 0 18px;padding:9px 15px;border-radius:999px;background:#eef4f1;color:var(--green);font-size:18px;font-weight:950}
.three-up-popup-next{display:grid;gap:4px;padding:16px;border:1px solid var(--line);border-radius:14px;background:#fbf7ec}.three-up-popup-next span{color:var(--gold);font-size:11px;font-weight:900;letter-spacing:1.1px;text-transform:uppercase}.three-up-popup-next strong{color:var(--text);font-size:17px}.three-up-popup-next em{font-style:normal;color:var(--muted);font-size:12px}.three-up-popup-next small{margin-top:4px;color:var(--green2);font-weight:800}.three-up-popup-next.round-finished{background:#f4f7f5}
.three-up-popup-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:18px}.three-up-popup-actions .btn{width:100%;min-height:48px}
@media(max-width:480px){.three-up-popup-backdrop{padding:14px}.three-up-popup{padding:20px 16px;border-radius:18px}.three-up-popup h2{font-size:23px}.three-up-popup-actions{grid-template-columns:1fr}}
.point-legend,.junk-integrated-note{margin-top:10px;padding:10px;border-radius:10px;background:#f3f6f4;font-size:.84rem;color:#365247}.settlement-title{margin-top:16px;padding-top:12px;border-top:1px solid #d9e3de;font-weight:800;text-transform:uppercase;font-size:.78rem;letter-spacing:.06em}.positive{color:#0c6b45}.negative{color:#a33a3a}.junk-popup-backdrop{position:fixed;inset:0;background:rgba(8,26,21,.66);display:flex;align-items:flex-end;justify-content:center;z-index:1000}.junk-popup{background:#fff;width:min(720px,100%);max-height:88vh;overflow:auto;border-radius:22px 22px 0 0;padding:22px}.junk-grid{display:grid;gap:12px;margin:16px 0}.junk-grid fieldset{border:1px solid #d8e2dd;border-radius:12px;padding:10px}.junk-grid legend{font-weight:800;padding:0 6px}.junk-grid label{display:block;padding:8px 4px;border-bottom:1px solid #eef2f0}.junk-grid label:last-child{border-bottom:0}.junk-actions{display:flex;gap:10px;position:sticky;bottom:0;background:#fff;padding-top:12px}.junk-actions .btn{flex:1}

/* Build 034 compact Junk Dots UI */
.junk-popup-backdrop{align-items:center;padding:18px}.compact-junk-popup{width:min(760px,100%);max-height:92vh;border:2px solid #d7b354;border-radius:22px;padding:0;overflow:hidden;background:#fbfaf5}.junk-popup-head{padding:22px 28px;background:#0b4c2a;border-bottom:4px solid #d7b354;color:#fff}.junk-popup-head .eyebrow{color:#d9e4de;letter-spacing:.18em}.junk-popup-head h2{margin:4px 0 0;color:#d7b354;text-transform:uppercase;font-size:2rem;letter-spacing:.03em}.junk-popup-body{padding:22px 26px;overflow:auto;max-height:calc(92vh - 170px)}.junk-popup-body h3{margin:0 0 8px;color:#0b4c2a;text-transform:uppercase;font-size:1.6rem;letter-spacing:.03em}.junk-player-list{display:grid;gap:16px;margin-top:18px}.junk-player-row>strong{display:block;margin-bottom:8px;font-size:1.05rem}.junk-button-row{display:flex;flex-wrap:wrap;gap:8px}.junk-dot-button{appearance:none;border:2px solid #dedbd2;background:#fff;border-radius:10px;padding:10px 14px;color:#1683ef;font:inherit;font-weight:800;min-height:44px}.junk-dot-button.selected{background:#1683ef;border-color:#1683ef;color:#fff}.junk-dot-button.negative-junk{border-color:#e53935;color:#e53935}.junk-dot-button.negative-junk.selected{background:#e53935;color:#fff}.junk-actions.compact{position:static;padding:14px 26px 22px;background:#fbfaf5}.junk-actions.compact .btn{min-height:54px;font-size:1.05rem}.junk-actions.compact .full{width:100%}@media(max-width:480px){.junk-popup-backdrop{padding:10px}.compact-junk-popup{border-radius:18px}.junk-popup-head{padding:18px 20px}.junk-popup-head h2{font-size:1.65rem}.junk-popup-body{padding:18px 18px}.junk-popup-body h3{font-size:1.35rem}.junk-dot-button{padding:9px 12px}}

/* Build 036 expanded audit views */
.team-hole-detail-header.detailed,.thd-player-row,.point-hole-head,.point-hole-row{display:grid;grid-template-columns:.7fr 1.5fr .9fr 1.2fr .8fr;gap:8px;align-items:center}.thd-hole-block,.point-hole-breakdown{border-top:1px solid #d9e2dc;padding:10px 0}.thd-hole-summary,.point-hole-title{display:flex;justify-content:space-between;gap:10px;margin-bottom:7px}.thd-player-row,.point-hole-row{padding:5px 0}.point-hole-head{font-size:.72rem;text-transform:uppercase;color:#667}.expanded-hole-list{margin-top:14px}.negative{color:#a22}.positive{color:#176b4b}
/* Build 039 universal drill-down and scoring refinements */
.audit-hole{border-top:1px solid rgba(16,77,59,.14)}
.audit-hole-toggle,.fbo-race-toggle{width:100%;display:grid;grid-template-columns:auto 1fr auto auto;gap:.65rem;align-items:center;padding:.9rem .25rem;border:0;background:transparent;color:var(--green,#0f513d);text-align:left}
.audit-hole-toggle span{font-weight:800}.audit-hole-toggle small{color:#6d7873}.audit-hole-toggle i,.fbo-race-toggle i{color:#d8ae45;font-style:normal;font-size:1.4rem}
.audit-hole-body{padding:.15rem .35rem .9rem .8rem;border-left:4px solid #d8ae45}
.audit-player-row{display:grid;grid-template-columns:1.3rem minmax(0,1fr) auto;gap:.5rem;padding:.42rem 0;align-items:center}.audit-player-row.has-points{grid-template-columns:1.3rem minmax(0,1fr) auto auto}.audit-player-row.counted{font-weight:800}.audit-player-row>span{color:#d8ae45;font-weight:900;font-size:1.1rem}.audit-player-row em{font-style:normal;white-space:nowrap}.audit-player-row>b{font-size:.86rem;color:#6d7873;white-space:nowrap}
.audit-running{margin-top:.45rem;padding-top:.45rem;border-top:1px dashed #cbd5cf;font-weight:800;text-align:right}
.fbo-race{border:1px solid #d9e2dd;border-radius:14px;margin:.65rem 0;overflow:hidden}.fbo-race-toggle{grid-template-columns:1fr auto auto;padding:1rem}.fbo-race-toggle span{display:flex;flex-direction:column}.fbo-race-toggle small{color:#6d7873}.fbo-leaderboard{padding:0 .9rem .8rem}
.counting-score-list{display:grid;gap:.55rem}.counting-score-choice{display:flex;justify-content:space-between;align-items:center;padding:.9rem;border:2px solid #d9e2dd;border-radius:13px;background:#fff;font-size:1rem}.counting-score-choice.selected{border-color:#0f513d;background:#edf7f2}.counting-score-choice:disabled{opacity:.45}.counting-selection-status{margin-top:1rem;padding:.75rem;border-radius:10px;background:#f1f5f2}
.score-net-label{font-size:.78rem;white-space:nowrap}

.game-card-title{display:grid;gap:5px;min-width:0;flex:1}.game-card-title>strong{font:inherit;color:inherit;line-height:1.15}.game-card-leader{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:7px;font-size:12px;font-weight:700;color:#687b73;line-height:1.2}.game-card-leader b{color:var(--gold);text-transform:uppercase;letter-spacing:.09em;font-size:9px}.game-card-leader span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.game-card-leader strong{color:var(--green);font-size:13px;white-space:nowrap}.game-card-leader.empty{display:block;font-weight:600;color:#8b9993}.game-card-toggle>i{flex:0 0 auto}@media(max-width:520px){.game-card-leader{grid-template-columns:auto minmax(0,1fr) auto;font-size:11px}.game-card-leader strong{font-size:12px}}
/* Build 047: 6 Point and 12 Point open as one complete running ledger. */
.point-hole-static{cursor:default}
.point-hole-static:hover{background:inherit}

/* Build 048: nested point-game totals and hole-by-hole ledger. */
.point-ledger-section{margin-top:14px;border:1px solid var(--line);border-radius:14px;overflow:hidden;background:#fbfcfb}
.point-ledger-toggle{width:100%;display:flex;align-items:center;justify-content:space-between;gap:14px;border:0;background:#fff;color:var(--green);padding:14px 16px;text-align:left;cursor:pointer}
.point-ledger-toggle span{display:grid;gap:3px}.point-ledger-toggle strong{font-size:15px}.point-ledger-toggle small{color:var(--muted);font-size:12px}.point-ledger-toggle i{font-style:normal;color:var(--gold);font-size:24px;line-height:1}
.point-ledger-section.open{border-color:var(--gold)}.point-ledger-body{margin:0;padding:0 14px 12px;border-top:1px solid var(--line)}

/* Build 049: fixed mobile grid for 6 Point and 12 Point hole ledgers. */
.point-hole-head,.point-hole-row{
  display:grid;
  grid-template-columns:minmax(0,2.25fr) .68fr .68fr .78fr .78fr;
  column-gap:10px;
  align-items:baseline;
  width:100%;
}
.point-hole-head{
  padding:7px 0 5px;
  font-size:.68rem;
  letter-spacing:.035em;
  text-transform:uppercase;
  color:#66716c;
}
.point-hole-row{padding:5px 0;font-variant-numeric:tabular-nums;}
.point-hole-head>span:first-child,.point-hole-row>span:first-child{text-align:left;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.point-hole-head>span:not(:first-child),.point-hole-row>span:not(:first-child),.point-hole-row>strong{text-align:right;justify-self:stretch;}
.point-hole-row>strong{font-weight:800;}
@media(max-width:430px){
  .point-hole-head,.point-hole-row{grid-template-columns:minmax(0,2fr) .62fr .62fr .72fr .72fr;column-gap:7px;}
  .point-hole-head{font-size:.62rem;}
}


/* Build 053: visually separate shared-pot, side-game, and scorecard sections. */
.game-section{margin-top:22px;padding:10px 10px 14px;border:1px solid rgba(18,75,60,.16);border-radius:19px;background:rgba(255,255,255,.42)}
.game-section-header{display:flex;align-items:center;justify-content:space-between;margin:-10px -10px 8px;padding:13px 16px;border-radius:18px 18px 0 0;border-bottom:3px solid var(--gold);background:var(--green);color:#fff}
.game-section-header div{display:grid;gap:2px}.game-section-header span{text-transform:uppercase;letter-spacing:.12em;font-size:.78rem;font-weight:900}.game-section-header small{color:#dcece6;font-size:.72rem}
.side-game-section .game-section-header{background:#e9f4ef;color:var(--green);border-bottom-color:var(--green2)}.side-game-section .game-section-header small{color:var(--muted)}
.scorecards-section .game-section-header{background:#f4ead0;color:var(--green);border-bottom-color:var(--gold)}.scorecards-section .game-section-header small{color:var(--muted)}
.game-section>.game-card:first-of-type{margin-top:8px}
.race-player-toggle{width:100%;border:0;background:transparent;color:inherit;text-align:left;cursor:pointer;font:inherit}.race-player-toggle:hover{background:#f4f7f5}
.race-player-scorecard{margin:0 0 10px 18px;padding:10px 12px;border-left:4px solid var(--gold);background:#fbf7ec;border-radius:0 10px 10px 0}
.race-scorecard-title{display:flex;justify-content:space-between;gap:10px;padding-bottom:7px;margin-bottom:4px;border-bottom:1px dashed var(--line)}.race-scorecard-title small{color:var(--muted)}
.race-scorecard-row{display:grid;grid-template-columns:1fr auto 46px;gap:12px;align-items:center;padding:6px 0;border-bottom:1px solid rgba(18,75,60,.08);font-variant-numeric:tabular-nums}.race-scorecard-row:last-child{border-bottom:0}.race-scorecard-row b{text-align:right;color:var(--green)}
@media(max-width:520px){.game-section{padding:8px 7px 12px}.game-section-header{margin:-8px -7px 7px}.race-player-scorecard{margin-left:8px}.race-scorecard-title{display:grid}}

/* Build 054: clean score-detail columns and horizontal FBO² scorecards. */
.audit-score-head,.audit-score-grid{display:grid;align-items:center;gap:.45rem;font-variant-numeric:tabular-nums}
.audit-score-head{padding:.3rem 0 .45rem;border-bottom:1px solid var(--line);color:#6d7873;text-transform:uppercase;font-size:.7rem;letter-spacing:.05em}
.audit-score-head.stableford-grid,.audit-score-grid.stableford-grid{grid-template-columns:1.3rem minmax(5.6rem,1fr) minmax(5rem,auto) 3.4rem 3.4rem}
.audit-score-head.birdie-grid,.audit-score-grid.birdie-grid{grid-template-columns:1.3rem minmax(5.6rem,1fr) minmax(5rem,auto) 3.4rem}
.audit-score-grid em,.audit-score-grid b,.audit-score-grid i{text-align:right;white-space:nowrap;font-style:normal}
.audit-score-grid b{color:var(--green)}
.audit-score-grid i{color:#6d7873;font-weight:800}
.fbo-scorecard-scroll{overflow-x:auto;overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch;border:1px solid var(--line);border-radius:12px;background:#fff}
.fbo-scorecard-grid{min-width:max-content}
.fbo-grid-row{display:grid;grid-template-columns:72px repeat(var(--fbo-cols),48px);border-bottom:1px solid rgba(18,75,60,.1)}
.fbo-grid-row:last-child{border-bottom:0}
.fbo-grid-row>*{padding:9px 7px;text-align:center;font-variant-numeric:tabular-nums;border-right:1px solid rgba(18,75,60,.08)}
.fbo-grid-row>*:last-child{border-right:0}
.fbo-grid-label{position:sticky;left:0;z-index:2;text-align:left!important;background:#fbf7ec;color:var(--green)}
.fbo-grid-row .score-eagle{background:#8fc8a7}.fbo-grid-row .score-birdie{background:#d9efdf}.fbo-grid-row .score-par{background:#fff}.fbo-grid-row .score-bogey{background:#f7dfe3}.fbo-grid-row .score-double{background:#efbfc7}
@media(max-width:520px){.audit-score-head.stableford-grid,.audit-score-grid.stableford-grid{grid-template-columns:1.1rem minmax(4.8rem,1fr) minmax(4.4rem,auto) 3rem 3.1rem;gap:.3rem}.audit-score-head.birdie-grid,.audit-score-grid.birdie-grid{grid-template-columns:1.1rem minmax(4.8rem,1fr) minmax(4.4rem,auto) 3rem;gap:.3rem}.audit-score-head{font-size:.62rem}}
.fbo-total-cell{font-weight:800;background:rgba(216,176,75,.16);border-left:1px solid rgba(216,176,75,.45)}
.race-category-total{display:flex;justify-content:space-between;align-items:center;margin-top:.65rem;padding:.65rem .75rem;border-top:1px dashed #c8d7d0;font-weight:800;color:#0f513f}

/* Build 060: Quota player scoring audit */
.quota-detail{padding:12px 6px 4px}.quota-table-wrap{width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;border:1px solid #d5dfda;border-radius:12px;background:#fff}.quota-hole-head,.quota-hole-row{display:grid;grid-template-columns:46px 40px 50px minmax(88px,1fr) 42px 58px;align-items:center;min-width:360px}.quota-hole-head{position:sticky;top:0;z-index:1;background:#0e513e;color:#fff;font-size:.68rem;font-weight:800;text-transform:uppercase;letter-spacing:.035em}.quota-hole-head span{padding:9px 4px;text-align:center}.quota-hole-row{border-top:1px solid #e0e6e3;min-height:42px}.quota-hole-row>strong,.quota-hole-row>span,.quota-hole-row>b,.quota-hole-row>em{padding:8px 4px;text-align:center;font-size:.82rem;font-style:normal;font-variant-numeric:tabular-nums;white-space:nowrap}.quota-hole-row>strong,.quota-hole-row>b,.quota-hole-row>em{font-weight:800}.quota-hole-row em{color:#0e513e}.quota-result{font-weight:700}.quota-result.under{color:#19733d}.quota-result.par{color:#1768aa}.quota-result.bogey{color:#c63b2f}.quota-result.double{color:#666}.quota-detail-head{display:grid;grid-template-columns:repeat(3,1fr);margin-top:10px;border:1px solid #e1ddcf;border-radius:12px;background:#fbf7eb;overflow:hidden}.quota-detail-head span,.quota-detail-head strong{text-align:center;padding:6px 4px}.quota-detail-head span{color:#6d7e78;font-size:.64rem;text-transform:uppercase;letter-spacing:.04em}.quota-detail-head strong{padding-top:0;font-size:1.05rem;color:#123f31;font-variant-numeric:tabular-nums}.quota-detail-head span:nth-child(1){grid-column:1;grid-row:1}.quota-detail-head strong:nth-child(2){grid-column:1;grid-row:2}.quota-detail-head span:nth-child(3){grid-column:2;grid-row:1}.quota-detail-head strong:nth-child(4){grid-column:2;grid-row:2}.quota-detail-head span:nth-child(5){grid-column:3;grid-row:1}.quota-detail-head strong:nth-child(6){grid-column:3;grid-row:2}.quota-detail-head>*:nth-child(1),.quota-detail-head>*:nth-child(2),.quota-detail-head>*:nth-child(3),.quota-detail-head>*:nth-child(4){border-right:1px solid #e1ddcf}@media(max-width:430px){.quota-detail{padding-left:0;padding-right:0}.quota-hole-head,.quota-hole-row{grid-template-columns:42px 36px 46px minmax(82px,1fr) 38px 54px;min-width:330px}.quota-hole-row>strong,.quota-hole-row>span,.quota-hole-row>b,.quota-hole-row>em{font-size:.75rem;padding:8px 2px}.quota-hole-head span{font-size:.62rem;padding:8px 2px}}


/* Build 062: TORIIE-native Quota ledger */
.team-hole-detail > .quota-detail{
  display:block;
  grid-template-columns:none;
  gap:0;
  width:100%;
  padding:10px 0 2px;
  border-bottom:0;
  font-size:inherit;
}
.quota-detail{
  min-width:0;
  overflow:hidden;
}
.quota-table-wrap{
  display:block;
  width:100%;
  max-width:100%;
  overflow-x:auto;
  border:1px solid #d5dfda;
  border-radius:12px;
  background:#fff;
  box-shadow:0 3px 12px rgba(18,75,60,.05);
}
.quota-hole-head,.quota-hole-row{
  width:100%;
  min-width:560px;
  grid-template-columns:52px 46px 58px minmax(116px,1fr) 50px 66px;
}
.quota-hole-head{
  background:var(--green);
  color:#fff;
}
.quota-hole-row:nth-child(odd){background:#fbfcfb}
.quota-hole-row:last-child{border-bottom:0}
.quota-detail-head{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  margin-top:10px;
  border:1px solid #dfd7c2;
  border-radius:12px;
  background:#fbf7eb;
  overflow:hidden;
}
.quota-detail-head>div{
  display:grid;
  gap:2px;
  justify-items:center;
  padding:9px 5px 10px;
  min-width:0;
}
.quota-detail-head>div+div{border-left:1px solid #dfd7c2}
.quota-detail-head span{
  padding:0;
  color:#6d7e78;
  font-size:.65rem;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:.05em;
  white-space:nowrap;
}
.quota-detail-head strong{
  padding:0;
  color:var(--green);
  font-size:1.15rem;
  line-height:1.1;
  font-variant-numeric:tabular-nums;
}
.quota-empty{
  display:grid;
  gap:4px;
  width:100%;
  padding:16px;
  border:1px solid #d5dfda;
  border-radius:12px;
  background:#fff;
  color:var(--green);
  text-align:center;
}
.quota-empty span{color:var(--muted);font-size:.78rem;line-height:1.35}
@media(max-width:430px){
  .team-hole-detail > .quota-detail{padding:8px 0 0}
  .quota-hole-head,.quota-hole-row{
    min-width:520px;
    grid-template-columns:46px 40px 52px minmax(108px,1fr) 44px 62px;
  }
  .quota-hole-head span{font-size:.61rem;padding:8px 3px}
  .quota-hole-row>strong,.quota-hole-row>span,.quota-hole-row>b,.quota-hole-row>em{font-size:.75rem;padding:8px 3px}
  .quota-detail-head>div{padding:8px 3px 9px}
  .quota-detail-head span{font-size:.58rem}
  .quota-detail-head strong{font-size:1.05rem}
}


/* Build 063: Quota five-column mobile ledger */
.quota-table-wrap{
  width:100%;
  max-width:100%;
  overflow-x:hidden;
}
.quota-hole-head,.quota-hole-row{
  display:grid;
  width:100%;
  min-width:0;
  grid-template-columns:1fr .8fr 1fr 1fr 1fr;
}
.quota-hole-head span,
.quota-hole-row>strong,
.quota-hole-row>span,
.quota-hole-row>b,
.quota-hole-row>em{
  min-width:0;
  text-align:center;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:clip;
  font-variant-numeric:tabular-nums;
}
.quota-hole-head span{font-size:.62rem;padding:8px 2px;letter-spacing:.025em}
.quota-hole-row>strong,.quota-hole-row>span,.quota-hole-row>b,.quota-hole-row>em{font-size:.78rem;padding:8px 2px}
@media(max-width:390px){
  .quota-hole-head span{font-size:.57rem;padding:7px 1px}
  .quota-hole-row>strong,.quota-hole-row>span,.quota-hole-row>b,.quota-hole-row>em{font-size:.72rem;padding:7px 1px}
}

/* Build 070: TORIIE UX polish pass */
:root{
  --radius-card:18px;
  --radius-control:12px;
  --space-1:6px;
  --space-2:10px;
  --space-3:14px;
  --space-4:18px;
  --space-5:24px;
  --shadow-card:0 7px 22px rgba(18,75,60,.08);
  --shadow-raised:0 14px 36px rgba(18,75,60,.14);
  --focus-ring:0 0 0 3px rgba(211,173,86,.28);
}
html{scroll-behavior:smooth;overflow-x:hidden}
body{line-height:1.42;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;overflow-x:hidden}
button,.btn,.tab,.team-name-btn{min-height:44px;touch-action:manipulation;-webkit-tap-highlight-color:transparent}
button:focus-visible,.btn:focus-visible,.tab:focus-visible,input:focus-visible,select:focus-visible{outline:0;box-shadow:var(--focus-ring)}
.shell{padding-bottom:96px}
.card{border-radius:var(--radius-card);box-shadow:var(--shadow-card);transition:border-color .2s ease,box-shadow .2s ease,transform .2s ease}
.game-card{background:#fff;border-color:#d5ded9;border-radius:var(--radius-card);padding:0;overflow:hidden;box-shadow:var(--shadow-card);transition:box-shadow .22s ease,border-color .22s ease}
.game-card:hover{border-color:#bdd0c6}
.game-card>h3,.game-card>.game-card-header,.game-card summary{margin:0;padding:15px 16px;min-height:58px;align-items:center}
.game-card[open],.game-card.expanded{box-shadow:var(--shadow-raised);border-color:#a9c4b7}
.game-card .leader-row:first-of-type{border-top:0}
.leader-row,.result-row{padding:10px 14px;margin:0;align-items:center;min-height:43px}
.leader-row strong,.result-row strong{font-variant-numeric:tabular-nums}
.leader-row.leader{background:linear-gradient(90deg,#fbf6e8,#fff);border-left:4px solid var(--gold);margin:0;padding-left:10px;border-radius:0}
.money-summary{margin:0;padding:12px 14px;border-top:1px solid #e8edea;background:#fafcfb}
.money-summary span{border:1px solid #e0e8e4;background:#fff;font-weight:750}
.payout-row{padding:9px 14px}
.eyebrow{font-size:10px;letter-spacing:1.85px}
.meta{line-height:1.45}
.status{min-height:30px;padding:6px 11px}
.btn{min-height:46px;border-radius:var(--radius-control);padding:12px 17px;transition:transform .14s ease,box-shadow .14s ease,background .14s ease}
.btn:not(:disabled):active{transform:translateY(1px)}
.btn:not(:disabled):hover{box-shadow:0 6px 16px rgba(18,75,60,.15)}
.btn.secondary{border-width:1.5px}
.tabs{padding:2px 1px 6px;scrollbar-width:none}.tabs::-webkit-scrollbar{display:none}
.tab{min-height:40px;padding:8px 13px}
.round-banner,.hero{box-shadow:var(--shadow-raised)}
.score-row{box-shadow:0 2px 8px rgba(18,75,60,.04)}
.score-btn{min-height:44px}
.scorecard{border:1px solid var(--line);border-radius:14px;background:#fff;overscroll-behavior-x:contain}
.scorecard table{font-variant-numeric:tabular-nums}
.scorecard th{background:#edf5f1;color:var(--green);font-weight:900;text-transform:uppercase;letter-spacing:.045em}
.scorecard th,.scorecard td{padding:8px 7px}
.scorecard tbody tr:nth-child(even) td{background-color:#fbfcfb}
.scorecard th:first-child,.scorecard td:first-child{box-shadow:3px 0 7px rgba(18,75,60,.06)}
.live-section-header,.game-section-header{margin:24px 0 10px;padding:11px 14px;border-radius:14px;background:linear-gradient(135deg,var(--green),#17694c);color:#fff;border-bottom:3px solid var(--gold)}
.live-section-header h2,.live-section-header h3,.game-section-header h2,.game-section-header h3{margin:0;font-size:15px;letter-spacing:.04em}
.live-section-header p,.game-section-header p{margin:3px 0 0;color:#dbeae4;font-size:12px}
.empty-state,.no-scores,.awaiting-score{padding:18px 14px;text-align:center;border:1px dashed #c8d4ce;border-radius:13px;background:#fafcfb;color:var(--muted)}
.live-menu{border-radius:14px;box-shadow:var(--shadow-raised);overflow:hidden}
.live-menu button{min-height:46px}
.quota-ledger{border-radius:14px;overflow:hidden;border:1px solid #d6e0db;background:#fff}
.quota-ledger-header,.quota-ledger-row{font-variant-numeric:tabular-nums}
.quota-ledger-header{background:var(--green)!important;color:#fff!important}
.quota-ledger-row:nth-child(even){background:#f8fbf9}
.quota-ledger-summary{background:#f4f8f6;border-top:1px solid #dce6e1}
.team-hole-detail{border-radius:0 12px 12px 0}
@media(max-width:650px){
  .shell{padding-left:12px;padding-right:12px}
  .card{padding:15px}
  .game-card{margin-top:10px}
  .game-card>h3,.game-card>.game-card-header,.game-card summary{padding:13px 14px;min-height:54px}
  .leader-row,.result-row{padding:9px 12px}
  .money-summary{padding:10px 12px}
  .hero{padding:20px;border-radius:18px}
  .topbar{padding:13px 14px}
  .wordmark{font-size:27px}
}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}

.individual-points-ledger{border:1px solid rgba(24,82,60,.18);border-radius:14px;overflow:hidden;margin:8px 0 14px}.individual-points-head,.individual-points-row{display:grid;grid-template-columns:.65fr .65fr .9fr .9fr .7fr .85fr;gap:4px;align-items:center;text-align:center;padding:9px 8px}.individual-points-head{background:var(--green,#174f3b);color:white;font-size:.72rem;font-weight:800}.individual-points-row{border-top:1px solid rgba(24,82,60,.12);font-variant-numeric:tabular-nums}.individual-points-row b{color:var(--green,#174f3b)}
.buyin-card{border-color:rgba(184,142,55,.55)}.buyin-player{border-top:1px solid rgba(24,82,60,.12)}.buyin-player summary{display:flex;justify-content:space-between;align-items:center;padding:12px 2px;cursor:pointer;font-weight:800}.buyin-player>div{display:flex;justify-content:space-between;padding:7px 12px;color:#42534b}.buyin-player>div:last-child{padding-bottom:12px}

/* Build 073 mobile detail and contest payout polish */
.individual-points-ledger{width:100%;overflow:hidden}.individual-points-head,.individual-points-row{grid-template-columns:.55fr .55fr .8fr .75fr .65fr .8fr;gap:2px;padding:8px 4px;font-size:.78rem}.individual-points-head{font-size:.66rem}.individual-points-row span,.individual-points-row strong,.individual-points-row b{min-width:0;text-align:center}.contest-payout{margin-top:12px;padding-top:8px;border-top:1px solid rgba(24,82,60,.18)}.contest-payout .settlement-title{font-weight:800;color:var(--green,#174f3b);margin-bottom:4px}
@media(max-width:430px){.individual-points-head,.individual-points-row{font-size:.72rem;padding:8px 2px}.individual-points-head{font-size:.6rem;letter-spacing:.02em}}
/* Build 074: cleaner expanded cards and compact mobile ledgers */
.team-hole-detail{margin:0 0 12px;padding:10px 0;border-left:0;background:transparent;border-radius:0}
.team-hole-detail::before{display:none!important}
.team-hole-detail>.quota-detail,.team-hole-detail>.individual-points-ledger,.team-hole-detail>.audit-hole-list{margin-left:0}
.individual-points-head,.individual-points-row{grid-template-columns:.62fr .95fr .95fr .78fr 1fr!important;gap:3px!important;padding:9px 5px!important;font-size:.78rem!important}
.individual-points-head{font-size:.64rem!important;letter-spacing:.01em}
.individual-points-ledger{width:100%;max-width:100%;overflow:hidden}
.financial-section{margin-top:18px}
.financial-section>.game-card{margin:12px 0}
.payout-summary-card{border-color:rgba(24,82,60,.3)}
@media(max-width:430px){
 .individual-points-head,.individual-points-row{font-size:.72rem!important;padding:8px 3px!important}
 .individual-points-head{font-size:.58rem!important}
 .financial-section{padding-left:10px;padding-right:10px}
}
/* Team Cup V1 */
.cup-live-shell{background:linear-gradient(145deg,#062e24,#0c4938);color:#fff;border-radius:20px;padding:16px;margin-bottom:14px;box-shadow:0 10px 30px #062e2430}.cup-live-title{text-align:center;display:grid;gap:2px}.cup-live-title>span{font-size:.68rem;letter-spacing:.18em;color:#d7b867}.cup-live-title>strong{font-size:1.35rem}.cup-live-title>small{color:#c9ddd5}.cup-live-score{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:8px;margin-top:14px}.cup-live-score>div{border-top:5px solid var(--team);background:#ffffff12;border-radius:12px;padding:10px;text-align:center;display:grid}.cup-live-score>div strong{font-size:2rem}.cup-live-score>div small{font-size:.72rem;color:#d4e3dd}.cup-live-score>span{font-size:.62rem;letter-spacing:.08em;color:#d7b867}.cup-my-match{margin-top:12px;background:#fff;color:#123c30;border-radius:12px;padding:11px;display:grid;text-align:center}.cup-my-match>span{font-size:.65rem;letter-spacing:.12em;color:#8a6a20}.cup-my-match>small{color:#61756d}
/* Team Cup Live Build 077 */
.cup-live-shell{border-radius:20px;overflow:hidden;background:#f7faf8;border:1px solid #d9e4dd;box-shadow:0 10px 30px rgba(10,55,37,.12);margin-bottom:16px}.cup-live-title{text-align:center;padding:18px 14px 12px;background:#0d3f2d;color:#fff}.cup-live-title span{display:block;font-size:10px;letter-spacing:.18em;color:#d4b764}.cup-live-title strong{display:block;font-size:24px;margin:4px 0}.cup-live-score{display:grid;grid-template-columns:1fr auto 1fr;gap:8px;align-items:center;padding:14px}.cup-live-score>div{text-align:center;border-top:5px solid var(--team);padding-top:8px}.cup-live-score strong{display:block;font-size:30px}.cup-live-score>span{font-size:9px;letter-spacing:.1em;color:#68776f}.cup-my-match{margin:0 14px 14px;padding:14px;border-radius:14px;background:#fff;text-align:center;border:1px solid #e1e9e4}.cup-my-match span,.cup-my-match small{display:block}.cup-my-match span{font-size:10px;letter-spacing:.14em;color:#0b5d3b}.cup-my-match strong{display:block;font-size:17px;margin:5px 0}

/* BUILD 080 — TORIIE-first Cup layout and readable team leader cards */
.cup-live-score>div{
  background:var(--team-bg,#0b5d3b)!important;
  color:var(--team-text,#fff)!important;
  border-top-color:var(--team)!important;
  border-radius:14px;
  padding:12px 8px!important;
  box-shadow:0 5px 15px rgba(10,45,34,.14);
}
.cup-live-score>div b,.cup-live-score>div strong{color:var(--team-text,#fff)!important}
.cup-live-score>div small{color:var(--team-sub,rgba(255,255,255,.82))!important}
.mode-tabs{position:relative;z-index:2}
.round-banner{margin-top:10px}

/* TORIIE Build 081 — Team Cup readability, stroke guide and result overlays */
.cup-live-score>span{display:grid;gap:3px;text-align:center;min-width:58px;color:#41564d}.cup-live-score>span b{font-size:9px;letter-spacing:.12em}.cup-live-score>span small{font-size:10px;letter-spacing:0;color:#6b7b74}.cup-stroke-guide-btn{display:block;width:calc(100% - 28px);margin:0 14px 12px;border:1px solid #0b5d3b;background:#eef7f2;color:#0b5d3b;border-radius:12px;padding:10px 12px;font:800 12px/1.2 inherit;letter-spacing:.04em}.cup-my-match{text-align:left}.cup-my-match>span{text-align:center;margin-bottom:7px}.cup-my-match>small{text-align:center;margin-top:9px}.cup-result-line{display:grid;grid-template-columns:72px 1fr;gap:10px;align-items:center;padding:8px 0;border-top:1px solid #e6ece8}.cup-result-line:first-of-type{border-top:0}.cup-result-line span{font-size:11px;font-weight:800;letter-spacing:.08em;color:#65766e;text-transform:uppercase}.cup-result-line strong{font-size:15px;color:#173d30;text-align:right}.cup-match-results{padding:0 14px 14px}.cup-subhead{display:flex;justify-content:space-between;align-items:end;gap:8px;margin:3px 0 9px;color:#173d30}.cup-subhead strong{font-size:12px;letter-spacing:.1em}.cup-subhead span{font-size:10px;color:#718078}.cup-result-card{background:#fff;border:1px solid #dce6e0;border-radius:14px;padding:12px;margin-top:9px;color:#173d30}.cup-result-card.current{border:2px solid #0b5d3b;box-shadow:0 5px 16px rgba(11,93,59,.12)}.cup-result-head{display:flex;justify-content:space-between;gap:8px;align-items:center}.cup-result-head span{font-size:10px;font-weight:900;letter-spacing:.08em;color:#0b5d3b}.cup-result-head b{font-size:10px;color:#8a6a20}.cup-result-players{display:grid;grid-template-columns:1fr auto 1fr;gap:8px;align-items:center;text-align:center;margin:9px 0 5px}.cup-result-players strong{font-size:13px}.cup-result-players span{font-size:10px;color:#7c8983;text-transform:uppercase}.cup-popup-segments{margin:12px 0}.cup-popup-status{text-align:center;font-weight:800;color:#173d30}.cup-next-strokes{margin:16px 0 4px;padding:13px;border-radius:12px;background:#eef7f2;text-align:center}.cup-next-strokes span{display:block;font-size:10px;font-weight:900;letter-spacing:.12em;color:#0b5d3b;margin-bottom:6px}.cup-next-strokes strong{font-size:16px;line-height:1.5;color:#173d30}#cup-result-overlay{position:fixed;inset:0;z-index:9999;background:rgba(3,24,17,.68);display:none;align-items:center;justify-content:center;padding:20px env(safe-area-inset-right) 20px env(safe-area-inset-left);backdrop-filter:blur(4px)}#cup-result-overlay.show{display:flex}.cup-overlay-card{width:min(420px,calc(100vw - 28px));max-height:calc(100dvh - 40px);overflow-y:auto;background:#fff;border-radius:22px;padding:22px;box-shadow:0 22px 70px rgba(0,0,0,.3);color:#173d30}.cup-overlay-brand{text-align:center;font-size:10px;font-weight:900;letter-spacing:.18em;color:#b18c34}.cup-overlay-card h2{text-align:center;margin:8px 0 12px;font-size:22px}.cup-guide-list{margin:14px 0}.cup-guide-row{display:flex;justify-content:space-between;gap:16px;padding:11px 2px;border-bottom:1px solid #e5ece8}.cup-guide-row strong{font-size:17px;color:#0b5d3b}
/* TORIIE Build 082 Team Cup clarity */
.cup-score-entry-summary{margin:0 0 12px;padding:11px 14px;border-radius:14px;background:#eef7f2;border:1px solid #cfe2d7;color:#173d30;display:grid;gap:3px;text-align:center}
.cup-score-entry-summary span{font-size:10px;font-weight:900;letter-spacing:.08em;text-transform:uppercase;color:#0b5d3b}
.cup-score-entry-summary strong{font-size:17px;line-height:1.25}
.cup-result-card{padding:0;overflow:hidden}
.cup-result-summary{display:block;width:100%;border:0;background:#fff;color:inherit;padding:12px;text-align:inherit;font:inherit}
.cup-result-card.current .cup-result-summary{background:#fbfdfc}
.cup-result-overall{display:grid;grid-template-columns:auto 1fr auto;gap:10px;align-items:center;border-top:1px solid #e6ece8;padding-top:9px;margin-top:7px}
.cup-result-overall span{font-size:11px;font-weight:900;letter-spacing:.08em;text-transform:uppercase;color:#65766e}
.cup-result-overall strong{text-align:right;font-size:15px;color:#173d30}
.cup-result-overall i{font-style:normal;font-size:20px;line-height:1;color:#0b5d3b}
.cup-result-details{padding:0 12px 12px;border-top:1px solid #e6ece8;background:#f9fbfa}
.cup-result-points{display:grid;gap:4px;padding:11px 0 2px;border-top:1px solid #e6ece8;text-align:right}
.cup-result-points span{font-size:10px;font-weight:900;letter-spacing:.08em;text-transform:uppercase;color:#8a6a20}
.cup-result-points strong{font-size:14px;color:#173d30}

/* Build 083: always-expanded Cup match cards */
.cup-result-summary.static{cursor:default;border-bottom:1px solid rgba(18,75,60,.12)}

/* Build 085 collapsible Cup sessions */
.cup-live-session{border:1px solid #cadbd2;border-radius:16px;margin:12px 0;background:#f8fbf9;overflow:hidden}.cup-live-session-head{width:100%;border:0;background:#e9f2ed;color:#173d30;padding:14px;display:flex;justify-content:space-between;align-items:center;text-align:left;gap:12px}.cup-live-session-head>span{display:grid;gap:3px}.cup-live-session-head>span:last-child{text-align:right}.cup-live-session-head b{font-size:10px;letter-spacing:.12em;color:#0b5d3b}.cup-live-session-head strong{font-size:16px}.cup-live-session-head small{font-size:11px;color:#677970}.cup-live-session-head i{font-style:normal;font-size:20px}.cup-live-session-matches{padding:0 10px 12px}.cup-live-session .cup-result-card{margin-top:10px}

/* BUILD 087 — TORIIE prototype branding */
:root{--green:#123F1F;--green2:#1B3D2B;--gold:#C9A84C;--cream:#F6F1E8;--ink:#182018;--shadow:0 10px 28px rgba(18,63,31,.14)}
.topbar{background:#123F1F}.brand-refresh{min-height:66px}.brand-lockup{display:flex;flex-direction:column;align-items:center;justify-content:center}.brand-lockup img{display:block;width:150px;max-height:54px;object-fit:contain}.brand-lockup small{color:var(--gold);font-size:10px;font-weight:900;letter-spacing:.38em;margin-top:-5px}.footer{display:flex;flex-direction:column;gap:4px}.footer strong{color:var(--green);letter-spacing:.16em}.footer span{letter-spacing:.12em}.hero{background:linear-gradient(145deg,#123F1F,#246343)}

@media(max-width:650px){.brand-lockup img{width:145px}.version{display:none}}
/* BUILD 088 — locked TORIIE brand system */
:root{--green:#0c2616;--green2:#123f1f;--gold:#d3a94a;--cream:#f6f1e8;--ink:#172018;--shadow:0 10px 28px rgba(12,38,22,.16)}
.topbar{background:#0c2616}.brand-lockup img{width:205px;max-height:60px}.brand-lockup small{display:none}.menu-button{border-color:rgba(211,169,74,.8)}
@media(max-width:650px){.brand-refresh{min-height:72px}.brand-lockup img{width:180px;max-height:54px}}

/* BUILD 100 — Team Cup identity throughout Live scoring */
.score-row.cup-team-row{position:relative;overflow:hidden;border-color:color-mix(in srgb,var(--cup-team) 45%,#d9ddd8);background:linear-gradient(90deg,var(--cup-team-tint),#fff 58%)}
.score-row.cup-team-row::before{content:"";position:absolute;inset:0 auto 0 0;width:6px;background:var(--cup-team)}
.score-row.cup-team-row .score-player{padding-left:5px}
.score-row.cup-team-row .score-player strong{color:#102719}
.cup-scorecard-player{box-shadow:inset 5px 0 0 var(--cup-team)!important;background:linear-gradient(90deg,var(--cup-team-tint),#fff 72%)!important;font-weight:850}
@supports not (color:color-mix(in srgb,black,white)){.score-row.cup-team-row{border-color:#b8c9c0}}

/* Build 103 consolidated TORIIE Cup result dialog */
.cup-result-dialog{border-top:6px solid var(--cup-accent,#caa34a)}
.cup-popup-team-bars{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:12px 0 4px}
.cup-popup-team-bars i{height:7px;border-radius:999px;background:var(--team)}
.cup-result-points{display:grid;gap:5px;margin:14px 0;padding:13px;border:1px solid #dce6e0;border-radius:12px;text-align:center;background:#fafcfb}
.cup-result-points span{font-size:10px;font-weight:900;letter-spacing:.12em;color:#66766e;text-transform:uppercase}
.cup-result-points strong{font-size:16px;color:#173d30}
.cup-session-complete{display:grid;gap:5px;margin:14px 0;padding:14px;border-radius:14px;background:#082f20;color:#fff;text-align:center}
.cup-session-complete span{font-size:10px;font-weight:900;letter-spacing:.14em;color:#e6bd58}
.cup-session-complete strong{font-size:17px}.cup-session-complete small{font-size:14px;color:#dbe9e3}

/* BUILD 107 — compact Cup header, leader-color status and stroke clarity */
.cup-live-title{padding:10px 14px 9px!important;border-radius:18px 18px 0 0}
.cup-live-title span{font-size:9px!important;letter-spacing:.16em!important}
.cup-live-title strong{font-size:20px!important;line-height:1.12;margin:2px 0!important}
.cup-live-title small{font-size:11px;line-height:1.2}
.cup-score-entry-summary{background:#f0f3f1;border-color:#d8e0db;box-shadow:inset 6px 0 0 #aebbb4}
.cup-score-entry-summary.has-leader{background:color-mix(in srgb,var(--match-team) 16%,white);border-color:color-mix(in srgb,var(--match-team) 45%,#d8e0db);box-shadow:inset 7px 0 0 var(--match-team)}
.cup-score-entry-summary.all-square{background:#f0f3f1;border-color:#d8e0db;box-shadow:inset 7px 0 0 #aebbb4}
.cup-score-entry-summary.has-leader span{color:#263b31}
.cup-next-strokes small{display:block;margin:1px 0 7px;font-size:10px;font-weight:900;letter-spacing:.08em;color:#52665c}
.cup-next-strokes strong{display:block}
@supports not (background:color-mix(in srgb,black,white)){.cup-score-entry-summary.has-leader{background:#f4f7f5}}

/* Build 107 Team Cup status and branding */
.cup-score-entry-fbo{padding:11px 10px 10px;box-shadow:none!important;background:#f7faf8!important;border-color:#d8e0db!important}
.cup-summary-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;margin-top:7px}
.cup-summary-segment{min-width:0;border-radius:10px;padding:8px 5px 7px;background:#f0f3f1;border:1px solid #d8e0db;box-shadow:inset 0 4px 0 #aebbb4;display:grid;gap:2px;text-align:center}
.cup-summary-segment.has-leader{background:color-mix(in srgb,var(--segment-team) 15%,white);border-color:color-mix(in srgb,var(--segment-team) 46%,#d8e0db);box-shadow:inset 0 5px 0 var(--segment-team)}
.cup-summary-segment>span{font-size:9px!important;letter-spacing:.12em!important;color:#53665d!important}
.cup-summary-segment>strong{font-size:14px!important;line-height:1.1}
.cup-summary-segment>small{font-size:9px;line-height:1.1;color:#53665d;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.cup-summary-segment.is-final{border-width:2px}
.cup-live-title{padding:8px 12px 7px!important}
.cup-live-title strong{font-size:18px!important}
@supports not (background:color-mix(in srgb,black,white)){.cup-summary-segment.has-leader{background:#f5f7f6}}

/* Build 109: unified Team Cup status, complete scorecard coloring, simplified result popup. */
.scorecard tbody tr:nth-child(even) td.score-birdie,
.scorecard td.score-birdie{background:#d9f3df!important}
.scorecard tbody tr:nth-child(even) td.score-eagle,
.scorecard td.score-eagle{background:#99d7a8!important}
.scorecard tbody tr:nth-child(even) td.score-bogey,
.scorecard td.score-bogey{background:#f7d7df!important}
.scorecard tbody tr:nth-child(even) td.score-double,
.scorecard td.score-double{background:#eca8b8!important}
.scorecard tbody tr:nth-child(even) td.score-par,
.scorecard td.score-par{background:#fff!important}
.scorecard tbody tr:nth-child(even) td.score-empty,
.scorecard td.score-empty{background:#f3f1eb!important;color:#999}
.scorecard tbody tr:nth-child(even) td.score-total,
.scorecard td.score-total{background:#f3ead0!important}

.cup-live-segment-grid,.cup-popup-segment-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;margin-top:10px}
.cup-live-segment-grid .cup-summary-segment{min-height:72px;padding:9px 5px;border-radius:10px}
.cup-live-segment-grid .cup-summary-segment span{font-size:9px}
.cup-live-segment-grid .cup-summary-segment strong{font-size:14px}
.cup-live-segment-grid .cup-summary-segment small{font-size:9px}
.cup-result-details .cup-live-segment-grid{margin:8px 0 0}

.cup-popup-segment{display:grid;align-content:center;gap:3px;min-height:76px;padding:9px 5px;border:1px solid color-mix(in srgb,var(--segment-team) 55%,#dfe7e2);border-top:5px solid var(--segment-team);border-radius:12px;background:color-mix(in srgb,var(--segment-team) 13%,#fff);text-align:center}
.cup-popup-segment span{font-size:9px;font-weight:900;letter-spacing:.14em;text-transform:uppercase;color:#5d7067}
.cup-popup-segment strong{font-size:15px;line-height:1.1;color:#173d30}
.cup-popup-segment small{font-size:9px;line-height:1.15;color:#53675e}
.cup-popup-segment.neutral{--segment-team:#aebbb4}
.cup-popup-segment.is-final{box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--segment-team) 42%,transparent)}
.cup-result-dialog h2{margin:10px 0 8px;font-size:25px;line-height:1.08}
.cup-next-strokes{margin-top:14px}
.cup-next-strokes span{font-size:11px;margin-bottom:8px}
.cup-next-strokes strong{font-size:17px}
@media(max-width:380px){.cup-live-segment-grid,.cup-popup-segment-grid{gap:5px}.cup-popup-segment strong,.cup-live-segment-grid .cup-summary-segment strong{font-size:13px}}



/* Build 118: Quota-style ledger for Individual and Modified Stableford only */
.stableford-quota-detail{
  width:100%;
  min-width:0;
  padding:10px 0 2px;
}
.stableford-quota-wrap{
  width:100%;
  max-width:100%;
  overflow:hidden;
  border:1px solid #d5dfda;
  border-radius:12px;
  background:#fff;
  box-shadow:0 3px 12px rgba(18,75,60,.05);
}
.stableford-quota-head,
.stableford-quota-row{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  align-items:center;
  width:100%;
  min-width:0;
  text-align:center;
  font-variant-numeric:tabular-nums;
}
.stableford-quota-head{
  background:var(--green,#174f3b);
  color:#fff;
  font-size:.66rem;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:.035em;
}
.stableford-quota-head span{
  min-width:0;
  padding:9px 3px;
  white-space:nowrap;
}
.stableford-quota-row{
  min-height:42px;
  border-top:1px solid #e0e6e3;
}
.stableford-quota-row:nth-child(odd){background:#fbfcfb}
.stableford-quota-row>strong,
.stableford-quota-row>span,
.stableford-quota-row>b{
  min-width:0;
  padding:9px 3px;
  color:#18312a;
  font-size:.84rem;
  font-style:normal;
  font-weight:700;
  text-align:center;
  white-space:nowrap;
}
.stableford-quota-row>b{
  color:var(--gold,#c8a44d);
  font-weight:900;
}
@media(max-width:430px){
  .stableford-quota-detail{padding:8px 0 0}
  .stableford-quota-head{font-size:.61rem}
  .stableford-quota-head span{padding:8px 2px}
  .stableford-quota-row>strong,
  .stableford-quota-row>span,
  .stableford-quota-row>b{font-size:.78rem;padding:8px 2px}
}


/* Build 119: isolate Stableford ledgers from the generic team-hole-detail grid.
   Individual Stableford and Modified Stableford only. */
.team-hole-detail > .stableford-quota-detail{
  display:block !important;
  grid-template-columns:none !important;
  gap:0 !important;
  width:100% !important;
  max-width:100% !important;
  min-width:0 !important;
  margin:0 !important;
  padding:10px 0 2px !important;
  border:0 !important;
  font-size:inherit !important;
}
.team-hole-detail > .stableford-quota-detail > .stableford-quota-wrap{
  display:block !important;
  width:100% !important;
  max-width:100% !important;
  min-width:0 !important;
  margin:0 !important;
}
.team-hole-detail > .stableford-quota-detail .stableford-quota-head,
.team-hole-detail > .stableford-quota-detail .stableford-quota-row{
  display:grid !important;
  grid-template-columns:repeat(4,minmax(0,1fr)) !important;
  gap:0 !important;
  width:100% !important;
  max-width:100% !important;
  min-width:0 !important;
}

/* Build 120: Team Cup win target and captain view */
.cup-win-target{margin:14px 0 4px;padding:13px 16px;border:1px solid #d2ded8;border-radius:15px;background:#f5f8f6;text-align:center;display:grid;gap:3px}
.cup-win-target strong{color:var(--green);font-size:16px}.cup-win-target span{color:var(--muted);font-size:13px}
.captain-dashboard{margin:16px 0;padding:16px;border:2px solid var(--captain-team);border-radius:18px;background:linear-gradient(135deg,color-mix(in srgb,var(--captain-team) 12%,white),#fff);box-shadow:0 8px 22px rgba(18,75,60,.08)}
.captain-heading{display:flex;justify-content:space-between;gap:14px;align-items:flex-start}.captain-heading>div{display:grid;gap:4px}.captain-heading span{font-size:11px;font-weight:900;letter-spacing:.16em;color:var(--captain-team)}.captain-heading strong{font-size:19px;color:var(--green)}.captain-heading small{color:var(--muted);font-weight:750;text-align:right}
.captain-metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:14px 0}.captain-metrics div{padding:10px;border-radius:12px;background:#fff;border:1px solid #d9e3de;text-align:center;display:grid}.captain-metrics b{font-size:22px;color:var(--green)}.captain-metrics span{font-size:11px;color:var(--muted);font-weight:800}
.captain-filters{display:grid;grid-template-columns:repeat(3,1fr);gap:7px}.captain-filters button{min-height:40px;border:1px solid #cbd8d1;border-radius:999px;background:#fff;color:var(--green);font-weight:850}.captain-filters button.active{background:var(--green);color:#fff;border-color:var(--green)}
.cup-result-card.captain-match-highlight{box-shadow:inset 5px 0 0 var(--captain-team)}
@media(max-width:520px){.captain-heading{display:grid}.captain-heading small{text-align:left}.captain-filters{grid-template-columns:1fr}.captain-metrics{gap:5px}.captain-dashboard{padding:13px}}

.sync-status{margin:10px 0 12px;padding:9px 12px;border-radius:12px;font-size:13px;text-align:center;border:1px solid transparent}.sync-status.online{background:#edf7f1;color:#174f38;border-color:#cde5d5}.sync-status.offline{background:#fff5d9;color:#6c4d00;border-color:#efd692}.sync-status.syncing,.sync-status.pending{background:#eef4ff;color:#244f80;border-color:#c9d9ef}.sync-status.review{background:#fff0ef;color:#8c2e28;border-color:#edc3c0;text-align:left}
.sync-review-head{display:flex;align-items:center;justify-content:space-between;gap:8px}
.sync-review-list{margin-top:8px;display:flex;flex-direction:column;gap:6px}
.sync-review-row{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:6px 8px;background:#fff;border-radius:8px;border:1px solid #edc3c0;font-size:12.5px}
.sync-review-row small{color:#8c2e28;opacity:.8}
.sync-review-actions{display:flex;gap:10px;white-space:nowrap}


/* Build 123: suppress browser pull-to-refresh without blocking normal TORIIE scrolling. */
html,
body{
  overscroll-behavior-y:none;
  overscroll-behavior-x:none;
}
body,
.app,
.shell,
.center{
  overscroll-behavior-y:none;
}
body{
  -webkit-overflow-scrolling:touch;
}


/* Build 130 Wolf */
.wolf-admin-config{border-color:#d7c58f}.wolf-popup{max-width:520px}.wolf-current{display:grid;gap:3px;text-align:center;padding:14px;border-radius:14px;background:linear-gradient(135deg,#123f1f,#0a2d17);color:#fff;margin-bottom:12px}.wolf-current small{letter-spacing:.18em;font-weight:900;color:#d7c58f}.wolf-current strong{font-size:26px}.wolf-choice-grid{display:grid;grid-template-columns:1fr 1fr;gap:9px}.wolf-choice{border:1px solid #c9c9c9;background:#fff;border-radius:12px;padding:12px 8px;font-weight:800;color:#123f1f}.wolf-choice.selected{background:#123f1f;color:#fff;border-color:#123f1f}.wolf-choice:disabled{opacity:.45}.wolf-pig-row{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:12px}.wolf-pig{border-color:#7a1f1f;color:#7a1f1f}.wolf-pig.selected{background:#7a1f1f;border-color:#7a1f1f}.wolf-summary{display:flex;flex-wrap:wrap;gap:7px;margin-bottom:10px}.wolf-summary span{background:#f4f1e7;border:1px solid #ddd2b1;border-radius:999px;padding:5px 9px;font-size:12px;font-weight:800}.wolf-ledger{margin-top:12px;border-top:1px solid #e2e2e2}.wolf-ledger-row{display:grid;grid-template-columns:64px 1fr;gap:3px 8px;padding:9px 0;border-bottom:1px solid #eee}.wolf-ledger-row small{grid-column:2;color:#666}.wolf-stroke-banner{border-left:4px solid #d7b34a}@media(max-width:480px){.wolf-choice-grid{grid-template-columns:1fr}.wolf-pig-row{align-items:stretch;flex-direction:column}}

/* Build 134: branded side-game stroke popup and Sixes running dollar totals. */
.side-stroke-popup{width:min(430px,calc(100vw - 28px));max-height:calc(100dvh - 36px);overflow:auto}
.side-stroke-popup h2{text-align:center;margin-bottom:4px}
.side-stroke-copy{text-align:center;color:#65766e;font-weight:750;margin:0 0 14px}
.side-stroke-games{display:grid;gap:11px}
.side-stroke-game{border:1px solid #dce6e0;border-radius:14px;overflow:hidden;background:#fbfcfb}
.side-stroke-game-head{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:10px 12px;background:#eef7f2;border-bottom:1px solid #dce6e0}
.side-stroke-game-head strong{color:#0b5d3b;font-size:14px}.side-stroke-game-head span{color:#8a6a20;font-size:10px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}
.side-stroke-player{display:flex;justify-content:space-between;gap:14px;padding:12px;border-bottom:1px solid #e7ece9}.side-stroke-player:last-child{border-bottom:0}.side-stroke-player span{font-weight:800;color:#173d30}.side-stroke-player strong{color:#0b5d3b}
.three-up-popup-actions.single{grid-template-columns:1fr}
.sixes-money{margin-top:14px;padding-top:2px}.sixes-money .payout-row{padding:9px 2px;border-bottom:1px solid #e8ecea}.sixes-money .payout-row:last-child{border-bottom:0}


/* Build 171 — TORIIE Cup sudden-death branding */
.cup-playoff-notice{
  margin:14px 0 16px;
  padding:16px;
  border:1px solid #d8b14a;
  border-left:5px solid #caa34a;
  border-radius:16px;
  background:#fff8df;
  color:#173d30;
  display:grid;
  gap:10px;
  box-shadow:0 8px 20px rgba(18,75,60,.07);
}
.cup-playoff-notice-mark{
  width:max-content;
  padding:4px 8px;
  border-radius:999px;
  background:#0b5d3b;
  color:#fff;
  font-size:10px;
  font-weight:900;
  letter-spacing:.14em;
}
.cup-playoff-notice-copy{
  display:grid;
  gap:5px;
}
.cup-playoff-notice-copy>strong{
  color:#103e29!important;
  font-size:20px;
  line-height:1.15;
}
.cup-playoff-notice-copy>span{
  color:#485c52!important;
  font-size:15px;
  line-height:1.45;
}
.cup-playoff-notice-copy b{
  color:#103e29;
}
.cup-playoff-notice>small{
  color:#66776f;
  font-size:13px;
}
.cup-playoff-notice .cup-playoff-start{
  width:max-content;
  min-height:48px;
  background:#0b3f2a;
  color:#fff;
  border:1px solid #0b3f2a;
  border-radius:12px;
  padding:11px 16px;
  font-weight:850;
}

.cup-playoff-popup{
  width:min(520px,100%);
  max-height:92vh;
  overflow:hidden;
  border:2px solid #caa34a;
  border-radius:22px;
  background:#fff;
  box-shadow:0 24px 70px rgba(3,30,20,.28);
  color:#173d30;
}
.cup-playoff-popup-head{
  padding:20px 24px 18px;
  background:#0b3f2a;
  color:#fff;
  border-bottom:4px solid #caa34a;
  text-align:center;
}
.cup-playoff-popup-head .eyebrow{
  color:#d9c47c;
  font-size:10px;
  font-weight:900;
  letter-spacing:.18em;
}
.cup-playoff-popup-head h2{
  margin:5px 0 2px;
  color:#fff;
  font-size:28px;
  line-height:1.1;
}
.cup-playoff-popup-head>strong{
  display:block;
  color:#f1d984;
  font-size:17px;
  letter-spacing:.02em;
}
.cup-playoff-popup-body{
  padding:20px 22px;
  overflow:auto;
  max-height:calc(92vh - 190px);
  background:#fbfdfc;
}
.cup-playoff-popup-body>p{
  margin:0;
  color:#53675d;
  font-size:14px;
  line-height:1.5;
  text-align:center;
}
.cup-playoff-popup-body>p b{
  color:#173d30;
}
.cup-playoff-score-list{
  display:grid;
  gap:10px;
  margin-top:18px;
}
.cup-playoff-score-row{
  display:grid;
  grid-template-columns:minmax(0,1fr) 74px;
  align-items:center;
  gap:12px;
  padding:12px 14px;
  border:1px solid #d8e3dd;
  border-radius:14px;
  background:#fff;
}
.cup-playoff-score-row>span{
  min-width:0;
  display:grid;
  gap:2px;
}
.cup-playoff-score-row strong{
  color:#103e29;
  font-size:16px;
  line-height:1.2;
}
.cup-playoff-score-row small{
  color:#74827b;
  font-size:12px;
}
.cup-playoff-score-row input{
  width:74px;
  height:48px;
  border:2px solid #b8cfc3;
  border-radius:12px;
  background:#f6faf8;
  color:#103e29;
  font-size:20px!important;
  font-weight:850;
  text-align:center;
  -webkit-appearance:none;
  appearance:none;
}
.cup-playoff-score-row input:focus{
  outline:none;
  border-color:#0b5d3b;
  box-shadow:0 0 0 3px rgba(11,93,59,.12);
}
.cup-playoff-popup-actions{
  display:grid;
  grid-template-columns:1fr 1.3fr;
  gap:10px;
  padding:14px 20px calc(16px + env(safe-area-inset-bottom));
  background:#fff;
  border-top:1px solid #e2e9e5;
}
.cup-playoff-popup-actions .btn{
  min-height:50px;
  border-radius:12px;
}
.cup-playoff-popup-actions .btn:not(.secondary){
  background:#0b3f2a;
  color:#fff;
  border-color:#0b3f2a;
}

@media(max-width:480px){
  .cup-playoff-notice{
    padding:14px;
    margin:12px 0 14px;
  }
  .cup-playoff-notice-copy>strong{
    font-size:18px;
  }
  .cup-playoff-notice .cup-playoff-start{
    width:100%;
  }
  .cup-playoff-popup{
    width:calc(100vw - 20px);
    border-radius:18px;
  }
  .cup-playoff-popup-head{
    padding:18px 18px 16px;
  }
  .cup-playoff-popup-head h2{
    font-size:24px;
  }
  .cup-playoff-popup-body{
    padding:16px;
  }
  .cup-playoff-score-row{
    padding:10px 12px;
  }
  .cup-playoff-popup-actions{
    padding:12px 14px calc(14px + env(safe-area-inset-bottom));
  }
}

/* TORIIE prototype video launch splash */
.toriie-launch-splash{position:fixed;inset:0;z-index:2147483000;display:flex;align-items:center;justify-content:center;overflow:hidden;background:#123f1f;opacity:1;visibility:visible;transition:opacity .48s ease,visibility .48s ease}
.toriie-launch-splash.is-hiding{opacity:0;visibility:hidden;pointer-events:none}
.toriie-launch-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:saturate(1.04) contrast(1.04)}
.toriie-launch-shade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(18,63,31,.30),rgba(7,28,17,.76))}
.toriie-launch-brand{position:relative;width:min(82vw,330px);padding:24px 22px 22px;border:1px solid rgba(216,179,90,.48);border-radius:22px;background:rgba(10,48,30,.76);box-shadow:0 18px 50px rgba(0,0,0,.36);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);text-align:center}
.toriie-launch-brand img{display:block;width:min(240px,72vw);height:auto;margin:0 auto 8px;filter:drop-shadow(0 5px 14px rgba(0,0,0,.22))}
.toriie-launch-app{color:#fff;font-size:18px;font-weight:900;letter-spacing:.22em;text-transform:uppercase}
.toriie-launch-tagline{margin-top:10px;color:#d8b35a;font-size:11px;font-weight:900;letter-spacing:.16em}
@media(prefers-reduced-motion:reduce){.toriie-launch-video{display:none}}

/* Build 174 — matched Team Cup score boxes */
.cup-live-score{
  grid-template-columns:minmax(0,1fr) auto minmax(0,1fr)!important;
  align-items:stretch!important;
}
.cup-live-score>div{
  min-width:0;
  width:100%;
  height:100%;
  box-sizing:border-box;
  display:grid!important;
  grid-template-rows:minmax(2.4em,auto) auto minmax(1.5em,auto);
  align-content:center;
  justify-items:center;
}
.cup-live-score>div>b{
  display:flex;
  align-items:center;
  justify-content:center;
  width:100%;
  line-height:1.15;
  overflow-wrap:anywhere;
}
.cup-live-score>span{
  align-self:center;
}


/* Build 176 — TORIIE Cup format-aware hole-by-hole drill-down */
.cup-hole-breakdown{
  margin-top:12px;
  border-top:1px solid #dfe8e3;
}
.cup-hole-breakdown-toggle{
  width:100%;
  min-height:52px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  padding:11px 2px 8px;
  border:0;
  background:transparent;
  color:#123f2f;
  text-align:left;
  font:inherit;
}
.cup-hole-breakdown-toggle>span{
  min-width:0;
  display:grid;
  gap:2px;
}
.cup-hole-breakdown-toggle b{
  font-size:11px;
  font-weight:900;
  letter-spacing:.13em;
  color:#0b5d3b;
}
.cup-hole-breakdown-toggle small{
  color:#708078;
  font-size:11px;
  line-height:1.3;
}
.cup-hole-breakdown-toggle i{
  flex:0 0 30px;
  width:30px;
  height:30px;
  border:1px solid #bfd1c8;
  border-radius:50%;
  display:grid;
  place-items:center;
  color:#0b5d3b;
  background:#f5faf7;
  font-style:normal;
  font-size:20px;
  line-height:1;
}
.cup-hole-breakdown-empty{
  margin-top:12px;
  padding:11px 2px 2px;
  border-top:1px solid #e3eae6;
  display:flex;
  justify-content:space-between;
  gap:10px;
  align-items:center;
}
.cup-hole-breakdown-empty span{
  font-size:10px;
  font-weight:900;
  letter-spacing:.12em;
  color:#7b8982;
}
.cup-hole-breakdown-empty small{
  font-size:11px;
  color:#8a9690;
}
.cup-hole-ledger{
  margin:6px -2px 2px;
  border:1px solid #d8e3dd;
  border-radius:13px;
  overflow:hidden;
  background:#fff;
}
.cup-hole-ledger-head,
.cup-hole-ledger-row{
  display:grid;
  grid-template-columns:38px minmax(0,1fr) minmax(0,1fr) minmax(72px,.92fr) 20px;
  gap:5px;
  align-items:center;
}
.cup-hole-ledger-head{
  padding:8px 9px;
  background:#edf5f1;
  color:#60736a;
  font-size:9px;
  font-weight:900;
  letter-spacing:.07em;
  text-transform:uppercase;
}
.cup-hole-ledger-head span:nth-child(2),
.cup-hole-ledger-head span:nth-child(3),
.cup-hole-ledger-head span:nth-child(4){
  text-align:center;
}
.cup-hole-ledger-head::after{
  content:"";
}
.cup-hole-ledger-item{
  border-top:1px solid #e6ede9;
}
.cup-hole-ledger-item:first-of-type{
  border-top:0;
}
.cup-hole-ledger-row{
  width:100%;
  min-height:46px;
  padding:7px 9px;
  border:0;
  background:#fff;
  color:#173d30;
  font:inherit;
  text-align:left;
}
.cup-hole-ledger-row:active{
  background:#f6faf8;
}
.cup-hole-ledger-row>strong{
  font-size:14px;
  color:#0b5d3b;
}
.cup-hole-ledger-row>span{
  text-align:center;
  font-size:12px;
  font-weight:800;
  color:#2f4e41;
  min-width:0;
  overflow-wrap:anywhere;
}
.cup-hole-ledger-row>b{
  text-align:center;
  font-size:10px;
  line-height:1.15;
  color:#8b6a1f;
  overflow-wrap:anywhere;
}
.cup-hole-ledger-row>i{
  font-style:normal;
  color:#0b5d3b;
  font-size:17px;
  text-align:center;
}
.cup-hole-detail-panel{
  padding:10px;
  background:#f8fbf9;
  border-top:1px solid #dfe8e3;
}
.cup-hole-detail-format{
  margin-bottom:8px;
  color:#80621f;
  font-size:9px;
  font-weight:900;
  letter-spacing:.08em;
  text-transform:uppercase;
  text-align:center;
}
.cup-hole-detail-sides{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:8px;
}
.cup-hole-detail-sides section{
  min-width:0;
  padding:9px;
  border:1px solid #d9e4de;
  border-radius:10px;
  background:#fff;
}
.cup-hole-detail-sides h5{
  margin:0 0 6px;
  padding-bottom:6px;
  border-bottom:2px solid #d7b354;
  color:#0b5d3b;
  font-size:11px;
  line-height:1.2;
  text-align:center;
}
.cup-hole-player-line{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:2px 6px;
  align-items:center;
  padding:6px 0;
  border-top:1px solid #eef2f0;
}
.cup-hole-player-line:first-of-type{
  border-top:0;
}
.cup-hole-player-line>span{
  min-width:0;
  color:#173d30;
  font-size:11px;
  font-weight:850;
  overflow-wrap:anywhere;
}
.cup-hole-player-line>small{
  grid-column:1;
  color:#77857e;
  font-size:9px;
  line-height:1.25;
}
.cup-hole-player-line>strong{
  grid-column:2;
  grid-row:1 / span 2;
  color:#0b5d3b;
  font-size:11px;
  white-space:nowrap;
}
.cup-hole-counted{
  grid-column:1 / -1;
  width:max-content;
  margin-top:2px;
  padding:2px 5px;
  border-radius:999px;
  background:#e6f4ec;
  color:#0b5d3b;
  font-size:8px;
  letter-spacing:.08em;
}

@media(max-width:390px){
  .cup-hole-ledger-head,
  .cup-hole-ledger-row{
    grid-template-columns:32px minmax(0,1fr) minmax(0,1fr) minmax(62px,.9fr) 16px;
    gap:3px;
    padding-left:7px;
    padding-right:7px;
  }
  .cup-hole-ledger-head{
    font-size:8px;
    letter-spacing:.04em;
  }
  .cup-hole-ledger-row>span{
    font-size:11px;
  }
  .cup-hole-ledger-row>b{
    font-size:9px;
  }
  .cup-hole-detail-sides{
    grid-template-columns:1fr;
  }
}


/* Build 176 — TORIIE Cup hole-by-hole drill-down */
.cup-hole-breakdown{
  margin-top:12px;
  border-top:1px solid #dfe8e3;
  background:#fff;
}
.cup-hole-breakdown-toggle{
  width:100%;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  padding:13px 2px 10px;
  border:0;
  background:transparent;
  color:#103e29;
  text-align:left;
  font:inherit;
}
.cup-hole-breakdown-toggle>span{
  min-width:0;
  display:grid;
  gap:2px;
}
.cup-hole-breakdown-toggle b{
  font-size:11px;
  font-weight:950;
  letter-spacing:.13em;
  color:#0b5d3b;
}
.cup-hole-breakdown-toggle small{
  font-size:12px;
  color:#74827b;
  line-height:1.25;
}
.cup-hole-breakdown-toggle i{
  width:28px;
  height:28px;
  flex:0 0 28px;
  display:grid;
  place-items:center;
  border:1px solid #b9cec3;
  border-radius:999px;
  color:#0b5d3b;
  background:#f5faf7;
  font-style:normal;
  font-size:20px;
  line-height:1;
}
.cup-hole-breakdown-empty{
  margin-top:10px;
  padding:11px 2px 2px;
  border-top:1px solid #e3eae6;
  display:flex;
  justify-content:space-between;
  gap:10px;
  align-items:center;
}
.cup-hole-breakdown-empty span{
  font-size:10px;
  font-weight:900;
  letter-spacing:.12em;
  color:#6a7b72;
}
.cup-hole-breakdown-empty small{color:#8a9690}

.cup-hole-ledger{
  margin:3px -2px 2px;
  border:1px solid #d7e3dd;
  border-radius:14px;
  overflow:hidden;
  background:#fbfdfc;
}
.cup-hole-ledger-head,
.cup-hole-ledger-row{
  display:grid;
  grid-template-columns:38px minmax(62px,1fr) minmax(62px,1fr) minmax(66px,1fr) 22px;
  gap:5px;
  align-items:center;
}
.cup-hole-ledger-head{
  padding:8px 10px;
  background:#edf5f1;
  border-bottom:1px solid #d7e3dd;
  color:#5f7168;
  font-size:9px;
  font-weight:900;
  letter-spacing:.07em;
  text-transform:uppercase;
}
.cup-hole-ledger-head span{
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  text-align:center;
}
.cup-hole-ledger-head span:first-child{text-align:left}
.cup-hole-ledger-item+.cup-hole-ledger-item{border-top:1px solid #e4ebe7}
.cup-hole-ledger-row{
  width:100%;
  min-height:48px;
  padding:8px 10px;
  border:0;
  background:#fff;
  color:#173d30;
  font:inherit;
  text-align:center;
}
.cup-hole-ledger-row strong{
  color:#0b5d3b;
  font-size:15px;
  text-align:left;
}
.cup-hole-ledger-row span{
  min-width:0;
  font-size:13px;
  font-weight:850;
  color:#213d32;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.cup-hole-ledger-row b{
  min-width:0;
  font-size:11px;
  color:#8a6a20;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.cup-hole-ledger-row i{
  color:#0b5d3b;
  font-style:normal;
  font-size:18px;
  line-height:1;
}

.cup-hole-detail-panel{
  padding:0 10px 12px;
  background:#f7faf8;
}
.cup-hole-detail-format{
  padding:8px 2px;
  color:#7c6425;
  font-size:9px;
  font-weight:950;
  letter-spacing:.1em;
  text-transform:uppercase;
  text-align:center;
}
.cup-hole-detail-sides{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:8px;
}
.cup-hole-detail-sides>section{
  min-width:0;
  padding:9px;
  border:1px solid #d8e3dd;
  border-radius:12px;
  background:#fff;
}
.cup-hole-detail-sides h5{
  margin:0 0 6px;
  color:#0b5d3b;
  font-size:11px;
  font-weight:950;
  line-height:1.2;
  text-align:center;
}
.cup-hole-player-line{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  grid-template-areas:
    "name score"
    "meta badge";
  gap:2px 7px;
  align-items:center;
  padding:7px 0;
  border-top:1px solid #edf1ef;
}
.cup-hole-player-line:first-of-type{border-top:0}
.cup-hole-player-line>span{
  grid-area:name;
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  color:#173d30;
  font-size:12px;
  font-weight:850;
}
.cup-hole-player-line>small{
  grid-area:meta;
  color:#77847e;
  font-size:9px;
  line-height:1.25;
}
.cup-hole-player-line>strong{
  grid-area:score;
  color:#173d30;
  font-size:12px;
  text-align:right;
}
.cup-hole-counted{
  grid-area:badge;
  justify-self:end;
  padding:2px 5px;
  border-radius:999px;
  background:#e9f5ee;
  color:#0b5d3b;
  font-size:7px;
  font-weight:950;
  letter-spacing:.08em;
}

@media(max-width:480px){
  .cup-hole-ledger-head,
  .cup-hole-ledger-row{
    grid-template-columns:31px minmax(54px,1fr) minmax(54px,1fr) minmax(58px,.9fr) 18px;
    gap:3px;
    padding-left:7px;
    padding-right:7px;
  }
  .cup-hole-ledger-head{font-size:8px}
  .cup-hole-ledger-row span{font-size:12px}
  .cup-hole-ledger-row b{font-size:10px}
  .cup-hole-detail-sides{grid-template-columns:1fr}
  .cup-hole-detail-sides>section{padding:8px 10px}
}

/* Build 178: versioned legal acceptance */
.toriie-legal-overlay{position:fixed;inset:0;z-index:1200;background:rgba(4,20,12,.68);display:flex;align-items:center;justify-content:center;padding:16px}.toriie-legal-overlay.legal-required{z-index:1250}.toriie-legal-doc,.toriie-legal-agreement{width:min(760px,96vw);max-height:92vh;background:#fff;border:1px solid rgba(211,169,74,.5);border-radius:22px;box-shadow:0 28px 80px rgba(0,0,0,.32);overflow:hidden;color:var(--ink)}.toriie-legal-doc{display:flex;flex-direction:column}.toriie-legal-doc header{display:flex;justify-content:space-between;gap:18px;align-items:flex-start;padding:18px;border-bottom:1px solid var(--line);background:#f7f4ed}.toriie-legal-doc h2{margin:2px 0}.toriie-legal-scroll{padding:18px;overflow:auto;line-height:1.55;font-size:14px}.toriie-legal-scroll h3{color:var(--green);margin-top:22px}.toriie-legal-doc footer{padding:14px 18px;border-top:1px solid var(--line)}.legal-x{border:0;background:transparent;color:var(--green);font-size:28px;line-height:1}.toriie-legal-agreement{width:min(520px,96vw);padding:24px 20px}.legal-logo{text-align:center;margin-bottom:12px}.legal-logo img{width:190px;max-width:70%;height:auto}.toriie-legal-agreement h2{margin:4px 0 6px}.legal-doc-buttons{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:18px 0 14px}.legal-check{display:flex;gap:11px;align-items:flex-start;background:#f7f4ed;border:1px solid rgba(18,63,31,.18);border-radius:14px;padding:13px;margin-bottom:14px;font-size:13px;line-height:1.45}.legal-check input{width:19px;height:19px;flex:0 0 19px;margin-top:1px}.toriie-legal-agreement .btn:disabled{opacity:.45;cursor:not-allowed}@media(max-width:520px){.toriie-legal-doc,.toriie-legal-agreement{border-radius:18px}.toriie-legal-scroll{padding:15px}.legal-doc-buttons{grid-template-columns:1fr}}

/* Build 178: Live top action is a direct New Code control, not a drawer. */
.new-code-button{min-height:40px;border:1px solid rgba(211,169,74,.9);border-radius:12px;background:transparent;color:var(--gold);font-size:13px;font-weight:900;letter-spacing:.03em;padding:8px 12px;cursor:pointer;white-space:nowrap}.new-code-button:active{transform:translateY(1px)}.footer-legal{display:flex;justify-content:center;align-items:center;gap:7px;margin-top:5px}.footer-legal button{border:0;background:transparent;color:var(--green);font:inherit;font-size:11px;font-weight:800;padding:2px 0;cursor:pointer}.footer-legal span{font-size:11px;color:var(--muted)}


/* TORIIE legal layer — isolated from authentication and scoring */
.toriie-legal-agreement-shell,.toriie-legal-doc-shell{
  position:fixed;inset:0;z-index:1200000;background:rgba(0,0,0,.68);
  display:flex;align-items:center;justify-content:center;padding:16px;
}
.toriie-legal-agreement-card{
  width:min(520px,96vw);max-height:92vh;overflow:auto;background:#fff;border-radius:22px;
  padding:22px 18px;box-shadow:0 28px 90px rgba(0,0,0,.42);border:1px solid rgba(196,154,78,.42);
}
.toriie-legal-agreement-card h2{margin:4px 0 8px;color:#0b5133}
.toriie-legal-agreement-card>p{margin:0 0 14px;color:#66716b}
.toriie-legal-read-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:12px 0 14px}
.toriie-legal-check{display:flex;gap:10px;align-items:flex-start;border:1px solid rgba(11,81,51,.18);
  border-radius:14px;padding:12px;background:#f7f8f6;margin-bottom:14px;cursor:pointer}
.toriie-legal-check input{margin-top:3px;width:18px;height:18px;flex:0 0 auto}
.toriie-legal-check span{font-size:13px;line-height:1.45;color:#3d4540}
.toriie-legal-doc-card{width:min(760px,96vw);max-height:90vh;background:#fff;border-radius:22px;
  box-shadow:0 24px 80px rgba(0,0,0,.38);overflow:hidden;border:1px solid rgba(196,154,78,.35);
  color:#231f20;display:flex;flex-direction:column}
.toriie-legal-doc-card header{padding:18px;border-bottom:1px solid rgba(0,0,0,.08);background:#f7f4ed}
.toriie-legal-doc-card header strong{display:block;font-size:25px;color:#0b5133;letter-spacing:.02em}
.toriie-legal-doc-card header span{font-size:12px;color:#777}
.toriie-legal-doc-card main{padding:18px;overflow:auto;line-height:1.55;font-size:14px}
.toriie-legal-doc-card main h3{color:#0b5133;margin:18px 0 6px}
.toriie-legal-doc-card footer{padding:14px 18px;border-top:1px solid rgba(0,0,0,.08)}
.toriie-legal-links{position:relative;z-index:10;display:flex;justify-content:center;align-items:center;gap:7px;
  padding:8px 12px 14px;font-size:11px;color:#77817b}
.toriie-legal-links button{border:0;background:transparent;color:#557064;text-decoration:underline;padding:2px;cursor:pointer;font:inherit}

/* Build 183: Cup session state hierarchy and stronger match framing */
.cup-session-progress{margin:10px 14px 4px;text-align:center;font-size:11px;font-weight:900;letter-spacing:.12em;color:#49665a}
.cup-live-session{background:#f5f8f6}
.cup-live-session.session-complete{background:#f3f5f4;border-color:#d7dfdb}
.cup-live-session.session-complete .cup-live-session-head{background:#f0f3f1;color:#52645c}
.cup-live-session.session-complete .cup-live-session-head b{color:#6e7c75}
.cup-live-session.session-live{background:#f5faf7;border:2px solid #176b48;box-shadow:0 6px 18px rgba(23,107,72,.09)}
.cup-live-session.session-live .cup-live-session-head{background:#e6f1eb}
.cup-live-session.session-live .cup-live-session-head>span:last-child>b{color:#176b48}
.cup-live-session.session-upcoming{background:#fafbf9;border-color:#dfe4e1}
.cup-live-session.session-upcoming .cup-live-session-head{background:#f7f8f6}
.cup-live-session-matches{display:grid;gap:12px;padding:12px}
.cup-live-session .cup-result-card{margin:0;background:#fff;border:1.5px solid #d2ddd7;box-shadow:0 3px 10px rgba(18,63,31,.04)}
.cup-live-session .cup-result-card.your-match{border:2px solid #176b48;box-shadow:0 5px 16px rgba(23,107,72,.10)}
.cup-live-session .cup-result-card.is-final:not(.your-match){border-color:#d9e0dc}
.cup-result-summary.static{padding-bottom:10px}
.cup-result-details{padding-top:10px}
.cup-final-result{text-align:center;padding:10px 6px 6px;display:grid;gap:4px}
.cup-final-result strong{font-size:17px;line-height:1.25;color:#173d30}
.cup-final-result small{font-size:11px;color:#6d7c75}
.cup-result-points{margin-top:8px;background:#f6f9f7;border:1px solid #dce5e0;border-radius:12px;padding:10px}

/* Build 188: Nassau 1v1 F/B/O live board */
.nassau-match-line{display:flex;justify-content:space-between;gap:8px;align-items:center;margin-bottom:10px;color:var(--green)}.nassau-match-line span{font-size:12px;color:#64736c;font-weight:700}
.nassau-fbo-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;margin:8px 0 12px}.nassau-fbo-segment{min-width:0;padding:9px 5px 8px;border:1px solid #d6e0da;border-radius:11px;background:#f4f7f5;text-align:center;box-shadow:inset 0 4px 0 #aebbb4;display:grid;gap:2px}.nassau-fbo-segment span{font-size:9px;font-weight:900;letter-spacing:.1em;color:#53665d}.nassau-fbo-segment strong{font-size:13px;color:#123f1f;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.nassau-fbo-segment small{font-size:9px;color:#68766f}
.nassau-segment-list{display:grid;gap:8px}.nassau-segment-detail{border:1px solid #dce4df;border-radius:11px;overflow:hidden;background:#fff}.nassau-segment-head{display:flex;justify-content:space-between;gap:8px;padding:8px 10px;background:#f7f9f8}.nassau-segment-head span{font-size:10px;letter-spacing:.1em;font-weight:900;color:#53665d}.nassau-segment-head strong{font-size:12px;color:#123f1f}.nassau-press-row{display:flex;justify-content:space-between;align-items:center;gap:8px;padding:8px 10px;border-top:1px solid #edf0ee}.nassau-press-row span{display:flex;gap:8px;align-items:center}.nassau-press-row b{color:#b38a27;font-size:11px}.nassau-press-row small{color:#4f5e57;font-size:11px}.nassau-press-row>strong{font-size:11px;color:#123f1f}.nassau-no-press{padding:7px 10px;border-top:1px solid #edf0ee;color:#7a8580;font-size:11px}.nassau-settled-line{display:flex;justify-content:space-between;align-items:center;margin-top:10px;padding:10px 11px;border-radius:10px;background:#f4f1e7;border:1px solid #ddd2b1}.nassau-settled-line span{font-size:11px;font-weight:800;color:#5d665f}.nassau-settled-line strong{color:#123f1f}.nassau-actions{display:flex;justify-content:space-between;gap:10px;margin-top:8px}
@media(max-width:380px){.nassau-fbo-grid{gap:5px}.nassau-fbo-segment strong{font-size:12px}.nassau-match-line{align-items:flex-start;flex-direction:column}.nassau-actions{flex-direction:column;align-items:stretch}}

/* Build 193: Nassau persistence, wager ledger, and settlement */
.nassau-wager-list{display:grid;gap:9px;margin:10px 0 12px}.nassau-wager-group{border:1px solid #d6e0da;border-radius:11px;overflow:hidden;background:#fff}.nassau-wager-title{padding:8px 10px;background:#f4f7f5;color:#53665d;font-size:10px;font-weight:900;letter-spacing:.1em}.nassau-wager-row{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:8px 10px;border-top:1px solid #e6ece8}.nassau-wager-row span{display:flex;align-items:center;gap:8px;min-width:0}.nassau-wager-row b{color:#c6941c;min-width:50px}.nassau-wager-row small{font-size:12px;color:#53665d}.nassau-wager-row strong{font-size:12px;color:#123f1f;text-align:right}.nassau-wager-net{display:flex;justify-content:space-between;align-items:center;padding:8px 10px;border-top:1px solid #d6e0da;background:#fafbf9;color:#53665d;font-size:11px;font-weight:800}.nassau-wager-net strong{color:#123f1f}.nassau-settlement-card{border:1px solid #e3c878;border-radius:11px;background:#fbf6e8;overflow:hidden;margin-top:10px}.nassau-settlement-title{padding:8px 10px;color:#53665d;font-size:10px;font-weight:900;letter-spacing:.08em;border-bottom:1px solid #ead9a6}.nassau-settlement-row,.nassau-settlement-net{display:flex;justify-content:space-between;align-items:center;padding:8px 10px}.nassau-settlement-row+.nassau-settlement-row{border-top:1px solid #efe2bc}.nassau-settlement-row span{font-weight:800;color:#123f1f}.nassau-settlement-row strong{color:#123f1f}.nassau-settlement-row strong.positive{color:#0f6b36}.nassau-settlement-row strong.negative{color:#9b2f2f}.nassau-settlement-net{border-top:1px solid #e3c878;color:#66736d;font-size:11px;font-weight:800}.nassau-settlement-net strong{color:#123f1f}

/* Build 194: Nassau live press boxes, early closeout, compact detail controls */
.nassau-fbo-segment.final{background:#f8f4e8;box-shadow:inset 0 4px 0 #cfa437;border-color:#ead59a}
.nassau-live-presses{display:grid;gap:7px;margin:-3px 0 10px}.nassau-press-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}.nassau-live-press-box{min-width:0;padding:8px 5px;border:1px solid #e4c76e;border-radius:11px;background:#fff9ea;text-align:center;display:grid;gap:2px;box-shadow:inset 0 3px 0 #d2a43b}.nassau-live-press-box span{font-size:9px;font-weight:900;letter-spacing:.08em;color:#9b731a}.nassau-live-press-box strong{font-size:12px;color:#123f1f;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.nassau-live-press-box small{font-size:9px;color:#68766f}.nassau-press-spacer{min-height:1px}
.nassau-segment-outcomes{display:grid;gap:7px;margin:10px 0}.nassau-segment-outcome{display:flex;align-items:center;justify-content:space-between;gap:10px;border:1px solid #d6e0da;border-radius:11px;background:#f7f9f8;padding:9px 10px}.nassau-segment-outcome span{display:grid;gap:2px;min-width:0}.nassau-segment-outcome b{font-size:10px;letter-spacing:.09em;color:#53665d}.nassau-segment-outcome small{font-size:10px;color:#718078;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.nassau-segment-outcome>strong{font-size:12px;color:#123f1f;white-space:nowrap}
.nassau-detail-actions{display:grid;gap:7px;margin-top:10px}.nassau-detail-toggle{width:100%;border:1px solid #b9c8c0;background:#fff;color:#123f1f;border-radius:11px;padding:9px 11px;display:flex;align-items:center;justify-content:space-between;gap:10px;text-align:left;font:inherit}.nassau-detail-toggle span{display:grid;gap:2px}.nassau-detail-toggle b{font-size:11px;letter-spacing:.08em;color:#123f1f}.nassau-detail-toggle small{font-size:10px;color:#6a7771;font-weight:600}.nassau-detail-toggle i{font-style:normal;font-size:18px;line-height:1;color:#b58b22}.nassau-detail-toggle.nassau-call-press{border-color:#e1c56d;background:#fff9e9}
.nassau-hole-ledger{border:1px solid #d6e0da;border-radius:11px;overflow:hidden;background:#fff}.nassau-hole-ledger-row{padding:9px 10px}.nassau-hole-ledger-row+.nassau-hole-ledger-row{border-top:1px solid #e6ece8}.nassau-hole-ledger-score{display:flex;justify-content:space-between;gap:10px;align-items:center}.nassau-hole-ledger-score strong{font-size:11px;color:#123f1f}.nassau-hole-ledger-score span{font-size:10px;color:#53665d;text-align:right}.nassau-hole-ledger-chips{display:flex;flex-wrap:wrap;gap:5px;margin-top:6px}.nassau-hole-chip{display:inline-flex;gap:4px;align-items:center;border:1px solid #d9e2dd;border-radius:999px;background:#f5f8f6;padding:3px 7px;font-size:9px;color:#53665d}.nassau-hole-chip b{color:#b48820}
@media(max-width:380px){.nassau-press-grid{gap:5px}.nassau-live-press-box strong{font-size:11px}.nassau-segment-outcome{align-items:flex-start;flex-direction:column}.nassau-segment-outcome>strong{align-self:flex-end}}
.match-play-main-box,.match-play-press-box{margin-top:12px;border:1px solid #d8dfda;border-radius:14px;padding:14px 16px;text-align:center;background:#fff}.match-play-main-box{border-color:#0f5a3a;background:#f7fbf8}.match-play-main-box span,.match-play-press-box span{display:block;font-size:12px;font-weight:800;letter-spacing:.08em;color:#587064}.match-play-main-box strong,.match-play-press-box strong{display:block;margin-top:4px;font-size:20px;color:#123c2c}.match-play-main-box small,.match-play-press-box small{display:block;margin-top:3px;color:#6b756f}.match-play-main-box.final,.match-play-press-box.final{background:#f3f7f4}

/* Build 198 — Match Play multiple-match navigator */
.match-play-list-body{padding-top:8px}.match-play-match-menu{display:grid;gap:8px}.match-play-match-item{border:1px solid #d9e2dd;border-radius:13px;background:#fff;overflow:hidden}.match-play-match-item>button{width:100%;border:0;background:#fff;color:#123f1f;padding:11px 12px;display:flex;align-items:center;justify-content:space-between;gap:10px;text-align:left;font:inherit}.match-play-match-item>button span{display:grid;gap:2px;min-width:0}.match-play-match-item>button b{font-size:14px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.match-play-match-item>button small{font-size:11px;color:#68766f;font-weight:650}.match-play-match-item>button i{font-style:normal;color:#b58b22;font-size:19px}.match-play-match-item.final>button{background:#f4f8f5}.match-play-match-item.not-ready>button{background:#fbfbfb}.match-play-detail{border-top:1px solid #e5ebe7;padding:0 11px 12px}.match-play-detail .nassau-match-line{margin-top:10px}

/* Build 200: event-wide Match Cards */
.match-card-detail{border-top:1px solid #e5ebe7;padding:0 11px 12px}
.match-card-detail .nassau-match-line{margin-top:10px}
.match-card-strokes-inline{border:1px solid #e0e7e2;border-radius:12px;background:#f8faf9;padding:9px 11px;margin-top:-2px;margin-bottom:8px}
.match-card-stroke-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:6px 0;border-bottom:1px solid #e7ece9;color:#41544b;font-size:12px}
.match-card-stroke-row:last-child{border-bottom:0}
.match-card-stroke-row strong{color:#123f1f;font-size:12px}
.match-card-stroke-holes{margin-top:6px;padding-top:4px;border-top:1px solid #dfe7e2}


/* Build 204: Live Board round progress */
.live-round-progress{margin-top:10px}
.live-round-progress-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:6px}
.live-round-progress-head span{font-size:.72rem;font-weight:800;letter-spacing:.08em;opacity:.9}
.live-round-progress-head strong{font-size:.88rem;color:#fff}
.live-round-progress-track{height:9px;border-radius:999px;overflow:hidden;background:rgba(255,255,255,.26);border:1px solid rgba(255,255,255,.18)}
.live-round-progress-track i{display:block;height:100%;border-radius:999px;background:#d4ad4f;transition:width .25s ease}
.live-round-progress small{display:block;margin-top:5px;font-size:.72rem;color:#e9f5ee}


/* Build 205: Defender detail persistence + player ledgers */
.defender-player-ledger-btn{border:0;background:transparent;padding:0;color:inherit;font:inherit;font-weight:700;text-align:left}
.defender-player-ledger-btn::after{content:'›';margin-left:6px;color:#0b5d3b}
.defender-personal-ledger{margin-top:10px;border-top:1px solid #e1e8e4;padding-top:10px}
.defender-personal-head,.defender-personal-row{display:flex;align-items:center;justify-content:space-between;gap:12px}
.defender-personal-head{margin-bottom:6px}
.defender-personal-row{padding:6px 0;border-top:1px solid #eef2f0;font-size:.9rem}
.defender-personal-row .positive{color:#0b5d3b}
.defender-personal-row .negative{color:#9f2f2f}


/* Build 215: Bingo Bango Bongo scorer */
.bbb-entry-popup{max-width:520px}
.bbb-entry-list{display:grid;gap:9px}
.bbb-entry-row{
  border:1px solid #dbe5df;
  border-radius:12px;
  padding:9px 10px;
  background:#fff;
}
.bbb-entry-label{display:flex;align-items:baseline;gap:7px;margin-bottom:7px}
.bbb-entry-label strong{color:#0b5d3b;font-size:.88rem}
.bbb-entry-label small{color:#7a8580;font-size:.7rem}
.bbb-entry-players{display:flex;gap:6px;flex-wrap:wrap}
.bbb-player-chip{
  border:1px solid #b9c9c0;
  background:#fff;
  color:#244839;
  border-radius:999px;
  padding:7px 10px;
  font-size:.78rem;
  font-weight:800;
}
.bbb-player-chip.selected{background:#0b5d3b;border-color:#0b5d3b;color:#fff}

/* Build 215: Bingo Bango Bongo Live Board */
.bbb-rule-key{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:6px;
  margin-bottom:10px;
}
.bbb-rule-key span{
  display:flex;
  flex-direction:column;
  align-items:center;
  padding:6px 3px;
  border:1px solid #dce5e0;
  border-radius:9px;
  background:#f8fbf9;
  color:#75817b;
  font-size:.64rem;
}
.bbb-rule-key b{color:#0b5d3b;font-size:.75rem;margin-bottom:1px}
.bbb-running-grid{display:grid;gap:0;border:1px solid #e0e7e3;border-radius:11px;overflow:hidden}
.bbb-running-head,.bbb-running-row{
  display:grid;
  grid-template-columns:minmax(92px,1.6fr) repeat(4,minmax(42px,.65fr));
  align-items:center;
  gap:3px;
  padding:8px 8px;
}
.bbb-running-grid.with-junk .bbb-running-head,
.bbb-running-grid.with-junk .bbb-running-row{
  grid-template-columns:minmax(88px,1.55fr) repeat(5,minmax(36px,.6fr));
}
.bbb-running-head{background:#eef5f1;color:#557065;font-size:.61rem;font-weight:800;text-transform:uppercase}
.bbb-running-row{border-top:1px solid #edf1ef;font-size:.78rem;text-align:center}
.bbb-running-row button{
  border:0;background:transparent;padding:0;color:#153f2e;font:inherit;font-weight:800;text-align:left;
}
.bbb-running-row strong{color:#0b5d3b}
.bbb-player-ledger{padding:7px 10px 9px;background:#fafcfb;border-top:1px solid #edf1ef}
.bbb-player-ledger-row{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:4px 0;font-size:.72rem;color:#53645c}
.bbb-player-ledger-row strong.negative{color:#9d3333}
.bbb-points-note{padding:9px 1px;color:#708078;font-size:.72rem}
.bbb-hole-list{display:grid;gap:7px;padding-top:8px}
.bbb-hole-row{
  display:grid;
  grid-template-columns:auto 1fr;
  gap:3px 9px;
  padding:8px 9px;
  border:1px solid #e0e7e3;
  border-radius:10px;
  background:#fbfcfb;
  font-size:.72rem;
}
.bbb-hole-row>strong{grid-row:1 / span 4;color:#0b5d3b}
.bbb-hole-row span b{display:inline-block;min-width:42px;color:#66776f}
.bbb-hole-row small{grid-column:2;color:#7a8580}
@media(max-width:390px){
  .bbb-running-head,.bbb-running-row{grid-template-columns:minmax(74px,1.4fr) repeat(4,minmax(34px,.58fr));font-size:.7rem}
  .bbb-running-grid.with-junk .bbb-running-head,.bbb-running-grid.with-junk .bbb-running-row{grid-template-columns:minmax(70px,1.35fr) repeat(5,minmax(30px,.52fr));}
  .bbb-running-head{font-size:.54rem}
}


/* Build 224: organizer-ended round message */
.round-ended-overlay{
  position:fixed;
  inset:0;
  z-index:12000;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:22px;
  background:rgba(8,55,36,.76);
}
.round-ended-overlay.hidden{display:none}
.round-ended-card{
  width:min(92vw,420px);
  padding:24px 20px 18px;
  border-radius:18px;
  background:#fff;
  box-shadow:0 22px 64px rgba(0,0,0,.28);
  text-align:center;
}
.round-ended-card .eyebrow{color:#b58b2d}
.round-ended-card h2{margin:5px 0 8px;color:#0b5d3b}
.round-ended-card p{margin:0 0 18px;color:#617068}

/* Build 235: hidden TORIIE reviewer sandbox */
.review-test-note{margin:12px 0 14px;border-left:4px solid var(--gold,#d6ab4a)}

/* Build 236: blind-player automatic scoring rows. */
.blind-auto-score{grid-template-columns:minmax(0,1fr) auto!important;opacity:.92}.blind-auto-badge{display:inline-block;margin-left:6px;padding:2px 6px;border-radius:999px;background:#e8ddba;color:#5d4a17;font-size:10px;letter-spacing:.08em}.blind-auto-value{min-width:64px;text-align:center;font-weight:800;color:#123f1f;background:#eef5ef;border:1px solid #cbdccb;border-radius:10px;padding:10px 8px}

/* Build 237: Match Cards hole-by-hole swipe grid */
.mc-nassau-summary-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;margin:9px 0 8px}.mc-nassau-summary{border:1px solid #d6e0da;border-radius:10px;background:#f8faf9;padding:8px 6px;text-align:center;display:grid;gap:2px}.mc-nassau-summary span{font-size:9px;letter-spacing:.08em;font-weight:850;color:#6b7972}.mc-nassau-summary strong{font-size:12px;color:#123f1f}.mc-nassau-summary small{font-size:8px;color:#7b867f;font-weight:650}.mc-nassau-summary.final{background:#f3f8f4;border-color:#bfd0c4}.mc-nassau-summary.final small{color:#b58b22;font-weight:800}
.mc-hole-scroll{width:100%;overflow-x:auto;overflow-y:hidden;-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain;border:1px solid #d6e0da;border-radius:11px;background:#fff;scrollbar-width:thin}.mc-hole-grid{display:grid;grid-template-columns:112px repeat(var(--mc-hole-count),52px);min-width:max-content}.mc-grid-label,.mc-grid-cell{min-height:44px;display:flex;align-items:center;justify-content:center;border-right:1px solid #e4ebe6;border-bottom:1px solid #e4ebe6;box-sizing:border-box}.mc-grid-label{position:sticky;left:0;z-index:3;justify-content:flex-start;padding:0 9px;background:#fff;color:#123f1f}.mc-grid-cell{font-size:11px;color:#123f1f}.mc-grid-head{z-index:5;background:#123f1f;color:#fff;font-size:10px;font-weight:900;letter-spacing:.08em}.mc-grid-head+.mc-grid-cell{}.mc-hole-grid>.mc-grid-cell:nth-child(n+2):nth-child(-n+19){background:#123f1f;color:#fff;font-size:11px;font-weight:850}.mc-status-label{background:#f3f6f4;font-size:9px;font-weight:900;letter-spacing:.06em}.mc-running-status{font-size:9px;font-weight:850;white-space:nowrap;color:#123f1f}.mc-player-label{display:grid;align-content:center;justify-content:start;gap:1px}.mc-player-label strong{font-size:11px;max-width:88px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mc-player-label small{font-size:8px;color:#859189;font-weight:700}.mc-back-start{border-left:2px solid #b58b22}.mc-result-triangle{display:inline-block;width:0;height:0}.mc-result-triangle.mc-up{border-left:9px solid transparent;border-right:9px solid transparent;border-bottom:15px solid #17723a}.mc-result-triangle.mc-down{border-left:9px solid transparent;border-right:9px solid transparent;border-top:15px solid #b58b22}.mc-result-tie{display:inline-flex;align-items:center;justify-content:center;color:#17723a;font-size:17px;font-weight:950;line-height:1}.mc-result-empty{display:block;width:18px;height:18px}.mc-hole-legend{display:flex;align-items:center;gap:13px;flex-wrap:wrap;padding:8px 2px 0;color:#5f6d66;font-size:9px;font-weight:700}.mc-hole-legend span{display:inline-flex;align-items:center;gap:5px}.mc-hole-legend .mc-result-triangle.mc-up{border-left-width:6px;border-right-width:6px;border-bottom-width:10px}.mc-hole-legend .mc-result-triangle.mc-down{border-left-width:6px;border-right-width:6px;border-top-width:10px}.mc-hole-legend .mc-result-tie{font-size:13px}.mc-hole-legend small{margin-left:auto;color:#8a958f;font-size:8px}
@media(max-width:520px){.mc-nassau-summary-grid{gap:5px}.mc-nassau-summary{padding:7px 3px}.mc-nassau-summary strong{font-size:11px}.mc-nassau-summary small{font-size:7.5px}.mc-hole-grid{grid-template-columns:104px repeat(var(--mc-hole-count),48px)}.mc-grid-label,.mc-grid-cell{min-height:42px}.mc-grid-label{padding:0 8px}.mc-running-status{font-size:8px}.mc-player-label strong{font-size:10px}.mc-hole-legend{gap:10px}}


/* BUILD 238 · Match Cards scorecard-first refinement */
.match-card-scorecard-open{margin-top:10px}
.mc-hole-scroll{border-color:#c7d8ce}
.mc-hole-grid{grid-template-columns:118px repeat(var(--mc-hole-count),58px)}
.mc-grid-label,.mc-grid-cell{min-height:50px}
.mc-grid-cell{position:relative;font-size:12px}
.mc-hole-head-cell{background:#123f1f!important;color:#fff!important;font-size:12px!important;font-weight:900!important}
.mc-player-expand{border:0;border-radius:0;margin:0;width:100%;font:inherit;cursor:pointer;text-align:left}
.mc-player-expand:active{background:#f4f8f5}
.mc-player-label strong{font-size:12px;max-width:96px}
.mc-player-label small{font-size:8px;color:#7a8880}
.mc-result-wrap{position:relative;display:inline-flex;align-items:center;justify-content:center;min-width:30px;min-height:30px}
.mc-stroke-dot{position:absolute;right:-7px;top:-6px;width:7px;height:7px;border-radius:50%;background:#c49a2c;border:1px solid #fff;box-shadow:0 0 0 1px rgba(181,139,34,.22)}
.mc-gross-label{background:#fbfaf5;color:#826817}
.mc-gross-label strong{font-size:9px;letter-spacing:.08em}.mc-gross-label small{font-size:8px;color:#97845a}
.mc-gross-cell{background:#fffdf7;min-height:45px}
.mc-gross-score{font-size:17px;font-weight:900;color:#123f1f;line-height:1}
.mc-gross-dot{right:8px;top:8px;width:7px;height:7px}
.mc-legend-dot{position:relative;display:inline-block;right:auto;top:auto;width:7px;height:7px;box-shadow:none;border:0}
@media(max-width:520px){
  .mc-hole-grid{grid-template-columns:112px repeat(var(--mc-hole-count),56px)}
  .mc-grid-label,.mc-grid-cell{min-height:49px}
  .mc-running-status{font-size:8.5px}
  .mc-player-label strong{font-size:11px}
  .mc-gross-score{font-size:17px}
  .mc-hole-legend small{width:100%;margin-left:0}
}

/* Build 241: Match Cards Nassau single F/B/O summary strip */
.match-card-detail .nassau-fbo-grid{gap:7px;margin:8px 0 12px}
.match-card-detail .nassau-fbo-segment{padding:9px 4px 8px;min-height:61px;align-content:center}
.match-card-detail .nassau-fbo-segment strong{
  font-size:11px;
  line-height:1.15;
  white-space:normal;
  overflow:visible;
  text-overflow:clip;
  overflow-wrap:anywhere;
}
.match-card-detail .nassau-fbo-segment small{font-size:8px;line-height:1.15}

/* Build 242: keep Nassau result number attached to UP/DN */
.match-card-detail .nassau-fbo-segment strong{
  white-space:nowrap !important;
  overflow:visible !important;
  text-overflow:clip !important;
  overflow-wrap:normal !important;
  word-break:keep-all !important;
}

/* Build 243: scorecard-first side-game Match Play + Nassau */
.side-game-scorecard-open{margin-top:12px}
.side-match-grid .mc-press-label{background:#fbf6e7;color:#5a4b24;border-right:1px solid #d9c27b}
.side-match-grid .mc-press-label strong{font-size:10px;letter-spacing:.08em;white-space:nowrap}
.side-match-grid .mc-press-label small{font-size:8px;color:#8b7440;white-space:nowrap}
.side-match-grid .mc-press-cell{background:#fffdf7}
.side-match-grid .mc-press-status{color:#8c6a12;font-size:10px;font-weight:800;white-space:nowrap}
.side-game-scorecard-open .mc-player-label strong{white-space:normal;line-height:1.1}
.side-game-scorecard-open .mc-gross-label strong{font-size:11px;line-height:1.05}
.nassau-detail-actions.compact-only{margin-top:10px}

/* Build 245: live press status cards above scorecard */
.nassau-live-presses-list{
  display:grid;
  grid-template-columns:1fr;
  gap:7px;
  margin:0 0 12px;
}
.nassau-live-presses-list .nassau-live-press-box{
  min-height:58px;
  padding:9px 10px 8px;
}
.nassau-live-presses-list .nassau-live-press-box strong{
  white-space:normal;
  overflow:visible;
  text-overflow:clip;
  overflow-wrap:normal;
}
.nassau-live-press-box.final{
  background:#f8f4e8;
  border-color:#d9bd69;
}
.match-play-live-presses{
  display:grid;
  gap:7px;
  margin:8px 0 12px;
}
.match-play-live-presses .match-play-press-box{
  margin-top:0;
  border-color:#e4c76e;
  background:#fff9ea;
  box-shadow:inset 0 3px 0 #d2a43b;
}
.match-play-live-presses .match-play-press-box.final{
  background:#f8f4e8;
}

/* Build 246: Nassau presses align beneath Front / Back / Overall and consolidate by segment */
.nassau-live-presses-list{display:none!important}
.nassau-segment-wager-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:7px;
  margin:-4px 0 12px;
  align-items:start;
}
.nassau-segment-wager-col{
  min-width:0;
  display:grid;
  gap:6px;
}
.nassau-segment-wager-col.empty{min-height:1px}
.nassau-segment-press-card,
.nassau-segment-final-card{
  width:100%;
  min-width:0;
  min-height:62px;
  box-sizing:border-box;
  border:1px solid #d6e0da;
  border-radius:11px;
  background:#f4f7f5;
  box-shadow:inset 0 4px 0 #aebbb4;
  padding:8px 4px 7px;
  text-align:center;
  display:grid;
  align-content:center;
  gap:2px;
  color:#123f1f;
  font:inherit;
}
.nassau-segment-press-card{
  border-color:#e4c76e;
  background:#fff9ea;
  box-shadow:inset 0 4px 0 #d2a43b;
}
.nassau-segment-press-card.final,
.nassau-segment-final-card{
  background:#f8f4e8;
  border-color:#ead59a;
  box-shadow:inset 0 4px 0 #cfa437;
}
.nassau-segment-final-card{cursor:pointer}
.nassau-segment-final-card.open{outline:1px solid #cfa437}
.nassau-segment-press-card span,
.nassau-segment-final-card span{
  font-size:8px;
  line-height:1.15;
  font-weight:900;
  letter-spacing:.08em;
  color:#8b681b;
}
.nassau-segment-press-card strong,
.nassau-segment-final-card strong{
  font-size:11px;
  line-height:1.15;
  color:#123f1f;
  white-space:normal;
  overflow:visible;
  text-overflow:clip;
  overflow-wrap:normal;
}
.nassau-segment-press-card small,
.nassau-segment-final-card small{
  font-size:8px;
  line-height:1.15;
  color:#68766f;
}
.nassau-final-breakdown{
  margin:-4px 0 12px;
  border:1px solid #e2ca82;
  border-radius:11px;
  overflow:hidden;
  background:#fffaf0;
}
.nassau-final-breakdown-title,
.nassau-final-breakdown-row{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  padding:8px 10px;
}
.nassau-final-breakdown-title{
  background:#f8f1df;
  color:#725619;
}
.nassau-final-breakdown-title span{
  font-size:9px;
  font-weight:900;
  letter-spacing:.08em;
}
.nassau-final-breakdown-title strong{
  font-size:11px;
  color:#123f1f;
  white-space:nowrap;
}
.nassau-final-breakdown-row{
  border-top:1px solid #efe2bc;
  font-size:10px;
  color:#586961;
}
.nassau-final-breakdown-row strong{
  color:#123f1f;
  white-space:nowrap;
}
@media(max-width:380px){
  .nassau-segment-wager-grid{gap:5px}
  .nassau-segment-press-card,.nassau-segment-final-card{padding-left:3px;padding-right:3px}
  .nassau-segment-press-card strong,.nassau-segment-final-card strong{font-size:10px}
}

/* Build 247: completed Nassau segment uses ONLY the top F/B/O box */
.nassau-fbo-final-money{
  cursor:pointer;
  font:inherit;
  width:100%;
}
.nassau-fbo-final-money.open{
  outline:1px solid #cfa437;
}
.nassau-fbo-final-money strong{
  white-space:nowrap!important;
  overflow:visible!important;
  text-overflow:clip!important;
}

/* Build 249: leader-color semantics for Match Play and Nassau wager boxes */
.match-play-main-box.leader-top,
.match-play-press-box.leader-top,
.nassau-fbo-segment.leader-top,
.nassau-segment-press-card.leader-top,
.nassau-fbo-final-money.leader-top{
  border-color:#176b48!important;
  background:#f3faf6!important;
  box-shadow:inset 0 4px 0 #176b48!important;
}
.match-play-main-box.leader-bottom,
.match-play-press-box.leader-bottom,
.nassau-fbo-segment.leader-bottom,
.nassau-segment-press-card.leader-bottom,
.nassau-fbo-final-money.leader-bottom{
  border-color:#d2a43b!important;
  background:#fff9ea!important;
  box-shadow:inset 0 4px 0 #d2a43b!important;
}
.match-play-main-box.leader-neutral,
.match-play-press-box.leader-neutral,
.nassau-fbo-segment.leader-neutral,
.nassau-segment-press-card.leader-neutral,
.nassau-fbo-final-money.leader-neutral{
  border-color:#d6e0da!important;
  background:#fff!important;
  box-shadow:inset 0 4px 0 #aebbb4!important;
}
.match-play-main-box.leader-top strong,
.match-play-press-box.leader-top strong,
.nassau-fbo-segment.leader-top strong,
.nassau-segment-press-card.leader-top strong,
.nassau-fbo-final-money.leader-top strong{color:#0f5a3a!important}
.match-play-main-box.leader-bottom strong,
.match-play-press-box.leader-bottom strong,
.nassau-fbo-segment.leader-bottom strong,
.nassau-segment-press-card.leader-bottom strong,
.nassau-fbo-final-money.leader-bottom strong{color:#9a7017!important}
.match-play-main-box.leader-neutral strong,
.match-play-press-box.leader-neutral strong,
.nassau-fbo-segment.leader-neutral strong,
.nassau-segment-press-card.leader-neutral strong,
.nassau-fbo-final-money.leader-neutral strong{color:#123f1f!important}

/* Build 252: 3 Up scorecard-first High/Low live board */
.three-up-scorecard-list{display:grid;gap:10px}
.three-up-match.active-match{border:2px solid #176b48;border-radius:13px;overflow:hidden;background:#fff}
.three-up-match.match-complete{border:1px solid #d9e2dd;border-radius:13px;overflow:hidden;background:#fff}
.three-up-active-head{padding:10px 11px;background:#f5faf7;display:flex;justify-content:space-between;gap:8px;align-items:center}
.three-up-active-head>span{display:grid;gap:2px;min-width:0}
.three-up-active-head small{font-size:9px;font-weight:900;letter-spacing:.08em;color:#176b48}
.three-up-active-head strong{font-size:13px;color:#123f1f}
.three-up-active-head em{font-style:normal;font-size:10px;color:#63736b}
.three-up-active-head>b{font-size:11px;color:#123f1f;white-space:nowrap}
.three-up-scorecard-wrap{padding:8px 0 2px}
.three-up-scorecard-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch;overscroll-behavior-inline:contain;padding-bottom:3px}
.three-up-scorecard-grid{display:grid;grid-template-columns:92px repeat(var(--three-up-cols),58px);width:max-content;min-width:100%;border-top:1px solid #e1e8e4;border-left:1px solid #e1e8e4}
.three-up-grid-label,.three-up-grid-cell{min-height:48px;border-right:1px solid #e1e8e4;border-bottom:1px solid #e1e8e4;display:flex;align-items:center;justify-content:center;text-align:center;background:#fff}
.three-up-grid-label{position:sticky;left:0;z-index:2;justify-content:flex-start;padding:5px 7px;background:#f8faf9;color:#123f1f}
.three-up-grid-label.head,.three-up-grid-cell.head{min-height:34px;background:#f3f6f4;font-size:10px;color:#596b62;font-weight:900}
.three-up-grid-label.status{font-size:10px;font-weight:900;letter-spacing:.07em}
.three-up-grid-label.unit{font-size:9px;font-weight:900;letter-spacing:.06em;color:#8b681b}
.three-up-grid-label.team{display:grid;align-content:center;gap:1px}
.three-up-grid-label.team strong{font-size:10px;line-height:1.1;white-space:normal}
.three-up-grid-label.team small{font-size:7px;color:#738078;letter-spacing:.06em}
.three-up-running-status{display:grid;gap:2px;font-size:10px;font-weight:900;color:#123f1f;white-space:nowrap}
.three-up-running-status small{font-size:7px;letter-spacing:.08em;color:#9a7017}
.three-up-unit-value{display:grid;gap:1px;font-size:10px;font-weight:900;color:#8b681b}
.three-up-unit-value small{font-size:6px;color:#9a7017;letter-spacing:.05em}
.three-up-dual-points{display:grid;grid-template-columns:1fr 1fr;width:100%;height:100%;align-items:center}
.three-up-point{display:grid;place-items:center;align-content:center;gap:2px;min-height:46px}
.three-up-point+ .three-up-point{border-left:1px dashed #e3e8e5}
.three-up-point small{font-size:7px;font-weight:900;color:#7c8982}
.three-up-point b{font-size:13px;color:#176b48}
.three-up-point-empty{opacity:.45}
.three-up-grid-legend{display:flex;flex-wrap:wrap;gap:8px 12px;padding:7px 4px 2px;color:#63736b;font-size:8px;align-items:center}
.three-up-grid-legend span{display:inline-flex;align-items:center;gap:4px}
.three-up-grid-legend b{color:#176b48}
.three-up-pending-note{margin:6px 7px 3px;padding:7px 8px;border-radius:9px;background:#f5faf7;color:#176b48;font-size:9px;font-weight:800;text-align:center}
.three-up-final-summary{margin:7px;border:1px solid #d6e0da;border-radius:10px;padding:8px 9px;display:grid;gap:2px;text-align:center;background:#fff}
.three-up-final-summary span{font-size:8px;font-weight:900;letter-spacing:.08em}
.three-up-final-summary strong{font-size:11px;color:#123f1f}
.three-up-final-summary small{font-size:9px;color:#63736b}
.three-up-final-summary.leader-top{border-color:#176b48;background:#f3faf6;box-shadow:inset 0 3px 0 #176b48}
.three-up-final-summary.leader-bottom{border-color:#d2a43b;background:#fff9ea;box-shadow:inset 0 3px 0 #d2a43b}
.pending-next-match .three-up-active-head{background:#fffaf0;border-bottom:1px solid #ead59a}
@media(max-width:380px){
  .three-up-scorecard-grid{grid-template-columns:84px repeat(var(--three-up-cols),56px)}
  .three-up-active-head{align-items:flex-start;flex-direction:column}
  .three-up-active-head>b{align-self:flex-end}
}

/* Build 253: 3 Up one-time team order builder */
.three-up-order-banner{border-color:#d9c27f;background:#fffaf0}
.three-up-rotation-preview{display:grid;gap:6px;margin-top:10px}
.three-up-rotation-preview>div{display:grid;grid-template-columns:54px 1fr 22px 1fr;gap:5px;align-items:center;border-top:1px solid #ece4cd;padding-top:6px}
.three-up-rotation-preview small{font-size:8px;font-weight:900;color:#8b681b}
.three-up-rotation-preview strong{font-size:10px;color:#123f1f}
.three-up-rotation-preview span{text-align:center;font-size:8px;color:#7a817d}

/* Build 255: Team Cup unified Match Play / Nassau visual system */
.cup-match-main-box{border:2px solid var(--cup-leading,#b8c7bf);border-radius:14px;padding:14px;text-align:center;background:#fbfdfc;margin:0 0 10px;box-shadow:inset 0 4px 0 var(--cup-leading,#b8c7bf)}
.cup-match-main-box span{display:block;font-size:10px;letter-spacing:.16em;font-weight:900;color:#617069}.cup-match-main-box strong{display:block;font-size:20px;color:var(--cup-leading,#123f1f);margin-top:5px}.cup-match-main-box small{display:block;color:#7b8580;margin-top:3px}.cup-match-main-box.neutral strong{color:#123f1f}
.cup-match-visual{margin-top:10px}.cup-team-grid-label strong{font-weight:900}.cup-mc-marker{position:relative;display:inline-flex;align-items:center;justify-content:center;min-height:30px;width:100%}.cup-mc-triangle{display:inline-block;width:0;height:0}.cup-mc-triangle.up{border-left:9px solid transparent;border-right:9px solid transparent;border-bottom:16px solid var(--cup-team-color)}.cup-mc-triangle.down{border-left:9px solid transparent;border-right:9px solid transparent;border-top:16px solid var(--cup-team-color)}.cup-mc-tie{font-size:20px;font-weight:900;color:#456158}.cup-mc-marker .mc-stroke-dot{position:absolute;top:3px;right:5px}.cup-gross-score{display:inline-flex;align-items:center;justify-content:center;gap:3px;font-weight:900;color:#123f1f}.cup-match-legend .cup-mc-triangle{transform:scale(.72);transform-origin:center}.cup-match-legend span{white-space:nowrap}
.cup-summary-segment.has-leader{border-top:5px solid var(--segment-team);background:color-mix(in srgb,var(--segment-team) 7%,white)}.cup-summary-segment.has-leader strong,.cup-summary-segment.has-leader small{color:var(--segment-team)}

/* Build 256: Sixes uses TORIIE match-arrow scorecard */
.sixes-arrow-grid{
  grid-template-columns:92px repeat(var(--mc-hole-count),58px)!important;
}
.sixes-arrow-scroll{margin-top:3px}
.sixes-match-item.active-match{
  border-color:#176b48!important;
  box-shadow:inset 3px 0 0 #176b48;
}
.sixes-match-detail .mc-running-status{
  display:grid;
  place-items:center;
  gap:1px;
}
.sixes-match-detail .mc-running-status small{
  display:block;
  font-size:6px;
  line-height:1;
  letter-spacing:.08em;
  color:#9a7017;
}
.sixes-mini-status{margin-top:0!important}
.sixes-scorecard-card .sixes-money{margin-top:12px}
@media(max-width:430px){
  .sixes-arrow-grid{
    grid-template-columns:84px repeat(var(--mc-hole-count),55px)!important;
  }
}

/* Build 257: Sixes one-time team order builder */
.sixes-order-banner{
  border-color:#d8c780;
  background:#fffaf0;
}
.sixes-order-banner .defender-score-kicker{color:#8b681b}

/* Build 258: Master TORIIE arrow-match visual standard
   Match Play / Nassau is the canonical presentation. */

/* All match data cells are neutral white until a result marker is posted. */
.mc-hole-grid > .mc-grid-cell{
  background:#fff!important;
  color:#123f1f!important;
}
.mc-hole-grid > .mc-grid-cell.mc-hole-head-cell{
  background:#123f1f!important;
  color:#fff!important;
  font-weight:900!important;
}
.mc-grid-cell.mc-press-cell{background:#fffdf7!important}
.mc-grid-cell.mc-gross-cell{background:#fbfcfb!important}

/* Remove visual implication that an unposted cell is active/filled. */
.mc-result-wrap.mc-unposted,
.mc-result-empty{
  background:transparent!important;
}
.mc-result-wrap.mc-unposted .mc-result-empty{
  opacity:0;
}

/* Match rows use one typography system. */
.mc-running-status{
  color:#123f1f!important;
  font-weight:850!important;
}
.mc-running-status:empty{display:block}

/* Team/player labels have enough breathing room without repeated instructions. */
.mc-player-label{
  min-height:50px!important;
}
.mc-player-label strong{
  line-height:1.15;
}
.mc-player-label small{
  margin-top:2px;
}

/* Final marker language is consistent. */
.match-play-main-box small,
.match-play-press-box small,
.nassau-fbo-segment small,
.cup-match-main-box small,
.cup-summary-segment small{
  text-transform:none;
}

/* Sixes inherits the same neutral grid treatment. */
.sixes-arrow-grid > .mc-grid-cell:not(.mc-hole-head-cell){
  background:#fff!important;
  color:#123f1f!important;
}

/* Cup keeps team-color markers but neutral unplayed cells. */
.cup-match-visual .mc-grid-cell:not(.mc-hole-head-cell){
  background:#fff!important;
}
.cup-match-visual .cup-mc-marker:empty{
  background:transparent!important;
}

/* 3 Up already used white cells; align its unplayed/pending visual with the system. */
.three-up-grid-cell{
  background:#fff!important;
}
.three-up-point-empty{
  opacity:0!important;
}

/* Build 259: Sixes mini row removed from arrow scorecard */
.sixes-match-detail .mc-press-label,
.sixes-match-detail .mc-press-cell{display:none!important}

/* Build 260: Sixes mini-match remains visible inside the standard arrow grid */
.sixes-arrow-grid .sixes-mini-hole{
  background:#fffaf0!important;
  box-shadow:inset 2px 0 0 #d2a43b;
}
.sixes-mini-cell-status{
  display:grid!important;
  gap:1px;
  place-items:center;
}
.sixes-mini-cell-label{
  display:block!important;
  font-size:6px!important;
  line-height:1!important;
  letter-spacing:.08em!important;
  color:#9a7017!important;
  font-weight:950!important;
}
.sixes-match-detail .sixes-mini-hole .mc-result-tie{
  color:#17723a;
}

/* Build 261: Sixes transition flow and compact next-match behavior */
.sixes-match-item>button>span{
  min-width:0;
}
.sixes-match-item>button>span>b{
  white-space:normal!important;
  overflow:visible!important;
  text-overflow:clip!important;
  line-height:1.18;
  display:block;
  padding-right:4px;
}
.sixes-match-item.next-match{
  border-color:#cfdcd5;
  box-shadow:none!important;
}
.sixes-transition-popup h2{
  margin-bottom:10px;
}
.sixes-transition-money{
  margin:10px 0;
  border:1px solid #e1cf91;
  background:#fff9ea;
  border-radius:13px;
  overflow:hidden;
}
.sixes-transition-money>span{
  display:block;
  padding:8px 11px;
  font-size:9px;
  font-weight:950;
  letter-spacing:.08em;
  text-transform:uppercase;
  color:#65736c;
  border-bottom:1px solid #eadcad;
}
.sixes-transition-money-row{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:12px;
  padding:7px 11px;
  border-bottom:1px solid #f0e4bd;
}
.sixes-transition-money-row:last-child{border-bottom:0}
.sixes-transition-money-row strong.positive{color:#117341}
.sixes-transition-money-row strong.negative{color:#9a322f}
.sixes-next-match em{
  font-style:normal;
  font-size:9px;
  font-weight:900;
  color:#7b8781;
}
.sixes-transition-mini{
  border-color:#d8b14f;
  background:#fffaf0;
}


/* Build 267 - explicit final-hole score review */
.final-score-review-backdrop{position:fixed;inset:0;z-index:1200;display:grid;place-items:center;padding:20px;background:rgba(4,25,20,.78);backdrop-filter:blur(6px)}
.final-score-review-modal{width:min(520px,100%);background:#fff;border:1px solid #d7e1dc;border-radius:24px;padding:28px 24px 24px;box-shadow:0 24px 60px rgba(2,25,17,.28);text-align:center}
.final-score-review-brand{color:#0a3424;font-weight:900;letter-spacing:.13em;font-size:18px}.final-score-review-brand small{color:#d3a637;font-size:11px;margin-left:5px}
.final-score-review-kicker{margin-top:18px;color:#d3a637;font-weight:900;letter-spacing:.18em;font-size:13px}
.final-score-review-modal h2{margin:8px 0 8px;color:#082f20;font-size:28px;line-height:1.08}
.final-score-review-modal p{margin:0 0 22px;color:#64766e;font-size:16px;line-height:1.45}
.final-score-review-banner{margin:10px 0 16px;padding:18px 16px;background:#fff8e7;border:1px solid #e2c56d;border-radius:16px;box-shadow:inset 0 -4px 0 #d3a637}
.final-score-review-banner .final-score-review-kicker{margin:0 0 5px;font-size:12px}.final-score-review-banner strong{display:block;color:#082f20;font-size:21px;line-height:1.2}.final-score-review-banner p{margin:6px 0 0;color:#65766f;line-height:1.4}
.final-confirm-group{font-size:17px;font-weight:900}
@media(max-width:480px){.final-score-review-backdrop{padding:14px}.final-score-review-modal{padding:24px 18px 20px;border-radius:20px}.final-score-review-modal h2{font-size:24px}}

/* BUILD 268 — Live Board compact rhythm + consistent collapsed status */
.game-section{margin-top:19px;padding:9px 9px 12px}
.game-section-header{margin:-9px -9px 7px;padding:11px 14px}
.game-section>.game-card:first-of-type{margin-top:6px}
.game-section>.game-card{margin-bottom:8px}
.game-section>.game-card:last-child{margin-bottom:0}
.game-card-toggle{padding:15px 17px}
.game-card-body{padding:0 16px 16px}
.financial-section{margin-top:19px}
.financial-section>.game-card{margin:8px 0}
.scorecard-group + .scorecard-group{margin-top:20px;padding-top:17px}
@media(max-width:520px){
  .game-section{margin-top:17px;padding:8px 7px 10px}
  .game-section-header{margin:-8px -7px 6px;padding:10px 13px}
  .game-card-toggle{padding:14px 14px;font-size:18px}
  .game-card-body{padding:0 13px 13px}
  .game-section>.game-card{margin-top:8px;margin-bottom:7px}
  .financial-section{padding-left:7px;padding-right:7px}
}

/* Build 271: integrate Wolf into hole metrics */

/* Build 272: identify the current Wolf inside the player score card. */
.score-player strong{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.wolf-player-pill{display:inline-flex;align-items:center;justify-content:center;padding:3px 8px;border:1px solid #d3ad42;border-radius:999px;background:#fff8df;color:#8a6915;font-size:10px;font-weight:900;letter-spacing:.12em;line-height:1.1;vertical-align:middle}

/* BUILD 273 — Wolf hole-by-hole points */
.wolf-hole-points{margin:16px 0 4px;border:1px solid #d8dfda;border-radius:18px;overflow:hidden;background:#fff}
.wolf-hole-points-toggle{width:100%;border:0;background:#f7faf7;color:#0b3c22;display:flex;align-items:center;justify-content:space-between;text-align:left;padding:15px 16px;font:inherit}
.wolf-hole-points-toggle span{display:flex;flex-direction:column;gap:3px}.wolf-hole-points-toggle strong{text-transform:uppercase;letter-spacing:.08em;font-size:13px}.wolf-hole-points-toggle small{color:#6c7871;font-size:12px;font-weight:600}.wolf-hole-points-toggle i{font-style:normal;font-size:26px;line-height:1;color:#cfae4b}
.wolf-hole-points-body{border-top:1px solid #e3e8e4;background:#fff}
.wolf-hole-points-row{display:grid;grid-template-columns:58px 1fr;gap:12px;padding:13px 14px;border-bottom:1px solid #edf0ee;align-items:start}.wolf-hole-points-row:last-child{border-bottom:0}
.wolf-hole-points-hole{display:flex;flex-direction:column;align-items:center;justify-content:center;border-right:1px solid #e0e5e1;padding-right:10px;min-height:54px}.wolf-hole-points-hole span{font-size:9px;font-weight:800;letter-spacing:.12em;color:#c49b35}.wolf-hole-points-hole strong{font-size:25px;color:#0b3c22;line-height:1.15}
.wolf-hole-points-main{display:flex;flex-direction:column;gap:3px;min-width:0}.wolf-hole-points-main>strong{font-size:15px;color:#0b3c22}.wolf-hole-points-main>span{font-size:12px;color:#4f5e55;font-weight:700}.wolf-hole-points-main>small{font-size:11px;color:#78827c;line-height:1.35}

/* BUILD 274 — compact Wolf hole-entry modal */
.wolf-popup{max-width:520px;max-height:calc(100dvh - 28px);overflow:hidden;display:flex;flex-direction:column}
.wolf-popup .wolf-compact-head{padding:16px 20px 13px;background:linear-gradient(135deg,#123f1f,#0a2d17);border-bottom:3px solid #d7b34a}
.wolf-popup .wolf-compact-head .eyebrow{font-size:11px;letter-spacing:.17em;color:#e4c15b;margin-bottom:4px}
.wolf-popup .wolf-compact-head h2{font-size:25px;line-height:1.05;margin:0;color:#fff}
.wolf-head-mode{font-size:13px;color:#fff;opacity:.9;margin-top:4px}
.wolf-popup .wolf-compact-body{padding:13px 18px 10px;overflow:auto}
.wolf-choice-section{margin:0 0 10px}
.wolf-choice-section:last-child{margin-bottom:0}
.wolf-choice-label{font-size:11px;line-height:1;letter-spacing:.17em;font-weight:900;color:#b9912e;margin:0 0 6px}
.wolf-choice-grid{display:grid;gap:7px}
.wolf-partner-grid,.wolf-pig-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.wolf-alone-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.wolf-choice{min-height:46px;border-radius:11px;padding:9px 6px;font-size:15px;line-height:1.1}
.wolf-popup .junk-actions.compact{padding:10px 18px 14px;background:#fff;border-top:1px solid #eee}
.wolf-popup .junk-actions.compact .btn{min-height:48px}
.wolf-popup .field{margin-top:8px}
.wolf-popup .field label{font-size:13px;margin-bottom:4px}
.wolf-popup .field select{min-height:42px;padding:7px 10px}
.wolf-popup .field small{font-size:11px;line-height:1.25;margin-top:4px}
@media(max-width:480px){
  .wolf-popup{width:calc(100vw - 20px);max-height:calc(100dvh - 18px);border-radius:18px}
  .wolf-partner-grid,.wolf-pig-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
  .wolf-alone-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .wolf-popup .wolf-compact-head{padding:13px 16px 11px}
  .wolf-popup .wolf-compact-head h2{font-size:23px}
  .wolf-popup .wolf-compact-body{padding:11px 14px 8px}
  .wolf-choice-section{margin-bottom:9px}
  .wolf-choice{min-height:43px;padding:8px 4px;font-size:14px}
  .wolf-popup .junk-actions.compact{padding:9px 14px 12px}
}
@media(max-height:700px){
  .wolf-popup .wolf-compact-head{padding-top:10px;padding-bottom:9px}
  .wolf-popup .wolf-compact-head h2{font-size:21px}
  .wolf-popup .wolf-compact-body{padding-top:9px;padding-bottom:6px}
  .wolf-choice-section{margin-bottom:7px}
  .wolf-choice{min-height:39px;font-size:13px}
  .wolf-popup .junk-actions.compact .btn{min-height:44px}
}
/* BUILD 275 · TORIIE Vegas */
.vegas-card .game-card-toggle{border-left:4px solid #d6ab4a}.vegas-live-summary{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:10px;background:linear-gradient(135deg,#123f1f,#1e5c2f);color:#fff;border-radius:18px;padding:16px;margin-bottom:12px;text-align:center}.vegas-live-summary small{display:block;opacity:.75;font-size:.68rem;letter-spacing:.12em}.vegas-live-summary strong{font-size:1.65rem}.vegas-vs{color:#d6ab4a;font-size:.72rem;font-weight:900;letter-spacing:.16em}.vegas-hole-ledger{display:grid;gap:10px}.vegas-hole-row{border:1px solid #dfe7e1;border-radius:15px;padding:12px;background:#fff}.vegas-hole-top,.vegas-running{display:flex;justify-content:space-between;align-items:center;gap:10px}.vegas-hole-top b{color:#123f1f}.vegas-matchup{display:grid;grid-template-columns:1fr auto auto auto 1fr;align-items:center;gap:7px;margin:10px 0;font-size:.78rem}.vegas-matchup span:last-child{text-align:right}.vegas-matchup strong{font-size:1.15rem;color:#123f1f}.vegas-tags{display:flex;gap:6px;flex-wrap:wrap}.vegas-tags i{font-style:normal;font-size:.65rem;font-weight:900;background:#f6edcf;color:#694f0d;border-radius:999px;padding:4px 7px}.vegas-running{border-top:1px solid #edf1ee;margin-top:9px;padding-top:8px}.vegas-running span{margin-right:auto;color:#657168;font-size:.72rem}.vegas-running b{min-width:42px;text-align:right}.vegas-team-popup{border-top:5px solid #d6ab4a}.vegas-pair-grid{display:grid;gap:9px}.vegas-pair-grid .wolf-choice{display:grid;grid-template-columns:1fr auto 1fr;gap:8px;align-items:center;text-align:center;min-height:64px}.vegas-pair-grid .wolf-choice span{color:#9b7a24;font-size:.7rem;font-weight:900}@media(max-width:430px){.vegas-matchup{grid-template-columns:1fr auto auto auto 1fr;font-size:.68rem;gap:4px}.vegas-matchup strong{font-size:1rem}}

/* BUILD 280 · Individual Vegas */
.vegas-player-standings{display:grid;gap:8px;margin:8px 0 16px}.vegas-player-standing{border:1px solid #d9e5dc;border-radius:14px;padding:10px 12px;background:#fff}.vegas-player-standing span{display:flex;gap:10px;align-items:center}.vegas-player-standing span>b{display:grid;place-items:center;width:26px;height:26px;border-radius:50%;background:#0f4d26;color:#fff;font-size:13px}.vegas-player-standing strong{font-size:20px;color:#0b4421}.vegas-settlement .payout-row span{display:flex;flex-direction:column}.vegas-settlement .payout-row small{font-weight:600;color:#6c786f;font-size:12px;margin-top:2px}.vegas-running.individual{display:grid;grid-template-columns:1fr 1fr;gap:5px 10px;align-items:center}.vegas-running.individual .label{grid-column:1/-1;color:#728078;font-size:12px;text-transform:uppercase;letter-spacing:.12em}.vegas-running.individual span:not(.label){display:flex;justify-content:space-between;gap:8px;background:#f4f8f5;border-radius:9px;padding:6px 8px;font-size:12px}.vegas-details{margin-top:14px}.vegas-details>summary{font-weight:800;color:#0b4421}
.vegas-hole-result-popup .junk-popup-body{padding-top:18px}.vegas-hole-awards{display:grid;gap:10px;margin-bottom:18px}.vegas-hole-award{display:flex;align-items:center;justify-content:space-between;gap:16px;border:1px solid #d8e4dc;border-radius:15px;padding:14px 16px;background:#fff}.vegas-hole-award span{font-size:1.15rem;font-weight:900;color:#12251a}.vegas-hole-award strong{font-size:1.45rem;color:#08713a}.vegas-hole-tie{display:grid;gap:4px;text-align:center;padding:15px;border:1px solid #ead28c;border-radius:15px;background:#fff8df}.vegas-hole-tie strong{font-size:1.4rem;color:#785b10}.vegas-hole-tie span{font-size:.82rem;color:#6b726d}.vegas-result-matchup{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:12px;border:1px solid #d8e4dc;border-radius:16px;padding:15px;background:#fbfdfb}.vegas-result-matchup>div{display:grid;gap:5px}.vegas-result-matchup>div:last-child{text-align:right}.vegas-result-matchup span{font-size:.78rem;font-weight:800;color:#435248}.vegas-result-matchup strong{font-size:1.8rem;color:#0d5229}.vegas-result-matchup>b{font-size:.72rem;letter-spacing:.12em;color:#8a948d}.vegas-result-tags{margin-top:14px}.vegas-hole-result-popup .junk-popup-head h2{font-size:1.75rem}


/* BUILD 283 · Vegas live board cleanup */
.vegas-player-standing{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;column-gap:12px}
.vegas-player-standing>strong{display:grid;grid-template-columns:auto 92px;align-items:baseline;column-gap:10px;white-space:nowrap;font-size:18px}
.vegas-player-standing>strong em{font-style:normal;text-align:right;font-size:18px;min-width:92px}
.vegas-hole-row{padding:13px 14px}
.vegas-hole-top{align-items:flex-start}
.vegas-hole-top b{text-align:right;line-height:1.15}
.vegas-hole-row .vegas-tags{margin-top:8px}
@media(max-width:430px){.vegas-player-standing>strong{grid-template-columns:auto 82px;column-gap:7px;font-size:17px}.vegas-player-standing>strong em{min-width:82px;font-size:17px}.vegas-player-standing{column-gap:8px}.vegas-hole-top{gap:8px}.vegas-hole-top b{font-size:.93rem}}

/* Build 286: Team 12 Point live board */
.team12-live-summary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-bottom:16px}.team12-live-summary span{display:flex;justify-content:space-between;gap:8px;background:#eef5f1;border:1px solid #c8d8cf;border-radius:12px;padding:10px 12px}.team12-live-section-title{margin:18px 0 10px;color:#0b5d3b;letter-spacing:.09em;font-size:.8rem}.team12-live-team,.team12-live-group{border:1px solid #cbd9d1;border-radius:16px;overflow:hidden;margin-bottom:12px;background:#fff}.team12-live-team.leader,.team12-live-group .leader{border-color:#d6ab4a}.team12-live-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;background:#f2f7f4}.team12-live-head span{display:grid}.team12-live-head small{color:#6a7b72}.team12-live-members{display:grid}.team12-live-members>div,.team12-group-player{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 14px;border-top:1px solid #e1e9e4}.team12-live-members span,.team12-group-player span{display:grid}.team12-live-members small,.team12-group-player small{font-size:.75rem;color:#75857d}.team12-group-player.leader{background:#fff8e7}.team12-payout-note{padding:9px 14px;background:#0b5d3b;color:#fff;font-weight:800;font-size:.82rem}.team12-live-group>.team12-live-head strong{font-size:.82rem;color:#0b5d3b}@media(max-width:520px){.team12-live-summary{grid-template-columns:1fr}}

/* Build 292: cleaner in-round Live Board hierarchy */
.game-section-header.compact-game-header{padding:8px 12px!important;min-height:0!important;margin:-8px -7px 7px!important;border-radius:14px 14px 0 0!important}
.game-section-header.compact-game-header div{gap:0!important}
.game-section-header.compact-game-header span{font-size:.76rem!important;line-height:1.15!important}
@media(max-width:520px){.game-section-header.compact-game-header{padding:7px 11px!important;margin:-8px -7px 6px!important}}
/* Build 294: live money sits with the score; only positive current winners display. */
.live-inline-money{font-style:normal;font-size:.82em;font-weight:800;white-space:nowrap;margin-left:6px;color:var(--green,#123f1f)}

/* Build 297: scalable two-stage Junk scoring picker. */
.junk-grid-entry .junk-popup-body{display:block;overflow:auto}.junk-grid-entry-head{display:flex;align-items:baseline;justify-content:space-between;gap:12px}.junk-grid-entry-head span{font-size:.75rem;font-weight:900;color:#557064}.junk-type-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin-top:14px}.junk-type-choice{appearance:none;border:2px solid #d8e2dd;border-radius:13px;background:#fff;min-height:58px;padding:10px 11px;display:grid;gap:3px;text-align:left;font:inherit;color:#173328}.junk-type-choice strong{font-size:.9rem}.junk-type-choice small{font-size:.68rem;font-weight:800;color:#718078;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.junk-type-choice.selected{background:#eaf7f0;border-color:#0b6946;box-shadow:inset 0 0 0 1px #0b6946}.junk-type-choice.selected strong{color:#0b6946}.junk-who-panel{margin-top:12px;padding:12px;border:1px solid #dbe5df;border-radius:14px;background:#f8fbf9}.junk-who-panel>strong{display:block;margin-bottom:9px}.junk-who-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.junk-who-choice{appearance:none;border:2px solid #d9e2dd;border-radius:11px;background:#fff;min-height:46px;padding:9px 10px;font:inherit;font-weight:900;color:#264537}.junk-who-choice.selected{background:#0b6946;border-color:#0b6946;color:#fff}.junk-who-done{width:100%;margin-top:9px;border:1.5px solid #0b6946;border-radius:10px;background:#fff;color:#0b6946;padding:9px;font:inherit;font-weight:900}@media(max-width:430px){.junk-type-grid,.junk-who-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.junk-type-choice{min-height:54px;padding:9px}}


/* TORIIE universal team scorecard — uses Nassau / Match Play scorecard geometry */
.team-mc-wrap{
  margin-top:10px;
  min-width:0;
  width:100%;
}
.team-mc-scroll{
  width:100%;
  max-width:100%;
  overflow-x:auto;
  -webkit-overflow-scrolling:touch;
  border:1px solid #c7d8ce;
  border-radius:12px;
  background:#fff;
  overscroll-behavior-x:contain;
}
.team-mc-grid{
  display:grid;
  grid-template-columns:118px repeat(var(--team-mc-cols),58px);
  min-width:max-content;
  background:#fff;
}
.team-mc-label,
.team-mc-cell{
  min-height:50px;
  box-sizing:border-box;
  border-right:1px solid #e4ebe6;
  border-bottom:1px solid #e4ebe6;
  display:flex;
  align-items:center;
  justify-content:center;
  color:#123f1f;
}
.team-mc-label{
  position:sticky;
  left:0;
  z-index:4;
  justify-content:flex-start;
  padding:0 9px;
  background:#fff;
  box-shadow:2px 0 0 rgba(18,63,31,.06);
}
.team-mc-head-label{
  z-index:7;
  background:#123f1f;
  color:#fff;
  font-size:10px;
  font-weight:900;
  letter-spacing:.08em;
}
.team-mc-head{
  min-height:50px;
  background:#123f1f;
  color:#fff;
  font-size:12px;
  font-weight:900;
}
.team-mc-head.team-mc-summary{
  background:#244f36;
}
.team-mc-par-label,
.team-mc-par{
  min-height:38px;
  background:#f3f6f4;
  color:#617168;
  font-size:10px;
  font-weight:900;
}
.team-mc-player strong{
  max-width:96px;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  font-size:12px;
}
.team-mc-cell{
  position:relative;
  font-size:12px;
}
.team-mc-score{
  position:relative;
  min-width:34px;
  min-height:34px;
  border-radius:8px;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:2px;
  font-size:15px;
  font-weight:800;
  line-height:1;
}
.team-mc-score.empty{
  color:transparent;
}
.team-mc-score i{
  align-self:flex-end;
  margin-bottom:4px;
  font-style:normal;
  font-size:8px;
  font-weight:950;
  color:#557067;
}
.team-mc-score small{
  font-size:8px;
  color:#66786f;
  font-weight:800;
}
.team-mc-cell.counted{
  background:#f3faf6;
}
.team-mc-cell.counted .team-mc-score{
  border:2px solid #08704a;
  background:#fff;
  color:#103d2c;
  font-weight:950;
}
.team-mc-cell.required .team-mc-score:before{
  content:'★';
  position:absolute;
  top:-7px;
  right:-6px;
  width:15px;
  height:15px;
  border-radius:50%;
  display:flex;
  align-items:center;
  justify-content:center;
  background:#d4a632;
  color:#fff;
  font-size:8px;
}
.team-mc-summary{
  background:#fbfaf5;
  font-weight:900;
}
.team-mc-total{
  background:#edf4ef;
  font-weight:950;
}
.team-mc-team-label,
.team-mc-team{
  background:#f5f8f6;
  font-weight:950;
  border-bottom:0;
}
.team-mc-team strong{
  font-size:12px;
}
.team-mc-segment{
  font-size:11px;
  font-weight:900;
}
@media(max-width:520px){
  .team-mc-grid{
    grid-template-columns:112px repeat(var(--team-mc-cols),56px);
  }
  .team-mc-label,
  .team-mc-cell{
    min-height:49px;
  }
  .team-mc-par-label,
  .team-mc-par{
    min-height:36px;
  }
  .team-mc-label{
    padding:0 8px;
  }
  .team-mc-player strong{
    font-size:11px;
  }
  .team-mc-score{
    font-size:15px;
  }
}


/* TEAM SCORECARD iOS GRID FIX
   Each visual scorecard row owns the exact same columns. The horizontal scroll
   container owns the full sheet, and the first cell in every row is sticky. */
.team-mc-sheet{
  display:block;
  width:max-content;
  min-width:100%;
  background:#fff;
}
.team-mc-row{
  display:grid;
  grid-template-columns:118px repeat(var(--team-mc-cols),58px);
  width:max-content;
  min-width:100%;
}
.team-mc-row .team-mc-label{
  grid-column:1;
  position:sticky;
  left:0;
  z-index:5;
}
.team-mc-row:first-child .team-mc-label{z-index:8}
.team-mc-row .team-mc-cell{display:flex!important;visibility:visible!important}
@media(max-width:520px){
  .team-mc-row{
    grid-template-columns:112px repeat(var(--team-mc-cols),56px);
  }
}


/* Native Nassau team scorecard: geometry is inherited from mc-hole-grid. */
.team-native-scorecard{width:100%;min-width:0}
.team-native-scorecard .mc-hole-scroll{width:100%;max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}
.team-native-par-label{background:#f3f6f4;color:#617168;font-size:9px;font-weight:900;letter-spacing:.06em}
.team-native-par-cell{background:#f8faf8}
.team-native-par{font-size:10px;font-weight:850;color:#68776f}
.team-native-player-label{background:#fff}
.team-native-team-label{background:#f3f6f4;font-weight:950}
.team-native-team-cell{background:#f6f8f6}
.team-native-result{font-size:12px;font-weight:950;color:#123f1f}
.team-native-score{
  position:relative;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:2px;
  min-width:32px;
  min-height:32px;
  border-radius:8px;
  font-size:15px;
  font-weight:800;
  line-height:1;
  color:#123f1f;
}
.team-native-score.empty{color:transparent}
.team-native-score.counted{
  border:2px solid #08704a;
  background:#fff;
  font-weight:950;
  box-shadow:0 0 0 1px rgba(8,112,74,.07);
}
.team-native-score.required:before{
  content:'★';
  position:absolute;
  top:-7px;
  right:-6px;
  width:15px;
  height:15px;
  border-radius:50%;
  display:flex;
  align-items:center;
  justify-content:center;
  background:#d4a632;
  color:#fff;
  font-size:8px;
}
.team-native-score i{
  align-self:flex-end;
  margin-bottom:3px;
  font-style:normal;
  font-size:8px;
  font-weight:950;
  color:#557067;
}
.team-native-score small{font-size:8px;color:#66786f;font-weight:800}
.team-native-summary-strip{
  display:flex;
  justify-content:flex-end;
  gap:7px;
  margin-top:7px;
}
.team-native-summary{
  min-width:58px;
  padding:6px 8px;
  border:1px solid #d6e0da;
  border-radius:9px;
  background:#f7f9f7;
  display:grid;
  gap:1px;
  text-align:center;
}
.team-native-summary span{font-size:8px;font-weight:900;letter-spacing:.08em;color:#718078}
.team-native-summary strong{font-size:11px;color:#123f1f}
.team-native-summary.total{background:#edf4ef;border-color:#c7d8ce}

/* Shared Player/Team golf scorecard */
.shared-golf-scorecard{width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;border:1px solid #cbd9d1;border-radius:14px;background:#fff}
.shared-golf-scorecard table{min-width:920px;width:max-content;border-collapse:collapse;table-layout:fixed}
.shared-golf-scorecard th,.shared-golf-scorecard td{min-width:46px;height:42px;padding:5px 6px;font-size:12px;white-space:nowrap}
.shared-golf-scorecard th:first-child,.shared-golf-scorecard td:first-child{min-width:130px;width:130px;position:sticky;left:0;z-index:4;background:#fff}
.shared-golf-scorecard thead th{background:#eef3f0;color:#163f2f;font-weight:950}
.shared-golf-scorecard thead th:first-child{z-index:6;background:#eef3f0}
.shared-golf-scorecard .scorecard-meta-row th,.shared-golf-scorecard .scorecard-meta-row td{background:#f7f9f7;color:#65766d;font-weight:850;font-size:10px}
.shared-golf-scorecard .scorecard-si-row th,.shared-golf-scorecard .scorecard-si-row td{background:#fbfcfb}
.team-game-scorecard .team-score-table-cell.counted{background:#f3faf6}
.team-game-scorecard .team-score-table-value{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:2px;min-width:31px;min-height:31px;border-radius:8px;font-weight:800}
.team-game-scorecard .team-score-table-cell.counted .team-score-table-value{border:2px solid #08704a;background:#fff;color:#103d2c;font-weight:950}
.team-game-scorecard .team-score-table-cell.required .team-score-table-value:before{content:'★';position:absolute;top:-8px;right:-7px;width:14px;height:14px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:#d4a632;color:#fff;font-size:8px}
.team-game-scorecard .team-score-table-value i{font-style:normal;font-size:8px;font-weight:950;color:#557067;align-self:flex-end;margin-bottom:3px}
.team-game-scorecard .team-score-table-value small{font-size:8px;color:#66786f}
.team-game-scorecard .team-score-team-row td{background:#f3f6f4;color:#123f1f;font-weight:950}
.team-game-scorecard .team-score-team-row td:first-child{background:#f3f6f4}
.team-game-scorecard .team-score-empty{background:#f7f6f2;color:#a2aaa6}
.mc-course-meta-label{background:#f3f6f4!important;color:#65766d!important;font-size:9px!important;font-weight:900!important;letter-spacing:.06em}
.mc-course-meta-cell{background:#f8faf8!important}.mc-course-meta{font-size:9px;font-weight:850;color:#65766d}
@media(max-width:650px){.shared-golf-scorecard table{min-width:900px}.shared-golf-scorecard th:first-child,.shared-golf-scorecard td:first-child{min-width:125px;width:125px}.shared-golf-scorecard th,.shared-golf-scorecard td{min-width:44px;height:40px;padding:4px 5px}}

/* Universal stroke dots in expanded score boxes */
.universal-score-box{position:relative;display:inline-flex;align-items:center;justify-content:center;min-width:24px;min-height:24px;padding:2px 7px}.universal-stroke-dots{position:absolute;top:1px;right:1px;display:flex;gap:1px}.universal-stroke-dots b{display:block;width:4px;height:4px;border-radius:50%;background:currentColor}

/* Shared Pot payout reconciliation */
.payout-reconcile-summary{margin-top:12px;border-top:1px solid #dfe5e1;padding-top:10px;display:grid;gap:7px}
.payout-reconcile-summary>div:not(.notice){display:flex;justify-content:space-between;align-items:center;gap:12px;padding:7px 9px;border-radius:9px;background:#f7f9f7}
.payout-reconcile-summary .tip-jar-row{background:#f7f1e4;border:1px solid #dec997}
.payout-reconcile-summary .tip-jar-row span,.payout-reconcile-summary .tip-jar-row strong{font-weight:900;color:#7b5b1b}
.payout-reconcile-summary .payout-zero-row{background:#edf6f0;border:1px solid #c7ddcd}
.payout-reconcile-summary .payout-zero-row strong{color:#123b2a}

/* Build 351 — team scorecards show gross + stroke dots */
.team-scorecard-handicap-note{
  padding:7px 10px;
  font-size:11px;
  font-weight:800;
  color:#52645b;
}
.team-game-scorecard .team-score-player-name{
  white-space:nowrap;
  font-size:11px;
  font-weight:900;
}
.team-gross-only-score{
  display:inline-flex;
  align-items:flex-start;
  justify-content:center;
  gap:2px;
}
.team-game-scorecard .universal-stroke-dots{
  margin-left:1px;
}

/* Build 354 — show stroke dots before a score is entered */
.team-score-empty-with-dots{
  position:relative;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:24px;
  min-height:24px;
}
.team-score-empty-with-dots .universal-stroke-dots{
  color:#0b5f43;
}

/* Build 355 — stroke dots fixed in upper-right corner of score cells */
.team-game-scorecard .universal-score-box,
.team-game-scorecard .team-score-empty-with-dots{
  position:relative;
}
.team-game-scorecard .universal-stroke-dots{
  position:absolute !important;
  top:2px !important;
  right:2px !important;
  margin:0 !important;
  display:flex !important;
  gap:1px;
  line-height:1;
  pointer-events:none;
}
.team-game-scorecard .universal-stroke-dots b{
  width:4px;
  height:4px;
  border-radius:50%;
}

/* Build 356 — golf plus handicap and given-stroke marker */
.team-game-scorecard .universal-give-strokes b{
  width:auto !important;
  height:auto !important;
  border-radius:0 !important;
  background:none !important;
  font-size:11px;
  font-weight:1000;
  line-height:1;
  color:#0b5f43;
}

/* Build 357 — Wolf score-entry status card */
.wolf-score-banner{
  display:grid;
  gap:9px;
}
.wolf-score-pots{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:10px;
  margin-top:4px;
}
.wolf-score-pots.single{
  grid-template-columns:1fr;
}
.wolf-score-pots span{
  display:grid;
  gap:2px;
  padding:9px 12px;
  border:1px solid rgba(11,95,67,.18);
  border-radius:12px;
  background:rgba(255,255,255,.58);
  text-align:center;
}
.wolf-score-pots small{
  font-size:10px;
  font-weight:900;
  letter-spacing:.12em;
  color:#6a776f;
}
.wolf-score-pots strong{
  font-size:20px;
  color:#0b5f43;
}
