/* Touch-first scoring */
.scoring-toolbar{display:grid;gap:20px;margin-bottom:20px}.scoring-mode{display:grid;grid-template-columns:1fr 1fr;background:var(--c-soft);border-radius:16px;padding:4px;max-width:430px}.scoring-mode button{background:transparent;color:var(--muted)}.scoring-mode button.active{background:var(--c-panel);color:var(--green);box-shadow:0 1px 5px #00000012}.scoring-settings,.scoring-session-fields{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.scoring-session-fields{grid-template-columns:repeat(4,minmax(0,1fr));margin:20px 0}.scoring-live-grid{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(240px,.7fr);gap:20px;margin-bottom:20px}.scoring-target-card,.scoring-help,.scoring-quick,.scoring-history,.scoring-session{margin-bottom:20px}.scoring-target-wrap{display:grid;justify-items:center;gap:18px}.scoring-target{position:relative;width:min(100%,520px);aspect-ratio:1;border-radius:50%;touch-action:none;user-select:none;-webkit-user-select:none;filter:drop-shadow(0 8px 18px #10273718)}.scoring-target>svg{display:block;width:100%;height:100%}.scoring-arrow{position:absolute;transform:translate(-50%,-50%);display:grid;place-items:center;width:34px!important;height:34px!important;min-height:34px!important;padding:0!important;border:3px solid white!important;border-radius:50%!important;background:#24282d!important;color:white!important;font-size:12px!important;font-weight:800!important;box-shadow:0 2px 8px #0008;touch-action:none;z-index:3}.arrow-source{display:flex;align-items:center;justify-content:center;gap:9px;min-width:150px;background:color-mix(in srgb,var(--green) 12%,var(--c-panel))!important;color:var(--green)!important;touch-action:none}.arrow-source span{display:grid;place-items:center;width:25px;height:25px;border-radius:50%;background:var(--green);color:var(--c-buttonText);font-size:18px}.scoring-drag-ghost{position:fixed;transform:translate(-50%,-50%);display:grid;place-items:center;width:38px;height:38px;border:3px solid white;border-radius:50%;background:#24282d;color:white;font-size:13px;font-weight:800;box-shadow:0 5px 18px #0008;pointer-events:none;z-index:9999}.scoring-current-arrows{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;margin:18px 0}.scoring-current-arrows button{min-height:38px;padding:7px 11px;background:var(--c-soft);color:var(--ink)}.scoring-current-arrows button span{color:#d70015}.score-keypad{display:grid;grid-template-columns:repeat(6,minmax(42px,1fr));gap:7px;max-width:520px;margin:0 auto 18px}.score-keypad button{padding:7px;min-height:42px;background:var(--c-soft)}.scoring-actions{justify-content:center}.scoring-help{display:flex;flex-direction:column;align-self:start;position:sticky;top:20px}.scoring-end-total{display:flex;justify-content:space-between;align-items:end;margin-top:28px;padding-top:20px;border-top:1px solid var(--line)}.scoring-end-total strong{font-size:46px;color:var(--green);letter-spacing:-2px}.scoring-quick form{grid-template-columns:1fr 1fr auto;align-items:end}.scoring-quick form .actions{align-self:end}.scoring-ends-table button{min-height:36px;padding:6px 10px;color:#d70015;background:transparent}.scoring-save-actions{margin-top:8px}.scoring-session>p:first-of-type{margin-top:3px}
/* A compact visible marker with a forgiving 44px touch area. */
.scoring-arrow{width:44px!important;height:44px!important;min-height:44px!important;padding:0!important;border:0!important;background:transparent!important;box-shadow:none!important}.scoring-arrow>span{display:block;width:6px;height:6px;border:1px solid white;border-radius:50%;background:#181b1f;color:transparent;font-size:0;box-shadow:0 1px 3px #000a;pointer-events:none}.scoring-drag-ghost{width:26px;height:26px;border-width:2px;font-size:10px;box-shadow:0 4px 12px #0007}.scoring-drag-ghost.outside{background:#6f7880;color:#fff}
body.scoring-active{touch-action:pan-x pan-y}.scoring-drag-ghost{width:44px;height:44px;border:0;background:transparent;box-shadow:none;font-size:initial}.scoring-drag-dot{display:block;width:6px;height:6px;border:1px solid white;border-radius:50%;background:#181b1f;box-shadow:0 1px 3px #000a}.scoring-drag-value{position:absolute;left:50%;bottom:calc(50% + 9px);transform:translateX(-50%);display:grid;place-items:center;min-width:28px;height:28px;padding:0 6px;border:2px solid white;border-radius:99px;background:#24282d;color:white;font-size:11px;font-weight:800;line-height:1;box-shadow:0 4px 12px #0007}.scoring-drag-ghost.outside{background:transparent;color:inherit}.scoring-drag-ghost.outside .scoring-drag-value{background:#6f7880}
@media(max-width:900px){.scoring-live-grid{grid-template-columns:1fr}.scoring-help{position:static}.scoring-session-fields{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.scoring-toolbar{padding:16px!important}.scoring-settings{grid-template-columns:1fr 1fr}.scoring-settings label:first-child{grid-column:1/-1}.scoring-stats{grid-template-columns:1fr 1fr!important}.scoring-target-card{padding:16px!important}.scoring-target{width:min(100%,calc(100vw - 64px))}.score-keypad{grid-template-columns:repeat(4,minmax(42px,1fr))}.scoring-quick form{grid-template-columns:1fr}.scoring-quick form .actions{grid-column:1}.scoring-session-fields{grid-template-columns:1fr}.scoring-save-actions{display:grid;grid-template-columns:1fr}.scoring-save-actions button{width:100%}.scoring-history .card-head{align-items:flex-start}.scoring-end-total strong{font-size:38px}}
@media(prefers-reduced-motion:reduce){.scoring-drag-ghost{transition:none}}


.scoring-target.scoring-three-spot{display:grid;gap:14px;width:min(100%,200px);aspect-ratio:auto;border-radius:0;filter:none}
.scoring-spot{position:relative;aspect-ratio:1;touch-action:none}
.scoring-spot>svg{display:block;width:100%;height:100%}
.scoring-spot-number{position:absolute;left:-24px;top:50%;transform:translateY(-50%);font-size:12px;color:var(--muted);pointer-events:none}
.group-three-spot{display:grid;gap:16px;max-width:220px;margin:0 auto}
.group-three-spot h4{text-align:center;color:var(--muted);font-size:12px;margin:0 0 6px}
.group-three-spot .group-target{width:100%;max-width:100%}
@media(max-width:700px){.scoring-target.scoring-three-spot{width:min(100%,150px);gap:12px}}

/* Keep round/layout controls aligned and make mobile number fields a matched pair. */
body .scoring-settings{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:16px}
body .scoring-settings>label{display:flex;flex-direction:column;align-items:stretch;justify-content:flex-start;min-width:0;gap:8px;margin:0}
body .scoring-settings input,body .scoring-settings select{display:block;box-sizing:border-box;width:100%;min-width:0;max-width:100%;height:48px;margin:0}
body .scoring-settings .hint{font-size:12px;line-height:1.4;margin:0}
@media(max-width:700px){body .scoring-mode{width:100%;max-width:none;box-sizing:border-box}body .scoring-settings{gap:16px 12px}body .scoring-settings>label:nth-child(-n+2){grid-column:1/-1}body .scoring-settings>label:nth-child(n+3){grid-column:auto}body .scoring-settings input,body .scoring-settings select{font-size:16px}}
