html:has(.run),html:has(.run) body{height:100%;overflow:hidden;overscroll-behavior:none}.run{position:fixed;inset:0;background:#cfeaf3;color:var(--ink);-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;touch-action:none}#run-canvas{position:absolute;inset:0;width:100%;height:100%;display:block;cursor:pointer}.run-bar{position:absolute;left:0;right:0;top:0;z-index:2;display:flex;align-items:center;gap:10px;padding:calc(8px + env(safe-area-inset-top,0px)) calc(10px + env(safe-area-inset-right,0px)) 0 calc(10px + env(safe-area-inset-left,0px));pointer-events:none}.run-bar>*{pointer-events:auto}.r-tools{display:flex;gap:8px;margin-left:auto}.r-btn{display:grid;place-items:center;width:46px;height:46px;padding:0;border:0;border-radius:50%;cursor:pointer;background:#ffffffd9;color:var(--ink);box-shadow:0 6px 14px -8px var(--shadow)}.r-btn svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:2.6;stroke-linecap:round;stroke-linejoin:round}#r-sound .off,#r-sound[aria-pressed=false] .on{display:none}#r-sound[aria-pressed=false] .off{display:block}.hud{display:flex;align-items:center;gap:10px;min-width:0;padding:4px 10px 4px 6px;border-radius:999px;background:#ffffffd9;box-shadow:0 6px 14px -8px var(--shadow)}.hud-sparkles{display:inline-flex;align-items:center;gap:4px;font-family:var(--font-display);font-weight:800;font-size:22px;line-height:1;color:#b37a00}.hud-sparkles svg{width:26px;height:26px;fill:var(--sand);stroke:#d99a00;stroke-width:1.2;stroke-linejoin:round}.hud-sparkles b.bump{animation:bump .3s}@keyframes bump{50%{transform:scale(1.35)}}.hud-treasures{display:flex;gap:2px;margin:0;padding:0;list-style:none}.hud-treasures li{width:34px;height:34px}.hud-treasures img{width:100%;height:100%;object-fit:contain;filter:grayscale(1) brightness(1.15);opacity:.3;transition:opacity .3s,filter .3s}.hud-treasures li.got img{filter:drop-shadow(0 2px 3px var(--shadow));opacity:1;animation:got .6s cubic-bezier(.3,1.6,.5,1)}@keyframes got{0%{transform:scale(2.4)}}@media(max-width:560px){.hud-treasures li{width:24px;height:24px}.hud{gap:6px}}@media(max-width:440px){.hud-treasures{gap:0}.hud-treasures li{width:18px;height:18px}.r-tools{gap:6px}.r-btn{width:42px;height:42px}}.track{position:absolute;z-index:1;left:50%;top:calc(62px + env(safe-area-inset-top,0px));width:min(420px,60%);height:6px;translate:-50% 0;border-radius:3px;background:#fff9;pointer-events:none}.track-fill{position:absolute;inset:0 auto 0 0;width:0;border-radius:3px;background:var(--accent)}.track-whyia{position:absolute;top:50%;left:0;width:30px;height:30px;translate:-50% -50%;border-radius:50%;background:#fff;box-shadow:0 2px 6px var(--shadow);object-fit:cover;object-position:50% 20%}.track-flag{position:absolute;right:-4px;top:-16px;width:4px;height:22px;background:#8a5a2b;border-radius:2px}.track-flag:after{content:"";position:absolute;left:4px;top:0;border-left:16px solid var(--accent);border-top:6px solid transparent;border-bottom:6px solid transparent}.spell,.found{position:absolute;z-index:2;left:50%;top:calc(86px + env(safe-area-inset-top,0px));translate:-50% 0;margin:0;max-width:calc(100% - 24px);padding:10px 18px;border-radius:22px;background:#fffffff0;box-shadow:0 12px 30px -16px var(--shadow);text-align:center;pointer-events:none;animation:pop-in .45s cubic-bezier(.3,1.5,.5,1)}.spell{top:auto;bottom:calc(18px + env(safe-area-inset-bottom,0px))}.spell{font-family:var(--font-display);font-weight:800;font-size:clamp(18px,2.6vw,26px);line-height:1.2;color:#7a3fc0}.found{display:flex;align-items:center;gap:12px;text-align:left}.found img{width:64px;height:64px;object-fit:contain}.found span{display:grid;line-height:1.15}.found small{color:var(--ink-soft);font-weight:700}.found strong{font-family:var(--font-display);font-size:24px;color:var(--accent);text-transform:capitalize}@keyframes pop-in{0%{opacity:0;transform:translateY(-14px) scale(.8)}}.card{position:absolute;z-index:3;left:50%;top:50%;translate:-50% -50%;width:min(520px,calc(100% - 24px));display:grid;justify-items:center;gap:8px;padding:22px 22px 24px;border-radius:30px;text-align:center;background:#fffffff2;box-shadow:0 30px 70px -30px var(--shadow);animation:pop-in .5s cubic-bezier(.3,1.4,.5,1)}.card h1,.card h2{font-size:clamp(34px,6vw,52px);color:var(--accent)}.card-sub{margin:-6px 0 0;font-family:var(--font-display);font-weight:800;font-size:22px;color:var(--sea)}.card-whyia{width:150px;height:auto;margin:-90px 0 -6px;filter:drop-shadow(0 12px 16px var(--shadow))}.how{display:flex;align-items:center;gap:12px;margin:6px 0;color:var(--ink-soft);text-align:left;max-width:380px}.how kbd{padding:1px 7px;border-radius:6px;border:1px solid var(--line);background:var(--surface);font:inherit;font-weight:800}.tap{flex:none;width:46px;height:46px;border-radius:50%;background:var(--sand);box-shadow:0 0 #f5c33099;animation:tap 1.2s infinite}@keyframes tap{0%{box-shadow:0 0 #f5c330b3;transform:scale(.9)}50%{transform:scale(1)}to{box-shadow:0 0 0 18px #f5c33000;transform:scale(.9)}}.turn{display:none;margin:0;font-weight:700;color:var(--sea)}@media(orientation:portrait)and (max-width:700px){.turn{display:block}}.card .btn{font-size:22px;padding:14px 28px}.card .btn svg{width:22px;height:22px;fill:currentColor;stroke:currentColor;stroke-width:1.5;stroke-linejoin:round}#again-btn svg{fill:none;stroke-width:3;stroke-linecap:round}.card-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:10px;margin-top:8px}.card .btn.play{font-size:26px;padding:16px 36px}.stars{display:flex;gap:6px}.stars svg{width:54px;height:54px;fill:#dfe8e6;stroke:#bccbc8;stroke-width:1.2;stroke-linejoin:round}.stars svg.on{fill:var(--sand);stroke:#d99a00;animation:star-pop .6s cubic-bezier(.3,1.6,.5,1) both}.stars svg.on:nth-child(2){animation-delay:.25s}.stars svg.on:nth-child(3){animation-delay:.5s}@keyframes star-pop{0%{transform:scale(0) rotate(-90deg)}}.end-treasures{display:flex;flex-wrap:wrap;justify-content:center;gap:6px;margin:4px 0 0;padding:0;list-style:none}.end-treasures li{width:56px;height:56px;padding:4px;border-radius:16px;background:var(--surface)}.end-treasures img{width:100%;height:100%;object-fit:contain;filter:grayscale(1);opacity:.25}.end-treasures li.got{background:color-mix(in srgb,var(--sand) 25%,#fff)}.end-treasures li.got img{filter:none;opacity:1}@media(max-height:520px){.card{gap:4px;padding:14px 18px}.card-whyia{display:none}.card h1,.card h2{font-size:32px}}.card-back{position:absolute;left:14px;top:14px;display:inline-flex;align-items:center;gap:4px;padding:6px 12px 6px 6px;border-radius:999px;border:1px solid var(--line);background:var(--surface);color:var(--ink);text-decoration:none;font-weight:800;font-size:14px}.card-back svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:2.6;stroke-linecap:round;stroke-linejoin:round}.places{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;width:100%;margin:4px 0}.place{display:grid;justify-items:center;gap:2px;padding:8px 6px 10px;border:3px solid transparent;border-radius:22px;background:var(--surface);color:var(--ink);font:inherit;cursor:pointer;box-shadow:0 8px 18px -14px var(--shadow);transition:transform .15s,border-color .15s}.place:hover:not(:disabled){transform:translateY(-3px);border-color:var(--accent)}.place:disabled{opacity:.6;cursor:progress}.place.current{border-color:var(--sand)}.place img{width:100%;max-width:120px;height:auto;aspect-ratio:1;object-fit:contain}.place-name{font-family:var(--font-display);font-weight:800;font-size:19px;line-height:1.1;color:var(--sea)}.stars.small{gap:2px}.stars.small svg{width:20px;height:20px;animation:none}#next-btn .arrow{fill:none;stroke:currentColor;stroke-width:3;stroke-linecap:round;stroke-linejoin:round}.read-link{margin-top:6px;font-weight:800}.loading{position:absolute;z-index:3;left:50%;top:50%;translate:-50% -50%;margin:0;padding:14px 24px;border-radius:999px;background:#fffffff0;font-family:var(--font-display);font-weight:800;font-size:22px;color:var(--sea);box-shadow:0 20px 40px -20px var(--shadow)}@media(max-width:420px){.place-name{font-size:16px}.place{padding:6px 4px 8px}}@media(max-height:520px){.place img{max-width:64px}}.card.end,.card.share{max-height:calc(100% - 24px);overflow-y:auto}.share-btn{display:inline-flex;align-items:center;gap:8px;margin-top:4px;padding:10px 20px;border:2px solid var(--sea);border-radius:999px;background:#fff;color:var(--sea);font:inherit;font-weight:800;font-size:18px;cursor:pointer}.share-btn:hover{background:var(--sea);color:#fff}.share-btn:disabled{opacity:.6;cursor:progress}.share-btn svg,.share-opt svg,#share-back svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round;flex:none}.share-img{width:100%;max-width:460px;height:auto;aspect-ratio:1200 / 630;border-radius:16px;background:var(--bg-deep);box-shadow:0 10px 24px -14px var(--shadow)}.share-options{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;margin-top:4px}.share-opt{display:inline-flex;align-items:center;gap:6px;padding:9px 14px;border:1px solid var(--line);border-radius:999px;background:var(--surface);color:var(--ink);font:inherit;font-weight:800;font-size:16px;text-decoration:none;cursor:pointer}.share-opt:hover{border-color:var(--sea)}.share-opt.whatsapp svg{color:#1fa855}.share-opt.facebook svg{color:#1877f2;fill:currentColor;stroke:none}.share-note{min-height:1.4em;margin:0;font-weight:800;color:var(--sea)}#share-back{font-size:18px;padding:10px 22px}@media(max-height:520px){.share-img{max-width:300px}}.challenge{display:flex;align-items:center;gap:10px;margin:2px 0 4px;padding:10px 16px;border-radius:18px;text-align:left;background:color-mix(in srgb,var(--sand) 30%,#fff);border:2px solid var(--sand);font-weight:800;color:#6b4a00}.challenge svg{width:30px;height:30px;flex:none;fill:none;stroke:#c88a00;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}.record{margin:-4px 0 0;padding:4px 16px;border-radius:999px;background:var(--accent);color:#fff;font-family:var(--font-display);font-weight:800;font-size:20px;animation:star-pop .6s .6s cubic-bezier(.3,1.6,.5,1) both}.best{margin:-4px 0 0;color:var(--ink-soft);font-weight:700}.challenge-result{margin:4px 0 0;padding:8px 16px;border-radius:16px;font-weight:800}.challenge-result.beat{background:#e3f6e6;color:#1d6b32}.challenge-result.tie{background:color-mix(in srgb,var(--sand) 25%,#fff);color:#6b4a00}.challenge-result.lose{background:#e6f2f6;color:var(--sea)}
