/* Constant space: no geometry change when a reading checkpoint appears. */
.continue-slot{min-height:64px;padding-top:18px;box-sizing:border-box}
.stage-continue{display:inline-flex;align-items:center;justify-content:center;gap:16px;min-height:44px;max-width:100%;padding:10px 18px;border:1px solid var(--cyan);background:var(--cyan);color:var(--dark);font:700 14px/1.2 var(--sans);cursor:pointer;animation:continue-pulse 1.8s ease-in-out infinite;transform-origin:left center;box-shadow:0 0 0 0 rgba(78,195,224,.25)}
.stage-continue[hidden]{display:none}
.stage-continue:hover{background:#80d7eb}
.stage-continue>span:last-child{font-size:22px}
@keyframes continue-pulse{50%{box-shadow:0 0 0 7px rgba(78,195,224,0);transform:scale(1.025)}}
@media(max-width:760px){
 .continue-slot{display:none}
 .mode-score .scorebar{padding-top:54px}
 .scorebar>.stage-continue{position:absolute;top:0;left:50%;transform:translateX(-50%);transform-origin:center;font-size:12px;min-height:42px;padding:9px 14px;gap:10px;white-space:nowrap;animation-name:continue-pulse-mobile}
}
@keyframes continue-pulse-mobile{50%{box-shadow:0 0 0 7px rgba(78,195,224,0);transform:translateX(-50%) scale(1.025)}}
@media(prefers-reduced-motion:reduce){.stage-continue{animation:none}}

/* On small screens the reading action takes Play's place, preserving board space. */
@media(max-width:760px){
 .mode-score .scorebar{padding-top:0}
 .timeline-controls[data-reading] .transport-play{display:none}
 .mode-score .timeline-controls[data-reading]{grid-column:1/-1;justify-content:flex-end}
 .scorebar:has(.timeline-controls[data-reading]) .sb-now{visibility:hidden}
 .timeline-controls>.stage-continue{position:static;transform:none;animation-name:continue-pulse;order:0;min-width:145px;max-width:190px;font-size:12px;padding:8px 12px;gap:7px;min-height:44px}
 .timeline-controls>[data-timeline="previous"]{order:-1}
 .timeline-controls>[data-timeline="next"]{order:1}
 .timeline-controls>[data-timeline="restart"]{order:2}
}
/* Approval badges finish appearing before the reading checkpoint. */
.st-revise .gate{--a:clamp(0,calc((var(--l) - .68)*7.2),1)}
.st-draft .gate{--a:clamp(0,calc((var(--l) - .66)*6.4),1)}
.topic-stage .topics{--s:clamp(0,calc((var(--l) - .70)*9),1)}
@media(max-width:760px){.mode-score .sb-now{min-width:0;overflow:hidden}.mode-score .sb-name{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}}
