/* Scoped enhancements; the existing Club theme is retained. */
#programme-intake .form-section:not([hidden]){animation:club-step-in .22s ease-out}
.setup-progress{border:1px solid currentColor;border-radius:16px;padding:16px;margin-block:16px}
.setup-progress ol{list-style:none;padding:0;margin:0;display:grid;gap:10px}
.setup-progress li{display:flex;align-items:center;gap:10px;opacity:.55}
.setup-progress li::before{content:"";width:14px;height:14px;border:2px solid currentColor;border-radius:50%;flex-shrink:0}
.setup-progress li[data-state=working]{opacity:1}
.setup-progress li[data-state=working]::before{border-right-color:transparent;animation:club-setup-spin .8s linear infinite}
.setup-progress li[data-state=done]{opacity:1}
.setup-progress li[data-state=done]::before{content:"✓";border:0;font-weight:bold}
.setup-progress li[data-state=failed]{opacity:1}
.setup-progress li[data-state=failed]::before{content:"!";text-align:center;line-height:14px}
@keyframes club-step-in{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
@keyframes club-setup-spin{to{transform:rotate(360deg)}}
@media(prefers-reduced-motion:reduce){#programme-intake .form-section,.setup-progress li::before{animation:none!important}}

.dog-chooser{display:flex;align-items:center;gap:8px;flex-wrap:wrap;justify-content:flex-end}.dog-chooser input{width:220px;max-width:100%}.dog-chooser select{max-width:300px}.dog-chooser small{font-size:.8rem}
