body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;margin:0}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}button{background:none;border:none;cursor:pointer;font-family:inherit;outline:none}input,select,textarea{font-family:inherit;font-size:inherit}*{box-sizing:border-box;margin:0;padding:0}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#f5f5f7;color:#1d1d1f;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif}.App{display:flex;flex-direction:column;min-height:100vh}.app-container{flex:1 1;margin:0 auto;max-width:1000px;padding:30px 20px}:root{--primary-color:#000;--primary-light:#333;--secondary-color:#f5f5f7;--text-color:#1d1d1f;--text-secondary:#86868b;--accent-color:#06c;--success-color:#34a853;--danger-color:#ea4335;--border-color:#e0e0e0;--box-shadow:0 2px 8px #0000000a}.loading-container{align-items:center;background-color:#f5f5f7;display:flex;justify-content:center;min-height:100vh}.loading-spinner{animation:spin .8s linear infinite;border:2px solid #0000001a;border-radius:50%;border-top-color:#000;height:40px;width:40px}:focus{outline:2px solid #0003;outline-offset:2px}button,input,select{font-family:Inter,sans-serif}@media screen and (max-width:768px){input[type=number],input[type=text],select{font-size:16px!important}}body,html{overscroll-behavior-y:contain}.course-selector select,.mobile-score-input input,button{touch-action:manipulation}@media (max-width:768px){.app-container{padding:20px 15px}}@media (max-width:480px){.app-container{padding:15px 10px}}.App-header,.App-link,.App-logo{display:none}.landing-page{background-color:#f8f9fa;justify-content:center;min-height:100vh;padding:20px}.landing-content,.landing-page{align-items:center;display:flex}.landing-content{background-color:#fff;border-radius:16px;box-shadow:0 8px 24px #0000000f;flex-direction:column;max-width:540px;padding:50px 40px;text-align:center;width:100%}.landing-logo{display:inline-flex;margin-bottom:10px;position:relative}.landing-logo h1{color:#111;font-size:2.8rem;font-weight:600;letter-spacing:-.5px;margin:0}.logo-badge{background-color:#111;border-radius:12px;color:#fff;font-size:.7rem;font-weight:500;padding:3px 8px;position:absolute;right:-36px;top:8px;transform:rotate(0deg)}.landing-tagline{color:#666;font-size:1.2rem;font-weight:400;margin-bottom:50px}.hero-image{height:120px;margin-bottom:50px;position:relative;width:120px}.golf-ball{animation:floatBall 3s ease-in-out infinite;background-color:#fff;border-radius:50%;box-shadow:0 4px 10px #0000001a;height:40px;top:0;width:40px}.golf-ball,.golf-tee{left:50%;position:absolute;transform:translateX(-50%)}.golf-tee{background:#111;border-radius:4px 4px 0 0;bottom:0;height:80px;width:10px}.landing-cta{margin-bottom:50px;width:100%}.start-game-button{align-items:center;border:none;border-radius:50px;cursor:pointer;display:flex;font-size:1.1rem;font-weight:500;gap:10px;justify-content:center;margin:0 auto;max-width:280px;padding:16px 24px;transition:all .2s ease;width:100%}.start-game-button:hover{transform:translateY(-1px)}.start-game-button:active{transform:translateY(0)}.button-icon{font-size:1.3rem}.landing-note{color:#999;font-size:.85rem;margin-top:12px}.landing-features{grid-gap:15px;display:grid;gap:15px;grid-template-columns:repeat(3,1fr);margin-top:20px;width:100%}.feature{align-items:center;background-color:#fafafa;border-radius:12px;display:flex;flex-direction:column;padding:20px 10px;transition:all .2s ease}.feature:hover{background-color:#f5f5f5}.feature-icon{font-size:1.8rem;margin-bottom:8px}.feature-text h3{color:#111;font-size:.95rem;font-weight:600;margin:0 0 5px}.feature-text p{color:#666;font-size:.8rem;margin:0}@keyframes floatBall{0%,to{transform:translateX(-50%) translateY(0)}50%{transform:translateX(-50%) translateY(-10px)}}@media (max-width:768px){.landing-content{padding:40px 30px}.landing-logo h1{font-size:2.4rem}.logo-badge{font-size:.65rem;right:-32px}.landing-tagline{font-size:1.1rem;margin-bottom:40px}.landing-features{gap:15px;grid-template-columns:1fr}}@media (max-width:480px){.landing-content{padding:30px 20px}.landing-logo h1{font-size:2rem}.landing-tagline{font-size:1rem}.hero-image{height:100px;margin-bottom:40px;width:100px}.golf-ball{height:35px;width:35px}.golf-tee{height:70px;width:8px}.start-game-button{font-size:1rem;padding:14px 20px}}.game-setup{animation:fadeIn .3s ease;background-color:#f5f5f7;bottom:0;display:flex;flex-direction:column;left:0;overflow-y:auto;position:fixed;right:0;top:0;z-index:100}.setup-header{background-color:#000;color:#fff;padding:20px;position:sticky;text-align:center;top:0;z-index:10}.setup-header h2{font-size:1.5rem;font-weight:500;margin-bottom:15px}.setup-progress{margin:0 auto;max-width:200px}.progress-step,.setup-progress{align-items:center;display:flex;justify-content:center}.progress-step{background-color:#444;border-radius:50%;color:#fff;font-size:.9rem;font-weight:500;height:30px;transition:all .3s ease;width:30px}.progress-step.active{background-color:#fff;color:#000}.progress-line{background-color:#444;flex:1 1;height:2px;margin:0 5px;transition:all .3s ease}.setup-content{flex:1 1;margin:0 auto;max-width:600px;overflow-y:auto;padding:30px 20px;width:100%}.setup-step{animation:slideUp .3s ease}.setup-step h3{color:#000;font-size:1.3rem;font-weight:500;margin-bottom:20px;text-align:center}.setup-step h4{color:#000;font-size:1.1rem;font-weight:500;margin:15px 0 10px}.selected-course{border-bottom:1px solid #e0e0e0;color:#555;font-size:.95rem;margin-bottom:20px;padding-bottom:10px;text-align:center}.course-search{margin-bottom:15px}.course-search input{background-color:#fff;border:1px solid #e0e0e0;border-radius:8px;font-size:1rem;padding:12px 15px;width:100%}.course-search input:focus{border-color:#000;box-shadow:0 0 0 2px #0000001a;outline:none}.course-list{background-color:#fff;border-radius:8px;box-shadow:0 2px 8px #0000001a;margin-bottom:20px;max-height:200px;overflow-y:auto}.course-selection .course-list{max-height:300px}.course-item{border-bottom:1px solid #f0f0f0;cursor:pointer;display:flex;flex-direction:column;padding:12px 15px;transition:background-color .2s ease}.course-item:last-child{border-bottom:none}.course-item:hover{background-color:#f8f8f8}.course-name{font-size:.95rem;font-weight:500;margin-bottom:4px}.course-location{color:#666;font-size:.85rem}.no-results{color:#888;padding:15px;text-align:center}.divider{align-items:center;color:#888;display:flex;margin:25px 0}.divider:after,.divider:before{background-color:#e0e0e0;content:"";flex:1 1;height:1px}.divider span{font-size:.9rem;padding:0 15px}.upload-section{background-color:#fff;border-radius:12px;box-shadow:0 2px 8px #0000000a;padding:20px}.upload-section p{color:#666;font-size:.9rem;margin-bottom:15px;text-align:center}.upload-area{align-items:center;display:flex;flex-direction:column}.hidden-input{display:none}.upload-button{background-color:#000;border-radius:20px;color:#fff;cursor:pointer;font-size:.9rem;padding:10px 20px;transition:all .2s ease}.upload-button:hover{background-color:#333}.image-preview{align-items:center;display:flex;flex-direction:column;margin-top:20px;width:100%}.image-preview img{border-radius:8px;box-shadow:0 2px 8px #0000001a;margin-bottom:15px;max-height:200px;max-width:100%}.continue-button{background-color:#000;border:none;border-radius:20px;color:#fff;cursor:pointer;font-size:.9rem;padding:10px 20px;transition:all .2s ease}.continue-button:hover{background-color:#333}.players-list{margin-bottom:25px}.player-item{align-items:center;background-color:#fff;border-radius:8px;box-shadow:0 2px 8px #0000000a;display:flex;margin-bottom:15px;padding:10px 15px}.add-players-buttons{display:flex;gap:10px;margin-bottom:15px}.add-ghin-player-button,.add-player-button{align-items:center;border-radius:8px;color:#666;cursor:pointer;display:flex;flex:1 1;font-size:.95rem;justify-content:center;padding:12px;transition:all .2s ease}.add-player-button{background-color:#f8f8f8;border:1px dashed #ccc}.add-ghin-player-button{background-color:#e8f0fe;border:1px dashed #1a73e8;color:#1a73e8}.add-player-button:before{content:"+";font-size:1.1rem;margin-right:8px}.add-ghin-player-button:before{content:"🏌️";font-size:1.1rem;margin-right:8px}.add-player-button:hover{background-color:#f0f0f0;color:#000}.add-ghin-player-button:hover{background-color:#d4e4fc;color:#0d5bcd}.ghin-search-overlay{align-items:center;animation:fadeIn .2s ease;background-color:#00000080;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.ghin-search-popup{animation:slideUp .3s ease;background-color:#fff;border-radius:12px;box-shadow:0 4px 20px #00000026;max-width:500px;overflow:hidden;width:90%}.ghin-search-header{align-items:center;background-color:#f8f8f8;border-bottom:1px solid #e0e0e0;display:flex;justify-content:space-between;padding:15px 20px}.ghin-search-header h4{font-size:1.1rem;font-weight:500;margin:0}.ghin-close-button{background:none;border:none;color:#666;cursor:pointer;font-size:1.5rem;line-height:1;padding:0 5px}.ghin-close-button:hover{color:#000}.ghin-search-form{padding:20px}.ghin-form-group{margin-bottom:15px}.ghin-form-group label{display:block;font-size:.9rem;font-weight:500;margin-bottom:8px}.ghin-form-group input,.ghin-form-group select{background-color:#fff;border:1px solid #e0e0e0;border-radius:6px;font-size:.95rem;padding:10px 12px;width:100%}.ghin-form-group input:focus,.ghin-form-group select:focus{border-color:#1a73e8;box-shadow:0 0 0 2px #1a73e81a;outline:none}.ghin-search-button{background-color:#1a73e8;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:.95rem;font-weight:500;margin-top:10px;padding:12px;transition:background-color .2s ease;width:100%}.ghin-search-button:hover{background-color:#0d5bcd}.ghin-search-button:disabled{background-color:#a1bfef;cursor:not-allowed}.ghin-search-error{background-color:#ffebee;border-radius:6px;color:#d32f2f;font-size:.85rem;margin:0 20px 20px;padding:10px 15px}.ghin-search-results{padding:0 20px 20px}.ghin-search-results h5{font-size:1rem;font-weight:500;margin:0 0 10px}.ghin-results-list{border:1px solid #e0e0e0;border-radius:6px;max-height:300px;overflow-y:auto}.ghin-result-item{border-bottom:1px solid #f0f0f0;cursor:pointer;padding:12px 15px;transition:background-color .2s ease}.ghin-result-item:last-child{border-bottom:none}.ghin-result-item:hover{background-color:#f8f8f8}.ghin-player-name{font-size:.95rem;font-weight:500;margin-bottom:4px}.ghin-player-details{color:#666;display:flex;font-size:.85rem;gap:8px}.player-number{background-color:#000;border-radius:50%;box-sizing:border-box;-webkit-box-sizing:border-box;color:#fff;flex-shrink:0;font-size:.9rem;font-weight:500;height:30px;justify-content:center;margin-right:15px;min-height:30px;min-width:30px;width:30px}.player-inputs,.player-number{align-items:center;display:flex}.player-inputs{flex:1 1}.player-inputs input{background-color:#f8f8f8;border:1px solid #e0e0e0;border-radius:6px;flex:1 1;font-size:.95rem;padding:8px 12px}.player-inputs input:focus{background-color:#fff;border-color:#000;box-shadow:0 0 0 2px #0000000d;outline:none}.remove-player{align-items:center;background-color:#f0f0f0;border:none;border-radius:50%;color:#666;cursor:pointer;display:flex;font-size:1rem;height:24px;justify-content:center;margin-left:10px;transition:all .2s ease;width:24px}.remove-player:hover{background-color:#e0e0e0;color:#000}.game-type-selection{margin-bottom:25px}.game-types{grid-gap:10px;display:grid;gap:10px;grid-template-columns:1fr 1fr}.game-type{background-color:#fff;border:1px solid #e0e0e0;border-radius:8px;cursor:pointer;display:flex;flex-direction:column;padding:15px;transition:all .2s ease}.game-type:hover{border-color:#ccc;box-shadow:0 2px 8px #0000000d}.game-type.active{border-color:#000;box-shadow:0 2px 8px #00000014}.game-type-name{font-size:.95rem;font-weight:500;margin-bottom:5px}.game-type-desc{color:#666;font-size:.8rem}.hole-range-selection{margin-bottom:25px}.hole-ranges{grid-gap:10px;display:grid;gap:10px;grid-template-columns:1fr 1fr}.hole-range{background-color:#fff;border:1px solid #e0e0e0;border-radius:8px;cursor:pointer;display:flex;flex-direction:column;padding:15px;transition:all .2s ease}.hole-range:hover{border-color:#ccc;box-shadow:0 2px 8px #0000000d}.hole-range.active{border-color:#000;box-shadow:0 2px 8px #00000014}.hole-range-name{font-size:.95rem;font-weight:500;margin-bottom:5px}.hole-range-desc{color:#666;font-size:.8rem}@media (max-width:768px){.hole-ranges{flex-direction:column}.hole-range{margin-bottom:8px}}.handicap-section{margin-bottom:25px}.apply-handicaps{align-items:center;display:flex;margin-bottom:15px}.toggle-switch{display:inline-block;height:26px;margin-right:10px;position:relative;width:50px}.toggle-switch input{height:0;opacity:0;width:0}.toggle-slider{background-color:#ccc;border-radius:34px;bottom:0;cursor:pointer;left:0;position:absolute;right:0;top:0;transition:.3s}.toggle-slider:before{background-color:#fff;border-radius:50%;bottom:4px;content:"";height:18px;left:4px;position:absolute;transition:.3s;width:18px}input:checked+.toggle-slider{background-color:#000}input:checked+.toggle-slider:before{transform:translateX(24px)}.handicap-info{margin-bottom:15px}.handicap-inputs{background-color:#fff;border-radius:8px;box-shadow:0 2px 8px #0000000a;padding:15px}.handicap-item{align-items:center;border-bottom:1px solid #f0f0f0;display:flex;justify-content:space-between;padding:10px 0}.handicap-item:last-child{border-bottom:none}.player-name{font-size:.95rem}.handicap-item input{border:1px solid #e0e0e0;border-radius:6px;font-size:.9rem;padding:8px;text-align:center;width:60px}.handicap-item input:focus{border-color:#000;box-shadow:0 0 0 2px #0000000d;outline:none}.navigation-buttons{display:flex;justify-content:space-between;margin-top:25px}.back-button,.next-button,.start-game-button{border:none;border-radius:8px;cursor:pointer;font-size:.95rem;font-weight:500;padding:12px 25px;transition:all .2s ease}.back-button{background-color:#f0f0f0;color:#333}.back-button:hover{background-color:#e0e0e0}.next-button{background-color:#000;color:#fff}.next-button:hover{background-color:#333}.start-game-button{background-color:#000;color:#fff}.start-game-button:hover{background-color:#333}.cancel-setup{background-color:initial;border:none;color:#fff;cursor:pointer;font-size:.9rem;padding:5px 10px;position:absolute;right:20px;top:20px;z-index:15}.cancel-setup:hover{text-decoration:underline}@keyframes slideUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@media (max-width:768px){.setup-header h2{font-size:1.3rem}.progress-step{font-size:.8rem;height:26px;width:26px}.setup-content{padding:20px 15px}.setup-step h3{font-size:1.2rem}.setup-step h4{font-size:1rem}.game-types{grid-template-columns:1fr}.navigation-buttons{margin-top:20px}.back-button,.next-button,.start-game-button{font-size:.9rem;padding:10px 20px}.cancel-setup{font-size:.8rem;right:15px;top:15px}}.state-selection{margin-bottom:20px;width:100%}.state-selection label{display:block;font-weight:500;margin-bottom:8px}.state-dropdown-container,.state-input-wrapper{position:relative;width:100%}.state-input-wrapper{display:flex}.state-search-input{background-color:#fff;border:1px solid #e0e0e0;border-radius:8px;font-size:1rem;padding:12px 40px 12px 15px;width:100%}.state-search-input:focus{border-color:#000;box-shadow:0 0 0 2px #0000001a;outline:none}.dropdown-toggle{align-items:center;background:#0000;border:none;color:#666;cursor:pointer;display:flex;font-size:10px;height:100%;justify-content:center;position:absolute;right:0;top:0;width:40px}.dropdown-toggle:hover{color:#000}.state-list{background-color:#fff;border-radius:8px;box-shadow:0 2px 8px #0000001a;left:0;max-height:200px;overflow-y:auto;position:absolute;top:calc(100% + 5px);width:100%;z-index:10}.state-item{border-bottom:1px solid #f0f0f0;cursor:pointer;padding:12px 15px;transition:background-color .2s ease}.state-item:last-child{border-bottom:none}.state-item:hover{background-color:#f8f8f8}.selected-state-display{align-items:center;background-color:#fff;border:1px solid #e0e0e0;border-radius:8px;display:flex;justify-content:space-between;margin-bottom:15px;padding:12px 15px}.selected-state-display span{font-weight:500}.change-state-button{background-color:initial;border:none;color:#4a90e2;cursor:pointer;font-size:.9rem;padding:5px}.change-state-button:hover{text-decoration:underline}.loading-indicator{align-items:center;display:flex;flex-direction:column;justify-content:center;margin-bottom:15px;padding:20px}.spinner{animation:spin 1s ease-in-out infinite;border:3px solid #0000001a;border-radius:50%;border-top-color:#000;height:30px;margin-bottom:10px;width:30px}@keyframes spin{to{transform:rotate(1turn)}}.loading-indicator p{color:#666;font-size:.9rem}.error-message{background-color:#fff8f8;border:1px solid #ffcdd2;color:#d32f2f;padding:15px}.error-message,.no-results-message{border-radius:8px;margin-bottom:15px;text-align:center}.no-results-message{background-color:#f8f8f8;color:#666;padding:20px}.course-search-form{margin-bottom:15px}.search-input-container{display:flex;width:100%}.search-input-container input{background-color:#fff;border:1px solid #e0e0e0;border-radius:8px 0 0 8px;flex:1 1;font-size:1rem;padding:12px 15px}.search-input-container input:focus{border-color:#000;box-shadow:0 0 0 2px #0000000d;outline:none}.search-button{background-color:#000;border:none;border-radius:0 8px 8px 0;color:#fff;cursor:pointer;font-size:.95rem;padding:0 20px;transition:background-color .2s ease}.search-button:hover{background-color:#333}.tee-sets-container{margin-bottom:20px}.tee-set-item[data-gender=M]{grid-column:1}.tee-set-item[data-gender=F]{grid-column:2}.tee-sets-container:has(.tee-set-item[data-gender=M]):has(.tee-set-item[data-gender=F]){grid-gap:15px;display:grid;gap:15px;grid-template-columns:repeat(2,1fr)}@media (max-width:600px){.tee-sets-container{display:block!important}.tee-set-item{margin-bottom:12px}}.tee-set-item{align-items:center;background-color:#fff;border:1px solid #e0e0e0;border-radius:8px;cursor:pointer;display:flex;padding:15px;transition:all .2s ease}.tee-set-item:hover{border-color:#ccc;box-shadow:0 2px 8px #0000000d}.tee-marker{border-radius:50%;flex-shrink:0;height:24px;margin-right:15px;width:24px}.tee-set-details{flex:1 1}.tee-set-name{font-size:1rem;font-weight:500;margin-bottom:4px}.tee-set-info{color:#666;display:flex;font-size:.85rem;gap:8px}.black-tee .tee-marker{background-color:#000}.blue-tee .tee-marker{background-color:#06c}.white-tee .tee-marker{background-color:#fff;border:1px solid #ddd}.red-tee .tee-marker{background-color:#c00}.gold-tee .tee-marker{background-color:#fc0}.green-tee .tee-marker{background-color:#090}.scorecard-view{background-color:#fff;border:2px solid #000;border-radius:6px;box-shadow:0 1px 3px #00000014;display:flex;flex-direction:column;height:450px;margin-bottom:20px;width:100%}.scorecard-title{background-color:#000;color:#fff;flex-shrink:0;font-size:1.1rem;font-weight:700;letter-spacing:2px;padding:8px;text-align:center}.table-container{flex:1 1;overflow:auto}.scorecard-table{font-size:.85rem}.scorecard-table td,.scorecard-table th{height:38px;padding:6px 3px}.scorecard-table thead{position:sticky;top:0;z-index:3}.scorecard-table thead th.player-col{background-color:#333;border-right:2px solid #555;box-shadow:2px 0 5px #0000001a;color:#fff;left:0!important;max-width:120px;min-width:120px;position:sticky!important;text-align:left;z-index:5}.hole-col{max-width:35px;min-width:35px;padding:3px 1px!important}.hole-number{font-size:.95rem}.hole-par{font-size:.7rem}.total-col{min-width:60px}.scorecard-table tbody td.player-cell{background-color:#f0f0f0;border-right:2px solid #ccc;box-shadow:2px 0 5px #0000001a;font-weight:500;left:0!important;overflow:hidden;padding-left:6px!important;padding-right:2px;position:sticky!important;text-align:left;text-overflow:ellipsis;white-space:nowrap;z-index:2}.scorecard-table tbody tr:nth-child(2n) td.player-cell{background-color:#e8e8e8}.player-handicap-badge{border-radius:3px;font-size:.6rem;padding:0 3px;vertical-align:text-top}.score-cell{font-size:.85rem;min-width:40px;padding:6px 4px;text-align:center}.score-cell-content{align-items:center;display:flex;flex-direction:column;height:100%;justify-content:center;min-height:30px;position:relative;width:100%}.score-cell .strokes-dot{background-color:#34a853;border-radius:50%;color:#fff;font-size:8px;font-weight:700;height:12px;line-height:12px;position:absolute;right:2px;top:2px;width:12px;z-index:1}.total-cell{font-size:1rem}.vs-par-badge{font-size:.75rem;margin-top:1px}.scorecard-footer{bottom:0;padding:10px;position:sticky;z-index:3}.scorecard-footer .add-player-btn{font-size:.75rem;padding:5px 10px}.scorecard-nav{border-radius:16px;margin:0 auto 10px;padding:3px}.scorecard-nav-btn{border-radius:14px;font-size:.8rem;padding:5px 12px}.scorecard-nav-btn.active[class*=all18]~.scorecard-view .score-cell{height:45px}@media (max-width:768px){.scorecard-table{font-size:.8rem}.scorecard-table td,.scorecard-table th{padding:4px 2px}.hole-col{max-width:30px;min-width:30px}.hole-number{font-size:.8rem}.hole-par{font-size:.65rem}.player-col{max-width:80px;min-width:80px}.score-cell{min-width:30px}.scorecard-view{height:400px}}.match-status-badges{display:flex;justify-content:center;margin-top:2px}.match-status-badge{border-radius:4px;color:#fff;display:inline-block;font-size:.75rem;font-weight:700;height:16px;line-height:16px;min-width:20px;padding:1px 4px}.match-status-badge.up{background-color:#4caf50f2}.match-status-badge.down{background-color:#f44336f2}.match-status-badge.as{background-color:#ff9800f2}@media (max-width:768px){.match-status-badge{border-radius:3px;font-size:.7rem;height:auto;line-height:normal;min-width:18px;padding:1px 3px}}.score-cell.all18-cell{height:45px!important;min-width:45px!important;padding:6px 5px!important}.hole-col.all18-col{max-width:45px!important;min-width:45px!important}.scorecard-wrapper[data-view-mode=all18] .hole-col{max-width:35px;min-width:35px;padding:3px 1px}.scorecard-wrapper[data-view-mode=all18] .score-cell{height:38px;min-width:40px;padding:6px 3px}.scorecard-wrapper[data-view-mode=all18] .score-cell-content{display:flex;flex-direction:column;justify-content:space-around;min-height:35px}.scorecard-wrapper[data-view-mode=all18] .table-container{max-width:100%}.scorecard-wrapper[data-view-mode=all18] .scorecard-table{min-width:1200px}.game-page{display:flex;flex-direction:column;min-height:100vh;width:100%}.game-container{flex:1 1}.active-game{background-color:#fff;border-radius:12px;box-shadow:0 2px 12px #0000000a;margin-top:15px;padding:16px}.game-header{border-bottom:1px solid #f0f0f0;display:flex;justify-content:center;margin-bottom:16px;padding-bottom:12px}.header-content{width:100%}.game-header h2{color:#000;font-size:1.3rem;font-weight:500;margin-bottom:8px;text-align:center}.game-info{align-items:center;display:flex;gap:15px}.game-type,.player-count{background-color:#f5f5f5;border-radius:15px;color:#666;font-size:.9rem;padding:5px 12px}.handicap-summary{background-color:#f8f8f8;border-radius:12px;margin-bottom:20px;padding:16px}.handicap-summary h4{color:#000;font-size:1.1rem;font-weight:500;margin-bottom:12px;text-align:center}.handicap-players{display:flex;flex-wrap:wrap;gap:12px;justify-content:center}.handicap-player{align-items:center;background-color:#fff;border-radius:8px;box-shadow:0 2px 6px #0000000d;display:flex;flex-direction:column;min-width:140px;padding:10px 16px}.handicap-player .player-name{font-size:.95rem;font-weight:500;margin-bottom:4px}.handicap-info{color:#666;font-size:.85rem}.strokes-info{background-color:#f2f9f5;border-radius:12px;color:#34a853;font-size:.8rem;margin-left:8px;padding:3px 8px}.scorecard-container{margin-bottom:30px}.scorecard-container h3{color:#000;font-size:1.2rem;font-weight:500;margin-bottom:15px}.player-scores{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));margin-top:20px}.player-score-card{background-color:#f8f8f8;border-radius:10px;padding:16px}.player-score-card.hole-mode{background-color:#fff;box-shadow:0 2px 8px #0000000d;margin-bottom:16px;padding:20px}.player-info{align-items:center;display:flex;flex-wrap:wrap;justify-content:space-between;margin-bottom:12px}.player-name{font-weight:500}.player-handicap{background-color:#efefef;border-radius:10px;color:#666;font-size:.85rem;padding:3px 8px}.player-total{border-top:1px solid #eaeaea;font-size:1.1rem;font-weight:500;padding-top:10px;text-align:center}.game-actions{display:flex;gap:12px;justify-content:flex-end}.action-button{background-color:#000;border:none;border-radius:20px;color:#fff;cursor:pointer;font-size:.9rem;font-weight:500;padding:10px 20px;transition:all .2s ease}.action-button:hover{background-color:#333}.action-button.secondary{background-color:#f0f0f0;color:#666}.action-button.secondary:hover{background-color:#e0e0e0;color:#333}.no-game{align-items:center;display:flex;flex-direction:column;justify-content:center;padding:60px 20px;text-align:center}.no-game h2{color:#000;font-size:1.4rem;margin-bottom:10px}.no-game p{color:#666;margin-bottom:20px}.start-button{background-color:#000;border:none;border-radius:24px;color:#fff;cursor:pointer;font-size:1rem;font-weight:500;padding:12px 30px;transition:all .2s ease}.start-button:hover{background-color:#333}.view-toggle{background-color:#f5f5f5;border-radius:20px;display:flex;margin-bottom:0;padding:4px;width:fit-content}.toggle-button{background:none;border:none;border-radius:16px;color:#666;cursor:pointer;font-size:.85rem;font-weight:500;padding:6px 15px;transition:all .2s ease}.toggle-button.active{background-color:#000;color:#fff}.hole-view{background-color:#f8f8f8;border-radius:12px;margin-bottom:20px;padding:20px}.hole-navigation{align-items:center;display:flex;justify-content:space-between;margin-bottom:24px}.hole-navigation-separator{background-color:#e0e0e0;height:1px;margin:15px 0;width:100%}.nav-button{background-color:#000;border:none;border-radius:20px;color:#fff;cursor:pointer;font-size:.85rem;padding:8px 16px;transition:all .2s ease}.nav-button:hover:not(.disabled){background-color:#333}.nav-button.disabled{background-color:#e0e0e0;color:#999}.hole-info{align-items:center;border-radius:10px;justify-content:space-between;margin-bottom:15px;padding:10px}.hole-info-center{flex:1 1;text-align:center}.hole-info h3{font-size:1.2rem;margin:0 0 4px}.hole-info .nav-button{align-items:center;border-radius:8px;display:flex;height:40px;justify-content:center;padding:0;width:40px}.hole-details span{background:#f5f5f5;border:1px solid #e8e8e8;border-radius:10px;font-size:.7rem;padding:1px 7px}.player-scores-hole{display:flex;flex-direction:column;gap:16px}.player-scores-hole.grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(2,1fr)}.player-scores-hole.list{display:flex;flex-direction:column;gap:16px}.score-input{gap:12px;margin:15px 0;width:100%}.score-button,.score-input{align-items:center;display:flex;justify-content:center}.score-button{background-color:#f0f0f0;border:none;border-radius:50%;color:#333;cursor:pointer;font-size:1.2rem;font-weight:500;height:36px;transition:all .2s ease;width:36px}.score-button:hover{background-color:#e0e0e0}.score-button.decrement,.score-button.increment{background-color:#f0f0f0}.score-input input{align-items:center;-moz-appearance:textfield;background-color:#fff;border:1px solid #e0e0e0;border-radius:10px;display:flex;font-size:1.8rem;font-weight:500;height:60px;justify-content:center;padding:0;text-align:center;width:60px}.score-input input::-webkit-inner-spin-button,.score-input input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.score-input input:focus{border-color:#000;box-shadow:0 0 0 2px #0000001a;outline:none}.score-input input.under-par{background-color:#f2f9f5;border-color:#d4e9da;color:#34a853}.score-input input.over-par{background-color:#fef2f2;border-color:#f5d9d9;color:#ea4335}.score-input input.has-strokes{border-color:#34a853;box-shadow:0 0 0 2px #34a85366}.stroke-indicator{background-color:#f2f9f5;border-radius:12px;color:#34a853;font-size:.8rem;margin:5px auto 10px;padding:5px 8px;text-align:center;width:fit-content}.exit-confirm-modal{border-radius:12px;box-shadow:0 4px 20px #00000026}.exit-confirm-modal h3{font-size:1.2rem;margin-bottom:10px}.exit-confirm-modal p{margin-bottom:20px}.exit-confirm-buttons button{border:none;border-radius:6px;font-size:.9rem;padding:8px 16px}.cancel-button{background-color:#f0f0f0}.cancel-button:hover{background-color:#e0e0e0}.confirm-button{background-color:#ea4335}.confirm-button:hover{background-color:#d93025}.match-play-status{background-color:#f0f8ff;border:1px solid #d1e3f6;border-radius:4px;font-size:.85rem;margin:0 0 15px;padding:6px 10px;text-align:center}.match-play-status-note{color:#666;font-size:.9rem;margin:5px 0;text-align:center}.match-score{display:inline-block;margin-bottom:3px;margin-right:10px}.match-score:last-child{margin-right:0}.match-players{color:#555;font-size:.8rem;font-weight:500}.match-result{color:#2c3e50;font-size:.85rem;font-weight:600}.match-score-info{background-color:#fff8e6;border:1px solid #ffe0b2;border-radius:4px;display:inline-block;font-size:.85rem;padding:4px 8px}.match-score-pending{color:#6c757d;font-size:.75rem;font-style:italic}.hole-actions{display:flex;justify-content:center;margin-top:20px}.next-hole-button{background-color:#000;border:none;border-radius:20px;color:#fff;cursor:pointer;font-size:.95rem;font-weight:500;padding:10px 20px;transition:all .2s ease}.next-hole-button:hover{background-color:#333}.modal-overlay{align-items:center;background-color:#00000080;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.modal-actions{display:flex;gap:12px;justify-content:flex-end}.modal-actions button{border:none;border-radius:6px;cursor:pointer;font-size:.9rem;padding:8px 16px;transition:all .2s ease}@media (max-width:768px){.active-game{box-sizing:border-box;overflow-x:hidden;padding:5px;width:100%}.game-header{margin-bottom:12px;padding-bottom:10px}.header-content{width:100%}.game-header h2{font-size:1.1rem;margin-bottom:6px}.view-toggle{border-radius:16px;padding:3px;width:100%}.toggle-button{border-radius:14px;flex:1 1;font-size:.75rem;padding:5px 10px;white-space:nowrap}.game-info{margin-bottom:15px}.player-scores{grid-template-columns:1fr}.game-actions{flex-direction:column}.action-button{width:100%}.hole-navigation{flex-direction:row;gap:8px;margin-bottom:15px}.nav-button{flex:1 1;font-size:.75rem;padding:6px 12px;width:auto}.hole-info{margin-bottom:10px;padding:0 8px 8px}.hole-info h3{font-size:1.1rem;margin-bottom:3px}.hole-info .nav-button{font-size:.75rem;height:32px;min-width:32px;width:32px}.hole-details{flex-direction:row;flex-wrap:wrap;gap:6px;justify-content:center}.hole-details span{border-radius:10px;font-size:.7rem;padding:2px 6px}.score-input input{font-size:1.5rem;height:50px;padding:0;text-align:center;width:50px}.match-play-status{font-size:.8rem;margin-bottom:10px;padding:5px 8px}.match-score{display:inline-block;margin-bottom:2px;margin-right:8px}.match-players{font-size:.75rem}.match-result{font-size:.8rem}.match-play-status-note{font-size:.85rem;margin:3px 0}.match-score-info{font-size:.8rem;padding:3px 6px}.hole-navigation-separator{margin:10px 0}.hole-actions{box-sizing:border-box;display:flex;justify-content:center;margin:15px 0 5px;padding:0;width:100%}.next-hole-button{background-color:#000;border:none;border-radius:24px;box-shadow:0 2px 6px #0003;color:#fff;font-size:1rem;margin:0;min-width:150px;padding:12px 24px;transition:all .2s ease}.next-hole-button:active{background-color:#222;box-shadow:0 1px 3px #00000026;transform:scale(.97)}.player-score-card.hole-mode{margin-bottom:10px;padding:12px}.player-info{padding:0 0 6px}.player-name{font-size:.9rem;word-break:break-word}.player-handicap{font-size:.75rem;padding:2px 6px}.strokes-info{font-size:.7rem;margin-left:4px;padding:2px 6px}.score-input{gap:8px;margin:8px 0}.score-button{font-size:1rem;height:30px;width:30px}.player-total{font-size:.9rem;padding-top:8px}.stroke-indicator{font-size:.7rem;margin:3px auto 6px;padding:3px 6px}.player-scores-hole{grid-gap:6px;box-sizing:border-box;display:grid;gap:6px;grid-template-columns:1fr 1fr;margin:0;padding:0;width:100%}.player-score-card.hole-mode{box-sizing:border-box;margin:0;padding:6px;width:100%}.score-input.touch-friendly{padding:4px 0}.score-input .score-controls{align-items:center;display:flex;flex-direction:row;justify-content:space-between;width:100%}.score-button.large-btn{align-items:center;background-color:#f0f0f0;border:1px solid #ddd;border-radius:50%;color:#333;display:flex;font-size:20px;height:36px;justify-content:center;min-width:36px;width:36px}.score-button.large-btn.decrement,.score-button.large-btn.increment{background-color:#f8f8f8;border-color:#ddd}.score-display{flex:1 1;margin:0 8px;min-width:50px;text-align:center}.score-value{font-size:22px}.par-indicator{font-size:10px}.stroke-indicator{font-size:.75rem;padding:4px 0}.player-total{font-size:.8rem;padding:4px 0}.hole-view{box-sizing:border-box;margin:0;padding:0;width:100%}.player-scores-hole.grid{gap:6px;grid-template-columns:1fr 1fr}.player-scores-hole.list{gap:8px}}.match-config-modal{background:#fff;border-radius:10px;max-height:80vh;max-width:90%;overflow-y:auto;padding:20px;width:500px}.match-config-modal h3{color:#333;font-size:1.5rem;margin-top:0}.match-config-modal p{color:#555;margin:15px 0}.match-format-options{display:flex;flex-direction:column;gap:15px;margin-bottom:20px}.format-option{background-color:#f9f9f9;border:1px solid #ddd;border-radius:8px;display:flex;flex-direction:column;gap:10px;padding:15px}.format-option h4{color:#444;margin:0 0 5px}.pairing-options{gap:10px}.format-button,.pairing-options{display:flex;flex-direction:column}.format-button{align-items:flex-start;background:#f0f8ff;border:1px solid #bed6e3;border-radius:6px;cursor:pointer;padding:12px 15px;text-align:left;transition:all .2s}.format-button:hover{background:#e1f0fa;border-color:#a3c5d8}.format-detail{color:#666;font-size:.9rem;font-style:italic;margin-top:5px}.format-note{background-color:#fff9e6;border:1px solid #ffe0a3;border-radius:6px;color:#856404;font-size:.9rem;padding:10px}.cancel-button{background:#f2f2f2;border:1px solid #ddd;border-radius:6px;margin-top:10px;padding:10px 15px}.cancel-button:hover{background:#eaeaea}.player-handicap-total{color:#34a853;font-size:.85rem;margin-left:5px}.hole-strokes-indicator{color:#34a853;font-size:16px;position:absolute;right:-4px;top:-4px}.scorecard-table td{position:relative}.vertical-scorecard{display:flex;flex-direction:column;gap:8px;margin:0 auto;max-width:600px;width:100%}.scorecard-nav{background-color:#f5f5f5;border-radius:18px;display:flex;justify-content:center;margin:0 auto 5px;padding:4px;width:fit-content}.scorecard-nav-btn{background:none;border:none;border-radius:15px;color:#666;cursor:pointer;font-size:.85rem;font-weight:500;padding:6px 15px;transition:all .2s ease}.scorecard-nav-btn.active{background-color:#000;color:#fff}.scorecard-players{display:flex;flex-direction:column;gap:16px}.player-scorecard{background-color:#f8f8f8;border-radius:10px;box-shadow:0 1px 4px #0000000d;overflow:hidden}.player-header{align-items:center;background-color:#fff;border-bottom:1px solid #eaeaea;display:flex;justify-content:space-between;padding:10px 12px}.player-name-display{align-items:center;display:flex;gap:4px}.player-name{font-size:1rem;font-weight:600}.player-handicap{color:#34a853;font-size:.8rem}.player-totals{gap:8px}.player-totals,.total-score{align-items:center;display:flex}.total-score{font-size:.95rem;font-weight:500;gap:3px}.total-label{color:#666;font-size:.8rem}.total-value{font-weight:600}.vs-par{background-color:#f5f5f5;border-radius:8px;font-size:.8rem;padding:1px 4px}.nine-scores{display:flex;font-size:.8rem;gap:8px}.nine-score{align-items:center;display:flex;gap:3px}.nine-label{color:#666}.vs-par-small{color:#666;font-size:.7rem}.hole-scores{display:flex;flex-direction:column}.hole-score-row{align-items:center;border-bottom:1px solid #eaeaea;display:flex;justify-content:space-between;padding:8px 12px}.hole-score-row:last-child{border-bottom:none}.hole-info{display:flex;flex-direction:column;gap:1px}.hole-number{font-size:.9rem;font-weight:500}.hole-details{color:#666;font-size:.75rem;gap:6px}.hole-distance,.hole-index,.hole-par{background-color:#f5f5f5;border-radius:8px;padding:1px 4px}.score-display{gap:4px;position:relative}.score-display,.score-value{align-items:center;display:flex}.score-value{background-color:#fff;border:1px solid #e0e0e0;border-radius:50%;font-size:.95rem;font-weight:600;height:34px;justify-content:center;width:34px}.score-value.under-par{background-color:#f2f9f5;border-color:#d4e9da;color:#34a853}.score-value.over-par{background-color:#fef2f2;border-color:#f5d9d9;color:#ea4335}.strokes-badge{align-items:center;background-color:#34a853;border-radius:50%;color:#fff;display:flex;font-size:.65rem;font-weight:600;height:16px;justify-content:center;position:absolute;right:-3px;top:-3px;width:16px}.grouped-scorecard{display:flex;flex-direction:column;gap:10px}.hole-section{background-color:#fff;border-radius:8px;box-shadow:0 1px 4px #0000000d;overflow:hidden}.hole-header{align-items:center;background-color:#f5f5f5;border-bottom:1px solid #eaeaea;display:flex;justify-content:space-between;padding:8px 12px}.hole-header h3{color:#333;font-size:.95rem;font-weight:600;margin:0}.match-groups{padding:8px}.match-group{border-bottom:1px solid #f0f0f0;margin-bottom:10px;padding-bottom:10px}.match-group:last-child{border-bottom:none;margin-bottom:0;padding-bottom:0}.match-label{background-color:#f5f5f5;border-radius:4px;color:#666;display:inline-block;font-size:.8rem;margin-bottom:6px;padding:2px 6px}.player-teams{display:flex;flex-direction:column;gap:6px}.team{border-left:2px solid #0000;border-radius:4px;padding:5px}.team.winner{background-color:#e8f5e94d;border-left-color:#2e7d32}.player-score{align-items:center;border-radius:3px;display:flex;justify-content:space-between;padding:3px 6px}.player-score.highlight{background-color:#2e7d321a;font-weight:600}.player-name{align-items:center;color:#333;display:flex;font-size:.85rem;gap:4px}.stroke-indicator{background-color:#e8f5e9;border-radius:3px;color:#2e7d32;font-size:.7rem;font-weight:500;padding:1px 3px}.score{align-items:center;background-color:#f5f5f5;border-radius:50%;color:#333;display:flex;font-size:.85rem;height:26px;justify-content:center;width:26px}@media (max-width:768px){.hole-header{padding:10px 14px}.hole-header h3{font-size:1rem}.match-groups{padding:8px}.player-score{padding:4px 6px}.player-name,.score{font-size:.9rem}.score{height:28px;width:28px}}.compact-scorecard{background-color:#f8f8f8;border-radius:10px;box-shadow:0 1px 4px #0000000d;display:flex;flex-direction:column;overflow:hidden}.players-header{background-color:#fff;border-bottom:1px solid #eaeaea;display:flex;flex-wrap:wrap;justify-content:space-between;padding:10px 12px}.compact-player-header{border-right:1px solid #f0f0f0;display:flex;flex:1 1;flex-direction:column;gap:4px;min-width:80px;padding:5px 8px;text-align:center}.compact-player-header:last-child{border-right:none}.holes-list{display:flex;flex-direction:column}.compact-hole-row{border-bottom:1px solid #eaeaea;display:flex;padding:6px 0}.compact-hole-row:last-child{border-bottom:none}.compact-hole-row .hole-info{border-right:1px solid #eaeaea;padding:0 10px;width:120px}.players-scores{display:flex;flex:1 1;justify-content:space-between}.compact-score-display{display:flex;flex:1 1;justify-content:center;padding:0 5px;position:relative}.nine-summary{background-color:#f0f0f0;border-top:1px solid #ddd;display:flex;padding:8px 12px}.nine-info{border-right:1px solid #ddd;display:flex;flex-direction:column;font-size:.85rem;font-weight:500;gap:2px;padding-right:10px;width:120px}.nine-par{color:#666;font-size:.75rem}.players-nine-scores{display:flex;flex:1 1;justify-content:space-between}.nine-score-display{display:flex;flex:1 1;flex-direction:column;font-size:.85rem;font-weight:500;text-align:center}@media (max-width:768px){.compact-player-header{min-width:60px;padding:4px 5px}.compact-hole-row .hole-info{padding:0 6px;width:90px}.nine-info{width:90px}}.spreadsheet-scorecard{background-color:#fff;border:2px solid #000;border-radius:6px;box-shadow:0 1px 3px #00000014;margin-bottom:20px;overflow-x:auto;width:100%}.scorecard-table{border-collapse:collapse;font-size:.9rem;min-width:600px;table-layout:fixed;width:100%}.scorecard-table td,.scorecard-table th{border:1px solid #999;height:36px;padding:8px 4px;text-align:center}.player-col,.scorecard-table thead{background-color:#333;color:#fff}.player-col{left:0;min-width:120px;position:sticky;text-align:left;z-index:2}.hole-col{max-width:45px;min-width:45px;padding:4px 2px!important}.hole-number{font-size:1rem;font-weight:600}.hole-par{color:#ccc;font-size:.75rem}.total-col{background-color:#333;color:#fff;font-weight:600;min-width:70px}.player-cell{background-color:#f0f0f0;font-weight:500;left:0;padding-left:10px!important;position:sticky;text-align:left;z-index:1}.player-handicap-badge{background-color:#34a853;border-radius:4px;color:#fff;display:inline-block;font-size:.7rem;font-weight:600;margin-left:5px;padding:2px 5px}.score-cell{cursor:pointer;font-size:1.1rem;font-weight:600;position:relative;transition:background-color .15s}.score-cell:hover{background-color:#fffde7}.score-cell.under-par{background-color:#e8f5e9;color:#2e7d32;font-weight:700}.score-cell.over-par{background-color:#ffebee;color:#c62828;font-weight:700}.score-cell.not-played{background-color:#f5f5f5;color:#9e9e9e}.strokes-dot{background-color:#34a853;border-radius:50%;color:#fff;font-size:9px;font-weight:700;height:14px;line-height:14px;position:absolute;right:3px;top:3px;width:14px}.total-cell{background-color:#f0f0f0;font-size:1.1rem;font-weight:600}.vs-par-badge{color:#666;display:block;font-size:.8rem;margin-top:2px}.scorecard-footer{background-color:#f5f5f5;padding:12px;text-align:center}.scorecard-footer .add-player-btn{background-color:#000;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:.8rem;padding:6px 12px}@media (max-width:768px){.scorecard-table{font-size:.8rem}.scorecard-table td,.scorecard-table th{height:30px;padding:6px 3px}.hole-col{max-width:36px;min-width:36px}.hole-number{font-size:.9rem}.hole-par{font-size:.7rem}.player-col{min-width:90px}.total-col{min-width:50px}.score-cell{font-size:1rem}}.spreadsheet-title{background-color:#333;color:#fff;font-size:1rem;font-weight:700;padding:8px 12px;text-align:center}.layout-toggle{display:flex;gap:10px;justify-content:center;margin:15px 0}.layout-button{background-color:#f0f0f0;border:1px solid #ddd;border-radius:20px;color:#333;cursor:pointer;font-size:.9rem;padding:8px 16px;transition:all .2s ease}.layout-button.active{background-color:#000;border-color:#000;color:#fff}@media (max-width:768px){.layout-toggle{margin:12px 0}.layout-button{font-size:.85rem;padding:6px 14px}}.hole-nav-container{align-items:center;display:flex;justify-content:space-between;margin-bottom:10px}.hole-info{background-color:#f8f8f8;border-radius:8px;flex:1 1;margin:0 8px;padding:7px 15px;text-align:center}.hole-info h3{font-size:1.1rem;font-weight:500;margin:0 0 2px}.hole-details{font-size:.85rem;gap:8px}.hole-details,.nav-button{display:flex;justify-content:center}.nav-button{align-items:center;background-color:#f0f0f0;border:1px solid #ddd;border-radius:8px;color:#333;font-weight:500;height:40px;min-width:50px;padding:0 10px}.nav-button.disabled{cursor:not-allowed;opacity:.5}@media (max-width:768px){.hole-nav-container{margin-bottom:8px}.hole-info{margin:0 4px;padding:6px 8px}.hole-info h3{font-size:1rem;margin-bottom:1px}.hole-details{font-size:.8rem;gap:6px}.nav-button{font-size:.75rem;height:32px;min-width:36px}}.hole-details-row{color:#666;display:flex;font-size:.9rem;gap:15px;justify-content:center;margin-bottom:10px;text-align:center}.hole-details-row span{background-color:#f5f5f5;border-radius:4px;display:inline-block;padding:3px 8px}@media (max-width:768px){.hole-details-row{font-size:.8rem;gap:10px;margin-bottom:8px}.hole-details-row span{padding:2px 6px}}.exit-confirm-overlay{background-color:#00000080}.exit-confirm-modal{border-radius:8px;box-shadow:0 4px 6px #0000001a;max-width:400px}.exit-confirm-title{color:#333;font-size:1.25rem;font-weight:600;margin-bottom:12px}.exit-confirm-message{color:#555;font-size:1rem;margin-bottom:24px}.exit-confirm-buttons{justify-content:flex-end}.cancel-button{background-color:#e0e0e0;color:#333}.cancel-button,.confirm-button{border-radius:4px;cursor:pointer;font-weight:500;padding:8px 16px}.confirm-button{background-color:#d32f2f}.handicap-calculator-overlay{align-items:center;background-color:#00000080;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.handicap-calculator-modal{background-color:#fff;border-radius:8px;box-shadow:0 4px 6px #0000001a;max-width:400px;padding:24px;width:90%}.handicap-inputs{margin-bottom:20px}.handicap-input-row{align-items:center;display:flex;justify-content:space-between;margin-bottom:12px}.handicap-input-row input{border:1px solid #ccc;border-radius:4px;padding:8px;width:80px}.handicap-calculator-buttons{display:flex;gap:12px;justify-content:flex-end}.calculate-button{background-color:#1976d2;border:none;border-radius:4px;color:#fff;cursor:pointer;font-weight:500;padding:8px 16px}.app-header{background-color:#000;box-shadow:0 1px 0 #ffffff1a;color:#fff;padding:24px 0;position:relative}.header-content{align-items:center;display:flex;flex-direction:column;margin:0 auto;max-width:1200px;padding:0 20px;position:relative;text-align:center;z-index:10}.app-header h1{color:#fff;font-size:2.2rem;font-weight:500;letter-spacing:-.5px;margin:0}.app-header p{font-size:1rem;font-weight:400;letter-spacing:.2px;margin:8px 0 0;opacity:.7}.header-decoration{bottom:-30px;display:none;opacity:.5;position:absolute;right:50px;transform:scale(.5)}.golf-flag{height:100px;position:relative;width:60px}.flag-pole{background-color:#e0e0e0;bottom:0;height:100px;transform:translateX(-50%);width:3px}.flag,.flag-pole{left:50%;position:absolute}.flag{background-color:#fff;clip-path:polygon(0 0,100% 0,100% 100%,0 50%);height:20px;top:5px;transform-origin:left center;width:30px}@media (max-width:768px){.app-header{padding:20px 0}.app-header h1{font-size:1.8rem}.app-header p{font-size:.9rem}}@media (max-width:480px){.app-header h1{font-size:1.6rem}.app-header p{font-size:.8rem}}.course-selector{background-color:#fff;border-radius:12px;box-shadow:0 2px 12px #0000000a;display:flex;justify-content:center;margin-bottom:20px;padding:15px}.selector-wrapper{display:flex;flex-direction:column;gap:8px;max-width:500px;width:100%}.course-selector label{color:#000;font-size:.95rem;font-weight:500}.select-container{position:relative}.select-container:after{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M7.41 8.59 12 13.17l4.59-4.58L18 10l-6 6-6-6 1.41-1.41z'/%3E%3C/svg%3E");background-position:50%;background-repeat:no-repeat;background-size:contain;content:"";height:10px;pointer-events:none;position:absolute;right:15px;top:50%;transform:translateY(-50%);width:10px}.course-selector select{-webkit-appearance:none;appearance:none;background-color:#fff;border:1px solid #e0e0e0;border-radius:8px;color:#000;cursor:pointer;font-size:.95rem;padding:12px 40px 12px 15px;transition:all .2s ease;width:100%}.course-selector select:focus{border-color:#000;box-shadow:0 0 0 2px #0000001a;outline:none}.course-selector select:hover{border-color:#000}@media (max-width:768px){.course-selector{margin-bottom:15px;padding:12px}.course-selector select{font-size:.9rem;padding:10px 36px 10px 12px}.course-selector label{font-size:.9rem}}.game-container{display:flex;flex-direction:column;min-height:100vh}.game-container,.game-header{position:relative}.exit-game-button{background-color:initial;border:1px solid #ffffff4d;border-radius:20px;color:#fff;cursor:pointer;font-size:.8rem;font-weight:500;padding:6px 14px;position:absolute;right:20px;top:20px;transition:all .2s ease;z-index:100}.exit-game-button:hover{background-color:#ffffff1a}.exit-confirm-overlay{align-items:center;animation:fadeIn .2s ease;background-color:#000000b3;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.exit-confirm-modal{animation:scaleIn .2s ease;background-color:#fff;border-radius:14px;box-shadow:0 10px 25px #0003;max-width:340px;padding:24px;text-align:center;width:90%}.exit-confirm-modal h3{color:#000;font-size:1.3rem;font-weight:500;margin:0 0 8px}.exit-confirm-modal p{color:#666;font-size:.95rem;margin-bottom:24px}.exit-confirm-buttons{display:flex;gap:12px;justify-content:center}.exit-confirm-buttons button{border-radius:20px;cursor:pointer;font-size:.95rem;font-weight:500;padding:10px 20px;transition:all .2s ease}.cancel-button{background-color:#f1f1f1;border:none;color:#000}.cancel-button:hover{background-color:#e5e5e5}.confirm-button{background-color:#000;border:none;color:#fff}.confirm-button:hover{background-color:#333}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes scaleIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@media (max-width:768px){.exit-game-button{font-size:.75rem;padding:5px 12px;right:15px;top:15px}.exit-confirm-modal{padding:20px}.exit-confirm-modal h3{font-size:1.2rem}.exit-confirm-buttons button{font-size:.9rem;padding:9px 18px}}
/*# sourceMappingURL=main.4d4662a7.css.map*/