:root{color:#f5fff5;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#07130b;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}body{background:radial-gradient(circle at top,#36d39933,#0000 32rem),#07130b;min-width:320px;min-height:100vh;margin:0}button{font:inherit}.app-shell{min-height:100vh;padding:max(1rem, env(safe-area-inset-top)) 1rem max(1.25rem, env(safe-area-inset-bottom));align-content:center;gap:1rem;display:grid}.app-shell--top{align-content:start}.hero-card,.quick-stats,.shot-card,.round-history{-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#07130bd1;border:1px solid #b9ffd32e;width:min(100%,32rem);margin:0 auto;box-shadow:0 24px 80px #0000006b}.hero-card{border-radius:2rem;padding:1.25rem}.eyebrow{color:#7cf3ae;letter-spacing:.14em;text-transform:uppercase;margin:0 0 .75rem;font-size:.82rem;font-weight:800}h1{letter-spacing:-.08em;margin:0;font-size:clamp(3rem,14vw,5rem);line-height:.9}.lede{color:#d9ffe8;margin:1rem 0 1.5rem;font-size:1.08rem;line-height:1.5}.start-round-button{color:#031007;background:#7cf3ae;border:0;border-radius:999px;width:100%;min-height:4rem;font-size:1.25rem;font-weight:900;box-shadow:0 16px 40px #7cf3ae4d}.onboarding-form{gap:1rem;display:grid}.onboarding-form label{color:#d9ffe8;gap:.45rem;font-weight:800;display:grid}.onboarding-form .checkbox-row{grid-template-columns:auto 1fr;align-items:center}.onboarding-form .checkbox-row input{width:1.5rem;min-height:1.5rem}.onboarding-form input,.onboarding-form select{color:#fff;width:100%;min-height:3.5rem;font:inherit;background:#ffffff14;border:1px solid #b9ffd33d;border-radius:1rem;padding:0 1rem;font-size:1.05rem}.onboarding-form input:focus,.onboarding-form select:focus{border-color:#7cf3ae;outline:3px solid #7cf3ae38}.form-grid--two{grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem;display:grid}.holes-grid{border:1px solid #b9ffd32e;border-radius:1rem;gap:.65rem;max-height:48vh;padding:.85rem;display:grid;overflow:auto}.holes-grid legend{color:#7cf3ae;padding:0 .35rem;font-weight:900}.hole-row{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:.75rem;display:grid}.status-line{color:#bdebcf;margin:1rem 0 0;font-weight:800}.hole-entry-card{gap:1rem;display:grid}.hole-meta{grid-template-columns:repeat(3,minmax(0,1fr));gap:.5rem;display:grid}.hole-meta strong,.running-score{background:#ffffff0f;border:1px solid #b9ffd329;border-radius:1rem;padding:.9rem}.hole-meta strong{color:#fff;text-align:center;font-size:.95rem}.running-score{color:#bdebcf;justify-content:space-between;align-items:center;font-weight:800;display:flex}.running-score strong{color:#7cf3ae;font-size:1.75rem}.shot-card{border-radius:1.5rem;gap:1rem;padding:1rem;display:grid}.shot-card-header{gap:.35rem;display:grid}.shot-card h2,.shot-card p{margin:0}.shot-card h2{color:#fff;font-size:1.35rem}.shot-card p{color:#bdebcf;line-height:1.35}.fairway-map{background:radial-gradient(circle at 50% 20%,#ffffff29,#0000 10rem),#133a20;border-radius:1.25rem;width:100%;min-height:14rem}.fairway-rough{fill:#1f6b35}.fairway-cut{fill:#69c76f;stroke:#ffffff80;stroke-width:3px}.fairway-centerline{fill:none;stroke:#03100761;stroke-dasharray:8 9;stroke-linecap:round;stroke-width:4px}.landing-dot{fill:#f7ff91;stroke:#031007;stroke-width:4px}.landing-dot--center{fill:#7cf3ae}.fairway-actions{grid-template-columns:repeat(3,minmax(0,1fr));gap:.65rem;display:grid}.fairway-actions button{color:#fff;background:#ffffff14;border:1px solid #b9ffd333;border-radius:1rem;min-height:3.75rem;font-weight:900}.fairway-actions button:focus{border-color:#7cf3ae;outline:3px solid #7cf3ae38}.green-map{background:radial-gradient(circle at 50% 48%,#7cf3ae29,#0000 9rem),#12301b;border-radius:1.25rem;width:100%;min-height:14rem}.green-surround{fill:#376329}.green-surface{fill:#8ee86f;stroke:#ffffff8c;stroke-width:4px}.green-grid-line{fill:none;stroke:#03100759;stroke-dasharray:5 7;stroke-linecap:round;stroke-width:3px}.pin-dot{fill:#ffef78;stroke:#031007;stroke-width:4px}.green-zone-actions{grid-template-columns:repeat(3,minmax(0,1fr));gap:.5rem;display:grid}.green-zone-actions button{color:#fff;background:#ffffff14;border:1px solid #b9ffd333;border-radius:.85rem;min-height:3.25rem;font-weight:900}.green-zone-actions button:focus{border-color:#7cf3ae;outline:3px solid #7cf3ae38}.putts-control{color:#d9ffe8;grid-template-columns:1fr 5rem;align-items:center;gap:1rem;font-weight:900;display:grid}.putts-control input{color:#fff;width:100%;min-height:3.5rem;font:inherit;text-align:center;background:#ffffff14;border:1px solid #b9ffd33d;border-radius:1rem;font-size:1.4rem;font-weight:900}.putt-distance-actions{grid-template-columns:repeat(4,minmax(0,1fr));gap:.5rem;display:grid}.putt-distance-actions button{color:#fff;background:#ffffff14;border:1px solid #b9ffd333;border-radius:.85rem;min-height:3.25rem;font-weight:900}.putts-control input:focus,.putt-distance-actions button:focus{border-color:#7cf3ae;outline:3px solid #7cf3ae38}.score-input-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem;display:grid}.score-control{color:#d9ffe8;gap:.5rem;font-weight:900;display:grid}.score-control input{color:#fff;width:100%;min-height:3.75rem;font:inherit;text-align:center;background:#ffffff14;border:1px solid #b9ffd33d;border-radius:1rem;font-size:1.35rem;font-weight:900}.score-actions{grid-template-columns:repeat(4,minmax(0,1fr));gap:.5rem;display:grid}.score-actions button{color:#fff;background:#ffffff14;border:1px solid #b9ffd333;border-radius:.85rem;place-items:center;gap:.2rem;min-height:3.75rem;font-weight:900;display:grid}.score-actions button strong{color:#7cf3ae;font-size:1.2rem}.score-control input:focus,.score-actions button:focus{border-color:#7cf3ae;outline:3px solid #7cf3ae38}.save-hole-button{color:#031007;background:#7cf3ae;border:0;border-radius:999px;width:min(100%,32rem);min-height:4rem;margin:0 auto;font-size:1.2rem;font-weight:950;box-shadow:0 16px 40px #7cf3ae47}.round-review-card{gap:1rem;display:grid}.review-totals{grid-template-columns:repeat(3,minmax(0,1fr));gap:.5rem;display:grid}.review-totals div{background:#ffffff0f;border:1px solid #b9ffd329;border-radius:1rem;gap:.35rem;padding:.9rem;display:grid}.review-totals span,.review-hole-row span{color:#bdebcf;font-size:.82rem;font-weight:800}.review-totals strong{color:#7cf3ae;font-size:1.7rem}.round-review-list{gap:.65rem}.review-hole-row{background:#ffffff0d;border:1px solid #b9ffd324;border-radius:1rem;grid-template-columns:1fr auto;align-items:center;gap:.75rem;padding:.8rem;display:grid}.review-hole-row div{gap:.25rem;display:grid}.review-hole-row button{color:#031007;background:#7cf3ae;border:1px solid #b9ffd338;border-radius:999px;min-height:3rem;padding:0 .9rem;font-weight:900}.toast-status{color:#031007;text-align:center;background:#7cf3ae;border-radius:999px;max-width:32rem;margin:0 auto;padding:1rem;font-weight:900;position:fixed;bottom:1rem;left:1rem;right:1rem}.quick-stats,.round-history{border-radius:1.4rem;grid-template-columns:repeat(3,1fr);gap:1px;display:grid;overflow:hidden}.quick-stats div{background:#ffffff0a;gap:.35rem;padding:1rem .75rem;display:grid}.quick-stats strong{color:#fff;font-size:1rem}.quick-stats span{color:#bdebcf;font-size:.78rem;line-height:1.2}.round-history{background:#07130bd1;grid-template-columns:1fr}.round-history-header,.round-history-row{background:#ffffff0a;grid-template-columns:1fr auto;align-items:center;gap:.75rem;padding:1rem;display:grid}.round-history-header h2{color:#fff;margin:0;font-size:1.15rem}.round-history-header span,.round-history-row span{color:#bdebcf;font-size:.82rem;font-weight:800}.round-history-row div{gap:.25rem;display:grid}.round-history-row div:last-child{justify-items:end}.round-history-row strong{color:#fff}.stats-hub{background:#07130bd1;border:1px solid #b9ffd32e;border-radius:1.4rem;gap:1rem;width:min(100%,32rem);margin:0 auto;padding:1rem;display:grid;box-shadow:0 24px 80px #00000057}.stats-hub-header{justify-content:space-between;align-items:start;gap:1rem;display:flex}.stats-hub-header h2,.analytics-list h3,.shot-cost-summary h3{color:#fff;margin:0}.stats-hub-header>strong{color:#7cf3ae;white-space:nowrap}.stats-filter-grid{gap:.75rem;display:grid}.stats-filter-grid label{color:#d9ffe8;gap:.4rem;font-weight:800;display:grid}.stats-filter-grid select{color:#fff;min-height:3rem;font:inherit;background:#ffffff14;border:1px solid #b9ffd33d;border-radius:.9rem;padding:0 .85rem}.analytics-metrics{grid-template-columns:repeat(3,minmax(0,1fr));gap:.5rem;display:grid}.analytics-metrics div,.shot-cost-summary,.analytics-row{background:#ffffff0d;border:1px solid #b9ffd324;border-radius:1rem;padding:.85rem}.analytics-metrics div{gap:.25rem;display:grid}.analytics-metrics span,.analytics-row span,.shot-cost-summary p,.analytics-list p{color:#bdebcf;font-size:.86rem;font-weight:800}.analytics-metrics strong{color:#7cf3ae;font-size:1.35rem}.shot-cost-summary{gap:.5rem;display:grid}.shot-cost-summary p{margin:0;line-height:1.35}.analytics-list{gap:.6rem;display:grid}.analytics-row{justify-content:space-between;gap:.75rem;display:flex}.analytics-row strong{color:#fff;text-transform:capitalize}.analytics-svg{background:#ffffff0a;border-radius:1rem;width:100%;min-height:12rem}.analytics-dot{fill:#ffef78d1;stroke:#031007;stroke-width:3px}.heat-dot{fill:#ff7c7c9e;stroke:#031007b8;stroke-width:3px}.voice-card textarea{color:#fff;width:100%;min-height:7rem;font:inherit;background:#ffffff14;border:1px solid #b9ffd33d;border-radius:1rem;padding:.85rem}.voice-transcript-control{color:#d9ffe8;gap:.45rem;font-weight:900;display:grid}.voice-action-button{color:#031007;background:#7cf3ae;border:1px solid #b9ffd33d;border-radius:999px;min-height:3.5rem;font-weight:950}.voice-action-button:disabled{color:#bdebcf;background:#ffffff14}.voice-confirmation{background:#7cf3ae14;border:1px solid #7cf3ae47;border-radius:1rem;gap:.4rem;padding:.85rem;display:grid}.voice-confirmation span,.voice-confirmation p{color:#d9ffe8;text-transform:capitalize;margin:0}.social-hub{background:#07130bd1;border:1px solid #b9ffd32e;border-radius:1.4rem;gap:1rem;width:min(100%,32rem);margin:0 auto;padding:1rem;display:grid;box-shadow:0 24px 80px #00000057}.social-card{background:#ffffff0d;border:1px solid #b9ffd324;border-radius:1rem;gap:.45rem;padding:.85rem;display:grid}.social-card h3,.social-card p{margin:0}.social-card h3{color:#fff}.social-card p{color:#bdebcf;font-weight:800}
