.game-shell:has(.prefix-puzzle-game){grid-template-columns:minmax(0,1fr);gap:12px}
.game-shell:has(.prefix-puzzle-game) .game-status{flex-direction:row;align-items:center;justify-content:space-between;gap:18px;padding:10px 14px}
.game-shell:has(.prefix-puzzle-game) .game-status strong{max-width:68%}
.game-shell:has(.prefix-puzzle-game) .game-tools{flex-direction:row;padding:0}
.game-shell:has(.prefix-puzzle-game) .game-tools button{flex:1;padding:12px 8px;text-align:center}
.prefix-puzzle-game{width:min(100%,1050px);display:grid;gap:7px;color:#f3e5c5}
.prefix-puzzle-title{margin:0;color:#f3e5c5;font:900 clamp(2.2rem,5vw,3.85rem)/.86 "Barlow Condensed",sans-serif;letter-spacing:.095em;text-align:center;text-transform:uppercase;text-shadow:2px 2px 0 #153d65}
.prefix-puzzle-subtitle{margin:0;color:#418bd0;font:800 .62rem "Barlow Condensed",sans-serif;letter-spacing:.32em;text-align:center;text-transform:uppercase}
.prefix-puzzle-workshop{--time-ratio:1;position:relative;overflow:hidden;display:grid;grid-template-areas:"summary" "sheet" "label" "progress" "actions" "prompt";gap:11px;padding:15px;border:1px solid #86714c;border-radius:5px;background-color:#071827;background-image:linear-gradient(90deg,transparent 49.8%,#16365355 50%,transparent 50.2%);box-shadow:inset 0 0 34px #020b12,0 5px 0 #020b12}
.prefix-puzzle-workshop::before,.prefix-puzzle-workshop::after{content:"";position:absolute;width:18px;height:18px;border:2px solid #b39154;border-radius:50%;top:17px;background:#84662f;box-shadow:inset 0 0 0 4px #c7a65f,0 1px 4px #000}
.prefix-puzzle-workshop::before{left:18px}.prefix-puzzle-workshop::after{right:18px}
.prefix-puzzle-summary{grid-area:summary;position:relative;z-index:2;display:grid;grid-template-columns:repeat(5,1fr);margin-inline:32px;border-block:1px solid #786846;background:#061522}
.prefix-puzzle-summary span{display:grid;gap:2px;padding:8px 6px;text-align:center}
.prefix-puzzle-summary span+span{border-left:1px solid #786846}
.prefix-puzzle-summary small{color:#418bd0;font:800 .49rem "Barlow Condensed",sans-serif;letter-spacing:.14em;text-transform:uppercase}
.prefix-puzzle-summary strong{color:#f3e5c5;font:900 .96rem "Barlow Condensed",sans-serif;letter-spacing:.04em}
.prefix-puzzle-summary span:nth-child(3) strong{color:#c8de39}
.prefix-puzzle-summary span:nth-child(4) strong{color:#ef6848;letter-spacing:.06em}
.prefix-puzzle-summary span:last-child{position:relative}
.prefix-puzzle-summary span:last-child::after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:3px;background:#173b5b}
.prefix-puzzle-summary span:last-child::before{content:"";position:absolute;z-index:1;left:0;bottom:-1px;width:calc(var(--time-ratio)*100%);height:3px;background:#418bd0}
.prefix-puzzle-sheet{grid-area:sheet;position:relative;z-index:2;display:grid;gap:13px;padding:19px 24px 22px;border:2px solid #d7c39c;border-radius:3px;background:#f3e5c5;color:#071827;box-shadow:4px 5px 0 #947d55,0 11px 19px #0008}
.prefix-puzzle-sheet::before,.prefix-puzzle-sheet::after{content:"";position:absolute;width:30px;height:2px;background:#2777c8;top:17px}
.prefix-puzzle-sheet::before{left:14px}.prefix-puzzle-sheet::after{right:14px}
.prefix-puzzle-clue-label{color:#2777c8;font:800 .52rem "Barlow Condensed",sans-serif;letter-spacing:.17em;text-align:center;text-transform:uppercase}
.prefix-puzzle-clue{min-height:38px;display:grid;place-items:center;color:#172537;font:800 clamp(1.15rem,2.8vw,1.75rem)/1.15 Georgia,serif;text-align:center}
.prefix-puzzle-assembly{width:min(100%,620px);min-height:76px;margin:auto;display:grid;grid-template-columns:minmax(100px,.7fr) 34px minmax(160px,1.3fr);align-items:center;border:1px solid #b7a987;background:#eadbb9;box-shadow:inset 0 2px 7px #8b79534d}
.prefix-puzzle-assembly span{min-width:0;padding:11px 17px;overflow-wrap:anywhere;color:#0b1d2b;font:900 clamp(1.85rem,4vw,3.25rem)/.9 "Barlow Condensed",sans-serif;letter-spacing:.07em;text-align:center;text-transform:uppercase}
.prefix-puzzle-prefix{color:#ef6848!important;border-right:1px dashed #8f8265}
.prefix-puzzle-assembly i{color:#14283a;font:900 1.55rem "Barlow Condensed",sans-serif;text-align:center}
.prefix-puzzle-choices{display:grid;grid-template-columns:repeat(4,1fr);gap:11px}
.prefix-puzzle-choice{min-height:70px;display:grid;grid-template-columns:31px 1fr 48px;align-items:center;gap:7px;padding:8px 10px;border:2px solid #b24732;border-radius:3px;background:#ef6848;color:#111e29;box-shadow:inset 0 0 0 3px #f47f62,0 5px 0 #843524,0 8px 13px #4a321c66;cursor:pointer;transition:transform .14s,border-color .14s,box-shadow .14s,opacity .14s}
.prefix-puzzle-choice:nth-child(even){background:#e75d3f}
.prefix-puzzle-choice:hover:not(:disabled),.prefix-puzzle-choice:focus-visible{transform:translateY(-3px);border-color:#2777c8;outline:3px solid #2777c8;outline-offset:2px;box-shadow:inset 0 0 0 3px #f47f62,0 5px 0 #843524,0 9px 15px #234f7870}
.prefix-puzzle-choice>span{width:27px;aspect-ratio:1;display:grid;place-items:center;border:1px solid #172537;border-radius:50%;font:900 .85rem "Barlow Condensed",sans-serif}
.prefix-puzzle-choice strong{overflow-wrap:anywhere;font:900 clamp(1rem,2.3vw,1.42rem) "Barlow Condensed",sans-serif;letter-spacing:.07em;text-align:center;text-transform:uppercase}
.prefix-puzzle-choice i{font:900 .43rem "Barlow Condensed",sans-serif;letter-spacing:.05em;text-align:right;text-transform:uppercase}
.prefix-puzzle-choice.hinted{border-color:#2777c8;box-shadow:inset 0 0 0 3px #f3ad96,0 0 0 4px #2777c8,0 7px 15px #234f7870;animation:prefix-pulse .65s ease-in-out infinite alternate}
.prefix-puzzle-choice.correct{border-color:#83951c;background:#c8de39;box-shadow:inset 0 0 0 3px #d9ea6e,0 5px 0 #687817}
.prefix-puzzle-choice.wrong{border-color:#8f1e1e;animation:prefix-shake .24s linear}
.prefix-puzzle-choice.rejected{border-color:#776c5e;background:#a6947e;box-shadow:none;opacity:.35}
.prefix-puzzle-choice:disabled{cursor:default}
.prefix-puzzle-progress-label{grid-area:label;position:relative;z-index:2;color:#418bd0;font:800 .48rem "Barlow Condensed",sans-serif;letter-spacing:.18em;text-align:center;text-transform:uppercase}
.prefix-puzzle-progress{grid-area:progress;position:relative;z-index:2;display:flex;justify-content:center;gap:48px}
.prefix-puzzle-progress span{position:relative;width:31px;aspect-ratio:1;display:grid;place-items:center;border:2px solid #d2bf98;border-radius:50%;background:#071827;color:#d2bf98;font:900 .72rem "Barlow Condensed",sans-serif}
.prefix-puzzle-progress span+span::before{content:"";position:absolute;right:100%;top:50%;width:52px;height:2px;background:repeating-linear-gradient(90deg,#d2bf98 0 6px,transparent 6px 10px);transform:translateY(-50%)}
.prefix-puzzle-progress span.active{border-color:#2777c8;color:#5ba6e9;box-shadow:0 0 0 4px #2777c82e}
.prefix-puzzle-progress span.done{border-color:#c8de39;background:#c8de39;color:#071827}
.prefix-puzzle-progress span.done::after{content:"\2713"}
.prefix-puzzle-progress span.done+span::before{background:#c8de39}
.prefix-puzzle-actions{grid-area:actions;position:relative;z-index:2;display:grid;grid-template-columns:repeat(2,minmax(0,190px));justify-content:center;gap:10px}
.prefix-puzzle-actions button{min-height:46px;border:1px solid #d2bf98;border-radius:3px;background:#f3e5c5;color:#10243a;font:900 .72rem "Barlow Condensed",sans-serif;letter-spacing:.1em;text-transform:uppercase;box-shadow:0 3px 0 #806d49;cursor:pointer}
.prefix-puzzle-actions button:first-child{color:#2777c8}.prefix-puzzle-actions button:last-child{color:#c64d34}
.prefix-puzzle-actions button:hover:not(:disabled),.prefix-puzzle-actions button:focus-visible{outline:3px solid currentColor;outline-offset:2px;transform:translateY(-1px)}
.prefix-puzzle-actions button:disabled{opacity:.38;cursor:default;transform:none}
.prefix-puzzle-workshop>p{grid-area:prompt;position:relative;z-index:2;margin:0;padding-top:7px;border-top:1px solid #755f3e;color:#b7aa92;font-size:.59rem;line-height:1.4;text-align:center}
.prefix-puzzle-game.paused .prefix-puzzle-sheet,.prefix-puzzle-game.paused .prefix-puzzle-progress{opacity:.43}
.prefix-puzzle-game.complete .prefix-puzzle-title{color:#c8de39;text-shadow:2px 2px 0 #344415}
@keyframes prefix-shake{25%{transform:translateX(-3px)}75%{transform:translateX(3px)}}
@keyframes prefix-pulse{to{box-shadow:inset 0 0 0 3px #f3ad96,0 0 0 5px #2777c8,0 8px 17px #234f7890}}
@media(prefers-reduced-motion:reduce){.prefix-puzzle-choice{transition:none}.prefix-puzzle-choice.wrong,.prefix-puzzle-choice.hinted{animation:none}}
@media(max-width:720px){
  .game-shell:has(.prefix-puzzle-game) .game-status{align-items:flex-start;flex-direction:column;gap:7px}.game-shell:has(.prefix-puzzle-game) .game-status strong{max-width:none}
  .prefix-puzzle-title{font-size:2rem}.prefix-puzzle-subtitle{font-size:.5rem}.prefix-puzzle-workshop{gap:9px;padding:11px 7px}.prefix-puzzle-summary{margin-inline:25px}.prefix-puzzle-summary span{padding:7px 2px}.prefix-puzzle-summary small{font-size:.4rem}.prefix-puzzle-summary strong{font-size:.73rem}
  .prefix-puzzle-sheet{padding:15px 9px 18px}.prefix-puzzle-clue{min-height:32px;font-size:1.15rem}.prefix-puzzle-assembly{min-height:62px;grid-template-columns:minmax(75px,.7fr) 25px minmax(115px,1.3fr)}.prefix-puzzle-assembly span{padding:8px;font-size:1.8rem}.prefix-puzzle-assembly i{font-size:1.2rem}
  .prefix-puzzle-choices{gap:7px}.prefix-puzzle-choice{min-height:58px;grid-template-columns:27px 1fr;padding:7px}.prefix-puzzle-choice strong{font-size:1rem}.prefix-puzzle-choice i{display:none}.prefix-puzzle-choice>span{width:24px;font-size:.76rem}
  .prefix-puzzle-progress{gap:31px}.prefix-puzzle-progress span{width:27px}.prefix-puzzle-progress span+span::before{width:35px}.prefix-puzzle-actions button{min-height:46px}.prefix-puzzle-workshop>p{font-size:.52rem}
}
@media(max-width:430px){
  .prefix-puzzle-summary{margin-inline:16px}.prefix-puzzle-summary small{font-size:.35rem}.prefix-puzzle-summary strong{font-size:.64rem}.prefix-puzzle-sheet{padding-inline:6px}.prefix-puzzle-clue{font-size:1.02rem}.prefix-puzzle-assembly{grid-template-columns:minmax(62px,.72fr) 20px minmax(98px,1.28fr)}.prefix-puzzle-assembly span{font-size:1.48rem}
  .prefix-puzzle-choices{grid-template-columns:1fr 1fr}.prefix-puzzle-choice{min-height:51px}.prefix-puzzle-progress{gap:22px}.prefix-puzzle-progress span{width:25px}.prefix-puzzle-progress span+span::before{width:26px}.prefix-puzzle-workshop>p{display:none}
}
