:root{--bg:#23252a;--rock:#2e3036;--rock-2:#3e4048;--ink:#f5f0e6;--muted:#b9b4aa;--gold:#e0a46e;--amber:#c47a3f;--silver:#d9dde3;--green:#9be38b;--radius:22px;--title-font:"Lilita One", "Arial Rounded MT Bold", sans-serif;color:var(--ink);-webkit-tap-highlight-color:transparent;font-family:Nunito,system-ui,sans-serif;font-size:19px;font-weight:600}*{box-sizing:border-box;margin:0;padding:0}html,body,#root{height:100%}body{-webkit-user-select:none;user-select:none;background:#15161a;overflow:hidden}button{font:inherit;color:inherit;cursor:pointer;background:0 0;border:0}.desk{background:radial-gradient(circle at 50% 30%,#3e4048,#15161a 70%);place-items:center;height:100dvh;display:grid}.phone{width:100%;height:100%;position:relative}.notch{display:none}.phone-inner{background:radial-gradient(circle at 50% -10%, #c47a3f40, transparent 55%), linear-gradient(180deg, #2e3036 0%, var(--bg) 60%, #18191d 100%);flex-direction:column;height:100%;display:flex;position:relative;overflow:hidden}@media (hover:hover) and (pointer:fine) and (width>=460px) and (height>=640px){.phone{background:#0b0c0e;border-radius:48px;width:390px;height:min(844px,96vh);padding:12px;box-shadow:0 0 0 2px #30323a,0 30px 80px #000000b3}.notch{z-index:50;background:#0b0c0e;border-radius:20px;width:110px;height:30px;display:block;position:absolute;top:18px;left:50%;translate:-50%}.phone-inner{border-radius:38px}}.status-bar{z-index:10;padding:max(12px, env(safe-area-inset-top)) 16px 8px;justify-content:space-between;align-items:center;display:flex;position:relative}.pill-group{align-items:center;gap:6px;margin-left:auto;display:flex}.pill-group.status-left{margin-left:0}.pill{background:#ffffff14;border-radius:999px;align-items:center;gap:6px;padding:4px 12px;font-size:16px;font-weight:700;display:flex}.bag-btn{padding:2px 10px;position:relative}.map-btn{gap:2px;padding:2px 10px;font-size:20px}.bag-btn .badge{top:-6px;right:-6px}.pill.gold-pill{color:var(--gold);overflow:hidden}.screen-area{z-index:2;flex:1;position:relative;overflow:hidden}.screen{scrollbar-width:none;padding:8px 18px 36px;position:absolute;inset:0;overflow:hidden}@media (hover:hover) and (pointer:fine) and (width>=460px) and (height>=640px){.status-bar{padding-top:52px}}.badge{color:#fff;background:#e0795b;border-radius:9px;min-width:18px;height:18px;padding:0 5px;font-size:13px;font-weight:800;line-height:18px;position:absolute;top:0;right:18%}.dust{pointer-events:none;z-index:1;position:absolute;inset:0;overflow:hidden}.speck{background:var(--gold);filter:blur(.5px);border-radius:50%;animation:linear infinite float;position:absolute;top:105%}@keyframes float{0%{opacity:0;top:105%;transform:translate(0)}50%{opacity:.8;transform:translateX(var(--drift))}to{opacity:0;top:-5%;transform:translate(0)}}.toasts{z-index:40;pointer-events:none;flex-direction:column;align-items:center;gap:8px;display:flex;position:absolute;top:96px;left:0;right:0}.toast{pointer-events:auto;background:var(--ink);max-width:90%;color:var(--bg);border-radius:999px;align-items:center;gap:8px;padding:8px 16px;font-weight:800;display:flex;box-shadow:0 8px 24px #00000080}.toast-emoji{font-size:22px}.confetti-layer{z-index:45;pointer-events:none;position:absolute;top:40%;left:50%}.confetti{width:10px;height:14px;position:absolute}.screen-title{text-align:center;margin-bottom:10px;font-size:30px;font-weight:800;line-height:1.1}.subtitle{color:var(--muted);text-align:center;line-height:1.3}.gold{color:var(--gold);text-shadow:0 0 20px #e0a46e80}.btn{border-radius:var(--radius);background:linear-gradient(180deg, var(--gold), var(--amber));color:#2b2d33;width:100%;margin-top:14px;padding:14px 20px;font-size:20px;font-weight:800;display:block;box-shadow:0 6px #9a5f30,0 12px 24px #c47a3f4d}.btn-big{padding:18px;font-size:24px}.btn-ghost{color:var(--ink);background:#ffffff14;box-shadow:0 5px #0006}.link{color:var(--muted);margin-top:18px;font-size:16px;text-decoration:underline}.home{flex-direction:column;align-items:center;padding-top:4px;display:flex}.home h1{text-align:center;margin:8px 0;font-size:30px;line-height:1.05}.home-logo{justify-content:center;width:100%;display:flex;margin:0!important}.home-logo img{filter:drop-shadow(0 8px 18px #00000073);width:min(100%,320px);height:auto}.hint.center{text-align:center;margin-top:0}.back{background:#ffffff14;border-radius:999px;align-self:flex-start;padding:6px 14px;font-weight:700}.all-done{border-radius:var(--radius);color:var(--green);text-align:center;background:#9be38b26;margin-top:16px;padding:12px 16px;font-weight:700}.section-title{text-align:center;margin:20px 0 10px;font-size:22px}.steps{flex-direction:column;gap:6px;width:100%;margin:10px 0 4px;list-style:none;display:flex}.steps li{background:#ffffff12;border-radius:16px;align-items:center;gap:12px;padding:8px 14px;font-weight:700;display:flex}.steps li span{font-size:26px}.ore{background:radial-gradient(circle at 30% 28%, #ffffff8c, transparent 30%), radial-gradient(circle at 70% 70%, #00000059, transparent 55%), var(--c);box-shadow:inset -4px -6px 0 #00000040, 0 0 18px color-mix(in srgb, var(--c) 60%, transparent);border-radius:42% 58% 52% 48%/55% 45%;display:inline-block;position:relative}.ore:after{content:"✦";color:#fff;font-size:.3em;animation:1.6s ease-in-out infinite twinkle;position:absolute;top:12%;right:18%}.ore{font-size:inherit}@keyframes twinkle{0%,to{opacity:0;transform:scale(.4)rotate(0)}50%{opacity:1;transform:scale(1.2)rotate(90deg)}}.ingot{clip-path:polygon(14% 0,86% 0,100% 100%,0 100%);background:linear-gradient(180deg, color-mix(in srgb, var(--c) 50%, white) 0 30%, var(--c) 30% 100%);filter:drop-shadow(0 0 10px color-mix(in srgb, var(--c) 70%, transparent));display:inline-block}.village{flex-direction:column;flex:1 0 auto;margin:0 -8px;display:flex}.village-map{border-radius:var(--radius);background:radial-gradient(circle at 20% 80%,#9be38b40,#0000 40%),radial-gradient(circle at 80% 40%,#9be38b33,#0000 40%),linear-gradient(#5b6b4a 0%,#4b6a3c 30%,#3f5e34 100%);flex:1;min-height:460px;position:relative;overflow:hidden;box-shadow:inset 0 0 0 3px #00000040}.rails{width:100%;height:100%;position:absolute;inset:0;overflow:visible}.rails path{fill:none;stroke-linejoin:round;stroke-linecap:butt}.rails-ties{stroke:#6e4320;stroke-width:18px;stroke-dasharray:4 7}.rails-iron{stroke:#9aa0aa;stroke-width:10px;filter:drop-shadow(0 1px #00000080)}.rails-gap{stroke:#4d6a3e;stroke-width:6px}.decor{transform-origin:bottom;pointer-events:none;font-size:28px;position:absolute;translate:-50% -50%}.place{z-index:2;background:radial-gradient(circle at 35% 30%, color-mix(in srgb, var(--c) 70%, white), var(--c));width:64px;height:64px;box-shadow:0 6px 0 color-mix(in srgb, var(--c) 55%, black), 0 0 24px color-mix(in srgb, var(--c) 50%, transparent);border-radius:20px;place-items:center;display:grid;position:absolute;translate:-50% -50%}.place.final{width:80px;height:80px;box-shadow:0 0 0 4px var(--gold), 0 0 0 8px #6e4320, 0 8px 0 #2b2d33, 0 0 30px #e0a46e99;border-radius:24px}.place-step{z-index:2;min-width:26px;height:26px;font-family:var(--title-font);background:var(--ink);color:var(--bg);border-radius:13px;place-items:center;padding:0 5px;font-size:15px;display:grid;position:absolute;top:-10px;left:-10px;box-shadow:0 2px #00000059}.place.final .place-step{background:var(--gold);font-family:inherit}.place.final .place-label{border:1px solid var(--gold)}.place-sparkle{z-index:2;pointer-events:none;font-size:22px;position:absolute;top:-14px;right:-12px}.place.locked{filter:grayscale(.9)brightness(.7)}.place{transition:filter .6s}.place.unvisited{filter:grayscale(.7)brightness(.88)}.place.found:after{content:"✓";background:var(--green);color:#16361a;border-radius:50%;width:24px;height:24px;font-size:16px;font-weight:800;line-height:24px;position:absolute;top:-6px;right:-6px}.place-thumb{display:block;position:absolute;inset:4px}.place-photo{border-radius:inherit;width:100%;height:100%;display:block;overflow:hidden}.place-photo img{object-fit:cover;width:100%;height:100%;display:block}.place-thumb .place-photo{border-radius:18px}.place.locked .place-photo img{filter:grayscale()brightness(.7)}.place-badge{filter:drop-shadow(0 2px 2px #0009);font-size:24px;line-height:1;position:absolute;bottom:-8px;left:-8px}.place-lock{font-size:22px;position:absolute;bottom:-4px;right:-4px}.place-label{white-space:normal;text-align:center;background:#0000008c;border-radius:8px;width:max-content;max-width:112px;padding:2px 6px;font-size:13px;font-weight:800;line-height:1.15;position:absolute;top:calc(100% + 6px);left:50%;translate:-50%}.place-ping{border:3px solid var(--c);border-radius:26px;animation:1.6s ease-out infinite ping;position:absolute;inset:-6px}@keyframes ping{0%{opacity:1;transform:scale(.9)}to{opacity:0;transform:scale(1.4)}}.cart{z-index:3;pointer-events:none;filter:drop-shadow(0 4px 2px #00000080);margin-top:30px;margin-left:36px;position:absolute;translate:-50% -50%}.step{flex-direction:column;align-items:center;display:flex}.step-hero{width:100%;height:190px;box-shadow:0 0 0 3px var(--c), 0 12px 30px #00000080;border-radius:26px;margin:8px 0 22px;position:relative}.step-hero-zoom{border-radius:26px;position:absolute;inset:0;overflow:hidden}.step-hero-zoom .place-photo{border-radius:0}.step-hero-badge{filter:drop-shadow(0 3px 4px #0009);font-size:40px;line-height:1;position:absolute;bottom:-14px;right:14px}.step-body{flex-direction:column;align-items:center;width:100%;display:flex}.hint{color:var(--gold);margin-top:16px;font-weight:700}.rewards{flex-wrap:wrap;justify-content:center;gap:12px;width:100%;margin-top:10px;display:flex}.reward-card{text-align:center;border-radius:var(--radius);max-width:220px;box-shadow:0 0 0 2px var(--gold);background:linear-gradient(#3e4048,#2b2d33);flex-direction:column;flex:140px;align-items:center;gap:6px;padding:16px 12px;display:flex;position:relative;overflow:hidden}.reward-card>*{position:relative}.reward-card strong{color:var(--gold);font-size:18px}.reward-card span{color:var(--muted);font-size:14px;line-height:1.25}.rays.small{width:300px;height:300px;margin-left:-150px;top:-30%}.res-emoji{line-height:1;display:inline-block}.discovery{z-index:20;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0a060cbf;place-items:center;padding:20px;display:grid;position:absolute;inset:-8px -18px}.discovery-card{text-align:center;width:100%;box-shadow:0 0 0 3px var(--gold), 0 20px 50px #0009;background:linear-gradient(#3e4048,#2b2d33);border-radius:30px;flex-direction:column;align-items:center;gap:8px;padding:28px 20px 20px;display:flex;position:relative;overflow:hidden}.discovery-card>*{position:relative}.discovery-card h3{color:var(--gold);font-size:26px;line-height:1.1}.discovery-card p{color:var(--muted)}.rays{background:repeating-conic-gradient(#e0a46e24 0 10deg, transparent 10deg 20deg);width:500px;height:500px;margin-left:-250px;animation:12s linear infinite spin;top:-40%;left:50%;position:absolute!important}@keyframes spin{to{transform:rotate(360deg)}}.bag-grid{grid-template-columns:repeat(3,1fr);gap:12px;display:grid}.bag-slot{aspect-ratio:1;border-radius:var(--radius);background:#ffffff14;flex-direction:column;justify-content:center;align-items:center;gap:4px;display:flex;position:relative;box-shadow:inset 0 -5px #0000004d}.bag-slot.empty{opacity:.45}.bag-photo{border-radius:14px;width:54px;height:54px}.bag-slot.empty .bag-photo img{filter:grayscale()brightness(.8)}.bag-emoji{font-size:36px}.bag-name{font-size:14px;font-weight:700}.bag-check{font-size:20px;position:absolute;top:-6px;right:-4px}.metal-row{flex-wrap:wrap;justify-content:center;gap:12px;display:flex}.metal{flex-direction:column;align-items:center;gap:4px;font-size:15px;font-weight:700;display:flex}.sheet-backdrop{z-index:20;background:#00000080;align-items:flex-end;display:flex;position:absolute;inset:-8px -18px -24px}.sheet{text-align:center;background:#33353c;border-radius:30px 30px 0 0;flex-direction:column;align-items:center;gap:8px;width:100%;padding:24px 20px 20px;display:flex;box-shadow:0 -10px 30px #00000080}.sheet h3{font-size:26px}.sheet p{color:var(--muted)}.sheet-metal{align-items:center;gap:8px;font-weight:700;display:flex;color:var(--ink)!important}.foundry{flex-direction:column;align-items:center;display:flex}.foundry-emoji{margin-top:20px;font-size:90px}.foundry-emoji.locked{filter:grayscale(.8)}.missing{gap:10px;margin:16px 0 4px;display:flex}.missing-item{background:#ffffff14;border-radius:14px;place-items:center;width:50px;height:50px;font-size:30px;display:grid}.furnace{width:220px;height:220px;box-shadow:inset 0 -10px 0 #0000004d, 0 0 calc(20px + var(--heat) * 60px) rgba(255, 120, 40, calc(.2 + var(--heat) * .7));background:linear-gradient(#5a3b33,#3a2620);border-radius:110px 110px 24px 24px;flex-direction:column;justify-content:flex-end;align-items:center;margin:16px 0 8px;padding-bottom:16px;display:flex;position:relative}.flames{font-size:calc(60px + var(--heat) * 50px);transform-origin:bottom;filter:saturate(calc(1 + var(--heat)));position:absolute;bottom:70px}.crucible{z-index:1;width:110px;height:70px;box-shadow:inset 0 6px 0 rgba(255, 140, 60, calc(var(--heat) * .8));background:#2a1c18;border-radius:10px 10px 40px 40px;place-items:center;margin-bottom:10px;display:grid;position:relative}.victory{text-align:center;flex-direction:column;align-items:center;gap:12px;width:100%;margin-top:10px;padding:20px 4px;display:flex}.victory h3{color:var(--gold);font-size:26px}.trophy{font-size:70px}.sheet-metal-item{align-items:center;gap:4px;display:inline-flex}.missing-item .place-photo{border-radius:14px}.next-place{border-radius:var(--radius);background:color-mix(in srgb, var(--n) 16%, var(--rock-2));width:100%;box-shadow:inset 0 0 0 2px color-mix(in srgb, var(--n) 50%, transparent);flex-direction:column;gap:10px;margin-top:18px;padding:14px;display:flex}.next-title{color:var(--green);font-weight:800}.next-photo{border-radius:18px;height:150px;position:relative;overflow:hidden}.next-name{background:linear-gradient(#0000,#000000bf);padding:24px 12px 8px;font-size:20px;font-weight:800;position:absolute;bottom:0;left:0;right:0}.cairns{align-items:center;gap:10px;line-height:1.3;display:flex}.cairn-icon{font-size:30px;display:inline-block}.next-left{color:var(--muted);font-size:15px}.sound-toggle{justify-content:center;padding:4px 10px}.sound-toggle.off{color:var(--muted);background:#ffffff0a}.sound-icon{font-size:22px;display:inline-block}.timer{font-variant-numeric:tabular-nums}.timer.warning{color:#ffb39a;background:#e0795b40}.timer.over{color:#fff;background:#e0795b}.time-up-icon{font-size:80px}.discovery.time-up{z-index:45;inset:0}.hidden-game{flex-direction:column;align-items:center;gap:10px;width:100%;margin-top:6px;display:flex}.hidden-title{font-size:24px}.hidden-game .hint{margin-top:0}.zoom-badge{background:#0009;border-radius:999px;padding:2px 10px;font-size:14px;font-weight:800;position:absolute;bottom:8px;right:8px}.object-grid{grid-template-columns:1fr 1fr;gap:10px;width:100%;display:grid}.object-card{background:#ffffff14;border-radius:18px;flex-direction:column;align-items:center;gap:6px;padding:12px 8px;display:flex;position:relative;box-shadow:inset 0 -4px #0000004d}.object-card.wrong{background:#e0795b33}.object-card.right{box-shadow:0 0 0 3px var(--green);background:#9be38b40}.object-visual{border-radius:14px;place-items:center;width:72px;height:72px;display:grid;overflow:hidden}.object-visual img{object-fit:cover;width:100%;height:100%}.object-emoji{font-size:48px}.object-name{font-size:15px;font-weight:800}.object-mark{background:var(--ink);width:26px;height:26px;color:var(--bg);border-radius:50%;place-items:center;font-weight:800;display:grid;position:absolute;top:-6px;right:-6px}.object-card.wrong .object-mark{color:#fff;background:#e0795b}.object-card.right .object-mark{background:var(--green);color:#16361a}.try-again{color:#ffb39a;text-align:center;font-weight:700}.story{flex-direction:column;align-items:center;gap:10px;width:100%;margin-top:6px;display:flex}.story-title{font-size:24px}.story-stage{width:100%;position:relative}.story-card{touch-action:pan-y;box-shadow:0 0 0 3px var(--c), 0 12px 30px #00000073;cursor:grab;background:linear-gradient(#3e4048,#2b2d33);border-radius:24px;position:relative;overflow:hidden}.story-photo{background:radial-gradient(circle at 50% 40%, color-mix(in srgb, var(--s) 70%, white), var(--s));place-items:center;height:170px;display:grid;overflow:hidden}.story-photo img{object-fit:cover;pointer-events:none;width:100%;height:100%}.story-emoji{filter:drop-shadow(0 6px 8px #0000004d);font-size:90px}.story-text{padding:14px 16px 18px}.story-text strong{color:var(--gold);font-size:20px}.story-text p{color:var(--ink);margin-top:6px;line-height:1.4}.story-nav{align-items:center;gap:14px;display:flex}.story-arrow{background:#ffffff1a;border-radius:50%;width:44px;height:44px;font-size:22px;font-weight:800}.story-arrow:disabled{opacity:.3}.story-dots{gap:6px;display:flex}.story-dot{background:var(--gold);border-radius:4px;height:8px;display:block}.quiz-question{text-align:center;font-weight:700;line-height:1.35}.stage-steps{gap:10px;margin-bottom:10px;list-style:none;display:flex}.stage-steps li span{width:34px;height:34px;color:var(--muted);background:#ffffff14;border-radius:50%;place-items:center;font-weight:800;display:grid}.stage-steps li.current span{background:var(--gold);color:#2b2d33;box-shadow:0 0 14px #e0a46e99}.stage-steps li.done span{background:var(--green);color:#16361a}.stage-card{flex-direction:column;gap:8px;width:100%;display:flex}.stage-card h3{font-size:22px;line-height:1.15}.stage-text{color:var(--muted);font-size:16px;line-height:1.4}.stage-action{text-align:left;color:var(--gold);background:#e0a46e24;border-radius:14px;align-items:center;gap:10px;padding:8px 12px;font-weight:800;display:flex}.stage-action-icon{flex:none;font-size:34px;line-height:1}.stage{flex-direction:column;align-items:center;gap:10px;display:flex}.stage-visual{place-items:center;width:100%;height:190px;display:grid;position:relative}.stage-progress{background:#0006;border-radius:9px;width:100%;height:18px;position:relative;overflow:hidden}.stage-progress-fill{background:linear-gradient(90deg, var(--amber), var(--gold));height:100%}.stage-progress span{text-align:center;font-size:14px;font-weight:800;line-height:18px;position:absolute;inset:0}.shake-rock{line-height:1;transition:font-size .3s;display:inline-block}.pebble{background:radial-gradient(circle at 30% 30%,#b8bfca,#6b7380);border-radius:40% 60% 50% 45%;width:16px;height:13px;position:absolute;top:45%;left:50%}.stage .furnace{margin:0}.fumes{color:#f5f0a0;pointer-events:none;font-size:15px;font-weight:800;position:absolute;top:20px}.mic-meter{align-items:center;gap:8px;width:100%;display:flex}.mic-bar{background:#0006;border-radius:5px;flex:1;height:10px;position:relative;overflow:hidden}.mic-fill{background:linear-gradient(90deg,#7cc6f2,#fff);height:100%}.mic-threshold{background:var(--gold);width:2px;position:absolute;top:0;bottom:0}.coupelle{touch-action:none;background:radial-gradient(at 50% 40%,#5a3b33,#2a1c18 75%);border-radius:50%/30%;width:100%;height:128px;position:relative;box-shadow:inset 0 -10px 20px #ff782859}.coupelle-label{text-align:center;color:var(--muted);font-size:13px;position:absolute;bottom:8px;left:0;right:0}.metal-piece{touch-action:none;cursor:grab;border-radius:45% 55% 50% 40%/50% 45% 55% 50%;width:34px;height:34px;position:absolute;box-shadow:0 3px 6px #0006}.metal-piece.argent{background:radial-gradient(circle at 28% 24%,#fff 0 14%,#0000 22%),radial-gradient(circle at 70% 75%,#aadcffe6 0 8%,#0000 16%),radial-gradient(circle,#f7fbff,#d6e6f5 45%,#9fb8cf);animation:1.6s ease-in-out infinite silver-glow}.metal-piece.argent:after{content:"✦";color:#fff;text-shadow:0 0 6px #fff,0 0 12px #bfe3ff;pointer-events:none;font-size:15px;animation:1.6s ease-in-out infinite twinkle;position:absolute;top:-8px;right:-6px}@keyframes silver-glow{50%{box-shadow:0 0 14px 4px #dcf0ffd9,0 3px 6px #0006}}.metal-piece.scories{background:radial-gradient(circle at 30% 70%,#00000059 0 10%,#0000 14%),radial-gradient(circle at 65% 35%,#0000004d 0 8%,#0000 12%),radial-gradient(circle at 35% 30%,#8a6a4c,#4e3a2a 60%,#2a1e16);border-radius:30% 60% 40% 55%/55% 35% 60% 40%}.piece-formula{pointer-events:none;color:#2a1a10;place-items:center;font-size:12px;font-weight:900;line-height:1;display:grid;position:absolute;inset:0}.metal-piece.scories .piece-formula{color:#f2f2f2}.metal-piece.plomb{background:linear-gradient(135deg,#ffffff47 0 18%,#0000 30%),linear-gradient(160deg,#8a95a5,#5d6776 50%,#3f4752);border-radius:22% 30% 26% 34%/30% 24% 34% 26%;box-shadow:inset 0 -3px 4px #00000059,0 3px 6px #00000073}.metal-piece.plomb:before{content:"";border-radius:inherit;pointer-events:none;background:linear-gradient(115deg,#0000 30%,#ebf2ff8c 48%,#0000 62%) -40px 0/200% 100% no-repeat;animation:3.2s ease-in-out infinite lead-sheen;position:absolute;inset:0}@keyframes lead-sheen{0%,40%{background-position:-40px 0}80%,to{background-position:40px 0}}.metal-piece.fixed{cursor:not-allowed}.metal-piece.plomb .piece-formula{color:#f2f2f2}.metal-piece.small{cursor:default;width:18px;height:18px;position:relative}.victory p{color:var(--muted)}.code-form{flex-direction:column;align-items:center;gap:4px;width:100%;display:flex}.code-input{border:3px solid var(--c);width:100%;color:var(--ink);text-align:center;font:inherit;letter-spacing:.25em;text-transform:uppercase;background:#00000059;border-radius:18px;padding:14px;font-size:32px;font-weight:800}.code-input::placeholder{color:#ffffff4d;letter-spacing:.05em;font-size:22px}.code-input:focus{box-shadow:0 0 0 4px color-mix(in srgb, var(--c) 40%, transparent);outline:none}.code-form.right .code-input{border-color:var(--green);color:var(--green)}.code-form .btn:disabled{opacity:.5}.mystery-icon{font-size:56px;display:inline-block}.where-photo{width:100%}.sheet .cairns{text-align:left;color:var(--ink)}.sheet .btn+.btn{margin-top:8px}.reset-link{color:var(--muted);opacity:.55;margin-top:18px;font-size:14px;text-decoration:underline}.discovery.reset-confirm{z-index:40;inset:-8px -18px}.btn-danger{color:#fff;background:linear-gradient(#f28b5b,#e0352b);box-shadow:0 6px #9c2418}.popup-backdrop{z-index:50;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0a060cb3;place-items:center;padding:24px;display:grid;position:absolute;inset:0}.popup-card{text-align:center;width:100%;box-shadow:0 0 0 3px var(--green), 0 20px 50px #0009;background:linear-gradient(#3e4048,#2b2d33);border-radius:30px;flex-direction:column;align-items:center;gap:10px;padding:26px 20px 20px;display:flex;position:relative;overflow:hidden}.popup-card>*{position:relative}.popup-card .rays{position:absolute!important}.popup-emoji{font-size:64px;line-height:1}.popup-card h3{color:var(--green);font-size:28px;line-height:1.1}.popup-card p{color:var(--ink);line-height:1.4}h1,h2,h3,.screen-title,.btn,.stage-card h3,.popup-card h3,.discovery-card h3,.menu-body strong{font-family:var(--title-font);letter-spacing:.01em;font-weight:400}p,li{line-height:1.45}.vintage-icon{filter:drop-shadow(0 2px 2px #00000059);flex-shrink:0;display:inline-block}.pill .vintage-icon{filter:none}.marmite{aspect-ratio:2.1;touch-action:none;cursor:pointer;width:100%;margin:14px 0 8px;position:relative}.marmite-bowl{background:#2a1c18;border-radius:8px 8px 50% 50%/8px 8px 70% 70%;position:absolute;inset:0;overflow:hidden;box-shadow:inset 0 0 0 6px #4a4f57,inset 0 -14px 24px #0009,0 0 26px #ff781e73}.marmite-liquid{transform-origin:50% 0;background:linear-gradient(#fff1a8,#ffb33a 10%,#f06a1e 45%,#a8300e);width:180%;height:140%;animation:1.8s ease-in-out infinite melt-glow;position:absolute;left:-40%;box-shadow:0 -4px 14px #ffc850cc}@keyframes melt-glow{50%{filter:brightness(1.15)}}.tilt-gauge{background:#ffffff14;border-radius:7px;width:100%;height:14px;position:relative;overflow:visible}.tilt-zone{position:absolute;top:0;bottom:0}.tilt-zone.good{background:#9be38b8c}.tilt-zone.danger{background:#e0795b8c}.tilt-zone.danger:first-child{border-radius:7px 0 0 7px}.tilt-zone.danger:nth-child(4){border-radius:0 7px 7px 0}.tilt-needle{background:var(--ink);border-radius:3px;width:6px;position:absolute;top:-5px;bottom:-5px;translate:-50%;box-shadow:0 0 6px #0009}.tilt-needle.good{background:var(--green)}.tilt-needle.danger{background:#ff6a4a;box-shadow:0 0 10px #ff6a4a}.metal-piece.melt{pointer-events:none;width:32px;height:32px;cursor:inherit;translate:-50% -50%}.creuset{height:150px}.trash-bin{background:#8a8a8a24;border:3px dashed #8a8a8a;border-radius:18px;justify-content:center;align-items:center;gap:12px;width:100%;padding:10px 14px;display:flex}.trash-icon{font-size:44px;line-height:1;display:inline-block}.trash-bin div{flex-direction:column;display:flex}.trash-bin strong{font-size:17px}.trash-bin em{color:var(--muted);font-style:normal;font-weight:800}.sort-oops{z-index:5;pointer-events:none;text-align:center;color:#fff;background:#e0795be6;border-radius:12px;padding:4px 10px;font-size:13px;font-weight:800;position:absolute;top:6px;left:8px;right:8px}.rotate-overlay{display:none}@media (orientation:landscape) and (pointer:coarse){.rotate-overlay{z-index:1000;text-align:center;color:var(--ink);background:#23252a;flex-direction:column;justify-content:center;align-items:center;gap:10px;padding:24px;display:flex;position:fixed;inset:0}.rotate-overlay strong{font-family:var(--title-font);color:var(--gold);font-size:28px;font-weight:400}.rotate-overlay span{color:var(--muted);font-size:18px}.rotate-overlay .rotate-phone{color:inherit;font-size:72px;display:inline-block}}.victory .victory-message{color:var(--ink);font-size:19px;line-height:1.4}.fit-outer{height:100%;overflow:hidden}.fit-outer.scroll{scrollbar-width:none;overflow-y:auto}.fit-inner{transform-origin:top;flex-direction:column;min-height:100%;display:flex}.fit-inner>*{flex-shrink:0}.step-hero{text-align:left;cursor:zoom-in;padding:0;display:block}.step-hero .zoom-badge{z-index:1}.photo-viewer{z-index:60;cursor:zoom-out;background:#08050af2;flex-direction:column;justify-content:center;align-items:center;gap:10px;padding:16px;display:flex;position:absolute;inset:0}.photo-viewer img{object-fit:contain;border-radius:16px;max-width:100%;max-height:78%;box-shadow:0 10px 40px #0009}.photo-viewer-name{font-family:var(--title-font);color:var(--gold);text-align:center;font-size:22px}.photo-viewer-close{color:var(--muted);font-size:14px}.next-photo{height:116px}.stage-visual{height:165px}.reward-card{padding:12px 10px}.home-slides{width:100%;margin:14px 0 8px}.home-intro{text-align:center;touch-action:pan-y;cursor:grab;background:#ffffff12;border-radius:18px;flex-direction:column;align-items:center;gap:8px;width:100%;padding:14px 16px;font-size:18px;line-height:1.5;display:flex}.home-intro strong{font-family:var(--title-font);color:var(--gold);font-size:21px;font-weight:400;line-height:1.2}.home-photo{border-radius:14px;width:100%;height:160px;display:block;position:relative;overflow:hidden}.home-photo img{object-fit:cover;object-position:center 45%;pointer-events:none;width:100%;height:100%}.home-nav{margin-bottom:12px}.step-number{font-family:var(--title-font);letter-spacing:.04em;background:color-mix(in srgb, var(--c) 35%, transparent);color:var(--ink);border-radius:999px;margin:2px 0;padding:2px 14px;font-size:15px}.step-top{justify-content:space-between;align-items:center;gap:8px;width:100%;display:flex}.step-top .back{align-self:auto}.photo-btn{font-size:14px}.shelf-game{flex-direction:column;align-items:center;gap:12px;width:100%;margin-top:8px;display:flex}.shelf{background:linear-gradient(#4a2e1a,#3a2414);border-radius:14px;width:100%;padding:10px 12px 4px;box-shadow:inset 0 0 0 4px #6e4320,0 10px 24px #00000080}.shelf-row{border-bottom:8px solid #9a6331;justify-content:space-around;align-items:flex-end;gap:4px;min-height:70px;margin-bottom:8px;padding-bottom:4px;display:flex;box-shadow:0 6px 0 -2px #5e3618}.shelf-item,.shelf-reward{flex-direction:column;flex:1 1 0;justify-content:flex-end;align-items:center;gap:4px;min-width:0;display:flex}.shelf-item>.ingot,.shelf-item>.rock-sample{filter:drop-shadow(0 3px 2px #00000073)}.shelf-label{color:#3a2414;text-align:center;background:#efe2c2;border-radius:4px;max-width:100%;padding:1px 6px;font-size:12px;font-weight:800;line-height:1.15;box-shadow:0 1px 2px #0006}.rock-sample{clip-path:polygon(8% 70%,18% 22%,42% 4%,70% 12%,94% 38%,100% 82%,74% 100%,26% 100%);background:radial-gradient(circle at 32% 30%, var(--s) 0 9%, transparent 10%), radial-gradient(circle at 64% 56%, var(--s) 0 6%, transparent 7%), linear-gradient(135deg, color-mix(in srgb, var(--c) 60%, white), var(--c) 45%, color-mix(in srgb, var(--c) 55%, black));width:44px;height:32px}.shelf-slot{border:2px dashed #e0a46e73;border-radius:10px;flex:1 1 0;place-items:center;min-width:0;height:62px;animation:1.2s ease-in-out infinite shelf-glow;display:grid;position:relative}.shelf-slot.filled{border-color:#0000;animation:none;box-shadow:0 0 24px #e0a46eb3}@keyframes shelf-glow{50%{box-shadow:0 0 18px #e0a46e80}}.shelf-spark{pointer-events:none;font-size:16px;position:absolute}.shelf-message{border-radius:var(--radius);text-align:center;width:100%;box-shadow:inset 0 0 0 2px var(--green);background:#9be38b26;flex-direction:column;align-items:center;gap:10px;padding:12px;display:flex}.shelf-message p{color:var(--green);font-family:var(--title-font);font-size:22px;line-height:1.2}
