#camera-tile{z-index:3;background:var(--panel);border-radius:14px;width:96px;position:absolute;top:12px;left:0;overflow:hidden}#camera-tile .camera-preview-box{border:0;border-radius:0;width:96px;height:128px;margin:0}#camera-tile button{border:0;width:100%;min-height:44px;padding:4px;font-size:12px}#camera-tile video,#camera-tile canvas{object-fit:contain}.camera-preview-box canvas{transform:none}#camera-tile.result-visible{display:none}#camera-tile video{transform:scaleX(-1)}#swing-card{z-index:3;background:var(--panel);border-radius:16px;width:min(360px,100% - 24px);padding:12px 16px;position:relative}#swing-card>strong{font-size:14px;font-weight:600}#swing-card p{color:var(--ink-3);margin:4px 0 12px;font-size:12px}#swing-card-figures{grid-template-columns:1fr 1.7fr 1fr;gap:12px;display:grid}#swing-card-figures div{gap:4px;display:grid}#swing-card-figures span{color:var(--ink-3);font-size:12px}#swing-card-figures strong{font-size:13px;font-weight:500}#swing-view{width:100%;min-height:44px;color:var(--accent);background:0 0;border:0;margin-top:12px}#swing-sheet[open],#swing-history[open]{gap:16px;display:grid}#swing-replay{gap:4px;display:grid}#swing-replay-canvas{background:#0b1012;border-radius:12px;width:100%;max-height:220px}#swing-replay input{width:100%;min-height:44px;accent-color:var(--accent)}#swing-markers{justify-content:space-between;gap:4px;display:flex;position:relative}#swing-markers button{background:0 0;border:0;min-width:44px;min-height:44px;padding:4px;font-size:12px}#swing-markers button:before{content:"";left:var(--position);background:var(--accent);pointer-events:none;width:2px;height:7px;position:absolute;top:-23px}.swing-replay-controls{grid-template-columns:1fr;gap:12px;display:grid}.swing-replay-controls>button{flex:1;min-height:44px}.swing-replay-controls fieldset{flex:1}.swing-feedback-row{padding:12px 0}.swing-feedback-row strong{align-items:center;gap:8px;font-size:13px;font-weight:500;display:flex}.swing-feedback-row p{color:var(--ink-2);margin:4px 0 0;font-size:13px}.swing-dot{border-radius:50%;flex:none;width:6px;height:6px}.swing-dot.green{background:var(--accent)}.swing-dot.amber{background:#c7ac77}.swing-dot.red{background:#ce8b88}.swing-values{grid-template-columns:1fr 1fr;gap:12px 16px;margin:0;font-size:13px;display:grid}.swing-values dt{color:var(--ink-2)}.swing-values dd{text-align:right;margin:0}.swing-values small{color:var(--ink-3);margin-top:4px;font-size:12px;display:block}#swing-sheet summary,#swing-history summary,.camera-power-settings summary{cursor:pointer;min-height:44px;color:var(--ink-2);align-items:center;font-size:13px;display:flex}#swing-history-list,#swing-attempt-list{gap:4px;display:grid}#swing-history-list button,#swing-attempt-list button{text-align:left;background:0 0;border:0;min-height:44px;padding:12px 0;font-size:13px}.camera-power-settings{grid-column:1/-1;gap:12px;display:grid}.camera-power-settings .segments{grid-template-columns:1fr 1fr}.camera-power-settings .seg span{white-space:normal;text-align:center}#camera-state-preview .camera-preview-box video{transform:scaleX(-1)}@media (max-height:500px) and (orientation:landscape){#camera-tile{top:0;left:0}#swing-card{grid-column:2;width:min(360px,100%)}#swing-replay-canvas{max-height:130px}}@media (prefers-reduced-motion:reduce){#swing-sheet,#swing-card,#camera-tile{transition:none;animation:none}}#camera-checklist{grid-template-columns:1fr 1fr;gap:8px 12px;margin:0;padding:0;list-style:none;display:grid}@font-face{font-family:Inter;src:url(/brand/inter.woff2)format("woff2");font-weight:100 900;font-display:swap}:root{font-synthesis:none;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--ink:#f5f7f8;--ink-2:#c3cdd0;--ink-3:#8e9ca0;--glass:#12171ae6;--panel:#151a1cfa;--edge:#ffffff1f;--accent:#3fd2bb;--accent-rgb:63 210 187;--accent-ink:#04302a;--trail:#50d9e5;--warn:#f0d8a8;--focus:#7db7ff;font-family:Inter,system-ui,sans-serif;font-size:16px;font-style:normal}*{box-sizing:border-box}body{color:var(--ink);-webkit-font-smoothing:antialiased;background:#0f1416;margin:0}button,input{font:inherit;color:inherit}[hidden]{display:none!important}.sr-only{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}button{border:1px solid var(--edge);cursor:pointer;background:#ffffff12;border-radius:22px;min-height:44px;padding:0 18px;font-size:.9375rem;font-weight:500;transition:background .12s,transform .12s}button:hover{background:#ffffff1f}button:active{transform:scale(.98)}button:disabled,input:disabled{opacity:.5;cursor:default}button:disabled:active{transform:none}:focus-visible{outline:3px solid var(--focus);outline-offset:2px}.primary,.secondary{border-radius:26px;min-height:52px;font-size:1rem;font-weight:600}.primary{background:var(--accent);color:var(--accent-ink);border-color:#dcfffa66}.primary:hover{background:#59dcc8}.secondary{background:0 0}.icon-button{background:0 0;border:0;border-radius:50%;place-items:center;width:44px;height:44px;padding:0;display:grid}.icon-button svg{width:22px;height:22px}input[type=number],input[type=range]{accent-color:var(--accent)}.sim-shell{background:#0f1416;height:100svh;position:relative;overflow:hidden}canvas{touch-action:none;width:100%;height:100%;display:block}.loading-screen{z-index:20;text-align:center;background:#0f1416;flex-direction:column;justify-content:center;align-items:center;gap:16px;padding:24px;display:flex;position:absolute;inset:0}.loading-screen img{border-radius:10px}.loading-screen h2{margin:0;font-size:1.25rem;font-weight:600}.loading-screen p{max-width:520px;color:var(--ink-2);margin:0;line-height:1.55}.loading-screen button{min-width:160px}@media (prefers-reduced-motion:reduce){button{transition:none}button:active{transform:none}}.course-view{position:absolute;inset:0}.hud{z-index:2;padding:calc(env(safe-area-inset-top) + 3px) max(12px, env(safe-area-inset-right)) calc(env(safe-area-inset-bottom) + 9px) max(12px, env(safe-area-inset-left));pointer-events:none;grid-template-rows:auto 1fr auto;display:grid;position:absolute;inset:0}.hud button,.hud input{pointer-events:auto}.hud-top{justify-items:center;gap:6px;display:grid}.topbar{grid-template-columns:44px 1fr 44px 44px;align-items:center;width:100%;height:44px;display:grid}.topbar .icon-button{color:#fff;filter:drop-shadow(0 1px 3px #00000080);pointer-events:auto}.brand{text-shadow:0 1px 8px #00000080;justify-self:center;align-items:center;gap:8px;display:flex}.brand img{border-radius:7px}.brand span{white-space:nowrap;font-size:1rem;font-weight:500}.instrument-bar,.shot-result,.notices{width:100%;max-width:560px}.instrument-bar{border:1px solid var(--edge);background:var(--glass);pointer-events:auto;border-radius:14px;grid-template-columns:44fr 28fr 28fr;min-height:72px;display:grid}.cell{flex-direction:column;justify-content:center;gap:3px;min-width:0;padding:10px 14px;display:flex}.cell+.cell{background:linear-gradient(#ffffff29,#ffffff29) 0/1px 60% no-repeat}.muted{color:var(--ink-3);font-size:.75rem}.hole-cell h1{margin:0;font-size:1.0625rem;font-weight:600;line-height:1.2}.par-cell strong{font-size:1rem;font-weight:500}.par-cell span{color:var(--ink-2);font-variant-numeric:tabular-nums;font-size:.875rem}.wind-cell{grid-template-columns:auto minmax(0,1fr);align-content:center;column-gap:8px;display:grid}.wind-arrow{width:22px;height:22px;fill:var(--trail);grid-row:1/3;align-self:center}.wind-arrow path{transform-origin:16px 16px}.wind-arrow.calm{display:none}.wind-cell p{font-variant-numeric:tabular-nums;grid-column:2;margin:0;font-size:.8125rem;line-height:1.3;display:grid}.wind-arrow.calm+p{grid-column:1/-1;font-size:.9375rem}.wind-cell #wind-heading{color:var(--ink-3);font-size:.75rem}.wind-cell #strokes,.wind-cell #lie{grid-column:1/-1;display:none}.is-putting .wind-arrow,.is-putting .wind-cell p{display:none}.is-putting .wind-cell #strokes{color:var(--trail);white-space:nowrap;font-size:.9375rem;font-weight:500;display:block}.is-putting .wind-cell #lie{color:var(--ink-3);text-transform:capitalize;font-size:.75rem;display:block}.shot-result{border:1px solid var(--edge);background:var(--glass);border-radius:14px;grid-auto-columns:1fr;grid-auto-flow:column;gap:4px;padding:8px 10px;display:grid}.sim-shell[data-sheet=true] .shot-result{display:none}.result-metric{text-align:center;gap:2px;min-width:0;display:grid}.result-metric span{letter-spacing:.04em;color:var(--ink-3);text-transform:uppercase;font-size:.6875rem}.result-metric strong{white-space:nowrap;font-variant-numeric:tabular-nums;font-size:1rem;font-weight:500}.notices{gap:6px;display:grid}.notices:not(:has(.notice:not([hidden]))){display:none}.notice{border:1px solid var(--edge);background:var(--glass);text-align:center;border-radius:12px;margin:0;padding:8px 14px;font-size:.8125rem;line-height:1.4}.notice.warning,#audio-status{color:var(--warn)}.hud-mid{min-height:0;position:relative}.minimap{border:1px solid var(--edge);background:var(--glass);border-radius:33px;width:66px;height:184px;padding:4px;display:block;position:absolute;top:12px;right:0;overflow:hidden}.minimap[aria-pressed=true]{border-color:var(--trail)}.minimap canvas{object-fit:cover;border-radius:29px;width:100%;height:100%}.pin-callout{z-index:1;border:1px solid var(--edge);text-align:center;pointer-events:none;background:#12171ac7;border-radius:12px;min-width:92px;padding:8px 12px;position:absolute;top:0;left:0}.pin-callout strong{white-space:nowrap;font-variant-numeric:tabular-nums;font-size:1.5rem;font-weight:600;line-height:1.1;display:block}.pin-callout span{color:var(--ink-2);white-space:nowrap;margin-top:3px;font-size:.8125rem;display:block}.hud-bottom{justify-self:center;width:100%;max-width:440px;display:grid}.shot-panel{gap:12px;transition:opacity .16s;display:grid}.is-flight .shot-panel{visibility:hidden;opacity:0}.is-replay .shot-panel,.is-paused .shot-panel{opacity:.5}.sim-shell[data-sheet=true] .shot-panel{display:none}.club-card{border-color:var(--edge);background:var(--glass);text-align:left;border-radius:16px;grid-template-columns:80px minmax(0,1fr) 40px;align-items:center;gap:10px;min-height:97px;padding:8px 12px 8px 8px;display:grid}.club-visual{width:80px;height:80px;display:block}.club-visual img{object-fit:contain;filter:drop-shadow(0 3px 4px #00000059);width:100%;height:100%;display:block}.club-copy{gap:3px;min-width:0;display:grid}.club-title{align-items:baseline;gap:8px;display:flex}.club-title strong{font-size:1.0625rem;font-weight:600}.club-power{color:var(--ink-3);font-variant-numeric:tabular-nums;font-size:.75rem}.club-stat{color:var(--ink-2);gap:10px;font-size:.8125rem;display:flex}.club-stat span{width:38px;color:var(--ink-3)}.club-stat b{color:var(--ink);font-variant-numeric:tabular-nums;white-space:nowrap;font-weight:500}.club-chevron{border:1px solid var(--edge);border-radius:12px;place-items:center;width:40px;height:44px;display:grid}.club-chevron svg{width:20px;height:20px}.shot-panel[data-putting=true]{row-gap:8px}.shot-panel[data-putting=true] .club-card{border-radius:22px;grid-template-columns:auto auto;width:-moz-fit-content;width:fit-content;min-height:44px;padding:0 6px 0 16px}.shot-panel[data-putting=true] .club-visual,.shot-panel[data-putting=true] .club-stat,.shot-panel[data-putting=true] .club-power{display:none}.shot-panel[data-putting=true] .club-chevron{border:0;width:32px;height:32px}.putting-power{border:1px solid var(--edge);background:var(--glass);border-radius:16px;padding:10px 12px 8px}.power-control{gap:4px;display:grid}.label-row{align-items:baseline;gap:10px;display:flex}.label-row label{color:var(--ink-2);font-size:.8125rem}.label-row output{font-variant-numeric:tabular-nums;font-size:1.0625rem;font-weight:600}#putt-guide{color:var(--ink-3);margin-left:auto;font-size:.75rem}.power-track{grid-template-columns:44px minmax(0,1fr) 44px;align-items:center;gap:4px;display:grid}.power-track button{background:0 0;border-radius:50%;padding:0;font-size:1.25rem;font-weight:400}.power-presets{display:none}.putt-scale{color:var(--ink-3);justify-content:space-between;padding:0 52px;font-size:.6875rem;display:none}.putting-power .putt-scale{display:flex}input[type=range]{appearance:none;cursor:pointer;background:0 0;width:100%;height:44px;margin:0}input[type=range]::-webkit-slider-runnable-track{background:linear-gradient(to right, var(--trail) var(--power,100%), #d3e6dc33 var(--power,100%));border-radius:3px;height:6px}input[type=range]::-webkit-slider-thumb{appearance:none;background:#f2f6f7;border:2px solid #bfd0d4;border-radius:8px;width:18px;height:26px;margin-top:-10px;box-shadow:0 1px 6px #0006}input[type=range]::-moz-range-track{background:#d3e6dc33;border-radius:3px;height:6px}input[type=range]::-moz-range-progress{background:var(--trail);border-radius:3px;height:6px}input[type=range]::-moz-range-thumb{background:#f2f6f7;border:2px solid #bfd0d4;border-radius:8px;width:14px;height:22px}.action-dock{grid-template-columns:61px minmax(0,1fr) 61px;align-items:center;gap:24px;margin-top:8px;display:grid}.dock-action{color:#fff;letter-spacing:.05em;text-shadow:0 1px 4px #0009;text-transform:uppercase;background:0 0;border:0;border-radius:14px;align-content:center;justify-items:center;gap:4px;width:61px;min-height:68px;padding:0;font-size:.6875rem;display:grid}.dock-action svg{filter:drop-shadow(0 1px 3px #00000080);width:22px;height:22px}.dock-action:hover{background:#12171a8c}.hit{width:min(179px,100%);height:68px;color:var(--accent-ink);letter-spacing:.02em;background:linear-gradient(#45e0cf,#38bfa9);border:1px solid #dcfffa73;border-radius:34px;justify-self:center;font-size:1.125rem;font-weight:650;box-shadow:inset 0 1px #e1fffa8c,0 6px 16px #04100f73}.hit:hover{background:linear-gradient(#5ae8d8,#44c9b3)}.hit:disabled{box-shadow:none;color:#cfe6e1;opacity:.8;background:#3f6e68}.shot-panel[data-putting=true] .hit{color:#e9fff4;background:linear-gradient(#17402e,#0f2c20);border-color:#78d2aa66;box-shadow:0 6px 16px #04100c73}.phase-sheet{border:1px solid var(--edge);background:var(--glass);pointer-events:auto;border-radius:20px;gap:14px;padding:16px;display:grid}.phase-summary{text-align:center;gap:4px;display:grid}.phase-summary strong{font-size:1.75rem;font-weight:600;line-height:1.15}.phase-summary span{color:var(--ink-2);font-variant-numeric:tabular-nums;font-size:.8125rem}#phase-actions{gap:10px;display:grid}#phase-actions button{border-radius:29px;min-height:58px}@media (min-width:700px) and (min-height:501px){.hud{padding-right:max(24px, env(safe-area-inset-right));padding-left:max(24px, env(safe-area-inset-left))}.minimap{border-radius:36px;width:72px;height:200px}.minimap canvas{border-radius:32px}}@media (orientation:landscape) and (max-height:31em){.hud{padding-top:calc(env(safe-area-inset-top) + 6px);padding-bottom:calc(env(safe-area-inset-bottom) + 8px)}.hud-top{grid-template-columns:44px minmax(0,1fr) 44px 44px;align-items:start;column-gap:8px}.topbar{display:contents}.brand{display:none}#menu-open{grid-area:1/1}#camera-mode-toggle{grid-area:1/3}#settings-open{grid-area:1/4}.instrument-bar{grid-area:1/2;max-width:460px;min-height:48px}.shot-result,.notices{grid-column:2;max-width:460px}.cell{gap:1px;padding:5px 12px}.hole-cell h1{font-size:.9375rem}.muted,.par-cell span{font-size:.75rem}.minimap{border-radius:26px;width:52px;height:124px;top:0}.minimap canvas{border-radius:22px}.hud-bottom{justify-self:stretch;max-width:none}.shot-panel{grid-template-columns:minmax(0,270px) minmax(0,1fr);align-items:end;gap:12px}.club-card{grid-template-columns:52px minmax(0,1fr) 36px;gap:8px;min-height:64px;padding:6px 8px}.club-visual{width:52px;height:52px}.club-copy{gap:1px}.club-title strong{font-size:.9375rem}.club-stat{font-size:.75rem}.club-chevron{width:36px;height:40px}.action-dock{grid-column:2;grid-template-columns:52px 150px 52px;justify-self:end;gap:10px;width:max-content;margin:0}.dock-action{width:52px;min-height:56px}.hit{border-radius:28px;width:150px;height:56px}.shot-panel[data-putting=true]{grid-template-columns:auto minmax(0,1fr) auto}.shot-panel[data-putting=true] .action-dock{grid-column:3}.putting-power{padding:4px 12px}.putting-power .power-control{grid-template-columns:auto minmax(0,1fr);align-items:center;gap:12px}.putting-power .label-row{gap:0;display:grid}.putting-power #putt-guide,.putting-power .putt-scale{display:none}.phase-sheet{justify-self:end;gap:10px;max-width:420px;padding:12px}#phase-actions{grid-auto-flow:column}#phase-actions button{min-height:48px}.phase-summary strong{font-size:1.25rem}}@media (max-width:21em){.sim-shell{flex-direction:column;height:auto;min-height:100svh;display:flex;overflow:visible}.course-view{flex:none;order:2;height:min(42svh,260px);min-height:190px;position:relative}.hud{display:contents}.hud-top,.hud-mid,.hud-bottom{width:100%;padding-inline:8px}.hud-top{order:1}.hud-mid{order:3;justify-content:flex-end;padding-top:8px;display:flex}.hud-bottom{max-width:none;padding-bottom:calc(env(safe-area-inset-bottom) + 12px);order:4}.minimap{border-radius:26px;width:52px;height:112px;position:static}.minimap canvas{border-radius:22px}.instrument-bar{grid-template-columns:1fr 1fr}.hole-cell{grid-column:1/-1}.cell+.cell{background:0 0}.hole-cell+.cell{border-top:1px solid var(--edge)}.club-card{grid-template-columns:56px minmax(0,1fr) 36px;min-height:84px}.club-visual{width:56px;height:56px}.action-dock{grid-template-columns:52px minmax(0,1fr) 52px;gap:8px}.dock-action{width:52px}.putt-scale{padding:0 48px}}@media (prefers-reduced-motion:reduce){.shot-panel{transition:none}}.sim-shell:has(.controls-dialog[open]) .club-card{visibility:hidden}dialog{border:1px solid var(--edge);background:var(--panel);width:min(520px,100% - 24px);max-height:calc(100svh - 24px);color:var(--ink);border-radius:22px;margin:auto;padding:20px 20px 24px;overflow:auto;box-shadow:0 18px 60px #00000080}dialog::backdrop{background:#04080a99}dialog p{color:var(--ink-2);margin:0 0 12px;font-size:.875rem;line-height:1.6}dialog form{gap:16px;display:grid}dialog form>p{margin:0}.dialog-title{justify-content:space-between;align-items:center;gap:12px;display:flex}.dialog-title h2{margin:0;font-size:1.125rem;font-weight:600}.dialog-title .icon-button{border:1px solid var(--edge);background:#ffffff0d}.dialog-title .icon-button svg{width:18px;height:18px}.fine-print{color:var(--ink-3);margin:0;font-size:.75rem;line-height:1.45}.sheet{width:min(480px,100%);padding-bottom:calc(env(safe-area-inset-bottom) + 20px);border-bottom:0;border-radius:22px 22px 0 0;margin:auto auto 0}@media (min-width:600px){.sheet{border-bottom:1px solid var(--edge);border-radius:22px;margin-bottom:16px}}.selected-club{grid-template-columns:104px minmax(0,1fr);align-items:center;gap:16px;display:grid}.selected-visual{width:104px;height:104px}.selected-visual img,.club-option-art img{object-fit:contain;filter:drop-shadow(0 3px 4px #00000059);width:100%;height:100%;display:block}.selected-copy{gap:6px;display:grid}.selected-copy strong{font-size:1.5rem;font-weight:600;line-height:1.15}.selected-copy dl{gap:3px;margin:0;font-size:.875rem;display:grid}.selected-copy dl div{gap:12px;display:flex}.selected-copy dt{width:44px;color:var(--ink-3)}.selected-copy dd{font-variant-numeric:tabular-nums;margin:0;font-weight:500}.selected-copy #club-hint{color:var(--ink-3);margin:0;font-size:.75rem}.club-sheet{width:min(600px,100%)}.club-options{overscroll-behavior:contain;scrollbar-gutter:stable;max-height:min(42svh,400px);padding:3px;overflow-y:auto}.club-group+.club-group{margin-top:16px}.club-group h3{color:var(--ink-2);margin:0 0 8px;font-size:.8125rem;font-weight:600}.club-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;display:grid}.club-options button{border-radius:14px;align-content:center;justify-items:center;gap:4px;min-width:0;min-height:96px;padding:8px 4px;font-size:.75rem;display:grid}.club-options strong{overflow-wrap:anywhere;text-align:center;min-width:0;max-width:100%;font-weight:500;line-height:1.2;display:block}.club-option-art{width:56px;height:56px;display:block}.club-options button[aria-pressed=true]{border-color:var(--accent);background:rgb(var(--accent-rgb) / .14)}@media (max-width:599px){.club-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.club-options button{min-height:88px}.club-option-art{width:48px;height:48px}.selected-club{grid-template-columns:80px minmax(0,1fr);gap:12px}.selected-visual{width:80px;height:80px}.selected-copy strong{font-size:1.25rem}}.controls-dialog{z-index:5;inset:auto 0 calc(env(safe-area-inset-bottom) + 96px) 0;border-bottom:1px solid var(--edge);border-radius:22px;width:min(440px,100% - 24px);margin:0 auto;padding:10px 16px 14px;position:fixed}.controls-dialog form{gap:8px}.shot-content{gap:8px;display:grid}.controls-dialog .label-row{justify-content:flex-start;align-items:center;min-height:28px}.controls-dialog .power-control{gap:0}.controls-dialog .power-presets{grid-template-columns:repeat(4,1fr);gap:6px;display:grid}.power-presets button{border-radius:12px;padding:0;font-size:.8125rem}.power-presets button[aria-pressed=true]{border-color:var(--accent);background:rgb(var(--accent-rgb) / .14)}.controls-dialog .putt-scale{display:none}.aim-control .label-row .switch{margin-left:auto}.switch.compact{min-height:44px;color:var(--ink-2);gap:8px;font-size:.8125rem}.aim-entry{grid-template-columns:52px minmax(0,1fr) 52px;gap:8px;display:grid}.aim-entry button{border-radius:14px;padding:0}.aim-entry svg{width:22px;height:22px}.aim-entry input{border:1px solid var(--edge);text-align:center;font-variant-numeric:tabular-nums;background:#ffffff0d;border-radius:14px;min-height:44px;padding:0 12px;font-size:1.125rem}.shape-control{position:relative}.shape-control #shape-hint{position:absolute;top:0;right:0}@media (pointer:coarse),(max-width:600px){.key-help{display:none}}@media (orientation:landscape) and (max-height:31em){.controls-dialog{inset:auto auto calc(env(safe-area-inset-bottom) + 8px) 12px;width:min(600px,100% - 310px);padding:8px 12px 10px}.controls-dialog .dialog-title{position:absolute;top:4px;right:4px}.controls-dialog .dialog-title h2{clip-path:inset(50%);width:1px;height:1px;position:absolute;overflow:hidden}.shot-content{grid-template-columns:1fr 1fr;column-gap:16px}.shape-control{grid-column:1/-1}.controls-dialog .power-presets{display:none}.controls-dialog .aim-control .label-row{padding-right:52px}.controls-dialog .label-row label,.switch.compact span{white-space:nowrap}}.segmented{border:0;min-width:0;margin:0;padding:0}.segmented legend{color:var(--ink-3);padding:0 0 6px;font-size:.75rem}.segments{border:1px solid var(--edge);background:#ffffff0d;border-radius:14px;grid-auto-columns:1fr;grid-auto-flow:column;padding:3px;display:grid}.seg{min-width:0;display:block;position:relative}.seg input{opacity:0;cursor:pointer;margin:0;position:absolute;inset:0}.seg span{min-height:44px;color:var(--ink-2);text-align:center;border-radius:11px;place-items:center;padding:0 8px;font-size:.875rem;font-weight:500;display:grid}.seg input:checked+span{color:#12191c;background:#eef2f3}.seg input:focus-visible+span{outline:3px solid var(--focus);outline-offset:1px}.seg input:disabled{cursor:default}.seg input:disabled+span{opacity:.45}.switch{flex-direction:row-reverse;justify-content:space-between;align-items:center;gap:12px;min-height:44px;font-size:.9375rem;display:flex}.switch input{appearance:none;cursor:pointer;background:#ffffff2e;border-radius:14px;flex:none;width:46px;height:28px;margin:0;transition:background .15s;position:relative}.switch input:after{content:"";background:#fff;border-radius:50%;width:22px;height:22px;transition:transform .15s;position:absolute;top:3px;left:3px}.switch input:checked{background:var(--accent)}.switch input:checked:after{transform:translate(18px)}.round-menu-dialog{width:min(380px,100% - 24px)}.round-menu-dialog[open]{gap:16px;display:grid}.menu-identity{text-align:center;justify-items:center;gap:3px;display:grid}.menu-identity img{border-radius:8px;margin-bottom:4px}.menu-identity strong{font-size:1rem;font-weight:600}.menu-identity span,.menu-identity #save-status{color:var(--ink-3);font-size:.75rem}.menu-identity #save-status{-webkit-backdrop-filter:none;backdrop-filter:none;background:0 0;border:0;margin:2px 0 0;padding:0}.menu-actions{display:grid}.menu-actions button{text-align:left;background:0 0;border:0;border-bottom:1px solid #ffffff14;border-radius:0;align-items:center;gap:14px;min-height:52px;padding:0 6px;display:flex}.menu-actions button:hover{background:#ffffff0d}.menu-actions button:disabled{opacity:.4}.menu-actions svg{width:20px;height:20px;color:var(--ink-2)}.menu-actions .menu-primary{border:1px solid rgb(var(--accent-rgb) / .35);background:rgb(var(--accent-rgb) / .14);color:#e3fbf6;border-radius:14px;justify-content:center;margin-bottom:6px;font-weight:600}.menu-tools{border-top:1px solid var(--edge);gap:10px;padding-top:16px;display:grid}.menu-tools button{border-radius:14px;min-height:48px}.settings-grid{gap:16px;display:grid}.switches{display:grid}.field{color:var(--ink-2);gap:4px;font-size:.8125rem;display:grid}.field input[type=number]{border:1px solid var(--edge);font-variant-numeric:tabular-nums;background:#ffffff0d;border-radius:12px;min-height:44px;padding:0 12px;font-size:1rem}@media (min-width:560px){.settings-dialog{width:min(600px,100% - 24px)}.settings-grid{grid-template-columns:1fr 1fr}.settings-grid>:first-child,.switches{grid-column:1/-1}}#settings-save-status{color:var(--warn)}.score-grid{border-collapse:collapse;font-variant-numeric:tabular-nums;width:100%;font-size:.9375rem}.score-grid caption{color:var(--ink-3);text-align:left;padding-bottom:10px;font-size:.75rem}.score-grid th,.score-grid td{text-align:center;border-bottom:1px solid #ffffff14;padding:12px 4px}.score-grid thead th{color:var(--ink-3);font-size:.75rem;font-weight:500}.score-grid tbody th{color:var(--ink-2);text-align:left;font-size:.8125rem;font-weight:500}.score-grid th:last-child,.score-grid td:last-child{font-weight:600}.score-grid td.unfinished{color:var(--ink-3)}.score-grid td small{color:var(--trail);font-size:.625rem;display:block}.confirm-dialog{width:min(360px,100% - 24px)}.dialog-actions{grid-template-columns:1fr 1fr;gap:10px;margin-top:8px;display:grid}.dialog-actions button{min-height:48px}.shot-metrics{font-variant-numeric:tabular-nums;grid-template-columns:minmax(0,1fr) auto;margin:0;display:grid}.shot-metrics dt,.shot-metrics dd{border-bottom:1px solid #ffffff14;margin:0;padding:12px 0}.shot-metrics dt{color:var(--ink-3)}.shot-metrics dd{text-align:right;margin-left:18px}@media (prefers-reduced-motion:reduce){.switch input,.switch input:after{transition:none}}.camera-preview-box{aspect-ratio:9/16;background:#000;border-radius:12px;width:100%;max-height:45vh;margin-bottom:12px;position:relative;overflow:hidden}.camera-preview-box video,.camera-preview-box canvas{object-fit:contain;width:100%;height:100%;position:absolute;top:0;left:0}.camera-state{gap:8px;display:grid}.camera-info{text-align:center;color:var(--ink-2);min-height:24px;font-size:.875rem}.camera-actions{gap:10px;margin-top:8px;display:grid}.camera-actions button{min-height:48px}
