.practice-button{width:100%;display:block;text-align:left;background:#d8f5ec;border:2.5px solid var(--ink);border-radius:15px;box-shadow:0 4px 0 var(--ink);padding:12px 19px;margin-top:15px}.practice-button b{display:flex;justify-content:space-between;font-size:18px}.practice-button small{display:block;font-size:10px;line-height:1.6;margin-top:4px;color:#5f6571}
.challenge-total{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:6px;margin:14px 2px 0;font-size:11px}.challenge-total b{color:#c47712}.challenge-total small{width:100%;font-size:9px;color:#82758c}
.clock-wrap{display:flex;align-items:center;gap:6px;white-space:nowrap}.clock-wrap>small{font-size:9px;color:#82758c}.clock-wrap .clock{font-variant-numeric:tabular-nums}
.timed-game .clock{font-size:20px;font-weight:900;min-width:77px;padding:6px 9px;text-align:center}.timed-game .clock-wrap>small{font-weight:800}
.run-strip{border:2px solid var(--ink);border-radius:11px;padding:9px 10px;margin:-2px 0 13px;font-size:11px;background:#f0edff}.run-heading{display:flex;align-items:center;justify-content:space-between;gap:8px}.run-heading>b{font-size:12px}.run-heading>span{font-size:10px;color:#6d6380;white-space:nowrap}.time-track{height:7px;background:#d8d5e6;border-radius:10px;overflow:hidden;margin:8px 0}.time-track>i{display:block;height:100%;background:var(--blue);border-radius:10px;transition:width .2s linear}
.run-goals{display:flex;flex-wrap:wrap;gap:5px 9px;align-items:center;font-size:10px}.run-goals>span:before{content:'○';margin-right:3px;color:#40947c}.run-goals>span.goal-used{color:#9b7c86}.run-goals>span.goal-used:before{content:'—';color:#a88992}.run-goals>small{font-size:8px;color:#8e7f95;margin-left:auto}
.practice-strip{background:#e8f7f0;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:4px}.practice-strip>span{font-weight:800}.practice-strip>small{font-size:9px;color:#668174}
.run-end-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-top:10px}.run-end-actions>button{font-size:10px;background:white;border:1.5px solid var(--ink);border-radius:7px;padding:7px 9px;box-shadow:0 2px 0 var(--ink)}.run-end-actions .star-rating{font-size:20px;margin-left:auto}
.challenge-strip[data-status="failed"]{background:#fff0ed}.challenge-strip[data-status="failed"] .run-heading>b{color:#b34c68}.challenge-strip[data-status="won"]{background:#fff7d8}
.challenge-low .clock{color:#a76a16;background:#fff1c5}.challenge-low .time-track>i{background:#dda72e}.challenge-critical .clock{color:#c7486a;background:#ffe7ed;animation:timer-urgent 1.1s ease-in-out infinite}.challenge-critical .time-track>i{background:#e36c92}
.picker-modes{display:flex;gap:8px;margin-top:18px}.picker-modes>button{flex:1;background:#fff8ef;border:2px solid var(--ink);border-radius:10px;padding:10px 5px;font-size:12px;font-weight:800}.picker-modes>button.selected{background:var(--ink);color:white}
.level-picker>button>b{display:block;font-size:15px}.level-picker>button>small{display:block;font-size:10px;line-height:1.5;margin-top:5px;color:#756e84}.level-picker .star-rating{display:block;font-size:15px;margin-top:5px}
.star-rating{display:inline-flex;gap:3px;line-height:1.2;font-size:32px;white-space:nowrap;vertical-align:middle}.star-rating>span{color:#d9d3df;-webkit-text-stroke:1px var(--ink)}.star-rating>span.earned{color:#f9ce55}.level-picker .star-rating>span{-webkit-text-stroke:.5px var(--ink)}
.challenge-goal-list{list-style:none;max-width:235px;margin:13px auto;padding:0;text-align:left;font-size:12px;line-height:1.8}.challenge-goal-list .achieved{color:#348973}.challenge-goal-list .missed{color:#9c8c98}.win-view .record-line{font-size:11px;line-height:1.8;color:#807088}.challenge-win .mascot,.timeout-view .mascot{width:190px;height:185px}.challenge-win h2,.timeout-view h2{font-size:29px}.text-button{display:inline-block;box-shadow:none!important;background:transparent;border:0;padding:10px;color:#7d7089;text-decoration:underline;font-size:12px}.timeout-view .text-button,.challenge-win .text-button{display:block;margin:auto}.timeout-view .pill{display:block;margin:12px auto;max-width:260px}
.cell:disabled{opacity:1}.challenge-strip[data-status="failed"] .time-track{opacity:.6}
@keyframes timer-urgent{0%,100%{box-shadow:0 0 0 0 #e56b9400}50%{box-shadow:0 0 0 4px #e56b9425}}
@media(max-width:600px){.practice-button{padding:11px 16px;margin-top:14px}.practice-button b{font-size:17px}.run-strip{padding:8px;margin-bottom:10px}.run-goals{font-size:9px;gap:5px 8px}.run-goals>small{font-size:8px}.clock-wrap{gap:4px}.run-heading>b{font-size:11px}.challenge-win h2,.timeout-view h2{font-size:25px}.challenge-win .mascot,.timeout-view .mascot{width:170px;height:165px}.challenge-total{font-size:10px}}
