:root{--navy:#12345a;--green:#168c72;--leaf:#52ae62;--lime:#c9eb5b;--yellow:#ffd867;--coral:#ef6548;--mint:#effcf3;--line:#b8d9c4;--white:#fff;--shadow:0 14px 36px #274d3b24}*{box-sizing:border-box}html,body,#app{min-height:100%;margin:0}body{color:var(--navy);background:#eaf8ef;font-family:Arial,"Trebuchet MS",sans-serif}button{font:inherit}.game{min-height:100dvh;background:#f8fffa}.topbar{display:grid;grid-template-columns:minmax(340px,1.5fr) minmax(270px,.8fr) auto auto;align-items:center;gap:18px;min-height:94px;padding:13px 22px;border-bottom:2px solid #d6eadb;background:#fff}.brand h1{margin:0;font-size:clamp(30px,3vw,46px);line-height:.95;letter-spacing:.01em}.brand p{margin:7px 0 0;color:#4e6c80;font-size:17px;font-weight:700}.progress>div:first-child{display:flex;justify-content:space-between;gap:12px;font-size:18px}.progress span{color:#557288}.track{height:12px;margin-top:9px;overflow:hidden;border-radius:20px;background:#e1eee6}.track i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--leaf),var(--lime));transition:width .35s}.pieces{display:flex;gap:8px}.piece{display:grid;place-items:center;width:48px;height:48px;border:2px dashed #aac5b4;border-radius:13px;color:#fff;background:#f8fbf8;font-size:23px;font-weight:900}.piece.found{border-style:solid;border-color:#e8b846;background:var(--yellow);color:#795214;box-shadow:0 3px 0 #d69f27}.tools{display:flex;gap:8px}.tools button{display:grid;justify-items:center;gap:2px;min-width:58px;padding:7px;border:1px solid #c9dbd0;border-radius:13px;color:var(--navy);background:#fff;cursor:pointer;font-size:13px;font-weight:800}.tools svg{width:27px;height:27px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.play-area{display:grid;grid-template-columns:minmax(0,1.75fr) minmax(370px,.75fr);height:calc(100dvh - 94px);min-height:0}.scene{position:relative;min-height:0;overflow:hidden;background:#dff3da}.scene>img{display:block;width:100%;height:100%;object-fit:cover}.zone-label{position:absolute;left:18px;top:18px;padding:11px 15px;border:2px solid #fff;border-radius:16px;color:var(--navy);background:#ffffffe8;box-shadow:var(--shadow)}.zone-label strong,.zone-label span{display:block}.zone-label strong{font-size:22px}.zone-label span{margin-top:3px;font-size:16px}.hotspot{position:absolute;z-index:3;padding:0;border:0;border-radius:18px;background:transparent;cursor:pointer}.hotspot:focus-visible{outline:4px solid #fff;box-shadow:0 0 0 7px #168c72}.hotspot.done{cursor:default}.journal{min-height:0;padding:20px 18px;overflow:auto;border-left:2px solid #d6eadb;background:linear-gradient(#fafffc,#edf9f1)}.journal-head{text-align:center}.journal h2{margin:0;color:var(--navy);font-size:36px;line-height:1}.journal-head p{margin:6px 0 15px;color:#567388;font-size:18px}.clues{display:grid;gap:11px}.clue{display:grid;grid-template-columns:42px 1fr auto;align-items:center;gap:11px;min-height:96px;padding:14px;border:2px solid #c6dfcc;border-radius:17px;background:#fff;box-shadow:0 5px 14px #315b4312}.clue-number{display:grid;place-items:center;width:38px;height:38px;border-radius:50%;color:#fff;background:#3fa1d1;font-size:20px;font-weight:900}.clue p{margin:0;font-size:19px;line-height:1.35;font-weight:800}.clue-state{color:#6e8790;font-size:15px;font-weight:800}.clue.done{border-color:#8bc976;background:#f1ffe9}.clue.done .clue-number{background:#57aa54}.clue.done .clue-state{color:#438b40}.hint{margin-top:14px;padding-top:14px;border-top:1px dashed #9dc1a8}.hint button{padding:9px 17px;border:2px solid #9bc2a4;border-radius:13px;color:var(--navy);background:#fff;cursor:pointer;font-size:18px;font-weight:900}.hint p{margin:10px 0 0;padding:12px;border-radius:12px;background:#fff7cf;font-size:17px;line-height:1.4}.next,.primary{width:100%;margin-top:14px;padding:15px 18px;border:0;border-radius:15px;color:#fff;background:var(--green);box-shadow:0 5px 0 #0d5d4b;cursor:pointer;font-size:19px;font-weight:900}.next:disabled{color:#6f7d76;background:#d8ded9;box-shadow:0 5px 0 #b7beb9;cursor:default}.found-line{display:flex;justify-content:space-between;gap:12px;margin-top:18px;padding-top:14px;border-top:1px solid #c4dac9;color:#516e78;font-size:16px}.overlay{position:fixed;z-index:80;inset:0;display:grid;place-items:center;padding:20px;background:#194f3d66;backdrop-filter:blur(6px)}.card{width:min(700px,100%);max-height:calc(100dvh - 30px);overflow:auto;padding:30px;border:2px solid #b6d8be;border-radius:25px;color:var(--navy);background:#fff;box-shadow:0 25px 90px #163d2e55}.start-card,.end-card{text-align:center}.start-card h2,.end-card h2{margin:0;font-size:clamp(45px,6vw,70px);line-height:.9}.start-card h2 span{color:var(--coral);font-size:.62em}.lead{margin:18px 0;color:#2d765d;font-size:24px;font-weight:900}.brief{padding:17px 20px;text-align:left;border:2px solid #d2e6d6;border-radius:17px;background:var(--mint)}.brief p{margin:9px 0;font-size:18px;line-height:1.45}.brief strong{color:#26785d}.brief .small{color:#5b737b;font-size:16px}.primary{background:var(--coral);box-shadow:0 5px 0 #b84530}.challenge{position:relative}.close{position:absolute;right:18px;top:18px;width:42px;height:42px;border:2px solid #c6ddd0;border-radius:50%;color:var(--navy);background:#fff;cursor:pointer;font-size:25px}.type{margin:0 55px 5px 0;color:#278566;font-size:16px;font-weight:900;text-transform:uppercase;letter-spacing:.08em}.challenge h3{margin:0 55px 12px 0;font-size:34px}.question{margin:18px 0;font-size:25px;line-height:1.35;font-weight:900}.answers{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}.answer{padding:14px;border:2px solid #bfd8c6;border-radius:14px;color:var(--navy);background:#fff;cursor:pointer;font-size:20px;font-weight:800}.answer:hover{border-color:#4baa78;background:#f0fff4}.answer.correct{border-color:#63b457;background:#eaffdf}.answer.wrong{border-color:#e47b62;background:#fff0ec}.feedback{min-height:56px;margin-top:14px;padding:13px 15px;border-left:5px solid #9fb9aa;border-radius:9px;background:#f0f6f2;font-size:17px;line-height:1.4}.feedback.good{border-color:#5aaa51;background:#efffe8}.feedback.bad{border-color:#e26d54;background:#fff0ec}.collect{background:var(--green);box-shadow:0 5px 0 #0d5d4b}.toast{position:fixed;z-index:100;left:50%;top:105px;transform:translateX(-50%);padding:13px 20px;border-radius:15px;color:#563f00;background:var(--yellow);box-shadow:var(--shadow);font-size:18px;font-weight:900}@media (max-width:1100px){.topbar{grid-template-columns:1fr auto auto}.progress{grid-column:1/2;grid-row:2}.brand{grid-column:1/2}.pieces{grid-column:2;grid-row:1/3}.tools{grid-column:3;grid-row:1/3}.play-area{height:calc(100dvh - 139px);grid-template-columns:minmax(0,1.5fr) minmax(350px,.8fr)}}@media (max-width:900px){body{overflow:auto}.game{height:auto;min-height:100dvh}.topbar{grid-template-columns:1fr auto;padding:13px 14px}.brand h1{font-size:30px}.brand p{font-size:16px}.progress{grid-column:1/-1;grid-row:auto}.pieces{grid-column:2;grid-row:1}.tools{grid-column:2;grid-row:2}.tools span{display:none}.play-area{display:block;height:auto}.scene{aspect-ratio:16/9}.journal{overflow:visible;border-left:0;border-top:2px solid #d6eadb}.clues{grid-template-columns:repeat(3,minmax(0,1fr))}.clue{grid-template-columns:34px 1fr;align-content:start;min-height:150px}.clue-number{width:32px;height:32px}.clue p{grid-column:1/-1;font-size:18px}.clue-state{grid-column:1/-1}}body[data-mode="embed"]{min-width:0;overflow:auto;background:#dfeee4}body[data-mode="embed"] .game{width:min(720px,100%);height:auto;min-height:100dvh;margin:auto}body[data-mode="embed"] .topbar{grid-template-columns:1fr auto;padding:13px 14px}body[data-mode="embed"] .brand h1{font-size:30px}body[data-mode="embed"] .brand p{font-size:16px}body[data-mode="embed"] .progress{grid-column:1/-1;grid-row:auto}body[data-mode="embed"] .pieces{grid-column:2;grid-row:1}body[data-mode="embed"] .tools{grid-column:2;grid-row:2}body[data-mode="embed"] .tools span{display:none}body[data-mode="embed"] .play-area{display:block;height:auto}body[data-mode="embed"] .scene{aspect-ratio:16/9}body[data-mode="embed"] .journal{overflow:visible;border-left:0;border-top:2px solid #d6eadb}body[data-mode="embed"] .clues{grid-template-columns:1fr}body[data-mode="embed"] .clue{grid-template-columns:42px 1fr auto;min-height:92px}body[data-mode="embed"] .clue p{grid-column:auto;font-size:19px}body[data-mode="embed"] .clue-state{grid-column:auto}@media (max-width:600px){.pieces .piece{width:39px;height:39px}.brand h1,body[data-mode="embed"] .brand h1{font-size:25px}.brand p{display:none}.journal{padding:17px 12px}.journal h2{font-size:32px}.clues{grid-template-columns:1fr}.clue{grid-template-columns:38px 1fr auto;min-height:90px}.clue p{grid-column:auto}.clue-state{grid-column:auto}.answers{grid-template-columns:1fr}.card{padding:23px 18px}.question{font-size:22px}.start-card h2,.end-card h2{font-size:42px}}@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
