:root{--ink:#1d1d1f;--mute:#6e6e73;--line:#d2d2d7;--fill:#f2f2f4;--card:#fff;--bg:#fff;--acc:#1f7a4d;--acc2:#e7f3ec;--warn:#b25b00;--bad:#c44;--bad2:#fbeaea;--roll:#5f8f76;--note:#fff8e6;--note-line:#d9b25f;--note-ink:#7a5a12}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--ink:#f2f2f4;--mute:#a1a1a6;--line:#3a3a3c;--fill:#1c1c1e;--card:#111;--bg:#000;--acc:#3fb57a;--acc2:#12301f;--warn:#ff9f40;--bad:#ff6b6b;--bad2:#3a1515;--roll:#4f7a63;--note:#2a2310;--note-line:#7a6223;--note-ink:#f0d58a}}:root[data-theme=dark]{--ink:#f2f2f4;--mute:#a1a1a6;--line:#3a3a3c;--fill:#1c1c1e;--card:#111;--bg:#000;--acc:#3fb57a;--acc2:#12301f;--warn:#ff9f40;--bad:#ff6b6b;--bad2:#3a1515;--roll:#4f7a63;--note:#2a2310;--note-line:#7a6223;--note-ink:#f0d58a}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html,body{background:var(--bg);color:var(--ink);margin:0}body{overscroll-behavior-y:none;font:16px/1.35 -apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer}button:disabled{opacity:.45;cursor:default}.app{flex-direction:column;max-width:520px;min-height:100dvh;margin:0 auto;display:flex}.status{z-index:5;background:var(--bg);padding:calc(env(safe-area-inset-top) + 6px) 16px 4px;justify-content:space-between;align-items:center;font-size:13px;font-weight:700;display:flex;position:sticky;top:0}.brand{color:var(--mute)}.brand,.install{white-space:nowrap;flex-shrink:0}.sync{white-space:nowrap;text-overflow:ellipsis;min-width:0;overflow:hidden}@media (width<=359px){.install-more{display:none}}.install{background:var(--acc2);min-height:32px;color:var(--acc);border:0;border-radius:999px;margin-left:auto;padding:4px 12px;font-size:13px;font-weight:700}.install-lead{margin:0 0 12px}.install-steps{margin:0 0 12px;padding-left:22px;line-height:1.6}.install-note{color:var(--mute);margin:0;font-size:14px}.sync{background:var(--fill);border:0;border-radius:999px;padding:3px 10px;font-size:12px;font-weight:700}.sync.syncing{color:var(--mute)}.sync.offline{background:var(--note);color:var(--note-ink)}.sync.alert{background:var(--bad2);color:var(--bad)}main{padding-bottom:calc(84px + env(safe-area-inset-bottom));flex:1}.screen-body{padding:0 16px 16px}.top{padding:4px 0 8px}h1{margin:0;font-size:24px}h2{text-transform:uppercase;letter-spacing:.06em;color:var(--mute);margin:16px 0 6px;font-size:13px}.muted{color:var(--mute)}.small{font-size:13px}.center{text-align:center}.acc{color:var(--acc)}.warn{color:var(--warn)}.row-between{justify-content:space-between;align-items:center;gap:8px;display:flex}.row2{flex-wrap:wrap;gap:8px;display:flex}.row2>*{flex:1}.mini-label{text-transform:uppercase;letter-spacing:.05em;color:var(--mute);font-size:11px;font-weight:800}.chips{flex-wrap:wrap;gap:6px;display:flex}.chip{border:1.5px solid var(--line);background:var(--card);white-space:nowrap;text-transform:none;border-radius:999px;min-height:38px;padding:8px 12px;font-size:14px;font-weight:650}.chips.small .chip{min-height:34px;padding:6px 10px;font-size:13px}.chip.on{border-color:var(--acc);background:var(--acc2);color:var(--acc)}.chip.danger{color:var(--bad);border-color:var(--bad)}.center-chips{justify-content:center}.cond-pill{border:1.5px solid var(--acc);background:var(--acc2);width:100%;color:var(--acc);text-transform:capitalize;border-radius:14px;align-items:center;gap:10px;padding:9px 12px;font-size:14px;font-weight:700;display:flex}.cond-pill .muted{margin-left:auto}.seg{background:var(--fill);border-radius:12px;margin:4px 0 10px;padding:3px;display:flex}.seg button{min-height:44px;color:var(--mute);background:0 0;border:0;border-radius:9px;flex:1;padding:10px 0;font-size:15px;font-weight:700}.seg button.on{background:var(--card);color:var(--ink);box-shadow:0 1px 3px #0000002e}.windpad{background:var(--fill);border-radius:14px;flex-wrap:wrap;gap:10px;padding:8px;display:flex}.compass3{flex:none;grid-template-rows:repeat(3,44px);grid-template-columns:repeat(3,44px);gap:4px;display:grid}.carrow,.cdot{border:1.5px solid var(--line);background:var(--card);border-radius:10px;padding:0;font-size:22px;font-weight:800;line-height:1}.carrow.on{background:var(--acc);border-color:var(--acc);color:#fff}.cdot{font-size:18px}.cdot.on{border-color:var(--acc);background:var(--acc2)}.wind-side{flex-direction:column;flex:1;gap:4px;min-width:0;display:flex}.mph{justify-content:space-between;align-items:center;gap:4px;display:flex}.mph button,.aim{border:1.5px solid var(--line);background:var(--card);border-radius:10px;min-height:44px;padding:0;font-weight:800}.mph button{width:48px;font-size:24px}.mph b{font-variant-numeric:tabular-nums;align-items:baseline;gap:2px;font-size:26px;display:flex}.mph b small{color:var(--mute);font-size:11px}.aim{font-size:14px;font-weight:700}.feel{flex-basis:100%;grid-template-columns:repeat(3,1fr);gap:4px;display:grid}.feel button{border:1.5px solid var(--line);background:var(--card);border-radius:10px;flex-direction:column;justify-content:center;align-items:center;min-height:48px;padding:2px;display:flex}.feel button b{font-size:14px}.feel button small{color:var(--mute);font-size:11px}.feel button.on{border-color:var(--acc);background:var(--acc2);color:var(--acc)}.feel-cue{flex-basis:100%;font-size:14px}.feel-effect{margin-top:2px;font-weight:700}.feel-effect b{color:var(--warn)}.note.wide{flex-basis:100%;margin-top:0}.elev{grid-template-columns:repeat(6,1fr);align-items:center;gap:4px;margin-top:4px;display:grid}.elev .chip small{font-size:11px;font-weight:700;line-height:1.1;display:block}.elev-say{margin:6px 0 0;font-size:14px;font-weight:650}.elev .chip{border-radius:10px;min-height:48px;padding:2px 0;font-size:19px;line-height:1.1}.elev .chip:nth-of-type(3){font-size:12px}.elev .mini-label{padding-right:2px}.clear-adj{border:1.5px solid var(--warn);background:var(--note);width:100%;min-height:44px;color:var(--note-ink);text-align:left;border-radius:12px;justify-content:space-between;align-items:center;margin-top:8px;padding:4px 12px;font-size:14px;font-weight:650;display:flex}.clear-adj b{color:var(--warn);white-space:nowrap;padding-left:8px}.green-row{flex-direction:column;gap:6px;margin-bottom:8px;display:flex}.wheel{align-items:center;gap:14px;margin:6px 0 4px;display:flex}.drum{background:var(--fill);border-radius:16px;flex:none;width:124px;height:190px;position:relative}.drum-scroll{scroll-snap-type:y mandatory;scrollbar-width:none;-webkit-overflow-scrolling:touch;z-index:1;height:190px;position:relative;overflow-y:scroll}.drum-scroll::-webkit-scrollbar{display:none}.drum-item{scroll-snap-align:center;color:#9a9aa0;font-variant-numeric:tabular-nums;justify-content:center;align-items:center;font-size:22px;font-weight:600;display:flex}.drum-item.sel{color:var(--ink);font-size:42px;font-weight:850}.drum-band{border-top:2px solid var(--acc);border-bottom:2px solid var(--acc);pointer-events:none;z-index:2;height:46px;position:absolute;top:72px;left:8px;right:8px}.drum{margin-bottom:52px}.drum-step{gap:6px;display:flex;position:absolute;top:196px;left:0;right:0}.drum-step button{border:1.5px solid var(--line);background:var(--card);border-radius:10px;flex:1;min-height:44px;font-size:22px;font-weight:800}.plays{flex:1;min-width:0}.big{color:var(--mute);font-size:13px}.big b{color:var(--ink);font-size:32px;line-height:1.1;display:block}.big b.acc{color:var(--acc)}.big.sm{margin-top:6px}.adj{color:var(--mute);text-transform:none;margin-top:6px;font-size:13px;line-height:1.45}.adj span{color:var(--warn);font-weight:800}.opt{border:1.5px solid var(--line);background:var(--card);border-radius:14px;align-items:center;gap:10px;margin-bottom:8px;padding:10px 12px;display:flex}.opt.best{border-color:var(--acc);background:var(--acc2)}.club{background:var(--ink);min-width:48px;height:48px;color:var(--bg);border-radius:12px;flex:none;justify-content:center;align-items:center;padding:0 4px;font-size:16px;font-weight:850;display:flex}.opt .t{flex:1;min-width:0}.opt .t b{font-size:17px;display:block}.opt .t small{color:var(--mute);font-size:13px}.est{color:var(--warn);font-size:12px;font-style:normal;font-weight:700}.opt .d{text-align:right;font-size:22px;font-weight:850}.opt .d small{color:var(--mute);font-size:12px;font-weight:500;display:block}.bar{background:var(--fill);border-radius:4px;height:6px;margin-top:6px;position:relative}.bar i{background:var(--roll);border-radius:4px;height:6px;position:absolute}.bar em{background:var(--ink);width:2px;height:12px;position:absolute;top:-3px}.empty{border:1.5px dashed var(--line);color:var(--mute);text-align:center;border-radius:14px;margin:8px 0;padding:16px}.putt-answer{flex-wrap:wrap;align-items:baseline;gap:12px;display:flex}.putt-answer b{color:var(--acc);font-variant-numeric:tabular-nums;font-size:56px;font-weight:900;line-height:1}.putt-answer b small{font-size:22px}.putt-answer span{font-size:18px;font-weight:750}.ruler{width:100%;height:auto;margin:8px 0 2px}.r-foot{fill:var(--fill);stroke:var(--line);stroke-width:2px}.r-ball{fill:var(--card);stroke:var(--ink);stroke-width:2.5px}.r-stroke{stroke:var(--acc);stroke-width:5px;stroke-linecap:round;opacity:.35}.r-mark{stroke:var(--acc);stroke-width:4px;stroke-linecap:round}.r-axis{stroke:var(--mute);stroke-width:1.5px}.r-label{fill:var(--mute);text-anchor:middle;font-size:12px;font-weight:700}table{border-collapse:collapse;width:100%;font-size:14px}th{color:var(--mute);text-transform:uppercase;text-align:center;padding:6px 3px;font-size:11px;font-weight:800}td{border-top:1px solid var(--line);text-align:center;font-variant-numeric:tabular-nums;padding:8px 3px}td:first-child,th:first-child{text-align:left;font-weight:850}td.left{font-weight:600}td small{color:var(--mute);white-space:nowrap;font-size:10px;display:block}td sup{color:var(--warn);margin-left:1px;font-size:9px;font-weight:800}td.tap{cursor:pointer}td.tap:active{background:var(--acc2)}.hscroll{margin:0 -16px;padding:0 16px;overflow-x:auto}.hscroll table{min-width:560px}.hscroll td:first-child,.hscroll th:first-child{z-index:1;background:var(--bg);padding-right:8px;position:sticky;left:0}.hscroll{-webkit-mask-image:linear-gradient(90deg,#000 85%,#0000);mask-image:linear-gradient(90deg,#000 85%,#0000)}.btn{text-align:center;background:var(--acc);color:#fff;border:0;border-radius:14px;width:100%;padding:15px;font-size:17px;font-weight:800;display:block}.btn.ghost{background:var(--card);color:var(--ink);border:1.5px solid var(--line)}.btn.danger{background:var(--bad)}label.btn{cursor:pointer;margin-top:8px}.link{color:var(--acc);background:0 0;border:0;padding:6px 0;font-size:16px;font-weight:750}.pad{grid-template-columns:repeat(3,1fr);gap:8px;margin-top:8px;display:grid}.pad button{background:var(--fill);border:0;border-radius:12px;padding:13px 0;font-size:23px;font-weight:700}.pad button:active{background:var(--acc2)}.pad.four{grid-template-columns:repeat(4,1fr)}.pad.four button{padding:18px 0;font-size:26px}.pad .par{background:var(--acc2);color:var(--acc)}.pad .birdie{background:var(--acc);color:#fff}.field{gap:8px;margin-top:12px;display:flex}.field>button,.field>div{border:2px solid var(--line);text-align:left;background:var(--card);border-radius:12px;flex:1;padding:8px 10px}.field>.on,.field.one .on{border-color:var(--acc)}.field .unit{border-style:dashed;flex:.6}.field small{color:var(--mute);text-transform:uppercase;font-size:11px;font-weight:800;display:block}.field b{font-size:30px;line-height:1.1;display:block}.field .unit b{margin-top:8px;font-size:18px}.list>div{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:8px;min-height:44px;padding:8px 4px;font-size:14px;display:flex}.list>div.hi{background:var(--acc2);font-weight:800}.list>div.mishit{color:var(--mute);text-decoration:line-through}.list .actions{gap:6px;text-decoration:none;display:flex}.list .actions .chip{min-height:32px;padding:4px 10px;font-size:13px}.note{background:var(--note);border:1px dashed var(--note-line);color:var(--note-ink);border-radius:10px;margin-top:10px;padding:9px 11px;font-size:13px}.note.ok{background:var(--acc2);border-color:var(--acc);color:var(--acc)}.card{border:1.5px solid var(--line);background:var(--card);border-radius:16px;margin:10px 0;padding:14px}.card .btn{margin-top:10px}.card-title{font-size:18px}.cfg{gap:8px;margin-top:8px;display:flex}.cfg label{color:var(--mute);text-transform:uppercase;flex-direction:column;flex:1;gap:4px;font-size:11px;font-weight:800;display:flex}.hole{grid-template-columns:repeat(9,1fr);gap:4px;display:grid}.hole button{border:1.5px solid var(--line);text-align:center;color:var(--mute);background:var(--card);border-radius:8px;padding:5px 0;font-size:11px}.hole button b{color:var(--ink);font-size:17px;display:block}.hole .ud{border-color:var(--acc);background:var(--acc2)}.hole .miss{border-color:var(--bad);background:var(--bad2)}.hole .cur{border:2.5px solid var(--ink)}.score-line{margin-top:10px;font-size:17px;font-weight:800}.hole-title{font-size:30px;font-weight:900}.target{text-align:center;font-variant-numeric:tabular-nums;margin:6px 0 0;font-size:80px;font-weight:900;line-height:1}.target small{color:var(--mute);font-size:14px;font-weight:650;display:block}.spark{border-bottom:1px solid var(--line);align-items:flex-end;gap:5px;height:64px;margin-top:8px;padding-bottom:2px;display:flex}.spark i{background:var(--roll);border-radius:3px 3px 0 0;flex:1}.spark i:last-child{background:var(--acc)}.drop{border:2px dashed var(--line);text-align:center;color:var(--mute);cursor:pointer;border-radius:16px;margin-top:6px;padding:22px;display:block}.drop b{color:var(--ink)}.drop.static{cursor:default}.map>div{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:8px;padding:8px 0;font-size:14px;display:flex}select,input,textarea{border:1.5px solid var(--line);background:var(--card);border-radius:10px;padding:8px 10px;font-size:16px}textarea{resize:vertical;width:100%}.stepper{border:1.5px solid var(--line);border-radius:12px;align-items:center;gap:0;display:inline-flex;overflow:hidden}.stepper button{background:var(--fill);border:0;width:46px;height:42px;font-size:22px;font-weight:800}.stepper b{text-align:center;min-width:64px;font-size:18px}.cfg .stepper b{min-width:34px;font-size:16px}.cfg .stepper button{width:30px}.stats{color:var(--mute);gap:16px;font-size:13px;display:flex}.stats b{color:var(--ink);font-size:26px;display:block}.sight .target{font-size:56px}.clubs-edit>div{border-top:1px solid var(--line);align-items:center;gap:6px;padding:5px 0;display:flex}.clubs-edit input{width:80px}.clubs-edit select{flex:1;min-width:0}.clubs-edit button{border:1.5px solid var(--line);background:var(--card);border-radius:9px;min-width:36px;height:38px;font-size:13px;font-weight:700}.clubs-edit .retired input{color:var(--mute);text-decoration:line-through}.editor .row-between{margin-top:4px}.marks-edit>div{align-items:center;gap:6px;padding:4px 0;display:flex}.marks-edit input:first-child{flex:1;min-width:0}.marks-edit input:nth-child(2){text-align:right;width:64px}.marks-edit button{border:1.5px solid var(--line);background:var(--card);border-radius:9px;width:44px;height:44px}td.left small{font-weight:500;display:block}.tabs{z-index:10;background:var(--bg);border-top:1px solid var(--line);padding:6px 0 calc(6px + env(safe-area-inset-bottom));max-width:520px;margin:0 auto;display:flex;position:fixed;bottom:0;left:0;right:0}.tabs button{color:var(--mute);background:0 0;border:0;flex-direction:column;flex:1;align-items:center;gap:2px;padding:4px 0;font-size:11px;font-weight:700;display:flex}.tabs button i{filter:grayscale();opacity:.7;border-radius:9px;justify-content:center;align-items:center;width:44px;height:30px;font-size:22px;font-style:normal;display:flex}.tabs button.on{color:var(--acc)}.tabs button.on i{background:var(--acc2);filter:none;opacity:1}.toast{left:12px;right:12px;top:calc(env(safe-area-inset-top) + 34px);z-index:15;background:var(--ink);max-width:496px;color:var(--bg);border-radius:14px;justify-content:space-between;align-items:center;margin:0 auto;padding:6px 6px 6px 16px;font-weight:650;display:flex;position:fixed;box-shadow:0 6px 20px #00000040}.toast button{color:#7fe0a8;background:0 0;border:0;min-height:44px;padding:0 14px;font-size:16px;font-weight:850}.banner{background:var(--bad2);color:var(--bad);border:1.5px solid var(--bad);border-radius:12px;margin:0 16px 8px;padding:10px 12px;font-size:14px;font-weight:700}.log-body{padding-bottom:380px}.dock{left:0;right:0;bottom:calc(68px + env(safe-area-inset-bottom));z-index:6;background:var(--bg);border-top:1px solid var(--line);max-width:520px;margin:0 auto;padding:6px 16px 8px;position:fixed;box-shadow:0 -6px 16px #0000000f}.dock-what{touch-action:pan-y;justify-content:space-between;align-items:center;gap:8px;min-height:40px;display:flex}.dock-what b{text-align:center;flex:1;font-size:17px}.dock-what button{border:1.5px solid var(--line);background:var(--card);border-radius:10px;min-width:44px;min-height:44px;font-size:22px;font-weight:800}.dock .field{margin-top:4px}.dock .field b{font-size:24px;line-height:1}.dock .field>button,.dock .field>div{padding:6px 10px}.dock .pad{gap:6px;margin-top:6px}.dock .pad button{padding:9px 0;font-size:21px}.dock>.btn{margin-top:6px;padding:12px}.lr-row{grid-template-columns:repeat(5,1fr);gap:4px;margin-top:4px;display:grid}.lr-row button{border:1.5px solid var(--line);background:var(--card);border-radius:10px;min-height:44px;padding:0;font-size:13px;font-weight:800}.lr-row button.on{border-color:var(--acc);background:var(--acc2);color:var(--acc)}.dock-what .opt-btn{border-style:dashed;font-size:14px}.dock-what .opt-btn.on{border-style:solid;border-color:var(--acc);background:var(--acc2);color:var(--acc)}.sizes{gap:6px;margin-bottom:10px;display:flex}.sizes .chip{flex:1;min-height:44px}.zones{grid-template-columns:repeat(3,1fr);gap:6px;display:grid}.zones button{border:1.5px solid var(--line);background:var(--card);border-radius:14px;flex-direction:column;justify-content:center;align-items:center;min-height:76px;font-size:26px;display:flex}.zones button small{color:var(--mute);font-size:11px;font-weight:700}.zones .money{border:2px solid var(--acc);background:var(--acc2)}.result-btn{margin:4px 0 8px;padding:10px;font-size:15px}.mic{text-align:center!important;flex:0 0 56px!important;font-size:24px!important}.mic.on{border-color:var(--bad)!important}.scroll-row{scrollbar-width:none;margin:0 -16px;padding:0 16px;overflow-x:auto}.scroll-row::-webkit-scrollbar{display:none}.scroll-row .chips{flex-wrap:nowrap}.log-book{color:var(--mute);margin-top:6px;font-size:13px}.log-book b{color:var(--acc)}.adj-summary{border:1.5px solid var(--line);background:var(--card);text-align:left;border-radius:12px;align-items:center;gap:12px;width:100%;min-height:48px;margin-bottom:8px;padding:6px 12px;font-size:15px;font-weight:700;display:flex}.adj-summary.set{border-color:var(--warn);background:var(--note);color:var(--note-ink)}.adj-summary b{margin-left:auto}.trouble{flex-wrap:wrap;align-items:center;gap:6px;margin-top:8px;display:flex}.trouble .chip{min-height:44px}.chip.on.warn{border-color:var(--warn);background:var(--note);color:var(--note-ink)}.green-row .chip{min-height:44px}.hero{border:2px solid var(--acc);background:var(--acc2);text-align:left;border-radius:16px;flex-direction:column;align-items:flex-start;gap:2px;width:100%;padding:10px 12px;display:flex}.hero-shot{color:var(--ink);font-size:34px;font-weight:900;line-height:1.05}.hero-sub{color:var(--ink);font-size:16px}.hero-sub b{font-size:22px}.hero-plays{color:var(--mute);font-size:14px;font-weight:650}.hero-empty{color:var(--mute);font-size:15px}.hero-plays-big{color:var(--ink);margin-bottom:6px;font-size:18px}.hero-plays-big b{color:var(--acc);font-size:34px}.tip{background:var(--fill);border-radius:12px;margin:2px 0 6px;padding:10px 12px;font-size:15px;font-weight:700}.glance{z-index:30;color:#000;text-align:center;background:#fff;flex-direction:column;justify-content:center;align-items:center;gap:4px;padding:24px;display:flex;position:fixed;inset:0}.glance-shot{font-size:120px;font-weight:900;line-height:1}.glance-swing{font-size:64px;font-weight:900}.glance-sub{margin-top:12px;font-size:36px;font-weight:800}.glance-plays{color:#444;font-size:24px}.miss-grid{grid-template-columns:repeat(3,1fr);gap:6px;display:grid}.miss-grid .chip{border-radius:12px;min-height:52px;font-size:18px}.top-row{align-items:stretch;gap:8px;display:flex}.top-row .cond-pill{flex:1}.gps-btn{border:1.5px solid var(--line);background:var(--card);border-radius:14px;min-width:48px;font-size:20px}.course{border:2px solid var(--ink);border-radius:16px;margin-bottom:10px;padding:10px 12px}.course-head{justify-content:space-between;align-items:center;gap:8px;display:flex}.course-head b{font-size:15px}.course-hole{justify-content:space-between;align-items:center;margin:6px 0;font-size:17px;display:flex}.course-hole>button{border:1.5px solid var(--line);background:var(--card);border-radius:10px;min-width:48px;min-height:44px;font-size:22px;font-weight:800}.fmb{grid-template-columns:1fr 1.3fr 1fr;gap:6px;display:grid}.fmb button{border:1.5px solid var(--line);background:var(--card);border-radius:12px;flex-direction:column;justify-content:center;align-items:center;min-height:64px;display:flex}.fmb button.mid{border:2px solid var(--acc);background:var(--acc2)}.fmb small{text-transform:uppercase;color:var(--mute);font-size:11px;font-weight:800}.fmb b{font-variant-numeric:tabular-nums;font-size:30px;font-weight:900;line-height:1}.fmb .mid b{font-size:38px}.hazards{color:var(--note-ink);margin:8px 0 4px;font-size:14px;font-weight:700}button.tip{text-align:left;width:100%;color:var(--ink);border:0;display:block}.coach-head{text-align:left;background:0 0;border:0;flex-direction:column;align-items:flex-start;gap:2px;width:100%;min-height:44px;padding:0;display:flex}.coach-head b{font-size:18px}.coach-bullets{margin:10px 0 0;padding-left:20px;font-size:16px;line-height:1.45}.video{border:1.5px solid var(--line);color:var(--ink);border-radius:12px;align-items:center;gap:10px;min-height:52px;margin-bottom:6px;padding:10px;text-decoration:none;display:flex}.video>span:first-child{color:var(--bad);font-size:22px}.coach a{color:var(--acc)}.sync.signin{background:var(--fill);color:var(--mute)}.pressure{background:var(--ink);color:var(--bg);border-radius:12px;margin-bottom:10px;padding:10px 14px;font-size:15px;font-weight:800}.station{text-align:center;padding:14px 8px 10px}.station-label{font-size:40px;font-weight:900;line-height:1.1}.station-hint{color:var(--acc);margin-top:8px;font-size:15px;font-weight:700}.choices{grid-template-columns:1fr 1fr;gap:8px;display:grid}.choices.n3{grid-template-columns:1fr 1fr 1fr}.choices.n5{grid-template-columns:repeat(6,1fr)}.choices.n5 .choice{grid-column:span 2}.choices.n5 .choice:nth-child(4),.choices.n5 .choice:nth-child(5){grid-column:span 3}.choice{border:2px solid var(--line);background:var(--card);border-radius:14px;min-height:64px;font-size:18px;font-weight:800}.choice.good{border-color:var(--acc);background:var(--acc2);color:var(--acc)}.choice.ok{border-color:var(--warn);color:var(--warn)}.choice.bad{border-color:var(--bad);color:var(--bad);background:var(--bad2)}.choice:active{transform:scale(.97)}.number-input .row-between{margin:6px 0 8px}.big-step{border:1.5px solid var(--line);background:var(--fill);border-radius:12px;min-width:64px;min-height:48px;font-size:18px;font-weight:800}.measure{margin-top:12px}.measure-fields{flex-wrap:wrap;gap:10px;margin-top:8px;display:flex}.measure-fields label{flex-direction:column;gap:4px;display:flex}.game-card .how{margin-top:8px;font-size:14px}.game-card .how ol{margin:0 0 6px;padding-left:20px}.game-card .how a{color:var(--acc);font-weight:700}.sheet-wrap{z-index:20;position:fixed;inset:0}.dim{background:#0006;position:absolute;inset:0}.sheet{background:var(--card);border-radius:22px 22px 0 0;flex-direction:column;max-width:520px;max-height:88dvh;margin:0 auto;display:flex;position:absolute;bottom:0;left:0;right:0;box-shadow:0 -8px 30px #0000004d}.sheet-head{justify-content:space-between;align-items:center;padding:14px 16px 6px;display:flex}.sheet-head h1{font-size:20px}.sheet-body{padding:0 16px calc(24px + env(safe-area-inset-bottom));overflow-y:auto}.sheet-body .btn{margin-top:8px}.feel-cue .link{align-items:center;min-height:44px;display:inline-flex}.hero-aim{color:var(--warn);font-size:14px;font-weight:800}.ghost{border:1.5px dashed var(--line);border-radius:12px;margin-bottom:8px;padding:8px 12px;font-size:14px;font-weight:700}.ghost.ahead{border-color:var(--acc);color:var(--acc)}.ghost.behind{border-color:var(--warn);color:var(--warn)}.today .block{border-top:1px solid var(--line);align-items:center;gap:10px;padding:10px 0;display:flex}.block-n{background:var(--ink);width:28px;height:28px;color:var(--bg);border-radius:50%;flex:none;justify-content:center;align-items:center;font-weight:900;display:flex}.block-t{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.block-t small{font-size:13px}.block-go{flex-direction:column;gap:4px;display:flex}.block-go .chip{min-height:44px}.heat{grid-template-columns:repeat(3,1fr);gap:4px;margin:6px 0;display:grid}.heat>div{background:color-mix(in srgb, var(--warn) calc(var(--a) * 70%), var(--fill));border-radius:10px;flex-direction:column;justify-content:center;align-items:center;min-height:64px;display:flex}.heat>div.mid{background:color-mix(in srgb, var(--acc) calc(var(--a) * 70%), var(--fill));outline:2px solid var(--acc)}.heat b{font-size:22px}.heat small{font-size:11px}button.opt{text-align:left;width:100%;color:inherit}.result-row .result-btn{flex:1}.shot-pic{margin:0 0 8px}.shot-pic svg{border-radius:14px;width:100%;max-height:56vh;display:block}.shot-pic figcaption{margin-top:8px;font-size:15px;line-height:1.4}.score-chart{width:100%;height:auto;margin:6px 0 4px;display:block}.score-chart .line{fill:none;stroke:var(--acc);stroke-width:2.5px;stroke-linejoin:round;stroke-linecap:round}.score-chart .pb-line{stroke:var(--warn);stroke-width:1.5px;stroke-dasharray:4 4}.score-chart .dot{fill:var(--card);stroke:var(--acc);stroke-width:2px}.score-chart .dot.last{fill:var(--acc)}.score-chart .dot.pb{fill:var(--warn);stroke:var(--warn)}.score-chart .axis{fill:var(--mute);font-size:11px;font-weight:700}.star{min-width:44px;min-height:44px;color:var(--mute);background:0 0;border:0;padding:0;font-size:24px;line-height:1}.star.on{color:var(--warn)}.progress-card .mini-label{margin-top:8px}.prog-row{border:0;border-bottom:1px solid var(--line);text-align:left;background:0 0;align-items:center;gap:8px;width:100%;min-height:44px;padding:6px 0;display:flex}.prog-row:last-child{border-bottom:0}.prog-row .name{flex:1;font-weight:700}.prog-row .delta{font-weight:850}.prog-row.up .arrow,.prog-row.up .delta{color:var(--acc)}.prog-row.down .arrow,.prog-row.down .delta{color:var(--bad)}.all-games{margin-top:6px}.all-games summary{min-height:44px;color:var(--acc);cursor:pointer;align-items:center;font-weight:700;display:flex}.ghost{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;display:flex}.opp-switch{border:1.5px solid var(--line);border-radius:999px;flex-shrink:0;display:inline-flex;overflow:hidden}.opp-switch button{background:var(--card);color:var(--mute);border:0;min-height:36px;padding:0 10px;font-size:12px;font-weight:800}.opp-switch button.on{background:var(--acc);color:#fff}.new-pb{color:var(--warn);margin-top:6px;font-size:20px;font-weight:850}.dock-handle{width:100%;height:44px;color:var(--mute);background:0 0;border:0;justify-content:center;align-items:center;gap:8px;margin:-6px 0 -4px;padding:0;font-size:11px;font-weight:800;display:flex}.dock-handle i{background:var(--line);border-radius:2px;width:40px;height:4px;display:block}.brand{align-items:center;gap:6px;display:inline-flex}.brand-mark{border-radius:6px;width:22px;height:22px}.hwheel{align-items:stretch;gap:6px;margin:6px 0;display:flex}.hw-step{border:1.5px solid var(--line);background:var(--card);color:var(--ink);border-radius:12px;flex:0 0 44px;font-size:16px}.hw-track{background:var(--fill);border-radius:14px;flex:1;min-width:0;height:64px;position:relative;overflow:hidden}.hw-band{background:var(--card);width:128px;box-shadow:0 0 0 2px var(--acc);pointer-events:none;border-radius:10px;margin-left:-64px;position:absolute;top:6px;bottom:6px;left:50%}.hw-scroll{scroll-snap-type:x mandatory;scrollbar-width:none;-webkit-overflow-scrolling:touch;height:100%;display:flex;position:relative;overflow-x:auto}.hw-scroll::-webkit-scrollbar{display:none}.hw-pad{flex:0 0 calc(50% - 64px)}.hw-item{scroll-snap-align:center;text-align:center;color:var(--mute);flex-direction:column;flex:none;justify-content:center;align-items:center;padding:0 6px;font-size:12px;font-weight:700;line-height:1.15;display:flex}.hw-item.sel{color:var(--ink);font-size:14px}.hw-item small{color:var(--acc);font-size:11px;font-weight:800}.aim small{color:var(--mute);font-size:11px;font-weight:600;display:block}.answer-wrap{margin-top:10px}.answer{text-align:left;width:100%;color:var(--ink);background:linear-gradient(160deg, var(--acc2), var(--card));border:0;border-radius:22px;flex-direction:column;align-items:flex-start;gap:4px;padding:16px 18px;display:flex;box-shadow:0 1px #0000000a,0 8px 24px #14532d1f}.answer .hero-shot{letter-spacing:-.02em;font-size:44px}.answer .hero-sub{color:var(--mute);font-size:18px;font-weight:650}.answer .hero-sub b{color:var(--acc);font-size:28px}.answer .hero-aim{font-size:17px}.answer .hero-cross{color:var(--warn);font-size:14px;font-weight:700}.answer.empty{background:var(--fill);box-shadow:none}.answer-wrap .tip{color:var(--mute);text-align:left;background:0 0;margin-top:8px;padding:4px 2px;font-size:14px;font-weight:650}.answer-actions{gap:8px;margin-top:4px;display:flex}.answer-actions .chip{flex:1;justify-content:center;min-height:44px}.play-dock{left:0;right:0;bottom:calc(68px + env(safe-area-inset-bottom));z-index:6;background:var(--bg);border-top:1px solid var(--line);border-radius:20px 20px 0 0;max-width:520px;margin:0 auto;padding:8px 12px 6px;position:fixed;box-shadow:0 -8px 24px #00000012}.hwheel.big .hw-track{height:60px}.hwheel.big .hw-item{font-size:22px;font-weight:800}.hwheel.big .hw-item.sel{color:var(--acc);font-size:30px}.dock-grid{align-items:stretch;gap:8px;margin-top:4px;display:flex}.compass3.mini{grid-template-rows:repeat(3,44px);grid-template-columns:repeat(3,44px);gap:3px}.compass3.mini .carrow{font-size:19px}.speed-grid{flex:1;grid-template-rows:repeat(3,44px);grid-template-columns:repeat(3,1fr);gap:3px;min-width:0;display:grid}.speed-grid button{border:1.5px solid var(--line);background:var(--card);min-height:44px;color:var(--ink);border-radius:10px;padding:0;font-size:17px;font-weight:800}.speed-grid button.on{background:var(--acc);border-color:var(--acc);color:#fff}.wind-readout{color:var(--acc);background:var(--acc2);border-radius:10px;grid-column:1/-1;justify-content:center;align-items:center;font-size:14px;font-weight:800;display:flex}.labelled{grid-template-columns:58px 1fr;align-items:center;gap:6px;margin-top:4px;display:grid}.labelled>span{text-transform:uppercase;letter-spacing:.03em;color:var(--mute);font-size:11px;font-weight:800;line-height:1.1}.chiprow button small{opacity:.8;font-size:10px;font-weight:700;display:block}.chiprow{grid-auto-columns:1fr;grid-auto-flow:column;gap:3px;display:grid}.chiprow button{border:1.5px solid var(--line);background:var(--card);min-width:0;min-height:44px;color:var(--ink);border-radius:10px;padding:0;font-size:15px;font-weight:800}.chiprow button.on{background:var(--acc);border-color:var(--acc);color:#fff}.chiprow button.on.warn{background:var(--warn);border-color:var(--warn);color:#fff}.dock-links{justify-content:space-between;align-items:center;display:flex}.dock-links .link{min-height:44px;font-size:14px;font-weight:750}.windpad.help{display:block}.tap-target{touch-action:none;-webkit-user-select:none;user-select:none;width:100%;max-width:340px;margin:4px auto;display:block}.tt-fringe{fill:#cfe6c4}.tt-ring{fill:none;stroke:#fff;stroke-width:1.5px}.tt-ring.r0{fill:#8fd18f}.tt-ring.r1{fill:#7cc46b}.tt-ring.r2{fill:#6bb85a}.tt-axis{stroke:#fff;stroke-opacity:.5;stroke-width:1px;stroke-dasharray:3 4}.tt-label{fill:#1e4a1a;font-size:11px;font-weight:800}.tt-dir{fill:#2b4a24;letter-spacing:.06em;font-size:11px;font-weight:900}.tt-pin{stroke:#222;stroke-width:2px}.tt-flag{fill:#e33}.tt-cup{fill:#111}.tt-ball{fill:#fff;stroke:#222;stroke-width:2.5px}.tap-readout{text-align:center;min-height:30px;font-size:22px;font-weight:850}.measure-card{border:1.5px solid var(--acc);background:var(--acc2);border-radius:16px;gap:8px;margin-bottom:12px;padding:12px;display:grid}.measure-total{font-size:18px}.measure-total b{color:var(--acc);font-size:34px}.answer-actions .chip:first-child:nth-last-child(3),.answer-actions .chip{flex:1}.answer-actions{grid-template-columns:repeat(auto-fit,minmax(0,1fr));display:grid}.answer-actions .chip{white-space:nowrap;text-overflow:ellipsis;min-width:0;padding-left:8px;padding-right:8px;overflow:hidden}.putt-answer b{letter-spacing:-.01em;font-size:30px;line-height:1.1}.r-label.on{fill:var(--acc);font-weight:900}.hwheel.big .hw-item small{color:var(--mute);text-transform:uppercase;font-size:10px;font-weight:800;display:block}.ladder{gap:6px;display:grid}.ladder-row{border:1.5px solid var(--line);background:var(--card);text-align:left;width:100%;min-height:56px;color:var(--ink);border-radius:14px;justify-content:space-between;align-items:center;gap:12px;padding:8px 14px;display:flex}.ladder-row .lm{font-size:16px;font-weight:800}.ladder-row .lm small{color:var(--mute);font-size:12px;font-weight:650;display:block}.ladder-row b{color:var(--acc);white-space:nowrap;font-size:28px;font-weight:900}.ladder-row b small{color:var(--mute);font-size:13px}.game-card{border:1.5px solid var(--line);background:var(--card);border-radius:16px;margin-bottom:8px}.game-card.open{border-color:var(--acc)}.game-row{align-items:center;gap:4px;min-height:60px;padding:0 6px;display:flex}.game-name{text-align:left;min-width:0;color:var(--ink);background:0 0;border:0;flex-direction:column;flex:1;justify-content:center;align-items:flex-start;min-height:56px;padding:0 4px;display:flex}.game-name .card-title{font-size:16px}.game-name small{color:var(--mute);font-size:13px;font-weight:650}.play-btn{background:var(--acc);color:#fff;border:0;border-radius:12px;flex:0 0 52px;height:44px;font-size:18px}.game-more{padding:0 14px 14px}.game-dock{left:0;right:0;bottom:calc(68px + env(safe-area-inset-bottom));z-index:6;background:var(--bg);border-top:1px solid var(--line);border-radius:20px 20px 0 0;max-width:520px;margin:0 auto;padding:10px 16px;position:fixed;box-shadow:0 -8px 24px #00000012}.game-dock .tap-target{max-width:260px}.log-head{align-items:center;gap:8px;display:flex;position:relative}.log-head .chips{flex:1}.more-btn{border:1.5px solid var(--line);background:var(--card);height:44px;color:var(--ink);border-radius:12px;flex:0 0 44px;font-size:22px;font-weight:900;line-height:1}.more-menu{z-index:20;background:var(--card);border:1.5px solid var(--line);border-radius:14px;display:grid;position:absolute;top:50px;right:0;overflow:hidden;box-shadow:0 8px 24px #00000026}.more-menu button{text-align:left;min-width:160px;min-height:48px;color:var(--ink);background:0 0;border:0;padding:0 16px;font-weight:750}.log-book{color:var(--mute);margin:-2px 0 8px;font-size:13px}.hw-item b{font-size:20px;font-weight:900}.hw-item.sel small{font-size:11px;display:block}td.shaky{background:var(--note);box-shadow:inset 0 0 0 1.5px var(--note-line)}.shaky-key{background:var(--note);width:12px;height:12px;box-shadow:inset 0 0 0 1.5px var(--note-line);vertical-align:-1px;border-radius:3px;margin-right:4px;display:inline-block}.next-in-plan{background:var(--warn);margin-top:10px}.today>.btn{margin:6px 0 10px}.status{gap:8px}.status .brand-mark{border-radius:8px;flex:none;width:28px;height:28px}.cond-pill.head{white-space:nowrap;border-radius:999px;flex:1;min-width:0;min-height:36px;padding:4px 12px;font-size:13px;overflow:hidden}.cond-pill.head span{text-transform:capitalize}.head-icon{border:0;border-radius:999px;flex:0 0 36px;height:36px;padding:0;font-size:16px;font-weight:900}.head-icon.install{background:var(--acc2);color:var(--acc)}.head-icon.sync{background:var(--fill);color:var(--mute)}.head-icon.sync.alert{background:var(--bad2);color:var(--bad)}.head-icon.sync.offline{background:var(--note);color:var(--note-ink)}.mode-row{align-items:stretch;gap:8px;display:flex}.mode-row .seg{flex:1}.mode-row .gps-btn{flex:0 0 48px}.play-dock .answer-actions{grid-template-columns:1fr 1fr 1fr 52px;margin:0 0 6px}.play-dock .answer-actions .chip{min-height:44px}.play-dock .answer-actions .chip.more{font-size:20px;font-weight:900}.play-dock .answer-actions .chip.more.on{background:var(--warn);border-color:var(--warn);color:#fff}.answer-wrap .tip{white-space:nowrap;text-overflow:ellipsis;width:100%;display:block;overflow:hidden}.star-space{flex:0 0 44px;justify-content:center;align-items:center;font-size:20px;display:flex}.today-row{border-color:var(--acc);background:var(--acc2)}.btn{justify-content:center;align-items:center;gap:6px;display:flex}.pill-line{background:var(--fill);color:var(--ink);border-radius:999px;margin-top:8px;padding:8px 12px;font-size:14px;font-weight:700}.confetti{pointer-events:none;z-index:30;position:fixed;inset:0;overflow:hidden}.confetti i{border-radius:2px;animation-name:confetti-fall;animation-timing-function:cubic-bezier(.2,.6,.4,1);animation-fill-mode:forwards;position:absolute;top:-12px}@keyframes confetti-fall{to{opacity:.9;transform:translateY(105vh)rotate(720deg)}}@media (prefers-reduced-motion:reduce){.confetti{display:none}}.new-pb{animation:.5s cubic-bezier(.2,.9,.3,1.4) pb-pop}@keyframes pb-pop{0%{opacity:0;transform:scale(.6)}to{opacity:1;transform:scale(1)}}.wind-readout{flex-direction:column;gap:0;line-height:1.05}.wind-readout b{font-size:19px;font-weight:900}.wind-readout small{opacity:.85;font-size:11px;font-weight:750}.score-chart .axis.legend{font-size:10px}body{font-variant-numeric:tabular-nums}.r-label{font-size:15px}.sheet{animation:.26s cubic-bezier(.2,.9,.25,1.05) sheet-up}.sheet-wrap .dim{animation:.2s ease-out dim-in}@keyframes sheet-up{0%{opacity:.4;transform:translateY(40px)}to{opacity:1;transform:none}}@keyframes dim-in{0%{opacity:0}}button{transition:transform .12s ease-out,background-color .15s,color .15s}button:active:not(:disabled){transform:scale(.97)}@media (prefers-reduced-motion:reduce){.sheet,.sheet-wrap .dim,.new-pb{animation:none}button{transition:none}button:active:not(:disabled){transform:none}}.head-icon.sync.alert,.head-icon.sync.signin{flex-basis:44px;height:44px}.cond-pill.head{text-overflow:ellipsis}.cond-pill.head .cond-text{text-overflow:ellipsis;white-space:nowrap;text-transform:capitalize;text-align:left;flex:1;min-width:0;overflow:hidden}
