/* The accepted scoreboard keeps its exact dimensions; follow controls remain exposed. */
.accepted-hero[data-goal-phase]{isolation:isolate}
.accepted-hero[data-goal-phase]>.hero-league,.accepted-hero[data-goal-phase]>.hero-status,.accepted-hero[data-goal-phase]>.accepted-score,.accepted-hero[data-goal-phase]>.accepted-team>img,.accepted-hero[data-goal-phase]>.accepted-team>h1{opacity:0}
.goal-stage{position:absolute;inset:0 1px 41px;border-radius:11px 11px 0 0;overflow:hidden;pointer-events:none;display:flex;justify-content:center;align-items:center;gap:15px;background:radial-gradient(ellipse at 40% 110%,#08757c50,transparent 65%),var(--surface);z-index:2}
.goal-copy{position:relative;display:flex;flex-direction:column;gap:1px;min-width:0;max-width:65%;padding:9px 12px 6px 0;z-index:2}
.goal-kicker{font:800 8px/12px var(--font-ui);letter-spacing:1.5px;color:var(--aqua)}
.goal-title{font:700 39px/39px var(--font-display);letter-spacing:1px;color:var(--aqua)}
.goal-team{font:800 14px/18px var(--font-ui);color:var(--ink);overflow-wrap:anywhere}
.goal-scoreline{font:600 10px/16px var(--font-ui);color:var(--muted);display:block;overflow-wrap:anywhere}
.goal-scoreline b{color:var(--ink);padding:0 5px;font-size:13px;white-space:nowrap}
.goal-hubie{height:108px;width:125px;object-fit:contain;align-self:flex-end;transform-origin:55% 100%;z-index:2;flex-shrink:0}
.goal-wave{position:absolute;inset:0;background:url('assets/matchday-wave.svg') center/90% 180% no-repeat;opacity:.2}
.goal-review-symbol{width:64px;height:64px;display:grid;place-items:center;flex-shrink:0;border:1px solid var(--return-accent);border-radius:16px;color:var(--return-accent);font:800 20px var(--font-ui);background:#ffce580d}
[data-goal-phase="review"] .goal-title,[data-goal-phase="review"] .goal-kicker{color:var(--return-accent)}
[data-goal-phase="disallow"] .goal-title,[data-goal-phase="disallow"] .goal-kicker,[data-goal-phase="disallow"] .goal-review-symbol{color:var(--negative);border-color:var(--negative)}
.goal-fresh .goal-hubie{animation:hubie-goal 3.2s both;animation-delay:var(--goal-elapsed,0ms)}
.goal-fresh .goal-copy{animation:goal-copy 3.2s both;animation-delay:var(--goal-elapsed,0ms)}
.goal-fresh .goal-wave{animation:goal-wave 3.2s both;animation-delay:var(--goal-elapsed,0ms)}
[data-goal-phase="review"] .goal-copy,[data-goal-phase="review"] .goal-wave{animation:none}
/* Keep list updates in the status row's flow, including the phone's static header. */
[data-goal-phase]>.fixture-time>:not(.goal-inline),[data-goal-phase]>.live-fixture-status>:not(.goal-inline){display:none}
.goal-inline{display:flex;flex-direction:column;justify-content:center;align-items:flex-start;gap:3px;min-width:0;max-width:100%;color:var(--aqua);font-size:10px;pointer-events:none}
.goal-inline strong{font:800 10px/16px var(--font-ui);letter-spacing:.4px;border-radius:5px;background:#24e4eb15;padding:3px 5px;max-width:100%;overflow-wrap:anywhere}
.goal-inline small{font-size:9px;color:var(--muted);max-width:100%;overflow-wrap:anywhere}
[data-goal-phase="review"] .goal-inline{color:var(--return-accent)}
[data-goal-phase="disallow"] .goal-inline{color:var(--negative)}
.live-fixture[data-goal-phase="goal"],.fixture[data-goal-phase="goal"]{animation:goal-row 3.2s both;animation-delay:var(--goal-elapsed,0ms)}
.goal-demo-form{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:12px 0}
.goal-demo-form label{display:flex;flex-direction:column;gap:5px;font-size:11px;color:var(--muted)}
.goal-demo-actions{display:flex;flex-wrap:wrap;gap:8px}.goal-demo-actions .button{font-size:12px}
.goal-demo-status{color:var(--return-accent);font-size:12px;margin-top:10px!important}
@media(max-width:650px){.goal-inline{flex-direction:row;align-items:center;gap:8px}.goal-inline strong{flex-shrink:0;white-space:nowrap}.goal-inline small{min-width:0}}
@keyframes hubie-goal{0%,7%{opacity:0;transform:translateY(100%) rotate(-8deg)}23%{opacity:1;transform:translateY(0) rotate(-5deg)}42%{transform:translateY(-3px) rotate(3deg)}60%,82%{opacity:1;transform:translateY(0) rotate(0)}100%{opacity:0;transform:translateY(100%) rotate(5deg)}}
@keyframes goal-copy{0%{opacity:0;transform:translateY(6px)}12%,85%{opacity:1;transform:translateY(0)}100%{opacity:0;transform:translateY(-4px)}}
@keyframes goal-wave{0%{opacity:0;transform:translateX(-25%)}25%,70%{opacity:.35}100%{opacity:0;transform:translateX(30%)}}
@keyframes goal-row{0%,20%{box-shadow:inset 3px 0 var(--aqua),inset 0 0 35px #24e4eb19}85%,100%{box-shadow:inset 3px 0 transparent,inset 0 0 35px transparent}}
@media(max-width:650px){.goal-stage{gap:5px;inset:0 1px 42px}.goal-hubie{width:119px;height:138px}.goal-copy{max-width:calc(100% - 124px);padding-right:8px}.goal-kicker{font-size:7px;letter-spacing:.7px}.goal-title{font-size:35px;line-height:37px}.goal-team{font-size:12px;line-height:16px}.goal-scoreline{font-size:9px;line-height:15px}.goal-scoreline b{font-size:12px}.goal-review-symbol{width:54px;height:54px}.goal-demo-form{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){.goal-fresh .goal-hubie,.goal-fresh .goal-copy,.goal-fresh .goal-wave,.live-fixture[data-goal-phase],.fixture[data-goal-phase]{animation:none;transform:none}.goal-hubie{display:none}.goal-stage .goal-copy{max-width:90%;text-align:center}.goal-wave{display:none}}
