/* End-of-game recap panel (CR req_0Z76fXQ2FwHK): lives inside the scoreboard's game-complete
   modal, so it uses the score-keeper-v2 shell tokens (neutral accent) with plain fallbacks. */
[data-recap-finish]{margin:1rem 0 0;text-align:left}
[data-recap-finish].rc-floating{position:fixed;left:50%;bottom:1rem;transform:translateX(-50%);width:min(520px,calc(100% - 2rem));z-index:1200;margin:0}
.rc-panel{background:var(--bg-secondary,#f6f6f8);color:var(--text-primary,#111);border:1px solid var(--border-color,rgba(0,0,0,.12));border-radius:12px;padding:1rem 1.125rem}
.rc-floating .rc-panel{box-shadow:0 12px 32px rgba(0,0,0,.25)}
.rc-panel-title{margin:0 0 .25rem;font-size:1rem;font-weight:700}
.rc-panel-sub{margin:0 0 .75rem;font-size:.875rem;color:var(--text-secondary,#555);line-height:1.45}
.rc-panel-row{display:flex;gap:.5rem;flex-wrap:wrap}
.rc-input{flex:1 1 200px;min-width:0;padding:.7rem .85rem;font:inherit;font-size:1rem;border:1px solid var(--border-color,rgba(0,0,0,.2));border-radius:8px;background:var(--bg-primary,#fff);color:inherit}
.rc-input:focus{outline:2px solid var(--sv2-accent,#6366f1);outline-offset:1px}
.rc-btn{flex:0 0 auto;padding:.7rem 1.1rem;font:inherit;font-size:.95rem;font-weight:700;border-radius:8px;border:1px solid transparent;cursor:pointer}
.rc-btn-primary{background:var(--sv2-accent,#6366f1);color:#fff}
.rc-btn-primary:hover{filter:brightness(1.08)}
.rc-btn-primary:disabled{opacity:.6;cursor:default}
.rc-panel-hint{margin:.5rem 0 0;font-size:.78rem;color:var(--text-secondary,#666)}
.rc-panel-status{margin:.6rem 0 0;font-size:.875rem;font-weight:600}
.rc-panel-status.is-ok{color:#15803d}
.rc-panel-status.is-error{color:#b91c1c}
.rc-panel-after{margin:.6rem 0 0;font-size:.875rem;line-height:1.45;color:var(--text-secondary,#555)}
.rc-panel-after a{color:var(--sv2-accent,#6366f1);font-weight:600}
.rc-visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
@media (max-width:480px){.rc-btn{flex:1 1 100%}}
