.scorer-shell{max-width:760px;margin:0 auto;padding:42px 18px 80px}.scorer-card{background:#fff;color:#111827;border-radius:24px;padding:28px;box-shadow:0 18px 60px rgba(0,0,0,.22)}.scorer-card.centered{text-align:center}.scorer-card h1{margin:4px 0 22px}.scorer-kicker{font:700 12px/1.2 'JetBrains Mono',monospace;letter-spacing:.12em;color:#8a6a00}.setup-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:20px}.setup-grid label span{display:block;font-weight:700;font-size:13px;margin-bottom:7px}.setup-grid input,.setup-grid select{width:100%;padding:13px 14px;border:1px solid #d7dbe2;border-radius:12px;font:600 15px 'Work Sans',sans-serif;background:#fff}.score-topline,.match-teams,.score-meta{display:flex;align-items:center;justify-content:space-between;gap:14px}.innings-label{font-weight:800;margin-top:6px}.mini-btn{border:1px solid #d9dde5;border-radius:10px;padding:9px 12px;background:#fff;font-weight:800;cursor:pointer}.danger-outline{color:#b42318;border-color:#f1b7b2}.match-teams{margin-top:28px;align-items:flex-end}.batting-name{font:400 34px/1 'Anton',sans-serif;text-transform:uppercase}.versus{color:#667085;font-weight:700}.big-score{font:400 92px/.95 'Anton',sans-serif;margin:24px 0 14px;letter-spacing:.01em}.big-score .slash{opacity:.45;margin:0 6px}.score-meta{justify-content:flex-start;flex-wrap:wrap;color:#475467;font-size:14px;border-bottom:1px solid #eaecf0;padding-bottom:20px}.chase-info{margin:18px 0 0;padding:13px 15px;border-radius:12px;background:#fff7d6;font-weight:800}.save-state{min-height:22px;margin:12px 0;font-size:12px;color:#667085;font-family:'JetBrains Mono',monospace}.run-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:10px;margin-top:18px}.score-btn,.action-btn,.utility-btn{border:0;cursor:pointer;font-family:'Work Sans',sans-serif;font-weight:900;transition:transform .08s ease,opacity .2s ease}.score-btn:active,.action-btn:active,.utility-btn:active{transform:scale(.97)}.score-btn:disabled,.action-btn:disabled,.utility-btn:disabled{opacity:.5;cursor:not-allowed}.score-btn{min-height:72px;border-radius:16px;background:#111827;color:#fff;font-size:24px}.score-btn.dot{background:#475467}.score-btn.boundary{background:#d8a700;color:#111}.extra-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:10px}.action-btn{min-height:54px;border-radius:14px;background:#e9edf3;color:#111827;font-size:14px}.action-btn.wicket{background:#b42318;color:#fff}.utility-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:10px;margin-top:10px}.utility-btn{min-height:50px;border-radius:14px;background:#f2f4f7;color:#344054;font-size:13px}.utility-btn.primary{background:#111827;color:#fff}.scorer-note{margin:18px 0 0;color:#667085;font-size:12px;line-height:1.6}.ph-live-score{max-width:1050px;margin:0 auto;border-radius:22px;overflow:hidden;background:#0d1720;color:#fff;border:1px solid rgba(255,255,255,.08)}.ph-live-inner{padding:24px}.ph-live-head{display:flex;justify-content:space-between;align-items:center;gap:14px;margin-bottom:18px}.ph-live-pill{display:inline-flex;align-items:center;gap:7px;font:700 11px 'JetBrains Mono',monospace;letter-spacing:.12em;color:#ffd23f}.ph-live-dot{width:8px;height:8px;border-radius:50%;background:#ff4d4f;box-shadow:0 0 0 5px rgba(255,77,79,.13)}.ph-live-innings{font-size:12px;color:rgba(255,255,255,.58)}.ph-live-team{font:400 28px/1 'Anton',sans-serif;text-transform:uppercase}.ph-live-scoreline{font:400 56px/1 'Anton',sans-serif;margin:12px 0 8px}.ph-live-sub{display:flex;gap:16px;flex-wrap:wrap;color:rgba(255,255,255,.68);font-size:13px}.ph-live-chase{margin-top:14px;color:#ffd23f;font-weight:800}.ph-live-hidden{display:none!important}@media(max-width:680px){.scorer-card{padding:20px;border-radius:18px}.setup-grid{grid-template-columns:1fr}.run-grid{grid-template-columns:repeat(3,1fr)}.extra-grid{grid-template-columns:1fr 1fr 1fr}.utility-grid{grid-template-columns:1fr}.big-score{font-size:76px}.batting-name{font-size:28px}}
/* Scorer-only controls; public score/banner styling is unchanged. */
.scorer-shell [hidden]{display:none!important}
.scorer-shell .control-label{font:800 14px/1.4 'Work Sans',sans-serif;margin:22px 0 10px;color:#344054}
.scorer-shell .delivery-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.scorer-shell .action-btn{min-height:58px;padding:12px}
.scorer-shell [aria-pressed="true"]{outline:3px solid #006b50;outline-offset:2px;box-shadow:0 0 0 5px #c7f0df}
.scorer-shell button:focus-visible{outline:3px solid #005fcc;outline-offset:3px}
.scorer-shell button:disabled{opacity:.45;cursor:not-allowed}
.scorer-shell .pending-delivery{background:#f0f8f4;border:2px solid #bad8c7;border-radius:16px;padding:16px;margin:22px 0}
.scorer-shell .pending-delivery .control-label{margin-top:0}
.scorer-shell #deliveryPreview{white-space:pre-line;font:800 17px/1.7 'Work Sans',sans-serif;min-height:88px}
.scorer-shell .confirm-grid{display:grid;grid-template-columns:1fr 2fr;gap:10px;margin-top:16px}
.scorer-shell .confirm-btn{background:#006b50;color:#fff;font-size:17px;min-height:68px}
.scorer-shell .save-state{font-size:13px;line-height:1.6;overflow-wrap:anywhere}
.scorer-shell [role="alert"]{color:#a11913;font-weight:700}
.scorer-shell .batting-name,.scorer-shell .versus{overflow-wrap:anywhere;min-width:0}
.scorer-shell #setupMessage{margin:12px 0;font-size:14px;line-height:1.6}
.scorer-shell #backToMatchBtn,.scorer-shell #setupRecoveryBtn{margin-bottom:12px;padding:12px}
@media(max-width:420px){.scorer-shell .delivery-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.scorer-shell .confirm-grid{grid-template-columns:1fr}.scorer-shell .match-teams{align-items:flex-start;flex-direction:column}}
.live-match-banner{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  width:100%;
  padding:11px 16px;
  background:#c62828;
  color:#fff;
  text-decoration:none;
  font-weight:800;
  letter-spacing:.03em;
  font-size:14px;
  position:relative;
  z-index:20;
}

.live-match-banner[hidden]{
  display:none !important;
}

.live-match-dot{
  width:9px;
  height:9px;
  border-radius:50%;
  background:#fff;
  box-shadow:0 0 0 4px rgba(255,255,255,.18);
}
