:root{--primary:#07b7f7;--secondary:#075e82;--red:#b3261e;--bg:#eef4f8;--surface:#fff;--surface-alt:#e6eff5;--text:#10232d;--muted:#4a6170;--outline:#d3e0e8;--on-primary:#fff;--radius:14px;--shadow:0 1px 2px #10232d0d, 0 6px 20px #10232d0f;--shadow-hover:0 2px 4px #10232d14, 0 10px 28px #10232d1f;--primary-text:#06709c;--header-to:#3cc5f8;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}:root[data-theme=dark]{--bg:#0a171e;--surface:#12262f;--surface-alt:#1a3340;--text:#f1f7fa;--muted:#8fa8b5;--outline:#234352;--on-primary:#0b1a22;--shadow:0 1px 2px #0000004d, 0 6px 20px #00000040;--shadow-hover:0 2px 4px #0006, 0 10px 28px #0006;--red:#ff6b5b;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html,body,#root{min-height:100%;margin:0}body{background:var(--bg);color:var(--text);font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif;font-size:16px;line-height:1.45}button,input,select{font:inherit;color:inherit}:focus-visible{outline:2px solid var(--primary-text);outline-offset:2px}.app{min-height:100vh;padding-bottom:env(safe-area-inset-bottom)}.topbar{z-index:10;background:linear-gradient(135deg, var(--primary), var(--header-to));color:var(--on-primary);position:sticky;top:0;box-shadow:0 2px 12px #0000001f}:root[data-theme=dark] .topbar{color:var(--text);border-bottom:1px solid var(--outline);background:linear-gradient(135deg,#12262f,#0f2029)}.topbar-inner{max-width:1120px;padding:calc(env(safe-area-inset-top) + 12px) 16px 12px;align-items:center;gap:8px;margin:0 auto;display:flex}.topbar .titles{flex:1;min-width:0}.topbar .club{letter-spacing:2px;text-transform:uppercase;font-size:10px}:root[data-theme=dark] .topbar .club{color:var(--primary-text)}.topbar h1{letter-spacing:.2px;margin:0;font-size:20px;font-weight:650}.icon-btn{cursor:pointer;width:40px;height:40px;color:inherit;background:0 0;border:0;border-radius:50%;font-size:20px;transition:background .15s}.icon-btn:hover{background:#80808038}.icon-btn:active{background:#80808052}.icon-btn:disabled{opacity:.35;cursor:default}:root[data-theme=dark] .topbar .icon-btn{color:var(--primary-text)}.page{width:100%;margin:0 auto}.page.narrow,.page.form{max-width:720px}.page.auth{max-width:460px}.page.wide{max-width:1120px}main{flex-direction:column;gap:14px;padding:16px;display:flex}.card{background:var(--surface);border:1px solid var(--outline);border-radius:var(--radius);box-shadow:var(--shadow);padding:16px 18px}.card h2,.label{letter-spacing:1.5px;text-transform:uppercase;color:var(--primary-text);margin:0 0 10px;font-size:11px;font-weight:700}.muted{color:var(--muted)}.small{font-size:13px}.error{color:var(--red)}.info{color:var(--primary-text)}::placeholder{color:var(--muted);opacity:1}input,select{border:1px solid var(--outline);background:var(--bg);border-radius:10px;outline:none;width:100%;padding:11px 12px;transition:border-color .15s,box-shadow .15s}input:focus,select:focus{border-color:var(--primary-text);box-shadow:0 0 0 3px color-mix(in srgb, var(--primary-text) 22%, transparent)}label.field{color:var(--muted);flex-direction:column;gap:5px;font-size:13px;display:flex}.btn{border-radius:var(--radius);cursor:pointer;background:var(--primary);color:var(--on-primary);border:0;width:100%;padding:14px 16px;font-weight:600;transition:filter .15s,transform 50ms,box-shadow .15s;box-shadow:0 1px 2px #0000001f}.btn:hover:not(:disabled){filter:brightness(1.06);box-shadow:0 3px 10px #00000029}.btn:active:not(:disabled){transform:translateY(1px)}.btn:disabled{opacity:.45;cursor:default}.btn.outline{background:var(--surface);color:var(--text);border:1px solid var(--outline);box-shadow:none}.btn.outline:hover:not(:disabled){border-color:var(--primary);filter:none}.btn.danger{color:var(--red);border:1px solid var(--outline);box-shadow:none;background:0 0}.btn.danger:hover:not(:disabled){border-color:var(--red);filter:none}.btn.small{width:auto;padding:8px 12px;font-size:14px}.row{align-items:center;gap:10px;display:flex}.row>*{flex:1}.row>.fixed{flex:none}.home-grid{align-items:start;gap:16px;display:grid}.side{flex-direction:column;gap:14px;display:flex}.games-grid{grid-template-columns:1fr;gap:14px;display:grid}.section-title{letter-spacing:1.5px;text-transform:uppercase;color:var(--muted);margin:4px 2px 0;font-size:12px;font-weight:700}.game{cursor:pointer;transition:box-shadow .15s,transform .1s,border-color .15s}.game:hover{box-shadow:var(--shadow-hover);border-color:color-mix(in srgb, var(--primary) 55%, var(--outline));transform:translateY(-1px)}.game .meta{color:var(--muted);justify-content:space-between;gap:8px;margin-bottom:8px;font-size:13px;display:flex}.game .players{grid-template-columns:minmax(70px,auto) 1fr;gap:3px 12px;display:grid}.game .players b{font-weight:600}.badge{background:var(--surface-alt);color:var(--muted);border-radius:999px;padding:1px 8px;font-size:11px;display:inline-block}.hero-kpis{grid-template-columns:repeat(3,1fr);gap:10px;display:grid}.hero-kpis .kpi{text-align:center;padding:12px 8px}.hero-kpis .kpi b{font-size:22px}.player-row{align-items:center;gap:8px;margin-bottom:8px;display:flex}.player-row .num{background:var(--secondary);color:#fff;border-radius:50%;flex:none;place-items:center;width:28px;height:28px;font-size:13px;font-weight:700;display:grid}.suggest{flex:1;position:relative}.suggest ul{z-index:5;background:var(--surface);border:1px solid var(--outline);max-height:220px;box-shadow:var(--shadow-hover);border-radius:10px;margin:2px 0 0;padding:4px 0;list-style:none;position:absolute;left:0;right:0;overflow:auto}.suggest li button{text-align:left;cursor:pointer;background:0 0;border:0;width:100%;padding:10px 12px}.suggest li button:hover{background:var(--surface-alt)}.scoretable{border-collapse:separate;border-spacing:0 6px;width:100%}.scoretable th,.scoretable td{text-align:center;padding:0 4px}.scoretable thead th{top:calc(env(safe-area-inset-top) + 64px);background:var(--bg);z-index:2;padding-bottom:8px;font-size:13px;font-weight:650;position:sticky}.scoretable .hole{color:var(--muted);width:48px;font-size:13px}.cell{border:1px solid var(--outline);background:var(--surface);cursor:pointer;width:100%;min-width:48px;height:46px;box-shadow:var(--shadow);border-radius:10px;font-size:20px;font-weight:700;transition:border-color .15s,transform 50ms}.cell:hover{border-color:var(--primary)}.cell:active{transform:scale(.97)}.cell.empty{color:var(--muted);font-weight:400}.totalbar{background:color-mix(in srgb, var(--bg) 92%, transparent);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-top:1px solid var(--outline);position:sticky;bottom:0}.totalbar-inner{max-width:720px;padding:10px 16px calc(env(safe-area-inset-bottom) + 10px);flex-direction:column;gap:8px;margin:0 auto;display:flex}.totals{justify-content:space-around;font-size:14px;display:flex}.totals b{color:var(--primary-text);font-size:18px}.overlay{z-index:50;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#00000080;flex-direction:column;justify-content:center;align-items:center;gap:24px;display:flex;position:fixed;inset:0}.overlay h3{color:#fff;margin:0;font-size:22px}.radial{width:300px;height:300px;position:relative}.radial button{border:2px solid var(--outline);background:var(--surface);color:var(--text);cursor:pointer;border-radius:50%;font-size:22px;font-weight:700;transition:filter .1s;position:absolute;top:50%;left:50%;box-shadow:0 4px 14px #00000040}.radial button:hover{filter:brightness(.95);border-color:var(--primary)}.radial button.num{width:62px;height:62px;margin:-31px 0 0 -31px}.radial button.num.active{background:var(--primary);border-color:var(--primary);color:var(--on-primary)}.radial button.clear{border-color:var(--red);width:66px;height:66px;color:var(--red);margin:-33px 0 0 -33px}.results{border-collapse:collapse;width:100%;font-size:15px}.results th,.results td{text-align:center;border-bottom:1px solid var(--outline);padding:8px 6px}.results th{color:var(--muted);font-size:13px;font-weight:600}.results th:first-child,.results td:first-child{text-align:left}.results tr.total td{color:var(--primary-text);border-bottom:0;font-size:17px;font-weight:700}details summary{cursor:pointer;color:var(--muted);padding:8px 0;font-size:13px}.holes{border-collapse:collapse;width:100%;font-size:13px}.holes td,.holes th{text-align:center;padding:3px 4px}.stats-grid{align-items:start;gap:14px;display:grid}.stats-main{flex-direction:column;gap:14px;display:flex}.kpis{grid-template-columns:1fr 1fr;gap:12px;display:grid}.kpi b{font-size:26px;line-height:1.2;display:block}.bar{grid-template-columns:80px 1fr 40px;align-items:center;gap:8px;margin-bottom:5px;font-size:13px;display:grid}.bar div.track{background:var(--surface-alt);border-radius:6px;height:14px;overflow:hidden}.bar div.fill{background:var(--primary-text);border-radius:6px;height:100%}svg.chart{width:100%;height:auto}.brand{text-align:center;padding:20px 0 4px}.brand img{width:76px;height:76px;box-shadow:var(--shadow-hover);border-radius:20px}.brand h2{letter-spacing:0;text-transform:none;color:var(--text);margin:12px 0 2px;font-size:22px}.center{text-align:center;padding:24px 0}.spinner{border:3px solid var(--outline);border-top-color:var(--primary);border-radius:50%;width:22px;height:22px;animation:.8s linear infinite spin;display:inline-block}@keyframes spin{to{transform:rotate(360deg)}}.toast{left:16px;right:16px;bottom:calc(env(safe-area-inset-bottom) + 16px);background:var(--red);color:#fff;z-index:60;max-width:528px;box-shadow:var(--shadow-hover);border-radius:10px;margin:0 auto;padding:12px 14px;position:fixed}@media (width>=900px){body{font-size:15.5px}main{gap:16px;padding:24px 24px 40px}.topbar-inner{padding:16px 24px 14px}.topbar h1{font-size:22px}.scoretable thead th{top:72px}.home-grid{grid-template-columns:300px 1fr;gap:24px}.side{position:sticky;top:96px}.games-grid{grid-template-columns:repeat(auto-fill,minmax(320px,1fr))}.stats-grid{grid-template-columns:300px 1fr;gap:24px}.stats-grid>.filters{position:sticky;top:96px}.kpis{grid-template-columns:repeat(4,1fr)}.filters .row{flex-direction:column;align-items:stretch}}.form-grid,.settings-grid,.stack{flex-direction:column;gap:14px;display:flex}@media (width>=600px){main{gap:16px;padding:20px 24px 32px}.topbar-inner{padding-left:24px;padding-right:24px}.page.narrow{max-width:840px}.page.form{max-width:960px}.page.auth{max-width:520px}.form-grid{grid-template-columns:1.1fr 1fr;align-items:start;gap:20px;display:grid}.settings-grid{grid-template-columns:1fr 1fr;align-items:start;gap:20px;display:grid}.stats-main{grid-template-columns:1fr 1fr;align-items:start;gap:16px;display:grid}.stats-main>.kpis,.stats-main>.center{grid-column:1/-1}.totalbar-inner{max-width:840px;padding-left:24px;padding-right:24px}.radial{transform:scale(1.25)}.overlay{gap:64px}.overlay h3{font-size:26px}}@media (width>=600px) and (width<=899px){.page.wide{max-width:860px}.home-grid{grid-template-columns:1fr;gap:18px}.side{flex-flow:wrap;align-items:stretch;gap:12px}.side>.btn{flex:200px;width:auto}.side>.hero-kpis,.side>.card{flex:100%}.games-grid{grid-template-columns:repeat(2,1fr)}.stats-grid{grid-template-columns:1fr;gap:16px}.filters .row{flex-direction:row}.kpis{grid-template-columns:repeat(4,1fr)}}@media (pointer:coarse){.btn{padding:16px 18px}.btn.small{padding:11px 14px}.icon-btn{width:46px;height:46px}input,select{padding:13px 14px}.cell{height:52px;font-size:22px}.suggest li button{padding:14px}.game:hover{transform:none}}@media (pointer:coarse) and (width>=600px){.cell{height:58px;font-size:24px}.scoretable th,.scoretable td{padding:0 6px}.scoretable .hole{width:60px;font-size:15px}}.skip-link{z-index:100;background:var(--surface);color:var(--text);border:2px solid var(--primary-text);border-radius:8px;padding:10px 14px;position:absolute;top:8px;left:-9999px}.skip-link:focus{left:8px}.legal-links{flex-wrap:wrap;justify-content:center;gap:4px 16px;padding:8px 16px 28px;font-size:13px;display:flex}.legal-links a{color:var(--muted);text-decoration:underline}.legal-links a:hover{color:var(--text)}.checkline{align-items:flex-start;gap:10px;font-size:14px;line-height:1.4;display:flex}.checkline input[type=checkbox]{width:22px;height:22px;accent-color:var(--primary-text);flex:none;margin-top:1px;padding:0}.checkline a{color:var(--primary-text)}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.result-main{padding-top:8px}.result-meta{margin:0}.rgrid-wrap{border-radius:var(--radius);box-shadow:var(--shadow);background:var(--bg);overflow:hidden}.rgrid{border-collapse:collapse;table-layout:fixed;width:100%}.rgrid th,.rgrid td{text-align:center;border-bottom:1px solid var(--bg);padding:0}.rgrid-head{color:#fff;border-bottom:2px solid var(--bg);text-overflow:ellipsis;white-space:nowrap;padding:12px 4px;font-size:15px;font-weight:700;overflow:hidden}.rgrid-hole{width:40px;color:var(--muted);background:var(--surface);font-size:12px;font-weight:700}.rgrid-hole.alt{background:var(--bg)}.rgrid tbody td{color:var(--text);padding:8px 4px}.rgrid-single{font-size:17px;font-weight:700}.rgrid-sub{display:flex}.rgrid-sub>span{text-align:center;flex:1}.rgrid-sub .prev{opacity:.75;font-size:13px}.rgrid-sub .last{font-size:17px;font-weight:700}.rgrid-total{color:#fff;border-top:2px solid var(--bg);border-bottom:0;padding:10px 4px}.rgrid-total .sums{margin-bottom:4px}.rgrid-total .sums .prev,.rgrid-total .sums .last{color:#fff;opacity:1;font-size:12px;font-weight:400}.rgrid-total .sums .last{font-weight:600}.rgrid-grand{font-size:22px;font-weight:700}.actionbar{background:color-mix(in srgb, var(--bg) 94%, transparent);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-top:1px solid var(--outline);position:sticky;bottom:0}.actionbar-inner{max-width:720px;padding:10px 16px calc(env(safe-area-inset-bottom) + 10px);grid-template-columns:1fr 1fr;gap:8px;margin:0 auto;display:grid}.actionbar-inner>.error,.actionbar-inner>.btn.outline{grid-column:1/-1}.actionbar .btn{padding:12px 8px;font-size:15px}.btn.secondary{background:var(--secondary);color:#fff}.btn.link{color:var(--muted);box-shadow:none;background:0 0;padding:8px;font-weight:500}@media (width>=600px){.rgrid-head{font-size:17px}.rgrid tbody td{padding:10px 4px}.rgrid-single,.rgrid-sub .last{font-size:19px}.rgrid-hole{width:48px;font-size:13px}.actionbar-inner{padding-left:24px;padding-right:24px}}
