@font-face{font-family:Fraunces Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(./fraunces-vietnamese-wght-normal-CnvboYUG.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Fraunces Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(./fraunces-latin-ext-wght-normal-Ca2vKHc0.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Fraunces Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(./fraunces-latin-wght-normal-ukD16Tqj.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--ui-font:"Manrope Variable", "Manrope", system-ui, -apple-system, "Segoe UI", sans-serif;--ui-display:"Fraunces Variable", "Fraunces", Georgia, serif;--ui-fg:#fbfaf5;--ui-fg-dim:#fbfaf5a8;--ui-panel:#1e2522b8;--ui-panel-strong:#181e1bdb;--ui-border:#ffffff1f;--ui-accent:#f1c73f;--ui-red:#d9574a;--ui-good:#a6e889;--ui-bad:#ff9b8a;--ui-radius:14px;--ui-shadow:0 8px 28px #00000029;--meter-h:min(34vh, 300px)}*{box-sizing:border-box}html,body{height:100%;color:var(--ui-fg);font-family:var(--ui-font);-webkit-font-smoothing:antialiased;-webkit-user-select:none;user-select:none;background:#cfe3ee;margin:0;overflow:hidden}#app{position:fixed;inset:0}#scene{touch-action:none;outline:none;width:100%;height:100%;display:block;position:absolute;inset:0}#ui{pointer-events:none;position:absolute;inset:0}button{font:inherit;color:inherit;cursor:pointer}kbd{font:600 10px/1 var(--ui-font);color:var(--ui-fg-dim);border:1px solid #ffffff47;border-radius:4px;padding:2px 5px}.hidden{display:none!important}.dim{color:var(--ui-fg-dim)}.hud .dim,.club-meta{font-weight:500}.hud{pointer-events:none;font-variant-numeric:tabular-nums;text-shadow:0 1px 2px #00000040;position:absolute;inset:0}.hud-panel{border-radius:var(--ui-radius);background:var(--ui-panel);border:1px solid var(--ui-border);box-shadow:var(--ui-shadow);pointer-events:auto;padding:10px 14px;position:absolute}.meter{pointer-events:none;flex-direction:column;align-items:center;gap:6px;display:flex;position:absolute;bottom:20px;left:calc(50% + 65px);transform:translate(-50%)}.meter-track{width:30px;height:var(--meter-h);box-shadow:var(--ui-shadow);background:linear-gradient(#0a140e9e,#0a140e80);border:2px solid #ffffffbf;border-radius:10px;position:relative;overflow:hidden}.meter-over{background:repeating-linear-gradient(135deg,#e8554ebf 0 5px,#e8554e80 5px 10px);position:absolute;left:0;right:0}.meter-zone{background:linear-gradient(#f1c73f0d,#f1c73f80,#f1c73f0d);position:absolute;left:0;right:0}.meter-perfect{background:#ffeeaad9;position:absolute;left:0;right:0}.meter-sweet{background:#fffbe6;height:2px;margin-bottom:-1px;position:absolute;left:-2px;right:-2px;box-shadow:0 0 6px #fff4bee6}.meter-tick{background:#ffffff73;width:8px;height:1px;position:absolute;left:0}.meter-fill{background:linear-gradient(#ffffffd9,#ffffff73);border-radius:3px;position:absolute;left:4px;right:4px}.meter.over .meter-fill{background:linear-gradient(#ff968cf2,#ffffff80)}.meter-cursor{background:#fff;border-radius:2px;height:4px;margin-bottom:-2px;position:absolute;left:-3px;right:-3px;box-shadow:0 0 8px #ffffffe6}.meter-power{background:var(--ui-accent);height:3px;margin-bottom:-1.5px;position:absolute;left:-4px;right:-4px}.meter-target{border-top:2px dashed #a6e889f2;height:0;position:absolute;left:-8px;right:-8px}.meter-scale{height:calc(var(--meter-h) - 4px);pointer-events:none;width:64px;position:absolute;top:2px;left:calc(50% + 22px)}.meter-scale span{white-space:nowrap;text-shadow:0 1px 2px #0000008c,0 0 6px #0000004d;font-size:13px;font-weight:800;position:absolute;left:0;transform:translateY(50%)}.meter-scale span.minor{opacity:.72;font-size:11px;font-weight:700}.meter-caption{background:var(--ui-panel-strong);border:1px solid var(--ui-border);white-space:nowrap;color:var(--ui-fg);border-radius:999px;padding:4px 10px;font-size:12px;font-weight:700;animation:.3s ease-out fade-in;position:absolute;bottom:calc(100% + 8px);left:0}.meter-caption:empty{display:none}.meter-label{letter-spacing:.06em;text-shadow:0 1px 2px #0006;font-size:12px;font-weight:800}.meter.perfect .meter-track{border-color:#ffe68a;animation:.5s ease-out meter-flash;box-shadow:0 0 0 3px #ffe68a73,0 0 26px #ffe68acc}.meter.power-only .meter-zone,.meter.power-only .meter-perfect,.meter.power-only .meter-over,.meter.power-only[data-phase=done] .meter-cursor{display:none}.meter.mishit .meter-track{border-color:var(--ui-bad)}.meter-line{flex-direction:column;align-items:center;gap:4px;width:0;transition:opacity .2s;display:flex}.meter-line[data-state=waiting]{opacity:.45}.line-track{width:clamp(112px,100vw - 580px,212px);height:20px;box-shadow:var(--ui-shadow);background:linear-gradient(#0a140e9e,#0a140e80);border:2px solid #ffffffbf;border-radius:10px;flex:none;position:relative;overflow:hidden}.meter-line[data-state=sweeping] .line-track{animation:.3s ease-out line-wake}.line-ok{background:linear-gradient(90deg,#f1c73f0d,#f1c73f73,#f1c73f0d);position:absolute;top:0;bottom:0}.line-perfect{background:#ffeeaad9;position:absolute;top:0;bottom:0}.line-centre{background:#fffbe6;width:2px;margin-left:-1px;position:absolute;top:-2px;bottom:-2px;left:50%;box-shadow:0 0 6px #fff4bee6}.line-marker{background:#fff;border-radius:3px;width:6px;margin-left:-3px;position:absolute;top:-3px;bottom:-3px;box-shadow:0 0 8px #ffffffe6}.meter-line[data-state=done] .line-marker{width:8px;margin-left:-4px;animation:.35s ease-out line-stick}.meter-line.ok .line-marker{background:var(--ui-accent);box-shadow:0 0 10px #f1c73ff2}.meter-line.poor .line-marker{background:var(--ui-bad);box-shadow:0 0 10px #e8554ef2}.meter-line.perfect .line-track{border-color:#ffe68a;box-shadow:0 0 0 3px #ffe68a73,0 0 22px #ffe68acc}.meter-line.poor .line-track{border-color:var(--ui-bad)}.line-label{transition:opacity .2s}@keyframes line-wake{0%{border-color:#fff;transform:scale(1.1);box-shadow:0 0 0 3px #fff6,0 0 18px #ffffffbf}to{transform:scale(1)}}@keyframes line-stick{0%{transform:scaleY(1.6)}to{transform:scaleY(1)}}@keyframes meter-flash{0%{transform:scale(1.12)}to{transform:scale(1)}}.toasts{pointer-events:none;flex-direction:column;align-items:center;gap:8px;display:flex;position:absolute;top:15%;left:50%;transform:translate(-50%)}.toast{background:var(--ui-panel-strong);box-shadow:var(--ui-shadow);border-radius:999px;padding:6px 14px;font-size:14px;font-weight:700;transition:opacity .4s,transform .4s;animation:.25s ease-out toast-in}.toast.good{color:var(--ui-good)}.toast.great{color:#2a2208;background:linear-gradient(#ffe89a,#f2c94c)}.toast.bad{color:var(--ui-bad)}.toast.leaving,.banner.leaving{opacity:0;transform:translateY(-8px)}@keyframes toast-in{0%{opacity:0;transform:translateY(8px)scale(.96)}}.banner{text-align:center;pointer-events:none;transition:opacity .6s,transform .6s;animation:.5s cubic-bezier(.2,.9,.3,1.2) banner-in;position:absolute;top:38%;left:50%;transform:translate(-50%,-50%)}.banner-title{font-family:var(--ui-display);text-shadow:0 3px 18px #00000059;font-size:clamp(40px,7vw,76px);font-style:italic;font-weight:700}.banner-sub{letter-spacing:.08em;text-transform:uppercase;text-shadow:0 1px 6px #0006;margin-top:4px;font-size:16px;font-weight:700}@keyframes banner-in{0%{opacity:0;transform:translate(-50%,-40%)scale(.9)}}.panel-backdrop{pointer-events:auto;background:#08100a47;place-items:center;animation:.3s fade-in;display:grid;position:absolute;inset:0}.panel{background:var(--ui-panel-strong);border:1px solid var(--ui-border);text-align:center;border-radius:20px;min-width:320px;max-width:min(92vw,720px);padding:24px 28px;box-shadow:0 20px 60px #00000059}.panel h2{font-family:var(--ui-display);margin:0 0 6px;font-size:30px;font-weight:700}.panel p{color:var(--ui-fg-dim);margin:6px 0 18px}.panel-actions{justify-content:center;gap:10px;display:flex}.btn{border:1px solid var(--ui-border);background:#ffffff14;border-radius:12px;padding:10px 20px;font-weight:800}.btn.primary{color:#0f2410;background:linear-gradient(#8fcf5e,#5ea345);border-color:#fff6}.btn:hover{filter:brightness(1.08)}@keyframes fade-in{0%{opacity:0}}.loading{color:#24452d;pointer-events:none;background:linear-gradient(#9fc7e0,#cfe3ee);place-items:center;font-weight:700;display:grid;position:absolute;inset:0}.debug-fps,.debug-panel{color:#b8ffb0;pointer-events:none;z-index:50;white-space:pre;background:#0009;border-radius:6px;padding:3px 8px;font:12px/1.35 ui-monospace,SFMono-Regular,Menlo,monospace;position:absolute}.debug-fps{top:58px;left:50%;transform:translate(-50%)}.debug-panel{top:90px;left:16px}.panel.wide{min-width:min(92vw,640px)}.panel-hint{letter-spacing:.06em;color:var(--ui-fg-dim);text-transform:uppercase;margin-top:10px;font-size:11px}.scorecard{font-variant-numeric:tabular-nums;margin:14px 0 18px;overflow-x:auto}.sc-title{font-family:var(--ui-display);color:var(--ui-fg-dim);margin-bottom:6px;font-style:italic}.scorecard table{border-collapse:collapse;color:#1f2f22;background:#faf7ecf5;border-radius:10px;width:100%;font-size:14px;overflow:hidden}.scorecard th,.scorecard td{text-align:center;border-right:1px solid #1f2f221f;min-width:34px;padding:6px 4px}.scorecard th:first-child{text-align:left;min-width:70px;padding-left:10px;font-weight:800}.scorecard .sc-head th{color:#f7f3e4;background:#2f5a35;font-weight:800}.scorecard .sc-head th.current{color:#2a2208;background:#f1c73f}.scorecard .sc-length td,.scorecard .sc-length th{color:#1f2f2299;font-size:11px}.scorecard .sc-par td,.scorecard .sc-par th{background:#2f5a3514;font-weight:700}.scorecard .sc-score td{height:36px;font-size:15px;font-weight:800}.scorecard .sc-total td.under{color:#c0392b;font-weight:800}.scorecard .sc-total td.over{color:#1f4d80;font-weight:700}.scorecard .sc-sum{background:#2f5a351f;font-weight:800}.sc-mark{place-items:center;width:24px;height:24px;line-height:1;display:inline-grid}.sc-mark.circle{border:1.6px solid #c0392b;border-radius:50%}.sc-mark.doubleCircle{border:1.6px solid #c0392b;border-radius:50%;box-shadow:0 0 0 2px #faf7ecf5,0 0 0 3.6px #c0392b}.sc-mark.square{border:1.6px solid #1f4d80}.sc-mark.doubleSquare{border:1.6px solid #1f4d80;box-shadow:0 0 0 2px #faf7ecf5,0 0 0 3.6px #1f4d80}.summary-score{justify-content:center;align-items:baseline;gap:14px;margin:4px 0 8px;display:flex}.summary-strokes{font-family:var(--ui-display);font-size:56px;font-weight:700}.summary-topar{color:var(--ui-accent);font-size:28px;font-weight:800}.record-badge{color:#2a2208;background:linear-gradient(#ffe89a,#f2c94c);border-radius:999px;margin-bottom:8px;padding:4px 12px;font-weight:800;animation:.6s cubic-bezier(.2,.9,.3,1.2) banner-in;display:inline-block}.stats{grid-template-columns:repeat(5,1fr);gap:8px;margin:6px 0 4px;display:grid}.stat{background:#ffffff12;border-radius:10px;padding:8px 6px}.stat-value{font-size:17px;font-weight:800}.stat-label{color:var(--ui-fg-dim);margin-top:2px;font-size:11px}.menus{pointer-events:auto;background:radial-gradient(#08120a14,#08120a73);place-items:center;padding:24px;animation:.35s fade-in;display:grid;position:absolute;inset:0;overflow-y:auto}.menu-card{border:1px solid var(--ui-border);-webkit-backdrop-filter:blur(10px);background:#101e16db;border-radius:22px;width:min(92vw,460px);padding:26px 30px 24px;animation:.35s cubic-bezier(.2,.9,.3,1.1) card-in;box-shadow:0 24px 70px #00000059}.menu-card.wide{width:min(94vw,760px)}.menu-card.confirm{text-align:center;width:min(92vw,420px)}@keyframes card-in{0%{opacity:0;transform:translateY(10px)scale(.98)}}.menu-title{font-family:var(--ui-display);margin:0 0 16px;font-size:30px;font-weight:700}.menu-text{color:var(--ui-fg-dim);margin:0 0 14px;line-height:1.45}.menu-hint{color:var(--ui-fg-dim);margin-top:6px;font-size:12px}.menu-row{justify-content:flex-end;align-items:center;gap:10px;margin-top:18px;display:flex}.menu-row.spread{justify-content:space-between}.menu-button{border:1px solid var(--ui-border);letter-spacing:.02em;text-align:center;background:#ffffff12;border-radius:12px;padding:12px 18px;font-size:16px;font-weight:800;transition:background .15s,transform .12s,border-color .15s,scale .1s,filter .1s}:is(.menu-button:hover,.menu-button:focus-visible){background:#ffffff26;border-color:#ffffff59;outline:none;transform:translateY(-1px)}.menu-button.primary{color:#0f2410;background:linear-gradient(#9ad768,#5ea345);border-color:#ffffff73}.menu-button.small{padding:7px 12px;font-size:13px}.menu-button.danger{color:var(--ui-bad)}.menu-back{color:var(--ui-fg-dim);background:0 0;border:none;margin-right:auto;padding:8px 4px;font-weight:700}.menu-back:hover{color:var(--ui-fg)}.title-screen{text-align:center;flex-direction:column;align-items:center;gap:6px;animation:.6s ease-out card-in;display:flex}.game-title{font-family:var(--ui-display);text-shadow:0 4px 30px #00000059;margin:0;font-size:clamp(54px,9vw,104px);font-style:italic;font-weight:700;line-height:1}.game-tagline{letter-spacing:.3em;text-transform:uppercase;text-shadow:0 1px 8px #00000073;font-size:15px;font-weight:700}.profile-chip{border:1px solid var(--ui-border);background:#101e1699;border-radius:999px;align-items:center;gap:10px;margin-top:16px;padding:6px 14px;font-size:13px;font-weight:700;display:inline-flex}.chip-action{color:var(--ui-accent)}.title-buttons{flex-direction:column;gap:10px;width:min(80vw,280px);margin-top:22px;display:flex}.name-input{width:100%;color:var(--ui-fg);font:700 20px var(--ui-font);-webkit-user-select:text;user-select:text;background:#ffffff14;border:1px solid #ffffff4d;border-radius:12px;padding:12px 14px}.name-input:focus{outline:2px solid var(--ui-accent)}.shake{animation:.35s shake}@keyframes shake{25%{transform:translate(-6px)}75%{transform:translate(6px)}}.profile-list{flex-direction:column;gap:8px;display:flex}.profile-row{background:#ffffff0d;border-radius:12px;align-items:center;gap:10px;padding:10px 12px;display:flex}.profile-row.active{outline:1px solid #f1c73f99}.profile-info{flex:1}.profile-name{font-size:16px;font-weight:800}.profile-meta{color:var(--ui-fg-dim);font-size:12px}.profile-active{color:var(--ui-accent);padding:0 8px;font-size:12px;font-weight:800}.course-list{flex-direction:column;gap:12px;display:flex}.course-card{background:#ffffff0f;border-radius:14px;gap:4px;padding:16px;display:grid}.course-name{font-family:var(--ui-display);font-size:22px;font-weight:700}.course-meta,.course-best{color:var(--ui-fg-dim);font-size:13px}.course-card .menu-button{margin-top:8px}.course-credits{color:var(--ui-fg-dim);opacity:.8;font-size:11px}.options{gap:10px;display:grid}.opt-row{border-bottom:1px solid #ffffff0f;justify-content:space-between;align-items:center;gap:16px;padding:6px 0;display:flex}.opt-label{font-size:14px;font-weight:700}.opt-hint{color:var(--ui-fg-dim);font-size:11px;font-weight:500}.segmented{border:1px solid var(--ui-border);border-radius:10px;display:flex;overflow:hidden}.seg{background:#ffffff0a;border:none;padding:7px 12px;font-size:13px;font-weight:700}.seg+.seg{border-left:1px solid var(--ui-border)}.seg.on{background:var(--ui-accent);color:#2a2208}.slider{width:200px;accent-color:var(--ui-accent)}.record-stats{grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:14px;display:grid}.record-course{background:#ffffff0d;border-radius:14px;gap:8px;margin-bottom:12px;padding:14px;display:grid}.record-holes{grid-template-columns:repeat(9,1fr);gap:4px;display:grid}.record-hole{text-align:center;background:#ffffff0f;border-radius:8px;padding:5px 0}.record-hole.under{background:#f1c73f38}.rh-num,.rh-par{color:var(--ui-fg-dim);font-size:10px}.rh-best{font-size:16px;font-weight:800}.leaderboard{gap:4px;margin:0;padding-left:20px;font-size:14px;display:grid}.leaderboard li span{margin-right:12px}.leaderboard li span:first-child{font-weight:800}.lb-date{color:var(--ui-fg-dim);font-size:12px}.howto{grid-template-columns:1fr 1fr;gap:16px 22px;display:grid}.howto h3{color:var(--ui-accent);margin:0 0 6px;font-size:15px}.howto p{color:var(--ui-fg-dim);margin:0 0 12px;font-size:13px;line-height:1.5}.howto-meter svg{width:100%;max-width:340px}.howto-row{align-items:flex-start;gap:12px;display:flex}.howto-strike svg{width:84px}.howto-controls{grid-column:1/-1}.howto-controls table{border-collapse:collapse;width:100%;font-size:13px}.howto-controls td{border-bottom:1px solid #ffffff0f;padding:5px 6px}.howto-controls td:first-child{font-weight:700}@media (max-width:760px){.howto{grid-template-columns:1fr}.stats{grid-template-columns:repeat(2,1fr)}}.hud{z-index:1}.meter,.strike,.swing-button{z-index:2}.toasts,.banner{z-index:5}.panel-backdrop{z-index:10}.menus{z-index:20}.map-canvas{position:relative;overflow:hidden}.map-layer{display:block;position:absolute;top:0;left:0}.minimap-key{pointer-events:none;background:#181e1bb3;position:absolute;bottom:10px;right:10px}.fullmap-backdrop{z-index:8;pointer-events:auto;background:#0c18106b;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.fullmap{color:#23402c;text-shadow:none;font-variant-numeric:tabular-nums;background:linear-gradient(#f7f3e7,#efe8d6);border:1px solid #5a46282e;border-radius:18px;grid-template-rows:auto 1fr;grid-template-columns:auto 210px;gap:10px 18px;padding:14px 18px 18px;display:grid;box-shadow:0 22px 64px #0000005c}.fm-header{grid-column:1/-1;align-items:baseline;gap:14px;min-height:30px;display:flex}.fm-title{font-family:var(--ui-display);letter-spacing:.01em;font-size:26px;font-weight:700}.fm-sub{color:#23402cb8;align-items:baseline;gap:10px;font-size:14px;font-weight:700;display:flex}.fm-name{font-family:var(--ui-display);font-style:italic;font-weight:500}.fm-close{color:#23402c;background:#ffffff80;border:1px solid #23402c38;border-radius:10px;align-self:center;align-items:center;gap:6px;margin-left:auto;padding:5px 10px;font-size:12px;font-weight:700;display:flex}.fm-close:hover{background:#ffffffe6}.fm-close kbd{color:#23402cb3;border-color:#23402c4d}.fullmap .map-canvas{cursor:crosshair;touch-action:none;border-radius:10px;box-shadow:0 0 0 1px #283c1e59,0 6px 18px #2832142e}.fm-side{flex-direction:column;gap:14px;padding-top:4px;display:flex}.fm-label{letter-spacing:.12em;text-transform:uppercase;color:#23402c94;font-size:10.5px;font-weight:800}.fm-value{font-family:var(--ui-display);font-size:30px;font-weight:700;line-height:1.1;display:block}.fm-grid{border-top:1px solid #23402c24;grid-template-columns:1fr 1fr;gap:10px;padding-top:12px;display:grid}.fm-grid .fm-value{font-size:22px}.fm-club{margin-top:4px;font-size:15px;font-weight:800}.fm-finder{border-top:1px solid #23402c24;padding-top:12px}.fm-finder-text{margin-top:3px;font-size:13px;font-weight:700;line-height:1.35;display:block}.fm-hints{color:#23402c9e;margin-top:auto;font-size:12px;line-height:1.5}.fm-main{flex-direction:column;display:flex}.fm-value-row{align-items:center;gap:8px;display:flex}.fm-grid.small .fm-value{font-family:var(--ui-font);font-size:15px;font-weight:800}.fm-grid.small{padding-top:10px}.fm-wind{border:1.5px solid #23402c73;border-radius:50%;flex:none;width:20px;height:20px;transition:transform .3s ease-out;position:relative}.fm-wind-head{border-bottom:12px solid #c9962e;border-left:4.5px solid #0000;border-right:4.5px solid #0000;position:absolute;top:2px;left:50%;transform:translate(-50%)}.fm-inset .map-canvas{cursor:crosshair;touch-action:none;border-radius:8px;margin-top:5px;box-shadow:0 0 0 1px #283c1e59}@media (max-height:700px){.fm-inset{display:none}}.minimap-key{opacity:0;transition:opacity .2s}.minimap:hover .minimap-key{opacity:1}.minimap-level{color:var(--ui-fg-dim);font:700 10px/1 var(--ui-font);letter-spacing:.04em;text-transform:uppercase;cursor:pointer;pointer-events:auto;opacity:.8;background:#181e1ba8;border:1px solid #ffffff3d;border-radius:999px;align-items:center;gap:4px;padding:3px 6px 3px 7px;transition:opacity .2s,background .2s;display:flex;position:absolute;top:8px;left:8px}.minimap-level:after{content:"";opacity:.85;border:3px solid #0000;border-top:4px solid;border-bottom-width:0}.minimap:hover .minimap-level,.minimap-level:hover{opacity:1}.minimap:not([data-level=auto]) .minimap-level{color:#1f2a1c;opacity:1;background:#f1c73feb;border-color:#f1c73f99}.fm-zoom{flex-direction:column;gap:4px;display:flex;position:absolute;top:10px;right:10px}.fm-zoom-button{color:#23402c;cursor:pointer;background:#f7f3e7e6;border:1px solid #23402c47;border-radius:9px;min-width:30px;height:30px;padding:0 7px;font-size:17px;font-weight:800;line-height:1;box-shadow:0 2px 6px #14281433}.fm-zoom-button:last-child{letter-spacing:.04em;font-size:11px}.fm-zoom-button:hover:not(:disabled){background:#fff}.fm-zoom-button:disabled{opacity:.45;cursor:default}.fullmap .map-canvas[data-zoom]:not([data-zoom="1.00"]){cursor:grab}.fullmap{max-width:calc(100% - 40px);max-height:calc(100% - 40px);overflow:hidden}.fullmap.compact{grid-template-columns:auto}.fullmap.compact .fm-side{flex-flow:wrap;gap:8px 22px}.fullmap.compact .fm-inset,.fullmap.compact .fm-finder,.fullmap.compact .fm-hints{display:none}.fullmap.compact .fm-grid{border-top:none;padding-top:0}.fullmap.compact .fm-value{white-space:nowrap;font-size:22px}.fullmap.compact .fm-title{font-size:22px}.fullmap.compact .fm-name{display:none}.fullmap.narrow{grid-template-columns:auto 160px;column-gap:16px}.fullmap.narrow .fm-side{gap:10px}.fullmap.narrow .fm-main .fm-value{font-size:26px}.fullmap.narrow .fm-value{white-space:nowrap}.fullmap.narrow .fm-grid:not(.small) .fm-value{font-size:19px}.fullmap.narrow .fm-label{letter-spacing:.06em}.fullmap.narrow .fm-name{display:none}@media (max-height:520px){.fullmap .fm-finder,.fullmap .fm-hints{display:none}}.online-form{gap:16px;display:grid}.field{gap:6px;display:grid}.field-label{letter-spacing:.1em;text-transform:uppercase;color:var(--ui-fg-dim);font-size:11px;font-weight:800}.online-input{padding:11px 14px;font-size:18px}.online-input::placeholder{color:#fbfaf561;font-weight:600}.field.invalid .online-input{border-color:var(--ui-bad);box-shadow:0 0 0 1px var(--ui-bad)}.field.invalid .online-input:focus{outline-color:var(--ui-bad)}.field-hint{color:var(--ui-fg-dim);font-size:12px}.field-error{color:var(--ui-bad);font-size:13px;font-weight:700}.field-error:empty{display:none}.online-error{color:#ffd9d1;background:#ff9b8a1f;border:1px solid #ff9b8a66;border-radius:12px;margin-top:16px;padding:10px 14px;font-size:14px;font-weight:600;line-height:1.4}.online-new strong,.online-wait-title strong{color:var(--ui-accent);overflow-wrap:anywhere;font-weight:800}.online-hint{background:#ffffff0f;border-radius:10px;padding:8px 12px}.online-wait{text-align:center;width:min(92vw,380px)}.online-ball{width:44px;height:64px;margin:2px auto 10px;position:relative}.online-ball span{background:radial-gradient(circle at 35% 30%,#fff 0 30%,#e6e8e1 60%,#c9cdc2 100%);border-radius:50%;width:28px;height:28px;animation:1.1s cubic-bezier(.45,0,.55,1) infinite online-bounce;position:absolute;top:0;left:8px;box-shadow:inset -3px -4px 6px #0000001f}.online-ball i{background:#00000059;border-radius:50%;width:24px;height:6px;animation:1.1s cubic-bezier(.45,0,.55,1) infinite online-shadow;position:absolute;bottom:2px;left:10px}.online-wait.reconnecting .online-ball span,.online-wait.reconnecting .online-ball i{animation-duration:1.8s}@keyframes online-bounce{0%,to{transform:translateY(30px)scale(1.04,.94)}50%{transform:translateY(0)scale(1)}}@keyframes online-shadow{0%,to{opacity:1;transform:scale(1)}50%{opacity:.45;transform:scale(.55)}}.online-wait-title{font-family:var(--ui-display);text-wrap:balance;font-size:22px;font-weight:700}.online-wait-title .wait-name{white-space:nowrap}@media (max-width:340px){.online-wait-title .wait-name{white-space:normal}}.online-wait-status{color:var(--ui-fg-dim);margin-top:6px;font-size:14px;font-weight:700}.online-wait-hint{margin-top:10px}.online-wait-row{justify-content:center}@media (prefers-reduced-motion:reduce){.online-ball span,.online-ball i{animation:none}}.panel{max-height:calc(100vh - 24px);overflow-y:auto}.panel.wide{max-width:min(94vw,760px)}.scorecard{max-width:100%}.sc-blocks{text-align:left;flex-direction:column;align-items:flex-start;gap:8px;display:inline-flex}.scorecard table{table-layout:fixed;width:auto}.scorecard th,.scorecard td{width:44px;min-width:44px}.scorecard th:first-child{width:124px;min-width:124px;max-width:124px}.scorecard .sc-sum{width:52px;min-width:52px}.scorecard .sc-total-col{background:#2f5a3533;width:56px;min-width:56px}.scorecard .sc-head .sc-total-col{background:#264a2c}.scorecard .sc-topar-col{width:60px;min-width:60px}.scorecard td.under,.scorecard .sc-topar-col.under{color:#c0392b}.scorecard .sc-topar-col.over{color:#1f4d80}.scorecard.multi .sc-score td{height:34px}.sc-name{align-items:center;gap:6px;min-width:0;display:flex}.sc-name-text{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.sc-dot,.rk-dot{border-radius:50%;flex:none;width:10px;height:10px;box-shadow:0 0 0 1.5px #ffffffd9,0 0 0 2.5px #0000002e}.sc-where{color:#1f2f22b3;white-space:nowrap;background:#2f5a351f;border-radius:6px;margin-left:auto;padding:1px 5px;font-size:10px;font-weight:800}.sc-tee{align-items:center;gap:6px;display:inline-flex}.sc-tee-dot{border-radius:2px;width:8px;height:8px;box-shadow:inset 0 0 0 1px #00000047}.hole-chips{flex-wrap:wrap;justify-content:center;gap:8px;margin:2px 0 4px;display:flex}.hole-chip{border:1px solid var(--ui-border);background:#ffffff14;border-radius:999px;align-items:center;gap:7px;padding:5px 12px 5px 10px;font-size:14px;display:inline-flex}.hole-chip.under{background:#f1c73f24;border-color:#f1c73f99}.hole-chip-name{font-weight:800}.hole-chip-score{color:var(--ui-fg-dim);font-weight:700}.panel.hole-complete{flex-direction:column;display:flex;overflow:hidden}.panel-scroll{overscroll-behavior:contain;min-height:0;margin:0 -8px;padding:0 8px;overflow:hidden auto}.panel-scroll.more-below,.summary-body.more-below{-webkit-mask-image:linear-gradient(#000 calc(100% - 28px),#0000);mask-image:linear-gradient(#000 calc(100% - 28px),#0000)}@media (pointer:coarse){.panel-hint{display:none}}.panel.summary{flex-direction:column;max-width:min(94vw,780px);display:flex;overflow:hidden}.summary-body{min-height:0;margin:0 -8px;padding:0 8px;overflow:hidden auto}.summary-course{font-family:var(--ui-display);color:var(--ui-fg-dim);margin-bottom:10px;font-style:italic}.summary.multi .record-badge{margin:0 0 10px}.ranking{border-collapse:collapse;font-variant-numeric:tabular-nums;width:100%;font-size:14px}.ranking th{letter-spacing:.04em;text-transform:uppercase;color:var(--ui-fg-dim);text-align:center;padding:4px 6px 6px;font-size:11px;font-weight:700}.ranking td{text-align:center;border-top:1px solid #ffffff14;padding:7px 6px;font-weight:700}.ranking .rk-name{text-align:left}.rk-name-inner{align-items:center;gap:8px;font-size:15px;font-weight:800;display:flex}.ranking tr.winner td{background:#f1c73f1f}.ranking tr.winner td:first-child{border-radius:10px 0 0 10px}.ranking tr.winner td:last-child{border-radius:0 10px 10px 0}.ranking tr.rk-more{display:none}.rk-place{width:40px}.rk-badge{background:#ffffff1a;border-radius:50%;place-items:center;width:24px;height:24px;font-size:13px;font-weight:800;display:inline-grid}.winner .rk-badge{color:#2a2208;background:linear-gradient(#ffe89a,#f2c94c)}.rk-score{font-size:18px;font-weight:800}.rk-topar{color:var(--ui-accent);font-weight:800}.rk-tee{letter-spacing:.04em;text-transform:uppercase;color:#f7dd8a;background:#f2c94c38;border-radius:6px;padding:1px 6px;font-size:10px;font-weight:800}.rk-tee.red{color:#ffb3a8;background:#d9534f40}.rk-winner{letter-spacing:.06em;text-transform:uppercase;color:var(--ui-accent);margin-left:auto;font-size:11px;font-weight:800}@media (max-height:820px){.panel{padding:16px 24px 14px}.panel h2{margin-bottom:2px;font-size:26px}.panel p{margin:2px 0 8px}.scorecard{margin:8px 0 12px}.sc-title{margin-bottom:3px;font-size:14px}.scorecard th,.scorecard td{padding:4px}.scorecard .sc-length th,.scorecard .sc-length td{padding:3px 4px}.scorecard .sc-score td,.scorecard.multi .sc-score td{height:30px}.sc-mark{width:22px;height:22px}.hole-chip{padding:3px 10px 3px 8px;font-size:13px}.ranking td{padding:5px 6px}.summary-course{margin-bottom:6px}.panel-hint{margin-top:6px}}@media (max-width:600px){.ranking .rk-x{display:none}.ranking tr.rk-more{display:table-row}.ranking th{white-space:nowrap}.ranking td.rk-name{width:100%;max-width:0}.rk-name-inner>*{flex:none}.rk-name-inner .rk-player{text-overflow:ellipsis;white-space:nowrap;flex:0 auto;min-width:0;overflow:hidden}.ranking tr.rk-has-more td{padding-bottom:1px}.ranking tr.rk-more td{text-align:left;color:var(--ui-fg-dim);border-top:0;padding:0 6px 7px;font-size:12px;font-weight:600}.rk-stats{flex-wrap:wrap;gap:1px 10px;display:flex}.rk-stat{white-space:nowrap}.rk-stat strong{color:var(--ui-fg);font-weight:800}.ranking tr.winner td.rk-topar{border-radius:0 10px 10px 0}.ranking tr.winner.rk-has-more td:first-child{border-radius:10px 0 0}.ranking tr.winner.rk-has-more td.rk-topar{border-radius:0 10px 0 0}.ranking tr.winner+tr.rk-more td{background:#f1c73f1f}.ranking tr.winner+tr.rk-more td:first-child{border-radius:0 0 0 10px}.ranking tr.winner+tr.rk-more td:last-child{border-radius:0 0 10px}}@media (max-width:360px){.ranking .rk-winner{display:none}.ranking th,.ranking td{padding-left:4px;padding-right:4px}.ranking .rk-place{width:30px}}@media (max-height:500px) and (orientation:landscape){.hole-complete .sc-length,.hole-complete .sc-title{display:none}.hole-complete .scorecard{margin-top:2px}.summary.multi .record-badge{margin-bottom:4px}.summary .ranking th{padding:2px 6px 4px}.summary .ranking td{padding:3px 6px}.summary .rk-score{font-size:16px}.summary .rk-badge{width:22px;height:22px}}.hud-dot{border-radius:50%;flex:none;width:10px;height:10px;box-shadow:0 0 0 1.5px #fffc}.hud-players{gap:2px;min-width:196px;padding:6px 8px;font-size:13px;display:grid}.hud-pl{color:var(--ui-fg-dim);border-radius:8px;grid-template-columns:10px minmax(0,1fr) auto minmax(3ch,max-content);align-items:center;gap:9px;padding:3px 6px;font-weight:700;display:grid}.hud-pl.active{color:var(--ui-fg);background:#ffffff1f}.hud-pl.done .hud-pl-name,.hud-pl.done .hud-pl-where{opacity:.75}.hud-pl-name{text-overflow:ellipsis;white-space:nowrap;max-width:120px;overflow:hidden}.hud-pl-where{text-align:right;font-size:12px}.hud-pl-par{text-align:right;color:var(--ui-accent);font-weight:700}.debug-panel{top:auto;bottom:236px}.turn-card{background:var(--ui-panel-strong);border:1px solid var(--ui-border);box-shadow:var(--ui-shadow);border-radius:18px;flex-direction:column;align-items:center;gap:1px;margin-top:4px;padding:9px 22px 8px;transition:opacity .45s,transform .45s;animation:.3s ease-out toast-in;display:flex}.turn-card.leaving{opacity:0;transform:translateY(-8px)}.turn-title{font-family:var(--ui-display);white-space:nowrap;align-items:center;gap:10px;font-size:24px;font-style:italic;font-weight:700;display:flex}.turn-title .hud-dot{width:13px;height:13px}.turn-sub{letter-spacing:.08em;text-transform:uppercase;color:var(--ui-fg-dim);font-size:11px;font-weight:700}.hud-players.online{min-width:232px;max-width:300px}.hud-pl-head{border-bottom:1px solid var(--ui-border);justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:3px;padding:1px 6px 6px;display:flex}.hud-pl-title{font-family:var(--ui-display);white-space:nowrap;text-overflow:ellipsis;font-size:15px;font-style:italic;font-weight:700;overflow:hidden}.hud-pl-count{letter-spacing:.05em;color:var(--ui-fg-dim);flex:none;font-size:11px;font-weight:800}.hud-pl-badge{letter-spacing:.04em;color:var(--ui-accent);flex:none;align-items:center;gap:6px;font-size:11px;font-weight:800;display:inline-flex}.hud-pl-badge:before{content:"";background:currentColor;border-radius:50%;width:7px;height:7px;animation:1.2s ease-in-out infinite pl-pulse}@keyframes pl-pulse{50%{opacity:.25}}.hud-players.stale .hud-pl-rows{opacity:.62}.hud-players.online .hud-pl.active{background:#ffffff1a}.hud-pl.offline .hud-pl-name,.hud-pl.offline .hud-pl-where,.hud-pl.offline .hud-pl-par{opacity:.55}.setup-card{width:min(94vw,680px)}.setup-course{margin-top:-8px}.setup-section{letter-spacing:.1em;text-transform:uppercase;color:var(--ui-accent);justify-content:space-between;align-items:baseline;gap:12px;margin:6px 0 8px;font-size:12px;font-weight:800;display:flex}.setup-section .opt-hint{letter-spacing:0;text-transform:none}.setup-players{flex-direction:column;gap:6px;display:flex}.setup-player{background:#ffffff0f;border-radius:12px;grid-template-columns:16px minmax(0,1fr) auto 30px;align-items:center;gap:12px;padding:9px 10px 9px 14px;animation:.25s ease-out card-in;display:grid}.setup-dot{border-radius:50%;width:16px;height:16px;box-shadow:0 0 0 2px #ffffffd9,0 1px 4px #0006}.setup-name{align-items:baseline;gap:10px;min-width:0;display:flex}.setup-name-text{text-overflow:ellipsis;white-space:nowrap;font-size:16px;font-weight:800;overflow:hidden}.setup-kind{letter-spacing:.06em;text-transform:uppercase;color:var(--ui-fg-dim);flex:none;font-size:11px;font-weight:700}.tee-picker .seg{min-width:64px}.setup-remove,.setup-remove-space{width:30px;height:30px}.setup-remove{border:1px solid var(--ui-border);color:var(--ui-fg-dim);background:#ffffff0a;border-radius:50%;place-items:center;padding:0;font-size:18px;line-height:1;display:grid}.setup-remove:hover{color:var(--ui-bad);border-color:#ff9b8a80}[data-testid=setup-add]{margin-top:8px}.setup-adder{background:#ffffff08;border:1px dashed #fff3;border-radius:12px;gap:8px;margin-top:8px;padding:12px;animation:.2s ease-out card-in;display:grid}.setup-adder-row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.name-input.small{width:200px;padding:8px 10px;font-size:15px}.setup-problem{min-height:0;color:var(--ui-bad);font-size:12px;font-weight:700}.setup-problem:empty{display:none}.setup-options{margin-top:14px;display:grid}.setup-row{padding:8px 0}.continue-button{flex-direction:column;align-items:center;gap:2px;display:flex}.continue-info,.continue-players{letter-spacing:0;opacity:.72;font-size:12px;font-weight:700}.continue-players{opacity:.6;font-weight:600}.record-tee{gap:8px;display:grid}.record-tee+.record-tee{border-top:1px solid #ffffff14;margin-top:6px;padding-top:12px}.record-line{align-items:baseline;gap:6px;display:flex}.record-line .opt-hint{margin-left:auto}.record-tee-tag{letter-spacing:.05em;text-transform:uppercase;color:#f7dd8a;background:#f2c94c38;border-radius:6px;align-self:center;margin-right:4px;padding:1px 7px;font-size:10px;font-weight:800}.record-tee-tag.red{color:#ffb3a8;background:#d9534f40}.record-holes+.record-holes{margin-top:-2px}.online-button{flex-direction:column;align-items:center;gap:1px;display:flex}.online-button-title{align-items:center;gap:8px;display:inline-flex}.online-button-hint{letter-spacing:0;opacity:.62;font-size:12px;font-weight:600}.live-dot{opacity:.35;background:currentColor;border-radius:50%;width:8px;height:8px;transition:background-color .4s,opacity .4s}.live-dot.on{background:var(--ui-good);opacity:1;animation:2.4s ease-in-out infinite live-pulse;box-shadow:0 0 0 3px #a6e88938}@keyframes live-pulse{50%{box-shadow:0 0 0 5px #a6e8890f}}.invite{gap:6px;display:grid}.invite-actions{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:8px;display:grid}.invite-note{text-align:center;color:var(--ui-good);font-size:12px;font-weight:700}.invite-note.manual{color:var(--ui-fg);-webkit-user-select:all;user-select:all;overflow-wrap:anywhere;background:#ffffff14;border-radius:8px;padding:6px 8px;font-weight:600}.report-text{box-sizing:border-box;border:1px solid var(--ui-border);width:100%;min-height:180px;color:var(--ui-fg);resize:vertical;background:#00000040;border-radius:10px;padding:10px;font:11px/1.45 ui-monospace,SFMono-Regular,Menlo,monospace}.online-options{margin-top:4px}.online-course{flex-direction:column;align-items:flex-end;gap:5px;min-width:0;display:flex}.online-course .segmented{flex-wrap:wrap;justify-content:flex-end}.online-course-line{text-align:right}.online-game-line{color:var(--ui-accent);margin:-6px 0 2px;font-weight:700}.online-opened{margin:0 0 12px}.online-notice{background:#a6e8891a;border:1px solid #a6e88952;border-radius:12px;margin:0 0 12px;padding:9px 13px;font-size:14px;font-weight:700;line-height:1.4}.online-finished{text-align:center;background:#ffd35c1f;border:1px solid #ffd35c59;border-radius:12px;margin:0 0 14px;padding:10px 14px;font-weight:800}.online-players{gap:5px;max-height:40vh;display:grid;overflow-y:auto}.online-player{font-variant-numeric:tabular-nums;background:#ffffff0f;border-radius:12px;grid-template-columns:12px minmax(0,1fr) auto 3ch;align-items:center;gap:12px;padding:8px 12px;display:grid}.online-player.new{animation:.25s ease-out card-in}.online-player .hud-dot{width:12px;height:12px}.online-player-name{white-space:nowrap;text-overflow:ellipsis;align-items:baseline;gap:8px;min-width:0;font-weight:800;display:flex;overflow:hidden}.online-player-status{color:var(--ui-fg-dim);white-space:nowrap;font-size:13px;font-weight:600}.online-player-score{text-align:right;color:var(--ui-accent);font-weight:800}.online-player.offline>span:not(.hud-dot){opacity:.55}.hud-pl.offline .hud-dot,.online-player.offline .hud-dot{box-shadow:inset 0 0 0 2px}.online-news{flex-direction:column;align-items:flex-start;gap:6px;max-width:300px;display:flex}.news-item{background:var(--ui-panel-strong);border:1px solid var(--ui-border);box-shadow:var(--ui-shadow);border-radius:12px;align-items:center;gap:9px;padding:6px 12px 6px 10px;font-size:13px;font-weight:700;line-height:1.3;transition:opacity .45s,transform .45s;animation:.35s ease-out news-in;display:flex}.news-item.leaving{opacity:0;transform:translate(-10px)}.news-item.score{background:linear-gradient(90deg, #3e3614eb, var(--ui-panel-strong));border-color:#f1c73f8c}.news-item.score .news-text{color:#ffe89a}.news-item.score{position:relative;overflow:hidden}.news-item.score:after{content:"";pointer-events:none;background:linear-gradient(105deg,#0000 30%,#ffecaa80 48%,#0000 66%);animation:.9s ease-out .3s forwards news-glint;position:absolute;inset:0;transform:translate(-120%)}@keyframes news-glint{to{transform:translate(120%)}}.news-item.left .news-text,.news-item.note .news-text{color:var(--ui-fg-dim)}.news-mark{width:10px;height:10px;box-shadow:inset 0 0 0 2px var(--ui-fg-dim);border-radius:50%;flex:none}@keyframes news-in{0%{opacity:0;transform:translate(-12px)}}.panel-backdrop.redrawn *,.panel-backdrop.redrawn :before{animation:none!important}.hole-chip.pending .hole-chip-score{font-style:italic;font-weight:600}.summary-waiting{text-align:center;color:var(--ui-fg-dim);margin:0 0 10px;font-size:13px;font-weight:700}.ranking .rk-score.playing{color:var(--ui-fg-dim);white-space:nowrap;font-size:12px;font-weight:700}@media (max-width:560px){.online-card .setup-row{flex-direction:column;align-items:stretch;gap:8px}.online-card .setup-row .segmented{width:100%}.online-card .setup-row .seg{flex:1;padding:8px 4px}.online-course{align-items:stretch}.online-course .segmented{flex-direction:column}.online-course .seg+.seg{border-left:none;border-top:1px solid var(--ui-border)}.online-course-line{text-align:left}}@media (max-width:600px),(max-height:480px){.hud-players.online{min-width:0}.hud-players .hud-pl{gap:7px;padding:2px 5px;font-size:12px}.online-news .news-item:not(:last-child){display:none}}@media (prefers-reduced-motion:reduce){.live-dot,.hud-pl-badge:before,.news-item{animation:none}.news-item.score:after{display:none}}.matches-button.your-turn{border-color:#f1c73fa6;box-shadow:0 0 0 1px #f1c73f59,0 6px 22px #f1c73f29}.matches-button.your-turn .online-button-hint{color:var(--ui-accent);opacity:.95}.turn-badge{background:var(--ui-accent);color:#2a2410;letter-spacing:.03em;border-radius:999px;padding:1px 8px;font-size:11px;font-weight:800;animation:2.6s ease-in-out infinite turn-pulse}@keyframes turn-pulse{50%{box-shadow:0 0 0 4px #f1c73f2e}}.matches-card{width:min(94vw,560px)}.match-list-note{color:var(--ui-fg-dim)}.match-list{gap:8px;max-height:min(52vh,420px);margin-bottom:16px;display:grid;overflow-y:auto}.match-row{align-items:stretch;gap:6px;animation:.25s ease-out card-in;display:flex}.match-row-open{border:1px solid var(--ui-border);min-width:0;color:var(--ui-fg);font:inherit;text-align:left;cursor:pointer;background:#ffffff0f;border-radius:14px;flex:1;grid-template-columns:minmax(0,1fr) auto;gap:3px 12px;padding:10px 14px;display:grid}:is(.match-row-open:hover,.match-row-open:focus-visible){background:#ffffff1a}.match-row[data-turn=play] .match-row-open{background:#f1c73f1a;border-color:#f1c73f99}.match-row[data-turn=over] .match-row-open{opacity:.72}.match-row-head{white-space:nowrap;align-items:baseline;gap:10px;min-width:0;display:flex;overflow:hidden}.match-row-game{text-overflow:ellipsis;font-weight:800;overflow:hidden}.match-row-vs{color:var(--ui-fg-dim);align-items:center;gap:6px;font-size:13px;font-weight:700;display:inline-flex}.match-row-score{text-align:right;color:var(--ui-accent);white-space:nowrap;font-size:13px;font-weight:800}.match-row-score.even{color:var(--ui-fg)}.match-row-score.down{color:#ffc2b8}.match-row-turn{font-size:13px;font-weight:700}.match-row[data-turn=play] .match-row-turn{color:var(--ui-accent)}.match-row-meta{text-align:right;color:var(--ui-fg-dim);white-space:nowrap;font-size:12px;font-weight:600}.match-row-remove{border:1px solid var(--ui-border);width:34px;color:var(--ui-fg-dim);cursor:pointer;background:#ffffff0a;border-radius:12px;flex:none;font-size:18px}.match-row-remove:hover{color:var(--ui-fg);background:#ff9b8a24}.match-card{text-align:center;width:min(92vw,440px)}.match-card .menu-row{justify-content:space-between}.match-card-body{flex-direction:column;align-items:center;gap:12px;margin-bottom:18px;display:flex}.match-card .online-game-line{margin:-8px 0 0}.match-versus{justify-content:center;align-items:center;gap:12px;max-width:100%;font-weight:800;display:flex}.match-side{white-space:nowrap;text-overflow:ellipsis;align-items:center;gap:7px;min-width:0;display:inline-flex;overflow:hidden}.match-side.open{color:var(--ui-fg-dim);font-weight:600}.match-news{background:#ffffff0f;border-radius:14px;gap:2px;padding:10px 18px;font-size:14px;font-weight:700;display:grid}.match-news .duel-title{font-family:var(--ui-display);font-size:24px}.match-news.won{background:#f1c73f1f}.match-card .match-status{margin:0}.match-turn{justify-items:center;gap:6px;max-width:340px;line-height:1.4;display:grid}.match-turn strong{font-size:18px}.match-turn.yours strong{color:var(--ui-accent)}.match-turn .online-ball{margin:0 auto 2px}.match-turn .invite{width:100%;margin-top:4px}.async-note{text-align:center;color:var(--ui-fg-dim);margin:2px 0 6px;font-size:13px;font-weight:600;line-height:1.4}@media (max-width:560px){.match-row-open{padding:9px 11px}.match-row-head{flex-direction:column;gap:1px}.match-row-turn,.match-row-meta{text-align:left;grid-column:1/-1}}@media (max-height:500px) and (orientation:landscape){.match-list{max-height:46vh}.match-card-body{gap:8px;margin-bottom:10px}.match-turn .online-ball{display:none}}@media (prefers-reduced-motion:reduce){.turn-badge{animation:none}}.toast.great{color:#2a1d02;box-shadow:0 0 0 1px #ffecaae6, 0 0 var(--gold-glow,14px) rgba(255, 190, 40, var(--gold-glow-alpha,.55)), var(--ui-shadow);background:linear-gradient(#fff1b8 0%,#ffd257 45%,#f2a414 100%);animation:.32s cubic-bezier(.2,1.4,.4,1) gold-pop;position:relative;overflow:hidden}.toast.great:after{content:"";pointer-events:none;background:linear-gradient(105deg,#0000 30%,#ffffffd9 48%,#0000 66%);animation:.7s ease-out 80ms forwards gold-sheen;position:absolute;inset:0;transform:translate(-120%)}.toast.great.gold-2{--gold-glow:18px;--gold-glow-alpha:.62}.toast.great.gold-3{--gold-glow:22px;--gold-glow-alpha:.7}.toast.great.gold-4{--gold-glow:26px;--gold-glow-alpha:.78}.toast.great.gold-5{--gold-glow:32px;--gold-glow-alpha:.88}.toast-badge{color:#ffd257;letter-spacing:.04em;box-shadow:0 0 0 1.5px #ffcc3d, 0 0 var(--gold-glow,10px) #ffbe2880;background:#2a1d02;border-radius:999px;margin-top:-5px;padding:2px 10px;font-size:12px;font-weight:800;transition:opacity .4s,transform .4s;animation:.36s cubic-bezier(.2,1.5,.4,1) 60ms backwards gold-pop}.toast-badge.gold-3{--gold-glow:14px}.toast-badge.gold-4{--gold-glow:18px}.toast-badge.gold-5{--gold-glow:24px}.toast-badge.leaving{opacity:0;transform:translateY(-8px)}@keyframes gold-pop{0%{opacity:0;transform:scale(.6)}60%{opacity:1}}@keyframes gold-sheen{to{transform:translate(120%)}}@media (prefers-reduced-motion:reduce){.toast.great,.toast-badge{animation:none}.toast.great:after{display:none}}.stat.gold{background:linear-gradient(#ffd2573d,#f2a4141f);box-shadow:inset 0 0 0 1px #ffcc3d80}.stat.gold .stat-value,.ranking td.rk-gold,.rk-stat.gold strong{color:#ffd257}@media (min-width:761px){.summary .stats{grid-template-columns:repeat(6,1fr)}}.setup-mode{margin:0 0 6px}.duel-setup{margin-top:4px;animation:.25s ease-out card-in}.duel-opps{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.duel-opp{border:1px solid var(--ui-border);min-width:0;color:var(--ui-fg);text-align:left;cursor:pointer;background:#ffffff0d;border-radius:12px;flex-direction:column;align-items:flex-start;gap:3px;padding:10px 12px 9px;display:flex}.duel-opp:hover{background:#ffffff17}.duel-opp.on{border-color:var(--ui-accent);box-shadow:inset 0 0 0 1px var(--ui-accent);background:#f1c73f1f}.duel-opp-head{align-items:center;gap:8px;min-width:0;display:flex}.duel-opp-dot{border-radius:50%;flex:none;width:14px;height:14px;box-shadow:0 0 0 2px #ffffffd9,0 1px 4px #0006}.duel-opp-name{text-overflow:ellipsis;white-space:nowrap;font-size:16px;font-weight:800;overflow:hidden}.duel-opp-level{letter-spacing:.08em;text-transform:uppercase;color:var(--ui-accent);font-size:11px;font-weight:800}.duel-opp-blurb{color:var(--ui-fg-dim);font-size:12px;line-height:1.3}.duel-opp-tally{color:var(--ui-fg-dim);font-variant-numeric:tabular-nums;margin-top:auto;padding-top:2px;font-size:11px;font-weight:700}.hud-pl-count[data-tone=up]{color:var(--ui-accent)}.hud-pl-count[data-tone=down]{color:var(--ui-bad)}.hud-pl-count[data-tone]{letter-spacing:.04em;text-transform:uppercase;font-size:12px}.duel-skip{left:50%;bottom:calc(26px + env(safe-area-inset-bottom,0px));background:var(--ui-panel);border:1px solid var(--ui-border);letter-spacing:.04em;color:var(--ui-fg-dim);white-space:nowrap;pointer-events:none;border-radius:999px;padding:7px 16px;font-size:12px;font-weight:700;transition:opacity .3s;position:absolute;transform:translate(-50%)}.duel-skip.off{opacity:0}.duel-hole.won .duel-title,.duel-summary.won .duel-title{color:var(--ui-accent);animation:1.4s ease-out duel-win}.duel-hole.lost .duel-title{color:var(--ui-fg-dim)}@keyframes duel-win{0%{text-shadow:0 0 #f1c73f00;transform:scale(.94)}25%{text-shadow:0 0 22px #f1c73fbf;transform:scale(1.03)}to{text-shadow:0 0 10px #f1c73f40;transform:scale(1)}}.duel-status{letter-spacing:.04em;color:var(--ui-fg);background:#ffffff14;border-radius:999px;align-self:center;margin:-8px 0 4px;padding:5px 14px;font-size:13px;font-weight:800;display:inline-block}.duel-status.up{color:#f7dd8a;background:#f1c73f2e}.duel-status.down{color:#ffc2b8;background:#ff9b8a24}.duel-status.final{font-size:15px}.duel-result{font-family:var(--ui-display);color:var(--ui-fg-dim);margin:-2px 0 12px;font-size:20px;font-style:italic}.duel-summary.won .duel-result{color:#f7dd8a}.duel-versus{grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:12px;margin:0 0 6px;display:grid}.duel-side{background:#ffffff0d;border-radius:14px;justify-items:center;gap:2px;min-width:0;padding:10px 8px;display:grid}.duel-side-name{align-items:center;gap:7px;max-width:100%;font-weight:800;display:flex}.duel-side-text{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.duel-level{letter-spacing:.05em;text-transform:uppercase;color:var(--ui-fg-dim);background:#ffffff1a;border-radius:6px;flex:none;padding:1px 6px;font-size:10px}.duel-side-score{color:var(--ui-fg-dim);font-variant-numeric:tabular-nums;font-size:13px}.duel-side-score strong{color:var(--ui-fg);font-size:22px}.duel-side-holes{letter-spacing:.04em;text-transform:uppercase;color:var(--ui-fg-dim);font-size:11px;font-weight:700}.duel-vs{font-family:var(--ui-display);color:var(--ui-fg-dim);font-style:italic}.duel-record{margin:6px 0 0;font-size:13px}.scorecard .sc-extra th,.scorecard .sc-extra td{text-transform:uppercase;white-space:nowrap;background:#2f5a3514;font-size:11px;font-weight:800}.scorecard .sc-extra td.up{color:#8a6a00}.scorecard .sc-extra td.down{color:#b33a2c}.scorecard .sc-extra td.even{color:#1f2f228c}.record-duels{gap:8px;margin-top:4px;display:grid}.record-duels .opt-label{justify-content:space-between;align-items:baseline;gap:10px;display:flex}@media (max-width:600px) and (orientation:portrait),(max-height:500px) and (orientation:landscape){.duel-skip{left:auto;right:var(--er);bottom:var(--eb);width:var(--swing-size);height:var(--swing-size);text-align:center;white-space:normal;border-radius:50%;place-items:center;padding:8px;font-size:11px;line-height:1.25;display:grid;transform:none}}@media (max-width:560px){.duel-opps{gap:6px}.duel-opp{padding:8px 8px 7px}.duel-opp-name{font-size:14px}.duel-opp-blurb{display:none}.duel-versus{gap:6px}}@media (prefers-reduced-motion:reduce){.duel-hole.won .duel-title,.duel-summary.won .duel-title{animation:none}}.pu-chips{flex-direction:column;align-items:flex-start;gap:6px;max-width:300px;display:flex}.pu-chips:empty{display:none}.pu-chip{--pu:#fff;--tier:#f4f8ff;background:var(--ui-panel-strong);border:1px solid #fff3;border:1px solid color-mix(in srgb, var(--tier) 45%, transparent);box-shadow:var(--ui-shadow);border-radius:999px;align-items:center;gap:9px;padding:5px 13px 5px 6px;line-height:1.25;transition:opacity .5s,filter .5s;display:flex}.pu-chip[data-kind=ultraDrive]{--pu:#ff9a4a}.pu-chip[data-kind=perfectAim]{--pu:#ffd24a}.pu-chip[data-kind=perfectChip]{--pu:#ff86c8}.pu-chip[data-kind=laserPutter]{--pu:#4fe3ff}.pu-chip[data-kind=magnetCup]{--pu:#c5f04a}.pu-chip[data-kind=waterSkipper]{--pu:#3ee6b0}.pu-chip[data-kind=windShield]{--pu:#b7c9dc}.pu-chip[data-kind=bunkerBlaster]{--pu:#e6bf7e}.pu-chip.tier-2{--tier:#4f95ff;border-color:var(--tier);border-color:color-mix(in srgb, var(--tier) 80%, transparent)}.pu-chip.tier-3{--tier:#b067ff;border-color:var(--tier);border-color:color-mix(in srgb, var(--tier) 85%, transparent)}.pu-chip.this{box-shadow:var(--ui-shadow), 0 0 14px color-mix(in srgb, var(--tier) 35%, transparent)}.pu-icon{flex:none;width:28px;height:28px}.pu-head{white-space:nowrap;align-items:center;gap:8px;display:flex}.pu-name{color:var(--ui-fg);font-size:14px;font-weight:800}.pu-pips{gap:3px;display:inline-flex}.pu-pips i{background:var(--tier);width:7px;height:7px;box-shadow:0 0 5px color-mix(in srgb, var(--tier) 60%, transparent);border-radius:50%}.pu-count{box-sizing:border-box;background:var(--tier);color:#fff;text-align:center;min-width:17px;box-shadow:0 0 6px color-mix(in srgb, var(--tier) 55%, transparent);border-radius:999px;padding:0 5px;font-size:11px;font-weight:800;line-height:15px}.pu-when{letter-spacing:.1em;text-transform:uppercase;color:var(--pu);font-size:10px;font-weight:800}.pu-blurb{color:var(--ui-fg-dim);white-space:nowrap;font-size:12px;font-weight:600}.pu-chip.used{opacity:.62;filter:saturate(.35);border-color:var(--ui-border)}.pu-chip.used .pu-when{color:var(--ui-fg-dim)}.pu-chip.next{opacity:.88}.pu-chip.pop{animation:1s ease-out pu-pop}@keyframes pu-pop{0%{opacity:0;transform:translate(-14px)scale(.85)}30%{opacity:1;box-shadow:var(--ui-shadow), 0 0 26px 4px color-mix(in srgb, var(--tier) 60%, transparent);transform:translate(0)scale(1.06)}to{transform:none}}.hud-pl-name.with-powers{align-items:center;max-width:none;display:flex;overflow:visible}.hud-pl-name.with-powers .hud-pl-text{text-overflow:ellipsis;min-width:0;max-width:120px;overflow:hidden}.hud-pl-powers{flex:none;gap:2px;margin-left:5px;display:inline-flex}.hud-pl-power{width:16px;height:16px;display:block}.hud-pl-power.next,.hud-pl-power-count.next{opacity:.55}.hud-pl-power-count{color:#c79bff;align-self:center;margin:0 2px 0 -1px;font-size:10px;font-weight:800;line-height:1}.meter.gold-band .meter-perfect{background:linear-gradient(#ffd24abf,#ffeca0f2 50%,#ffd24abf);box-shadow:inset 0 0 8px #fffadccc}.meter.gold-band .meter-track{box-shadow:var(--ui-shadow), 0 0 12px #ffd24a8c;border-color:#ffd24a}@media (max-width:600px) and (orientation:portrait),(max-height:500px) and (orientation:landscape){.pu-chips{gap:4px}.pu-chip{gap:7px;padding:3px 10px 3px 4px}.pu-icon{width:22px;height:22px}.pu-name{font-size:13px}.pu-pips i{width:6px;height:6px}.pu-count{min-width:15px;padding:0 4px;font-size:10px;line-height:14px}.pu-blurb{font-size:11px}.pu-chips.many{flex-flow:wrap}.pu-chips.many .pu-chip{gap:5px;padding:3px 8px 3px 3px}.pu-chips.many .pu-name,.pu-chips.many .pu-when,.pu-chips.many .pu-blurb{display:none}.pu-chips.many .pu-chip.next{opacity:.6}.hud-pl-name.with-powers .hud-pl-text{max-width:96px}.hud-pl-powers{gap:0;margin-left:4px}.hud-pl-power{width:14px;height:14px}.hud-pl-power+.hud-pl-power{margin-left:-3px}}@media (max-width:600px) and (orientation:portrait){.pu-chips{max-width:calc(100vw - var(--el) - var(--er) - 124px - 14px)}.pu-blurb{white-space:normal}}.race-clock{color:var(--ui-accent);font-variant-numeric:tabular-nums;font-size:22px;font-weight:800}.race-line{font-variant-numeric:tabular-nums;flex-wrap:wrap;justify-content:center;align-items:baseline;gap:4px 8px;margin:0 0 8px;font-weight:800;display:flex}.race-tag{color:var(--ui-accent);letter-spacing:.1em;text-transform:uppercase;background:#f1c73f2e;border:1px solid #f1c73f73;border-radius:999px;padding:2px 8px;font-size:11px}.race-left{color:var(--ui-fg-dim);font-weight:700}.race-score .summary-strokes{font-variant-numeric:tabular-nums}.race-score .summary-topar{color:var(--ui-fg-dim);font-size:18px}.race-best{color:var(--ui-fg-dim);margin:0 0 8px;font-weight:700}.race-place{font-family:var(--ui-display);margin:0 0 10px;font-size:20px;font-weight:700}.race-ranking .rk-score{font-variant-numeric:tabular-nums}.race-ranking .rk-score.playing{color:var(--ui-fg-dim);font-size:14px}.race-ranking tr.you .rk-player{text-underline-offset:3px;-webkit-text-decoration:underline #f1c73f99;text-decoration:underline #f1c73f99}.rk-gap{color:var(--ui-fg-dim);font-variant-numeric:tabular-nums}.rk-penalty{color:var(--ui-bad);font-size:11px;font-weight:700;display:block}.rk-bot{color:var(--ui-fg-dim);letter-spacing:.06em;text-transform:uppercase;background:#ffffff1a;border-radius:6px;padding:1px 6px;font-size:10px;font-weight:800}@media (max-width:520px){.race-ranking .rk-x{display:none}}:root{--safe-t:env(safe-area-inset-top,0px);--safe-r:env(safe-area-inset-right,0px);--safe-b:env(safe-area-inset-bottom,0px);--safe-l:env(safe-area-inset-left,0px);--edge:16px;--et:calc(var(--edge) + var(--safe-t));--er:calc(var(--edge) + var(--safe-r));--eb:calc(var(--edge) + var(--safe-b));--el:calc(var(--edge) + var(--safe-l))}html,body{overscroll-behavior:none;-webkit-tap-highlight-color:transparent;-webkit-touch-callout:none;-moz-text-size-adjust:100%;text-size-adjust:100%}.hud,.meter,.strike,.toasts,.banner{touch-action:none}button,.seg,.club-name,.shot-pill{touch-action:manipulation}.scorecard.more-right{-webkit-mask-image:linear-gradient(90deg,#000 calc(100% - 40px),#0000);mask-image:linear-gradient(90deg,#000 calc(100% - 40px),#0000)}.menus,.panel-backdrop,.panel,.scorecard{touch-action:pan-x pan-y;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}input,textarea{-webkit-user-select:text;user-select:text;touch-action:manipulation}.loading.failed{pointer-events:auto;text-align:center;place-content:center;justify-items:center;gap:14px;padding:24px;display:grid}.menus{padding:calc(24px + var(--safe-t)) calc(24px + var(--safe-r)) calc(24px + var(--safe-b)) calc(24px + var(--safe-l));flex-direction:column;align-items:center;display:flex}.menus>*{flex:none;margin:auto 0}@media (pointer:coarse){.fm-close kbd,.minimap-key{display:none}.minimap-level:before{content:"";position:absolute;inset:-7px -8px}.fm-zoom-button{min-width:44px;height:44px;font-size:20px}.fm-close,.menu-button.small,.seg,.menu-back,.profile-chip{min-height:44px}.setup-remove{position:relative}.setup-remove:after{content:"";position:absolute;inset:-8px}}.panel{max-height:calc(100vh - 24px);max-height:calc(100dvh - 24px)}.fullmap-backdrop,.panel-backdrop{padding:var(--safe-t) var(--safe-r) var(--safe-b) var(--safe-l)}@media (max-width:600px) and (orientation:portrait),(max-height:500px) and (orientation:landscape){:root{--edge:10px}.toast{padding:5px 12px;font-size:13px}.turn-card{border-radius:14px;padding:6px 16px}.turn-title{gap:8px;font-size:19px}.turn-title .hud-dot{width:11px;height:11px}.turn-sub{font-size:10px}.banner-title{font-size:clamp(38px,12vw,60px)}.banner-sub{font-size:13px}.debug-panel{display:none}}@media (max-width:600px) and (orientation:portrait){:root{--meter-h:min(34vh, 290px)}.toasts{--toast-shift:calc((clamp(96px, 28vmin, 124px) + 18px) / 2);top:34%;left:calc(50% - var(--toast-shift));max-width:calc(100vw - 2 * var(--el) - 2 * var(--toast-shift))}.toast{text-align:center;border-radius:16px}.turn-card{margin-top:20vh;padding:6px 14px}.turn-title{white-space:normal;text-align:center;text-wrap:balance;font-size:17px;display:block}.turn-title .hud-dot{vertical-align:.05em;margin-right:7px;display:inline-block}.banner{top:36%}}@media (max-height:500px) and (orientation:landscape){:root{--meter-h:clamp(120px, calc(100vh - 205px), 220px)}.meter.power-only{--meter-h:clamp(110px, calc(100vh - 250px), 220px)}.toasts{top:30%}.banner{top:50%}.banner-title{font-size:clamp(34px,11vh,52px)}}.menu-title{font-size:clamp(24px,6.4vw,30px)}.game-title{font-size:clamp(48px,15vw,104px)}@media (max-width:600px){.menus{padding:calc(12px + var(--safe-t)) calc(10px + var(--safe-r)) calc(12px + var(--safe-b)) calc(10px + var(--safe-l))}.menu-card,.menu-card.wide,.setup-card{border-radius:20px;width:100%;padding:20px 18px 18px}.menu-title{margin-bottom:12px}.setup-row,.opt-row{flex-direction:column;align-items:stretch;gap:8px}.setup-row .segmented,.opt-row .segmented{width:100%}.setup-row .seg,.opt-row .seg{flex:1;padding:8px 4px}.opt-row .slider{width:100%}.setup-player{grid-template-columns:16px minmax(0,1fr) 30px;row-gap:8px}.setup-player .tee-picker{grid-area:2/1/auto/-1}.setup-player .tee-picker .seg{flex:1}.menu-row{flex-wrap:wrap}.title-buttons{width:min(86vw,320px)}.panel{min-width:0;width:calc(100vw - 20px - var(--safe-l) - var(--safe-r));border-radius:18px;padding:16px 12px 14px}.panel h2{font-size:24px}.stats{gap:8px}.scorecard th,.scorecard td{width:38px;min-width:38px}.scorecard th:first-child{width:116px;min-width:116px;max-width:116px}.scorecard table{overflow:clip}.scorecard th:first-child{z-index:1;background-image:linear-gradient(270deg,#1f2f2224 1px,#0000 1px);position:sticky;left:0}.scorecard tr:not(.sc-head) th:first-child{background-color:#f1eee4}.scorecard .sc-par th:first-child{background-color:#e2e3d6}.scorecard.more-left th:first-child{background-image:linear-gradient(270deg,#1f2f2238 1px,#0000 1px),linear-gradient(270deg,#1f2f2224,#0000 10px)}.sc-where{padding:1px 4px;font-size:9px}.howto-row{flex-direction:column}}@media (max-height:500px) and (orientation:landscape){.menus{padding:calc(10px + var(--safe-t)) calc(16px + var(--safe-r)) calc(10px + var(--safe-b)) calc(16px + var(--safe-l))}.title-screen{gap:2px}.game-title{font-size:clamp(40px,13vh,64px)}.game-tagline{font-size:12px}.profile-chip{margin-top:8px}.title-buttons{grid-template-columns:1fr 1fr;gap:8px;width:min(92vw,580px);margin-top:12px;display:grid}.title-buttons .menu-button{padding:9px 14px}.title-buttons .primary,.title-buttons .continue-button{grid-column:1/-1}.course-select{width:min(94vw,780px)}.course-select .course-list{grid-template-columns:1fr 1fr;align-items:start;display:grid}.menu-card{padding:16px 22px 14px}.menu-title{margin-bottom:8px;font-size:24px}.opt-row,.setup-player{padding-top:5px;padding-bottom:5px}.menu-row{margin-top:10px}.panel{max-height:calc(100vh - 16px - var(--safe-t) - var(--safe-b));max-height:calc(100dvh - 16px - var(--safe-t) - var(--safe-b));padding:12px 16px 10px}.panel h2{font-size:22px}.scorecard{margin:4px 0 8px}.scorecard th,.scorecard td{padding:2px 4px}.scorecard .sc-score td,.scorecard.multi .sc-score td{height:26px}.sc-mark{width:20px;height:20px}}.title-fullscreen{display:none}@media (pointer:coarse){.title-fullscreen{top:var(--et);right:var(--er);border:1px solid var(--ui-border);z-index:1;background:#181e1ba8;border-radius:999px;align-items:center;min-height:44px;padding:0 14px;font-size:13px;font-weight:800;display:flex;position:fixed}}@supports (height:100dvh){@media (max-width:600px) and (orientation:portrait){:root{--meter-h:min(34dvh, 290px)}}@media (max-height:500px) and (orientation:landscape){:root{--meter-h:clamp(120px, calc(100dvh - 205px), 220px)}.meter.power-only{--meter-h:clamp(110px, calc(100dvh - 250px), 220px)}}}:root{--glass:linear-gradient(180deg, #28322ccc, #151c18db);--glass-solid:#161c19f7;--glass-edge:#ffffff26;--glass-shine:inset 0 1px 0 #ffffff1a;--card-shadow:0 12px 28px #00000038, 0 2px 6px #0000001f;--card-radius:22px;--club-w:304px;--spin-w:112px}.hud-panel,.strike,.hud-menu-toggle{background:var(--glass);border:1px solid var(--glass-edge);box-shadow:var(--glass-shine), var(--card-shadow)}.hud-left{top:var(--et);left:var(--el);max-width:calc(50vw - var(--el));pointer-events:none;flex-direction:column;align-items:flex-start;gap:8px;display:flex;position:absolute}.hud-left>.hud-panel,.hud-right>.hud-panel{position:relative}.hud-hole{letter-spacing:.01em;white-space:nowrap;border-radius:999px;align-items:center;height:42px;padding:0 18px;font-size:16px;font-weight:750;display:flex}.hole-tail{color:#fbfaf5db;white-space:pre;font-weight:650}.hud-hole .hole-name{font-family:var(--ui-display);color:var(--ui-fg-dim);margin-left:12px;font-size:15px;font-style:italic;font-weight:500}.hud-hole .hole-name:empty{display:none}.hud-target{white-space:nowrap;border-radius:999px;align-items:center;gap:16px;height:34px;padding:0 14px;font-size:13.5px;font-weight:700;display:flex}.tm-part{align-items:center;gap:6px;display:inline-flex;position:relative}.tm-part+.tm-part:before{content:"";background:var(--ui-fg-dim);border-radius:50%;width:3px;height:3px;margin-top:-1.5px;position:absolute;top:50%;left:-10px}.pin-icon,.wind-arrow,.elev-icon,.race-icon{flex:none;width:14px;height:14px;display:inline-block}.pin-icon svg,.wind-arrow svg,.elev-icon svg,.race-icon svg{width:100%;height:100%;display:block}.pin-icon svg{fill:var(--ui-red);stroke:#f4efe2;stroke-width:1.4px;stroke-linejoin:round}.wind-arrow{transition:transform .3s ease-out}.wind-arrow svg{fill:var(--ui-accent)}.wind-arrow.calm{opacity:.35}.elev-icon svg{fill:#9edc8e}.elev-icon.down svg{fill:#f0a868;transform:rotate(180deg)}.elev-icon.level{opacity:.35}.hud-race{border-radius:999px;align-items:center;gap:8px;height:34px;padding:0 14px;display:flex}.race-icon svg{fill:none;stroke:var(--ui-accent);stroke-width:1.6px;stroke-linecap:round}.hud-race .race-clock{font-size:17px}.minimap{top:72px;right:var(--er);background:var(--glass);border:1px solid var(--glass-edge);box-shadow:var(--glass-shine), var(--card-shadow);pointer-events:auto;cursor:zoom-in;touch-action:manipulation;border-radius:20px;padding:5px;transition:opacity .22s,transform .15s;position:absolute}.minimap:hover{transform:scale(1.015)}.minimap .map-canvas{border-radius:15px}.swing-pulling .minimap{opacity:var(--map-pull,.18);pointer-events:none}.swing-button{left:calc(var(--el) + var(--club-w) + (100vw - var(--el) - var(--er) - var(--club-w) - var(--spin-w)) / 2);bottom:calc(22px + var(--safe-b));background:var(--glass);box-shadow:var(--glass-shine), var(--card-shadow);letter-spacing:.04em;pointer-events:auto;touch-action:none;border:1px solid #ffffff4d;border-radius:999px;align-items:center;gap:10px;padding:12px 26px;font-size:17px;font-weight:800;transition:transform .12s,background .2s;display:flex;position:absolute;transform:translate(-50%)}.swing-button:hover{transform:translate(-50%)scale(1.03)}.meter{bottom:calc(20px + var(--safe-b))}@media (pointer:coarse){.hud-sheet kbd,.swing-button kbd{display:none}.swing-button{padding:16px 38px;font-size:19px}}.hud-right{z-index:2;top:var(--et);right:var(--er);pointer-events:none;align-items:flex-start;gap:8px;display:flex;position:absolute}.hud-score{white-space:nowrap;border-radius:999px;align-items:center;gap:10px;min-width:0;max-width:min(46vw,460px);height:44px;padding:0 16px;font-size:14px;font-weight:750;display:flex}.hud-score.many{cursor:pointer}.hp-entries{align-items:center;gap:14px;min-width:0;display:flex;position:relative;overflow:hidden}.hp{color:var(--ui-fg-dim);flex:none;align-items:center;gap:6px;display:inline-flex}.hp.active{color:var(--ui-fg)}.hp.cut{display:none}.hp-name{text-overflow:ellipsis;max-width:9em;overflow:hidden}.hp-score{color:var(--ui-accent);font-weight:800}.hp.offline .hud-dot{box-shadow:inset 0 0 0 2px}.hud-dot.solo{background:#fbfaf5}.hp-more{color:var(--ui-fg);background:#ffffff1f;border-radius:999px;flex:none;padding:2px 8px;font-size:12px;font-weight:800}.hp-badge{letter-spacing:.05em;text-transform:uppercase;color:var(--ui-fg-dim);flex:none;font-size:11px;font-weight:800}.hp-badge[data-tone=up],.hp-badge[data-tone=warn]{color:var(--ui-accent)}.hp-badge[data-tone=down]{color:var(--ui-bad)}.hud-right .hud-players{cursor:pointer;border-radius:18px;min-width:232px;max-width:min(40vw,340px);padding:6px 8px}.hud-buttons{pointer-events:auto;flex:none;position:relative}.hud-menu-toggle{border-radius:50%;place-items:center;width:44px;height:44px;padding:0;display:grid}.hud-menu-icon{gap:4px;display:grid}.hud-menu-icon i{background:var(--ui-fg);border-radius:1px;width:18px;height:2px;transition:transform .2s,opacity .2s;display:block}.hud-buttons.open .hud-menu-icon i:first-child{transform:translateY(6px)rotate(45deg)}.hud-buttons.open .hud-menu-icon i:nth-child(2){opacity:0}.hud-buttons.open .hud-menu-icon i:nth-child(3){transform:translateY(-6px)rotate(-45deg)}.hud-sheet{min-width:250px;max-height:calc(100vh - var(--et) - 44px - 16px - var(--safe-b));max-height:calc(100dvh - var(--et) - 44px - 16px - var(--safe-b));overscroll-behavior:contain;touch-action:pan-y;border:1px solid var(--glass-edge);background:var(--glass-solid);border-radius:20px;flex-direction:column;gap:2px;padding:8px;animation:.18s ease-out card-in;display:none;position:absolute;top:calc(100% + 8px);right:0;overflow-y:auto;box-shadow:0 18px 44px #00000057}.hud-buttons.open .hud-sheet{display:flex}.hud.sheet-open{z-index:6}.hud-sheet .hud-button{text-align:left;white-space:nowrap;background:0 0;border:none;border-radius:12px;align-items:center;gap:12px;min-height:44px;padding:0 12px;font-size:15px;font-weight:700;display:flex;position:relative}.hud-sheet .hud-button:hover,.hud-sheet .hud-button:active{background:#ffffff1a}.sheet-icon{color:#fbfaf5cc;flex:none;width:22px;height:22px}.sheet-icon svg{width:100%;height:100%;display:block}.sheet-label{flex:1}.hud-sheet kbd{flex:none}.sheet-group{margin-top:9px}.sheet-group:before{content:"";background:#ffffff1f;height:1px;position:absolute;top:-6px;left:12px;right:12px}.sheet-switch{background:#fff3;border-radius:999px;flex:none;width:36px;height:20px;transition:background .2s;position:relative}.sheet-switch i{background:#fff;border-radius:50%;width:16px;height:16px;transition:transform .2s;position:absolute;top:2px;left:2px;box-shadow:0 1px 3px #0000004d}.sheet-toggle.on .sheet-switch{background:#43b264}.sheet-toggle.on .sheet-switch i{transform:translate(16px)}.hud-sheet .hud-fullscreen:before{content:"";width:22px;height:22px;-webkit-mask:var(--icon-fullscreen) center / contain no-repeat;-webkit-mask:var(--icon-fullscreen) center / contain no-repeat;mask:var(--icon-fullscreen) center / contain no-repeat;background:#fbfaf5cc;flex:none}.hud-sheet{--icon-fullscreen:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 9V4h5M15 4h5v5M20 15v5h-5M9 20H4v-5'/%3E%3C/svg%3E")}.hud-club{left:var(--el);bottom:var(--eb);width:var(--club-w);border-radius:var(--card-radius);flex-direction:column;align-items:stretch;gap:8px;padding:10px 14px 12px;transition:opacity .25s;display:flex}.hud-club.inactive{opacity:.6}.club-head{align-self:center;height:54px;display:block}.club-head svg{filter:drop-shadow(0 4px 5px #00000059);width:auto;height:100%;display:block}.club-row{align-items:center;gap:6px;display:flex}.club-name{white-space:nowrap;background:0 0;border:none;flex:1;justify-content:center;align-items:baseline;min-width:0;padding:0;font-size:20px;font-weight:800;display:flex}.club-label{text-overflow:ellipsis;overflow:hidden}.club-name .club-carry{flex:none;font-weight:700}.club-name .club-carry:before{content:"·";color:var(--ui-fg-dim);margin:0 8px}.club-name .club-carry:empty:before{content:none}.club-arrow{border:1px solid var(--glass-edge);background:#ffffff12;border-radius:50%;flex:none;place-items:center;width:34px;height:34px;padding:0;font-size:20px;line-height:1;display:grid;position:relative}.club-arrow:hover{background:#ffffff29}.club-arrow:after{content:"";position:absolute;inset:-6px}.club-types{flex-wrap:wrap;justify-content:center;gap:5px;display:flex;position:relative}.shot-pill{color:#fbfaf5c7;touch-action:manipulation;background:#ffffff12;border:1px solid #ffffff29;border-radius:999px;min-width:48px;height:30px;padding:0 11px;font-size:12.5px;font-weight:750;position:relative}.shot-pill:hover{background:#ffffff24}.shot-pill.on{color:#2a2205;background:linear-gradient(#f6da70,#dfb133);border-color:#ffeeb0e6;box-shadow:0 2px 8px #dfb13359}.shot-pill:after{content:"";position:absolute;inset:-8px -3px}.shot-current{display:none}.club-meta{color:#fbfaf5d1;justify-content:center;align-items:center;gap:10px;font-size:13px;font-weight:700;display:flex}.range-steps{gap:6px;display:inline-flex}.range-step{z-index:1;border:1px solid var(--glass-edge);width:44px;height:30px;color:var(--ui-fg);touch-action:manipulation;background:#ffffff14;border-radius:999px;padding:0;font-size:12px;line-height:1;position:relative}.range-step:hover{background:#ffffff2e}.range-step:after{content:"";position:absolute;inset:-8px -1px}.club-lie{justify-content:center;min-height:24px;display:flex}.lie-badge{letter-spacing:.07em;text-transform:uppercase;white-space:nowrap;height:24px;text-shadow:none;border:1px solid;border-radius:999px;align-items:center;gap:6px;padding:0 12px;font-size:11.5px;font-weight:800;display:inline-flex}.lie-badge[data-tone=full]{color:#b9f3c8;background:#28965652;border-color:#78dc968c}.lie-badge[data-tone=cost]{color:#ffe390;background:#cd982242;border-color:#f0c85a8c}.lie-badge[data-tone=heavy]{color:#ffc58f;background:#d268244d;border-color:#f4985499}.lie-pct:before{content:"·";opacity:.75;margin-right:6px}.club-tip{color:var(--ui-accent);text-align:center;font-size:12.5px;font-weight:700}.club-lie:not(.tip) .club-tip,.club-lie.tip .lie-badge{display:none}.club-lie.tip{animation:.4s ease-out fade-in}.strike{right:var(--er);bottom:var(--eb);width:var(--spin-w);border-radius:var(--card-radius);pointer-events:auto;touch-action:none;flex-direction:column;align-items:center;gap:2px;padding:9px 8px 11px;display:flex;position:absolute}.strike-label{letter-spacing:.16em;text-transform:uppercase;color:var(--ui-fg-dim);font-size:11px;font-weight:800}.strike-stage{place-items:center;width:94px;height:76px;display:grid;position:relative}.strike-turns{color:#ffffff9e;pointer-events:none;position:absolute;inset:0}.strike-turns svg{width:100%;height:100%;display:block}.strike-ball{cursor:crosshair;background:radial-gradient(circle,#78786e3d 0 1.2px,#0000 1.7px) 0 0/5px 5px,radial-gradient(circle,#78786e3d 0 1.2px,#0000 1.7px) 2.5px 2.5px/5px 5px,radial-gradient(circle at 40% 34%,#fff 0%,#efefe8 42%,#cfcfc6 76%,#a8a89e 100%);border-radius:50%;width:58px;height:58px;position:relative;box-shadow:inset -5px -7px 12px #0003,0 6px 14px #00000059}.strike-ball:before{content:"";pointer-events:none;background:radial-gradient(circle at 34% 28%,#fffffff2 0 9%,#fff0 30%),radial-gradient(circle at 42% 38%,#0000 52%,#46463e52 100%);border-radius:50%;position:absolute;inset:0}.strike-cross{background:#00000029;height:1px;position:absolute;inset:50% 20% auto}.strike-arrow{pointer-events:none;color:#1c3a22cc;opacity:0;transition:opacity .15s;position:absolute;inset:0}.strike-arrow svg{width:100%;height:100%;display:block}.strike.shaped .strike-arrow{opacity:1}.strike-dot{background:radial-gradient(circle at 35% 32%,#ff8a7c,#d6372a 70%);border-radius:50%;width:12px;height:12px;margin:-6px 0 0 -6px;transition:left .12s,top .12s;position:absolute;top:50%;left:50%;box-shadow:0 0 0 2px #ffffffd9,0 0 8px #ff503c99}.strike-words{flex-direction:column;align-items:center;min-height:15px;display:flex}.strike-word{letter-spacing:.1em;text-transform:uppercase;white-space:nowrap;font-size:12px;font-weight:800}.strike.active .strike-word{color:var(--ui-accent)}.strike-also{letter-spacing:.08em;text-transform:uppercase;white-space:nowrap;color:var(--ui-fg-dim);font-size:10px;font-weight:700}.strike-also:empty{display:none}@media (max-width:600px) and (orientation:portrait),(max-height:500px) and (orientation:landscape){:root{--card-radius:20px}.hud-left{gap:6px}.hud-hole{height:44px;padding:0 14px;font-size:14px}.hud-hole .hole-name{display:none}.hud-target{gap:14px;height:32px;padding:0 12px;font-size:12.5px}.tm-part+.tm-part:before{left:-9px}.hud-race{height:32px}.hud-score{max-width:calc(100vw - var(--el) - var(--er) - 60px - var(--hole-w,170px));gap:8px;padding:0 12px;font-size:13px}.hp-entries{gap:10px}.hp-name{max-width:5.5em}.hud-right .hud-players{min-width:0;max-width:calc(100vw - var(--el) - var(--er));background:var(--glass-solid);position:absolute;top:calc(100% + 8px);right:0}.hud-players .hud-pl{gap:7px;padding:2px 5px;font-size:12px}.hud-pl-where{font-size:11px}.hud-sheet{min-width:236px}.minimap{border-radius:16px;padding:4px}.minimap .map-canvas{border-radius:12px}.minimap-level{gap:3px;padding:3px 5px 3px 6px;font-size:9px;top:6px;left:6px}.swing-button{left:calc(var(--el) + var(--club-w) + (100vw - var(--el) - var(--er) - var(--club-w) - var(--spin-w)) / 2);bottom:var(--eb);width:var(--swing-size);height:var(--swing-size);letter-spacing:.03em;background:radial-gradient(circle at 50% 35%,#426240eb,#1c2c20e6);border:2px solid #ffffff8c;border-radius:50%;justify-content:center;padding:0;font-size:17px}.swing-button:hover{transform:translate(-50%)}.swing-button:active{transform:translate(-50%)scale(.96)}.meter{left:auto;right:calc(var(--er) + var(--spin-w) / 2 - 15px);bottom:calc(var(--eb) + var(--spin-h) + 12px);transform:none}.meter-scale{text-align:right;left:auto;right:calc(50% + 22px)}.meter-scale span{left:auto;right:0}.meter-label{font-size:11px}.meter-caption{left:auto;right:0}.meter.power-only{right:calc(var(--er) + 56px);bottom:calc(var(--eb) + 26px)}.line-track{width:112px;height:15px}.strike-label{font-size:10px}.strike-word{letter-spacing:.08em;font-size:10.5px}.strike-also{font-size:9px}.hud-club{width:var(--club-w);gap:5px;padding:7px 7px 9px}.club-head{height:34px}.club-row{gap:0}.club-arrow{background:0 0;border:none;width:20px;height:32px;font-size:19px}.club-arrow:after{inset:-6px -12px}.club-name{white-space:normal;text-align:center;flex-direction:column;align-items:center;gap:1px;font-size:15px;line-height:1.1}.club-label{overflow-wrap:anywhere;max-width:100%}.club-name .club-carry{color:#fbfaf5cc;font-size:12.5px}.club-name .club-carry:before{content:none}.club-meta{text-align:center;flex-direction:column;gap:6px;font-size:12px}.lie-badge{letter-spacing:.05em;gap:5px;height:22px;padding:0 9px;font-size:10.5px}.lie-pct:before{margin-right:5px}.club-tip{font-size:11.5px}}@media (max-width:600px) and (orientation:portrait){:root{--club-w:min(150px, calc(50vw - var(--el) - 40px));--spin-w:84px;--spin-h:124px;--swing-size:76px;--meter-h:min(34vh, 290px, calc(58vh - var(--eb) - var(--spin-h) - 44px))}@supports (height:100dvh){:root{--meter-h:min(34dvh, 290px, calc(58dvh - var(--eb) - var(--spin-h) - 44px))}}.hud-left{max-width:calc(100vw - var(--el) - var(--er) - clamp(96px, 28vmin, 124px) - 22px)}.shot-current{color:#2a2205;background:linear-gradient(#f6da70,#dfb133);border:1px solid #ffeeb0e6;border-radius:999px;align-self:center;align-items:center;gap:6px;height:30px;padding:0 12px 0 14px;font-size:12.5px;font-weight:750;display:inline-flex;position:relative;box-shadow:0 2px 8px #dfb13359}.shot-current:after{content:"";position:absolute;inset:-8px -6px}.shot-caret{border-top:5px solid;border-left:4px solid #0000;border-right:4px solid #0000;width:0;height:0}.club-types{border:1px solid var(--glass-edge);background:var(--glass-solid);border-radius:18px;flex-flow:column;gap:6px;min-width:100%;padding:6px;animation:.16s ease-out card-in;display:none;position:absolute;bottom:calc(100% + 8px);left:0;box-shadow:0 14px 34px #00000052}.club-types.open{display:flex}.club-types .shot-pill{height:40px;font-size:14px}.club-types .shot-pill:after{inset:-4px -1px}.strike{width:var(--spin-w);padding:7px 5px 8px}.strike-stage{width:74px;height:62px}.strike-ball{width:48px;height:48px}}@media (max-width:340px) and (orientation:portrait){.hud-hole{padding:0 11px;font-size:13px}.hud-target{gap:11px;padding:0 10px;font-size:11.5px}.tm-part+.tm-part:before{left:-7px}.hud-score{padding:0 10px}}@media (max-height:500px) and (orientation:landscape){:root{--club-w:168px;--spin-w:146px;--spin-h:64px;--swing-size:68px}.hud-hole{height:40px}.hud-target{height:30px}.hud-buttons.open .hud-sheet{grid-template-columns:repeat(2,minmax(160px,auto));column-gap:4px;display:grid}.sheet-group{margin-top:0}.sheet-group:before{content:none}.club-head{height:28px}.club-types{gap:8px 4px;margin-top:4px}.shot-pill{min-width:48px;height:36px;padding:0 6px;font-size:11.5px}.shot-pill:after{inset:-4px -2px -5px}.strike{width:auto;min-width:var(--spin-w);grid-template-columns:auto auto;align-items:center;column-gap:6px;padding:4px 12px 4px 4px;display:grid}.strike-stage{grid-row:1/span 2;width:62px;height:54px}.strike-ball{width:44px;height:44px}.strike-label{place-self:end start}.strike-words{align-self:start;align-items:flex-start}.meter{right:calc(var(--er) + var(--spin-w) + 14px);bottom:calc(var(--eb) + 8px)}.meter.power-only{right:calc(var(--er) + clamp(96px, 28vmin, 124px) + 66px)}}:is(button,[role=button],.clickable).pressed:not(:disabled){scale:var(--press-scale,.96);filter:brightness(var(--press-brightness,.86));transition-duration:0s}.swing-button.pressed:not(:disabled){scale:none}.is-busy,.menu-button.busy{cursor:progress}.is-busy-frame,.menu-button.busy{position:relative}.is-busy:after,.menu-button.busy:after{content:"";opacity:0;pointer-events:none;width:6px;height:6px;animation:press-roll 1.3s cubic-bezier(.3, .1, .4, 1) var(--press-busy-after,.15s) infinite;background:radial-gradient(circle at 35% 32%,#fff 0 34%,#e4e7df 62%,#b9bfb1 100%);border-radius:50%;position:absolute;bottom:3px;left:9px;box-shadow:0 1px 1.5px #00000059}.menu-button.small.is-busy:after,.menu-button.small.busy:after{width:5px;height:5px;bottom:2px}@keyframes press-roll{0%{opacity:0;left:9px}10%{opacity:1}80%{opacity:1}to{opacity:0;left:calc(100% - 16px)}}@media (prefers-reduced-motion:reduce){.is-busy:after,.menu-button.busy:after{animation:press-wait 1.6s ease-in-out var(--press-busy-after,.15s) infinite;left:calc(50% - 3px)}@keyframes press-wait{0%,to{opacity:.35}50%{opacity:1}}}.menus .menu-card.framed{flex-direction:column;max-height:100%;padding:0;display:flex;overflow:hidden}.menu-head{border-bottom:1px solid #0000;flex:none;align-items:center;gap:12px;min-height:68px;padding:12px 24px 10px 14px;transition:border-color .2s,box-shadow .2s;display:flex}.menu-card.framed .menu-title{overflow-wrap:anywhere;min-width:0;margin:0;line-height:1.12}.menu-head.no-arrow{padding-left:30px}.framed.scrolled .menu-head{border-bottom-color:#ffffff14;box-shadow:0 10px 18px -14px #0009}.menu-arrow{border:1px solid var(--ui-border);width:44px;height:44px;color:var(--ui-fg);touch-action:manipulation;background:#ffffff0f;border-radius:50%;flex:none;place-items:center;padding:0;transition:background .15s,border-color .15s,transform .12s;display:grid}.menu-arrow svg{width:22px;height:22px;margin-left:-2px}:is(.menu-arrow:hover,.menu-arrow:focus-visible){background:#ffffff29;border-color:#ffffff59;outline:none}.menu-arrow:active{transform:scale(.94)}.menu-body{overscroll-behavior:contain;touch-action:pan-y;-webkit-overflow-scrolling:touch;flex:auto;min-height:0;padding:4px 30px 22px;overflow-y:auto}.menu-foot{background:#08120c59;border-top:1px solid #ffffff14;flex-wrap:wrap;flex:none;justify-content:flex-end;align-items:center;gap:10px;padding:12px 24px 16px;display:flex}.framed.more .menu-foot{box-shadow:0 -12px 18px -14px #000000a6}.menu-body>.menu-row:last-child{margin-bottom:0}@media (max-width:600px){.menu-head{gap:8px;min-height:60px;padding:8px 14px 6px 8px}.menu-head.no-arrow{padding-left:18px}.menu-body{padding:2px 16px 16px}.menu-foot{padding:10px 14px 12px}}@media (max-height:500px) and (orientation:landscape){.menu-head{min-height:52px;padding:4px 18px 4px 8px}.menu-body{padding:2px 22px 12px}.menu-foot{padding:8px 18px 10px}}.menu-foot:empty{display:none}.title-small{flex-wrap:wrap;grid-column:1/-1;justify-content:center;gap:8px;display:flex}.title-small .menu-button{white-space:nowrap;flex:1 1 0;min-height:42px}.pause-card .title-buttons{width:100%;margin-top:4px}.menu-card.course-select{width:min(94vw,640px)}.course-select .course-list{flex-direction:column;gap:8px;display:flex}.course-row{text-align:left;background:#ffffff0d;border:1px solid #ffffff1a;border-radius:14px;grid-template-columns:96px minmax(0,1fr) auto;align-items:center;gap:14px;width:100%;min-height:72px;padding:8px 14px 8px 8px;transition:background .15s,border-color .15s,transform .12s;display:grid}:is(.course-row:hover,.course-row:focus-visible){background:#ffffff1f;border-color:#ffffff52;outline:none}.course-row:active{transform:scale(.99)}.course-row.last{border-color:#f1c73f8c}.course-row .nr-course-art{border-radius:10px;width:96px;height:58px;display:block;overflow:hidden}.course-row .nr-course-art svg{width:100%;height:100%;display:block}.course-row-text{gap:2px;min-width:0;display:grid}.course-row-name{font-family:var(--ui-display);font-size:19px;font-weight:700;line-height:1.15}.course-star{font-family:var(--ui-font);color:var(--ui-accent);vertical-align:super;margin-left:2px;font-size:15px;font-weight:800;line-height:0}.course-row-meta{color:var(--ui-fg-dim);font-size:12px}.course-row-side{text-align:right;justify-items:end;gap:4px;display:grid}.course-row-best{color:var(--ui-fg-dim);max-width:130px;font-size:12px;font-weight:700}.course-row-last{color:var(--ui-accent);letter-spacing:.06em;text-transform:uppercase;white-space:nowrap;background:#f1c73f2e;border-radius:999px;padding:2px 8px;font-size:10px;font-weight:800}.course-credits-note{border-top:1px solid #ffffff14;margin-top:18px;padding-top:12px}.course-credits-title{color:var(--ui-fg-dim);margin-bottom:6px;font-size:11px;font-weight:800}.course-credits-note .course-credits{margin:0 0 6px;line-height:1.4}.course-credits-name{font-weight:700}@media (max-width:600px){.course-row{grid-template-columns:64px minmax(0,1fr);gap:10px;padding:6px 10px 6px 6px}.course-row .nr-course-art{width:64px;height:48px}.course-row-side{text-align:left;grid-column:2;justify-items:start;gap:2px}.course-row-best{max-width:none}}@media (max-height:500px) and (orientation:landscape){.course-select{width:min(94vw,820px)}.course-select .course-list{grid-template-columns:1fr 1fr;display:grid}.course-row{grid-template-columns:64px minmax(0,1fr);min-height:64px}.course-row .nr-course-art{width:64px;height:48px}.course-row-side{text-align:left;grid-column:2;justify-items:start}}.tut-handbox{z-index:5;opacity:0;width:0;height:0;position:absolute;top:0;left:0}.tut-hand{filter:drop-shadow(0 6px 10px #00000059);width:160px;height:220px;position:absolute;top:-56px;left:-46px}.tut-hand svg{display:block}.tut-pointer{width:40px;height:52px;top:-4px;left:-4px}.tut-ripple-svg{position:absolute;top:-60px;left:-60px}.tut-ripple{fill:none;stroke:#fff;stroke-width:4px;opacity:0;transform-box:fill-box;transform-origin:50%}.drag-middle{pointer-events:none;z-index:3;position:absolute;inset:0}.drag-middle.hidden{display:none}.dm-svg{width:100%;height:100%;position:absolute;inset:0;overflow:visible}.dm-gauge{animation:.14s ease-out dm-in}.dm-ring,.dm-ring-top{transform-box:fill-box;transform-origin:50%;animation:.24s cubic-bezier(.2,.8,.3,1.25) dm-pop}@keyframes dm-in{0%{opacity:0}}@keyframes dm-pop{0%{transform:scale(.55)}}.dm-dial-rim,.dm-dial-track,.dm-dial-zone,.dm-dial-over,.dm-dial-perfect{fill:none;stroke-width:14px}.dm-dial-rim{stroke:#ffffffd9;stroke-width:18px;stroke-linecap:round}.dm-dial-track{stroke:#0a140ea8;stroke-linecap:round}.dm-dial-over{stroke:#e8554ea8}.dm-dial-perfect{stroke:#ffeeaaf7}.dm-dial-centre{stroke:#fffbe6;stroke-width:2px}.dm-dial-glow{fill:none;stroke:#ffc83c;stroke-width:30px;stroke-linecap:round;opacity:0;display:none}.dm-needle-glow{stroke:#ffffff57;stroke-width:11px;stroke-linecap:round}.dm-needle-line{stroke:#fff;stroke-width:4px;stroke-linecap:round}.dm-ring circle,.dm-ring path,.dm-ring-top path,.dm-ring-flash{fill:none}.dm-charge{opacity:0;transition:opacity .12s linear}.dm-charge-stop{stop-color:#fff6dc}.drag-middle.over .dm-charge-stop{stop-color:#ff5a48}.dm-ring-rim{stroke:#ffffff8c;stroke-width:11px}.dm-ring .dm-ring-track{fill:#0a140e7a;stroke:#0a140ec7;stroke-width:8px}.dm-ring-over{stroke:#e8554eb3;stroke-width:8px}.drag-middle.putt .dm-ring-over{display:none}.dm-ring-fill{stroke:#fff;stroke-width:8px;stroke-linecap:round;transition:stroke .15s}.dm-ring-full{stroke:#fff;stroke-width:2.5px}.dm-ring-target{stroke:#a6e889fa;stroke-width:3px;stroke-linecap:round}.dm-ring-flash{stroke:#fff;stroke-width:3px;opacity:0;transform-box:fill-box;transform-origin:50%}.dm-ring-glow{stroke:#ff5a48;stroke-width:22px;display:none}.dm-readout{fill:#ffffffeb;font-family:var(--ui-font);letter-spacing:.02em;paint-order:stroke;stroke:#08120c73;stroke-width:2.5px;stroke-linejoin:round;font-size:13px;font-weight:700}.drag-middle.putt .dm-readout{font-size:12px}.dm-strand{stroke:#ffffffb8;stroke-width:2px;stroke-linecap:round}.dm-puck{fill:#ffffff29;stroke:#ffffffd9;stroke-width:2px}.dm-guide{fill:none;stroke:#ffffff8c;stroke-width:3px;stroke-dasharray:2 6;stroke-linecap:round}.drag-middle.full-pull .dm-guide{stroke:#ffd666d9;stroke-width:2.5px;stroke-dasharray:none}.drag-middle.cancels .dm-readout{fill:var(--ui-fg-dim)}.drag-middle.cancels .dm-needle,.drag-middle.cancels .dm-strand{opacity:.45}.drag-middle.over .dm-ring-fill{stroke:#ff8a78}.drag-middle.over .dm-ring-glow{animation:.9s ease-in-out infinite alternate dm-over;display:inline}.drag-middle.over .dm-strand,.drag-middle.over .dm-puck{stroke:#ff8c7af2}.drag-middle.over .dm-readout{fill:#ffb0a4}@keyframes dm-over{0%{opacity:.18}to{opacity:.42}}.drag-middle.released .dm-needle-line{stroke-width:5px}.drag-middle.perfect .dm-needle-line{stroke:#ffd257}.drag-middle.putt.perfect .dm-needle-line{stroke:#fffbe6}.drag-middle.good .dm-needle-line{stroke:#dfe9f7}.drag-middle.ok .dm-needle-line{stroke:#d47a3e}.drag-middle.putt.ok .dm-needle-line{stroke:var(--ui-accent)}.drag-middle.bad .dm-needle-line{stroke:#ee3a2a}.drag-middle.perfect .dm-dial-rim,.drag-middle.perfect .dm-ring-rim{stroke:#ffe68a}.drag-middle.perfect .dm-dial-glow{animation:.7s ease-out forwards dm-glow;display:inline}.drag-middle.released .dm-gauge{animation:.3s ease-in .6s forwards dm-out}@keyframes dm-glow{0%{opacity:0}20%{opacity:.95}to{opacity:.4}}@keyframes dm-out{to{opacity:0}}.drag-middle-on .hud .hud-club,.drag-middle-on .strike,.drag-middle-on .toasts{transition:opacity .2s}.drag-pulling .hud .hud-club,.drag-pulling .strike,.drag-pulling .toasts{opacity:0;pointer-events:none}@media (prefers-reduced-motion:reduce){.dm-gauge,.dm-ring,.dm-ring-top{animation:none}.drag-middle.over .dm-ring-glow{opacity:.3;animation:none}}.drag-swing{pointer-events:none;z-index:3;position:absolute;inset:0}.drag-swing.hidden{display:none}.drag-svg{width:100%;height:100%;position:absolute;inset:0;overflow:visible}.dial-rim,.dial-track,.dial-zone,.dial-over,.dial-perfect{fill:none;stroke-width:14px}.dial-rim{stroke:#fffc;stroke-width:18px;stroke-linecap:round}.dial-track{stroke:#0a140ea8;stroke-linecap:round}.dial-over{stroke:#e8554e9e}.dial-perfect{stroke:#ffeeaaf2}.dial-centre{stroke:#fffbe6;stroke-width:2px}.needle-glow{stroke:#ffffff61;stroke-width:11px;stroke-linecap:round}.needle-line{stroke:#fff;stroke-width:4px;stroke-linecap:round}.drag-readout{fill:var(--ui-fg);font-family:var(--ui-font);letter-spacing:.02em;paint-order:stroke;stroke:#08120c99;stroke-width:4px;stroke-linejoin:round;font-size:21px;font-weight:800}.drag-swing.over .drag-readout{fill:#ffb0a4}.drag-swing.cancels .drag-readout{fill:var(--ui-fg-dim);font-size:16px}.drag-swing.cancels .dial-needle,.drag-swing.cancels .band-line{opacity:.45}.bar-track{fill:#0a140eb3;stroke:#ffffffc7;stroke-width:1.5px}.bar-over{fill:#e8554e99}.drag-swing.putt .bar-over{display:none}.bar-fill{fill:#ffffffeb}.drag-swing.over .bar-fill{fill:#ffb0a4}.bar-full{stroke:#fff;stroke-width:2px}.bar-target{stroke:#a6e889fa;stroke-width:2.5px;stroke-dasharray:3 2}.band-line{stroke:#ffffffd1;stroke-width:3px;stroke-linecap:round}.drag-swing.over .band-line{stroke:#ff9b8aeb}.band-start{fill:#fff;stroke:#0000004d;stroke-width:1px}.band-finger{fill:#ffffff24;stroke:#fffc;stroke-width:2px}.drag-swing.released .needle-line{stroke-width:5px}.drag-swing.perfect .needle-line{stroke:#ffd257}.drag-swing.putt.perfect .needle-line{stroke:#fffbe6}.drag-swing.good .needle-line{stroke:#dfe9f7}.drag-swing.ok .needle-line{stroke:#d47a3e}.drag-swing.putt.ok .needle-line{stroke:var(--ui-accent)}.drag-swing.bad .needle-line{stroke:#ee3a2a}.drag-swing.perfect .dial-rim{stroke:#ffe68a}.dial-glow{fill:none;stroke:#ffc83c;stroke-width:30px;stroke-linecap:round;opacity:0;display:none}.drag-swing.perfect .dial-glow{animation:.7s ease-out forwards drag-glow;display:inline}.drag-swing.released .drag-gauge{animation:.3s ease-in .6s forwards drag-out}@keyframes drag-glow{0%{opacity:0}20%{opacity:.95}to{opacity:.4}}@keyframes drag-out{to{opacity:0}}.drag-caption{background:var(--ui-panel-strong);border:1px solid var(--ui-border);white-space:nowrap;color:var(--ui-fg);border-radius:999px;padding:4px 10px;font-size:12px;font-weight:700;position:absolute;top:0;left:0;translate:-50% -100%}.drag-caption:empty,.drag-swing.released .drag-caption{display:none}.menus .tut-card{flex-direction:column;width:min(100%,480px);height:min(100%,700px);max-height:100%;padding:0;display:flex;overflow:hidden}.tut-head{flex:none;justify-content:space-between;align-items:center;min-height:56px;padding:8px 12px 4px 20px;display:flex}.tut-count{letter-spacing:.08em;color:var(--ui-fg-dim);font-variant-numeric:tabular-nums;font-size:13px;font-weight:800}.tut-skip{min-height:42px;color:var(--ui-fg);letter-spacing:.02em;touch-action:manipulation;background:#ffffff24;border:1px solid #fff6;border-radius:999px;padding:0 18px;font-size:15px;font-weight:800;transition:background .15s,transform .12s}:is(.tut-skip:hover,.tut-skip:focus-visible){background:#ffffff42;outline:none}.tut-skip:active{transform:scale(.96)}.tut-viewport{touch-action:pan-y;flex:auto;min-height:0;overflow:hidden}.tut-track{height:100%;transition:transform .34s cubic-bezier(.2,.8,.2,1);display:flex}.tut-slide{visibility:hidden;flex-direction:column;flex:0 0 100%;justify-content:flex-start;gap:14px;min-width:0;padding:4px 18px 12px;transition:visibility 0s .34s;display:flex}.tut-slide.on{visibility:visible;transition-delay:0s}.tut-art{aspect-ratio:16/11;background:linear-gradient(#8ec9ea,#e9f5ee);border-radius:18px;flex:none;width:100%;position:relative;overflow:hidden;box-shadow:inset 0 0 0 1px #fff3,0 10px 26px #00000047}.tut-art>svg{width:100%;height:100%;display:block;position:absolute;inset:0}.tut-copy{text-align:center;padding:0 2px}.menus .tut-title{font-family:var(--ui-display);text-wrap:balance;margin:2px 0 8px;font-size:27px;line-height:1.12}.tut-copy p{color:#fbfaf5cc;margin:0;font-size:16px;line-height:1.45}.tut-foot{border-top:1px solid #ffffff14;flex:none;grid-template-columns:auto 1fr auto;align-items:center;gap:4px;padding:8px 14px 16px;display:grid}.tut-back{min-height:46px;color:var(--ui-fg-dim);background:0 0;border-color:#0000;justify-self:start;padding:0 12px}.tut-back.tut-hidden{visibility:hidden}.tut-next{touch-action:manipulation;justify-self:end;min-width:112px;min-height:50px;padding:0 20px}.menus .tut-card.last .tut-dots{display:none}.tut-card.last .tut-foot{grid-template-columns:auto 1fr;gap:10px}.tut-card.last .tut-next{justify-self:stretch}.tut-dots{justify-content:center;gap:0;display:flex}.tut-dot{touch-action:manipulation;background:0 0;border:none;width:22px;height:36px;padding:0;position:relative}.tut-dot:before{content:"";background:#ffffff4d;border-radius:4px;width:8px;height:8px;margin:-4px 0 0 -4px;transition:width .25s,margin .25s,background .25s;position:absolute;top:50%;left:50%}.tut-dot.on:before{background:#9ad768;width:20px;margin-left:-10px}@media (prefers-reduced-motion:reduce){.tut-track,.tut-slide,.tut-dot:before{transition:none}}@media (max-width:600px){.menus .tut-card{width:100%;height:100%}}@media (max-width:600px) and (max-height:760px){.tut-head{min-height:48px;padding-top:4px}.tut-art{aspect-ratio:16/10}.tut-slide{gap:12px;padding-top:2px}.menus .tut-title{margin-bottom:6px;font-size:24px}.tut-copy p{font-size:15px;line-height:1.4}.tut-foot{padding-bottom:10px}}@media (max-height:520px) and (orientation:landscape){.menus .tut-card{width:min(100%,880px)}.tut-head{min-height:46px;padding:4px 12px 0 20px}.tut-slide{flex-direction:row;justify-content:flex-start;align-items:center;gap:22px;padding:2px 20px 6px}.tut-art{aspect-ratio:16/10;flex:0 0 50%;width:auto;max-height:100%}.tut-copy{text-align:left;flex:1 1 0;min-width:0}.menus .tut-title{font-size:23px}.tut-copy p{font-size:15px;line-height:1.4}.tut-foot{padding:6px 14px 8px}.tut-next{min-height:44px}.tut-dot{height:28px}}@media (min-width:900px) and (min-height:720px){.menus .tut-card{width:min(100%,780px);height:min(100%,680px)}}.howto-watch{text-align:left;touch-action:manipulation;background:linear-gradient(#9ad76833,#5ea34529);border:1px solid #9ad7688c;border-radius:16px;grid-column:1/-1;align-items:center;gap:14px;padding:12px 16px;transition:background .15s,transform .12s;display:flex}:is(.howto-watch:hover,.howto-watch:focus-visible){background:linear-gradient(#9ad76852,#5ea34542);outline:none}.howto-watch:active{transform:scale(.99)}.howto-watch-play{background:linear-gradient(#9ad768,#5ea345);border-radius:50%;flex:none;width:44px;height:44px;position:relative}.howto-watch-play:after{content:"";border-top:10px solid #0000;border-bottom:10px solid #0000;border-left:15px solid #0f2410;position:absolute;top:12px;left:17px}.howto-watch-text{flex-direction:column;gap:2px;display:flex}.howto-watch-text strong{font-size:16px}.howto-watch-text span{color:var(--ui-fg-dim);font-size:13px}.tut-art.tut-shot{aspect-ratio:auto;min-height:0;box-shadow:none;background:0 0;border-radius:0;flex:1 1 0;justify-content:center;align-items:center;display:flex}.tut-frame{background:#24382a;border-radius:24px;flex:none;width:0;height:0;position:relative;overflow:hidden;box-shadow:0 0 0 3px #ffffff3d,0 12px 28px #0006}.tut-frame-desk{border-radius:14px}.tut-img{object-fit:cover;opacity:0;-webkit-user-drag:none;pointer-events:none;width:100%;height:100%;transition:opacity .22s;position:absolute;inset:0}.tut-img.on{opacity:1}.tut-layer{transform-origin:0 0;pointer-events:none;position:absolute;top:0;left:0}.tut-ov{position:absolute;top:0;left:0;overflow:visible}.tut-chips{pointer-events:none;position:absolute;inset:0}.tut-stem{width:100%;height:100%;position:absolute;inset:0}.tut-stem line{stroke:#fff;stroke-width:2.2px;stroke-linecap:round;filter:drop-shadow(0 1px 2px #00000080)}.tut-stem circle{fill:#f1c73f;stroke:#fff;stroke-width:2px}.tut-chip{color:#1f3d27;font:800 clamp(9px, calc(var(--k,.8) * 16px), 12.5px) / 1.2 var(--ui-font);white-space:nowrap;background:#fff;border-radius:999px;padding:4px 10px;position:absolute;transform:translate(-50%,-50%);box-shadow:0 3px 10px #0006}.tut-frame-desk .tut-chip{font-size:12px}.tut-flight{fill:none;stroke:#fff;stroke-width:4px;stroke-linecap:round}.tut-flight-glow{fill:none;stroke:#ffffff47;stroke-width:12px;stroke-linecap:round}.tut-ring{fill:#ffffff29;stroke:#fff;stroke-width:3px}.tut-trail line{stroke:#fff;stroke-width:4px;stroke-linecap:round;stroke-dasharray:1 10}.tut-trail path{fill:#fff}.tut-ball{fill:#fff;stroke:#00000047;stroke-width:1px;opacity:0}.tut-hole{fill:none;stroke:#fff;stroke-width:2.4px;opacity:0;transform-box:fill-box;transform-origin:50%}.tut-pulse{fill:#ffffff1f;stroke:#fff;stroke-width:4px;opacity:0;transform-box:fill-box;transform-origin:50%}.tut-perfect{z-index:6;opacity:0;font-family:var(--ui-display);color:#ffe27a;text-shadow:0 2px #0a140ed9,0 0 20px #ffd65a8c;white-space:nowrap;font-size:46px;font-style:italic;font-weight:700;line-height:1;position:absolute;transform:translate(-50%,-50%)}.tut-badge{opacity:0;transform-box:fill-box;transform-origin:50%}.tut-badge circle{fill:#2f5a35;stroke:#fff;stroke-width:3px}.tut-badge text{fill:#fbfaf5;font:800 22px var(--ui-font)}.tut-key-depth{fill:#c9c5b4}.tut-key-top rect{fill:#f6f3e8;stroke:#00000040;stroke-width:1.5px}.tut-key-top path{fill:none;stroke:#56654f;stroke-width:5px;stroke-linecap:round;stroke-linejoin:round}.tut-mark{fill:#f1c73f;stroke:#fff;stroke-width:2px;opacity:0}@media (max-height:520px) and (orientation:landscape){.tut-art.tut-shot{flex:none;align-self:stretch}}@media (prefers-reduced-motion:reduce){.tut-img{transition:none}}.loader{flex-direction:column;align-items:center;width:100%;display:flex}.loader-art{aspect-ratio:240/100;width:min(100%,300px);height:auto;display:block;overflow:visible}.loader-fringe{fill:#3b6b31}.loader-stripes rect{fill:#ffffff0f}.loader-trail{fill:none;stroke:#183e166b;stroke-width:3.2px;stroke-linecap:round}.loader-dots circle{fill:#ffffff8c;transition:opacity .35s}.loader-dots circle.gone{opacity:0}.loader-cup-hole{fill:#17211a}.loader-cup-wall{fill:none;stroke:#ffffff29;stroke-width:.8px}.loader-cup-lip{fill:none;stroke:#f0f2e8bf;stroke-width:.9px}.loader-ball-shadow{fill:#0a1e0a52}.loader-dimples circle{fill:#969e8c8c}.loader-stick{stroke:#f4f2e8;stroke-width:1.5px;stroke-linecap:round}.loader-pennant{fill:#d9574a;transform-box:fill-box;transform-origin:0%;animation:2.8s ease-in-out infinite loader-wave}.loader-flag{transform-box:view-box;transform-origin:194px 56px}.loader-ring{fill:none;stroke:#ffffff80;stroke-width:.8px;opacity:0;transform-box:fill-box;transform-origin:50%}.loader-art.dropped .loader-flag{animation:.7s ease-out loader-nod}.loader-art.dropped .loader-ring{animation:.65s ease-out loader-ring}@keyframes loader-wave{0%,to{transform:skewY(0)scaleX(1)}50%{transform:skewY(5deg)scaleX(.9)}}@keyframes loader-nod{0%{transform:rotate(0)}30%{transform:rotate(2.5deg)}60%{transform:rotate(-1.2deg)}to{transform:rotate(0)}}@keyframes loader-ring{0%{opacity:.8;transform:scale(1)}to{opacity:0;transform:scale(1.9)}}.loader-line{min-height:1.45em;color:var(--ui-fg-dim);text-align:center;margin:10px 0 0;font-size:14px;font-weight:600;line-height:1.45;transition:opacity .3s,transform .3s}.loader-line.out{opacity:0;transform:translateY(3px)}.loader-bar{background:#ffffff1f;border-radius:3px;width:min(70%,220px);height:5px;margin-top:10px;display:none;overflow:hidden}.loader-bar i{border-radius:inherit;background:#9ad768;width:0;height:100%;display:block}.loader.calm .loader-bar{display:block}.loader.calm .loader-ball,.loader.calm .loader-dots,.loader.calm .loader-trail{display:none}.loader.calm .loader-pennant,.loader.calm .loader-art.dropped .loader-flag,.loader.calm .loader-art.dropped .loader-ring{animation:none}.loader.calm .loader-line{transition:none}.loader.paused .loader-pennant{animation-play-state:paused}.loader-title{font-family:var(--ui-display);text-align:center;text-wrap:balance;margin-top:2px;font-size:22px;font-weight:700;line-height:1.25}.loader-title strong{color:var(--ui-accent);overflow-wrap:anywhere;font-weight:800}.loader-title .wait-name{white-space:nowrap}@media (max-width:340px){.loader-title .wait-name{white-space:normal}}.loader.paused .loader-line{visibility:hidden}.loader-card .online-wait-status{margin-top:10px}.loader-card:not(.reconnecting) .online-wait-status,.loader-card.reconnecting .loader-line{display:none}.loading{transition:opacity .35s}.loading .loader-card{color:var(--ui-fg);animation:none}.loading.gone{opacity:0}.nr-card.nr-extra{cursor:default;flex-direction:column;align-items:stretch;gap:8px;padding:10px 12px 11px}.nr-card.nr-extra:hover{transform:none}.nr-extra-head{color:inherit;font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;align-items:flex-start;gap:10px;padding:0;display:flex}.nr-extra-head:focus-visible{outline:2px solid var(--ui-accent);outline-offset:3px;border-radius:8px}.nr-levels{flex-direction:column;gap:6px;display:flex}.nr-level-row{flex-wrap:wrap;align-items:center;gap:5px;display:flex}.nr-level-group{grid-template-columns:repeat(auto-fit,minmax(70px,1fr));display:grid}.nr-level-label{letter-spacing:.04em;text-transform:uppercase;color:var(--ui-fg-dim);grid-column:1/-1;font-size:10.5px;font-weight:700}.nr-level{border:1px solid var(--ui-border);min-width:0;min-height:30px;color:var(--ui-fg-dim);font:inherit;white-space:nowrap;cursor:pointer;background:#ffffff0f;border-radius:999px;flex:auto;padding:4px 10px;font-size:12.5px;font-weight:700;transition:background .15s,border-color .15s,color .15s}:is(.nr-level:hover,.nr-level:focus-visible){color:var(--ui-fg);border-color:#ffffff59;outline:none}.nr-level.chosen{color:var(--ui-fg);border-color:#f1c73f8c}.nr-extra.on .nr-level.chosen{border-color:var(--ui-accent);color:#fbe7a6;background:#f1c73f38}.nr-extra:not(.on) .nr-levels{opacity:.6}.nr-level-hint{color:var(--ui-fg-dim);font-size:11.5px;line-height:1.3}.nr-extra.on .nr-level-hint{color:#f7dd8a}@media (max-width:600px){.nr-level{min-height:40px;padding:4px 8px;font-size:12px}}@media (max-height:500px) and (orientation:landscape){.nr-card.nr-extra{gap:6px;padding:8px 10px 9px}.nr-level{min-height:32px}}.nr-who{flex-direction:column;gap:8px;display:flex}.nr-lineup{flex-direction:column;gap:6px;display:flex}.nr-entry{grid-template-columns:16px minmax(0,1fr) auto 30px;grid-template-areas:"dot name extra x";min-height:52px}.nr-entry>.setup-dot{grid-area:dot}.nr-entry>.setup-name{grid-area:name}.nr-entry>.nr-entry-extra{grid-area:extra}.nr-entry>.setup-remove,.nr-entry>.setup-remove-space{grid-area:x}.nr-online-dot{background:conic-gradient(#ff8a5c,#5cc8f2,#ffd35c,#c7a2ff,#ff9ad2,#7fe0c9,#ff8a5c)}.nr-adds{flex-wrap:wrap;gap:8px;display:flex}.nr-add{touch-action:manipulation;background:#ffffff0a;border:1px dashed #ffffff52;border-radius:999px;align-items:center;gap:6px;min-height:44px;margin:0;padding:8px 14px 8px 10px;font-size:14px;font-weight:800;transition:background .15s,border-color .15s,opacity .15s;display:inline-flex}[data-testid=setup-add].nr-add{margin-top:0}:is(.nr-add:hover,.nr-add:focus-visible){background:#ffffff1f;border-color:#ffffff8c;outline:none}.nr-add-plus{background:var(--ui-accent);color:#1d2a1f;border-radius:50%;place-items:center;width:22px;height:22px;font-size:16px;font-weight:900;line-height:1;display:grid}.nr-add.off{opacity:.45}.nr-add.off .nr-add-plus{background:#ffffff73}.nr-lineup-hint{color:var(--ui-fg-dim);margin:0;font-size:12px}.nr-lineup-hint.why{color:var(--ui-accent);font-weight:700}.nr-bot-add .duel-opps{grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}.nr-bot-add .nr-bot.hidden{display:none}.nr-more{background:#ffffff08;border:1px solid #ffffff1a;border-radius:12px}.nr-more-summary{cursor:pointer;letter-spacing:.12em;text-transform:uppercase;min-height:44px;color:var(--ui-accent);align-items:center;gap:8px;padding:0 14px;font-size:12px;font-weight:800;list-style:none;display:flex}.nr-more-summary::-webkit-details-marker{display:none}.nr-more-summary:before{content:"";border-bottom:2px solid;border-right:2px solid;width:7px;height:7px;margin-right:2px;transition:transform .15s;transform:rotate(-45deg)}.nr-more[open] .nr-more-summary:before{transform:rotate(45deg)}.nr-more .setup-row{border-bottom:none;padding:4px 14px 12px}@media (max-width:600px){.nr-entry{grid-template-columns:16px minmax(0,1fr) 30px;grid-template-areas:"dot name x""extra extra extra"}.nr-entry-extra:empty{display:none}.nr-entry-extra .tee-picker{display:flex}.nr-add{flex:auto;justify-content:center;padding:8px 10px}.nr-bot-add .duel-opps{grid-template-columns:minmax(0,1fr)}}@media (max-height:500px) and (orientation:landscape){.nr-add{padding:6px 12px 6px 8px;font-size:13px}.nr-entry{min-height:44px}}.menu-card.new-round{width:min(96vw,1060px)}.nr-body{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start;gap:6px 26px;display:grid}.nr-col{flex-direction:column;gap:14px;min-width:0;display:flex}.nr-course{border:1px solid var(--ui-border);background:#ffffff0f;border-radius:16px;grid-template-columns:112px minmax(0,1fr) auto;align-items:center;gap:14px;padding:10px 12px 10px 10px;display:grid}.nr-course-art{border-radius:10px;width:112px;height:68px;display:block;overflow:hidden;box-shadow:0 2px 10px #00000040}.nr-course-art svg{width:100%;height:100%;display:block}.nr-course-name{font-family:var(--ui-display);font-size:22px;font-weight:700;line-height:1.15}.nr-course-meta{color:var(--ui-fg-dim);margin-top:2px;font-size:12px}.nr-question{flex-direction:column;gap:8px;display:flex}.nr-question-title{letter-spacing:.12em;text-transform:uppercase;color:var(--ui-accent);margin:0;font-size:12px;font-weight:800}.nr-cards{grid-template-columns:repeat(auto-fit,minmax(0,1fr));gap:8px;display:grid}.nr-cards-2{grid-template-columns:repeat(2,minmax(0,1fr))}.nr-cards-3{grid-template-columns:repeat(3,minmax(0,1fr))}.nr-cards-4{grid-template-columns:repeat(4,minmax(0,1fr))}.nr-card{border:1px solid var(--ui-border);min-width:0;color:var(--ui-fg);text-align:center;cursor:pointer;background:#ffffff0d;border-radius:14px;flex-direction:column;align-items:center;gap:2px;padding:10px 8px 9px;transition:background .15s,border-color .15s,transform .12s,box-shadow .15s;display:flex;position:relative}:is(.nr-card:hover,.nr-card:focus-visible){background:#ffffff1a;border-color:#ffffff4d;outline:none;transform:translateY(-1px)}.nr-card.on{border-color:var(--ui-accent);box-shadow:inset 0 0 0 1px var(--ui-accent), 0 6px 18px #0000002e;background:radial-gradient(at 50% 30%,#f1c73f33,#f1c73f14)}.nr-card.off{opacity:.55}.nr-card.off:hover{opacity:.85}.nr-art{width:52px;height:52px;color:var(--ui-fg);display:block}.nr-art svg{width:100%;height:100%;display:block;overflow:visible}.nr-card.on .nr-art{filter:drop-shadow(0 0 8px #f1c73f59)}.nr-card-title{letter-spacing:.01em;font-size:15px;font-weight:800}.nr-card-hint{color:var(--ui-fg-dim);font-size:11.5px;line-height:1.3}.nr-card-why{color:var(--ui-bad);font-size:11px;font-weight:700;line-height:1.25}.nr-card-why:empty{display:none}.nr-cards-small .nr-card{text-align:left;grid-template-columns:36px minmax(0,1fr);align-items:center;gap:1px 10px;padding:8px 10px;display:grid}.nr-cards-small .nr-art{grid-row:1/span 3;width:36px;height:36px}.nr-cards-small .nr-card-title{font-size:14px}.nr-sub{background:#ffffff0a;border:1px dashed #ffffff24;border-radius:12px;flex-wrap:wrap;align-items:center;gap:8px 12px;padding:10px 12px;animation:.25s ease-out card-in;display:flex}.nr-nine,.nr-quick{justify-content:space-between}.nr-quick-holes{flex-wrap:wrap;gap:6px;display:flex}.nr-hole{font-variant-numeric:tabular-nums;background:#a6e88924;border:1px solid #a6e88959;border-radius:999px;align-items:center;gap:6px;padding:4px 10px 4px 8px;font-weight:800;display:inline-flex}.nr-hole-flag{background:linear-gradient(90deg,#f4efe2 0 2px,#0000 2px),linear-gradient(#d9574a,#d9574a) 2px 0/8px 6px no-repeat;width:10px;height:12px}.nr-hole-par{color:var(--ui-fg-dim);font-size:11px;font-weight:700}.nr-bots{display:block}.nr-bots .setup-section{margin-top:0}.nr-bot-check{border:1px solid var(--ui-border);color:#0000;border-radius:50%;place-items:center;width:18px;height:18px;margin-left:auto;font-size:11px;font-weight:800;display:grid}.nr-bot.on .nr-bot-check{background:var(--ui-accent);border-color:var(--ui-accent);color:#2a2208}.nr-bots.single .nr-bot-check,.nr-bots:not(.single) .duel-opp-tally{display:none}.nr-friends{flex-direction:column;gap:8px;display:flex}.nr-flight{flex-direction:column;align-items:stretch}.nr-flight .online-form{margin:0}.nr-flight-row{flex-wrap:wrap;align-items:center;gap:6px 12px;display:flex}.nr-flight-foot{justify-content:space-between;align-items:center;gap:8px;display:flex}.nr-extras{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.nr-extra{text-align:left;flex-direction:row;align-items:flex-start;gap:10px;padding:10px 12px}.nr-extra .nr-art{flex:none;width:44px;height:44px}.nr-extra-text{flex-direction:column;flex:1;gap:3px;min-width:0;display:flex}.nr-extra .nr-card-title{align-items:center;gap:8px;display:flex}.nr-switch{background:#ffffff2e;border-radius:999px;flex:none;width:30px;height:17px;margin-left:auto;transition:background .15s;position:relative}.nr-switch>span{background:#fbfaf5;border-radius:50%;width:13px;height:13px;transition:transform .15s;position:absolute;top:2px;left:2px}.nr-extra.on .nr-switch{background:var(--ui-accent)}.nr-extra.on .nr-switch>span{transform:translate(13px)}.nr-chips{flex-wrap:wrap;gap:4px;margin-top:2px;display:flex}.nr-chip{color:var(--ui-fg-dim);background:#ffffff14;border-radius:999px;padding:2px 7px;font-size:10.5px;font-weight:700}.nr-extra.on .nr-chip{color:#f7dd8a;background:#f1c73f29}.nr-details{flex-direction:column;gap:6px;display:flex}.nr-details .setup-section{margin:0 0 6px}.nr-details .segmented{flex:none}.new-round .menu-foot{grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"summary start""error error";align-items:center;gap:4px 18px;padding-left:30px;display:grid}.nr-summary{font-family:var(--ui-display);grid-area:summary;margin:0;font-size:18px;font-style:italic;line-height:1.3}.new-round .menu-foot .menu-button{grid-area:start}.new-round .menu-foot .online-error{grid-area:error;margin-top:6px}@media (max-width:900px){.nr-body{flex-direction:column;align-items:stretch;gap:14px;display:flex}.nr-col{display:contents}.nr-course{order:1}.nr-q-length{order:2}.nr-q-scoring{order:3}.nr-q-opponents{order:4}.nr-q-extras{order:5}.nr-details{order:6}}@media (max-width:600px){.nr-course{grid-template-columns:76px minmax(0,1fr);gap:10px}.nr-course-art{width:76px;height:56px}.nr-course .menu-button{grid-column:1/-1}.nr-cards-3,.nr-cards-4{grid-template-columns:repeat(2,minmax(0,1fr))}.nr-cards-3>:last-child{grid-column:1/-1}.nr-art{width:42px;height:42px}.nr-extras,.nr-bots .duel-opps{grid-template-columns:minmax(0,1fr)}.new-round .menu-foot{gap:2px 12px;padding-left:14px}.new-round .menu-foot .menu-button{padding:10px 16px}.nr-summary{text-align:left;font-size:15px}}@media (max-height:500px) and (orientation:landscape){.menu-card.new-round{width:min(96vw,980px)}.nr-body{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:4px 18px;display:grid}.nr-col{gap:10px;display:flex}.nr-card{padding:6px}.nr-art{width:36px;height:36px}.nr-card-hint{font-size:10.5px}.nr-course-art{width:84px;height:50px}.nr-course{grid-template-columns:84px minmax(0,1fr) auto;padding:6px 8px}.nr-extras{grid-template-columns:minmax(0,1fr)}.nr-details .opt-hint{display:none}.nr-details .seg{padding:6px 9px}.new-round .menu-foot .menu-button{padding:8px 16px}.nr-summary{font-size:14px}}.language-card{text-align:center;width:min(92vw,480px)}.language-title{letter-spacing:.02em;color:var(--ui-fg-dim);text-wrap:balance;font-size:19px}.language-buttons{grid-template-columns:1fr 1fr;gap:12px;display:grid}.language-button{border-radius:16px;padding:20px 12px;font-size:20px}.language-hint{margin-top:16px;font-size:13px}@media (max-width:340px){.language-buttons{grid-template-columns:1fr}}@media (max-height:440px){.language-card{padding:18px 22px 16px}.language-title{margin-bottom:10px;font-size:16px}.language-button{padding:14px 12px;font-size:18px}.language-hint{margin-top:10px}}.skins-line{margin:4px 0 8px;font-size:15px;font-weight:800}.skins-line.won{color:#f7dd8a}.skins-line.tied,.skins-line.waiting{color:var(--ui-fg-dim)}.hud-skins{border-radius:999px;align-items:center;gap:8px;height:34px;padding:0 14px;display:flex}.hud-skins .skins-label{letter-spacing:.06em;text-transform:uppercase;color:var(--ui-fg-dim);font-size:11px;font-weight:800}.skins-stake{color:var(--ui-accent);font-size:15px;font-weight:800}@media (max-width:600px),(max-height:500px) and (orientation:landscape){.hud-skins{height:32px;padding:0 12px}.skins-stake{font-size:13px}}.skins-board{margin:0 0 12px}.skins-headline{font-family:var(--ui-display);color:#f7dd8a;text-align:center;margin:0 0 8px;font-size:22px;font-weight:800}.skins-rows{margin:0;padding:0;list-style:none}.skins-row{font-variant-numeric:tabular-nums;text-align:left;border-top:1px solid #ffffff14;grid-template-columns:28px 14px minmax(0,1fr) auto auto;align-items:center;column-gap:8px;padding:7px 8px;display:grid}.skins-row.winner{background:#f1c73f1f;border-top-color:#0000;border-radius:10px}.skins-name{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:15px;font-weight:800;overflow:hidden}.skins-holes{color:var(--ui-fg-dim);white-space:nowrap;font-size:12px}.skins-won{min-width:64px;color:var(--ui-accent);text-align:right;font-size:17px;font-weight:800}.skins-unclaimed{color:var(--ui-fg-dim);text-align:center;margin:8px 0 0;font-size:12.5px}@media (max-width:600px){.skins-row{grid-template-columns:28px 14px minmax(0,1fr) auto;row-gap:2px}.skins-holes{grid-area:2/3}.skins-won{grid-area:1/4/span 2}}.obs-backdrop{z-index:9;pointer-events:auto;background:#0c181075;justify-content:center;align-items:center;animation:.25s ease-out fade-in;display:flex;position:absolute;inset:0}.obs-card{color:#23402c;width:min(1240px,100% - 40px);height:min(800px,100% - 40px);text-shadow:none;font-variant-numeric:tabular-nums;background:linear-gradient(#f7f3e7,#efe8d6);border:1px solid #5a46282e;border-radius:18px;grid-template-rows:auto minmax(0,1fr);grid-template-columns:minmax(0,1fr) 272px;gap:10px 18px;padding:14px 18px 18px;display:grid;box-shadow:0 22px 64px #0000005c}.obs-head{grid-column:1/-1;align-items:center;gap:16px;min-height:32px;display:flex}.obs-title{align-items:baseline;gap:12px;min-width:0;display:flex}.obs-hole{font-family:var(--ui-display);white-space:nowrap;font-size:26px;font-weight:700}.obs-sub{color:#23402cb8;white-space:nowrap;font-size:14px;font-weight:700}.obs-placer{white-space:nowrap;background:#23402c14;border-radius:999px;align-items:center;gap:8px;margin-left:auto;padding:5px 12px;font-weight:800;display:flex}.obs-placer .hud-dot{box-shadow:0 0 0 1.5px #23402c80}.obs-leave{margin-left:0}.obs-mapbox{justify-content:center;align-items:center;min-width:0;min-height:0;display:flex;position:relative}.obs-map .map-canvas{touch-action:none;cursor:grab;border-radius:10px;position:relative;box-shadow:0 0 0 1px #283c1e59,0 6px 18px #2832142e}.obs-side{flex-direction:column;gap:8px;min-height:0;padding:2px 2px 2px 0;display:flex;overflow-y:auto}.obs-icon{flex:none;display:inline-flex}.obs-options{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.obs-options .obs-label{display:none}.obs-label{letter-spacing:.12em;text-transform:uppercase;color:#23402c94;font-size:10.5px;font-weight:800}.obs-seg{background:#ffffff80;border:1px solid #23402c3d;border-radius:9px;display:inline-flex;overflow:hidden}.obs-seg button{color:#23402c;cursor:pointer;background:0 0;border:none;border-right:1px solid #23402c29;min-width:27px;height:30px;padding:0 5px;font-size:13px;font-weight:800}.obs-seg button:last-child{border-right:none}.obs-seg button.on{color:#f7f3e7;background:#23402c}.obs-seg button:disabled{opacity:.4;cursor:default}.obs-turn button{font-size:17px}.obs-hint{color:#23402cb3;margin:0;font-size:12.5px;line-height:1.45}.obs-light{background:#23402c12;border-radius:11px;align-items:center;gap:9px;padding:9px 11px;font-size:13.5px;font-weight:800;display:flex}.obs-dot{background:#9aa39a;border-radius:50%;flex:none;width:13px;height:13px;box-shadow:0 0 0 1.5px #fffc}.obs-light[data-state=fair] .obs-dot{background:#3fae5a;box-shadow:0 0 0 1.5px #ffffffd9,0 0 10px #3fae5acc}.obs-light[data-state=unfair] .obs-dot,.obs-light[data-state=blocked] .obs-dot{background:#d6403a;box-shadow:0 0 0 1.5px #ffffffd9,0 0 10px #d6403ab3}.obs-light[data-state=unfair],.obs-light[data-state=blocked]{color:#8f2a22}.obs-light[data-state=tough] .obs-dot{background:#f1c232;box-shadow:0 0 0 1.5px #ffffffd9,0 0 10px #f1c232d9}.obs-light[data-state=tough]{color:#7a5a06;background:#f1c23229}.obs-light[data-state=checking] .obs-dot{background:#7f9fb8;animation:.8s ease-in-out infinite alternate obs-pulse}@keyframes obs-pulse{to{opacity:.35}}.obs-already{color:#23402ca8;margin:0;font-size:12.5px;font-weight:700}.obs-actions{grid-template-columns:1fr auto;align-items:center;gap:8px;margin-top:auto;display:grid}.obs-actions .obs-place-btn{grid-column:1/-1}.obs-overview .obs-actions{justify-content:flex-end;display:flex}.obs-card .btn{color:#23402c;cursor:pointer;background:#ffffffb3;border:1px solid #23402c47;border-radius:12px;padding:10px 16px;font-weight:800}.obs-card .btn.primary{color:#0f2410;background:linear-gradient(#8fcf5e,#5ea345);border-color:#23402c59}.obs-card .btn:disabled{opacity:.45;filter:grayscale(.6);cursor:default}.obs-place-btn{min-width:110px}.obs-link{color:#23402cb8;cursor:pointer;background:0 0;border:none;justify-self:start;padding:4px 2px;font-size:12.5px;font-weight:700;text-decoration:underline}.obs-backdrop.busy .obs-map .map-canvas{cursor:progress}.obs-card.obs-overview{flex-direction:column;gap:10px;width:min(620px,100% - 40px);height:auto;max-height:calc(100% - 40px);display:flex}.obs-rows{border-top:1px solid #23402c24;min-height:0;margin:0;padding:0;list-style:none;overflow-y:auto}.obs-row{border-bottom:1px solid #23402c1a;align-items:center;gap:14px;padding:7px 2px;display:flex}.obs-row-hole{width:64px;font-family:var(--ui-display);flex:none;font-size:17px;font-weight:700}.obs-row-list{flex-wrap:wrap;gap:6px 10px;display:flex}.obs-chip{background:#ffffffa6;border:1px solid #23402c24;border-radius:999px;align-items:center;gap:5px;padding:2px 9px 2px 3px;font-size:13px;font-weight:800;display:inline-flex}.obs-chip-by{filter:brightness(.72)saturate(1.3);font-weight:800}.obs-none{color:#23402c80;font-size:13px;font-weight:600}@media (max-width:760px) and (orientation:portrait){.obs-card{border-radius:0;grid-template-rows:auto minmax(0,1fr) auto;grid-template-columns:minmax(0,1fr);row-gap:8px;width:100%;height:100%;padding:10px 12px 12px}.obs-head{gap:10px}.obs-hole{font-size:21px}.obs-sub{display:none}.obs-placer{padding:4px 10px;font-size:13px}.obs-side{gap:8px;overflow:visible}.obs-hint,.obs-already{display:none}.obs-light{padding:7px 10px;font-size:12.5px}.obs-card .btn{padding:9px 13px}}@media (max-height:540px) and (orientation:landscape){.obs-card{border-radius:0;grid-template-columns:minmax(0,1fr) 236px;row-gap:6px;width:100%;height:100%;padding:8px 12px 10px}.obs-head{min-height:26px}.obs-hole{font-size:19px}.obs-sub{display:none}.obs-placer{padding:3px 10px;font-size:12.5px}.obs-side{gap:6px;overflow:hidden}.obs-options{gap:5px}.obs-hint,.obs-already,.obs-options .obs-label{display:none}.obs-seg button{min-width:26px;height:25px;padding:0 6px;font-size:12px}.obs-light{padding:5px 8px;font-size:11.5px}.obs-actions{grid-template-columns:1fr 1fr;gap:2px 6px}.obs-actions .obs-link{grid-column:1/-1}.obs-actions .obs-place-btn{grid-column:auto}.obs-card .btn{padding:7px 8px;font-size:13px}.obs-link{font-size:11px}}.obs-catalog{grid-template-columns:repeat(4,minmax(0,1fr));gap:5px;display:grid}.obs-group{flex-direction:column;gap:2px;min-width:0;display:flex}.obs-group[data-kinds="4"]{grid-column:span 4}.obs-group[data-kinds="2"]{grid-column:span 2}.obs-group-label{letter-spacing:.12em;text-transform:uppercase;color:#23402c94;padding-left:2px;font-size:10px;font-weight:800}.obs-group-items{grid-template-columns:repeat(var(--kinds,1), minmax(0, 1fr));gap:5px;display:grid}.obs-group[data-kinds="4"] .obs-group-items{grid-template-columns:repeat(4,minmax(0,1fr))}.obs-group[data-kinds="2"] .obs-group-items{grid-template-columns:repeat(2,minmax(0,1fr))}.obs-item{min-width:0;color:inherit;cursor:pointer;touch-action:manipulation;background:#ffffff8c;border:1px solid #23402c29;border-radius:11px;flex-direction:column;align-items:center;gap:2px;padding:4px 2px 3px;transition:background .15s,box-shadow .15s,transform .1s;display:flex}.obs-item:hover:not(:disabled){background:#fff}.obs-item:active:not(:disabled){transform:scale(.96)}.obs-item.on{background:#fff6d6;border-color:#c9962e;box-shadow:0 0 0 2px #c9962e59}.obs-item:disabled{opacity:.42;cursor:default}.obs-item-name{text-align:center;overflow-wrap:anywhere;max-width:100%;font-size:11px;font-weight:800;line-height:1.12}@media (max-width:760px) and (orientation:portrait),(max-height:540px) and (orientation:landscape){.obs-catalog{overscroll-behavior-x:contain;scroll-snap-type:x proximity;scrollbar-width:none;-webkit-overflow-scrolling:touch;gap:10px;padding-bottom:2px;display:flex;overflow-x:auto}.obs-catalog::-webkit-scrollbar{display:none}.obs-group{scroll-snap-align:start;flex:none}.obs-group-items{gap:5px;display:flex}.obs-item{flex:none;width:64px;padding:4px 2px 3px}.obs-item-name{font-size:10.5px}}@media (max-height:540px) and (orientation:landscape){.obs-item{border-radius:9px;gap:1px;width:52px;padding:3px 1px 2px}.obs-item .obs-icon svg{width:22px;height:22px}.obs-item-name{font-size:9.5px}.obs-group-label{font-size:8.5px}}.miss-tag{z-index:3;letter-spacing:.02em;white-space:nowrap;pointer-events:none;color:#ffb4a6;opacity:0;background:#161412b8;border-radius:999px;padding:3px 9px 4px;font-size:13px;font-weight:800;position:absolute;box-shadow:0 0 0 1px #ff78648c,0 4px 10px #0000004d}.miss-tag.ok{color:#f6c48c;box-shadow:0 0 0 1px #e8965099,0 4px 10px #0000004d}.miss-tag.at-right{transform:translate(8px,-50%)}.miss-tag.at-left{transform:translate(calc(-100% - 8px),-50%)}.miss-tag.at-above{transform:translate(-50%,calc(-100% - 6px))}.miss-tag.on{animation:miss-tag var(--miss-time,1.4s) ease-out forwards}@keyframes miss-tag{0%{opacity:0}10%{opacity:1}78%{opacity:1}to{opacity:0}}.swing-hint{z-index:2;pointer-events:none;width:0;height:0;position:absolute}.swing-hint.hidden{display:none}.swing-hint-label{text-align:center;color:#fbfaf5;width:210px;font:800 15px/1.2 var(--ui-font);background:#101e16d1;border:1px solid #ffffff4d;border-radius:22px;max-width:84vw;padding:9px 16px;position:absolute;top:-92px;left:0;transform:translate(-50%);box-shadow:0 6px 18px #00000059}.swing-hint-move{opacity:0;animation:2.6s ease-in-out infinite swing-hint-pull;position:absolute;top:0;left:0}@keyframes swing-hint-pull{0%{opacity:0;transform:translateY(0)}14%{opacity:1;transform:translateY(0)}68%{opacity:1;transform:translateY(120px)}84%{opacity:0;transform:translateY(120px)}to{opacity:0;transform:translateY(0)}}@media (prefers-reduced-motion:reduce){.swing-hint-move{opacity:1;animation:none;transform:translateY(60px)}}.strike-print,.strike-asked,.strike-way{pointer-events:none;opacity:0;position:absolute}.strike-print{background:repeating-linear-gradient(#0000 0 2.4px,#78140c8c 2.4px 3.3px),radial-gradient(#e2483a 0%,#c9372b 55%,#c9372b26 100%);border-radius:50%;width:15px;height:11px;margin:-5.5px 0 0 -7.5px;box-shadow:0 0 6px #e2483a8c}.strike.mark-ok .strike-print{background:repeating-linear-gradient(#0000 0 2.4px,#6e361280 2.4px 3.3px),radial-gradient(#d98a4a 0%,#b5602a 55%,#b5602a26 100%);box-shadow:0 0 6px #d8702e80}.strike.mark-fat .strike-print:after{content:"";background:radial-gradient(circle at 12% 40%,#5a3d26 0 1.8px,#0000 2.3px),radial-gradient(circle at 30% 75%,#4a3420 0 2.2px,#0000 2.7px),radial-gradient(circle at 52% 85%,#6b4a2e 0 1.6px,#0000 2.1px),radial-gradient(circle at 72% 70%,#3b2a1a 0 2px,#0000 2.5px),radial-gradient(circle at 90% 35%,#5a3d26 0 1.5px,#0000 2px);height:10px;position:absolute;top:5px;left:-6px;right:-6px}.strike-asked{border-radius:50%;width:12px;height:12px;margin:-6px 0 0 -6px;box-shadow:0 0 0 1.5px #ffffffe6}.strike-way{color:#c9372bd9;inset:0}.strike.mark-ok .strike-way{color:#b5602ad9}.strike-way svg{width:100%;height:100%;display:block;overflow:visible}.strike.marking .strike-dot,.strike.marking .strike-arrow{opacity:0}.strike.marking .strike-print{animation:strike-print var(--mark-time,1.4s) ease-out forwards}.strike.marking .strike-asked,.strike.marking.mark-side .strike-way{animation:strike-mark-fade var(--mark-time,1.4s) ease-out forwards}.strike.marking .strike-word{color:#ff9a8a}.strike.marking.mark-ok .strike-word{color:#f6c48c}.strike.mark-only{pointer-events:none}.strike.mark-only .strike-turns{opacity:.4}@keyframes strike-print{0%{opacity:0;transform:scale(1.9)}14%{opacity:1;transform:scale(1)}80%{opacity:1}to{opacity:0;transform:scale(1)}}@keyframes strike-mark-fade{0%,10%{opacity:0}22%,80%{opacity:1}to{opacity:0}}@media (prefers-reduced-motion:reduce){.strike.marking .strike-print{animation-name:strike-mark-fade}}.celebrate{--gold-hi:#fff4c6;--gold:#ffd257;--gold-deep:#ef9f12;--gold-dark:#b86f05;--cy:36%;pointer-events:none;z-index:5;transition:opacity var(--fade,.45s) ease-in;position:absolute;inset:0;overflow:hidden}.celebrate-sky{pointer-events:none;z-index:0;transition:opacity var(--fade,.45s) ease-in;position:absolute;inset:0;overflow:hidden}.celebrate.leaving,.celebrate-sky.leaving{opacity:0}.celebrate-center{left:50%;top:var(--cy);flex-direction:column;align-items:center;width:max-content;max-width:calc(100vw - 32px);display:flex;position:absolute;transform:translate(-50%,-50%)}.celebrate-word{font-family:var(--ui-display);letter-spacing:.005em;text-align:center;text-wrap:balance;filter:drop-shadow(0 2px #5c340080)drop-shadow(0 6px 20px #0000004d);font-size:clamp(42px,min(12.5vw,16vh),132px);font-style:italic;font-weight:700;line-height:1.04}.cw-word{white-space:nowrap;display:inline-block}.cw-letter{color:#0000;background-image:linear-gradient(105deg, transparent 38%, #fffffff2 50%, transparent 62%), linear-gradient(180deg, var(--gold-hi) 0%, var(--gold) 40%, var(--gold-deep) 76%, var(--gold-dark) 100%);animation:cw-pop .62s cubic-bezier(.2, 1.5, .35, 1) calc(var(--i) * 45ms) both, cw-sheen .85s ease-in-out calc(.5s + var(--i) * 40ms) both;background-position:90% 0,0 0;background-repeat:no-repeat;background-size:300% 100%,100% 100%;-webkit-background-clip:text;background-clip:text;margin:0 -.1em;padding:0 .1em;display:inline-block}.celebrate-eagle .cw-letter,.celebrate-grand .cw-letter{animation-duration:.7s,.95s}@keyframes cw-pop{0%{opacity:0;transform:translateY(.42em)scale(.3)rotate(-10deg)}50%{opacity:1}}@keyframes cw-sheen{0%{background-position:90% 0,0 0}to{background-position:10% 0,0 0}}.celebrate-sub{letter-spacing:.08em;text-transform:uppercase;text-shadow:0 1px 6px #00000073;margin-top:6px;font-size:16px;font-weight:700;animation:.45s ease-out .35s both c-sub}@keyframes c-sub{0%{opacity:0;transform:translateY(6px)}}.celebrate-ring{--size:min(64vw, 64vh, 560px);left:50%;top:var(--cy);width:var(--size);height:var(--size);margin:calc(var(--size) / -2) 0 0 calc(var(--size) / -2);background:radial-gradient(closest-side,#ffeca080,#ffc8463d 46%,#ffbe2800 72%);border-radius:50%;animation:1.25s cubic-bezier(.12,.7,.3,1) 50ms both c-ring;position:absolute;box-shadow:inset 0 0 0 2px #ffdc7899}@keyframes c-ring{0%{opacity:1;transform:scale(.18)}to{opacity:0;transform:scale(1.5)}}.celebrate-rays{--size:min(150vw, 150vh, 1250px);left:50%;top:var(--cy);width:var(--size);height:var(--size);margin:calc(var(--size) / -2) 0 0 calc(var(--size) / -2);animation:c-rays calc(var(--hold) + var(--fade)) ease-out .1s both;background:repeating-conic-gradient(#ffe49657 0deg 4deg,#ffe49600 8deg 20deg);position:absolute;-webkit-mask-image:radial-gradient(circle,#000 6%,#00000073 20%,#0000 42%);mask-image:radial-gradient(circle,#000 6%,#00000073 20%,#0000 42%)}.celebrate-grand .celebrate-rays{background:repeating-conic-gradient(#ffe4966b 0deg 4deg,#ffe49600 7deg 15deg)}@keyframes c-rays{0%{opacity:0;transform:rotate(-10deg)scale(.55)}18%{opacity:1}to{opacity:.7;transform:rotate(16deg)scale(1)}}.celebrate-glitter{--spread:min(46vw, 62vh, 430px);left:50%;top:var(--cy);width:0;height:0;position:absolute}.celebrate-grand .celebrate-glitter{--spread:min(50vw, 70vh, 520px)}.celebrate-glitter i{width:calc(11px * var(--s));height:calc(11px * var(--s));margin:calc(-5.5px * var(--s)) 0 0 calc(-5.5px * var(--s));opacity:0;animation:g-fly var(--t) cubic-bezier(.14, .62, .36, 1) var(--d) both;position:absolute;top:0;left:0}.g-dot{background:radial-gradient(circle, #fffbe8 0 26%, var(--gold) 50%, #ffbe2800 72%);border-radius:50%}.g-star{background:linear-gradient(160deg, #fffaf0, var(--gold) 70%);clip-path:polygon(50% 0,60% 40%,100% 50%,60% 60%,50% 100%,40% 60%,0 50%,40% 40%);transform-origin:50%}@keyframes g-fly{0%{opacity:0;transform:translate(0)scale(.3)rotate(0)}10%{opacity:1}58%{opacity:1;transform:translate(calc(var(--x) * var(--spread) * .86), calc(var(--y) * var(--spread) * .86 - 16px)) scale(1) rotate(calc(var(--r) * .6))}to{opacity:0;transform:translate(calc(var(--x) * var(--spread)), calc(var(--y) * var(--spread) + 40px)) scale(.5) rotate(var(--r))}}.celebrate-bird{opacity:0;width:clamp(150px,23vw,310px);animation:eagle-glide var(--glide) linear var(--enter) both;position:absolute;top:0;left:0;overflow:visible}.celebrate-grand .celebrate-bird{width:clamp(170px,27vw,360px)}@keyframes eagle-glide{0%{opacity:1;transform:translate(-32vw,19vh)rotate(4deg)scale(.8)}35%{transform:translate(20vw,12vh)rotate(12deg)scale(.92)}70%{transform:translate(64vw,8vh)rotate(18deg)scale(1.04)}to{opacity:1;transform:translate(112vw,3vh)rotate(24deg)scale(1.14)}}.eagle-flex{transform-box:fill-box;transform-origin:50% 40%;animation:eagle-beat 1.2s ease-in-out var(--enter) 2;transform:scaleY(.8)}@keyframes eagle-beat{0%,to{transform:scaleY(.8)}45%{transform:scale(.95,.6)}}.eagle-dark{fill:#2c251f}.eagle-white{fill:#f4f1e8}@media (max-width:600px) and (orientation:portrait){.celebrate{--cy:34%}.celebrate-sub{font-size:13px}.celebrate-bird{width:38vw}.celebrate-grand .celebrate-bird{width:44vw}}@media (max-height:500px) and (orientation:landscape){.celebrate{--cy:40%}.celebrate-sub{font-size:13px}}.celebrate.calm .cw-letter{animation:.5s ease-out both c-calm}.celebrate.calm .celebrate-sub{animation:.5s ease-out .15s both c-calm}@keyframes c-calm{0%{opacity:0}}@media (prefers-reduced-motion:reduce){.celebrate .cw-letter{animation:.5s ease-out both c-calm}.celebrate-rays,.celebrate-ring,.celebrate-glitter,.celebrate-bird{display:none}}.hub-choices{gap:10px;margin-top:18px;display:grid}.hub-choice{text-align:left;gap:2px;padding:12px 16px;display:grid}.hub-choice-title{font-size:17px}.hub-choice-hint{letter-spacing:0;color:var(--ui-fg-dim);font-size:12px;font-weight:600}.flight-list-card{width:min(94vw,560px)}.flight-list-note{color:var(--ui-fg-dim)}.flight-list{gap:8px;max-height:min(52vh,440px);display:grid;overflow-y:auto}.flight-list.empty{display:none}.flight-list-card.busy .flight-row{opacity:.6;cursor:progress}.flight-row{border:1px solid var(--ui-border);min-width:0;color:var(--ui-fg);font:inherit;text-align:left;cursor:pointer;background:#ffffff0f;border-radius:14px;gap:4px;padding:11px 14px;animation:.25s ease-out card-in;display:grid}:is(.flight-row:hover,.flight-row:focus-visible){background:#ffffff1a;outline:none}.flight-row.waiting{background:#f1c73f14;border-color:#f1c73f80}.flight-row-head{justify-content:space-between;align-items:baseline;gap:12px;min-width:0;display:flex}.flight-row-name{white-space:nowrap;text-overflow:ellipsis;font-weight:800;overflow:hidden}.flight-row-state{color:var(--ui-fg-dim);white-space:nowrap;flex:none;font-size:13px;font-weight:800}.flight-row.waiting .flight-row-state{color:var(--ui-accent)}.flight-row-facts,.flight-row-meta{color:var(--ui-fg-dim);font-size:12px;font-weight:600}.flight-row-players{flex-wrap:wrap;align-items:center;gap:4px 12px;font-size:13px;font-weight:700;display:flex}.flight-row-count{font-variant-numeric:tabular-nums;background:#ffffff1a;border-radius:999px;padding:0 7px;font-size:12px;font-weight:800}.flight-row-player{align-items:center;gap:5px;display:inline-flex}.flight-row-bot{letter-spacing:.06em;text-transform:uppercase;color:var(--ui-fg-dim);background:#ffffff1a;border-radius:5px;padding:0 5px;font-size:9.5px;font-weight:800}.flight-dot{border-radius:50%;width:9px;height:9px}.room-card .online-game-line{margin:-6px 0 12px}.room-line{color:var(--ui-fg-dim);flex-wrap:wrap;align-items:center;gap:6px 10px;margin:-6px 0 12px;font-size:13px;font-weight:600;display:flex}.room-tag{background:var(--ui-accent);color:#2a2410;letter-spacing:.06em;text-transform:uppercase;border-radius:999px;padding:2px 10px;font-size:11px;font-weight:800}.room-player .online-player-status{color:var(--ui-fg-dim)}.room-player.ready .online-player-status{color:var(--ui-good)}.room-host{color:var(--ui-accent);background:#f1c73f2e;border-radius:999px;padding:1px 7px}.room-hint,.room-card .invite{margin-top:12px}.room-card .menu-button.primary.on{color:var(--ui-good);background:#a6e88929;border-color:#a6e8898c}@media (max-width:560px){.flight-row{padding:10px 12px}.flight-row-head{flex-wrap:wrap}}@media (max-height:500px) and (orientation:landscape){.hub-card{width:min(94vw,720px)}.hub-choices{grid-template-columns:repeat(3,minmax(0,1fr));margin-top:12px}.hub-card .menu-text{margin-bottom:8px}.flight-list{max-height:46vh}.room-card{width:min(96vw,860px)}.room-body{grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);align-items:start;gap:0 22px;display:grid}.room-card .online-players{max-height:40vh}.room-card .menu-text{margin-bottom:8px}.room-side .setup-options{margin-top:0}.room-side .room-hint{margin-top:4px}}.room-card{width:min(96vw,920px)}@media (min-width:760px){.room-body{grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);align-items:start;gap:0 26px;display:grid}}.room-side .setup-options{margin-top:12px}.share-box{background:linear-gradient(#f1c73f21,#f1c73f0a);border:1px solid #f1c73f73;border-radius:16px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:14px;margin-top:4px;padding:14px;display:grid}.share-main{gap:10px;min-width:0;display:grid}.share-code{flex-wrap:wrap;align-items:baseline;gap:4px 12px;display:flex}.share-code-label{letter-spacing:.12em;text-transform:uppercase;color:var(--ui-fg-dim);font-size:11px;font-weight:800}.share-code-value,.code-input,.flight-row-name.code{font-variant-numeric:tabular-nums;font-family:ui-monospace,SF Mono,Menlo,Consolas,monospace}.share-code-value{letter-spacing:.14em;color:var(--ui-accent);font-size:42px;font-weight:800;line-height:1}.share-button{text-align:left;color:#2a2108;background:linear-gradient(#f6d977,#d9a92b);border-color:#ffffff8c;gap:2px;min-height:52px;padding:10px 16px;display:grid}:is(.share-button:hover,.share-button:focus-visible){background:linear-gradient(#fbe39a,#e2b43a)}.share-actions{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:8px;display:grid}.share-whatsapp{color:#06261a;background:linear-gradient(#5fd889,#2fae5c);border-color:#ffffff8c;text-decoration:none}:is(.share-whatsapp:hover,.share-whatsapp:focus-visible){background:linear-gradient(#7ee2a0,#3bbd6b)}.share-title{font-size:17px}.share-hint{letter-spacing:0;opacity:.75;font-size:12px;font-weight:700}.share-qr{justify-items:center;gap:4px;margin:0;display:grid}.share-qr svg{border-radius:10px;width:136px;height:136px;display:block;box-shadow:0 4px 16px #0000004d}.share-qr figcaption{letter-spacing:.04em;color:var(--ui-fg-dim);font-size:11px;font-weight:800}.hub-card{width:min(94vw,560px)}.hub-form{gap:12px;display:grid}.code-input{letter-spacing:.32em;text-transform:uppercase;font-size:30px;font-weight:800}.code-input::placeholder{color:#ffffff38}.hub-list-title{letter-spacing:.12em;text-transform:uppercase;color:var(--ui-accent);margin:18px 0 6px;font-size:12px;font-weight:800}.hub-card .flight-list{max-height:none;overflow:visible}.flight-list.busy .flight-row{opacity:.6;cursor:progress}.flight-row-name.code{letter-spacing:.12em;color:var(--ui-accent)}@media (max-width:600px){.room-body{flex-direction:column;display:flex}.room-side{display:contents}.share-box{order:-1;gap:10px;margin:0 0 12px;padding:12px}.share-code-value{font-size:34px}.share-qr svg{width:108px;height:108px}.hub-card .menu-foot .menu-button.small{flex:auto}}@media (max-height:500px) and (orientation:landscape){.share-box{gap:10px;padding:10px}.share-code-value{font-size:30px}.share-qr svg{width:92px;height:92px}.code-input{font-size:24px}.hub-list-title{margin-top:10px}}
