@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap');
:root{color-scheme:dark;font-family:'DM Sans',Arial,sans-serif;color:#f8f9ef;background:#172f29;font-synthesis:none;--lime:#dafa9a;--muted:#c7d1c6;--panel:rgba(19,43,34,.86)}*{box-sizing:border-box}body{margin:0;overflow:hidden}button{font:inherit;cursor:pointer;touch-action:manipulation}button:focus-visible,canvas:focus-visible{outline:2px solid var(--lime);outline-offset:5px}button:disabled{cursor:default;opacity:.55}#game{position:relative;height:100svh;min-height:520px;overflow:hidden;background:linear-gradient(#81b8d0,#d5e4db 67%,#a8b796)}#course{position:absolute;width:100%;height:100%;inset:0;outline:none;touch-action:none}.vignette{position:absolute;inset:0;pointer-events:none;background:linear-gradient(180deg,rgba(4,24,23,.3),transparent 25%,transparent 70%,rgba(10,25,18,.42))}.topbar{height:103px;padding:28px 36px;display:flex;align-items:center;justify-content:space-between;position:absolute;inset:0 0 auto;gap:24px}.brand{display:flex;gap:11px;align-items:center;font-family:Manrope,Arial,sans-serif;font-weight:800;letter-spacing:3px;font-size:21px}.brand-symbol{display:flex;font-size:39px;font-weight:400;letter-spacing:0;border-right:1px solid #ffffff4a;padding-right:13px;line-height:1}.brand div>span{display:block;font-size:10px;letter-spacing:4.6px;margin-top:3px}.round-label{display:flex;gap:5px;flex-direction:column;text-align:center;font-size:13px;color:#f0f5e7}.small-label{font-size:11px;font-weight:600;letter-spacing:1.6px;color:var(--muted)}.top-actions{display:flex;gap:10px;align-items:center}.icon-button,.outline-button{border:1px solid #ffffff55;background:#1b3e3426;color:white;height:40px;border-radius:7px}.icon-button{width:40px;font-size:20px;position:relative}.off-mark{position:absolute;left:19px;top:9px;font-size:19px;transform:rotate(20deg)}.outline-button{padding:0 15px;font-size:13px}.outline-button span{margin-left:15px;color:var(--lime)}.glass{background:var(--panel);border:1px solid #ecffe020;backdrop-filter:blur(20px);box-shadow:0 6px 30px #0c28101a;border-radius:12px}.hole-panel{position:absolute;top:122px;left:36px;width:280px;padding:22px}.hole-top{display:flex;justify-content:space-between}.hole-top .small-label:last-child{color:var(--lime)}h1{font-family:Manrope,Arial,sans-serif;font-size:23px;font-weight:500;margin:12px 0 16px;letter-spacing:-.6px}.hole-stats{display:flex;gap:18px;font-size:11px;letter-spacing:1px;color:#d7e0d3}.hole-stats b{font-weight:500;color:white}.difficulty{font-size:9px!important;border:1px solid #ffffff26;border-radius:3px;padding:3px 5px;margin-left:auto;margin-top:-3px}.hole-divider{height:1px;background:#ffffff1f;margin:20px 0 18px}.shot-stats{display:flex;justify-content:space-between}.shot-stats>div{display:flex;flex-direction:column;gap:6px}.shot-stats strong{font-family:Manrope,Arial,sans-serif;font-size:25px;font-weight:500;letter-spacing:-.8px}.shot-stats small{font-size:12px;font-weight:400;color:var(--muted);letter-spacing:0}.wind-panel{position:absolute;top:122px;right:36px;display:flex;align-items:center;gap:14px;padding:13px 19px;min-width:139px}.wind-panel>div:last-child{display:flex;flex-direction:column;gap:5px}.wind-panel strong{font-size:19px;font-weight:500}.wind-panel small{font-size:12px;font-weight:400;color:var(--muted)}.wind-arrow{width:38px;height:38px;border:1px solid #ffffff35;border-radius:50%;display:grid;place-items:center;font-size:28px;color:var(--lime)}.course-tools{position:absolute;top:213px;right:36px}.tool-button{color:#eff6e6;font-size:12px;padding:10px 13px;display:flex;gap:10px;align-items:center}.tool-button>span:first-child{font-size:18px;color:var(--lime)}kbd{font-family:inherit;border:1px solid #ffffff40;border-radius:4px;padding:2px 5px;font-size:10px;color:#f0f8e9;line-height:1.25}.map-panel{position:absolute;left:36px;bottom:175px;width:158px;padding:14px 13px 10px}.map-panel>div{display:flex;flex-direction:column;gap:5px}.map-panel .small-label{font-size:9px;letter-spacing:1.1px}#lieLabel{color:var(--lime);font-size:10px;letter-spacing:1px}#minimap{width:132px;height:153px;display:block;cursor:crosshair;margin:3px -1px 0}.map-caption{font-size:10px;color:#a9bdae;display:block;text-align:center}.shot-panel{position:absolute;bottom:54px;left:50%;transform:translateX(-50%);width:calc(100% - 72px);max-width:1060px;min-height:102px;padding:20px 22px;display:flex;gap:26px;align-items:center;border-radius:12px}.club-section{min-width:205px;padding-right:24px;border-right:1px solid #ffffff20}.club-section>.small-label{font-size:10px}.club-chooser{display:flex;align-items:center;gap:10px;justify-content:space-between;margin-top:5px}.club-chooser>div{display:flex;flex-direction:column;align-items:center;gap:3px}.club-chooser strong{font-family:Manrope,Arial,sans-serif;font-size:21px;font-weight:600}.club-chooser>div>span{font-size:11px;color:var(--muted)}.club-arrow{background:none;border:0;color:#bdcdbc;font-size:28px;padding:0 4px;line-height:1}.swing-section{flex:1;min-width:100px}.power-label{display:flex;align-items:center;justify-content:space-between;margin-bottom:9px}.power-label strong{font-size:20px;font-weight:500;font-variant-numeric:tabular-nums}.power-label strong span{font-size:11px;color:var(--muted);margin-left:3px}.power-label .small-label{font-size:10px}.power-track{height:12px;background:#ffffff17;border-radius:3px;position:relative;overflow:hidden}#powerFill{height:100%;width:0;background:var(--lime);border-radius:2px}.power-target{position:absolute;left:90%;width:8%;height:100%;border:1px solid #e5ffd0aa;background:#e5ffd027}.power-ticks{position:absolute;inset:0;background:repeating-linear-gradient(90deg,transparent,transparent calc(10% - 1px),#172b294d calc(10% - 1px),#172b294d 10%)}.power-caption{display:flex;justify-content:space-between;gap:12px;color:var(--muted);font-size:10px;margin-top:8px}.swing-button{align-self:stretch;min-width:236px;background:var(--lime);color:#213520;border:0;border-radius:7px;display:flex;align-items:center;justify-content:center;gap:13px;padding:0 18px;user-select:none;-webkit-user-select:none;touch-action:none;transition:background .2s}.swing-button:hover{background:#eaffba}.swing-button:active{background:#c5ef82}.swing-button kbd{color:#547041;border-color:#71905366;font-size:9px}.swing-icon{font-size:25px}.swing-button>span:nth-child(2){font-size:14px;font-weight:700}.bottom-note{position:absolute;bottom:21px;left:36px;right:36px;display:flex;justify-content:space-between;font-size:9px;letter-spacing:1.5px;color:#e1efcfb3;pointer-events:none}.aim-tip{position:absolute;left:50%;bottom:178px;transform:translateX(-50%);font-size:12px;display:flex;align-items:center;gap:5px;text-shadow:0 1px 5px #0009;white-space:nowrap;color:#f6ffe6;pointer-events:none}.aim-tip>span{font-size:19px;margin-right:5px}.toast{position:absolute;left:50%;top:125px;transform:translate(-50%,-8px);background:#19352dee;border:1px solid #c5e7aa55;border-radius:30px;padding:12px 22px;font-size:14px;color:#f4fbe7;pointer-events:none;opacity:0;transition:opacity .25s,transform .25s;max-width:80%;text-align:center}.toast.visible{opacity:1;transform:translate(-50%,0)}.flight-readout{position:absolute;right:36px;bottom:192px;text-align:right}.flight-readout strong{display:block;font-family:Manrope,Arial,sans-serif;font-size:48px;font-weight:400;letter-spacing:-2px}.flight-readout small{font-size:16px;letter-spacing:0}.flight-readout>span:last-child{font-size:10px;letter-spacing:2px;color:var(--lime)}.touch-aim{display:none}dialog{background:#182f27;border:1px solid #81946d55;border-radius:18px;color:#f8f9ef;padding:38px;width:min(520px,calc(100vw - 28px));max-height:90svh;box-shadow:0 25px 100px #0005}dialog::backdrop{background:#071c1466;backdrop-filter:blur(6px)}dialog h2{font-family:Manrope,Arial,sans-serif;font-size:36px;font-weight:500;letter-spacing:-1.5px;margin:12px 0 14px}dialog p{font-size:14px;line-height:1.6;color:#c7d6c7}.dialog-close{position:absolute;right:15px;top:12px;background:none;border:0;color:#c5d5c0;font-size:27px}.help-rows{margin:25px 0}.help-rows>div{display:flex;gap:20px;margin:18px 0}.help-rows b{font-size:11px;color:var(--lime);padding-top:4px}.help-rows strong{font-size:15px;font-weight:500}.help-rows p{margin:5px 0;font-size:13px;line-height:1.5}.help-foot{font-size:11px!important;border-top:1px solid #ffffff22;padding-top:15px}.primary-button{border:0;border-radius:7px;background:var(--lime);color:#1a3427;font-size:14px;font-weight:700;padding:16px 22px;width:100%;margin-top:10px}.text-button{border:0;background:none;color:#b6c9b2;width:100%;padding:18px 5px 0;font-size:13px}.result-stats{display:flex;justify-content:space-between;border-block:1px solid #ffffff25;margin:26px 0;padding:20px 0}.result-stats>div{display:flex;flex-direction:column;gap:10px}.result-stats strong{font-size:28px;font-weight:500;color:var(--lime)}#holeDialog{text-align:center}table{width:100%;border-collapse:collapse;font-size:13px;margin:24px 0}th{text-align:left;color:#bbcfb7;font-size:10px;letter-spacing:1px;font-weight:500}td,th{padding:12px 8px;border-bottom:1px solid #ffffff18}td:nth-child(n+3),th:nth-child(n+3){text-align:right}tfoot td{font-weight:700;color:var(--lime)}.current-row{background:#dafa9a0e}.error-screen{position:absolute;inset:0;z-index:10;display:flex;flex-direction:column;justify-content:center;align-items:center;background:#182f27;padding:30px;text-align:center}[hidden]{display:none!important}
@media(min-width:1500px){.topbar{padding:35px 48px}.hole-panel{left:48px;top:136px}.wind-panel{right:48px;top:136px}.course-tools{right:48px;top:231px}.map-panel{left:48px;bottom:180px;width:184px}#minimap{width:158px;height:184px}.shot-panel{bottom:56px;max-width:1150px}.bottom-note{left:48px;right:48px}.aim-tip{bottom:184px}}
@media(max-height:700px) and (min-width:761px){.topbar{height:80px;padding-top:18px}.hole-panel{top:92px;padding:17px;width:250px}.wind-panel{top:92px}.course-tools{top:180px}.hole-divider{margin:12px 0}.map-panel{bottom:172px;width:122px;padding:10px}.map-panel #minimap{width:100px;height:100px}.map-panel .map-caption{display:none}.hole-stats{gap:12px}.shot-panel{bottom:45px;min-height:94px}.aim-tip{bottom:154px}.bottom-note{bottom:17px}}
@media(max-width:900px){.round-label{display:none}.shot-panel{gap:16px;padding:17px}.club-section{min-width:155px;padding-right:16px}.swing-button{min-width:175px;gap:8px;padding:0 10px}.swing-button kbd{display:none}.map-panel{width:128px}#minimap{width:102px;height:128px}.map-caption{font-size:9px}.power-caption{font-size:9px}}
@media(max-width:760px){#game{min-height:480px}.topbar{height:76px;padding:20px}.brand{font-size:16px;letter-spacing:2px;gap:8px}.brand div>span{font-size:8px;letter-spacing:3px}.brand-symbol{font-size:29px;padding-right:9px}.top-actions{gap:6px}.icon-button{width:32px;height:32px;font-size:17px}.off-mark{left:15px;top:6px}.outline-button{height:32px;padding:0 10px;font-size:11px}.outline-button span{display:none}.hole-panel{top:88px;left:16px;width:191px;padding:14px}.small-label{font-size:9px}h1{font-size:19px;margin:10px 0 12px}.hole-stats{font-size:10px;gap:13px}.difficulty{display:none}.hole-divider{margin:13px 0 12px}.shot-stats strong{font-size:21px}.shot-stats .small-label{font-size:8px;letter-spacing:1px}.wind-panel{top:88px;right:16px;padding:10px;gap:9px;min-width:105px}.wind-arrow{width:29px;height:29px;font-size:23px}.wind-panel strong{font-size:16px}.wind-panel small{font-size:10px}.course-tools{top:163px;right:16px}.tool-button{padding:8px 9px;font-size:10px;gap:5px}.tool-button kbd{display:none}.tool-button>span:first-child{font-size:15px}.map-panel{left:auto;right:16px;bottom:213px;width:92px;padding:8px}.map-panel .small-label{display:none}.map-caption{display:none}#minimap{width:74px;height:100px}.shot-panel{bottom:33px;left:16px;right:16px;width:auto;transform:none;display:grid;grid-template-columns:125px 1fr;gap:12px 15px;padding:14px}.club-section{min-width:0;padding-right:14px}.club-section>.small-label{font-size:9px}.club-chooser{gap:3px}.club-chooser strong{font-size:18px}.club-chooser>div>span{font-size:9px}.club-arrow{font-size:23px}.swing-button{grid-column:1/-1;height:45px}.swing-button kbd{display:block}.power-caption{font-size:9px;gap:5px}.power-caption>span:first-child{max-width:145px}.power-label{margin-bottom:5px}.power-label .small-label{font-size:9px;letter-spacing:1px}.power-label strong{font-size:19px}.power-track{height:10px}.bottom-note{left:20px;right:20px;bottom:13px;font-size:7px;letter-spacing:1px}.bottom-note>span:last-child{display:none}.aim-tip{display:none}.touch-aim{position:absolute;display:flex;gap:8px;left:16px;bottom:219px}.touch-aim button{border:1px solid #ffffff33;background:#193d30c9;color:white;border-radius:8px;width:44px;height:40px;font-size:18px;touch-action:none}.flight-readout{right:20px;bottom:325px}.flight-readout strong{font-size:34px}.flight-readout .small-label{font-size:9px}.flight-readout>span:last-child{font-size:8px}.toast{top:285px;font-size:12px;width:max-content;max-width:85%}.help-rows{margin:18px 0}dialog{padding:29px 24px}dialog h2{font-size:30px}.help-rows>div{margin:12px 0}.help-rows p{font-size:12px}.help-rows strong{font-size:14px}.help-foot{font-size:10px!important}}
@media(prefers-reduced-motion:reduce){*{transition:none!important}}

/* Legible game metadata on compact displays. */
.small-label,.hole-stats,.round-label,.tool-button,.power-caption,.club-chooser>div>span,.map-caption,.help-foot{font-size:12px}.club-section>.small-label,.power-label .small-label,.map-panel .small-label,.shot-stats .small-label{font-size:12px;letter-spacing:1px}.map-panel .small-label{font-size:12px;letter-spacing:.6px}.map-panel>div{gap:6px}#lieLabel{font-size:12px}.swing-button>span:nth-child(2){font-size:16px}.outline-button{font-size:14px}.bottom-note{font-size:12px;letter-spacing:1px}.power-caption{line-height:1.4}.help-rows p{font-size:14px}.help-rows strong{font-size:16px}dialog p{font-size:16px}.map-caption{font-size:12px}.difficulty{display:none}.shot-panel{min-height:112px}
@media(max-width:760px){.small-label,.hole-stats,.club-section>.small-label,.power-label .small-label,.shot-stats .small-label{font-size:12px;letter-spacing:.5px}.club-chooser>div>span{font-size:12px}.power-caption{font-size:12px}.power-caption>span:first-child{max-width:150px}.bottom-note{font-size:10px}.outline-button{font-size:12px}.shot-panel{grid-template-columns:120px 1fr}.swing-button>span:nth-child(2){font-size:16px}.shot-stats{gap:10px}.hole-panel{width:204px}.shot-stats strong{font-size:21px}.map-panel .map-caption{display:none}.help-rows p{font-size:14px}.help-rows strong{font-size:16px}.help-foot{font-size:12px!important}}
/* Championship edition: a closer golfer camera and precise shot controls. */
.round-label .small-label{font-size:12px;letter-spacing:1.5px}.hole-panel{width:284px;padding:19px 21px}.hole-panel h1{font-size:22px}.hole-divider{margin:15px 0}.lie-details{display:flex;justify-content:space-between;border-top:1px solid #ffffff1c;margin-top:15px;padding-top:12px;font-size:12px;color:#c9d8bb}.lie-details span:first-child{color:var(--lime)}#gustValue{font-size:12px;color:#c7d1c6}.wind-panel{min-width:148px}.course-tools{top:226px;display:flex;flex-direction:column;align-items:flex-end;gap:8px}.tool-button{font-size:12px}.tool-button.selected{border-color:#dafa9a70;color:var(--lime)}.caddie-note{position:absolute;top:408px;left:36px;width:244px;padding:15px 17px}.caddie-note .small-label{font-size:12px}.caddie-note p{font-size:14px;line-height:1.5;margin:9px 0;color:#e0e8d8}.caddie-note>span:last-child{font-size:12px;color:var(--lime)}.map-panel{left:auto;right:36px;bottom:191px;width:136px}.map-panel>div>.small-label{display:none}#minimap{width:109px;height:144px}.map-caption{font-size:12px}.shot-panel{max-width:1110px;bottom:48px;min-height:120px}.club-section{min-width:233px}.club-chooser strong{font-size:20px}.club-chooser>div>span{font-size:12px}.swing-button{min-width:246px}.swing-button.timing-active{background:#fff0a0}.power-caption{font-size:12px}.aim-tip{bottom:186px;font-size:12px}.bottom-note{font-size:12px;bottom:18px;letter-spacing:.7px}.timing-panel{position:absolute;left:50%;bottom:185px;transform:translateX(-50%);width:420px;padding:17px 23px;z-index:3;background:#10251bf2}.timing-panel>div:first-child{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:13px}.timing-panel strong{font-size:14px;color:var(--lime)}.timing-panel .small-label{font-size:12px;letter-spacing:.8px}.timing-track{height:18px;border-radius:4px;background:linear-gradient(90deg,#d56b4540,#89aa5840 40%,#89aa5840 60%,#d56b4540);position:relative;border:1px solid #ffffff20}.sweet-spot{position:absolute;left:45%;width:10%;inset-block:0;background:#dafa9a8c}.timing-center{position:absolute;left:50%;height:100%;width:1px;background:#f1ffdc}#timingMarker{position:absolute;left:0;top:-6px;width:4px;height:28px;border-radius:3px;transform:translateX(-50%);background:white;box-shadow:0 0 12px #fff5}.timing-labels{display:flex;justify-content:space-between;color:#c7d1c6;font-size:12px;letter-spacing:.3px;margin-top:10px}.timing-labels span:nth-child(2){color:var(--lime)}.shot-summary{position:absolute;left:36px;bottom:187px;width:210px;padding:15px 18px}.shot-summary>div{display:flex;gap:25px;margin-top:10px}.shot-summary>div span{font-size:12px;color:#c7d1c6}.shot-summary b{display:block;margin-top:5px;font-size:19px;font-weight:500;color:#f3f8eb}.shot-summary .small-label{font-size:12px;color:var(--lime);letter-spacing:.5px}.nine-heading td{color:var(--lime);font-size:12px;letter-spacing:1px;padding-top:22px}.nine-total td{color:#e4edcf;font-weight:600;background:#ffffff08}#scoreTable>p{font-size:12px}#scoreDialog{width:min(570px,calc(100vw - 28px))}.flight-readout{bottom:210px;right:202px}.help-foot{font-size:12px!important}#helpDialog p{font-size:14px}.club-section .small-label,.power-label .small-label{font-size:12px}.brand div>span{font-size:12px;letter-spacing:3.1px}.small-label{font-size:12px}.round-label{font-size:14px}.outline-button{font-size:14px}
@media(min-width:1500px){.caddie-note{top:428px;left:48px}.map-panel{right:48px;left:auto}.course-tools{top:243px}.hole-panel{width:284px}}
@media(max-height:820px){.caddie-note{display:none}.shot-summary{bottom:188px}.hole-panel{padding:17px}.hole-panel h1{margin:10px 0 12px}.lie-details{margin-top:12px;padding-top:10px}}
@media(max-width:1100px){.club-section{min-width:195px}.swing-button{min-width:214px}.shot-panel{gap:16px}.bottom-note span:last-child{display:none}.map-panel{width:119px}#minimap{width:93px;height:126px}.map-caption{display:none}.flight-readout{right:177px}}
@media(max-width:760px){.topbar{padding:18px 16px}.brand div>span{font-size:10px;letter-spacing:2.8px}.outline-button{font-size:12px}.hole-panel{left:16px;top:87px;width:207px;padding:13px}.hole-panel h1{font-size:18px;letter-spacing:-.6px;margin:9px 0 11px}.hole-stats{font-size:12px}.shot-stats .small-label{font-size:12px}.shot-stats strong{font-size:20px}.hole-divider{margin:10px 0}.lie-details{font-size:12px;margin-top:10px;padding-top:8px}.wind-panel{right:16px;top:87px;min-width:107px;padding:10px;gap:7px}.wind-panel strong{font-size:16px}#gustValue{font-size:12px}.course-tools{right:16px;top:180px;gap:7px}.tool-button{font-size:12px;gap:5px;padding:8px}.tool-button>span:first-child{font-size:15px}.caddie-note{display:none}.shot-panel{bottom:34px;min-height:0;padding:13px;gap:11px;grid-template-columns:132px 1fr}.club-section{min-width:0;padding-right:10px}.club-chooser strong{font-size:16px;letter-spacing:-.5px}.club-chooser>div>span{font-size:12px;max-width:109px;text-align:center;line-height:1.3}.club-chooser{gap:2px}.club-arrow{padding:0 2px}.club-section>.small-label,.power-label .small-label{font-size:12px;letter-spacing:.3px}.power-caption{font-size:12px}.power-caption #carryValue{display:none}.swing-button{min-width:0;height:46px}.swing-button>span:nth-child(2){font-size:16px}.swing-button kbd{font-size:10px}.map-panel{bottom:227px;right:16px;width:90px;padding:8px}.map-panel #lieLabel{font-size:10px}#minimap{width:74px;height:101px}.timing-panel{width:calc(100% - 32px);bottom:213px;padding:15px 17px}.timing-panel>div:first-child{gap:9px}.timing-panel strong{font-size:14px}.timing-panel .small-label{font-size:12px;letter-spacing:0}.timing-labels{font-size:12px;letter-spacing:0}.shot-summary{left:16px;bottom:223px;width:155px;padding:11px 13px}.shot-summary>div{gap:20px;margin-top:8px}.shot-summary .small-label{font-size:11px}.shot-summary b{font-size:16px}.touch-aim{bottom:190px;gap:7px}.touch-aim button{width:40px;height:28px;font-size:17px}.bottom-note{font-size:11px;left:16px;right:16px;bottom:12px;letter-spacing:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.flight-readout{bottom:360px;right:20px}.toast{top:305px;font-size:13px}.help-rows>div{gap:15px}.help-rows p{font-size:14px}dialog{max-height:87svh}}
@media(max-height:660px) and (min-width:761px){.topbar{height:76px}.hole-panel{top:85px;left:26px;width:255px}.wind-panel{top:85px;right:26px}.course-tools{top:191px;right:26px}.map-panel{bottom:181px;right:26px}.map-panel #minimap{height:90px}.shot-panel{bottom:39px;min-height:107px;padding:13px 18px}.shot-summary{left:26px;bottom:161px}.timing-panel{bottom:161px}.aim-tip{bottom:158px}.bottom-note{bottom:12px}}

@media(max-width:760px){.map-panel{top:274px;bottom:auto}.shot-summary{display:none}.toast{top:294px;z-index:4}.map-panel #minimap{height:94px}.touch-aim{z-index:2}}
#courseDialog{width:min(820px,calc(100vw - 28px));padding:30px;max-height:92svh}#courseDialog h2{margin-bottom:24px}.course-choices{display:grid;grid-template-columns:1fr 1fr;gap:12px}.course-choice{display:flex;text-align:left;background:#203b2f;border:1px solid #d3e1c826;color:#f3f7eb;border-radius:10px;overflow:hidden;padding:0;min-height:180px}.course-choice.chosen{border-color:#dafa9a;box-shadow:inset 0 0 0 1px #dafa9a}.course-art{width:48px;flex:none;display:flex;align-items:flex-end;padding:13px 8px;background:#45603d;color:#e0edc8;font-size:19px}.course-art.park{background:#5c8245}.course-art.woodland{background:#274c36}.course-art.ridge{background:#59635c}.course-art.links{background:#91834f}.course-choice-body{display:flex;flex-direction:column;gap:9px;padding:15px 14px}.course-choice-top{display:flex;justify-content:space-between;align-items:center;gap:7px;font-size:12px;color:#cbd6c1}.course-choice-top b{font-size:12px;font-weight:500;color:var(--lime)}.course-choice-body>strong{font-family:Manrope,Arial,sans-serif;font-size:20px;font-weight:600;letter-spacing:-.4px}.course-choice-body>span:not(.course-choice-top){font-size:13px;line-height:1.5;color:#d1ddc8}.course-choice-body small{font-size:12px;color:#c1d0b8;letter-spacing:.6px;margin-top:auto}.round-options{display:flex;gap:8px;margin:22px 0 12px}.round-options button{flex:1;border:1px solid #f2ffe030;background:#213d30;color:#dce8d2;border-radius:7px;padding:11px;font-size:14px}.round-options button.selected{background:#dafa9a;color:#1a3427;border-color:#dafa9a}.round-reset-note{font-size:12px!important;color:#c5d3bc}#courseDialog .primary-button{font-size:15px;line-height:1.4}.topbar{gap:16px}.top-actions{gap:8px}.round-label{max-width:310px}.round-label .small-label{letter-spacing:1px}.course-choice:hover{background:#294733}.course-choice:focus-visible{outline:2px solid var(--lime);outline-offset:2px}
@media(max-width:1100px){.round-label{display:none}}
@media(max-width:760px){#courseDialog{padding:25px 20px}.course-choices{grid-template-columns:1fr}.course-choice{min-height:150px}.course-choice-body{gap:7px}.course-choice-body>strong{font-size:20px}.course-choice-body>span:not(.course-choice-top){font-size:14px}.course-art{width:43px}.top-actions{gap:5px}.topbar{gap:8px}.outline-button{padding:0 8px;font-size:12px}.brand{font-size:14px;letter-spacing:1.4px;gap:6px}.brand-symbol{font-size:25px;padding-right:7px}.brand div>span{font-size:9px;letter-spacing:2.2px}.icon-button{width:29px;height:32px}.round-options{position:static;background:#182f27;padding:9px 0;margin-top:15px}.round-options button{font-size:14px;padding:11px 6px}#courseDialog h2{font-size:29px}}
/* Career clubhouse */
.at-home>.topbar,.at-home>.hole-panel,.at-home>.wind-panel,.at-home>.course-tools,.at-home>.caddie-note,.at-home>.map-panel,.at-home>.shot-panel,.at-home>.bottom-note,.at-home>.aim-tip,.at-home>.touch-aim,.at-home>.shot-summary,.at-home>.flight-readout,.at-home>.toast,.at-home>.timing-panel{visibility:hidden;pointer-events:none}.home-screen{position:absolute;inset:0;z-index:5;overflow-y:auto;background:linear-gradient(180deg,#10251b42 0%,#10251b5c 32%,#0c211bed 66%,#0c211b 100%);scrollbar-color:#60785b #10281c}.home-header{height:100px;padding:24px 42px;display:flex;align-items:center;justify-content:space-between;gap:22px;border-bottom:1px solid #ffffff20;background:#11291f66}.home-header nav{display:flex;gap:8px}.home-tab{padding:12px 20px;border:0;background:none;color:#cfddc3;font-size:15px;border-radius:7px}.home-tab.selected{background:#edffe91a;color:#fff}.career-badge{display:flex;align-items:center;gap:16px}.career-badge>span{font-size:12px;color:var(--lime);border:1px solid #dafa9a55;padding:9px 11px;border-radius:6px;letter-spacing:1px}.career-badge strong{font-size:14px;font-weight:500}.home-play,.home-equipment{max-width:1450px;margin:auto;padding:0 42px 8px}.home-hero{display:flex;align-items:center;justify-content:space-between;min-height:273px;padding:35px 0 27px;gap:28px}.home-eyebrow{color:#e3f4ca;font-size:12px;font-weight:600;letter-spacing:2px}.home-hero h1,.equipment-heading h1{font-family:Manrope,Arial,sans-serif;font-size:clamp(36px,4.6vw,62px);font-weight:500;line-height:1.1;letter-spacing:-2.5px;margin:15px 0 16px}.home-hero p,.equipment-heading p{font-size:16px;color:#e0ecd4;line-height:1.6;margin:0}.home-progress{width:273px;background:#142d24c7;backdrop-filter:blur(15px);border:1px solid #d4e8c92e;border-radius:12px;padding:22px 24px;margin-top:10px}.home-progress>strong{display:block;font-size:29px;font-weight:500;margin:12px 0}.career-track{height:7px;background:#e6f4d91c;border-radius:4px;overflow:hidden;margin:14px 0 9px}.career-track span{display:block;width:0;height:100%;background:var(--lime);border-radius:4px}.home-progress>span:not(.small-label){font-size:12px;color:#bdcfb5}.career-next{font-size:13px;color:#dfeaca;line-height:1.5;margin-top:17px;border-top:1px solid #e0f4d621;padding-top:13px}.resume-button{margin-top:18px;border:1px solid #dafa9a88;border-radius:6px;background:#152f2488;color:var(--lime);padding:11px 18px;font-size:14px}.course-section-heading{display:flex;align-items:center;justify-content:space-between;margin:14px 0 15px;gap:14px}.course-section-heading h2{font-size:18px;font-weight:500;margin:0}.course-section-heading>span{font-size:12px;color:#c2d0b8}.home-courses{grid-template-columns:repeat(4,1fr);gap:13px}.home-courses .course-choice{display:flex;flex-direction:column;min-height:259px;background:#193529eb;border-radius:10px}.home-courses .course-art{width:100%;height:53px;justify-content:space-between;align-items:center;flex-direction:row;padding:12px 16px;font-size:22px}.course-selected-mark{font-size:10px;letter-spacing:1.2px}.home-courses .course-choice-body{flex:1;padding:16px;gap:11px}.home-courses .course-choice-body>strong{font-size:22px;line-height:1.2}.home-courses .course-choice-body>span:not(.course-choice-top){font-size:13px;line-height:1.5}.home-courses .course-choice-top{font-size:12px}.home-courses .course-choice-body small{font-size:12px;padding-top:6px}.home-launch{display:flex;justify-content:space-between;align-items:center;gap:26px;padding:20px 0 18px}.home-launch>div:first-child{width:330px}.home-launch .round-options{margin:10px 0 0;position:static}.launch-action{min-width:315px;max-width:470px;text-align:right}.launch-action .primary-button{margin:0;font-size:16px;min-height:51px}.round-reset-note{margin:0 0 8px!important;line-height:1.4}.home-footer{display:flex;justify-content:space-between;gap:20px;align-items:center;max-width:1450px;padding:16px 42px 25px;margin:auto;border-top:1px solid #ffffff15;color:#a8bfa8;font-size:12px;line-height:1.5}.home-footer .text-button{width:auto;padding:0;margin-right:auto;color:var(--lime);text-decoration:underline}.home-footer .error{color:#f4b798}.home-equipment{padding-top:35px}.equipment-heading{display:flex;justify-content:space-between;align-items:center;gap:25px;margin-bottom:30px}.equipment-heading h1{font-size:44px;letter-spacing:-1.8px}.equipment-level{font-size:14px;letter-spacing:2px;border:1px solid #dafa9a55;border-radius:8px;padding:20px;color:var(--lime);flex:none}.equipment-choices{display:grid;grid-template-columns:repeat(5,1fr);gap:12px}.equipment-card{border:1px solid #e3f5d82e;border-radius:10px;padding:19px 17px;background:#152e24eb;display:flex;flex-direction:column;position:relative;overflow:hidden}.equipment-card::before{content:'';height:3px;background:var(--tier-color);position:absolute;left:0;right:0;top:0}.equipment-card.equipped{border-color:var(--tier-color)}.tier-emblem{width:47px;height:47px;display:grid;place-items:center;background:var(--tier-color);color:#10221c;border-radius:8px;font-size:23px;font-weight:600;margin-bottom:17px}.equipment-card .small-label{font-size:12px}.equipment-card h2{font-size:23px;font-weight:500;margin:9px 0}.equipment-card p{font-size:13px;line-height:1.5;color:#c2d3bb;margin:0 0 15px;min-height:79px}.equipment-card dl{font-size:12px;margin:0 0 17px}.equipment-card dl>div{display:flex;justify-content:space-between;border-top:1px solid #ffffff16;padding:9px 0}.equipment-card dt{color:#beccb5}.equipment-card dd{margin:0;color:#e7f1da}.equipment-card button{margin-top:auto;padding:12px 7px;border:1px solid #dafa9a55;border-radius:6px;background:#dafa9a;color:#173021;font-size:13px}.equipment-card button:disabled{background:#e0efd713;color:#c0d0b8;border-color:#e0efd723;opacity:1}.equipment-card.locked .tier-emblem{opacity:.6}.bag-details{display:flex;gap:35px;padding:26px 0;align-items:center;border-top:1px solid #ffffff20;margin-top:27px}.bag-details>div:first-child{min-width:150px}.bag-details h2{font-size:25px;font-weight:500;margin:9px 0}.bag-details p{font-size:12px;color:#bbceb2;line-height:1.5}.bag-clubs{display:grid;grid-template-columns:repeat(8,1fr);gap:8px;flex:1}.bag-clubs>div{text-align:center;padding:14px 6px;border:1px solid #e9f7e020;border-radius:7px;background:#1a3627a8}.bag-clubs b{font-size:18px;color:var(--lime);font-weight:500}.bag-clubs span{display:block;font-size:11px;color:#bccdb5;margin:9px 0;min-height:25px}.bag-clubs strong{font-size:13px;font-weight:500}.club-label-row{display:flex;align-items:center;justify-content:space-between;gap:8px}.club-label-row .small-label{font-size:10px;letter-spacing:.8px}.spin-button{border:1px solid #dafa9a4d;border-radius:4px;background:#dafa9a0d;color:#dafa9a;font-size:12px;padding:5px 7px}.spin-button span{color:#bdd0b0;font-size:10px;margin-left:4px}.spin-control{margin:25px 0}.spin-control label{display:flex;justify-content:space-between;gap:15px;font-size:15px;margin-bottom:13px}.spin-control strong{font-size:13px;font-weight:500;color:var(--lime)}.spin-control input{width:100%;accent-color:#dafa9a;height:28px;cursor:pointer}.spin-control>div{display:flex;justify-content:space-between;font-size:12px;color:#bdcdb3;margin-top:5px}#spinCapability{font-size:13px;line-height:1.6}.xp-award{border:1px solid #dafa9a40;border-radius:8px;background:#dafa9a0b;padding:14px;margin-top:18px}.xp-award strong{display:block;color:var(--lime);font-size:20px;font-weight:500}.xp-award span{display:block;font-size:13px;color:#c7dabd;line-height:1.5;margin-top:7px}.xp-award .text-button{padding:9px 0 0;color:var(--lime)}
@media(max-width:1100px){.home-header{padding:22px 28px}.home-play,.home-equipment{padding-inline:28px}.home-footer{padding-inline:28px}.home-courses{grid-template-columns:repeat(2,1fr)}.home-courses .course-choice{min-height:235px}.home-hero{min-height:260px}.equipment-choices{grid-template-columns:repeat(3,1fr)}.bag-details{align-items:flex-start}.bag-clubs{grid-template-columns:repeat(4,1fr)}}
@media(max-width:760px){.home-header{height:83px;padding:16px;gap:10px}.home-header .brand{font-size:14px}.home-header nav{gap:0}.home-tab{padding:10px 9px;font-size:13px}.career-badge{gap:0}.career-badge strong{display:none}.career-badge>span{font-size:10px;padding:8px 7px;letter-spacing:.4px}.home-play,.home-equipment{padding:0 16px}.home-hero{min-height:0;padding:28px 0 20px;align-items:flex-start;gap:20px;flex-direction:column}.home-hero h1{font-size:39px;letter-spacing:-1.6px;margin:13px 0}.home-eyebrow{font-size:11px;letter-spacing:1.4px}.home-hero p{font-size:15px}.home-progress{width:100%;padding:15px 17px;margin:0;display:grid;grid-template-columns:1fr 1fr;gap:4px 18px}.home-progress>.small-label{grid-column:1}.home-progress>strong{font-size:23px;margin:3px 0;grid-column:1}.home-progress .career-track{grid-column:2;grid-row:2;margin:10px 0}.home-progress>span:not(.small-label){grid-column:2;grid-row:3;font-size:12px}.career-next{grid-column:1;grid-row:3;border:0;padding:0;margin:0;font-size:12px}.course-section-heading h2{font-size:17px}.course-section-heading>span{font-size:11px}.home-courses{grid-template-columns:1fr;gap:10px}.home-courses .course-choice{min-height:0;flex-direction:row}.home-courses .course-art{width:43px;height:auto;flex-direction:column;padding:15px 8px;font-size:20px}.home-courses .course-selected-mark{display:none}.home-courses .course-choice-body{padding:15px;gap:8px}.home-courses .course-choice-body>strong{font-size:21px}.home-courses .course-choice-body>span:not(.course-choice-top){font-size:14px}.home-launch{flex-direction:column;align-items:stretch;gap:18px;padding-top:22px}.home-launch>div:first-child,.launch-action{width:100%;min-width:0;max-width:none}.home-launch .round-options{padding:0;margin-top:10px}.home-footer{padding:17px 16px 24px;flex-wrap:wrap;font-size:12px;gap:9px}.home-footer>span:last-child{width:100%}.equipment-heading{padding:27px 0 0;align-items:flex-start;gap:12px}.equipment-heading h1{font-size:31px;letter-spacing:-1.3px}.equipment-heading p{font-size:14px}.equipment-level{display:none}.equipment-choices{grid-template-columns:1fr 1fr;gap:9px}.equipment-card{padding:17px 13px}.equipment-card p{font-size:13px;min-height:98px}.equipment-card h2{font-size:22px}.equipment-card dl{font-size:12px}.equipment-card button{font-size:12px}.bag-details{flex-direction:column;gap:12px}.bag-clubs{width:100%;grid-template-columns:repeat(4,1fr);gap:6px}.bag-clubs span{font-size:10px}.bag-clubs strong{font-size:12px}.club-label-row{gap:5px}.club-label-row .small-label{font-size:9px;letter-spacing:0}.spin-button{padding:4px 6px;font-size:11px}.spin-button span{display:none}.club-chooser{margin-top:5px}#spinDialog{padding:30px 24px}}

.equipment-choices{grid-template-columns:repeat(4,minmax(0,1fr))}.equipment-card h2{font-size:22px}.equipment-card small{display:block;text-align:center;font-size:12px;color:#b7c8b2;margin-top:9px}.equipment-card dl{font-size:13px}@media(max-width:1100px){.equipment-choices{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:760px){.equipment-choices{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:420px){.equipment-choices{grid-template-columns:1fr}}
/* Golfer profiles, accounts and course records. */
.home-header{flex-wrap:wrap;gap:16px}.home-header nav{flex-wrap:wrap}.home-tab{font-size:14px}.home-character,.home-records{max-width:1320px;margin:auto;padding:34px 38px 60px}.home-character{position:relative;min-height:650px}.character-panel{width:min(390px,100%);padding:24px;background:#163428e8;border:1px solid #ffffff20;border-radius:16px}.character-panel h1,.home-records h1{font-size:34px}.character-preview-label{position:absolute;right:18%;top:48px;color:#dafa9a;font-size:12px;letter-spacing:2px}label,legend{display:block;font-size:14px;margin:14px 0 8px}input,textarea,select{font:inherit;color:#f8f9ef;background:#102b22;border:1px solid #809b7766;border-radius:7px;padding:11px;max-width:100%}input:not([type=checkbox]),textarea{width:100%}input[type=checkbox]{width:18px;height:18px;accent-color:#dafa9a}.field-note{font-size:12px;color:#bdceba;line-height:1.5}.character-panel fieldset{border:0;margin:0;padding:0}.swatches{display:flex;gap:10px;flex-wrap:wrap}.swatch{height:34px;width:34px;border-radius:50%;border:2px solid #ffffff33;box-shadow:0 0 0 2px transparent}.swatch.chosen{box-shadow:0 0 0 2px #dafa9a;border-color:#173728}.check-row{display:flex;gap:10px;align-items:center}.character-panel #golferStatus{font-size:14px;min-height:20px}.home-records>p{font-size:16px;color:#bdceba}.record-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-top:24px}.record-card{background:#183d30e8;padding:24px;border:1px solid #ffffff20;border-radius:12px}.record-card h2{font-size:24px}.record-card p{font-size:14px;color:#c5d7bf}.record-card ol{list-style:none;padding:0;counter-reset:record}.record-card li{display:flex;align-items:center;gap:12px;border-top:1px solid #ffffff18;padding:13px 0;font-size:15px;counter-increment:record}.record-card li:before{content:counter(record);color:#dafa9a}.record-card li span{flex:1;overflow-wrap:anywhere}.record-card small{color:#b4c5ae;font-size:12px;margin-left:7px}.home-footer .text-button{width:auto;padding:0}.account-links{display:flex;gap:15px}.account-links button{font-size:13px}#accountStatus,#onboardingStatus{color:#dafa9a;min-height:18px}.onboarding-demo{padding:26px 16px;border:1px solid #dafa9a44;background:#dafa9a0d;border-radius:12px;color:#dafa9a;text-align:center;font-size:15px;letter-spacing:1px;margin:24px 0}.onboarding-actions{display:flex;align-items:center;gap:12px}.onboarding-actions .primary-button{margin:0}.home-character:before{content:'';position:absolute;inset:0;pointer-events:none}.home-records select{margin-right:10px}@media(max-width:760px){.home-header nav{order:3;width:100%;gap:4px;justify-content:space-between}.home-tab{font-size:13px;padding:8px 6px}.home-character,.home-records{padding:24px 16px}.home-character{padding-top:230px}.character-panel{width:100%}.character-preview-label{top:24px;right:24px}.record-cards{grid-template-columns:1fr}.home-character .character-panel h1{font-size:28px}.home-header .career-badge{margin-left:auto}}

.home-header{height:auto;min-height:100px}.home-screen.character-view{background:#0c211b28}.home-screen.character-view .home-footer{background:#10291ee8}@media(max-width:760px){.home-header{min-height:126px}}

.save-progress-banner{max-width:1366px;margin:22px auto 0;padding:22px 26px;display:flex;align-items:center;gap:28px;background:#203f2feb;border:1px solid #dafa9a77;border-radius:12px}.save-progress-banner>div:first-child{flex:1}.save-progress-banner strong{font-size:22px;color:#effbdc}.save-progress-banner p{font-size:15px;line-height:1.5;margin:8px 0;color:#e0ebd6}.save-progress-banner small{font-size:12px;color:#bacdb0}.save-progress-actions{min-width:240px}.save-progress-actions .primary-button{margin:0}.save-progress-actions .text-button{padding-top:12px;color:#e1eed6}.onboarding-account-prompt{padding:18px;margin:20px 0;background:#dafa9a0e;border:1px solid #dafa9a44;border-radius:10px}.onboarding-account-prompt strong{color:#dafa9a;font-size:17px}.onboarding-account-prompt p{font-size:14px;margin:8px 0}.onboarding-account-prompt .text-button{padding-top:12px}@media(max-width:1450px){.save-progress-banner{margin-left:38px;margin-right:38px}}@media(max-width:760px){.save-progress-banner{margin:16px;flex-direction:column;align-items:stretch;padding:20px;gap:16px}.save-progress-actions{min-width:0}.save-progress-banner strong{font-size:20px}}

#onboardingDialog{width:min(660px,calc(100vw - 28px));overflow-y:auto}#onboardingDialog p{font-size:16px;line-height:1.6}#onboardingCount{display:block;line-height:1.6;font-size:12px}#onboardingProgress{display:block;width:100%;height:6px;margin:16px 0 24px;accent-color:var(--lime)}#onboardingProgress::-webkit-progress-bar{background:#ffffff20;border-radius:9px}#onboardingProgress::-webkit-progress-value{background:var(--lime);border-radius:9px}#onboardingDialog .onboarding-demo{font-size:14px;line-height:1.7;margin:18px 0;padding:16px}.onboarding-tip{border-left:3px solid var(--lime);padding-left:14px}.onboarding-challenge{min-width:0;border:1px solid #ffffff30;border-radius:12px;margin:24px 0 12px;padding:16px}.onboarding-challenge legend{font-size:16px;line-height:1.5;padding:0 8px}.onboarding-challenge button{display:block;width:100%;text-align:left;background:#10271f;color:#eef5e9;border:1px solid #ffffff30;border-radius:8px;padding:12px 14px;margin:8px 0;font-size:16px;line-height:1.4}.onboarding-challenge button[aria-pressed=true]{border-color:var(--lime);background:#dafa9a1c}.onboarding-challenge button:focus-visible{outline:2px solid var(--lime);outline-offset:3px}#onboardingFeedback{color:var(--lime);margin:12px 0 0}#onboardingFeedback:empty{display:none}#onboardingDialog .onboarding-actions{margin-top:20px}#onboardingDialog .onboarding-actions button{min-height:48px}#onboardingDialog .text-button{font-size:14px;min-height:44px}@media(max-width:480px){#onboardingDialog{padding:24px 18px}#onboardingDialog h2{font-size:28px;letter-spacing:-.8px}.onboarding-challenge{padding:12px}}

.club-number{font-size:24px;font-weight:600;color:#e3e8e5;margin-bottom:18px;line-height:1.2}

/* Course-first phone HUD. Desktop controls retain their existing layout. */
.mobile-only{display:none}.mobile-detail-actions{display:flex;flex-wrap:wrap;gap:12px}.mobile-detail-actions .outline-button{min-height:44px}#mobileDetailsDialog p{font-size:16px;line-height:1.6}
@media(max-width:760px),(max-height:500px) and (pointer:coarse){
 #game{min-height:0;height:100dvh;--mobile-bottom:calc(8px + env(safe-area-inset-bottom,0px))}
 .mobile-only{display:inline-flex;align-items:center;justify-content:center}
 #game.at-home .mobile-only{display:none}
 .topbar{height:52px;padding:4px 10px;justify-content:flex-end;background:none;border:0}
 .topbar>.brand,.topbar>.round-label,.top-actions>#soundButton,.top-actions>#helpButton,.top-actions>#scoreButton{display:none}
 .top-actions{gap:6px}.top-actions .outline-button{min-height:44px;background:#19352dea;font-size:14px;padding:0 12px}
 .hole-panel{top:58px;left:10px;width:auto;max-width:calc(100% - 108px);padding:9px 12px;display:flex;gap:14px;align-items:center;border-radius:10px}
 .hole-panel .hole-top{display:flex;flex-direction:column;gap:2px}.hole-panel .hole-top .small-label{font-size:12px;letter-spacing:0}
 .hole-panel h1,.hole-panel .hole-stats,.hole-panel .hole-divider,.hole-panel .lie-details,.hole-panel #roundScore,.hole-panel .shot-stats>div:last-child{display:none}
 .hole-panel .shot-stats{gap:14px}.hole-panel .shot-stats strong{font-size:21px}.hole-panel .shot-stats .small-label{font-size:12px;letter-spacing:0}
 .wind-panel{top:58px;right:10px;min-width:0;padding:9px;gap:5px;border-radius:10px}.wind-panel .small-label,.wind-panel #gustValue{display:none}.wind-panel strong{font-size:17px}.wind-arrow{width:22px;height:28px;font-size:23px}
 .course-tools{top:123px;right:10px;display:flex;flex-direction:row;gap:6px}.course-tools .tool-button{min-height:44px;padding:8px;font-size:12px}.course-tools kbd{display:none}
 .caddie-note,.bottom-note,.aim-tip,.shot-summary{display:none}
 .map-panel{display:none;top:174px;right:10px;left:auto;bottom:auto;width:150px;padding:10px;z-index:3;background:#17392ff5}
 .mobile-map-open .map-panel{display:block}.map-panel #minimap{width:128px;height:155px}.map-panel>div .small-label{display:none}.map-panel .map-caption{display:block;font-size:12px}.map-panel #lieLabel{font-size:12px}
 .shot-panel{bottom:var(--mobile-bottom);left:10px;right:10px;width:auto;min-height:0;padding:10px;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:8px 12px;transform:none;border-radius:12px}
 .club-section{padding:0;border:0;min-width:0}.club-label-row{justify-content:flex-end}.club-label-row>.small-label{display:none}.spin-button{font-size:14px;min-height:32px;padding:5px 12px}.club-chooser{margin:0;gap:3px;justify-content:space-between}.club-chooser strong{font-size:16px;white-space:normal;line-height:1.1}.club-chooser>div>span{font-size:12px;line-height:1.2}.club-arrow{min-width:32px;min-height:44px;padding:0}
 .swing-section{align-self:center;min-width:0}.power-label{margin-bottom:6px}.power-label .small-label{font-size:12px;letter-spacing:0}.power-label strong{font-size:19px}.power-track{height:9px}.power-caption{font-size:12px;margin-top:6px}.power-caption #suggestion{max-width:none;font-size:12px}.power-caption #carryValue{display:none}
 .swing-button{grid-column:1/-1;height:44px;min-height:44px;min-width:0}.swing-button kbd,.swing-icon{display:none}.swing-button>span:nth-child(2){font-size:16px}
 .touch-aim{left:10px;bottom:calc(var(--mobile-bottom) + 164px);gap:8px}.touch-aim button{height:44px;width:44px}
 .timing-panel{bottom:calc(var(--mobile-bottom) + 164px);top:auto;left:50%;right:auto;width:calc(100% - 24px);max-width:430px;padding:12px;z-index:4;transform:translateX(-50%)}
 .timing-panel .small-label{font-size:12px}.timing-panel strong{font-size:14px}.timing-labels{font-size:12px}
 .toast{top:174px;max-width:calc(100% - 24px);font-size:14px;padding:10px 14px}
 .flight-readout{top:auto;bottom:24px;right:16px}.flight-readout strong{font-size:32px}
 .ball-in-play .shot-panel,.ball-in-play .touch-aim,.ball-in-play .course-tools,.ball-in-play .map-panel{visibility:hidden;pointer-events:none}
}
@media(max-height:500px) and (pointer:coarse){
 .hole-panel,.wind-panel{top:54px}.course-tools{top:112px}.shot-panel{left:auto;right:10px;width:310px}.touch-aim{bottom:12px}.timing-panel{left:auto;right:10px;width:310px;transform:none}.map-panel{top:54px;right:100px}.toast{top:55px;max-width:300px}.flight-readout{bottom:12px}
}

/* Separate end-of-hole actions and leave room for keyboard focus outlines. */
#holeDialog #nextHole{display:block;margin-top:18px;min-height:48px;}
#holeDialog #resultScorecard{display:block;margin-top:16px;padding:12px 10px;min-height:44px;border-radius:7px;line-height:1.4;}

/* Practice, daily play and personal statistics share the clubhouse layout. */
.clubhouse-extras{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin:24px 0}.clubhouse-extras article{background:#17382e;border:1px solid #73936866;border-radius:14px;padding:22px;min-width:0}.clubhouse-extras h2{font-size:22px;margin:12px 0}.clubhouse-extras p,.home-stats p,.medal-explainer{font-size:16px;line-height:1.6;color:#d4dfcf}.clubhouse-extras small{display:block;font-size:14px;line-height:1.5;margin-bottom:16px;color:#c5d4bd}.extra-actions{display:flex;flex-wrap:wrap;gap:12px}.clubhouse-extras button{min-height:44px}.home-stats{padding:28px 0}.stats-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:24px 0}.stats-grid article{padding:20px;background:#183b2e;border:1px solid #73936866;border-radius:12px}.stats-grid strong{display:block;font-size:30px;color:var(--lime);margin:10px 0}.stats-grid span{font-size:16px}.stats-grid small{font-size:14px;color:#c5d4bd}.practice-controls{position:absolute;top:180px;left:28px;width:240px;padding:16px;border-radius:12px;display:flex;flex-direction:column;gap:12px;font-size:14px}.practice-controls select{background:#17382e;color:white;border:1px solid #81946d;padding:8px;border-radius:5px;max-width:100%;font:inherit}.practice-controls label{display:flex;justify-content:space-between;align-items:center;gap:8px}.replay-controls{position:absolute;top:115px;left:50%;transform:translateX(-50%);z-index:12;padding:12px 18px;border-radius:12px;display:flex;align-items:center;gap:16px;max-width:calc(100% - 24px)}.practice-controls[hidden],.replay-controls[hidden]{display:none}.shot-summary button{margin-top:12px;padding:8px 12px;min-height:44px}.replaying .shot-panel,.replaying .touch-aim,.replaying .course-tools,.replaying .shot-summary,.replaying .practice-controls{visibility:hidden}.home-header nav{flex-wrap:wrap}.equipment-card dl dd{line-height:1.5}.upgrade-preview{font-size:14px!important;line-height:1.6!important;color:#dce8cf!important}.medal-explainer{padding:14px 18px;border-left:3px solid var(--lime)}
@media(max-width:760px){.clubhouse-extras{grid-template-columns:1fr}.stats-grid{grid-template-columns:1fr 1fr}.practice-controls{top:155px;left:12px;width:195px;padding:10px;gap:7px;font-size:14px}.practice-controls strong{font-size:14px}.course-tools{flex-wrap:wrap;max-width:calc(100% - 24px)}.replay-controls{top:160px;flex-direction:column;gap:8px}.home-stats h1{font-size:30px}.shot-summary:has(#replayShot:not([hidden])){display:block;top:156px;bottom:auto;right:12px;left:auto;max-width:180px}.practicing .shot-summary{display:none!important}}
@media(max-width:450px){.stats-grid{grid-template-columns:1fr}.home-header nav{gap:6px}.home-tab{min-height:44px}}

.account-links{flex-wrap:wrap}.account-links button{font-size:14px}#passwordHelp p{font-size:16px;line-height:1.6}#passwordHelp .support-address{overflow-wrap:anywhere;font-size:14px}#passwordSupport{display:inline-flex;text-decoration:none;align-items:center;min-height:44px}#passwordHelpBack{display:block;min-height:44px}

/* HUD panels occupy flowing rows and scrollable rails instead of shared coordinates. */
#game{min-height:0;height:100dvh}
.hud-layout{position:absolute;inset:0;display:grid;grid-template-rows:auto minmax(0,1fr) auto;gap:12px;padding:16px max(16px,env(safe-area-inset-right)) max(12px,env(safe-area-inset-bottom)) max(16px,env(safe-area-inset-left));pointer-events:none;min-width:0;min-height:0}
#game.at-home .hud-layout{visibility:hidden;pointer-events:none}
.hud-layout .topbar{position:static;inset:auto;height:auto;min-height:44px;padding:0;flex-wrap:wrap;gap:12px;pointer-events:auto}
.hud-layout .top-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px}
.hud-middle{display:grid;grid-template-columns:minmax(0,284px) minmax(0,1fr) minmax(0,210px);gap:16px;min-height:0;min-width:0;overflow:hidden}
.hud-rail{display:flex;flex-direction:column;gap:12px;min-height:0;max-height:100%;min-width:0;overflow:auto;overscroll-behavior:contain;scrollbar-width:thin;align-self:start;padding:4px;pointer-events:auto}
.hud-center{display:flex;flex-direction:column;gap:12px;align-items:center;min-height:0;min-width:0;overflow:auto;align-self:start;max-height:100%;padding:4px}
.hud-layout :is(.hole-panel,.practice-controls,.caddie-note,.shot-summary,.wind-panel,.course-tools,.map-panel,.toast,.replay-controls,.flight-readout,.aim-tip,.touch-aim,.timing-panel,.shot-panel,.bottom-note){position:static;inset:auto;transform:none;margin:0;max-width:100%;min-width:0;flex-shrink:0;pointer-events:auto}
.hud-left :is(.hole-panel,.practice-controls,.caddie-note,.shot-summary){width:100%}
.hud-right :is(.wind-panel,.course-tools,.map-panel){width:100%}
.hud-layout .course-tools{align-items:stretch;flex-wrap:wrap}
.hud-layout .tool-button{justify-content:center;white-space:normal;min-height:44px}
.hud-layout .practice-controls{gap:10px;padding:14px;line-height:1.5}
.hud-layout .practice-controls label{margin:0;flex-wrap:wrap}
.hud-layout .practice-controls select{min-width:0}
.hud-layout .shot-summary>div{flex-wrap:wrap;gap:12px}
.hud-layout .shot-summary:has(#replayShot:not([hidden])){position:static;max-width:100%}
.hud-layout .toast{width:100%;border-radius:12px;overflow-wrap:anywhere}
.hud-layout .toast:not(.visible){display:none}
.hud-layout .replay-controls{width:100%;flex-wrap:wrap;justify-content:center;line-height:1.4}
.hud-layout .flight-readout{text-align:center}
.hud-layout #minimap{width:100%;height:auto;aspect-ratio:240/290}
.hud-bottom{display:flex;flex-direction:column;gap:10px;align-items:center;min-width:0;max-height:55dvh;overflow:auto;padding:4px;pointer-events:none}
.hud-layout .shot-panel{width:100%;max-width:1110px;flex-wrap:wrap;gap:16px;padding:16px}
.hud-layout .club-section{min-width:0;flex:1 1 210px}
.hud-layout .swing-section{min-width:0;flex:1 1 220px}
.hud-layout .swing-button{min-width:0;min-height:48px;flex:1 1 210px;padding:12px}
.hud-layout .timing-panel{width:min(100%,430px);padding:14px}
.hud-layout .timing-panel>div:first-child{flex-wrap:wrap;gap:6px}
.hud-layout .bottom-note{width:100%;gap:12px;flex-wrap:wrap;line-height:1.4}
.hud-layout .aim-tip{white-space:normal;text-align:center;flex-wrap:wrap;justify-content:center}
.hud-layout .outline-button{height:auto;min-height:40px;padding-block:8px;white-space:normal}
.hud-layout :is(.small-label,.lie-details,.hole-stats,.shot-stats,.power-caption,.club-label-row){flex-wrap:wrap;overflow-wrap:anywhere}
.hud-layout .hole-stats,.hud-layout .shot-stats{gap:10px}
.hud-layout .power-label{gap:8px;flex-wrap:wrap}
.hud-layout .touch-aim{align-self:flex-start}
.hud-layout .touch-aim button{flex:none}
#game:has(#timingPanel:not([hidden])) .touch-aim{display:none}
@media(max-width:900px){
 .hud-middle{grid-template-columns:minmax(0,240px) minmax(0,1fr) minmax(0,175px);gap:10px}
 .hud-layout .brand{font-size:16px}.hud-layout .round-label{display:none}
}
@media(max-width:760px),(max-height:500px) and (pointer:coarse){
 .hud-layout{gap:6px;padding:6px max(6px,env(safe-area-inset-right)) max(6px,env(safe-area-inset-bottom)) max(6px,env(safe-area-inset-left))}
 .hud-layout .topbar{justify-content:flex-end}
 .hud-middle{grid-template-columns:minmax(0,1fr) minmax(0,1fr);grid-template-rows:auto minmax(0,1fr);gap:6px}
 .hud-center{grid-column:1/-1;grid-row:1;width:100%;padding:0;max-height:20dvh;pointer-events:auto}
 .hud-center:has(.toast:not(.visible)):not(:has(.replay-controls:not([hidden]))):not(:has(.flight-readout:not([hidden]))){display:none}
 .hud-left{grid-column:1;grid-row:2}.hud-right{grid-column:2;grid-row:2}
 .hud-rail{gap:8px;padding:2px}
 .hud-layout .hole-panel{display:block;padding:10px}
 .hud-layout .hole-top{flex-direction:row;flex-wrap:wrap;margin-bottom:8px;gap:6px}
 .hud-layout .shot-stats{justify-content:space-between;gap:8px}
 .hud-layout .shot-stats strong{font-size:18px}
 .hud-layout .wind-panel{justify-content:center}
 .hud-layout .course-tools{flex-direction:column;max-width:100%;gap:6px}
 .hud-layout .practice-controls{font-size:14px;padding:10px;gap:8px}
 .hud-layout .practice-controls strong{font-size:14px}
 .hud-layout .practice-controls label{display:block}
 .hud-layout .practice-controls select{display:block;width:100%;margin-top:6px}
 .hud-layout .shot-summary:has(#replayShot:not([hidden])){display:block}
 .hud-layout .shot-panel{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:8px;padding:10px}
 .hud-layout .club-section{padding:0;border:0}
 .hud-layout .swing-button{grid-column:1/-1;padding:8px}
 .hud-layout .club-chooser>div{min-width:0;overflow-wrap:anywhere}
 .hud-layout .timing-panel{width:100%;padding:10px}
 .hud-bottom{gap:6px;max-height:50dvh}
 .hud-layout .touch-aim{display:flex;gap:8px}
 .hud-layout .shot-summary>div{gap:8px}
 .hud-layout .map-panel{max-width:100%}
}
@media(max-height:500px){.hud-layout .topbar{min-height:36px}.hud-layout .brand,.hud-layout .bottom-note,.hud-layout .aim-tip{display:none}.hud-bottom{max-height:45dvh}.hud-layout .shot-panel{padding:8px}.hud-layout .shot-panel .power-caption{display:none}.hud-layout .touch-aim{display:none}}

.home-greenskeeper{max-width:1240px;margin:auto;padding:24px clamp(16px,3vw,38px) 36px}.keeper-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap}.keeper-heading h1{font-size:32px;margin:10px 0}.keeper-heading p{font-size:16px;line-height:1.5;max-width:520px}.keeper-scores{display:flex;flex-wrap:wrap;gap:20px;font-size:14px}.keeper-scores strong{display:block;font-size:28px;color:var(--lime);font-variant-numeric:tabular-nums;margin-top:5px}.keeper-layout{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:20px;margin-top:20px}.keeper-stage{position:relative;border-radius:16px;overflow:hidden;border:1px solid #ffffff30;min-width:0;background:#193d30;height:440px}.keeper-stage canvas{width:100%;height:100%;display:block}.keeper-controls{padding:20px;background:#16382e;border:1px solid #ffffff30;border-radius:16px;min-width:0}.keeper-controls fieldset{border:0;padding:0;margin:0;min-width:0}.keeper-controls legend{margin-top:0;font-size:16px}.keeper-tools{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.keeper-tools button{padding:12px;border:1px solid #ffffff40;border-radius:8px;background:#11291f;color:#fff;text-align:left;font-size:16px;min-width:0}.keeper-tools button[aria-pressed=true]{border-color:var(--lime);background:#385637}.keeper-tools small{display:block;font-size:12px;line-height:1.4;color:#cbdac5;margin-top:5px}.keeper-controls>.outline-button{width:100%;margin-top:12px;height:auto;min-height:44px}.keeper-controls>small{font-size:14px;line-height:1.5;display:block;color:#cbdac5}.keeper-controls p{font-size:16px;line-height:1.5;min-height:48px}.keeper-timing{height:20px;position:relative;background:#ffffff20;border-radius:6px;overflow:hidden}.keeper-target{position:absolute;left:41%;width:18%;inset-block:0;background:#b8e681}.keeper-timing #keeperNeedle{position:absolute;top:0;bottom:0;width:4px;background:white;transform:translateX(-50%)}#keeperRenderError{position:absolute;inset:20px;background:#17382e;padding:20px}.home-header nav{min-width:0}.home-header nav button{white-space:normal}@media(max-width:760px){.keeper-layout{grid-template-columns:minmax(0,1fr)}.keeper-stage{height:300px}.keeper-heading h1{font-size:28px}.keeper-controls{padding:16px}.keeper-scores{gap:18px}.home-header nav{justify-content:flex-start}}

.keeper-tools{max-height:280px;overflow-y:auto;overscroll-behavior:contain;padding:4px;scrollbar-color:#9fbd7b #16382e}.keeper-tools button:focus-visible{outline-offset:1px}

/* The phone course has its own grid cell: HUD controls never cover the canvas. */
.mobile-round-strip,.mobile-notice{display:none}
#mobileDetailsDialog .hud-rail{position:static;display:flex;max-height:none;overflow:visible;width:100%;padding:0;gap:14px}
#mobileDetailsDialog :is(.hole-panel,.practice-controls,.caddie-note,.shot-summary,.wind-panel,.course-tools,.map-panel){position:static;inset:auto;transform:none;max-width:100%;width:100%;margin:0;padding:12px;flex-shrink:0}
#mobileDetailsDialog :is(.hole-panel,.caddie-note,.shot-summary,.wind-panel,.map-panel){display:block}
#mobileDetailsDialog .course-tools{display:flex;flex-wrap:wrap;gap:8px}
#mobileDetailsDialog .tool-button{min-height:44px;font-size:14px;flex:1}
#mobileDetailsDialog .map-panel{max-width:260px;margin:auto}
#mobileDetailsDialog #minimap{width:100%;height:auto;aspect-ratio:240/290}
#mobileDetailsDialog .hud-left{margin-bottom:14px}
#mobileDetailsDialog .mobile-detail-actions{margin-top:18px}
#mobileDetailsDialog .mobile-detail-actions button{min-height:44px;flex:1 1 120px;margin:0}
#mobileDetailsDialog.map-mode .hud-left,#mobileDetailsDialog.map-mode .hud-right>:not(.map-panel),#mobileDetailsDialog.map-mode .mobile-detail-actions{display:none}
#mobileDetailsDialog h2{font-size:26px;padding-right:24px}
#mobileDetailsDialog .dialog-close{min-width:44px;min-height:44px;top:4px;right:4px}
@media(max-width:760px),(max-height:500px) and (pointer:coarse){
 #game:not(.at-home){display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:auto minmax(0,1fr) auto}
 #game:not(.at-home) #course{position:relative;inset:auto;grid-column:1;grid-row:2;width:100%;height:100%;min-width:0;min-height:0;align-self:stretch}
 #game:not(.at-home) .hud-layout{display:contents}
 #game:not(.at-home) .hud-layout .topbar{grid-column:1;grid-row:1;display:flex;flex-direction:column;align-items:stretch;gap:2px;padding:4px max(8px,env(safe-area-inset-right)) 2px max(8px,env(safe-area-inset-left));background:#122d24;min-height:0}
 .hud-layout .top-actions{display:grid;grid-template-columns:1fr 1fr 1.35fr;gap:6px}
 .hud-layout .top-actions .outline-button{min-height:44px;height:44px;font-size:14px;padding:4px 8px}
 .hud-layout .topbar>.brand,.hud-layout .topbar>.round-label,.hud-layout .top-actions>:is(#soundButton,#helpButton,#scoreButton){display:none}
 .hud-layout .mobile-round-strip{display:flex;align-items:center;justify-content:space-between;gap:4px;min-height:24px;font-size:12px;line-height:1.4;flex-wrap:wrap;color:#e2ebd7;font-variant-numeric:tabular-nums}
 .mobile-round-strip strong{color:var(--lime);font-size:15px}
 .hud-layout .mobile-notice{display:block;height:20px;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:12px;line-height:20px;color:#dafa9a}
 .hud-layout .hud-middle{display:none}
 #game:not(.at-home) .hud-bottom{grid-column:1;grid-row:3;display:flex;gap:0;max-height:42dvh;padding:4px max(6px,env(safe-area-inset-right)) max(4px,env(safe-area-inset-bottom)) max(6px,env(safe-area-inset-left));background:#122d24;overflow:auto}
 .hud-layout .shot-panel{display:grid;grid-template-columns:minmax(0,1fr) minmax(120px,.8fr);gap:4px 8px;padding:4px 6px;min-height:0;border:0;border-radius:0;background:transparent;box-shadow:none;backdrop-filter:none}
 .hud-layout .club-section{grid-column:1;grid-row:1;min-width:0;padding:0;border:0}
 .hud-layout .club-label-row{display:none}
 .hud-layout .club-chooser{height:44px;gap:2px;margin:0}
 .hud-layout .club-chooser strong{font-size:15px;line-height:1.2}
 .hud-layout .club-chooser>div>span{display:none}
 .hud-layout .club-arrow{width:44px;min-width:44px;height:44px;font-size:28px}
 .hud-layout .touch-aim{grid-column:2;grid-row:1;display:flex;align-self:center;justify-self:end;gap:8px;margin:0}
 .hud-layout .touch-aim button{height:44px;width:44px}
 .hud-layout .swing-section{grid-column:1;grid-row:2;align-self:center}
 .hud-layout .swing-button{grid-column:2;grid-row:2;min-height:48px;height:auto;padding:8px 6px;font-size:15px}
 .hud-layout .swing-button>span:nth-child(2){font-size:15px}
 .hud-layout .power-label{margin:0 0 4px;gap:4px;flex-wrap:nowrap}
 .hud-layout .power-label .small-label{font-size:12px;letter-spacing:0}
 .hud-layout .power-label strong{font-size:17px}
 .hud-layout .power-caption{font-size:12px;line-height:1.25;margin-top:4px}
 .hud-layout .power-caption #suggestion{font-size:12px}
 .hud-layout .timing-panel{position:static;transform:none;width:100%;max-width:none;padding:6px 8px;margin:0;border:0;border-radius:0}
 .hud-layout .timing-panel .timing-labels{display:none}
 .hud-layout .aim-tip,.hud-layout .bottom-note{display:none}
 #game.setting-shot .touch-aim{visibility:hidden}
 #game.ball-in-play .hud-layout .shot-panel,#game.replaying .hud-layout .shot-panel{display:none}
 #game.replaying .hud-layout #mobileReplayStop{display:block;width:100%;min-height:44px}
 #game.ball-in-play .hud-bottom{padding-block:0}
}
@media(max-height:500px) and (pointer:coarse){
 #game:not(.at-home){grid-template-columns:minmax(0,1fr) minmax(220px,32%);grid-template-rows:auto minmax(0,1fr)}
 #game:not(.at-home) .hud-layout .topbar{grid-column:1/-1;flex-direction:row;align-items:center;flex-wrap:wrap;gap:4px 12px}
 .hud-layout .top-actions{flex:0 0 280px}
 .hud-layout .mobile-round-strip{flex:1;min-width:245px}
 .hud-layout .mobile-notice{display:none}
 #game:not(.at-home) .hud-bottom{grid-column:2;grid-row:2;max-height:100%;justify-content:center}
 .hud-layout .shot-panel{grid-template-columns:minmax(0,1fr)}
 .hud-layout .club-section{grid-column:1;grid-row:1}.hud-layout .touch-aim{grid-column:1;grid-row:2;justify-self:center}
 .hud-layout .swing-section{grid-column:1;grid-row:3}.hud-layout .swing-button{grid-column:1;grid-row:4}
}
#mobileDetailsDialog .hole-panel :is(h1,.hole-stats,.hole-divider,.lie-details,#roundScore,.shot-stats>div:last-child){display:revert}
#mobileDetailsDialog .hole-panel .hole-stats,#mobileDetailsDialog .hole-panel .lie-details{display:flex;flex-wrap:wrap;gap:12px}
#mobileDetailsDialog .practice-controls select{font-size:16px;max-width:100%}
#mobileDetailsDialog #minimap{touch-action:none}

.keeper-options{display:flex;align-items:center;flex-wrap:wrap;gap:12px;margin-top:14px;font-size:14px}.keeper-options label{display:flex;align-items:center;gap:10px}.keeper-options select{font:inherit;min-height:44px;background:#16382e;color:#f8f9ef;border:1px solid #ffffff45;border-radius:8px;padding:8px 30px 8px 10px}.keeper-options .outline-button{min-height:44px;height:auto;margin-left:auto;padding:8px 14px}.keeper-options>span{color:#cbdac5}.keeper-round-metrics{display:flex;gap:14px;flex-wrap:wrap;margin-bottom:18px;font-size:14px}.keeper-round-metrics b{display:block;font-size:22px;color:var(--lime);margin-top:3px;font-variant-numeric:tabular-nums}.keeper-tool-drawer{border-top:1px solid #ffffff30;border-bottom:1px solid #ffffff30;margin:8px 0 18px;padding:8px 0}.keeper-tool-drawer summary{cursor:pointer;min-height:44px;align-content:center;font-size:16px}.keeper-tool-drawer .keeper-tools{margin-top:8px}.keeper-perfect-zone{position:absolute;inset-block:0;background:#edffd1;border-inline:1px solid white}.keeper-target{background:#589957}.keeper-controls #keeperFeedback{min-height:72px;margin:16px 0 8px;color:#ecf6d9}.keeper-stage{height:510px}.keeper-heading h1{font-size:30px}.keeper-heading p{margin:6px 0}.keeper-controls>label{display:block;font-size:14px;margin-bottom:8px}.keeper-options #keeperCamera{white-space:nowrap}
@media(max-width:760px){.home-greenskeeper{padding:12px 14px 24px}.keeper-heading{gap:10px}.keeper-heading h1{font-size:25px}.keeper-heading p{font-size:14px}.keeper-scores{gap:16px}.keeper-scores strong{font-size:23px}.keeper-options{gap:8px}.keeper-options>span{flex-basis:100%;order:3}.keeper-stage{height:clamp(240px,40dvh,380px)}.keeper-layout{margin-top:12px;gap:12px}.keeper-round-metrics{margin-bottom:12px;justify-content:space-between}.keeper-controls{padding:14px}.keeper-controls #keeperFeedback{min-height:48px}.keeper-tool-drawer .keeper-tools{max-height:220px}}
.keeper-controls .keeper-tool-info{font-size:14px;line-height:1.5;min-height:0;margin:0 0 12px;color:#cbdac5}
.keeper-scene-column{min-width:0}.keeper-dialogue{padding:14px 18px;background:#10291f;border:1px solid #ffffff25;border-radius:12px;margin-top:12px;min-height:100px}.keeper-dialogue>span{font-size:12px;letter-spacing:1.4px;color:#b8d499}.keeper-dialogue p{font-size:18px;line-height:1.45;margin:6px 0 0}.keeper-options #keeperSound{margin-left:auto}.keeper-options #keeperCamera{margin-left:0}@media(max-width:760px){.keeper-dialogue{min-height:96px;padding:12px 14px}.keeper-dialogue p{font-size:16px}.keeper-options #keeperSound{margin-left:0}}


.hud-layout .fast-forward-shot{pointer-events:auto;min-height:44px;background:#19352df2;border-color:#dafa9a88;color:#dafa9a;padding:10px 18px}.hud-layout .fast-forward-shot[aria-pressed=true]{background:#dafa9a;color:#16382e}@media(max-width:760px),(max-height:500px) and (pointer:coarse){.hud-layout .fast-forward-shot{width:100%;margin:4px 0;min-height:44px}}

.music-controls{display:flex;align-items:center;flex-wrap:wrap;gap:12px 18px;padding:16px 0;border-top:1px solid #ffffff24}.music-controls button{min-height:44px}.music-controls label{display:flex;gap:12px;font-size:14px;margin:0}.music-controls output{min-width:3ch;font-variant-numeric:tabular-nums}.music-controls input[type=range]{width:160px;max-width:100%;min-height:44px;accent-color:#dafa9a}.music-controls button[aria-pressed=true]{border-color:#dafa9a;color:#dafa9a}

.hud-layout .fast-forward-shot{min-width:210px;flex-shrink:0;user-select:none;-webkit-user-select:none;touch-action:manipulation}.hud-layout .fast-forward-shot:disabled{opacity:1;cursor:default}
