.game-v5{--ink:#245761;--paper:#fffaf0;--gold:#cf9b39;color:var(--ink)}.game-v5 .game-frame{background:linear-gradient(#fff9eccf,#fff9eceb),url(/scenes/mission-worktable.png) 50%/cover;max-width:1440px;min-height:100vh;margin:auto}.v5-main{padding:0 32px 28px}.v5-hud{justify-content:space-between;align-items:center;gap:20px;margin-bottom:12px;display:flex}.v5-route{gap:32px;margin:0;padding:0;list-style:none;display:flex}.v5-route li{border-bottom:3px solid #c6c7b8;align-items:center;gap:10px;padding:8px 0;font-weight:700;display:flex}.v5-route .done{border-color:#428273}.v5-route .current{border-color:var(--gold)}.v5-route span{font-size:13px}.v5-clock{text-align:right;display:grid}.v5-clock small{letter-spacing:1px;font-size:10px}.v5-clock strong{font:700 26px ui-monospace,monospace}.v5-control{background:#f0e2c0;justify-content:space-between;align-items:center;gap:16px;margin:12px 0;padding:12px 20px;display:flex}.v5-control button{padding:10px 18px}.v5-intro{text-align:center;max-width:840px;margin:40px auto;padding:20px}.v5-intro h1,.v5-victory h1{margin:20px 0;font-size:clamp(32px,4vw,56px);line-height:1.12}.v5-intro p{max-width:700px;margin:20px auto;font-size:22px;line-height:1.55}.v5-intro small{margin-top:18px;display:block}.v5-intro form{text-align:left;gap:12px;max-width:500px;margin:auto;display:grid}.v5-instruction{background:#efe0bc;max-width:680px;margin:24px auto;padding:24px;font-size:20px}.v5-avatars{justify-content:center;gap:24px;margin:24px 0;display:flex}.v5-avatars .animal{object-fit:cover;border-radius:50%;width:100px;height:100px}.v5-avatars>div{justify-items:center;gap:8px;display:grid}.v5-title{justify-content:space-between;align-items:center;gap:28px;margin-bottom:16px;display:flex}.v5-title h1{margin:4px 0;font-size:30px;line-height:1.2}.v5-title p{max-width:410px;margin:0;font-size:16px}.game-v5 fieldset{border:0;min-width:0;margin:0;padding:0}.game-v5 .crossword-workspace{grid-template-columns:minmax(320px,1.1fr) minmax(290px,1fr);gap:24px}.game-v5 .crossword-board{max-width:520px;margin:auto}.game-v5 .crossword-cell{height:38px;min-height:0;font-size:23px}.game-v5 .crossword-clues{max-height:440px;overflow:auto}.game-v5 .crossword-clue{margin-bottom:8px;padding:12px}.game-v5 .crossword-clue strong{font-size:16px;line-height:1.4}.game-v5 .crossword-clue span{font-size:11px}.game-v5 .crossword-note{font-size:12px}.v5-password{background:#f0e2c0;align-items:center;gap:12px;margin-top:18px;padding:14px 20px;display:flex}.v5-password label{font-size:15px;font-weight:700}.v5-password input{letter-spacing:3px;text-transform:uppercase;width:240px;margin:0;font-size:22px}.v5-password button{margin-left:auto}.v5-clue{background:#efe0bc;align-items:center;gap:20px;margin-bottom:12px;padding:12px 20px;display:flex}.v5-clue span{white-space:nowrap;font-weight:700}.v5-clue p{margin:0;font-size:20px;line-height:1.4}.v5-room{width:min(100%,1080px);margin:auto;line-height:0;position:relative}.v5-room img{width:100%;display:block}.v5-room-background,.v5-hotspot{box-shadow:none!important;background:0 0!important;border:0!important;border-radius:0!important;min-height:0!important;padding:0!important;position:absolute!important;transform:none!important}.v5-room-background{inset:0}.v5-hotspot:focus-visible{outline-offset:1px;outline:4px solid #e1242a!important}.v5-hotspot:hover{background:#ffffff18!important}.v5-collected{letter-spacing:5px;justify-content:center;gap:14px;margin:14px 0;font-size:24px;font-weight:700;display:flex}.v5-found{text-align:center;max-width:760px;min-height:430px;margin:auto;padding:50px 20px}.v5-found h2{font-size:34px}.v5-found p{font-size:23px;line-height:1.6}.v5-found strong{color:#956714;margin:20px;font-size:58px;display:block}.v5-found button{margin:auto;display:block}.v5-victory{text-align:center;padding:24px;animation:.9s ease-out revealMessage}.v5-final{letter-spacing:4px;margin:24px;font-size:34px;line-height:1.6}.v5-victory p{font-size:20px}.v5-sparks{color:#b68726;font-size:42px;animation:1.5s ease-in-out 3 celebrate}.v5-error{font-size:18px;font-weight:700;border-left:6px solid #c5232d!important}.game-v5 .supply-bay{grid-template-columns:minmax(0,1fr) 300px;gap:22px}.game-v5 .cargo-art{height:65px}.game-v5 .cargo-tray{grid-template-columns:repeat(5,minmax(0,1fr))}.game-v5 .cargo-label{font-size:12px}.game-v5 .crew-notes{padding:18px}.game-v5 .crew-notes h2{font-size:22px}.game-v5 .crew-notes li{font-size:16px;line-height:1.6}.game-v5 .supply-shelf{gap:8px}.game-v5 .supply-slot{min-height:140px}.game-v5 .supply-rule{font-size:13px}.game-v5 .supply-workbench small{font-size:12px}.v5-note-nav{justify-content:space-between;align-items:center;gap:12px;display:flex}.v5-note-nav button{padding:8px 16px}.v5-note-copy{min-height:240px;font-size:20px;line-height:1.65}.v5-clue-index{flex-wrap:wrap;gap:8px;display:flex}.v5-clue-index button{color:var(--ink);background:#e8ddc2;padding:10px 14px}.v5-clue-index button[aria-pressed=true]{background:var(--ink);color:#fff}.game-v5 .v5-active-clue{background:#f0e2c0;margin-top:16px;padding:24px}.v5-active-clue p{font-size:23px;line-height:1.5}.game-v5 button:focus-visible,.game-v5 input:focus-visible{outline-offset:3px;outline:3px solid #b26d15}@keyframes revealMessage{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:none}}@keyframes celebrate{50%{transform:scale(1.25)rotate(3deg)}}@media (max-width:850px){.v5-main{padding:0 14px 24px}.v5-title{display:block}.v5-title p{margin-top:10px}.game-v5 .crossword-workspace,.game-v5 .supply-bay{grid-template-columns:1fr}.v5-password{flex-wrap:wrap}.v5-password input{flex:1;min-width:130px}.v5-route{gap:12px}.v5-route span{display:none}.v5-clue p{font-size:16px}.v5-intro{margin:15px auto}.v5-intro p{font-size:18px}.v5-control{flex-wrap:wrap}.v5-note-copy{min-height:100px}}@media (prefers-reduced-motion:reduce){.game-v5 *{transition:none!important;animation:none!important}}.game-v5.story-screen{min-height:100dvh;padding:12px;display:block;overflow:visible}.game-v5 .game-frame{border-radius:12px;height:auto;min-height:calc(100dvh - 24px);display:block;overflow:visible}.game-v5 .game-frame .site-header{border-radius:12px 12px 0 0;height:48px;padding:0 24px}.game-v5 .v5-main{padding:0 24px 16px}.game-v5 .v5-hud,.game-v5 .v5-title{margin-bottom:8px}.game-v5 .crossword-workspace{align-items:start;margin:8px 0}.game-v5 .crossword-board-area{position:static}.game-v5 .crossword-board{border-radius:10px;gap:3px;width:min(100%,480px,120dvh - 360px);padding:10px}.game-v5 .crossword-board .crossword-cell{aspect-ratio:1;height:auto;font-size:clamp(16px,2.2vh,24px)}.game-v5 .crossword-clues{max-height:none;display:block;overflow:visible}.game-v5 .v5-clue-index{flex-wrap:wrap;gap:8px;display:flex}.game-v5 .v5-clue-index .crossword-clue{color:#245761;background:#e8ddc2;border-radius:6px;flex:none;width:auto;margin:0;padding:10px 14px}.game-v5 .v5-clue-index .crossword-clue.active{color:#fff;background:#245761}.game-v5 .collected-letters{gap:6px;margin-top:8px}.game-v5 .collected-letters span{width:28px;height:28px;font-size:18px}.game-v5 .crossword-note{margin:8px 0}.game-v5 .v5-password{margin-top:10px;padding:10px 16px}.game-v5 .v5-room{width:min(100%,1080px,200dvh - 680px)}.game-v5 .v5-intro{margin:16px auto}@media (max-width:850px){.game-v5.story-screen{padding:0}.game-v5 .game-frame{border-radius:0;min-height:100dvh}.game-v5 .crossword-board{width:min(100%,420px)}.game-v5 .v5-room{width:100%}.game-v5 .v5-main{padding:0 12px 20px}}.game-v5{background:#183f46;font-family:Segoe UI,Arial,sans-serif}.game-v5 .game-frame{background-image:linear-gradient(#fff9eeed,#fff9eef2),url(/scenes/mission-worktable.png);box-shadow:0 12px 40px #071f2929}.game-v5 .game-frame .site-header{background:#fff9ed;border-bottom:1px solid #dbcdb244}.game-v5 .eyebrow{letter-spacing:1.6px;color:#876021;font-size:11px;font-weight:700}.game-v5 h1,.game-v5 h2{letter-spacing:-.6px;font-weight:750}.game-v5 button{border-radius:8px;font-family:inherit;font-size:15px;line-height:1.3;transition:background .15s,transform .15s}.game-v5 button:active:not(:disabled){transform:translateY(1px)}.game-v5 button:disabled{opacity:.5;cursor:not-allowed}.game-v5 .v5-title p{color:#4d6265;font-size:15px;line-height:1.5}.game-v5 .v5-active-clue{background:#f0e5cb;border-radius:10px;box-shadow:inset 4px 0 #cba257}.game-v5 .v5-active-clue p{margin:18px 0 8px;font-size:23px;font-weight:500;line-height:1.5}.game-v5 .v5-route li{color:#78877e;position:relative}.game-v5 .v5-route .current{color:#245761}.game-v5 .v5-route .done{color:#287061}.game-v5 .v5-route .done:after{content:"";background:#428273;width:100%;height:3px;animation:.6s ease-out drawRoute;position:absolute;bottom:-3px;left:0}.game-v5 .v5-intro,.game-v5 .v5-found{animation:.4s ease-out revealMessage}.game-v5 .v5-collected span{background:#f3dfa9;border-radius:6px;padding:5px 12px;animation:.35s ease-out collectPiece}.game-v5 .v5-instruction{border-radius:10px;font-size:19px;font-weight:600;line-height:1.55}.game-v5 .v5-intro>small{color:#586c6c;font-size:12px}.game-v5 .v5-password{background:#e5ece4;border-radius:10px}.game-v5 .v5-password input{background:#fffdf7;border:1px solid #adbfb4;border-radius:6px;min-height:42px}.game-v5 .v5-password label{color:#36575b}.game-v5 .v5-error{color:#9c2833;background:#fff0ed;border-radius:8px;animation:.24s ease-out signalError}.game-v5 .v5-room{border-radius:10px;overflow:hidden}.game-v5 .v5-clue{background:#eee3cb;border-radius:10px}.game-v5 .v5-clue>span{background:#fff8e9;border-radius:6px;padding:8px 12px;font-size:14px}.game-v5 .v5-found>strong{background:#f2dc9e;border-radius:10px;width:max-content;min-width:100px;margin:20px auto;padding:10px 22px;animation:.4s ease-out collectPiece}.v5-crossword-square{aspect-ratio:1;min-width:0;display:block;position:relative}.v5-cell-number{color:#466363;pointer-events:none;z-index:1;font-size:8px;font-weight:700;line-height:1;position:absolute;top:2px;left:3px}.game-v5 .v5-crossword-square input{height:100%;padding-top:5px}.game-v5 .supply-slot,.game-v5 .cargo-tray button{border-radius:8px}.game-v5 .cargo-digit{color:#654b20;background:#f3dfa9;font-size:18px}.game-v5 .crew-notes{border-radius:10px}.game-v5 .v5-note-nav button{min-width:42px}.game-v5 .v5-note-copy{font-size:19px;line-height:1.65}.game-v5 .v5-final{color:#285961;border-top:1px solid #ceb577;border-bottom:1px solid #ceb577;padding:18px 26px;display:inline-block}.game-v5 .v5-victory h1{margin-top:8px}.game-v5 .v5-victory .v5-avatars{margin:16px}@keyframes drawRoute{0%{width:0}to{width:100%}}@keyframes collectPiece{0%{opacity:0;transform:scale(.88)}to{opacity:1;transform:scale(1)}}@keyframes signalError{25%{transform:translate(-3px)}75%{transform:translate(3px)}}@media (max-height:720px) and (min-width:851px){.game-v5 .v5-intro h1{font-size:38px}.game-v5 .v5-intro p{margin:16px auto;font-size:19px}.game-v5 .v5-avatars .animal{width:76px;height:76px}.game-v5 .v5-avatars{margin:16px}.game-v5 .v5-found{min-height:320px;padding:24px 16px}.game-v5 .v5-found p{font-size:21px}.game-v5 .v5-intro{margin:8px auto;padding:12px}.game-v5 .v5-instruction{margin:16px auto;padding:18px}.game-v5 .v5-title h1{font-size:27px}}@media (prefers-reduced-motion:reduce){.game-v5 *,.game-v5 :after{transition:none!important;animation:none!important}}.game-v5 h1:focus{outline:none}.game-v5 .v5-extract{color:#604617;background:#efd28a;border-radius:4px;padding:0 3px}.v5-example{max-width:900px;margin:16px auto;animation:.35s ease-out revealMessage}.v5-example-head{justify-content:space-between;align-items:center;gap:16px;display:flex}.v5-example h1{margin:12px 0;font-size:32px}.v5-example-steps{gap:24px;margin:20px 0;padding:0;list-style:none;display:flex}.v5-example-steps li{color:#71827f;border-bottom:3px solid #e4dcc9;align-items:center;gap:10px;padding:8px 0;font-weight:700;display:flex}.v5-example-steps .active{color:#285961;border-color:#c39440}.v5-example-steps .done{color:#448272;border-color:#448272}.v5-example-steps span{font-size:14px}.v5-example-art{background:#eee2c7;border-radius:12px;flex-direction:column;justify-content:center;align-items:center;gap:16px;min-height:200px;padding:24px;display:flex}.v5-example-label{margin:0;font-size:16px;font-weight:600}.v5-demo-letters{gap:8px;display:flex}.v5-demo-letters>span{width:48px;height:52px;animation:.3s both collectPiece;animation-delay:var(--delay);background:#fffaf0;border-radius:5px;place-items:center;font:700 27px ui-monospace,monospace;display:grid}.v5-demo-letters>.gold{background:#e6bd60;box-shadow:0 0 0 2px #a47a29}.v5-demo-receipt{align-items:center;gap:14px;font-size:17px;display:flex}.v5-demo-receipt b{letter-spacing:4px;background:#f8edcc;border-radius:6px;padding:6px 14px;font-size:28px;animation:.4s ease-out collectPiece}.v5-demo-objects{align-items:center;gap:24px;display:flex}.v5-demo-objects>div{text-align:center;border-radius:10px;width:125px;padding:8px 14px;position:relative}.v5-demo-objects svg{width:100%;height:85px;display:block}.v5-demo-objects span{text-transform:capitalize;font-weight:600;display:block}.v5-demo-objects small{white-space:nowrap;font-size:11px}.v5-demo-objects .chosen{background:#cbded3;animation:.4s collectPiece;box-shadow:0 0 0 2px #528778}.v5-demo-objects .placed{background:#fff9e8;animation:.4s collectPiece}.v5-demo-objects b{color:#8b641a;margin-top:6px;font-size:22px;display:block}.v5-demo-pointer{position:absolute;top:0;right:3px}.v5-example-copy{min-height:62px;margin:18px 0;font-size:20px;line-height:1.55}.v5-example-actions{justify-content:space-between;align-items:center;display:flex}.v5-intro>.text-button{margin:8px auto;display:block}.game-v5 .text-button{color:#285961;background:0 0}@media (max-width:650px){.v5-demo-letters{gap:4px}.v5-demo-letters>span{width:30px;height:38px;font-size:20px}.v5-demo-objects{gap:4px}.v5-demo-objects>div{width:85px;padding:4px}.v5-example-steps{gap:12px}.v5-example-steps span{font-size:11px}.v5-example-head{flex-wrap:wrap}.v5-example-copy{font-size:18px}}@media (min-width:851px){.game-v5 .v5-puzzle:has(.crossword-workspace){grid-template-columns:minmax(320px,1.1fr) minmax(290px,1fr);align-items:start;column-gap:24px;display:grid}.game-v5 .v5-puzzle:has(.crossword-workspace)>.v5-title{grid-column:1/-1}.game-v5 .v5-puzzle .crossword-workspace{display:contents}.game-v5 .v5-puzzle:has(.crossword-workspace)>fieldset{display:contents}.game-v5 .crossword-board-area{grid-area:2/1/4}.game-v5 .crossword-clues{grid-area:2/2}.game-v5 .v5-puzzle:has(.crossword-workspace)>.v5-password{flex-wrap:wrap;grid-area:3/2;align-self:start}.game-v5 .v5-puzzle:has(.crossword-workspace)>.v5-password label{width:100%}.game-v5 .v5-puzzle:has(.crossword-workspace)>.v5-password input{flex:1;width:120px;min-width:120px}}
