:root{--gold:#d7ad4f;--gold2:#ffe2a0;--text:#fff8e8;--muted:#bfb39b;--line:rgba(215,173,79,.24);--shadow:0 24px 80px rgba(0,0,0,.48);--green:#123c27}
*{box-sizing:border-box}
body{margin:0;font-family:Arial,sans-serif;color:var(--text);background:radial-gradient(circle at 15% 0%,rgba(215,173,79,.20),transparent 32%),radial-gradient(circle at 90% 18%,rgba(18,60,39,.58),transparent 34%),linear-gradient(135deg,#020302,#071006 55%,#020302)}
button,input,select{font:inherit}.hidden{display:none!important}
.topbar{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:18px 30px;border-bottom:1px solid var(--line);background:rgba(3,5,3,.84);position:sticky;top:0;z-index:10}
.brand{display:flex;align-items:center;gap:14px}.crest{width:56px;height:56px;border-radius:18px;display:grid;place-items:center;background:linear-gradient(145deg,var(--gold2),var(--gold));color:#061006;font-weight:1000}.brand h1{margin:0;font-size:18px;line-height:1;text-transform:uppercase}.brand span,.eyebrow{color:var(--gold2);font-size:11px;letter-spacing:.18em;text-transform:uppercase;font-weight:900}
.btn{border:0;border-radius:14px;padding:12px 16px;font-weight:900;cursor:pointer}.btn.dark{border:1px solid var(--line);background:rgba(255,255,255,.06);color:var(--text)}.btn.primary,.btn.gold{background:linear-gradient(135deg,var(--gold2),var(--gold));color:#061006}.btn.big{font-size:18px;padding:18px 22px}
.main,.wrap{max-width:1220px;margin:auto;padding:42px 26px 30px}.hero{display:grid;grid-template-columns:1.06fr .94fr;gap:24px;align-items:stretch}.card,.panel{border:1px solid var(--line);background:linear-gradient(145deg,rgba(20,29,20,.94),rgba(7,11,7,.97));border-radius:30px;padding:32px;box-shadow:var(--shadow)}
h2{font-size:52px;line-height:.96;letter-spacing:-.045em;margin:10px 0 16px}h3{font-size:28px;margin:0 0 12px}p{color:var(--muted);line-height:1.55;margin:0}.tagline{font-size:18px;max-width:640px}
.action-grid{display:grid;gap:14px;margin-top:28px}.action{width:100%;display:flex;align-items:center;justify-content:space-between;gap:18px;text-align:left;border:1px solid rgba(215,173,79,.20);background:#071007;border-radius:24px;padding:22px;color:var(--text);cursor:pointer}.action.primary{min-height:145px;border-color:rgba(215,173,79,.55);background:linear-gradient(145deg,rgba(215,173,79,.23),rgba(18,60,39,.42)),#071007}.action h3{margin:0 0 6px;font-size:25px}.action.primary h3{font-size:32px}.action small{display:block;color:var(--muted);font-size:14px}.pill{display:inline-flex;margin-top:10px;padding:7px 10px;border-radius:999px;background:rgba(215,173,79,.14);border:1px solid rgba(215,173,79,.34);color:var(--gold2);font-size:12px;font-weight:900}.arrow{font-size:26px;color:var(--gold2)}
.preview{border:1px solid rgba(215,173,79,.18);background:#061006;border-radius:24px;padding:22px;margin-top:22px}.preview-row{display:flex;justify-content:space-between;padding:13px 0;border-bottom:1px solid rgba(255,255,255,.08)}.preview-row:last-child{border-bottom:0}
.progress{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 22px}.step-pill{border:1px solid var(--line);border-radius:999px;padding:8px 11px;color:var(--muted);font-size:12px;font-weight:900;background:rgba(255,255,255,.03);cursor:pointer}.step-pill.active{background:var(--gold);color:#061006}.step-pill.done{color:var(--gold2)}
.grid2,.grid3,.grid4{display:grid;gap:14px}.grid2{grid-template-columns:repeat(2,1fr)}.grid3{grid-template-columns:repeat(3,1fr)}.grid4{grid-template-columns:repeat(4,1fr)}
.option{border:1px solid rgba(215,173,79,.20);background:#071007;border-radius:22px;padding:20px;text-align:left;color:var(--text);cursor:pointer}.option.selected{border-color:var(--gold);background:linear-gradient(145deg,rgba(215,173,79,.22),rgba(18,60,39,.38))}.option strong{display:block;font-size:20px;margin-bottom:8px}.option small{display:block;color:var(--muted);font-size:14px}
label{display:block;color:var(--gold2);font-size:12px;letter-spacing:.12em;text-transform:uppercase;font-weight:900}input{width:100%;margin-top:8px;padding:14px;border-radius:14px;border:1px solid rgba(215,173,79,.24);background:#071007;color:var(--text)}
.search-results{margin-top:10px;display:grid;gap:8px}.result{padding:14px;border-radius:16px;background:#071007;border:1px solid rgba(215,173,79,.18);cursor:pointer}.result.selected{border-color:var(--gold)}
.player-row{display:grid;grid-template-columns:1fr 120px;gap:12px;align-items:center;padding:12px;border-radius:18px;background:#071007;border:1px solid rgba(215,173,79,.18);margin-bottom:10px}
.actions{display:flex;justify-content:space-between;gap:12px;margin-top:24px}.rules{margin-top:18px;padding:18px;border-radius:20px;border:1px solid rgba(215,173,79,.18);background:rgba(255,255,255,.04)}
.round-top{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:18px}.round-top-title strong{display:block;font-size:18px}.round-top-title span{color:var(--muted)}.end-top-btn{white-space:nowrap}.confirm-box{position:fixed;inset:0;background:rgba(0,0,0,.72);display:grid;place-items:center;z-index:1000;padding:20px}.confirm-card{max-width:480px;width:100%;border:1px solid rgba(215,173,79,.35);background:linear-gradient(145deg,rgba(20,29,20,.98),rgba(7,11,7,.99));border-radius:28px;padding:28px;box-shadow:var(--shadow)}.live-layout{display:grid;grid-template-columns:.85fr 1.15fr;gap:20px}.hole-card{background:linear-gradient(145deg,rgba(215,173,79,.18),rgba(18,60,39,.34));border:1px solid rgba(215,173,79,.35);border-radius:30px;padding:26px}.hole-card h2{font-size:64px;margin:8px 0}.score-entry{display:grid;gap:14px;margin-top:18px}.score-input-big{font-size:44px;text-align:center;font-weight:900;padding:16px}.plusminus{display:grid;grid-template-columns:1fr 1fr;gap:12px}.pm{font-size:30px;padding:14px;border-radius:18px}.summary{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin-top:16px}.sum-card{padding:16px;border:1px solid rgba(215,173,79,.18);border-radius:18px;background:rgba(255,255,255,.04)}.sum-card span{display:block;color:var(--gold2);font-size:11px;text-transform:uppercase}.sum-card strong{display:block;font-size:28px;margin-top:4px}
.table-wrap{overflow:auto}.score-table{min-width:760px;width:100%;border-collapse:collapse}.score-table th,.score-table td{padding:9px;border:1px solid rgba(255,255,255,.08);text-align:center}.score-table th{color:var(--gold2);font-size:12px;text-transform:uppercase}.score-input{width:54px;padding:7px;text-align:center}.leader-list{display:grid;gap:10px}.leader-row{display:flex;justify-content:space-between;gap:12px;padding:13px 15px;border-radius:16px;border:1px solid rgba(215,173,79,.18);background:#071007}.leader-row:first-child{border-color:var(--gold);background:linear-gradient(145deg,rgba(215,173,79,.18),rgba(18,60,39,.28))}
.contest-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px;margin-top:18px}
.contest-card{border:1px solid rgba(215,173,79,.22);background:#071007;border-radius:22px;padding:20px}
.contest-card h3{margin-bottom:8px}
.contest-log{margin-top:14px;display:grid;gap:8px}
.log-row{display:flex;justify-content:space-between;gap:12px;padding:11px 12px;border:1px solid rgba(215,173,79,.14);border-radius:14px;background:rgba(255,255,255,.04)}
.final-card{border:1px solid rgba(215,173,79,.22);background:linear-gradient(145deg,rgba(215,173,79,.16),rgba(18,60,39,.32));border-radius:24px;padding:22px}
.save-profile{margin-top:20px;border:1px solid rgba(215,173,79,.28);border-radius:24px;padding:22px;background:#071007}
.end-round-banner{margin-top:18px;display:flex;justify-content:space-between;gap:12px;align-items:center;padding:16px;border:1px solid rgba(215,173,79,.28);border-radius:20px;background:rgba(215,173,79,.10)}.bottom-tabs{position:sticky;bottom:0;margin:24px -26px -30px;padding:12px 18px;background:rgba(3,5,3,.88);border-top:1px solid var(--line);display:grid;grid-template-columns:repeat(5,1fr);gap:8px}.tab{border:1px solid var(--line);background:#071007;color:var(--text);border-radius:14px;padding:12px 8px;font-weight:900;cursor:pointer}.tab.active{background:var(--gold);color:#061006}
@media(max-width:900px){.topbar{align-items:flex-start;flex-direction:column}.hero,.grid2,.grid3,.grid4,.live-layout,.summary,.contest-grid{grid-template-columns:1fr}.round-top{align-items:flex-start}.end-top-btn{padding:12px 14px}h2{font-size:38px}.hole-card h2{font-size:48px}.bottom-tabs{grid-template-columns:repeat(5,1fr);font-size:11px}}

.championship-panel{background:linear-gradient(145deg,rgba(11,15,11,.98),rgba(3,5,3,.99));}
.champ-header{position:relative;overflow:hidden;border:1px solid rgba(215,173,79,.32);background:radial-gradient(circle at 30% 0%,rgba(215,173,79,.26),transparent 36%),linear-gradient(145deg,rgba(14,48,31,.9),rgba(5,8,5,.98));border-radius:30px;padding:30px;margin-bottom:20px;text-align:center}
.champ-header:before{content:"";position:absolute;inset:10px;border:1px solid rgba(215,173,79,.16);border-radius:24px;pointer-events:none}
.champ-title{font-size:56px;line-height:.92;letter-spacing:.04em;text-transform:uppercase;margin:8px 0;color:var(--text)}
.champ-sub{color:var(--gold2);letter-spacing:.22em;text-transform:uppercase;font-weight:1000}
.live-badge{display:inline-block;padding:8px 14px;border-radius:999px;background:rgba(255,0,0,.18);border:1px solid rgba(255,120,120,.35);color:#ffd7d7;font-weight:1000;letter-spacing:.12em}
.champ-grid{display:grid;grid-template-columns:1fr .95fr;gap:18px}
.scoreboard{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.official-team{border:1px solid rgba(215,173,79,.28);background:#071007;border-radius:26px;padding:24px;text-align:center}
.official-team h3{font-size:22px;margin-bottom:6px}
.official-team strong{font-size:62px;display:block;color:var(--gold2);line-height:1}
.win-panel{border:1px solid rgba(215,173,79,.34);background:linear-gradient(145deg,rgba(215,173,79,.18),rgba(18,60,39,.32));border-radius:26px;padding:22px;margin-top:14px}
.win-big{font-size:64px;font-weight:1000;color:var(--gold2);line-height:1;margin:8px 0}
.momentum{height:18px;background:#061006;border:1px solid rgba(215,173,79,.24);border-radius:999px;overflow:hidden;margin:16px 0}
.momentum span{display:block;height:100%;background:linear-gradient(90deg,var(--gold2),var(--gold))}
.broadcast-card{border:1px solid rgba(215,173,79,.22);background:rgba(255,255,255,.04);border-radius:24px;padding:20px;margin-bottom:14px}
.start-time{display:inline-block;margin-top:8px;padding:10px 13px;border-radius:999px;background:rgba(215,173,79,.18);border:1px solid rgba(215,173,79,.42);color:var(--gold2);font-size:18px;font-weight:1000}
.live-feed{display:grid;gap:10px;margin-top:12px}
.feed-item{padding:12px 14px;border:1px solid rgba(215,173,79,.14);border-radius:16px;background:#071007}
.tour-tabs{display:grid;grid-template-columns:repeat(8,1fr);gap:8px;margin-top:22px}
.tour-tab{border:1px solid var(--line);background:#071007;color:var(--text);border-radius:14px;padding:12px 8px;font-weight:900;cursor:pointer}
.tour-tab.active{background:var(--gold);color:#061006}
.role-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.role-card{border:1px solid rgba(215,173,79,.22);background:#071007;border-radius:22px;padding:18px}
.lock-pill{display:inline-block;padding:7px 10px;border-radius:999px;background:rgba(215,173,79,.12);border:1px solid rgba(215,173,79,.30);color:var(--gold2);font-weight:900}
.timeline{display:grid;gap:10px}
.timeline-row{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:14px;border:1px solid rgba(215,173,79,.16);background:#071007;border-radius:16px}
@media(max-width:900px){.champ-grid,.scoreboard,.tour-tabs,.role-grid{grid-template-columns:1fr}.champ-title{font-size:38px}}


.trophy-mark{width:86px;height:86px;margin:0 auto 12px;border-radius:28px;display:grid;place-items:center;background:linear-gradient(145deg,var(--gold2),var(--gold));color:#061006;font-size:44px;font-weight:1000;box-shadow:0 20px 60px rgba(215,173,79,.25)}
.feature-round{border:1px solid rgba(215,173,79,.40);background:linear-gradient(145deg,rgba(215,173,79,.20),rgba(18,60,39,.36));border-radius:28px;padding:24px;margin-bottom:16px}
.feature-round h3{font-size:34px;margin:8px 0}
.format-pill{display:inline-block;margin:6px 6px 0 0;padding:8px 11px;border-radius:999px;background:rgba(215,173,79,.14);border:1px solid rgba(215,173,79,.32);color:var(--gold2);font-weight:900}
.stat-wall{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-top:16px}
.stat-box{border:1px solid rgba(215,173,79,.18);background:#071007;border-radius:20px;padding:18px}
.stat-box span{display:block;color:var(--gold2);font-size:11px;letter-spacing:.13em;text-transform:uppercase;font-weight:900}
.stat-box strong{display:block;font-size:28px;margin-top:6px}
.course-detail{display:none;margin-top:12px;border-top:1px solid rgba(255,255,255,.08);padding-top:14px}
.course-detail.open{display:block}
.mini-scorecard{width:100%;border-collapse:collapse;margin-top:10px}
.mini-scorecard th,.mini-scorecard td{border:1px solid rgba(255,255,255,.08);padding:7px;text-align:center;font-size:12px}
.mini-scorecard th{color:var(--gold2)}
.player-stat-card{border:1px solid rgba(215,173,79,.18);background:#071007;border-radius:20px;padding:16px}
.player-stat-card strong{font-size:18px}


.setup-progress{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:18px}
.setup-step{border:1px solid var(--line);border-radius:999px;padding:8px 11px;background:#071007;color:var(--muted);font-weight:900;font-size:12px;cursor:pointer}
.setup-step.active{background:var(--gold);color:#061006}
.setup-card{border:1px solid rgba(215,173,79,.22);background:#071007;border-radius:22px;padding:18px;margin-top:14px}
.photo-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:14px}
.photo-card{border:1px solid rgba(215,173,79,.18);border-radius:20px;background:#071007;min-height:110px;padding:16px;display:grid;place-items:center;text-align:center}
.official-team{position:relative;overflow:hidden}
.official-team:before{content:"";position:absolute;top:0;left:0;right:0;height:5px;background:linear-gradient(90deg,var(--gold2),var(--gold))}
@media(max-width:900px){.photo-grid{grid-template-columns:1fr}}

.team-assignment{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:14px}
.team-column{border:1px solid rgba(215,173,79,.22);background:#071007;border-radius:22px;padding:16px}
.assign-row{display:grid;grid-template-columns:1fr 120px;gap:10px;align-items:center;margin:8px 0;padding:10px;border:1px solid rgba(215,173,79,.12);border-radius:14px;background:rgba(255,255,255,.03)}
.choice-row{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin:14px 0}
.remove-btn{border:1px solid rgba(255,120,120,.30);background:rgba(255,80,80,.08);color:#ffd7d7;border-radius:12px;padding:10px;cursor:pointer;font-weight:900}
.vote-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.vote-card{border:1px solid rgba(215,173,79,.22);background:#071007;border-radius:20px;padding:16px}
@media(max-width:900px){.team-assignment,.choice-row,.vote-grid{grid-template-columns:1fr}}

.draft-board{display:grid;grid-template-columns:1fr 1fr 1fr;gap:14px;margin-top:16px}
.draft-pool,.draft-team{border:1px solid rgba(215,173,79,.22);background:#071007;border-radius:22px;padding:16px}
.draft-player{width:100%;margin:7px 0;padding:12px;border-radius:14px;border:1px solid rgba(215,173,79,.18);background:rgba(255,255,255,.04);color:var(--text);font-weight:900;cursor:pointer;text-align:left}
.draft-player:hover{border-color:var(--gold)}
.captain-tag{display:inline-block;margin-top:8px;padding:7px 10px;border-radius:999px;background:rgba(215,173,79,.14);border:1px solid rgba(215,173,79,.32);color:var(--gold2);font-weight:900}
@media(max-width:900px){.draft-board{grid-template-columns:1fr}}

.player-pill{display:inline-block;margin-top:10px;padding:9px 12px;border-radius:999px;background:rgba(215,173,79,.14);border:1px solid rgba(215,173,79,.32);color:var(--gold2);font-weight:900}

.clean-score-screen{max-width:640px;margin:0 auto;text-align:center;padding:4px 0 18px}
.clean-score-screen .hole-display{font-size:34px;font-weight:1000;color:var(--gold2);margin-bottom:6px}
.clean-score-screen .par-display{color:var(--text)!important;font-size:22px!important;font-weight:1000!important;margin-bottom:20px!important}
.clean-score-screen .now-scoring{font-size:12px;color:var(--gold2);letter-spacing:.20em;text-transform:uppercase;font-weight:1000;margin-bottom:8px}
.clean-score-screen .current-player-name{font-size:46px;line-height:1;font-weight:1000;color:var(--text);margin:0 0 18px;text-transform:uppercase}
.clean-score-screen label{max-width:300px;margin:0 auto}
.score-entry-row{display:grid;grid-template-columns:80px 1fr 80px;gap:12px;align-items:center;margin:18px 0}
.score-entry-row button{font-size:28px;padding:18px 0}
.scorecard-drawer{margin-top:18px;border:1px solid rgba(215,173,79,.22);background:#071007;border-radius:22px;padding:14px;overflow:auto;text-align:left}
.scorecard-drawer.hidden{display:none!important}
.side-scorecard-btn{position:fixed;right:12px;bottom:18px;z-index:20;border-radius:999px;padding:12px 14px}
.score-hole-nav{max-width:640px;margin:12px auto 0;display:grid;grid-template-columns:1fr 1fr;gap:10px}
.live-contest-grid{max-width:980px;margin:18px auto;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.live-contest-card{margin:0}
.live-contest-rows{display:grid;gap:10px;margin-top:12px}
.live-contest-row{display:grid;grid-template-columns:minmax(140px,1fr) 120px 120px;gap:10px;align-items:end;border:1px solid rgba(215,173,79,.14);border-radius:16px;background:rgba(255,255,255,.035);padding:10px}
.live-contest-row div strong{display:block}
.live-contest-row div small{display:block;color:var(--muted);margin-top:3px}
.live-contest-row label{margin:0}
.live-contest-row input{min-height:48px;font-size:18px}
.end-scorecard-bottom{max-width:640px;margin:18px auto 0}
.end-scorecard-bottom .btn{width:100%}
@media(max-width:1024px){[data-tournament-score-entry]{scroll-margin-top:88px}}
@media(max-width:700px){.clean-score-screen .current-player-name{font-size:38px}.score-entry-row{grid-template-columns:70px 1fr 70px}.side-scorecard-btn{right:10px;bottom:12px}}
@media(max-width:760px){.score-hole-nav,.live-contest-grid,.live-contest-row{grid-template-columns:1fr}.live-contest-row input{width:100%}}

.scoring-active #loginBtn{display:none!important}
.call-link{color:var(--gold2);font-weight:1000;text-decoration:none}.call-link:hover{text-decoration:underline}
.verified-badge{display:inline-block;margin-top:8px;padding:7px 10px;border-radius:999px;background:rgba(215,173,79,.14);border:1px solid rgba(215,173,79,.32);color:var(--gold2);font-weight:900;font-size:12px}

.par-display{color:var(--text)!important;font-size:22px!important;font-weight:1000!important;margin-bottom:20px!important}
.par-display strong{display:block;font-size:46px;line-height:1;color:var(--text);text-shadow:0 0 24px rgba(255,255,255,.18);margin-top:4px}
.tournament-return-btn{margin:0 auto 14px;max-width:640px;width:100%;display:block}

.app-active .topbar{display:none!important}
.join-code-box{max-width:520px;margin:0 auto;text-align:center}
.join-code-display{font-size:44px;font-weight:1000;letter-spacing:.18em;color:var(--gold2);padding:14px 16px;border:1px solid rgba(215,173,79,.28);border-radius:22px;background:rgba(215,173,79,.10);margin:14px 0}
.join-note{color:var(--muted);font-size:13px;line-height:1.45;margin-top:10px}

.cloud-status{display:inline-flex;align-items:center;gap:8px;margin-top:10px;padding:8px 11px;border-radius:999px;border:1px solid rgba(215,173,79,.30);background:rgba(215,173,79,.10);color:var(--gold2);font-weight:900;font-size:12px}
.cloud-code{font-size:44px;font-weight:1000;letter-spacing:.14em;color:var(--text);padding:14px 16px;border:1px solid rgba(215,173,79,.28);border-radius:22px;background:rgba(215,173,79,.10);margin:14px 0;text-align:center}

.match-share-banner{max-width:680px;margin:0 auto 14px;padding:14px;border:1px solid rgba(215,173,79,.42);border-radius:22px;background:linear-gradient(180deg,rgba(215,173,79,.18),rgba(11,34,16,.95));box-shadow:0 12px 32px rgba(0,0,0,.28);text-align:center}
.match-share-title{font-size:12px;letter-spacing:.18em;text-transform:uppercase;color:var(--gold2);font-weight:1000;margin-bottom:6px}
.match-share-code{font-size:42px;line-height:1;font-weight:1000;letter-spacing:.14em;color:var(--text);margin:8px 0 12px;text-shadow:0 0 22px rgba(255,255,255,.16)}
.match-share-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.match-share-actions .btn{width:100%;padding:12px 10px}
.match-share-link{font-size:12px;color:var(--muted);word-break:break-all;margin-top:8px}
.match-qr-wrap{display:none;margin-top:14px;padding:14px;border-radius:18px;background:#fff}
.match-qr-wrap img{width:190px;max-width:70%;height:auto;display:block;margin:0 auto}
.match-qr-wrap.show{display:block}
@media(max-width:700px){.match-share-code{font-size:34px}.match-share-actions{grid-template-columns:1fr}.match-share-banner{margin-bottom:10px;padding:12px}}

.course-call-row{max-width:680px;margin:0 auto 12px;display:grid;grid-template-columns:1fr 1fr;gap:10px}
.course-call-row a{display:block;text-align:center;text-decoration:none;border-radius:16px;padding:11px 10px;border:1px solid rgba(215,173,79,.28);background:rgba(215,173,79,.10);color:var(--text);font-weight:1000}
.course-call-row a span{display:block;font-size:11px;color:var(--muted);letter-spacing:.12em;text-transform:uppercase;margin-bottom:2px}
@media(max-width:700px){.course-call-row{grid-template-columns:1fr 1fr;gap:8px}.course-call-row a{padding:10px 8px;font-size:13px}}

.schedule-editor{margin-top:14px;padding:14px;border:1px solid rgba(215,173,79,.25);border-radius:18px;background:rgba(255,255,255,.04)}
.schedule-editor .row{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:10px}
.schedule-editor select,.schedule-editor input{width:100%}
.gallery-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(110px,1fr));gap:10px;margin-top:12px}
.gallery-grid img{width:100%;aspect-ratio:1/1;object-fit:cover;border-radius:14px;border:1px solid rgba(215,173,79,.25)}

.quick-player-row{grid-template-columns:1fr 110px 96px}
.remove-player-btn{border:1px solid rgba(255,120,120,.30);background:rgba(255,80,80,.08);color:#ffd7d7;border-radius:12px;padding:9px 10px;cursor:pointer;font-weight:900}
@media(max-width:700px){.quick-player-row{grid-template-columns:1fr}.remove-player-btn{width:100%}}


/* v5.2.0 Premium Home Page */
.home-v520{max-width:1280px}
.hero-premium{grid-template-columns:1.05fr .95fr;align-items:stretch}
.hero-copy-card{position:relative;overflow:hidden}
.hero-copy-card:before{content:"";position:absolute;inset:auto -120px -140px auto;width:340px;height:340px;background:radial-gradient(circle,rgba(215,173,79,.18),transparent 65%);pointer-events:none}
.hero-copy-card h2{font-size:64px;max-width:720px}
.home-hero-actions{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:28px}
.home-hero-actions .action{min-height:128px}
.home-hero-actions .action.primary{grid-column:span 2;min-height:150px}
.home-phone-stage{position:relative;border:1px solid rgba(215,173,79,.24);border-radius:30px;background:radial-gradient(circle at 50% 0%,rgba(215,173,79,.18),transparent 42%),linear-gradient(145deg,rgba(18,60,39,.62),rgba(7,11,7,.98));box-shadow:var(--shadow);min-height:620px;display:grid;place-items:center;padding:34px;overflow:hidden}
.home-phone-stage:before{content:"";position:absolute;inset:0;background:linear-gradient(rgba(255,255,255,.03),transparent),radial-gradient(circle at 80% 20%,rgba(215,173,79,.12),transparent 32%);pointer-events:none}
.hero-glow{position:absolute;width:330px;height:330px;border-radius:999px;background:rgba(215,173,79,.18);filter:blur(38px)}
.phone-mockup{position:relative;width:285px;max-width:90%;border:1px solid rgba(215,173,79,.46);border-radius:36px;padding:22px;background:linear-gradient(180deg,#102c1c,#061006);box-shadow:0 30px 90px rgba(0,0,0,.55);text-align:center}
.phone-top{font-size:11px;color:var(--gold2);letter-spacing:.24em;font-weight:1000;margin-bottom:18px}
.phone-hole{font-size:42px;font-weight:1000}
.phone-par{font-size:16px;color:var(--text);font-weight:1000;margin:8px 0 22px}.phone-par strong{display:block;font-size:48px}
.phone-player{font-size:34px;line-height:1;font-weight:1000;margin-bottom:18px}
.phone-score-row{display:grid;grid-template-columns:64px 1fr 64px;gap:10px;align-items:center;margin-bottom:14px}
.phone-score-row button,.phone-score-row div{border-radius:18px;border:1px solid rgba(215,173,79,.25);padding:14px;background:#071007;color:var(--text);font-size:28px;font-weight:1000}
.phone-save{border-radius:18px;padding:16px;background:linear-gradient(135deg,var(--gold2),var(--gold));color:#061006;font-weight:1000}
.hero-caption{position:relative;text-align:center;max-width:360px;margin-top:18px}.hero-caption strong{display:block;font-size:22px}.hero-caption span{display:block;color:var(--muted);margin-top:6px}
.home-section{margin-top:28px;border:1px solid var(--line);border-radius:30px;padding:30px;background:linear-gradient(145deg,rgba(20,29,20,.92),rgba(7,11,7,.96));box-shadow:var(--shadow)}
.section-heading{max-width:760px;margin-bottom:24px}.section-heading h2{font-size:48px}.section-heading p{font-size:17px}
.walkthrough-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.walk-card{position:relative;border:1px solid rgba(215,173,79,.2);border-radius:26px;background:#071007;padding:20px;overflow:hidden}
.walk-number{position:absolute;top:14px;right:16px;width:36px;height:36px;border-radius:999px;background:var(--gold);color:#061006;display:grid;place-items:center;font-weight:1000}
.walk-card h3{font-size:23px;margin-top:16px}
.mini-phone{height:220px;border:1px solid rgba(215,173,79,.34);border-radius:28px;background:linear-gradient(180deg,#123c27,#061006);display:grid;place-items:center;text-align:center;padding:18px}
.mini-hole{font-size:36px;font-weight:1000}.mini-par{font-size:20px;color:var(--gold2);font-weight:1000}.mini-name{color:var(--muted)}.mini-name strong{font-size:28px;color:var(--text)}
.mini-score-controls{display:grid;grid-template-columns:52px 1fr 52px;gap:10px;width:100%;align-items:center}.mini-score-controls button,.mini-score-controls strong{padding:12px;border-radius:16px;border:1px solid rgba(215,173,79,.28);background:#071007;color:var(--text);font-size:30px}.mini-save{margin-top:14px;width:100%;padding:14px;border-radius:16px;background:var(--gold);color:#061006;font-weight:1000}.mini-leader{font-size:22px;color:var(--muted)}.mini-leader strong{font-size:36px;color:var(--gold2)}
.qr-section{background:radial-gradient(circle at 20% 0%,rgba(215,173,79,.16),transparent 38%),linear-gradient(145deg,rgba(20,29,20,.92),rgba(7,11,7,.96))}
.qr-demo-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:20px;align-items:center}
.qr-card{border:1px solid rgba(215,173,79,.24);border-radius:28px;background:#071007;padding:26px;display:grid;place-items:center}
.qr-phone{width:280px;max-width:100%;border:1px solid rgba(215,173,79,.42);border-radius:34px;background:linear-gradient(180deg,#123c27,#061006);padding:22px;text-align:center}
.qr-title{color:var(--gold2);font-size:12px;font-weight:1000;letter-spacing:.18em;text-transform:uppercase;margin-bottom:14px}
.qr-code-box{margin:auto;width:170px;height:170px;background:#fff;border-radius:18px;padding:18px;display:grid;grid-template-columns:repeat(3,1fr);gap:8px}
.qr-code-box div{background:#071007;border-radius:6px}.qr-code-box div:nth-child(2),.qr-code-box div:nth-child(4),.qr-code-box div:nth-child(8){background:#d7ad4f}
.qr-code-label{font-size:36px;font-weight:1000;letter-spacing:.12em;margin-top:14px}
.qr-steps{display:grid;gap:12px}.qr-step{display:grid;grid-template-columns:52px 1fr;gap:14px;align-items:center;border:1px solid rgba(215,173,79,.2);border-radius:20px;padding:14px;background:rgba(255,255,255,.04)}.qr-step strong{width:44px;height:44px;border-radius:999px;background:var(--gold);color:#061006;display:grid;place-items:center;font-size:22px}.qr-step span{font-size:22px;font-weight:900;color:var(--text)}
.feature-strip{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-top:28px}.feature-strip div{border:1px solid rgba(215,173,79,.22);border-radius:22px;background:#071007;padding:18px}.feature-strip strong{display:block;font-size:19px}.feature-strip span{display:block;color:var(--muted);margin-top:6px}
@media(max-width:950px){.hero-premium,.qr-demo-grid,.walkthrough-grid,.feature-strip{grid-template-columns:1fr}.hero-copy-card h2{font-size:44px}.home-hero-actions{grid-template-columns:1fr}.home-hero-actions .action.primary{grid-column:auto}.home-phone-stage{min-height:520px}.section-heading h2{font-size:36px}}


/* v5.3.0 Clubhouse and Join QR polish */
.join-divider{margin:18px 0;color:var(--muted);font-weight:1000;letter-spacing:.18em}
.code-prefix-row{display:grid;grid-template-columns:82px 1fr;gap:10px;align-items:center;margin-top:8px}
.code-prefix-row span{height:54px;border-radius:14px;border:1px solid rgba(215,173,79,.24);background:rgba(215,173,79,.12);display:grid;place-items:center;color:var(--gold2);font-weight:1000;font-size:20px}
.code-prefix-row input{margin-top:0;font-size:24px;font-weight:1000;letter-spacing:.18em;text-align:center}
.clubhouse-status{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:16px 0}
.clubhouse-status div{border:1px solid rgba(215,173,79,.22);border-radius:20px;background:#071007;padding:16px}
.clubhouse-status span{display:block;color:var(--gold2);font-size:11px;letter-spacing:.13em;text-transform:uppercase;font-weight:900}
.clubhouse-status strong{display:block;font-size:24px;margin-top:6px}
.clubhouse-tabs{display:flex;gap:10px;flex-wrap:wrap;margin:14px 0}
.clubhouse-scorecards-tab{display:grid;gap:14px;margin-top:14px}
.clubhouse-scorecard-card .captain-scorecard-wrap{margin-top:12px}
.clubhouse-post{display:grid;grid-template-columns:1fr 120px;gap:10px;margin:16px 0}
.clubhouse-post input{margin-top:0}
.clubhouse-actions{margin-bottom:16px}
.clubhouse-feed{display:grid;gap:12px;margin-top:16px}
.clubhouse-item{display:grid;grid-template-columns:54px 1fr;gap:14px;border:1px solid rgba(215,173,79,.2);border-radius:22px;background:#071007;padding:16px}
.clubhouse-icon{width:48px;height:48px;border-radius:999px;background:rgba(215,173,79,.16);border:1px solid rgba(215,173,79,.32);display:grid;place-items:center;font-size:24px}
.clubhouse-title{display:flex;justify-content:space-between;gap:10px;color:var(--text)}
.clubhouse-title span{color:var(--muted);font-size:12px}
.clubhouse-empty{border:1px dashed rgba(215,173,79,.28);border-radius:22px;padding:24px;text-align:center;color:var(--muted)}
.draft-player-row{border:1px solid rgba(215,173,79,.18);border-radius:16px;background:rgba(255,255,255,.04);padding:12px;margin:8px 0}
.draft-player-row strong{display:block;margin-bottom:10px}
.draft-player-row div{display:grid;grid-template-columns:1fr 1fr;gap:8px}
@media(max-width:800px){.clubhouse-status,.clubhouse-post,.draft-player-row div{grid-template-columns:1fr}.clubhouse-item{grid-template-columns:1fr}.clubhouse-actions{grid-template-columns:1fr}}

/* v5.4.0 Captain/Admin/Account polish */
.auth-tabs{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:22px 0}
.auth-tab{border:1px solid var(--line);background:#071007;color:var(--text);border-radius:14px;padding:12px 8px;font-weight:900;cursor:pointer}
.auth-tab.active{background:var(--gold);color:#061006}
.auth-view.hidden{display:none!important}
.account-card{border:1px solid rgba(215,173,79,.22);background:#071007;border-radius:18px;padding:14px}
.account-good{color:var(--gold2);font-weight:1000}.account-warn{color:#ffd7d7;font-weight:1000}
.captain-toggle{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:16px 0}
.captain-score-list{display:grid;gap:12px;margin-top:16px}
.captain-score-list label{border:1px solid rgba(215,173,79,.18);border-radius:18px;background:#071007;padding:14px}
.admin-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}
@media(max-width:800px){.auth-tabs,.captain-toggle,.admin-grid{grid-template-columns:1fr}}

/* v5.4.1 bug fix polish */
.password-row{display:grid;grid-template-columns:1fr 78px;gap:8px;align-items:center;margin-top:8px}
.password-row input{margin-top:0}
.password-row .btn{padding:12px 8px}
.quick-player-row{grid-template-columns:1fr 120px 96px}
.quick-player-row select{width:100%;margin-top:0;padding:14px;border-radius:14px;border:1px solid rgba(215,173,79,.24);background:#071007;color:var(--text)}
@media(max-width:700px){.password-row,.quick-player-row{grid-template-columns:1fr}}

/* v5.4.2 flow fixes */
.team-name-edit{margin:12px 0 16px}
.password-row{display:grid;grid-template-columns:1fr 78px;gap:8px;align-items:center;margin-top:8px}
.password-row input{margin-top:0}.password-row .btn{padding:12px 8px}
.quick-player-row{grid-template-columns:1fr 130px 96px}.quick-player-row select{width:100%;margin-top:0;padding:14px;border-radius:14px;border:1px solid rgba(215,173,79,.24);background:#071007;color:var(--text)}
.captain-cart-card{border:1px solid rgba(215,173,79,.25);border-radius:28px;background:#071007;padding:22px;text-align:center;margin-top:16px}
.captain-player-name{font-size:36px;font-weight:1000;margin:18px 0}
.score-big-row{display:grid;grid-template-columns:80px 1fr 80px;gap:10px;align-items:center}
.score-big-row button,.score-big-row strong{border:1px solid rgba(215,173,79,.25);border-radius:20px;padding:18px;background:#102c1c;color:var(--text);font-size:34px;font-weight:1000}
@media(max-width:700px){.password-row,.quick-player-row{grid-template-columns:1fr}.score-big-row{grid-template-columns:64px 1fr 64px}}

/* v5.4.7 QR cleanup failsafe */
.match-share-banner .match-share-link,.match-share-banner .join-note{display:none!important}
.match-qr-wrap{overflow:hidden}


/* v5.4.8 dashboard/admin/profile refinements */
.ggc-toast{position:fixed;left:50%;bottom:22px;transform:translate(-50%,24px);max-width:min(92vw,520px);padding:12px 16px;border:1px solid rgba(215,173,79,.42);border-radius:16px;background:rgba(5,12,7,.96);color:var(--text);box-shadow:0 16px 38px rgba(0,0,0,.38);z-index:9999;opacity:0;pointer-events:none;transition:opacity .18s ease,transform .18s ease;font-weight:800;text-align:center}
.ggc-toast.show{opacity:1;transform:translate(-50%,0)}
.lock-banner{border:1px solid rgba(215,173,79,.36);background:rgba(215,173,79,.14);border-radius:18px;padding:12px 14px;margin:12px 0;color:var(--gold2);font-weight:900;text-align:center}
.lock-pill{display:inline-block;margin-left:8px;padding:3px 8px;border-radius:999px;border:1px solid rgba(215,173,79,.34);font-size:11px;color:var(--gold2)}
.events-panel .timeline{margin-top:12px}.events-panel .timeline-row span{font-size:12px;color:var(--muted)}
.format-desc{display:grid;gap:4px;padding:10px 0;border-bottom:1px solid rgba(255,255,255,.08)}.format-desc:last-child{border-bottom:0}.format-desc strong{color:var(--gold2)}.format-desc span{font-size:13px;color:var(--muted);line-height:1.35}
.profile-stats-card{margin-top:14px}.stat-mini-grid{gap:10px}.stat-mini-grid div{border:1px solid rgba(215,173,79,.16);border-radius:14px;padding:10px;background:#071007}.stat-mini-grid strong{display:block;font-size:24px;color:var(--gold2)}.stat-mini-grid span{font-size:12px;color:var(--muted)}
.game-entry-grid{margin-top:18px}.mini-log{margin-top:14px}.lock-list .timeline-row{grid-template-columns:1fr auto auto;align-items:center;gap:10px}.lock-list .btn{padding:9px 12px}
.captain-scorecard-drawer{display:none;margin-top:16px}.captain-scorecard-drawer.open{display:block}.captain-scorecard-wrap{overflow:auto;border:1px solid rgba(215,173,79,.22);border-radius:18px;background:#071007}.captain-scorecard{width:100%;border-collapse:collapse;min-width:980px}.captain-scorecard th,.captain-scorecard td{border-bottom:1px solid rgba(255,255,255,.08);padding:8px;text-align:center}.captain-scorecard th:first-child{text-align:left;position:sticky;left:0;background:#071007;z-index:1}.captain-scorecard small{display:block;color:var(--muted);font-size:10px}.captain-scorecard input{width:56px;padding:8px;text-align:center;border-radius:10px}
button[disabled],input[disabled],select[disabled]{opacity:.55;cursor:not-allowed}
@media(max-width:700px){.lock-list .timeline-row{grid-template-columns:1fr}.captain-scorecard{min-width:760px}.ggc-toast{bottom:16px}}


/* v5.4.9 tournament join/setup polish */
.join-code-box .code-prefix-row{display:grid;grid-template-columns:auto 1fr;align-items:center;border:1px solid rgba(215,173,79,.24);border-radius:16px;background:#071007;overflow:hidden;margin-top:8px}
.join-code-box .code-prefix-row span{padding:0 14px;color:var(--gold2);font-weight:1000;letter-spacing:.08em;border-right:1px solid rgba(215,173,79,.18)}
.join-code-box .code-prefix-row input{border:0;background:transparent;margin:0;font-size:26px;font-weight:1000;letter-spacing:.16em;text-transform:uppercase}


/* v5.5.0 requested page polish */
.leaderboard-plus{display:grid;gap:16px;margin:12px 0 18px}.pulse-grid{align-items:stretch}.pulse-card{border:1px solid rgba(215,173,79,.2);border-radius:18px;background:#071007;padding:14px}.pulse-card span{display:block;color:var(--muted);font-size:12px;text-transform:uppercase;letter-spacing:.08em;font-weight:900}.pulse-card strong{display:block;color:var(--gold2);font-size:22px;line-height:1.1;margin-top:4px}.pulse-card small{color:var(--muted)}.leaderboard-detail-grid{gap:14px}.profile-photo-card{display:flex;align-items:center;gap:12px;border:1px solid rgba(215,173,79,.18);border-radius:18px;background:#071007;padding:12px;margin:8px 0 12px}.profile-photo-card img,.profile-photo-placeholder,.profile-summary-photo{width:62px;height:62px;border-radius:50%;object-fit:cover;border:1px solid rgba(215,173,79,.35);background:rgba(215,173,79,.14);display:grid;place-items:center;color:var(--gold2);font-weight:1000}.profile-summary-row{display:grid;grid-template-columns:auto 1fr;gap:12px;align-items:center}.profile-summary-photo.placeholder{display:grid;place-items:center}.favorite-course-list{display:flex;gap:8px;flex-wrap:wrap}.favorite-course-list span{border:1px solid rgba(215,173,79,.24);border-radius:999px;padding:7px 10px;background:#071007;color:var(--gold2);font-weight:900;font-size:12px}
@media(max-width:700px){.profile-summary-row{grid-template-columns:1fr}.profile-summary-photo{width:72px;height:72px}}


/* v5.5.1 admin and profile edits */
.stat-edit-grid input{min-width:0}.tour-tabs .tour-tab[data-tour-tab="setup"]{display:none}.admin-grid .broadcast-card .btn[disabled]{opacity:.5}.captain-tag{white-space:nowrap}.remove-btn[data-remove-side-bet]{margin-left:10px}.round-top .actions{display:flex;gap:10px;flex-wrap:wrap;justify-content:flex-end}
@media(max-width:700px){.round-top .actions{justify-content:flex-start}.stat-edit-grid{grid-template-columns:1fr}}


/* v5.5.2 admin code and finish controls */
.points-input-wrap{display:grid;grid-template-columns:1fr auto;align-items:center;gap:8px}.points-input-wrap span{color:var(--gold2);font-weight:1000;text-transform:uppercase;font-size:12px;letter-spacing:.08em}.admin-grid .setup-card label input[type="password"],.vote-grid input[type="password"]{letter-spacing:.14em}.round-top .actions .btn{white-space:nowrap}

/* v5.5.3 profile and captain scoring fixes */
.captain-cart-card .join-note{margin-bottom:12px}.captain-toggle+.captain-cart-card{margin-top:14px}.profile-photo-card span{line-height:1.25}

/* v5.5.4 setup captain fixes */
.setup-card .team-assignment .assign-row strong{overflow-wrap:anywhere}.setup-card select option{color:#061006}

/* v5.5.5 setup lock and captain click fixes */
.round-top .actions{position:relative;z-index:3}.captain-top-btn{pointer-events:auto}.tour-tab[data-tour-tab="captain"]{pointer-events:auto}

/* v5.5.6 dashboard zero score fixes */

/* v5.5.7 captain pages */
.captain-page-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:16px}.captain-team-card{border:1px solid rgba(215,173,79,.24);background:#071007;border-radius:18px;padding:18px}.captain-team-card h3{font-size:24px;margin:4px 0 14px}.captain-team-header{display:grid;gap:4px;border:1px solid rgba(215,173,79,.22);background:#071007;border-radius:16px;padding:14px;margin:12px 0}.captain-team-header strong{color:var(--gold2);font-size:18px}.captain-team-header span{color:var(--muted)}@media(max-width:800px){.captain-page-grid{grid-template-columns:1fr}}


/* v5.6.9 captain round close and team points */
.captain-submit-panel{display:grid;grid-template-columns:1fr auto;gap:12px;align-items:center;border:1px solid rgba(215,173,79,.24);border-radius:18px;background:#071007;padding:14px;margin-top:14px}.captain-submit-panel strong{display:block;color:var(--gold2);font-size:22px}.captain-submit-panel span{display:block;color:var(--muted);font-size:12px;text-transform:uppercase;font-weight:900;letter-spacing:.08em}.round-submit-grid{display:grid;gap:8px;margin:12px 0}.round-submit-row{display:flex;justify-content:space-between;gap:10px;align-items:center;border:1px solid rgba(215,173,79,.18);border-radius:14px;background:#071007;padding:10px 12px}.round-submit-row.ready{border-color:rgba(86,196,122,.45);background:rgba(86,196,122,.1)}.round-submit-row.waiting span{color:var(--muted)}.round-submit-row.ready span{color:#7ee19b;font-weight:900}.round-submit-grid .small{margin:2px 0 0;color:var(--muted);font-size:12px;line-height:1.35}
@media(max-width:700px){.captain-submit-panel{grid-template-columns:1fr}.captain-submit-panel .btn{width:100%}.round-submit-row{align-items:flex-start;flex-direction:column}}


/* v5.6.9 tournament flow controls */
.tour-tabs-top{position:sticky;top:0;z-index:8;margin:12px 0 18px;background:rgba(5,12,7,.94);backdrop-filter:blur(10px);border:1px solid rgba(215,173,79,.16);border-radius:18px;padding:8px}.setup-player-list{display:grid;gap:10px}.setup-player-row{display:grid;grid-template-columns:1fr auto;gap:10px;align-items:end}.setup-player-row label{margin:0}.admin-game-grid,.clubhouse-results-grid,.clubhouse-split{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.clubhouse-results-grid{grid-template-columns:repeat(3,minmax(0,1fr));margin:16px 0}.admin-game-card .row{grid-template-columns:120px 1fr}.change-log-feed{max-height:520px;overflow:auto}.clubhouse-split .broadcast-card{align-self:start}
@media(max-width:900px){.admin-game-grid,.clubhouse-results-grid,.clubhouse-split{grid-template-columns:1fr}.setup-player-row{grid-template-columns:1fr}.tour-tabs-top{top:0;border-radius:14px}.admin-game-card .row{grid-template-columns:1fr}}


/* v5.6.9 team setup mobile menu */
.tour-menu-btn{display:none;width:100%;margin:10px 0}.setup-team-name-grid{margin-top:12px}.team-assignment-dynamic{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:12px}.scorecard-log-row span{line-height:1.45}
@media(max-width:700px){.tour-menu-btn{display:block}.tour-tabs-top{display:none;position:relative;top:auto;margin:8px 0 16px;grid-template-columns:1fr}.tour-menu-open .tour-tabs-top{display:grid}.tour-tabs-top .tour-tab{width:100%;justify-content:center}.round-top{gap:10px}.round-top .actions{width:100%}.round-top .actions .btn{flex:1}.team-assignment-dynamic{grid-template-columns:1fr}}

.invite-ready-banner{display:inline-flex;align-items:center;gap:10px;margin:0 0 8px;padding:8px 10px;border:1px solid rgba(122,240,168,.32);border-radius:10px;background:rgba(122,240,168,.12);color:#f5fff6;font-size:.88rem;line-height:1.25}
.invite-ready-banner strong{font-size:.9rem}
.invite-ready-banner span{opacity:.86}
.invite-copy-banner{position:fixed;left:50%;top:18px;z-index:9999;transform:translate(-50%,-140%);display:flex;align-items:center;gap:12px;max-width:min(92vw,520px);padding:12px 16px;border:1px solid rgba(122,240,168,.4);border-radius:14px;background:rgba(8,28,18,.96);color:#fff;box-shadow:0 18px 50px rgba(0,0,0,.32);opacity:0;transition:transform .22s ease,opacity .22s ease}
.invite-copy-banner.show{transform:translate(-50%,0);opacity:1}
.invite-copy-banner strong{font-size:.94rem}
.invite-copy-banner span{font-size:.86rem;color:rgba(255,255,255,.74)}
.match-qr-wrap .qr-code-fallback{display:none}
.match-qr-wrap.qr-failed .qr-code-fallback{display:flex}
.qr-code-fallback{align-items:center;justify-content:center;margin:auto;width:190px;height:190px;padding:10px;background:#fff;border-radius:10px}
.local-qr-grid{display:grid;grid-template-columns:repeat(21,1fr);grid-template-rows:repeat(21,1fr);width:170px;height:170px;gap:1px;background:#fff}
.local-qr-grid i{display:block;background:#fff}
.local-qr-grid i.on{background:#101010}
@media(max-width:700px){.invite-copy-banner{top:12px}.invite-ready-banner{width:100%;justify-content:center;flex-wrap:wrap;text-align:center}}

.top-next-actions{justify-content:flex-end;margin:0 0 14px}
.top-next-actions .btn{min-width:140px}
.score-display-wrap{max-width:300px;margin:0 auto;text-align:left;color:var(--gold2);font-size:12px;letter-spacing:.12em;text-transform:uppercase;font-weight:900}
.score-value-display{margin-top:8px;width:100%;border:1px solid rgba(215,173,79,.24);border-radius:14px;background:#071007;color:var(--text);user-select:none;touch-action:manipulation}
@media(max-width:700px){.top-next-actions{position:sticky;top:8px;z-index:15}.top-next-actions .btn{width:100%}}

/* v5.6.9 fullscreen QR */
body.qr-open{overflow:hidden}
.match-qr-wrap.show{position:fixed;inset:0;z-index:10000;display:grid!important;place-items:center;margin:0;padding:52px 18px 32px;border-radius:0;background:rgba(0,0,0,.94);cursor:pointer;overflow:auto}
.match-qr-wrap.show:before{content:"Tap anywhere to close";position:fixed;top:14px;left:50%;transform:translateX(-50%);z-index:10001;padding:8px 12px;border:1px solid rgba(215,173,79,.38);border-radius:999px;background:rgba(7,16,7,.92);color:#f7e5aa;font-size:12px;font-weight:1000;letter-spacing:.12em;text-transform:uppercase;white-space:nowrap}
.match-qr-wrap.show img{width:min(86vw,78vh,620px);max-width:620px;height:auto;padding:clamp(10px,2.5vw,22px);border-radius:20px;background:#fff;box-shadow:0 24px 80px rgba(0,0,0,.55)}
.match-qr-wrap.show.qr-failed .qr-code-fallback{display:flex;width:min(86vw,78vh,620px);height:min(86vw,78vh,620px);max-width:620px;max-height:620px;padding:clamp(12px,3vw,28px);border-radius:20px;box-shadow:0 24px 80px rgba(0,0,0,.55)}
.match-qr-wrap.show .local-qr-grid{width:100%;height:100%}
@media(max-width:700px){.match-qr-wrap.show{padding:54px 12px 24px}.match-qr-wrap.show img,.match-qr-wrap.show.qr-failed .qr-code-fallback{width:min(92vw,76vh);height:auto}.match-qr-wrap.show.qr-failed .qr-code-fallback{height:min(92vw,76vh)}}

/* v5.6.9 2v2 scramble matchups */
.scramble-matchup-setup{margin-top:14px;padding:14px;border:1px solid rgba(215,173,79,.24);border-radius:18px;background:rgba(255,255,255,.04)}
.scramble-matchup-card{border-color:rgba(215,173,79,.28)}
.scramble-matchup-card h4{margin:0 0 12px;font-size:20px}
.matchup-line{padding:9px 10px;border:1px solid rgba(215,173,79,.16);border-radius:14px;background:#071007}
.matchup-vs{text-align:center;color:var(--gold2);font-weight:1000;margin:8px 0;text-transform:uppercase}
.matchup-warning{margin:10px 0;padding:10px 12px;border:1px solid rgba(255,204,102,.42);border-radius:14px;background:rgba(255,204,102,.12);color:#ffe2a0;font-weight:900}
.matchup-actions{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:12px}
.matchup-summary-row{margin-left:18px}
@media(max-width:800px){.matchup-actions{grid-template-columns:1fr}.matchup-summary-row{margin-left:0}}

/* v5.7.0 team scoring and tournament winner */
.winner-banner{margin:0 0 16px;padding:18px;border:1px solid rgba(122,240,168,.42);border-radius:18px;background:linear-gradient(135deg,rgba(16,67,38,.92),rgba(7,16,7,.96));box-shadow:0 18px 48px rgba(0,0,0,.22)}
.winner-banner h2{margin:4px 0 0;font-size:clamp(26px,4vw,42px);line-height:1.05;color:#fff}
.admin-round-score-editor{display:grid;gap:14px}
.admin-round-score-editor>.broadcast-card{overflow:hidden}
.admin-round-score-editor .captain-scorecard-wrap{margin:12px 0}

/* v5.7.1 stabilization */
.admin-hole-correction{margin-bottom:14px}
.captain-score-entry-row{justify-content:center}

/* v5.7.2 stabilization polish */
.score-invite-details{max-width:640px;margin:10px auto 16px;border:1px solid rgba(215,173,79,.24);border-radius:16px;background:#071007;overflow:hidden}
.score-invite-details summary{cursor:pointer;list-style:none;padding:12px 14px;color:var(--gold2);font-weight:1000;text-align:center;text-transform:uppercase;letter-spacing:.12em;font-size:12px}
.score-invite-details summary::-webkit-details-marker{display:none}
.score-invite-details[open] summary{border-bottom:1px solid rgba(215,173,79,.16)}
.score-invite-details .match-share-banner{margin:12px;border-radius:14px;box-shadow:none}
.clean-score-screen .hole-display{font-size:42px;text-shadow:0 0 22px rgba(215,173,79,.22)}
.clean-score-screen .current-player-name{font-size:clamp(40px,8vw,58px)}
.score-value-display{font-size:56px}
@media(max-width:700px){.clean-score-screen{padding-top:0}.clean-score-screen .hole-display{font-size:40px}.par-display strong{font-size:58px}.score-value-display{font-size:60px}.score-entry-row button{font-size:32px;padding:20px 0}}
.admin-subtabs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:16px 0 18px}
.admin-subtab{border:1px solid var(--line);border-radius:12px;background:#071007;color:var(--text);padding:11px 8px;font-weight:900;cursor:pointer}
.admin-subtab.active{background:var(--gold);color:#061006}
.admin-tab-body{display:block}
.admin-entry-row,.setup-contest-row{display:grid;grid-template-columns:minmax(160px,1fr) 110px minmax(150px,1fr) auto;gap:10px;align-items:end;border:1px solid rgba(215,173,79,.16);border-radius:14px;background:#071007;padding:10px;margin-top:10px}
.setup-contest-row{grid-template-columns:1fr 110px auto}
.admin-entry-row strong,.admin-entry-row span{display:block}.admin-entry-row span{color:var(--muted);font-size:12px;margin-top:4px}
.admin-entry-actions{display:flex;gap:8px;align-items:center}
@media(max-width:900px){.admin-subtabs{grid-template-columns:1fr 1fr}.admin-entry-row,.setup-contest-row{grid-template-columns:1fr}.admin-entry-actions{width:100%;display:grid;grid-template-columns:1fr 1fr}.admin-entry-actions .btn,.admin-entry-actions .remove-btn{width:100%}}

/* Admin cleanup */
.admin-game-card .contest-log.mini-log{display:block;margin-top:12px;padding:0;background:transparent;border:0}
.admin-game-card .admin-entry-row{grid-template-columns:minmax(180px,1fr) 96px minmax(160px,1fr) auto;margin:10px 0 0;background:rgba(255,255,255,.035);box-shadow:none}
.admin-game-card .admin-entry-row label{margin:0}
.admin-game-card .admin-entry-row input{margin-top:6px}
.admin-game-card .log-row{background:rgba(255,255,255,.035)}
.admin-tab-body .actions{align-items:center;flex-wrap:wrap}
.admin-round-contest-settings{display:grid;gap:12px;margin-bottom:14px}
.round-contest-card{border:1px solid rgba(215,173,79,.16);border-radius:14px;background:rgba(255,255,255,.035);padding:12px}
.round-contest-card small{display:block;color:var(--muted);margin-top:4px}
.round-contest-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;align-items:end;margin-top:12px}
.toggle-row{display:flex;align-items:center;gap:10px;min-height:48px;margin:0}
.toggle-row input{width:auto;min-height:auto;margin:0}
.admin-game-collapse{padding:0;overflow:hidden}
.admin-game-collapse summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;gap:14px;align-items:center;padding:16px;border-bottom:1px solid rgba(215,173,79,.12)}
.admin-game-collapse summary::-webkit-details-marker{display:none}
.admin-game-collapse summary small{display:block;margin-top:4px;color:var(--muted)}
.admin-game-collapse>*:not(summary){margin-left:16px;margin-right:16px}
.admin-game-collapse .actions{margin:12px 16px 16px}
.admin-game-edit-row{display:grid;grid-template-columns:minmax(120px,1fr) minmax(120px,1fr) auto;gap:10px;align-items:end;margin-top:10px}
.matchup-scorecard-details{display:grid;gap:10px;margin:12px 0}
.matchup-scorecard-details details{border:1px solid rgba(215,173,79,.16);border-radius:12px;padding:10px;background:rgba(255,255,255,.03)}
.matchup-scorecard-details summary{cursor:pointer;font-weight:800}
.clubhouse-post{display:grid;grid-template-columns:minmax(140px,180px) 1fr auto;gap:10px;align-items:center}
@media(max-width:900px){.admin-game-card .admin-entry-row{grid-template-columns:1fr}}
@media(max-width:900px){.admin-game-edit-row,.clubhouse-post,.round-contest-grid{grid-template-columns:1fr}}
.dashboard-current-score{border:1px solid rgba(215,173,79,.34);background:linear-gradient(145deg,rgba(215,173,79,.16),rgba(18,60,39,.28));border-radius:18px;padding:18px;margin:16px 0}
.dashboard-current-score h2{margin:4px 0 10px;font-size:clamp(26px,4vw,42px);letter-spacing:0}
.dash-score-meta{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:12px}
.dash-score-meta span,.status-pill{border:1px solid rgba(215,173,79,.22);background:rgba(0,0,0,.18);border-radius:999px;padding:6px 10px;color:#f6e6ba;font-size:12px;font-weight:800}
.status-pill.muted{color:var(--muted);background:transparent}
.dash-score-list{display:grid;gap:8px}
.dash-score-row{display:grid;grid-template-columns:minmax(130px,1fr) minmax(160px,2fr) auto;gap:10px;align-items:center;border:1px solid rgba(215,173,79,.14);border-radius:12px;background:rgba(5,16,8,.62);padding:10px}
.compact-events{padding:18px}
.dashboard-event-section{margin-top:16px}
.dashboard-event-section h3,.dashboard-feed h3{font-size:18px;margin:0 0 10px}
.dashboard-card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.dash-compact-card{border:1px solid rgba(215,173,79,.2);background:#071007;border-radius:14px;overflow:hidden}
.dash-compact-card summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;gap:12px;align-items:center;padding:12px}
.dash-compact-card summary::-webkit-details-marker{display:none}
.dash-compact-card summary strong{display:block;font-size:15px}
.dash-compact-card summary small{display:block;margin-top:3px;color:var(--muted);font-size:12px}
.dash-card-details{border-top:1px solid rgba(215,173,79,.12);padding:12px}
.dash-card-details p{margin:0 0 8px;color:var(--muted)}
.dashboard-list-grid{grid-template-columns:1fr}
.dash-list-card{display:grid;grid-template-columns:minmax(180px,1fr) auto;gap:10px;align-items:center;padding:8px 10px}
.dash-list-card .dash-list-main strong{display:block;font-size:14px}
.dash-list-card .dash-list-main small{display:block;margin-top:2px;color:var(--muted);font-size:12px}
.dash-list-card .dash-card-details{border-top:0;padding:0;display:flex;gap:8px;align-items:center;justify-content:flex-end}
.dash-list-card .dash-card-details p{margin:0;font-size:12px}
.dash-list-card .actions{margin:0}
.dash-list-card .btn{padding:8px 10px}
.dash-empty{border:1px dashed rgba(215,173,79,.2);border-radius:12px;padding:12px;color:var(--muted);background:rgba(255,255,255,.025)}
.dashboard-points-card{margin-top:14px}
.dashboard-point-list,.clubhouse-checklist-list{display:grid;gap:8px;margin-top:12px}
.dashboard-point-row,.clubhouse-check-row{display:grid;grid-template-columns:1fr auto;gap:10px;align-items:center;border:1px solid rgba(215,173,79,.14);border-radius:12px;background:rgba(255,255,255,.035);padding:10px}
.dashboard-point-row small,.clubhouse-check-row small{display:block;color:var(--muted);margin-top:3px}
.dashboard-point-row span{font-weight:900;color:#f6e6ba;white-space:nowrap}
.clubhouse-checklist{margin:16px 0}
.clubhouse-check-row{grid-template-columns:32px 1fr}
.clubhouse-check-row>span{font-size:20px;font-weight:1000;color:var(--gold2);text-align:center}
.clubhouse-check-row.pending>span{color:var(--muted)}
.dashboard-feed{border:1px solid rgba(215,173,79,.18);border-radius:16px;background:rgba(5,16,8,.58);padding:14px;margin-top:16px}
.feed-line{display:grid;grid-template-columns:64px minmax(120px,.8fr) 1fr;gap:10px;align-items:center;padding:8px 0;border-top:1px solid rgba(215,173,79,.1)}
.feed-line:first-of-type{border-top:0}
.feed-line span{color:var(--muted);font-size:12px}
.feed-line strong{font-size:13px}
.feed-line em{font-style:normal;color:var(--muted);font-size:13px}
.dashboard-round-view{margin:16px 0}
.admin-add-game-grid{display:grid;grid-template-columns:minmax(180px,1fr) 140px 140px auto;gap:10px;align-items:end}
@media(max-width:1100px){.dashboard-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-add-game-grid{grid-template-columns:1fr 1fr}}
@media(max-width:760px){.dashboard-card-grid,.dash-score-row,.feed-line,.admin-add-game-grid,.dash-list-card,.dashboard-point-row{grid-template-columns:1fr}.dash-score-row .btn,.dash-list-card .btn{width:100%}.dash-list-card .dash-card-details{align-items:stretch;flex-direction:column}.dashboard-point-row span{white-space:normal}}
