.game-shell:has(.rhyme-time-game){grid-template-columns:minmax(0,1fr);gap:12px}
.game-shell:has(.rhyme-time-game) .game-status{flex-direction:row;align-items:center;justify-content:space-between;gap:18px;padding:10px 14px}
.game-shell:has(.rhyme-time-game) .game-status strong{max-width:68%}
.game-shell:has(.rhyme-time-game) .game-tools{flex-direction:row;padding:0}
.game-shell:has(.rhyme-time-game) .game-tools button{flex:1;padding:12px 8px;text-align:center}
.rhyme-time-game{width:min(100%,1050px);display:grid;gap:7px;color:#f5e4ba}
.rhyme-time-title{margin:0;color:#f5e4ba;font:italic 900 clamp(2.2rem,5vw,3.9rem)/.86 "Barlow Condensed",sans-serif;letter-spacing:.075em;text-align:center;text-transform:uppercase;text-shadow:0 0 22px #39ddff3d}
.rhyme-time-title::first-letter{color:var(--lime)}
.rhyme-time-subtitle{margin:0;color:#39ddff;font:800 .59rem "Barlow Condensed",sans-serif;letter-spacing:.28em;text-align:center;text-transform:uppercase}
.rhyme-time-stage{position:relative;overflow:hidden;display:grid;grid-template-columns:170px minmax(230px,1fr) 170px;grid-template-areas:"summary clock actions" "choices choices choices" "label label label" "beats beats beats" "prompt prompt prompt";align-items:center;gap:11px;padding:15px;border:1px solid #39ddff;border-radius:9px;background-color:#061626;background-image:linear-gradient(#0d3b5b2c 1px,transparent 1px),linear-gradient(90deg,#0d3b5b2c 1px,transparent 1px),radial-gradient(circle at 50% 32%,#123c57,#061626 61%);background-size:29px 29px,29px 29px,auto;box-shadow:inset 0 0 38px #020b13,0 0 20px #39ddff14}
.rhyme-time-stage::before,.rhyme-time-stage::after{content:"";position:absolute;top:34%;width:27%;height:90px;border-block:1px solid #8e7643;background:repeating-linear-gradient(90deg,transparent 0 14px,#39ddff2b 14px 16px);opacity:.7;transform:skewX(-24deg);pointer-events:none}
.rhyme-time-stage::before{left:-8%}
.rhyme-time-stage::after{right:-8%;transform:scaleX(-1) skewX(-24deg)}
.rhyme-time-summary{grid-area:summary;position:relative;z-index:2;display:grid;border:1px solid #176582;border-radius:6px;background:#04111fdd}
.rhyme-time-summary span{display:grid;grid-template-columns:1fr auto;align-items:center;gap:8px;padding:8px 10px}
.rhyme-time-summary span+span{border-top:1px solid #176582}
.rhyme-time-summary small{color:#39ddff;font:800 .51rem "Barlow Condensed",sans-serif;letter-spacing:.13em;text-transform:uppercase}
.rhyme-time-summary strong{color:#f5e4ba;font:900 1rem "Barlow Condensed",sans-serif;letter-spacing:.04em}
.rhyme-time-summary span:nth-child(3) strong{color:var(--lime)}
.rhyme-time-summary span:nth-child(4) strong{color:var(--coral);letter-spacing:.06em}
.rhyme-time-clock{grid-area:clock;--time-ratio:1;position:relative;z-index:2;width:238px;aspect-ratio:1;margin:auto;display:grid;place-content:center;gap:7px;border-radius:50%;background:radial-gradient(circle,#071828 53%,transparent 54%),conic-gradient(from -90deg,#39ddff calc(var(--time-ratio)*1turn),#17334a 0);box-shadow:0 0 0 5px #071828,0 0 0 7px #b69a5b,0 0 0 13px #071828,0 0 0 14px #39ddff66,0 0 31px #39ddff4d;text-align:center}
.rhyme-time-clock::before{content:"";position:absolute;inset:39px;border:1px solid #39ddff66;border-radius:50%;box-shadow:inset 0 0 25px #39ddff18}
.rhyme-time-ticks{position:absolute;inset:0;border-radius:50%;pointer-events:none}
.rhyme-time-ticks i{position:absolute;left:calc(50% - 1px);top:calc(50% - 5px);width:2px;height:10px;border-radius:2px;background:#39ddff;box-shadow:0 0 5px #39ddff;transform:rotate(calc(var(--tick)*15deg)) translateY(-105px)}
.rhyme-time-ticks i:nth-child(6n+1){height:16px;top:calc(50% - 8px);background:var(--lime);box-shadow:0 0 7px var(--lime)}
.rhyme-time-clock-label{position:relative;z-index:2;color:#39ddff;font:800 .52rem "Barlow Condensed",sans-serif;letter-spacing:.17em;text-transform:uppercase}
.rhyme-time-word{position:relative;z-index:2;max-width:190px;overflow-wrap:anywhere;padding:10px 20px;border:2px solid #b69a5b;border-radius:8px;background:#f5e4ba;color:#071828;font:900 clamp(2rem,4vw,3.25rem)/.95 "Barlow Condensed",sans-serif;letter-spacing:.06em;text-transform:uppercase;box-shadow:inset 0 0 0 3px #dccb9e,0 4px 0 #7a6235,0 0 22px #f5e4ba2e}
.rhyme-time-clock-instruction{position:relative;z-index:2;color:#f5e4ba;font:800 .55rem "Barlow Condensed",sans-serif;letter-spacing:.12em;text-transform:uppercase}
.rhyme-time-choices{grid-area:choices;position:relative;z-index:3;display:grid;grid-template-columns:repeat(4,1fr);gap:9px}
.rhyme-time-choice{min-height:67px;display:grid;grid-template-columns:33px 1fr 58px;align-items:center;gap:7px;padding:8px 11px;border:2px solid #b69a5b;border-radius:7px;background:#f5e4ba;color:#071828;box-shadow:inset 0 0 0 3px #dccb9e,0 4px 0 #6f592f,0 0 12px #f5e4ba1c;cursor:pointer;transition:transform .14s,border-color .14s,box-shadow .14s,opacity .14s}
.rhyme-time-choice:hover:not(:disabled),.rhyme-time-choice:focus-visible{transform:translateY(-2px);border-color:#39ddff;outline:2px solid #39ddff;outline-offset:2px;box-shadow:inset 0 0 0 3px #dccb9e,0 4px 0 #6f592f,0 0 18px #39ddff66}
.rhyme-time-key{width:29px;aspect-ratio:1;display:grid;place-items:center;border:1px solid #071828;border-radius:50%;font:900 .9rem "Barlow Condensed",sans-serif}
.rhyme-time-choice strong{overflow-wrap:anywhere;font:900 1.18rem "Barlow Condensed",sans-serif;letter-spacing:.08em;text-align:center;text-transform:uppercase}
.rhyme-time-choice i{color:#284257;font:900 .47rem "Barlow Condensed",sans-serif;letter-spacing:.04em;text-align:right;text-transform:uppercase}
.rhyme-time-choice.hinted{border-color:#39ddff;box-shadow:inset 0 0 0 3px #d8f7f4,0 0 20px #39ddff99;animation:rhyme-pulse .68s ease-in-out infinite alternate}
.rhyme-time-choice.correct{border-color:var(--lime);background:#e4f5aa;box-shadow:inset 0 0 0 3px #efffc1,0 0 20px #bfff3277}
.rhyme-time-choice.wrong{border-color:var(--coral);box-shadow:inset 0 0 0 3px #ffd1c7,0 0 20px #ff684c77;animation:rhyme-shake .25s linear}
.rhyme-time-choice.rejected{border-color:#60636a;background:#b9b4a7;opacity:.34}
.rhyme-time-choice:disabled{cursor:default}
.rhyme-time-verse-label{grid-area:label;position:relative;z-index:2;color:#39ddff;font:800 .48rem "Barlow Condensed",sans-serif;letter-spacing:.18em;text-align:center;text-transform:uppercase}
.rhyme-time-beats{grid-area:beats;position:relative;z-index:2;display:flex;justify-content:center;gap:42px}
.rhyme-time-beats span{position:relative;width:31px;aspect-ratio:1;display:grid;place-items:center;border:2px solid #71808b;border-radius:50%;background:#071828;color:#8798a3;font:900 .72rem "Barlow Condensed",sans-serif}
.rhyme-time-beats span+span::before{content:"";position:absolute;right:100%;top:50%;width:46px;height:2px;background:repeating-linear-gradient(90deg,#71808b 0 5px,transparent 5px 9px);transform:translateY(-50%)}
.rhyme-time-beats span.active{border-color:#39ddff;color:#39ddff;box-shadow:0 0 15px #39ddff77}
.rhyme-time-beats span.done{border-color:var(--lime);background:var(--lime);color:#071828;box-shadow:0 0 15px #bfff3266}
.rhyme-time-beats span.done::after{content:"\2713"}
.rhyme-time-beats span.done+span::before{background:var(--lime);box-shadow:0 0 7px var(--lime)}
.rhyme-time-actions{grid-area:actions;position:relative;z-index:2;display:grid;gap:11px}
.rhyme-time-actions button{min-height:54px;border:1px solid #39ddff;border-radius:6px;background:#071828;color:#39ddff;font:900 .72rem "Barlow Condensed",sans-serif;letter-spacing:.1em;text-transform:uppercase;cursor:pointer}
.rhyme-time-actions button:first-child{border-color:var(--lime);color:var(--lime)}
.rhyme-time-actions button:last-child{border-color:var(--coral);color:var(--coral)}
.rhyme-time-actions button:hover:not(:disabled),.rhyme-time-actions button:focus-visible{background:#0d2a42;outline:2px solid currentColor;outline-offset:2px}
.rhyme-time-actions button:disabled{opacity:.36;cursor:default}
.rhyme-time-prompt{grid-area:prompt;position:relative;z-index:2;margin:0;padding-top:7px;border-top:1px solid #176582;color:#9eb2c0;font-size:.59rem;line-height:1.4;text-align:center}
.rhyme-time-game.paused .rhyme-time-clock,.rhyme-time-game.paused .rhyme-time-choices,.rhyme-time-game.paused .rhyme-time-beats{opacity:.42}
.rhyme-time-game.complete .rhyme-time-title{color:var(--lime);text-shadow:0 0 25px #bfff3266}
@keyframes rhyme-shake{25%{transform:translateX(-3px)}75%{transform:translateX(3px)}}
@keyframes rhyme-pulse{to{box-shadow:inset 0 0 0 3px #d8f7f4,0 0 24px #39ddffbb}}
@media(prefers-reduced-motion:reduce){.rhyme-time-choice{transition:none}.rhyme-time-choice.wrong,.rhyme-time-choice.hinted{animation:none}}
@media(max-width:720px){
  .game-shell:has(.rhyme-time-game) .game-status{align-items:flex-start;flex-direction:column;gap:7px}
  .game-shell:has(.rhyme-time-game) .game-status strong{max-width:none}
  .rhyme-time-title{font-size:2rem}.rhyme-time-subtitle{font-size:.49rem}
  .rhyme-time-stage{grid-template-columns:1fr 1fr;grid-template-areas:"summary clock" "choices choices" "label label" "beats beats" "actions actions" "prompt prompt";gap:9px;padding:10px 7px}
  .rhyme-time-summary span{padding:6px 8px}.rhyme-time-summary small{font-size:.42rem}.rhyme-time-summary strong{font-size:.78rem}
  .rhyme-time-clock{width:188px}.rhyme-time-ticks i{transform:rotate(calc(var(--tick)*15deg)) translateY(-81px)}.rhyme-time-word{max-width:148px;padding:8px 14px;font-size:1.85rem}
  .rhyme-time-choices{grid-template-columns:1fr 1fr;gap:7px}.rhyme-time-choice{min-height:57px;grid-template-columns:28px 1fr;padding:7px 8px}.rhyme-time-choice strong{font-size:1rem}.rhyme-time-choice i{display:none}.rhyme-time-key{width:26px;font-size:.82rem}
  .rhyme-time-beats{gap:29px}.rhyme-time-beats span{width:27px}.rhyme-time-beats span+span::before{width:33px}
  .rhyme-time-actions{grid-template-columns:1fr 1fr;gap:8px}.rhyme-time-actions button{min-height:46px}.rhyme-time-prompt{font-size:.52rem}
}
@media(max-width:430px){
  .rhyme-time-stage{grid-template-columns:1fr;grid-template-areas:"summary" "clock" "choices" "label" "beats" "actions" "prompt";padding-inline:5px}
  .rhyme-time-summary{grid-template-columns:repeat(5,1fr)}.rhyme-time-summary span{grid-template-columns:1fr;gap:2px;padding:6px 2px;text-align:center}.rhyme-time-summary span+span{border-top:0;border-left:1px solid #176582}.rhyme-time-summary small{font-size:.36rem}.rhyme-time-summary strong{font-size:.64rem}
  .rhyme-time-clock{width:174px}.rhyme-time-ticks i{transform:rotate(calc(var(--tick)*15deg)) translateY(-74px)}.rhyme-time-word{max-width:136px;font-size:1.65rem}
  .rhyme-time-choices{grid-template-columns:1fr}.rhyme-time-choice{min-height:49px}.rhyme-time-choice strong{font-size:.93rem}
  .rhyme-time-beats{gap:22px}.rhyme-time-beats span{width:25px}.rhyme-time-beats span+span::before{width:26px}.rhyme-time-prompt{display:none}
}
