.activity-break{border:0;border-radius:24px;padding:0;width:min(92vw,560px);max-height:90dvh;overflow:auto;background:#f7f6f0;color:#111213;box-shadow:0 24px 80px #0004}
.activity-break::backdrop{background:#111213b8}
.activity-break-card{padding:clamp(24px,5vw,44px);text-align:center}
.activity-break h2{font:750 clamp(25px,5vw,36px)/1.2 Manrope,sans-serif;margin:0 0 20px}
.activity-break p{font:400 17px/1.65 Manrope,sans-serif;margin:14px 0}
.activity-break output{display:block;font:750 80px/1.2 Manrope,sans-serif;font-variant-numeric:tabular-nums;margin:20px 0}
.activity-break button{display:block;width:100%;min-height:52px;border:0;border-radius:28px;background:#ffdb37;color:#111213;font:700 18px Manrope,sans-serif;padding:14px;cursor:pointer}
.activity-break button:disabled{opacity:.5;cursor:default}
.activity-break a{display:inline-block;min-height:44px;padding:14px 0;color:inherit;text-underline-offset:4px}
.activity-break button.ready{animation:break-breathe 2.8s ease-in-out infinite}
.activity-break-open :is([data-exercise],[data-color-room],.cam-stage,#game-board,.crew-game) *{animation-play-state:paused!important}
.activity-break-open .activity-break button.ready{animation-play-state:running!important}
@keyframes break-breathe{50%{transform:scale(1.025)}}
@media(prefers-reduced-motion:reduce){.activity-break button.ready{animation:none}}
