:root{--ink:#10251d;--ink-soft:#52635c;--green:#1f684b;--green-dark:#174d39;--mint:#dceee5;--cream:#f7f5ee;--line:#dbe5df;--orange:#e98745;--danger:#b3261e;--shadow:0 12px 30px #10251d1a}*{box-sizing:border-box}html{background:var(--ink)}body{color:var(--ink);background:linear-gradient(160deg, #e8f3ed 0%, var(--cream) 58%, #f7efe1 100%);min-height:100vh;padding:max(18px, env(safe-area-inset-top)) 14px max(26px, env(safe-area-inset-bottom));margin:0;font-family:ui-rounded,SF Pro Rounded,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}main{width:min(100%,540px);margin:0 auto}a{color:var(--green);font-weight:750}.topbar{align-items:center;gap:14px;padding:2px 4px 6px;font-size:.85rem;display:flex}.topbar a{text-decoration:none}.topbar .spacer{flex:1}.who{color:var(--ink-soft);font-weight:750}.link-button{color:var(--ink-soft);font:inherit;cursor:pointer;background:0 0;border:0;padding:0;font-weight:750}.banner{background:#fff1d9;border-radius:14px;margin:6px 0 4px;padding:11px 14px;font-size:.85rem;font-weight:750}.hero{justify-content:space-between;align-items:end;gap:12px;padding:10px 4px 18px;display:flex}.eyebrow{color:var(--green);letter-spacing:.13em;text-transform:uppercase;font-size:.75rem;font-weight:800}h1{letter-spacing:-.06em;margin:4px 0 0;font-size:clamp(2rem,9vw,3.25rem);line-height:.98}.hero-mark{filter:drop-shadow(0 7px 5px #10251d26);font-size:3.6rem;transform:rotate(-9deg)}.card{box-shadow:var(--shadow);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffffe0;border:1px solid #ffffffe6;border-radius:24px;margin-bottom:14px;padding:18px}.card h2{letter-spacing:-.02em;margin:0 0 13px;font-size:1.03rem}.players{grid-template-columns:1fr 1fr;gap:10px;display:grid}.stack{gap:12px;margin-bottom:14px;display:grid}label{color:var(--ink-soft);gap:6px;font-size:.78rem;font-weight:750;display:grid}input{font:inherit;color:var(--ink)}.name-input,.distance-input,.score-input{border:1.5px solid var(--line);background:#fbfdfb;border-radius:13px;outline:none;transition:border-color .15s,box-shadow .15s}.name-input{width:100%;min-width:0;padding:12px 13px;font-size:1rem;font-weight:750}input:focus{border-color:var(--green);box-shadow:0 0 0 4px #1f684b1f}.grid-row{grid-template-columns:43px 82px repeat(var(--n,2), 1fr);align-items:center;gap:7px;display:grid}.score-head{color:var(--ink-soft);text-transform:uppercase;letter-spacing:.06em;align-items:end;padding:0 7px 8px;font-size:.7rem;font-weight:800}.score-head span:nth-child(n+3){text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.hole{border-top:1px solid var(--line);padding:8px 7px}.hole-number{font-size:1rem;font-weight:850}.distance-input{text-align:center;width:78px;padding:9px 4px;font-size:1rem;font-weight:800}.score-wrap{align-items:center;gap:4px;display:flex}.score-input{text-align:center;width:100%;min-width:0;padding:11px 2px;font-size:1.12rem;font-weight:850}.score-cell{text-align:center;font-size:1.12rem;font-weight:850}.readonly{font-weight:750}.step{background:var(--mint);width:29px;height:35px;color:var(--green-dark);touch-action:manipulation;cursor:pointer;border:0;border-radius:10px;font-size:1.2rem;font-weight:800;line-height:1}.step:active{background:#c8e4d6;transform:scale(.92)}.totals,.stats-grid{grid-template-columns:repeat(var(--n,2), 1fr);gap:10px;margin-top:15px;display:grid}.stats-grid{margin-top:0}.total{background:var(--mint);border-radius:17px;padding:14px}.total.alt,.total:nth-child(2){background:#fff1d9}.total-label{color:var(--ink-soft);text-transform:uppercase;letter-spacing:.05em;font-size:.73rem;font-weight:800;display:block}.total strong{letter-spacing:-.07em;margin-top:3px;font-size:2rem;display:block}.total small{color:var(--ink-soft);font-weight:700}.total dl{grid-template-columns:1fr auto;gap:3px 8px;margin:10px 0 0;font-size:.8rem;display:grid}.total dt{color:var(--ink-soft);font-weight:700}.total dd{text-align:right;margin:0;font-weight:850}.result{text-align:center;padding:16px 8px 2px;font-size:1.13rem;font-weight:850}.actions{grid-template-columns:1fr 1fr;gap:9px;display:grid}.action{font:inherit;text-align:center;cursor:pointer;touch-action:manipulation;border:0;border-radius:14px;padding:13px 10px;font-weight:800;text-decoration:none;display:block}.action.block{width:100%}.action:disabled{opacity:.55;cursor:default}.primary{background:var(--green);color:#fff;box-shadow:0 7px 14px #1f684b33}.secondary{background:var(--mint);color:var(--green-dark)}.tip{color:var(--ink-soft);margin:10px 1px 0;font-size:.8rem;line-height:1.45}.tip.center{text-align:center}.error{color:var(--danger);margin:0 0 12px;font-size:.85rem;font-weight:750}.parties{margin:0;padding:0;list-style:none}.parties li{border-top:1px solid var(--line)}.parties li:first-child{border-top:0}.parties a{color:var(--ink);gap:2px;padding:11px 2px;text-decoration:none;display:grid}.partie-date{font-weight:850}.partie-lieu,.partie-scores{color:var(--ink-soft);font-size:.85rem;font-weight:700}@media (max-width:380px){body{padding-left:10px;padding-right:10px}.card{border-radius:20px;padding:14px}.grid-row{grid-template-columns:36px 70px repeat(var(--n,2), 1fr);gap:4px}.score-head,.hole{padding-left:3px;padding-right:3px}.distance-input{width:66px}.step{width:25px}}
