:root{font-family:Segoe UI,system-ui,sans-serif;color:#172e27;background:#f5f3eb;font-synthesis:none;line-height:1.5}*{box-sizing:border-box}body{margin:0}button,input,select{font:inherit}button,a,input,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer;min-height:48px;border-radius:12px;padding:10px 16px;border:1px solid transparent;font-weight:650}button:disabled{cursor:default;opacity:.48}button:not(:disabled):hover{filter:brightness(.94)}:focus-visible{outline:3px solid #9e5800;outline-offset:3px}input,select{min-height:48px;border:1px solid #82948a;border-radius:10px;background:#fff;color:#172e27;padding:10px 12px;min-width:0}.site-header{max-width:960px;margin:auto;padding:22px 24px;display:flex;justify-content:space-between;gap:16px;align-items:center;border-bottom:1px solid #d9dfd5}.brand{display:flex;align-items:center;gap:10px;color:inherit;text-decoration:none;font-weight:750;font-size:12px;letter-spacing:.12em}.brand{min-height:48px}h1:focus{outline:none}.brand small{display:block;font-size:10px;letter-spacing:.25em;color:#456052}.header-note{font-size:12px;color:#456052}main{max-width:720px;margin:auto;padding:32px 16px}.panel{background:#fffefa;border:1px solid #d9dfd5;border-radius:22px;padding:24px;box-shadow:0 10px 35px #183e2510}h1,h2,p{margin-top:0}h1{font-size:clamp(30px,7vw,46px);line-height:1.15;letter-spacing:-.04em;margin-bottom:18px}h2{font-size:24px;letter-spacing:-.025em}.eyebrow{display:block;color:#456052;font-size:11px;letter-spacing:.17em;font-weight:700;margin-bottom:16px}.home{text-align:center;padding-top:40px}.home h1 em{font-style:normal;color:#277050}.intro{max-width:400px;margin:0 auto;color:#456052}.course-art{position:relative;height:160px;max-width:370px;margin:14px auto;border-radius:50%;background:#e6edde;overflow:hidden;border:12px solid #fffefa}.course-line{position:absolute;width:200px;height:110px;border:2px dashed #9cad91;border-radius:50%;transform:rotate(-15deg);left:12%;top:40%}.flag{position:absolute;left:65%;top:0;font-size:90px;line-height:1.2;color:#174c3c}.golf-ball{position:absolute;width:22px;height:22px;background:#fff;border-radius:50%;left:20%;bottom:30px;box-shadow:2px 3px #b0bcaa}.primary{background:#174c3c;color:#fff;display:inline-flex;align-items:center;justify-content:center;gap:16px}.secondary{background:#eaf0e5;border-color:#c9d6c2;color:#174c3c}.text-button{color:#174c3c;background:transparent}.full-width{width:100%}.home-facts{display:flex;flex-wrap:wrap;justify-content:center;gap:8px 18px;font-size:12px;color:#456052;margin-top:20px}fieldset{border:0;padding:0;margin:0 0 24px;min-width:0}legend{font-weight:700;margin-bottom:10px;width:100%}.muted{color:#456052;font-size:13px;font-weight:400;margin-left:8px}.choice-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}.custom-choice{grid-column:1 / -1}.choice-row+.limit-label{margin-top:16px}.choice{display:flex;align-items:center;justify-content:center;gap:10px;border:1px solid #82948a;border-radius:12px;min-height:52px;cursor:pointer}.choice input{min-height:auto;accent-color:#174c3c}.choice.selected{background:#eaf0e5;border-color:#174c3c;font-weight:700}.name-list{display:grid;gap:10px}.name-row{display:flex;gap:10px;align-items:center}.name-row input{width:100%}.player-dot{width:28px;height:28px;flex-shrink:0;border-radius:50%;background:#eaf0e5;text-align:center;font-weight:650}.player-actions{display:flex;gap:4px;flex-wrap:wrap;margin-top:12px}.limit-label{display:flex;align-items:center;justify-content:space-between;gap:12px;font-weight:700}.limit-label input{width:80px}.hint{font-size:13px;color:#456052;margin:6px 0 20px}.validation{border-left:3px solid #9e5800;padding-left:12px;color:#744300;font-size:13px;margin-bottom:20px}.validation p{margin:6px 0}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}footer{text-align:center;color:#456052;font-size:12px;padding:8px 16px 28px}.game-toolbar{display:flex;justify-content:space-between;align-items:center;gap:8px;margin:-10px 0 12px}.game-toolbar .text-button{padding-left:0}.save-state{font-size:12px;color:#456052}.hole-heading{display:flex;justify-content:space-between;align-items:center}.hole-heading h1{margin-bottom:12px}.hole-heading h1 span{font-size:18px;font-weight:400;color:#456052;letter-spacing:0}.hole-badge{font-size:36px;color:#174c3c}.hole-progress{width:100%;height:6px;border:none;border-radius:10px;display:block;accent-color:#174c3c}.hole-progress::-webkit-progress-bar{background:#e6edde;border-radius:10px}.hole-progress::-webkit-progress-value{background:#174c3c;border-radius:10px}.hole-caption{display:flex;justify-content:space-between;gap:8px;font-size:12px;color:#456052;margin:10px 0 16px}.score-list{border-top:1px solid #d9dfd5}.score-row{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:14px 0;border-bottom:1px solid #d9dfd5}.player-info{display:flex;align-items:center;gap:8px;min-width:0;flex:1}.player-info strong{overflow-wrap:anywhere;font-size:16px}.score-entry{flex:0 0 164px}.stepper{display:grid;grid-template-columns:48px 60px 48px;gap:4px}.step-button{background:#eaf0e5;color:#174c3c;font-size:24px;padding:0}.stepper input{text-align:center;padding:4px;width:60px;font-size:26px;font-weight:700;font-variant-numeric:tabular-nums}.stepper input::placeholder{color:#64796a}.input-error{font-size:12px;color:#8b291c;margin:6px 0 0}.hole-navigation{display:grid;grid-template-columns:1fr 1fr;gap:10px}.hole-navigation button{padding:10px 6px;font-size:14px}.jump-label{margin-top:16px;display:flex;align-items:center;justify-content:center;gap:12px;font-size:14px}.standings{margin-top:20px}.standing-list{margin:0;padding:0;list-style:none}.standing-list li{display:flex;align-items:center;gap:12px;border-top:1px solid #d9dfd5;padding:12px 0}.rank{width:48px;flex-shrink:0;font-size:13px;color:#456052}.standing-name{flex:1;min-width:0;overflow-wrap:anywhere}.standing-name small{display:block;font-size:12px;color:#456052}.leader{color:#174c3c;font-weight:700}.total{font-size:26px;font-variant-numeric:tabular-nums;text-align:right}.total small{display:block;font-size:11px;font-weight:400;color:#456052;margin-top:-4px}.card-toggle,.scorecard{margin-top:16px}.table-scroll{overflow-x:auto;border:1px solid #d9dfd5;border-radius:12px}table{width:100%;border-collapse:collapse;font-variant-numeric:tabular-nums;font-size:14px}th,td{border-bottom:1px solid #d9dfd5;text-align:center;padding:8px;min-width:64px}thead th{background:#eaf0e5;min-width:92px;max-width:120px;overflow-wrap:anywhere}tr>th:first-child{position:sticky;left:0;background:#fffefa;min-width:58px;z-index:1}thead tr>th:first-child{background:#eaf0e5}.current-hole td{background:#edf2e8}.hole-link{color:#174c3c;background:transparent;text-decoration:underline;min-width:48px;padding:4px}tbody th{padding:0}tfoot{font-weight:700;background:#eaf0e5}tfoot small{display:block;font-weight:400}.finish-area{border-top:1px solid #d9dfd5;padding-top:18px;margin-top:20px}.finish-hint{margin:10px 0 0;text-align:center}.result-hero{text-align:center}.winner-star{display:block;font-size:60px;line-height:1.2;color:#966200;margin-bottom:14px}.winner-names{font-size:24px;color:#174c3c;font-weight:700;overflow-wrap:anywhere}.resume{margin-top:20px}.resume p{overflow-wrap:anywhere}.storage-warning{background:#fff0d2;color:#744300;border:1px solid #b28a48;padding:12px;border-radius:12px;font-size:14px}.storage-note{font-size:12px;color:#456052;margin-bottom:18px}.privacy-note{color:#456052;font-size:12px;margin:16px 0 0}.about-app{margin-top:20px}.about-app h2{font-size:23px}.about-app h3{font-size:16px;margin:20px 0 8px}.about-app p{color:#456052;font-size:14px}.about-app p:last-child{margin-bottom:0}@media(max-width:360px){.score-row{gap:8px}.player-info .player-dot{display:none}.player-info strong{font-size:14px}}@media(max-width:430px){.site-header{padding:16px}.header-note{display:none}main{padding-top:20px}.panel{padding:20px 16px}}
