.splash-screen{position:fixed;inset:0;isolation:isolate;z-index:1000;display:grid;place-items:end center;overflow:hidden;padding:max(1.25rem,env(safe-area-inset-top)) max(1.25rem,env(safe-area-inset-right)) max(1.5rem,env(safe-area-inset-bottom)) max(1.25rem,env(safe-area-inset-left));background:#173e42}.splash-screen__picture{position:absolute;inset:0;z-index:-2;display:block}.splash-screen__picture img{display:block;width:100%;height:100%;object-fit:cover;object-position:center}.splash-screen:after{position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,transparent 60%,#173e42a8 100%);content:"";pointer-events:none}.splash-screen__panel{display:grid;gap:.6rem;justify-items:center;width:min(22rem,90vw)}.splash-screen__brand{display:grid;justify-items:center;color:#fff9ee;text-align:center;text-shadow:0 .12rem .35rem #102411cc}.splash-screen__brand-name{font-size:clamp(2rem,9vw,3rem);font-weight:900;letter-spacing:.015em;line-height:1}.splash-screen__brand-subtitle{margin-top:.3rem;font-size:1rem;font-weight:750;line-height:1.2}.splash-screen__status{margin:0;padding:.65rem 1rem;border:.14rem solid #fff9ee;border-radius:999px;color:#fff;background:#173e42e8;box-shadow:0 .35rem 1rem #10241166;font-weight:750;line-height:1.2;text-align:center;text-shadow:0 .08rem .2rem #10241199}.splash-screen__progress{width:100%;height:.6rem;border-radius:999px;overflow:hidden;background:#fff3;box-shadow:inset 0 0 0 .08rem #fff9ee55}.splash-screen__progress-bar{height:100%;border-radius:inherit;background:#fff9ee;transition:width .2s ease}.splash-screen__credit{margin:0;color:#fff9eecc;font-size:.8rem;font-weight:600;text-align:center;text-shadow:0 .08rem .2rem #10241199}@media(prefers-reduced-motion:reduce){.splash-screen__status,.splash-screen__progress-bar{transition:none}}.scene{position:relative;isolation:isolate;overflow:hidden;display:grid;aspect-ratio:16 / 10;min-width:0;border:.2rem solid #fff9ee99;border-radius:1.25rem;background:#80cce0;box-shadow:inset 0 -.5rem #173e421f}.scene--compact{aspect-ratio:4 / 3;border-radius:1rem}.scene__background,.scene__subject,.scene__overlay{position:absolute;inset:0}.scene__background{z-index:-2;overflow:hidden;background:linear-gradient(180deg,#80cce0 0 43%,#a9d489 43% 72%,#4d9aa9 72%)}.scene__background:after{position:absolute;right:-8%;bottom:-13%;left:-8%;height:34%;border-radius:50% 50% 0 0;background:#2e7c73;content:"";opacity:.65;transform:rotate(-2deg)}.scene__sun,.scene__hill,.scene__mist{position:absolute;display:block}.scene__sun{top:10%;right:13%;width:clamp(2rem,12%,5rem);aspect-ratio:1;border-radius:50%;background:#f6c75f;box-shadow:0 0 0 .65rem #f6c75f44}.scene__hill{right:-10%;left:-10%;border-radius:50% 50% 0 0}.scene__hill--back{bottom:25%;height:30%;background:#72b987;transform:rotate(3deg)}.scene__hill--front{bottom:12%;height:27%;background:#438f79;transform:rotate(-4deg)}.scene__mist{right:-12%;bottom:35%;left:-12%;height:10%;border-radius:50%;background:#fff9ee;opacity:.2;transform:rotate(2deg)}.scene__subject{z-index:0;display:grid;place-items:center;padding:clamp(.75rem,4%,2rem)}.scene__subject img{display:block;width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 .6rem .5rem #173e4244)}.scene__overlay{z-index:1;display:grid;place-items:end;pointer-events:none}@media(max-width:38rem){.scene{aspect-ratio:5 / 4}.scene--compact{aspect-ratio:4 / 3}}@media(prefers-reduced-motion:reduce){.scene__background:after,.scene__hill,.scene__mist{transform:none}}.island-backdrop{display:block;position:absolute;inset:0}.island-backdrop img{display:block;width:100%;height:100%;object-fit:cover;object-position:center bottom}.island-map,.islands,.puzzle-view{--game-chrome-control: clamp(3.5rem, 10vh, 5.25rem)}.resource-counter{display:flex;flex:0 1 auto;align-items:center;justify-content:center;gap:.3rem;box-sizing:border-box;min-height:var(--game-chrome-control, 44px);margin:0;padding:.35rem .55rem;border:.12rem solid #784f43;border-radius:.85rem;color:#3d342e;background:#fff9ee;box-shadow:inset 0 -.18rem #784f4326,0 .25rem .55rem #3d342e33;font-weight:800;font-variant-numeric:tabular-nums;white-space:nowrap}.chrome-navigation-control{display:grid;flex:0 0 auto;place-items:center;box-sizing:border-box;min-width:44px;min-height:var(--game-chrome-control, 44px);padding:0;border:0;border-radius:.9rem;color:#fff9ee;background:#784f43;box-shadow:inset 0 -.3rem #3d342e59,0 .3rem .7rem #3d342e40;cursor:pointer;-webkit-tap-highlight-color:transparent;transition:transform .18s ease-out,background-color .18s ease-out}.chrome-navigation-control:hover{background:#684239;transform:translateY(-.1rem)}.chrome-navigation-control:active{transform:translateY(0)}.chrome-navigation-control:focus-visible{outline:.25rem solid #935ec3;outline-offset:.1rem}.parchment-panel{position:relative;overflow:hidden;border:.18rem solid #784f43;border-radius:.7rem .95rem .72rem .9rem;background:repeating-linear-gradient(98deg,#784f430d 0 .1rem,transparent .1rem 1rem),#f4dfc0;box-shadow:inset 0 -.2rem #784f4326,0 .28rem .65rem #3d342e40}.parchment-panel:before,.parchment-panel:after{position:absolute;top:.18rem;bottom:.18rem;width:.22rem;border-radius:50%;background:#784f4338;content:""}.parchment-panel:before{left:.22rem}.parchment-panel:after{right:.22rem}@media(max-width:44rem){.island-map,.islands,.puzzle-view{--game-chrome-control: clamp(3rem, 12vw, 3.5rem)}}@media(min-width:64rem)and (min-aspect-ratio:4 / 3){.island-map{--game-chrome-control: clamp(3.5rem, 7vh, 4rem)}}.noki{display:block;width:6rem;height:auto;overflow:visible;filter:drop-shadow(0 .35rem .25rem #173e4244);pointer-events:none}.noki--compact{width:3.75rem}.noki__body{fill:#f4c989;stroke:#784f43;stroke-linejoin:round;stroke-width:3}.noki__leaf{fill:#65a957;stroke:#3f713f;stroke-linejoin:round;stroke-width:2.5}.noki__leaf--right{fill:#78b968}.noki__belly{fill:#fff1c7;opacity:.82}.noki__antenna,.noki__arm,.noki__mouth,.noki__accent{fill:none;stroke:#784f43;stroke-linecap:round;stroke-linejoin:round;stroke-width:3}.noki__antenna{stroke-width:4}.noki__antenna-tip{fill:#f6c75f;stroke:#784f43;stroke-width:3}.noki__arm{fill:none;stroke-width:5}.noki__eye{fill:#3d342e}.noki__mouth{stroke-width:3.5}.noki__accent{stroke:#f4c84a;stroke-width:2.5}.noki--happy .noki__body,.noki--celebrating .noki__body{fill:#f6d28f}.noki--surprised .noki__body{fill:#f4c47c}.noki--thinking .noki__antenna-tip{fill:#8a63c7}@media(prefers-reduced-motion:no-preference){.noki--celebrating{animation:noki-celebrate 1.6s ease-in-out infinite alternate}.noki--encouraging{animation:noki-encourage 2.4s ease-in-out infinite}}@keyframes noki-celebrate{to{transform:translateY(-.2rem) rotate(2deg)}}@keyframes noki-encourage{50%{transform:rotate(-2deg)}}@media(prefers-reduced-motion:reduce){.noki{animation:none}}.narrative-sequence{position:fixed;right:max(.75rem,env(safe-area-inset-right));bottom:max(5.5rem,calc(env(safe-area-inset-bottom) + 4.75rem));left:max(.75rem,env(safe-area-inset-left));z-index:20;height:clamp(5.25rem,16vw,8rem);pointer-events:none}.narrative-sequence__noki{position:absolute;bottom:0;left:0;width:clamp(5.25rem,16vw,8rem);height:auto;filter:drop-shadow(0 .45rem .35rem #173e4244);pointer-events:none}.narrative-sequence__bubble{--narrative-anchor: clamp(5.25rem, 16vw, 8rem);box-sizing:border-box;position:absolute;z-index:2;bottom:clamp(3.2rem,9vw,5.4rem);left:var(--narrative-anchor);width:fit-content;max-width:min(24rem,calc(100% - var(--narrative-anchor) - .5rem));margin:0;padding:clamp(.7rem,1.8vw,1rem);border:.14rem solid var(--sand-deep, #d9b77e);border-radius:1rem;color:#3d342e;background:linear-gradient(180deg,var(--cream, #fff6e4),#f6e6c6);box-shadow:0 .35rem .9rem #3d342e40;overflow-wrap:anywhere;pointer-events:auto}.narrative-sequence__bubble:after{position:absolute;bottom:.85rem;left:-.45rem;width:.9rem;height:.9rem;background:#f6e6c6;clip-path:polygon(100% 0,100% 100%,0 62%);content:""}.narrative-sequence[data-companion-source=page] .narrative-sequence__bubble{--narrative-anchor: clamp(7rem, 22vw, 11.5rem);bottom:clamp(4.2rem,11vw,6.5rem)}.narrative-sequence__message{margin:0;font-size:clamp(.95rem,.78rem + .55vw,1.25rem);font-weight:700;line-height:1.35;text-wrap:pretty}.narrative-sequence__progress{margin:.45rem 0 0;color:#80633f;font-size:.8rem;font-variant-numeric:tabular-nums;line-height:1}.narrative-sequence__actions{display:flex;flex-wrap:wrap;gap:.55rem;margin-top:.75rem}.narrative-sequence__actions button{min-width:2.75rem;min-height:2.75rem;padding:.5rem .95rem;border:0;border-radius:999px;font:inherit;font-weight:800;cursor:pointer}.narrative-sequence__next{color:#fff9ee;background:linear-gradient(#67c46a,#3e9a52);box-shadow:0 .2rem #2c7440}.narrative-sequence__secondary{border:.12rem solid #784f43!important;color:#784f43;background:var(--cream, #fff6e4);box-shadow:0 .2rem #784f4333}.narrative-sequence__actions button:hover{filter:brightness(1.04)}.narrative-sequence__actions button:active{transform:translateY(.1rem)}.narrative-sequence__actions button:focus-visible{outline:.25rem solid #8a63c7;outline-offset:.15rem}@media(max-width:32rem){.narrative-sequence{height:10rem}.narrative-sequence__noki{width:10rem}.narrative-sequence__bubble{--narrative-anchor: 10rem;bottom:6.4rem;max-width:min(16rem,calc(100% - var(--narrative-anchor) - .5rem));padding:.55rem .7rem}.narrative-sequence[data-companion-source=page] .narrative-sequence__bubble{--narrative-anchor: clamp(5.5rem, 22vw, 8rem);bottom:clamp(3.4rem,9vw,4.8rem)}}@media(prefers-reduced-motion:reduce){.narrative-sequence__actions button:active{transform:none}}.app-shell:has(.island-map){display:flex;flex-direction:column}.island-map{--map-gutter: clamp(.45rem, 1.2vw, .9rem);--map-control: var(--game-chrome-control);--map-chrome: calc(var(--map-control) + 2 * var(--map-gutter));display:grid;flex:1 1 auto;grid-template-rows:minmax(0,1fr) auto;min-height:calc(var(--map-chrome) + 13rem)}.island-map__stage{position:relative;min-width:0;container-type:size;overflow:hidden;isolation:isolate;background:linear-gradient(#63c9f0,#087fc6)}.island-map__backdrop{z-index:0}.island-map__backdrop img{object-position:center}.island-map__frame{--map-size: min(100cqw, 100cqh);position:absolute;top:50%;left:50%;z-index:1;width:var(--map-size);height:var(--map-size);transform:translate(-50%,-50%)}@supports not (width: 1cqw){.island-map__frame{top:var(--map-chrome);left:0;width:100%;height:auto;aspect-ratio:1;transform:none}}.island-map__ground{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 1rem 1.2rem #073d6b55)}.island-map__place{--badge-size: clamp(1.65rem, 6.8cqmin, 4.2rem);--place-scale: 1;position:absolute;width:calc(clamp(2.75rem,21.5%,11.5rem) * var(--place-scale));aspect-ratio:1;padding:0;border:0;border-radius:1rem;background:none;transform:translate(-50%,-50%);cursor:pointer;-webkit-tap-highlight-color:transparent}.island-map__place:disabled,.island-map__place[aria-disabled=true]{cursor:default}.island-map__building{display:block;width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 .35rem .45rem #12303a55);transition:transform .18s ease-out,filter .18s ease-out}.island-map__place:not(:disabled):not([aria-disabled=true]):hover .island-map__building,.island-map__place:not(:disabled):not([aria-disabled=true]):focus-visible .island-map__building{transform:translateY(-3%) scale(1.06);filter:drop-shadow(0 .5rem .6rem #12303a66)}.island-map__place:not(:disabled):not([aria-disabled=true]):active .island-map__building{transform:translateY(0) scale(.98)}.island-map__place--locked .island-map__building{filter:saturate(.25) brightness(.78) drop-shadow(0 .3rem .4rem #12303a55)}.island-map__place:focus-visible{outline:.25rem solid #935ec3;outline-offset:.1rem}.island-map__badge{position:absolute;bottom:-6%;left:50%;display:grid;place-items:center;width:var(--badge-size);height:var(--badge-size);border-radius:50%;color:#fff9ee;font-size:calc(var(--badge-size) * .56);font-weight:800;line-height:1;transform:translate(-50%)}.island-map__badge--available,.island-map__badge--in-progress{background:radial-gradient(circle at 50% 30%,#9cc957,#79a93b 70%);box-shadow:inset 0 0 0 calc(var(--badge-size) * .09) #fff9ee,0 .25rem .5rem #12303a4d}.island-map__badge--completed{color:#4a3413;background:radial-gradient(circle at 50% 30%,#ffe58a,#f4c84a 70%);box-shadow:inset 0 0 0 calc(var(--badge-size) * .09) #fff9ee,0 .25rem .5rem #12303a4d}.island-map__badge--locked{color:#efe6da;background:radial-gradient(circle at 50% 30%,#7d7167,#4f463e 70%);box-shadow:inset 0 0 0 calc(var(--badge-size) * .09) #efe6dacc,0 .25rem .5rem #12303a4d}.island-map__badge .island-map__icon{width:calc(var(--badge-size) * .58);height:calc(var(--badge-size) * .58)}.island-map__diamond-badge{position:absolute;top:-4%;right:-4%;display:flex;gap:calc(var(--badge-size) * .08);align-items:center;padding:calc(var(--badge-size) * .08) calc(var(--badge-size) * .16);border-radius:999px;color:#fff9ee;background:#4a382ee6;box-shadow:inset 0 0 0 calc(var(--badge-size) * .045) #b97837,0 .2rem .4rem #12303a4d;font-size:calc(var(--badge-size) * .34);font-weight:800;font-variant-numeric:tabular-nums;line-height:1;white-space:nowrap}.island-map__diamond-badge-icon{display:block;width:calc(var(--badge-size) * .4);height:calc(var(--badge-size) * .4);object-fit:contain}.island-map__spark{position:absolute;top:var(--spark-y);left:var(--spark-x);width:calc(var(--badge-size) * var(--spark-size));aspect-ratio:1;margin:calc(var(--badge-size) * var(--spark-size) / -2);pointer-events:none;animation:island-map-spark var(--spark-duration) ease-in-out var(--spark-delay) infinite}.island-map__spark img{display:block;width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 0 .25rem #f3a712) drop-shadow(0 0 .55rem #ffd45e99)}@keyframes island-map-spark{0%,to{opacity:0;transform:scale(.3) rotate(0)}35%{opacity:1;transform:scale(1) rotate(40deg)}70%{opacity:.1;transform:scale(.55) rotate(80deg)}}.campaign-lock-message{position:absolute;right:.9rem;bottom:.9rem;left:.9rem;z-index:5;padding:.65rem 1rem;border-radius:.75rem;background:#2c2015ec;box-shadow:0 .4rem 1rem #12303a55;color:#fff9ee;font-size:clamp(.82rem,2.4vw,1.05rem);font-weight:650;text-align:center;text-wrap:balance;animation:campaign-lock-message-in .18s ease-out}.campaign-lock-message-inline{margin:.3rem 0 0;color:#7a2929;font-size:.9rem;font-weight:650}@keyframes campaign-lock-message-in{0%{opacity:0;transform:translateY(.4rem)}to{opacity:1;transform:translateY(0)}}@media(prefers-reduced-motion:reduce){.campaign-lock-message{animation:none}}.island-map__noki{--noki-edge: clamp(.65rem, 2.5%, 1.25rem);position:absolute;right:auto;bottom:var(--noki-edge);left:var(--noki-edge);z-index:2;width:clamp(7rem,22%,11.5rem);max-width:calc(100% - var(--noki-edge) - var(--noki-edge));height:auto;object-fit:contain;pointer-events:none;filter:drop-shadow(0 .4rem .5rem #12303a66);animation:island-map-bob 4.5s ease-in-out infinite alternate}@keyframes island-map-bob{to{transform:translateY(-4%)}}.island-map__chrome{position:absolute;top:0;right:0;left:0;z-index:2;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:var(--map-gutter);align-items:center;min-height:var(--map-chrome);padding:var(--map-gutter);pointer-events:none}.island-map__chrome>*{pointer-events:auto}.island-map__chrome-start{display:flex;align-items:stretch;gap:var(--map-gutter);min-width:0}.island-map__title{display:flex;justify-self:start;gap:clamp(.4rem,.8vw,.75rem);align-items:center;min-width:0;width:min(100%,clamp(12rem,32vw,25rem));max-width:100%;height:var(--map-control);box-sizing:border-box;padding:0 clamp(.8rem,1.8vw,1.5rem);color:#3d342e}.island-map__emblem{flex:0 0 auto;width:calc(var(--map-control) * .72);height:calc(var(--map-control) * .72);object-fit:contain}.island-map__title h1{flex:1 1 auto;min-width:0;margin:0;overflow:hidden;color:#3d342e;font-size:clamp(1.05rem,.8rem + 2vw,2.25rem);font-weight:800;letter-spacing:-.02em;line-height:1.2;text-overflow:ellipsis;text-align:center;white-space:nowrap}.island-map__controls{display:flex;flex:0 1 auto;gap:var(--map-gutter);align-items:center;justify-content:flex-end;min-width:0;max-width:100%;margin-left:auto}.island-map__controls .resource-counter{gap:clamp(.25rem,.6vw,.5rem);height:var(--map-control);min-width:clamp(4rem,11vw,9rem);padding:0 clamp(.65rem,1.3vw,1rem) 0 clamp(.45rem,.9vw,.75rem);border-radius:clamp(.9rem,1.6vw,1.35rem);font-size:clamp(.95rem,.75rem + 1vw,1.5rem)}.island-map__crystal,.island-map__shard{display:block;width:calc(var(--map-control) * .58);height:calc(var(--map-control) * .58);object-fit:contain}.island-map__control{width:var(--map-control);height:var(--map-control);border-radius:clamp(.9rem,1.6vw,1.35rem)}.island-map__icon{display:block;width:calc(var(--map-control) * .52);height:calc(var(--map-control) * .52);fill:currentColor}.island-bar{--island-tile-width: clamp(6.5rem, 10vw, 9rem);display:flex;flex:0 0 auto;min-width:0;gap:clamp(.45rem,1vw,.8rem);align-items:center;border-top:.12rem solid #f4dfc03d;padding:clamp(.45rem,1vw,.75rem) clamp(.5rem,1.4vw,1rem) calc(clamp(.45rem,1vw,.75rem) + env(safe-area-inset-bottom,0px));background:linear-gradient(180deg,#234d66f5,#173a52fa);box-shadow:inset 0 .15rem #f4dfc014,0 -.4rem 1rem #0d2c3a3d}.island-bar__all:focus-visible{outline:.2rem solid #f4c84a;outline-offset:.15rem}.island-bar__all .island-map__icon{display:block;width:100%;height:100%;object-fit:cover}.island-bar__divider{flex:0 0 auto;align-self:stretch;width:.14rem;margin:.35rem 0;border-radius:999px;background:linear-gradient(180deg,transparent,#f4dfc0b3 20%,#f4dfc0b3 80%,transparent)}.island-bar__rail{flex:1 1 auto;min-width:0}.island-bar__rail{display:flex;gap:clamp(.45rem,1vw,.8rem);align-items:stretch;margin:0;padding:0;overflow-x:auto;overscroll-behavior-x:contain;scrollbar-color:#b9783799 transparent;scrollbar-width:thin;list-style:none}.island-bar__rail>li{display:flex;flex:0 0 auto;min-width:0}.island-bar__tile{display:flex;flex:0 0 auto;flex-direction:column;align-items:stretch;width:var(--island-tile-width);padding:0;overflow:hidden;border:.14rem solid #f4c84a;border-radius:clamp(.85rem,1.4vw,1.15rem);color:#3d342e;background:linear-gradient(#fffaf0,#f4dfc0);font:inherit;font-size:clamp(.66rem,.54rem + .45vw,.92rem);font-weight:750;line-height:1.1;text-align:center;box-shadow:0 .25rem .6rem #0d2c3a4d;cursor:pointer;-webkit-tap-highlight-color:transparent}.island-bar__tile:disabled{cursor:default}.island-bar__tile:focus-visible{outline:.2rem solid #f4c84a;outline-offset:.15rem}.island-bar__tile--current{transform:translateY(-.15rem);box-shadow:0 0 0 .16rem #fff7df80,0 .35rem .75rem #0d2c3a5c}.island-bar__tile--completed .island-bar__thumb{box-shadow:inset 0 0 0 .15rem #f4c84a}.island-bar__tile--locked{color:#7a7268}.island-bar__current-badge{position:absolute;top:-.1rem;left:-.1rem;display:grid;width:1.6em;height:1.6em;place-items:center;border-radius:50%;color:#123a52;background:linear-gradient(#fffaf0,#f4dfc0);box-shadow:0 .1rem .25rem #0d2c3a70;font-size:1.05rem}.island-bar__current-badge svg{width:.85em;height:.85em;fill:currentColor}.island-bar__thumb{aspect-ratio:4 / 3}.island-tile-artwork{position:relative;display:grid;place-items:center;width:100%;overflow:hidden;background:#2a4356}.island-tile-artwork__image{display:block;width:100%;height:100%;object-fit:cover}.island-tile-artwork--locked .island-tile-artwork__image,.island-tile-artwork--locked .island-tile-artwork__initial{filter:grayscale(.65) brightness(.5)}.island-tile-artwork__lock-overlay{position:absolute;inset:0;display:grid;place-items:center;background:#17233059}.island-tile-artwork__lock{width:clamp(1.2rem,42%,2.5rem);height:clamp(1.2rem,42%,2.5rem);color:#f4dfc0;filter:drop-shadow(0 .1rem .15rem #0006)}.island-tile-artwork__initial{display:grid;place-items:center;width:100%;height:100%;color:#f4dfc0;font-size:1.35rem;font-weight:800}.island-bar__name{display:flex;align-items:center;justify-content:center;height:3.4em;padding:clamp(.3rem,.6vw,.5rem) clamp(.3rem,.5vw,.45rem)}.island-bar__name-text{display:-webkit-box;max-width:100%;overflow:hidden;line-height:1.15;text-align:center;-webkit-box-orient:vertical;-webkit-line-clamp:2}.campaign-place{max-width:62rem;margin:0 auto;padding:clamp(1rem,4vw,2.5rem)}.campaign-place__header{display:flex;gap:1rem;align-items:start}.campaign-place__header button,.campaign-primary,.campaign-stages button{min-height:44px;border:0;border-radius:.8rem;padding:.65rem 1rem;font:inherit;font-weight:750;color:#3d342e;background:#fff9ee;cursor:pointer}.campaign-place__scene{display:block;width:min(100%,38rem);margin:1rem auto;box-shadow:0 .8rem 1.5rem #173e4233}.campaign-place__scene .scene__overlay{padding:clamp(.5rem,4vw,1.25rem)}.campaign-place__scene .noki{width:clamp(4.5rem,18vw,7rem)}.campaign-primary{display:block;margin:1rem auto;background:#f4dfc0}.campaign-complete{padding:.8rem 1rem;border-radius:.8rem;background:#e4f3d2}.campaign-stages{display:grid;gap:1rem;padding:0;list-style:none}.campaign-stages li{padding:1rem;border-radius:1rem;background:#fff9ee;box-shadow:0 .3rem 1rem #173e4222}.campaign-stages h2{margin:0}.campaign-stages div{display:flex;flex-wrap:wrap;gap:.6rem}.campaign-stages span{padding:.65rem 1rem;color:#665e56}@media(max-width:38rem){.campaign-place__header{display:block}.campaign-place__header button{margin-bottom:1rem}}@media(prefers-reduced-motion:reduce){.island-map__building,.island-map__control{transition:none}.island-map__place:not(:disabled):not([aria-disabled=true]):hover .island-map__building,.island-map__place:not(:disabled):not([aria-disabled=true]):focus-visible .island-map__building,.island-map__place:not(:disabled):not([aria-disabled=true]):active .island-map__building,.island-map__control:hover,.island-map__control:active{transform:none}.island-map__spark{opacity:.75;animation:none;transform:scale(.85)}.island-map__noki{animation:none}}@media(max-width:42rem){.island-map{--map-gutter: .42rem}.island-map__chrome{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:.3rem}.island-map__title{flex:1 1 auto;justify-self:stretch;width:100%;max-width:none;padding:0 .4rem}.island-map__chrome-start{width:100%}.island-map__title h1{font-size:clamp(.82rem,4vw,1.05rem)}.island-map__crystals,.island-map__shards{flex:0 0 2.75rem;width:2.75rem;min-width:2.75rem;gap:.06rem;padding-right:.12rem;padding-left:.1rem;font-size:.7rem}.island-map__controls{gap:.25rem}.island-map__crystal,.island-map__shard{width:1rem;height:1rem}.island-map__control{flex:0 0 var(--map-control)}.island-map__noki{--noki-edge: clamp(.5rem, 2.5%, .8rem);width:clamp(5.5rem,22%,8rem)}.island-bar{--island-tile-width: 6.25rem}}@media(min-width:64rem)and (min-aspect-ratio:4 / 3){.island-map{--map-gutter: clamp(.6rem, 1.5vh, .9rem)}.island-map__title{width:clamp(16rem,25vw,24rem);max-width:42%;padding:0 clamp(.9rem,2vh,1.25rem)}.island-map__title h1{font-size:clamp(1.6rem,4.5vh,2.25rem)}.island-map__crystals,.island-map__shards{min-width:clamp(5.5rem,10vw,9rem)}.island-map__noki{--noki-edge: clamp(.75rem, 2.5vh, 1.25rem);width:clamp(7.5rem,18vh,9rem)}.island-bar{--island-tile-width: clamp(6.5rem, 13vh, 7rem);padding:clamp(.45rem,1vh,.55rem) clamp(.6rem,1.5vh,.9rem) calc(clamp(.45rem,1vh,.55rem) + env(safe-area-inset-bottom,0px))}.island-bar__tile{font-size:clamp(.7rem,1.5vh,.8rem)}}.place-restored{--restored-ink: #3d342e;--restored-cream: #fff9ee;--restored-teal: #125f63;position:relative;isolation:isolate;display:grid;grid-template-rows:auto minmax(0,1fr) auto;justify-items:center;gap:clamp(.5rem,2vh,1.5rem);min-height:100svh;padding:clamp(1rem,3vh,2.5rem) 1rem max(1rem,env(safe-area-inset-bottom,0));overflow:hidden;color:var(--restored-ink);text-align:center}.place-restored__backdrop{position:absolute;inset:0;z-index:0;background:linear-gradient(180deg,#80cce0,#a9d489 62%,#779a40)}.place-restored__sky{position:absolute;inset:0;background:radial-gradient(120% 60% at 50% 0%,#fff6d84d 0%,transparent 58%),linear-gradient(180deg,#3d342e26 0%,transparent 22%),linear-gradient(0deg,#3d342e40 0%,transparent 30%)}.place-restored__title{position:relative;z-index:1;display:grid;gap:.35rem;margin:0;padding:.9rem clamp(1.2rem,5vw,2.6rem);border-radius:1.4rem;background:#fff9eee6;box-shadow:0 .7rem 1.6rem #173e4233;animation:place-restored-drop .6s cubic-bezier(.2,.9,.25,1.15) both}.place-restored__eyebrow{color:#b3691a;font-size:clamp(.8rem,2.4vw,1rem);font-weight:750;letter-spacing:.12em;text-transform:uppercase}.place-restored__name{color:var(--restored-teal);font-size:clamp(1.6rem,5.2vw,3rem);font-weight:800;letter-spacing:-.02em;line-height:1.05;text-wrap:balance}.place-restored__stage{position:relative;z-index:1;display:grid;place-items:center;width:min(100%,46rem);height:100%;min-height:0}.place-restored__ring{--ring: clamp(7rem, 24vmin, 13rem);position:relative;display:grid;place-items:center;width:calc(var(--ring) * 2);height:100%;max-height:calc(var(--ring) * 2.6)}.place-restored__halo{position:absolute;width:calc(var(--ring) * 2.6);aspect-ratio:1;border-radius:50%;background:radial-gradient(closest-side,#ffeeb87a 0%,#ffd76a33 52%,transparent 76%)}.place-restored__halo:after{content:"";position:absolute;inset:0;border-radius:50%;background:conic-gradient(from 0deg,#fff3c966 0deg 9deg,transparent 9deg 60deg,#fff3c94d 60deg 66deg,transparent 66deg 120deg,#fff3c959 120deg 128deg,transparent 128deg 180deg);filter:blur(.45rem);-webkit-mask-image:radial-gradient(closest-side,#000 12%,transparent 70%);mask-image:radial-gradient(closest-side,#000 12%,transparent 70%);animation:place-restored-turn 26s linear infinite}.place-restored__subject{position:relative;z-index:1;width:100%;height:100%;max-height:calc(var(--ring) * 2.3);animation:place-restored-pop .75s cubic-bezier(.2,.9,.25,1.3) both}.place-restored__subject img{display:block;width:100%;height:100%;object-fit:contain;object-position:bottom;filter:drop-shadow(0 .5rem .55rem #3d342e4d);animation:place-restored-breathe 4.5s ease-in-out .75s infinite alternate}.place-restored__noki{position:absolute;bottom:0;left:0;z-index:3;width:clamp(7rem,22vmin,12rem);animation:place-restored-hop .7s cubic-bezier(.2,.9,.25,1.3) .35s both}.place-restored__noki img{display:block;width:100%;filter:drop-shadow(0 .4rem .5rem #3d342e33)}.place-restored__panel{position:relative;z-index:1;display:grid;gap:.9rem;justify-items:center;width:min(100%,34rem);padding:clamp(.9rem,3vw,1.4rem);border-radius:1.4rem;background:#fff9eee6;box-shadow:0 .7rem 1.6rem #173e4233;animation:place-restored-drop .6s cubic-bezier(.2,.9,.25,1.15) .2s both}.place-restored__briefing{max-width:30rem;margin:0;color:var(--restored-teal);font-weight:750;line-height:1.4}.place-restored__score{margin:0;color:#665e56;font-weight:600}.place-restored__actions{display:flex;flex-wrap:wrap;justify-content:center;gap:.8rem}.place-restored__action{min-height:48px;border:0;border-radius:.9rem;padding:.7rem 1.2rem;font:inherit;font-weight:750;color:var(--restored-ink);background:#f4dfc0;cursor:pointer}.place-restored__action--primary{color:#fff;background:#3a897c;box-shadow:0 .4rem #27695f}@keyframes place-restored-drop{0%{opacity:0;transform:translateY(-.8rem) scale(.96)}}@keyframes place-restored-pop{0%{opacity:0;transform:scale(.7)}}@keyframes place-restored-breathe{to{transform:translateY(-2.5%) scale(1.015)}}@keyframes place-restored-hop{0%{opacity:0;transform:translateY(1.5rem) scale(.8)}}@keyframes place-restored-turn{to{transform:rotate(1turn)}}@keyframes place-restored-burst{0%{opacity:0;transform:rotate(var(--shard-angle)) translateY(0) rotate(calc(var(--shard-angle) * -1)) scale(.2)}}@keyframes place-restored-bob{0%{transform:translateY(-9%) rotate(-7deg)}to{transform:translateY(9%) rotate(7deg)}}@media(max-height:36rem){.place-restored{gap:.35rem;padding:.5rem .75rem max(.5rem,env(safe-area-inset-bottom,0px))}.place-restored__title{gap:.15rem;padding:.45rem .9rem}.place-restored__name{font-size:clamp(1.25rem,4.5vw,2rem)}.place-restored__noki{left:0;width:clamp(4.75rem,18vmin,7rem)}.place-restored__panel{gap:.45rem;padding:.55rem .75rem}.place-restored__actions{gap:.45rem}.place-restored__action{min-height:44px;padding:.45rem .8rem}}@media(prefers-reduced-motion:reduce){.place-restored__title,.place-restored__panel,.place-restored__halo:after,.place-restored__subject,.place-restored__subject img,.place-restored__noki{animation:none}}.archipel-completed{--restored-ink: #3d342e;--restored-cream: #fff9ee;--restored-teal: #125f63;position:relative;isolation:isolate;display:grid;grid-template-rows:auto minmax(0,1fr) auto;justify-items:center;gap:clamp(.5rem,2vh,1.5rem);min-height:100svh;padding:clamp(1rem,3vh,2.5rem) 1rem max(1rem,env(safe-area-inset-bottom,0));overflow:hidden;color:var(--restored-ink);text-align:center}.archipel-completed__backdrop{position:absolute;inset:0;z-index:0;background:linear-gradient(180deg,#80cce0,#a9d489 62%,#779a40)}.archipel-completed__sky{position:absolute;inset:0;background:radial-gradient(120% 60% at 50% 0%,#fff6d84d 0%,transparent 58%),linear-gradient(180deg,#3d342e26 0%,transparent 22%),linear-gradient(0deg,#3d342e40 0%,transparent 30%)}.archipel-completed__title{position:relative;z-index:1;display:grid;gap:.35rem;margin:0;padding:.9rem clamp(1.2rem,5vw,2.6rem);border-radius:1.4rem;background:#fff9eee6;box-shadow:0 .7rem 1.6rem #173e4233;animation:place-restored-drop .6s cubic-bezier(.2,.9,.25,1.15) both}.archipel-completed__eyebrow{color:#b3691a;font-size:clamp(.8rem,2.4vw,1rem);font-weight:750;letter-spacing:.12em;text-transform:uppercase}.archipel-completed__name{color:var(--restored-teal);font-size:clamp(1.6rem,5.2vw,3rem);font-weight:800;letter-spacing:-.02em;line-height:1.05;text-wrap:balance}.archipel-completed__stage{position:relative;z-index:1;display:grid;place-items:center;width:min(100%,46rem);height:100%;min-height:0}.archipel-completed__ring{--ring: clamp(7rem, 24vmin, 13rem);position:relative;display:grid;place-items:center;width:calc(var(--ring) * 2);height:100%;max-height:calc(var(--ring) * 2.6)}.archipel-completed__halo{position:absolute;width:calc(var(--ring) * 2.6);aspect-ratio:1;border-radius:50%;background:radial-gradient(closest-side,#ffeeb87a 0%,#ffd76a33 52%,transparent 76%)}.archipel-completed__halo:after{content:"";position:absolute;inset:0;border-radius:50%;background:conic-gradient(from 0deg,#fff3c966 0deg 9deg,transparent 9deg 60deg,#fff3c94d 60deg 66deg,transparent 66deg 120deg,#fff3c959 120deg 128deg,transparent 128deg 180deg);filter:blur(.45rem);-webkit-mask-image:radial-gradient(closest-side,#000 12%,transparent 70%);mask-image:radial-gradient(closest-side,#000 12%,transparent 70%);animation:place-restored-turn 26s linear infinite}.archipel-completed__shard{position:absolute;z-index:2;top:50%;left:50%;width:var(--shard-size);margin:calc(var(--shard-size) / -2);transform:rotate(var(--shard-angle)) translateY(calc(var(--ring) * var(--shard-radius) * -1)) rotate(calc(var(--shard-angle) * -1));animation:place-restored-burst .8s cubic-bezier(.2,.9,.25,1.25) var(--shard-delay) both}.archipel-completed__shard img{display:block;width:100%;filter:drop-shadow(0 0 .5rem #ffcf5c) drop-shadow(0 0 1.1rem #ffae3480);animation:place-restored-bob var(--shard-float) ease-in-out var(--shard-delay) infinite alternate}.archipel-completed__noki{position:absolute;bottom:0;left:0;width:clamp(5rem,16vmin,9rem);animation:place-restored-hop .7s cubic-bezier(.2,.9,.25,1.3) .35s both}.archipel-completed__noki img{display:block;width:100%;filter:drop-shadow(0 .4rem .5rem #3d342e33)}.archipel-completed__panel{position:relative;z-index:1;display:grid;gap:.9rem;justify-items:center;width:min(100%,34rem);padding:clamp(.9rem,3vw,1.4rem);border-radius:1.4rem;background:#fff9eee6;box-shadow:0 .7rem 1.6rem #173e4233;animation:place-restored-drop .6s cubic-bezier(.2,.9,.25,1.15) .2s both}.archipel-completed__score{margin:0;color:#665e56;font-weight:600}.archipel-completed__actions{display:flex;flex-wrap:wrap;justify-content:center;gap:.8rem}.archipel-completed__action{min-height:48px;border:0;border-radius:.9rem;padding:.7rem 1.2rem;font:inherit;font-weight:750;color:var(--restored-ink);background:#f4dfc0;cursor:pointer}.archipel-completed__action--primary{color:#fff;background:#3a897c;box-shadow:0 .4rem #27695f}@media(max-height:36rem){.archipel-completed__noki{display:none}}@media(prefers-reduced-motion:reduce){.archipel-completed__title,.archipel-completed__panel,.archipel-completed__halo:after,.archipel-completed__noki,.archipel-completed__shard,.archipel-completed__shard img{animation:none}}.island-completed{position:fixed;inset:0;z-index:40;min-height:0}.island-completed .archipel-completed__stage{grid-template-rows:auto auto;align-content:space-evenly;gap:clamp(.4rem,1.5vh,1rem)}.island-completed .archipel-completed__ring{--ring: clamp(6.5rem, 20vmin, 12rem);height:calc(var(--ring) * 2.1)}.island-completed__next{position:relative;z-index:1;display:grid;justify-items:center;width:var(--ring);animation:place-restored-drop .6s cubic-bezier(.2,.9,.25,1.15) .15s both}.island-completed__artwork{aspect-ratio:1;border:.22rem solid #fff9ee;border-radius:1.3rem;box-shadow:0 0 0 .3rem #ffd76a99,0 .8rem 1.8rem #173e4259}.island-completed__ribbon{position:relative;z-index:1;margin-top:-.9rem;white-space:nowrap;padding:.3rem .9rem;border-radius:999px;color:#fff;background:#b3691a;box-shadow:0 .25rem #8a4f12;font-size:clamp(.75rem,2.2vw,.95rem);font-weight:800;letter-spacing:.08em;text-transform:uppercase}.island-completed__speech{display:flex;align-items:flex-end;gap:.6rem;width:min(100%,32rem)}.island-completed__noki{flex:0 0 auto;width:clamp(6.5rem,20vmin,9rem);filter:drop-shadow(0 .4rem .5rem #3d342e33);animation:place-restored-hop .7s cubic-bezier(.2,.9,.25,1.3) .35s both}.island-completed__bubble{position:relative;flex:1 1 auto;margin:0 0 clamp(1rem,4vmin,2rem) -.6rem;padding:.7rem .95rem;border-radius:1rem;color:var(--restored-ink);background:var(--restored-cream);box-shadow:0 .35rem .9rem #3d342e40;font-size:clamp(.95rem,2.6vw,1.2rem);font-weight:700;line-height:1.25;text-align:left;text-wrap:pretty;animation:place-restored-drop .6s cubic-bezier(.2,.9,.25,1.15) .45s both}.island-completed__bubble:before{position:absolute;bottom:.85rem;left:-.45rem;width:.9rem;height:.9rem;background:var(--restored-cream);clip-path:polygon(100% 0,100% 100%,0 62%);content:""}.island-completed .archipel-completed__panel{padding:0;background:none;box-shadow:none}.island-completed .archipel-completed__actions{gap:.9rem 1rem}.island-completed .archipel-completed__action{min-height:3.4rem;padding:.8rem 1.5rem;border-radius:1.1rem;font-size:clamp(1rem,2.8vw,1.15rem);color:#125f63;background:#fff9ee;box-shadow:0 .3rem #d9c19c,0 .7rem 1.4rem #173e4240}.island-completed .archipel-completed__action--primary{color:#fff;background:linear-gradient(#4aa391,#3a897c);box-shadow:0 .3rem #27695f,0 .7rem 1.4rem #173e4259}.island-completed .archipel-completed__action:active{transform:translateY(.2rem)}@media(max-width:30rem){.island-completed .archipel-completed__actions{flex-direction:column;align-items:stretch;width:min(100%,20rem)}}@media(max-height:36rem){.island-completed__noki{display:none}.island-completed__bubble:before{content:none}}@media(prefers-reduced-motion:reduce){.island-completed__next,.island-completed__noki,.island-completed__bubble{animation:none}}.islands{--islands-u: min(1vw, 1.1vh);--islands-card: clamp(4rem, calc(var(--islands-u) * 21), 8.5rem);--islands-card-gap: clamp(.3rem, calc(var(--islands-u) * 1.5), .8rem);--islands-gutter: clamp(.5rem, calc(var(--islands-u) * 2), 1.25rem);--islands-control: var(--game-chrome-control);position:relative;isolation:isolate;display:grid;grid-template-rows:auto minmax(0,1fr);height:100svh;overflow:hidden;background:linear-gradient(#63c9f0,#087fc6)}.islands__backdrop{z-index:0}.islands__chrome{position:relative;z-index:2;display:flex;flex-direction:column;gap:clamp(.6rem,calc(var(--islands-u) * 3),1.4rem);padding:max(var(--islands-gutter),env(safe-area-inset-top)) var(--islands-gutter) 0}.islands__bar{display:flex;gap:clamp(.3rem,calc(var(--islands-u) * 1.4),.75rem);align-items:center;justify-content:space-between}.islands__control{width:var(--islands-control);height:var(--islands-control)}.islands__control .island-map__icon{width:55%;height:55%}.islands__control-placeholder{flex:0 0 auto;width:var(--islands-control)}.islands__title{display:grid;place-items:center;box-sizing:border-box;width:min(100%,36rem);min-height:var(--game-chrome-control);margin:0 auto;padding:clamp(.45rem,calc(var(--islands-u) * 1.8),.8rem) 1.3rem;color:#3d342e;font-size:clamp(.88rem,calc(var(--islands-u) * 4.4),1.9rem);font-weight:800;letter-spacing:-.01em;line-height:1.2;text-align:center;text-wrap:balance}.islands__counters{display:flex;flex:0 0 auto;gap:clamp(.25rem,calc(var(--islands-u) * 1.2),.6rem);align-items:center}.islands__counter{gap:.2em;height:var(--islands-control);padding:0 .5em;font-size:clamp(.85rem,calc(var(--islands-u) * 3.4),1.35rem)}.islands__counter img,.islands__counter svg{width:1.25em;height:1.25em}.islands__body{position:relative;z-index:1;display:grid;grid-template-rows:minmax(0,1fr) auto minmax(0,.12fr) auto minmax(0,.72fr);padding:var(--islands-gutter) var(--islands-gutter) max(var(--islands-gutter),env(safe-area-inset-bottom));overflow:hidden auto}.islands__carousel,.islands__noki-prompt{justify-self:center;width:min(100%,40rem)}.islands__carousel{grid-row:2}.islands__noki-prompt{grid-row:4}.islands__carousel{display:flex;gap:var(--islands-card-gap);align-items:center;min-width:0;max-width:100%}.islands__grid{display:flex;flex:1 1 auto;align-items:stretch;gap:var(--islands-card-gap);justify-content:safe center;min-width:0;margin:0;padding:.25rem .2rem .65rem;overflow-x:auto;overscroll-behavior-inline:contain;scroll-behavior:smooth;scroll-padding-inline:.25rem;scroll-snap-type:inline mandatory;-ms-overflow-style:none;scrollbar-width:none;list-style:none}.islands__grid::-webkit-scrollbar{display:none;width:0;height:0}.islands__grid>li{flex:0 0 auto;scroll-snap-align:center}.islands__carousel-control{display:grid;flex:0 0 auto;place-items:center;box-sizing:border-box;width:clamp(2.75rem,calc(var(--islands-u) * 9),3.5rem);height:clamp(2.75rem,calc(var(--islands-u) * 9),3.5rem);padding:clamp(.55rem,calc(var(--islands-u) * 1.8),.75rem);border:.14rem solid #784f43;border-radius:50%;color:#3d342e;background:linear-gradient(145deg,#fffaf0,#f4dfc0);box-shadow:inset 0 -.2rem #784f4326,0 .24rem .6rem #0d2c3a59;font:inherit;cursor:pointer;-webkit-tap-highlight-color:transparent;transition:transform .18s ease-out,background .18s ease-out,box-shadow .18s ease-out}.islands__carousel-icon{width:100%;height:100%;filter:drop-shadow(0 .08rem 0 #ffffffb8)}@media(hover:hover){.islands__carousel-control:not(:disabled):hover{background:linear-gradient(145deg,#fffdf7,#f8e8cf);box-shadow:inset 0 -.18rem #784f431f,0 .32rem .75rem #0d2c3a66;transform:translateY(-.1rem) scale(1.04)}}.islands__carousel-control:disabled{opacity:.42;box-shadow:inset 0 -.12rem #784f431c,0 .12rem .32rem #0d2c3a3d;cursor:default}.islands__carousel-control:focus-visible{outline:.25rem solid #935ec3;outline-offset:.12rem}.islands__carousel-control:not(:disabled):active{background:linear-gradient(145deg,#f1d7b2,#fff7e8);box-shadow:inset 0 .16rem .28rem #784f4333,0 .12rem .32rem #0d2c3a52;transform:translateY(.1rem) scale(.98)}.islands__card{display:flex;flex-direction:column;gap:.2rem;align-items:center;width:var(--islands-card);padding:.3rem;border:0;border-radius:.75rem;color:#fff7df;background:#123a52b8;box-shadow:inset 0 0 0 .1rem #6fb7dd4d,0 .2rem .5rem #0d2c3a4d;font:inherit;font-size:clamp(.58rem,calc(var(--islands-u) * 2.5),.95rem);font-weight:750;cursor:pointer;-webkit-tap-highlight-color:transparent}.islands__card:disabled,.islands__card[aria-disabled=true]{color:#cfe2eea3;cursor:default}.islands__card-thumb{aspect-ratio:1;border-radius:.5rem;background:#0f3448}.islands__card--completed .islands__card-thumb{box-shadow:inset 0 0 0 .12rem #f4c84a}.islands__card-badge{position:absolute;top:-.1rem;left:-.1rem;display:grid;place-items:center;width:1.6em;height:1.6em;border-radius:50%;color:#123a52;background:linear-gradient(#fffaf0,#f4dfc0);box-shadow:0 .1rem .25rem #0d2c3a70;font-size:1em;font-weight:800}.islands__card--completed .islands__card-badge{background:linear-gradient(#ffe9a8,#f4c84a)}.islands__card-thumb .island-tile-artwork__initial{font-size:1.8em;font-weight:800}.islands__card-name{display:-webkit-box;max-width:100%;min-height:2.3em;overflow:hidden;line-height:1.15;text-align:center;-webkit-box-orient:vertical;-webkit-line-clamp:2}.islands__noki-prompt{display:flex;gap:clamp(.35rem,calc(var(--islands-u) * 2),1.25rem);align-items:center}.islands__noki{flex:0 0 auto;width:clamp(4.5rem,calc(var(--islands-u) * 27),11rem);filter:drop-shadow(0 0 .12rem #ffffffd9) drop-shadow(0 0 .35rem #ffffff73) drop-shadow(0 .3rem .5rem #0d2c3a70);pointer-events:none;-webkit-user-select:none;user-select:none}.islands__question{position:relative;flex:1 1 auto;min-width:0;margin:0;padding:clamp(.55rem,calc(var(--islands-u) * 2),1rem);overflow:visible;border:0;border-radius:1rem;color:#3d342e;background:#fff9ee;box-shadow:0 .35rem .9rem #3d342e40;font-size:clamp(.9rem,calc(var(--islands-u) * 3.4),1.45rem);font-weight:700;line-height:1.2;text-align:left;text-wrap:balance}.islands__question.parchment-panel:before{top:auto;right:auto;bottom:.85rem;left:-.45rem;width:.9rem;height:.9rem;border-radius:0;background:#fff9ee;clip-path:polygon(100% 0,100% 100%,0 62%);content:""}.islands__question.parchment-panel:after{content:none}.islands__introduction-message,.islands__introduction-progress{margin:0}.islands__introduction-progress{margin-top:.45rem;color:#80633f;font-size:.8em;font-variant-numeric:tabular-nums}.islands__introduction-next{min-width:2.75rem;min-height:2.75rem;margin-top:.75rem;padding:.5rem .95rem;border:0;border-radius:999px;color:#fff9ee;background:linear-gradient(#67c46a,#3e9a52);box-shadow:0 .2rem #2c7440;font:inherit;font-weight:800;cursor:pointer}.islands__introduction-next:focus-visible{outline:.25rem solid #8a63c7;outline-offset:.15rem}@media(prefers-reduced-motion:reduce){.islands__control:active,.islands__carousel-control:active{transform:none}.islands__grid{scroll-behavior:auto}}@media(min-width:44rem){.islands{--islands-card: clamp(7rem, calc(var(--islands-u) * 18), 8.5rem)}.islands__body{grid-template-rows:minmax(0,.65fr) auto minmax(.75rem,.1fr) auto minmax(0,1fr)}.islands__carousel,.islands__noki-prompt{width:min(100%,44rem)}}@media(min-width:64rem){.islands{--islands-card: clamp(8rem, calc(var(--islands-u) * 16), 10rem);--islands-card-gap: clamp(.55rem, calc(var(--islands-u) * 1.25), 1rem)}.islands__chrome{gap:clamp(.4rem,calc(var(--islands-u) * 1.5),1rem)}.islands__body{display:flex;flex-direction:column;gap:clamp(.8rem,calc(var(--islands-u) * 1.7),1.5rem);align-items:center;justify-content:center;padding-inline:clamp(2rem,6vw,7rem);padding-bottom:max(clamp(2rem,5vh,4.5rem),env(safe-area-inset-bottom));overflow:hidden}.islands__carousel{width:min(100%,58rem)}.islands__noki-prompt{width:min(100%,48rem);justify-content:center}.islands__noki{width:clamp(9rem,calc(var(--islands-u) * 18),12rem)}.islands__question{flex:0 1 26rem}}.puzzle-view{--puzzle-chrome: 0rem;--puzzle-tile-size: 4rem;--puzzle-ink: #3d342e;--puzzle-cream: #fff9ee;--puzzle-sand: #f4dfc0;--puzzle-wood: #784f43;--puzzle-teal: #125f63;position:relative;isolation:isolate;display:grid;width:100%;max-width:100vw;height:calc(100dvh - var(--puzzle-chrome));min-height:0;overflow:hidden;color:var(--puzzle-ink)}.app-shell:has(>.puzzle-view){height:100svh;min-height:0;overflow:hidden}.app-shell:has(>.puzzle-view)>.app-message{display:none}.puzzle-scene{position:absolute;inset:0;z-index:0;overflow:hidden;background:linear-gradient(180deg,#80cce0,#f4dfc0 64%)}.puzzle-scene__sun{position:absolute;top:8%;right:12%;width:clamp(2.5rem,9%,5rem);aspect-ratio:1;border-radius:50%;background:#f6c75f;box-shadow:0 0 0 .8rem #f6c75f3d}.puzzle-scene__hill{position:absolute;right:-12%;left:-12%;border-radius:50% 50% 0 0}.puzzle-scene__hill--far{bottom:30%;height:26%;background:#72b987;transform:rotate(2deg)}.puzzle-scene__hill--near{bottom:26%;height:20%;background:#438f79;transform:rotate(-3deg)}.puzzle-scene__ground{position:absolute;right:-10%;bottom:0;left:-10%;height:34%;border-radius:46% 54% 0 0/14% 14% 0 0;background:linear-gradient(180deg,#a9d489,#779a40 42%,#5f7d33)}.puzzle-scene__subject{position:absolute;bottom:29%;left:54%;height:clamp(14rem,58%,33rem);aspect-ratio:1;transform:translate(-50%)}.puzzle-scene__subject>img{display:block;width:100%;height:100%;object-fit:contain;object-position:bottom;filter:drop-shadow(0 0 .14rem #fff9eea6) drop-shadow(0 .6rem .5rem #3d342e33)}.puzzle-scene__staged-shards{position:absolute;z-index:2;inset:0;pointer-events:none}.puzzle-scene__staged-shard{position:absolute;top:var(--staged-y);left:var(--staged-x);width:clamp(5.4rem,22%,9rem);transform:translate(-50%,-50%) rotate(var(--staged-angle)) scale(var(--staged-scale, .7))}.puzzle-scene__staged-shard--new{animation:puzzle-staged-shard-arrive .5s cubic-bezier(.2,.9,.25,1.3) both}.puzzle-scene__staged-shard img{display:block;width:100%;filter:drop-shadow(0 0 .45rem #ffcf5c);animation:puzzle-staged-shard-float var(--staged-duration) ease-in-out var(--staged-phase) infinite alternate}@keyframes puzzle-staged-shard-arrive{0%{opacity:0;transform:translate(-50%,35%) rotate(var(--staged-angle)) scale(.25)}}@keyframes puzzle-staged-shard-float{0%{transform:translate(var(--staged-dx-start),var(--staged-dy-start)) rotate(var(--staged-turn-start))}to{transform:translate(var(--staged-dx),var(--staged-dy)) rotate(var(--staged-turn))}}.puzzle-scene__shadow{position:absolute;bottom:-2%;left:50%;width:62%;height:8%;border-radius:50%;background:#3d342e;opacity:.22;filter:blur(.4rem);transform:translate(-50%)}.puzzle-scene--painted .puzzle-scene__subject{bottom:31%;left:50%;height:clamp(9rem,42%,24rem)}.puzzle-scene__haze{position:absolute;inset:0;background:radial-gradient(90% 60% at 78% 14%,#fd9a3926 0%,transparent 62%),linear-gradient(180deg,#3d342e33 0%,transparent 16%),linear-gradient(0deg,#3d342e33 0%,transparent 26%)}.puzzle-scene--painted .puzzle-scene__haze{background:radial-gradient(90% 60% at 78% 14%,#fd9a391f 0%,transparent 62%),linear-gradient(180deg,#fff9ee3d 0%,#fff9ee14 34%,transparent 60%),linear-gradient(0deg,#3d342e40 0%,transparent 34%)}.puzzle-stage{position:relative;z-index:1;display:grid;grid-template-areas:"top  top  top" "noki scene rail" "nav  nav  nav" "play play play";grid-template-columns:minmax(13rem,.85fr) minmax(16rem,1.15fr) 5.5rem;grid-template-rows:auto minmax(0,1fr) auto auto;gap:clamp(.35rem,1.2vh,.8rem) clamp(.55rem,1.5vw,1.4rem);align-items:center;min-width:0;min-height:0;padding:clamp(.55rem,1.3vw,1rem)}.puzzle-topbar{display:flex;grid-area:top;align-items:stretch;justify-content:space-between;gap:.75rem;align-self:start;min-width:0}.puzzle-topbar__start{display:flex;flex:1 1 auto;align-items:stretch;gap:.5rem;min-width:0}.puzzle-icon{display:block;width:1.5rem;height:1.5rem}.puzzle-home{display:grid;flex:none;align-self:stretch;place-items:center;width:auto;min-width:44px;height:auto;min-height:44px;aspect-ratio:1;padding:0;border:0;border-radius:.9rem;background:var(--puzzle-wood);box-shadow:inset 0 -.3rem #3d342e59,0 .3rem .7rem #3d342e40;color:var(--puzzle-cream);cursor:pointer}.puzzle-back{min-height:44px;padding:.55rem 1rem;border:0;border-radius:.85rem;background:var(--puzzle-sand);box-shadow:inset 0 -.28rem #784f4333,0 .3rem .7rem #3d342e33;color:var(--puzzle-ink);font:inherit;font-weight:800;cursor:pointer}.puzzle-back--skip{position:absolute;width:1px;height:1px;min-height:0;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.puzzle-back--skip:focus,.puzzle-back--skip:focus-visible{position:static;width:auto;height:auto;min-height:44px;padding:.55rem 1rem;overflow:visible;clip-path:none}.puzzle-replay-navigation{position:relative;z-index:2;display:flex;grid-area:nav;align-items:center;justify-content:center;gap:.6rem;width:min(100%,30rem);justify-self:center}.puzzle-replay-navigation__arrow{display:grid;flex:none;place-items:center;width:2.75rem;min-width:44px;height:2.75rem;min-height:44px;padding:0;border:.12rem solid var(--puzzle-wood);border-radius:.9rem;background:var(--puzzle-sand);box-shadow:inset 0 -.2rem #784f4333,0 .2rem .55rem #3d342e33;color:var(--puzzle-wood);font:inherit;cursor:pointer}.puzzle-replay-navigation__arrow .puzzle-icon{width:1.3rem;height:1.3rem}.puzzle-replay-navigation__arrow:disabled{opacity:.38;box-shadow:none;cursor:default}.puzzle-replay-navigation__info{display:grid;flex:1 1 auto;justify-items:center;gap:.08rem;min-width:0;padding:.35rem .9rem;border:.15rem solid var(--puzzle-wood);border-radius:.8rem;background:var(--puzzle-cream);box-shadow:inset 0 -.25rem #784f4326,0 .3rem .7rem #3d342e33;color:var(--puzzle-ink);text-align:center}.puzzle-replay-navigation__title{font-size:.92rem;font-weight:850;line-height:1.15}.puzzle-replay-navigation__subtitle{color:var(--puzzle-wood);font-size:.72rem;font-weight:750;line-height:1.15}.puzzle-place-card{position:relative;display:flex;align-items:center;gap:.65rem;min-width:0;overflow:hidden;padding:.42rem .8rem;border:.18rem solid #784f43;border-radius:.7rem .95rem .72rem .9rem;background:repeating-linear-gradient(98deg,#784f430d 0 .1rem,transparent .1rem 1rem),var(--puzzle-sand);box-shadow:inset 0 -.2rem #784f4326,0 .28rem .65rem #3d342e40}.puzzle-place-card:before,.puzzle-place-card:after{position:absolute;top:.18rem;bottom:.18rem;width:.22rem;border-radius:50%;background:#784f4338;content:""}.puzzle-place-card:before{left:.22rem}.puzzle-place-card:after{right:.22rem}.puzzle-breadcrumb{display:grid;flex:0 1 auto;grid-template-columns:minmax(0,1fr);gap:.05rem;min-width:0;margin:0;color:var(--puzzle-ink);line-height:1.15}.puzzle-breadcrumb__world{overflow:hidden;color:var(--puzzle-wood);font-size:.72rem;font-weight:750;letter-spacing:.06em;text-transform:uppercase}.puzzle-breadcrumb__place{overflow:hidden;font-size:clamp(1rem,2vw,1.25rem);font-weight:850;text-overflow:ellipsis;white-space:nowrap}.puzzle-progress{display:grid;flex:none;gap:.34rem;width:clamp(10.5rem,18vw,13.5rem);padding-left:.65rem;border-left:1px solid #784f4359;color:var(--puzzle-ink)}.puzzle-progress__item{display:grid;gap:.14rem;min-width:0}.puzzle-progress__header{display:flex;align-items:baseline;justify-content:space-between;gap:.35rem;min-width:0;line-height:1;white-space:nowrap}.puzzle-progress__header strong{flex:none;font-size:.7rem;font-weight:850}.puzzle-progress__label{color:var(--puzzle-wood);font-size:.66rem;font-weight:800;overflow:hidden;text-overflow:ellipsis}.puzzle-progress__unit{color:var(--puzzle-wood);font-size:.58rem;font-weight:750}.puzzle-progress__bar{width:100%;height:.56rem;overflow:hidden;appearance:none;border:.08rem solid #784f4352;border-radius:999px;background:#fff9eea6}.puzzle-progress__bar::-webkit-progress-bar{border-radius:999px;background:#fff9eea6}.puzzle-progress__bar::-webkit-progress-value{border-radius:999px;background:var(--puzzle-progress-fill)}.puzzle-progress__bar::-moz-progress-bar{border-radius:999px;background:var(--puzzle-progress-fill)}.puzzle-progress__bar--repair{--puzzle-progress-fill: #4e9872}.puzzle-progress__bar--step{--puzzle-progress-fill: #e5aa2e}.puzzle-current-diamonds{display:grid;flex:none;align-content:center;gap:.2rem;padding-left:.65rem;border-left:1px solid #784f4359;color:var(--puzzle-ink)}.puzzle-current-diamonds__label{color:var(--puzzle-wood);font-size:.66rem;font-weight:800;line-height:1;white-space:nowrap}.puzzle-current-diamonds__values{display:flex;align-items:center;gap:.2rem}.puzzle-current-diamonds .puzzle-crystal{width:1.35rem;height:1.35rem}.puzzle-topbar__end{display:flex;flex:0 0 auto;align-items:stretch;gap:.35rem;align-self:stretch;min-width:0}.puzzle-shards,.puzzle-diamond-score{display:flex;gap:.3rem;align-items:center;align-self:stretch;box-sizing:border-box;min-height:44px;margin:0;padding:.35rem .55rem;border:.12rem solid #784f43;border-radius:.85rem;background:var(--puzzle-cream);box-shadow:inset 0 -.18rem #784f4326,0 .25rem .55rem #3d342e33;color:var(--puzzle-ink);font-weight:800;font-variant-numeric:tabular-nums;white-space:nowrap}.puzzle-diamond-score .puzzle-crystal{width:clamp(1.35rem,3vw,1.65rem);height:clamp(1.35rem,3vw,1.65rem)}.puzzle-shards .island-map__shard{display:block;width:clamp(1.15rem,3vw,1.6rem);height:clamp(1.15rem,3vw,1.6rem);object-fit:contain}.puzzle-crystal{width:clamp(1.35rem,3.6vw,2rem);height:clamp(1.35rem,3.6vw,2rem);object-fit:contain;filter:drop-shadow(0 .12rem .15rem #173e4273)}.puzzle-crystal--empty{opacity:.65;filter:grayscale(1) brightness(.95) drop-shadow(0 .1rem .12rem #173e4266)}.puzzle-companion{--puzzle-noki-width: clamp(9rem, 15vw, 14rem);position:relative;display:block;grid-area:noki;justify-self:start;align-self:stretch;width:100%;max-width:28rem;height:100%;min-width:0;min-height:0}.puzzle-companion__noki{position:absolute;bottom:0;left:0;display:block;width:var(--puzzle-noki-width);max-height:100%;height:auto;filter:drop-shadow(0 .45rem .4rem #3d342e3d)}.puzzle-bubble{position:absolute;z-index:2;bottom:clamp(5.5rem,10vw,9.5rem);left:var(--puzzle-noki-width);width:clamp(10rem,18vw,14rem);margin:0;padding:.6rem .85rem;border-radius:1rem;background:var(--puzzle-cream);box-shadow:0 .35rem .9rem #3d342e40;color:var(--puzzle-ink);font-size:clamp(.82rem,1.4vw,1rem);font-weight:700;line-height:1.32}.puzzle-bubble__text{margin:0}.puzzle-bubble__result{display:block;color:var(--puzzle-teal);font-weight:900}.puzzle-bubble--tutorial{z-index:3}.puzzle-tutorial-skip{display:block;min-height:44px;margin:.5rem auto 0;padding:.25rem .55rem;border:.1rem solid #784f4359;border-radius:.55rem;background:transparent;color:var(--puzzle-wood);font:inherit;font-size:.7rem;font-weight:800;cursor:pointer}.puzzle-tutorial-skip:hover{background:#784f4314}.puzzle-bubble:after{position:absolute;bottom:.85rem;left:-.45rem;width:.9rem;height:.9rem;background:var(--puzzle-cream);clip-path:polygon(100% 0,100% 100%,0 62%);content:""}.puzzle-goal{display:grid;grid-area:goal;align-self:center;justify-self:center;width:clamp(5.75rem,9vw,7.5rem)}.puzzle-goal__plank{position:relative;display:grid;justify-items:center;gap:.05rem;width:100%;padding:.35rem .6rem .5rem;border:.2rem solid var(--puzzle-wood);border-radius:.8rem;background:repeating-linear-gradient(100deg,#784f4314 0 .12rem,transparent .12rem 1.1rem),var(--puzzle-sand);box-shadow:inset 0 -.35rem #784f431f,0 .4rem .9rem #3d342e40}.puzzle-goal__label{color:var(--puzzle-wood);font-size:clamp(.58rem,1vw,.72rem);font-weight:800;letter-spacing:.09em;text-transform:uppercase}.puzzle-goal__value{color:var(--puzzle-ink);font-size:clamp(2rem,5vh,2.8rem);font-weight:900;line-height:1}.puzzle-commands{display:flex;grid-area:rail;flex-direction:column;gap:.4rem;align-self:center;justify-self:end}.puzzle-command{position:relative;display:grid;justify-items:center;gap:.2rem;width:5.5rem;min-width:44px;min-height:44px;padding:.28rem .2rem .34rem;border:.08rem solid #fff9ee80;border-radius:1rem;background:#3d342ea8;box-shadow:inset 0 .08rem #fff9ee26,0 .25rem .55rem #3d342e33;color:var(--puzzle-cream);font:inherit;font-size:.75rem;font-weight:800;cursor:pointer}.puzzle-command .puzzle-icon{box-sizing:border-box;width:2.35rem;height:2.35rem;padding:.48rem;border:.12rem solid var(--puzzle-wood);border-radius:50%;background:var(--puzzle-sand);box-shadow:inset 0 -.2rem #784f432b,0 .18rem .3rem #173e4252;color:var(--puzzle-wood)}.puzzle-command--hint{border-color:#f4c84a99}.puzzle-command--hint .puzzle-icon{background:#f4c84a;color:#5d4435}.puzzle-command--hint .puzzle-command__label{white-space:normal}.puzzle-command__label{line-height:1.05;text-align:center;white-space:nowrap}.puzzle-command:focus-visible{outline:.2rem solid #f4c84a;outline-offset:.12rem}.puzzle-command:active:not(:disabled){transform:translateY(.12rem)}.puzzle-command:active:not(:disabled) .puzzle-icon{box-shadow:inset 0 .12rem .2rem #784f434d,0 .06rem .12rem #173e424d}.puzzle-command:disabled{cursor:default;border-color:#fff9ee52;background:#3d342eb8;color:#fff9eeb3}.puzzle-command:disabled .puzzle-icon{filter:grayscale(.7);opacity:.62}@media(hover:hover){.puzzle-command:hover:not(:disabled){border-color:#fff9eec2;background:#3d342ec7}}.puzzle-play{position:relative;display:grid;grid-area:play;grid-template-areas:"goal board spacer" "goal operators spacer";grid-template-columns:minmax(6rem,.42fr) minmax(0,1fr) minmax(6rem,.42fr);justify-items:center;gap:clamp(.35rem,1.2vh,.85rem);width:min(100%,48rem);min-width:0;padding:clamp(.5rem,1.2vh,.8rem) clamp(.6rem,2vw,1.2rem) clamp(.65rem,1.5vh,1rem);border:.15rem solid #fff9ee99;border-radius:1.35rem;background:linear-gradient(180deg,#3d342e2e,#3d342e70);box-shadow:inset 0 .15rem #fff9ee45,0 .4rem 1rem #3d342e26;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);align-self:end;justify-self:center}.puzzle-messages{position:absolute;right:0;bottom:calc(100% + .35rem);left:0;z-index:3;display:grid;justify-items:center;gap:.3rem}.puzzle-error,.puzzle-hint-status{max-width:26rem;margin:0;padding:.4rem .85rem;border-radius:.75rem;background:var(--puzzle-cream);box-shadow:0 .3rem .8rem #3d342e40;text-align:center}.puzzle-error{color:#8b2727;font-weight:800}.puzzle-hint-status{color:var(--puzzle-teal);font-weight:700}.puzzle-hint-confirmation{position:fixed;top:var(--puzzle-hint-dialog-top, 50%);left:var(--puzzle-hint-dialog-left, 50%);z-index:10;box-sizing:border-box;display:grid;gap:.65rem;width:min(20rem,calc(100vw - 1rem));max-width:none;max-height:calc(100dvh - 1rem);margin:0;padding:.85rem 1rem;overflow:visible;border:.12rem solid var(--puzzle-teal);border-radius:1rem;background:var(--puzzle-cream);box-shadow:0 .5rem 1.5rem #3d342e73;color:var(--puzzle-ink);font:inherit;text-align:left}.puzzle-hint-confirmation:not([open]){display:none}.puzzle-hint-confirmation::backdrop{background:#173e4273}.puzzle-hint-confirmation:after{position:absolute;width:1rem;height:1rem;background:var(--puzzle-cream);content:""}.puzzle-hint-confirmation[data-placement=right]:after{top:calc(var(--puzzle-hint-dialog-tail-offset) - .5rem);left:-.75rem;clip-path:polygon(100% 0,100% 100%,0 50%)}.puzzle-hint-confirmation[data-placement=left]:after{top:calc(var(--puzzle-hint-dialog-tail-offset) - .5rem);right:-.75rem;clip-path:polygon(0 0,100% 50%,0 100%)}.puzzle-hint-confirmation[data-placement=above]:after{bottom:-.75rem;left:calc(var(--puzzle-hint-dialog-tail-offset) - .5rem);clip-path:polygon(0 0,100% 0,50% 100%)}.puzzle-hint-confirmation p{margin:0;font-weight:800;line-height:1.32}.puzzle-hint-confirmation__actions{display:flex;flex-wrap:wrap;justify-content:center;gap:.45rem}.puzzle-hint-confirmation__actions button{min-height:2.75rem;padding:.35rem .75rem;border:.1rem solid var(--puzzle-wood);border-radius:.55rem;background:transparent;color:var(--puzzle-wood);font:inherit;font-size:.78rem;font-weight:800;cursor:pointer}.puzzle-hint-confirmation__actions button:first-child{background:var(--puzzle-teal);color:var(--puzzle-cream)}.puzzle-hint-confirmation__actions button:hover{filter:brightness(1.06)}.puzzle-board{position:relative;display:grid;grid-area:board;justify-items:center;width:100%;max-width:100%;min-width:0}.puzzle-tiles,.puzzle-operators{box-sizing:border-box;display:flex;flex-wrap:wrap;gap:clamp(.4rem,1.2vw,.9rem);justify-content:center;width:100%;max-width:100%;min-width:0}.puzzle-operators{grid-area:operators}.puzzle-tile-shell{position:relative;display:grid;place-items:center;min-width:0}.puzzle-tile,.puzzle-operator{box-sizing:border-box;display:grid;align-items:center;justify-items:center;place-items:center;aspect-ratio:1;min-width:44px;min-height:44px;border:0;font:inherit;font-weight:900;cursor:pointer;text-align:center}.puzzle-tile{position:relative;overflow:hidden;width:clamp(3.25rem,8vh,4.5rem);max-width:100%;border-radius:.9rem;background:var(--puzzle-cream);box-shadow:inset 0 -.35rem #784f4326,0 .35rem .8rem #3d342e3d;color:var(--puzzle-ink);font-size:clamp(1.3rem,3.8vh,2.05rem);font-variant-numeric:tabular-nums;line-height:1;white-space:nowrap}.puzzle-tile--derived{border:.16rem solid #3f7291;background:linear-gradient(145deg,#fff9ee 0 56%,#d8efe4 56% 100%);box-shadow:inset 0 -.35rem #3f72912b,0 .35rem .8rem #3d342e3d}.puzzle-tile--derived:after{position:absolute;right:.28rem;bottom:.22rem;width:.72rem;height:.72rem;border-radius:50%;background:var(--puzzle-teal);box-shadow:inset 0 0 0 .18rem #fff9eecc;content:""}.puzzle-break{position:absolute;z-index:2;top:-.65rem;right:-.55rem;display:grid;min-width:2.9rem;height:1.75rem;padding:.12rem .38rem;border:.12rem solid var(--puzzle-cream);border-radius:.7rem;background:var(--puzzle-teal);box-shadow:0 .2rem .4rem #3d342e59;color:var(--puzzle-cream);font-size:.6rem;font-weight:900;cursor:pointer;place-items:center}.puzzle-break:before{position:absolute;content:"";inset:-.4rem}.puzzle-operator{width:min(clamp(3.3rem,9vh,4.8rem),var(--puzzle-tile-size));padding:0;border-radius:1rem;box-shadow:inset 0 -.4rem #3d342e59,0 .35rem .8rem #3d342e47;color:var(--puzzle-cream);font-size:clamp(1.6rem,5vh,2.4rem);line-height:1;touch-action:manipulation;text-shadow:0 0 .14rem #3d342eb3,0 .1rem 0 #3d342e73}.puzzle-operator>span{display:block;line-height:1;transform:translateY(-.12em)}.puzzle-operator--add{background:#779a40}.puzzle-operator--subtract{background:#fd9a39}.puzzle-operator--multiply{background:#3f7291}.puzzle-operator--divide{background:#935ec3}.puzzle-operator:disabled{cursor:not-allowed;opacity:.38;filter:grayscale(.72);box-shadow:inset 0 -.25rem #3d342e3d,0 .2rem .45rem #3d342e2e}.puzzle-tile[aria-pressed=true]{background:var(--puzzle-sand);outline:.25rem solid var(--puzzle-teal);outline-offset:.15rem;box-shadow:inset 0 -.35rem #784f4333,0 .7rem 1rem #3d342e4d;transform:translateY(-.35rem)}.puzzle-operator[aria-pressed=true]{outline:.25rem solid var(--puzzle-cream);outline-offset:.15rem;transform:translateY(-.3rem)}.puzzle-tile--awaiting{outline:.18rem dashed #125f6399;outline-offset:.15rem}.puzzle-tile--hint,.puzzle-operator--hint{z-index:2;outline:.3rem solid #f4c84a;outline-offset:.22rem;box-shadow:0 0 0 .12rem #fff9ee,0 0 1.25rem #f4c84acc,inset 0 -.35rem #3d342e26}.puzzle-tutorial-target{z-index:2;outline:.3rem solid #f4c84a;outline-offset:.22rem;box-shadow:0 0 0 .12rem #fff9ee,0 0 1.25rem #f4c84acc,inset 0 -.35rem #784f4326}.puzzle-tutorial-dimmed{opacity:.3;filter:grayscale(.8)}.puzzle-tile--merging{visibility:hidden}.puzzle-fusion{position:absolute;inset:0;pointer-events:none}.puzzle-fusion__tile{position:absolute;display:flex;align-items:center;justify-content:center;box-sizing:border-box;overflow:hidden;border-radius:.9rem;background:var(--puzzle-cream);box-shadow:inset 0 -.35rem #784f4326,0 .35rem .8rem #3d342e3d;font-size:clamp(1.3rem,3.8vh,2.05rem);font-weight:900;font-variant-numeric:tabular-nums;line-height:1;white-space:nowrap}.puzzle-fusion__tile--left{top:var(--fusion-left-y);left:var(--fusion-left-x);width:var(--fusion-left-w);height:var(--fusion-left-h)}.puzzle-fusion__tile--right{top:var(--fusion-right-y);left:var(--fusion-right-x);width:var(--fusion-right-w);height:var(--fusion-right-h)}.puzzle-spark{position:relative;width:3rem;height:3rem;border-radius:50%;background:radial-gradient(circle,#fff2c8 0%,#f4c84a66 45%,transparent 72%)}.puzzle-spark:before,.puzzle-spark:after{position:absolute;background:linear-gradient(135deg,#ffe08a,#fff9ee 50%,#ffcf5c);clip-path:polygon(50% 0%,61% 39%,100% 50%,61% 61%,50% 100%,39% 61%,0% 50%,39% 39%);content:"";inset:12%}.puzzle-spark:after{transform:rotate(45deg)}.puzzle-spark--energy{opacity:0}.puzzle-spark--burst{position:absolute;top:var(--fusion-right-y);left:var(--fusion-right-x);width:var(--fusion-right-w);height:var(--fusion-right-h);opacity:0}.puzzle-view button:focus-visible{outline:.22rem solid var(--puzzle-teal);outline-offset:.18rem;box-shadow:0 0 0 .45rem #fff9eecc}.sr-only{position:absolute;top:0;left:0;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap}@media(min-width:44.01rem){.puzzle-place-card{min-width:clamp(26rem,39vw,28.6rem)}.puzzle-tiles{display:grid;gap:clamp(.25rem,.55vw,.45rem);grid-template-columns:repeat(auto-fit,minmax(3.3rem,4rem));justify-content:center}.puzzle-tile{width:100%}}@media(max-width:44rem){.puzzle-view{--puzzle-tile-size: clamp(2.75rem, 14vw, 3.55rem)}.puzzle-stage{grid-template-areas:"top top" "noki scene" "nav nav" "play play" "rail rail";grid-template-columns:minmax(6.5rem,.72fr) minmax(9rem,1.28fr);grid-template-rows:auto minmax(0,1fr) auto auto auto;gap:.4rem .25rem;padding:.5rem}.puzzle-topbar{gap:.35rem}.puzzle-replay-navigation{width:100%}.puzzle-topbar__start{gap:.35rem}.puzzle-home{width:auto;height:auto}.puzzle-place-card{box-sizing:border-box;display:grid;grid-template-columns:minmax(0,1fr) clamp(4.1rem,17vw,5.4rem);align-items:stretch;width:min(18rem,calc(100vw - 10.65rem));max-width:calc(100vw - 10.65rem);gap:.25rem;padding:.38rem .3rem}.puzzle-breadcrumb{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.puzzle-breadcrumb__world{font-size:.58rem}.puzzle-breadcrumb__place{display:block;overflow:hidden;font-size:.84rem;text-overflow:ellipsis;white-space:nowrap}.puzzle-progress{grid-column:1;gap:.22rem;width:100%;padding:0;border-top:0;border-left:0}.puzzle-current-diamonds{position:static;display:grid;grid-column:2;align-content:center;justify-items:center;gap:.16rem;box-sizing:border-box;width:auto;height:auto;padding-left:.25rem;border-left:1px solid #784f4359}.puzzle-current-diamonds__label{font-size:clamp(.62rem,1.9vw,.7rem)}.puzzle-current-diamonds__values{justify-content:center;gap:.06rem}.puzzle-current-diamonds .puzzle-crystal{width:clamp(1rem,3.5vw,1.25rem);height:clamp(1rem,3.5vw,1.25rem)}.puzzle-progress__label{font-size:.58rem}.puzzle-progress__header strong{font-size:.6rem}.puzzle-progress__unit{font-size:.52rem}.puzzle-progress__bar{height:.5rem}.puzzle-topbar__end{gap:.2rem}.puzzle-shards,.puzzle-diamond-score{gap:.2rem;padding:.3rem .4rem}.puzzle-diamond-score .puzzle-crystal,.puzzle-shards .island-map__shard{width:1.3rem;height:1.3rem}.puzzle-companion{grid-row:2;grid-column:1 / -1;width:100%;max-width:100%;--puzzle-noki-width: clamp(6.75rem, 30vw, 9rem)}.puzzle-companion__noki{width:var(--puzzle-noki-width)}.puzzle-bubble{bottom:0;left:calc(var(--puzzle-noki-width) + .5rem);width:min(46vw,11.5rem);padding:.45rem .58rem;font-size:clamp(.66rem,2.7vw,.78rem)}.puzzle-bubble:after{bottom:.85rem;left:-.45rem;clip-path:polygon(100% 0,100% 100%,0 62%)}.puzzle-tutorial-skip{min-height:44px;margin-top:.3rem;padding:.15rem .35rem;font-size:.62rem}.puzzle-goal{align-self:center;width:clamp(4.65rem,20vw,5.5rem)}.puzzle-goal__plank{padding:.28rem .4rem .42rem}.puzzle-goal__value{font-size:clamp(1.85rem,8vw,2.5rem)}.puzzle-commands{width:min(calc(100% + .75rem),calc(100vw - .25rem));flex-direction:row;gap:.2rem;justify-content:center;justify-self:center}.puzzle-command{width:auto;min-width:44px;max-width:6rem;min-height:46px;flex:1 1 44px;padding:.22rem .02rem .28rem;font-size:clamp(.68rem,2.9vw,.75rem)}.puzzle-command .puzzle-icon{width:2rem;height:2rem;padding:.4rem}.puzzle-command__label{white-space:normal}.puzzle-play{box-sizing:border-box;grid-template-areas:"goal board" "goal operators";grid-template-columns:clamp(4.85rem,22vw,6.2rem) minmax(0,1fr);gap:.24rem .1rem;padding:.35rem .3rem .45rem;border-radius:1.1rem}.puzzle-play--has-alert{z-index:3}.puzzle-tiles{box-sizing:border-box;display:grid;grid-auto-flow:column;grid-auto-columns:minmax(0,var(--puzzle-tile-size));gap:clamp(.2rem,1.2vw,.45rem);justify-content:center;width:100%;max-width:100%}.puzzle-operators{box-sizing:border-box;flex-wrap:wrap;gap:clamp(.28rem,1.8vw,.48rem);width:100%;max-width:100%}.puzzle-tile{box-sizing:border-box;width:100%;min-width:0;min-height:44px;padding:0;overflow:hidden;font-size:clamp(1rem,4.5vw,1.65rem);font-variant-numeric:tabular-nums;line-height:1;white-space:nowrap}.puzzle-operator{width:var(--puzzle-tile-size);min-width:44px;min-height:44px;font-size:clamp(1.45rem,7vw,2rem)}.puzzle-scene__subject{bottom:46%;left:58%;height:clamp(10rem,38%,17rem)}.puzzle-scene--painted .puzzle-scene__subject{bottom:46%;left:50%;height:clamp(9rem,31%,15rem);transform:translate(-50%,1.1rem)}}@media(max-width:24rem){.puzzle-stage{grid-template-columns:minmax(5rem,.72fr) minmax(0,1.28fr)}.puzzle-home{align-self:start;width:3.5rem;height:3.5rem}.puzzle-place-card{grid-template-columns:minmax(0,1fr);grid-template-rows:auto auto}.puzzle-progress{grid-column:1;grid-row:1}.puzzle-current-diamonds{display:flex;grid-column:1;grid-row:2;align-items:center;gap:.25rem;justify-content:start;padding-top:.1rem;padding-left:0;border-left:0}.puzzle-current-diamonds__label{display:block;font-size:.64rem}.puzzle-current-diamonds .puzzle-crystal{width:1.2rem;height:1.2rem}.puzzle-progress__header{gap:.1rem}.puzzle-progress__label,.puzzle-progress__header strong{font-size:.52rem}.puzzle-progress__unit{display:none}.puzzle-scene--painted .puzzle-scene__subject{bottom:56%}.puzzle-play{grid-template-columns:clamp(3.6rem,18vw,5rem) minmax(0,1fr)}.puzzle-goal{width:clamp(3.6rem,18vw,5rem)}.puzzle-tiles{gap:.2rem}.puzzle-tile{font-size:clamp(.88rem,4vw,1.35rem)}}@media(min-width:44.01rem)and (max-width:60rem)and (orientation:portrait){.puzzle-scene--painted .puzzle-scene__subject{left:50%;height:clamp(15rem,36%,21rem)}.puzzle-bubble{right:auto;bottom:clamp(9rem,15vw,12rem);left:0}.puzzle-bubble:after{bottom:-.45rem;left:2.25rem;clip-path:polygon(0 0,100% 0,38% 100%)}}@media(max-height:42rem)and (min-width:44.01rem){.puzzle-stage{gap:.3rem .75rem;padding:.45rem .75rem}.puzzle-place-card{padding-block:.28rem}.puzzle-companion__noki{width:clamp(8rem,14vw,10.5rem)}.puzzle-bubble{margin-bottom:1.2rem;font-size:.76rem}.puzzle-goal{width:6.5rem}.puzzle-goal__value{font-size:2.35rem}.puzzle-play{gap:.35rem;padding-block:.45rem .55rem}.puzzle-tile{width:3rem;font-size:1.45rem}.puzzle-operator{width:3.15rem;font-size:1.65rem}.puzzle-command{min-height:44px;padding-block:.3rem}.puzzle-scene__subject{bottom:23%;height:60%}}@media(prefers-reduced-motion:no-preference){.puzzle-tile,.puzzle-operator{transition:transform .16s ease,outline-color .16s ease}.puzzle-tile--fused{animation:puzzle-tile-pop .32s ease-out}.puzzle-tile--awaiting{animation:puzzle-tile-awaiting 1.6s ease-in-out infinite}.puzzle-error{animation:puzzle-shake .32s ease}.puzzle-goal{animation:puzzle-sign-sway 5s ease-in-out infinite alternate;transform-origin:50% .8rem}.puzzle-bubble{animation:puzzle-bubble-pop .24s ease-out}.puzzle-spark--energy{animation:puzzle-spark-energy .64s ease-out both}.puzzle-fusion__tile--left{animation:puzzle-fusion-travel .3s ease-in both}.puzzle-fusion__tile--right{animation:puzzle-fusion-absorb .3s ease-in 80ms both}.puzzle-spark--burst{animation:puzzle-spark-burst .38s ease-out .22s both}}@keyframes puzzle-tile-pop{0%{transform:scale(.55)}65%{transform:scale(1.12)}to{transform:scale(1)}}@keyframes puzzle-tile-awaiting{0%,to{outline-color:#125f6947}50%{outline-color:#125f63e6}}@keyframes puzzle-sign-sway{0%{transform:rotate(-.8deg)}to{transform:rotate(.8deg)}}@keyframes puzzle-bubble-pop{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}@keyframes puzzle-shake{0%,to{transform:translate(0)}20%,60%{transform:translate(-.35rem)}40%,80%{transform:translate(.35rem)}}@keyframes puzzle-spark-energy{0%{opacity:0;transform:scale(.4) rotate(0)}55%{opacity:1;transform:scale(1.05) rotate(20deg)}to{opacity:.85;transform:scale(1.25) rotate(30deg)}}@keyframes puzzle-spark-burst{0%{opacity:0;transform:scale(.3) rotate(0)}45%{opacity:1;transform:scale(1.2) rotate(25deg)}to{opacity:0;transform:scale(1.6) rotate(45deg)}}@keyframes puzzle-fusion-travel{0%{opacity:1;transform:translate(0) scale(1)}80%{opacity:1;transform:translate(var(--fusion-dx),var(--fusion-dy)) scale(.85)}to{opacity:0;transform:translate(var(--fusion-dx),var(--fusion-dy)) scale(.6)}}@keyframes puzzle-fusion-absorb{0%,50%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(.7)}}@media(prefers-reduced-motion:reduce){.puzzle-tile--fused,.puzzle-tile--awaiting,.puzzle-error,.puzzle-goal,.puzzle-bubble,.puzzle-spark--energy,.puzzle-scene__staged-shard,.puzzle-scene__staged-shard img{animation:none}.puzzle-scene__hill,.puzzle-goal__rope{transform:none}}:root{--wood: #c08341;--wood-dark: #8e5a2a;--wood-deep: #5b3a22;--cream: #fff6e4;--sand: #e9ce9c;--sand-deep: #d9b77e;--leaf: #8fc44b;--leaf-dark: #4c7222;--ink: #3d342e}.shell{position:relative;isolation:isolate;min-height:100svh;display:flex;flex-direction:column;align-items:center;gap:clamp(1rem,3vh,1.75rem);padding:clamp(1rem,4vw,2.5rem);padding-top:max(clamp(1rem,4vw,2.5rem),env(safe-area-inset-top));padding-bottom:max(clamp(1.5rem,4vw,2.5rem),env(safe-area-inset-bottom));color:var(--ink);overflow-x:hidden}.shell>*{min-width:0;max-width:100%}.splash-bg{position:fixed;inset:0;z-index:-2;display:block}.splash-bg img{display:block;width:100%;height:100%;object-fit:cover;object-position:center}.shell:before{content:"";position:fixed;inset:0;z-index:-1;background:linear-gradient(180deg,#10344a4d,#10344a1f 32%,#10344a29 68%,#10344a5c)}.sign{position:relative;margin-top:1.75rem;max-width:min(100%,32rem);padding:clamp(.6rem,2.5vw,1rem) clamp(1.5rem,6vw,3rem);border:.45rem solid var(--wood);border-radius:1.2rem;background:linear-gradient(180deg,#f6e3bc,var(--sand));box-shadow:inset 0 0 0 .16rem #f9efd9,inset 0 -.5rem 1rem #c8a06633,0 .55rem 0 var(--wood-dark),0 1rem 1.6rem #10241166;text-align:center}.sign:before,.sign:after{content:"";position:absolute;top:-1.6rem;width:.42rem;height:1.7rem;border-radius:.2rem;background:repeating-linear-gradient(-35deg,#c8a163 0 .22rem,#a37d43 .22rem .44rem)}.sign:before{left:16%}.sign:after{right:16%}.sign__title{margin:0;font-size:clamp(1.5rem,5.5vw,2.4rem);font-weight:800;letter-spacing:-.01em;color:var(--wood-deep);text-shadow:0 .11rem 0 #fff8e8}.shell__lead{max-width:30rem;margin:0;text-align:center;font-weight:650;font-size:clamp(.95rem,3.2vw,1.1rem);line-height:1.35;color:#fff;text-shadow:0 .12rem .5rem #0e2c3fb3}.panel{width:100%;padding:clamp(.9rem,3.5vw,1.4rem);border:.28rem solid var(--sand-deep);border-radius:1.2rem;background:linear-gradient(180deg,var(--cream),#f6e6c6);box-shadow:inset 0 0 0 .14rem #fffaf0,0 .6rem 1.4rem #10241159}.panel--dashed{border-style:dashed;border-color:var(--wood);background:#fff6e4d9}.panel__title{margin:0 0 .6rem;font-size:1.05rem;font-weight:800;color:var(--wood-deep)}.btn{min-height:48px;padding:.75rem 1.3rem;border:.24rem solid transparent;border-radius:1rem;font:inherit;font-weight:800;cursor:pointer;transition:transform .12s ease,box-shadow .12s ease,filter .12s ease}.btn:disabled{cursor:not-allowed;filter:grayscale(.45);opacity:.7}.btn--primary{color:#fff;background:linear-gradient(180deg,var(--leaf),#6c9f33);border-color:var(--leaf-dark);box-shadow:inset 0 .15rem #ffffff59,0 .45rem 0 var(--leaf-dark),0 .8rem 1.2rem #14320a4d;text-shadow:0 .1rem 0 #00000040}.btn--wood{color:var(--wood-deep);background:linear-gradient(180deg,#f3e0bc,#e3c68f);border-color:var(--wood);box-shadow:inset 0 .15rem #fffaf0a6,0 .4rem 0 var(--wood-dark),0 .7rem 1rem #1024113d}.btn--danger{color:#fff;background:linear-gradient(180deg,#e0655a,#c2443a);border-color:#8c2b26;box-shadow:inset 0 .15rem #ffffff4d,0 .45rem #8c2b26,0 .8rem 1.2rem #4a0f0b40;text-shadow:0 .1rem 0 #00000040}.btn--large{width:100%;max-width:26rem;font-size:clamp(1.1rem,4.5vw,1.4rem);padding:.9rem 1.5rem}.btn:active:not(:disabled){transform:translateY(.28rem);box-shadow:inset 0 .15rem #ffffff40,0 .16rem #00000059}.icon-btn{display:grid;place-items:center;width:3rem;height:3rem;padding:0;border:.2rem solid #4a3122;border-radius:.95rem;background:linear-gradient(180deg,#7d5941,#62422f);color:var(--cream);cursor:pointer;box-shadow:inset 0 .15rem #ffffff2e,0 .35rem #4a3122,0 .6rem .9rem #10241159}.icon-btn:active:not(:disabled){transform:translateY(.24rem);box-shadow:inset 0 .15rem #ffffff2e,0 .12rem #4a3122}.icon-btn svg{width:1.5rem;height:1.5rem}.shell__corner{position:absolute;top:max(clamp(1rem,4vw,2.5rem),env(safe-area-inset-top));left:clamp(1rem,4vw,2.5rem);z-index:2}.field{display:flex;flex-direction:column;gap:.4rem}.field__label{font-weight:750;color:var(--wood-deep)}.field__input{width:100%;min-height:48px;padding:.7rem 1rem;border:.22rem solid var(--sand-deep);border-radius:.9rem;background:#fffdf7;font:inherit;font-weight:700;color:var(--ink)}.field__input:focus{outline:0;border-color:var(--leaf);box-shadow:0 0 0 .25rem #8fc44b4d}.field__hint{font-size:.85rem;color:#7a634d}.shell__error{width:100%;max-width:26rem;padding:.75rem 1rem;border:.2rem solid #d9534f;border-radius:.9rem;background:#ffe6e1;color:#8c2b26;font-weight:700;text-align:center}.avatar-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(.4rem,2vw,.7rem);margin:0;padding:0;list-style:none}@media(min-width:600px){.avatar-grid{grid-template-columns:repeat(8,minmax(0,1fr))}}.avatar-choice{width:100%;aspect-ratio:1;padding:.15rem;border:.2rem solid #e7cfa2;border-radius:.9rem;background:radial-gradient(circle at 50% 30%,#e8f5ff,#d8ecd9);cursor:pointer}.avatar-choice img{display:block;width:100%;height:100%;object-fit:contain}.avatar-choice[aria-pressed=true]{border-color:var(--leaf-dark);box-shadow:0 0 0 .22rem var(--leaf),0 .4rem .8rem #14320a4d}.difficulty-choices{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(.4rem,2vw,.7rem)}@media(min-width:420px){.difficulty-choices{grid-template-columns:repeat(4,minmax(0,1fr))}}.difficulty-choice{min-height:44px;padding:.5rem .6rem;border:.2rem solid #e7cfa2;border-radius:.9rem;background:#fffdf7;font:inherit;font-weight:700;color:var(--ink);cursor:pointer}.difficulty-choice[aria-pressed=true]{border-color:var(--leaf-dark);background:radial-gradient(circle at 50% 30%,#e8f5ff,#d8ecd9);box-shadow:0 0 0 .22rem var(--leaf),0 .4rem .8rem #14320a4d}:where(.shell) button:focus-visible,:where(.shell) input:focus-visible{outline:.25rem solid #ffd76a;outline-offset:.2rem}@media(prefers-reduced-motion:reduce){.btn,.icon-btn{transition:none}}.settings{justify-content:flex-start}.settings__columns{display:grid;gap:clamp(.75rem,3vw,1.1rem);width:100%;max-width:66rem}@media(min-width:700px){.settings__columns--with-profile{grid-template-columns:minmax(0,1.45fr) minmax(14rem,.85fr);align-items:start}.settings__columns--with-profile .settings__aside{grid-column:2}}.settings__section{display:flex;flex-direction:column;gap:.75rem}.settings__aside{display:grid;gap:clamp(.75rem,3vw,1.1rem)}@media(min-width:480px){.settings .avatar-grid{grid-template-columns:repeat(8,minmax(0,1fr));gap:.15rem}}.settings__identity{display:flex;align-items:center;gap:.9rem}.settings__portrait{flex:0 0 auto;width:clamp(4.5rem,18vw,5.5rem)}.settings__field{flex:1 1 auto;min-width:0}.settings__row{display:flex;flex-wrap:wrap;gap:.6rem}.settings__row--transfer{align-items:center}.settings__action{min-height:44px;padding:.5rem .85rem;border-width:.2rem;border-radius:.8rem;font-size:.95rem}.settings__note{margin:0;color:#6f5a45;font-size:.92rem;line-height:1.4}.settings__file{display:inline-flex;align-items:center;cursor:pointer}.settings__file input{position:absolute;width:1px;height:1px;padding:0;border:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.settings__file:has(input:disabled){cursor:not-allowed;filter:grayscale(.45);opacity:.7}.settings__toggle{display:inline-flex;align-items:center;gap:.6rem;min-height:44px;font-weight:750;color:var(--wood-deep);cursor:pointer}.settings__toggle input{width:1.5rem;height:1.5rem;accent-color:#6c9f33}.settings__danger{display:flex;justify-content:flex-end;padding-top:.6rem;border-top:.14rem dashed var(--sand-deep)}.settings__delete{min-height:44px;padding:.4rem .2rem;border:0;background:none;color:#a23a33;font:inherit;font-size:.92rem;font-weight:750;text-decoration:underline;text-underline-offset:.2em;cursor:pointer}.settings__delete:disabled{cursor:not-allowed;opacity:.6}.delete-profile{box-sizing:border-box;width:min(24rem,calc(100vw - 2rem));max-height:calc(100dvh - 2rem);padding:clamp(1.1rem,4vw,1.6rem);overflow-y:auto;border:.28rem solid var(--wood);border-radius:1.3rem;background:linear-gradient(180deg,var(--cream),#f6e6c6);box-shadow:inset 0 0 0 .14rem #fffaf0,0 .5rem 0 var(--wood-dark),0 1.2rem 2.4rem #10241166;color:var(--ink);text-align:center}.delete-profile[open]{display:grid;justify-items:center;gap:.8rem;animation:delete-profile-in .18s ease-out}.delete-profile::backdrop{background:#0e2c3f99;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}@keyframes delete-profile-in{0%{opacity:0;transform:translateY(.6rem) scale(.97)}}@media(prefers-reduced-motion:reduce){.delete-profile[open]{animation:none}}.delete-profile__portrait{width:5rem;filter:grayscale(.35)}.delete-profile__title{margin:0;color:var(--wood-deep);font-size:clamp(1.15rem,4.5vw,1.35rem);font-weight:850;line-height:1.25;overflow-wrap:anywhere}.delete-profile__body{display:grid;gap:.6rem}.delete-profile__body p{margin:0;line-height:1.4}.delete-profile__warning{padding:.6rem .8rem;border:.16rem solid #d9534f;border-radius:.8rem;background:#ffe6e1;color:#8c2b26;font-size:.95rem}.delete-profile__actions{display:flex;flex-wrap:wrap;justify-content:center;gap:.75rem;width:100%;padding-top:.3rem}.delete-profile__actions .btn{flex:1 1 10rem}.app-shell{min-height:100svh;background:linear-gradient(145deg,#f4dfc0,#d8efe4)}.app-message{position:fixed;z-index:30;top:max(.75rem,env(safe-area-inset-top));right:.75rem;left:.75rem;width:fit-content;max-width:52rem;margin:0 auto;padding:.8rem 1rem;border-radius:.8rem;background:#e4f3d2;box-shadow:0 .45rem 1.2rem #173e4233;text-align:center}.app-message--error{background:#ffe0dc;color:#7a2929}.app-message--update{display:grid;grid-template-columns:2.5rem minmax(0,1fr) 2.5rem;align-items:center;gap:.65rem .75rem;width:calc(100% - 1.5rem);max-width:42rem;padding:.75rem;border:.12rem solid #d9b77e;border-radius:1rem;background:linear-gradient(145deg,#fffaf0,#f8e9ca);box-shadow:inset 0 0 0 .08rem #ffffffb8,0 .45rem 1.25rem #10241138;color:#3d342e;text-align:start}.app-message__update-icon{display:grid;place-items:center;width:2.5rem;height:2.5rem;border-radius:50%;background:#e2f0ce;color:#4c7222;box-shadow:inset 0 0 0 .1rem #c4daa5}.app-message__update-icon svg{width:1.45rem;height:1.45rem;fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:2}.app-message__title{min-width:0;font-size:.98rem;font-weight:800;line-height:1.25;color:#3d342e}.app-message--update .app-message__actions{grid-column:2 / 4;display:grid;grid-template-columns:minmax(0,1fr) 2.5rem;gap:.65rem}.app-message--update .btn{min-height:2.65rem;padding:.5rem 1rem;border:.13rem solid #34541a;border-radius:.8rem;color:#fff;background:linear-gradient(180deg,#527f28,#456b20);box-shadow:inset 0 .1rem #ffffff52,0 .22rem #34541a;font-size:.95rem;font-weight:800;text-shadow:0 .08rem 0 #0000003d}.app-message--update .btn:active:not(:disabled){transform:translateY(.15rem);box-shadow:inset 0 .1rem #ffffff52}.app-message--update .icon-btn{width:2.5rem;height:2.5rem;border:0;border-radius:50%;background:#efe2c9;color:#365b55;box-shadow:inset 0 0 0 .1rem #dcc7a3}.app-message--update .icon-btn:hover:not(:disabled){background:#e2f0ce;color:#34551b}.app-message--update .icon-btn:active:not(:disabled){transform:translateY(.1rem);box-shadow:inset 0 0 0 .1rem #bcd497}.app-message--update .icon-btn svg{width:1.15rem;height:1.15rem;fill:none;stroke:currentColor;stroke-linecap:round;stroke-width:2.25}.app-message--update :is(.btn,.icon-btn):focus-visible{outline:.2rem solid #125f63;outline-offset:.16rem}.app-message--offline-ready{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:.65rem .8rem;max-width:min(34rem,100%);padding:.7rem .85rem;border:.22rem solid var(--sand-deep);border-radius:1.1rem;background:linear-gradient(180deg,var(--cream),#f6e6c6);box-shadow:inset 0 0 0 .12rem #fffaf0,0 .5rem 1.2rem #10241147;color:var(--wood-deep);font-weight:700;text-align:start;pointer-events:none}.app-message--offline-ready>span:first-child{flex:1 1 11rem}@media(min-width:600px){.app-message--update{grid-template-columns:2.5rem minmax(0,1fr) auto 2.5rem;width:fit-content;max-width:min(42rem,calc(100% - 9rem))}.app-message--update .app-message__actions{grid-column:auto;display:contents}.app-message--update .btn{min-width:8.5rem}.app-message--offline-ready{max-width:min(42rem,calc(100% - 9rem))}}.app-message--offline-ready .app-message__actions{display:inline-flex;align-items:center;gap:.45rem;pointer-events:auto}.app-message--offline-ready .btn{min-height:2.75rem;padding:.55rem 1.1rem;border-radius:.85rem;font-size:.95rem}.app-message--offline-ready .icon-btn{width:2.75rem;height:2.75rem;border-width:.16rem;border-radius:.85rem;font-size:1.1rem}.restoration-reward{position:fixed;z-index:40;inset:0;overflow:hidden;pointer-events:none}.restoration-reward__flight{position:absolute;z-index:2;inset:0}.restoration-reward__smoke{position:absolute;z-index:1;inset:0}.restoration-reward__smoke span{position:absolute;top:var(--reward-from-y, 55vh);left:var(--reward-from-x, 50vw);width:clamp(3rem,8vw,6rem);aspect-ratio:1;border-radius:50%;background:radial-gradient(circle,#fff9eed9 0 32%,#d8efe499 58%,transparent 72%);filter:blur(.18rem);transform:translate(-50%,-50%) rotate(var(--smoke-angle)) translateY(0) scale(.2);animation:restoration-reward-smoke .75s ease-out var(--smoke-delay) both}.app-shell--restoring .puzzle-scene__subject,.app-shell--restoring .place-restored__subject{animation:restoration-asset-change .72s cubic-bezier(.2,.9,.25,1.15) both}.restoration-reward__shard{position:absolute;top:0;left:0;width:clamp(1.5rem,4vw,2.5rem);height:clamp(1.5rem,4vw,2.5rem);object-fit:contain;filter:drop-shadow(0 0 .45rem #ffcf5c);animation:restoration-reward-flight .9s cubic-bezier(.32,.05,.25,1) var(--reward-delay, 0ms) both}@keyframes restoration-reward-flight{0%{opacity:0;transform:translate(var(--reward-from-x, 50vw),var(--reward-from-y, 55vh)) translate(-50%,-50%) scale(calc(.35 * var(--reward-scale, .7))) rotate(-25deg)}18%{opacity:1}62%{transform:translate(var(--reward-to-x, 95vw),calc(var(--reward-to-y, 2.5rem) - 5rem)) translate(-50%,-50%) scale(calc(1.05 * var(--reward-scale, .7))) rotate(18deg)}to{opacity:0;transform:translate(var(--reward-to-x, 95vw),var(--reward-to-y, 2.5rem)) translate(-50%,-50%) scale(calc(.45 * var(--reward-scale, .7))) rotate(55deg)}}@keyframes restoration-reward-smoke{35%{opacity:.92}to{opacity:0;transform:translate(-50%,-50%) rotate(var(--smoke-angle)) translateY(-5rem) scale(1.15)}}@keyframes restoration-asset-change{0%{filter:brightness(1.7) saturate(.7);scale:.78}58%{filter:brightness(1.2) saturate(1.15);scale:1.09}}@media(prefers-reduced-motion:reduce){.restoration-reward__shard{display:none;animation:none}.restoration-reward__smoke{display:none}.app-shell--restoring .puzzle-scene__subject,.app-shell--restoring .place-restored__subject{animation:none}}button:focus-visible{outline:.25rem solid #8a63c7;outline-offset:.2rem}.profile-select,.profile-create{justify-content:center}.profile-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(7.5rem,10.5rem));justify-content:center;gap:clamp(.5rem,2.5vw,.9rem);width:100%;max-width:34rem;margin:0;padding:0;list-style:none}.profile-card{display:flex;flex-direction:column;gap:.5rem;width:100%;padding:.55rem;border:.28rem solid var(--sand-deep);border-radius:1.1rem;background:linear-gradient(180deg,var(--cream),#f3ddb4);font:inherit;cursor:pointer;box-shadow:inset 0 0 0 .14rem #fffaf0,0 .55rem 1.1rem #10241159;transition:transform .12s ease,box-shadow .12s ease}.profile-card:hover:not(:disabled),.profile-card:focus-visible{border-color:var(--leaf-dark);transform:translateY(-.15rem);box-shadow:inset 0 0 0 .14rem #fffaf0,0 0 0 .28rem var(--leaf),0 .7rem 1.3rem #10241159}.profile-card:active:not(:disabled){transform:translateY(.1rem)}.profile-card:disabled{cursor:not-allowed;opacity:.7}.profile-card__portrait{display:block;aspect-ratio:1;overflow:hidden;border:.18rem solid #e7cfa2;border-radius:.85rem;background:radial-gradient(circle at 50% 28%,#e6f4ff,#d5ecd6)}.profile-card__portrait img{display:block;width:100%;height:100%;object-fit:contain}.profile-card__name{display:block;overflow:hidden;padding:.35rem .4rem;border:.16rem solid #c89a5c;border-radius:.6rem;background:linear-gradient(180deg,#f6e6c4,#e5c894);color:var(--wood-deep);font-weight:800;font-size:clamp(.85rem,3.2vw,1.05rem);text-align:center;text-overflow:ellipsis;white-space:nowrap}.profile-new{display:flex;align-items:center;justify-content:center;gap:.75rem;max-width:22rem;font:inherit;color:var(--wood-deep);cursor:pointer}.profile-new:disabled{cursor:not-allowed;opacity:.7}.profile-new__badge{display:grid;place-items:center;width:2.6rem;height:2.6rem;border:.2rem solid var(--leaf-dark);border-radius:50%;background:linear-gradient(180deg,var(--leaf),#6c9f33);color:#fff;box-shadow:0 .3rem 0 var(--leaf-dark)}.profile-new__badge svg{width:1.2rem;height:1.2rem}.profile-new__label{font-weight:800;font-size:1.05rem}.profile-create__form{display:flex;flex-direction:column;gap:clamp(.8rem,3vw,1.1rem);max-width:34rem}.profile-create__identity{display:flex;align-items:center;gap:.9rem}.profile-create__preview{flex:0 0 auto;width:clamp(5rem,22vw,6.5rem)}.profile-create__field{flex:1 1 auto;min-width:0}.profile-create__form .btn--large{align-self:center}@media(min-width:800px){.profile-create{gap:clamp(.6rem,2vh,1.25rem)}.profile-create__form{gap:clamp(.5rem,2vh,.85rem)}.profile-create__preview{width:clamp(4.5rem,14vh,6rem)}}.gate-fade{animation:gate-fade-in .25s ease both}@keyframes gate-fade-in{0%{opacity:0}to{opacity:1}}@media(prefers-reduced-motion:reduce){.gate-fade{animation:none}}:root{color:#173e42;background:#f8f5eb;font-family:ui-rounded,Avenir Next,Avenir,Segoe UI,sans-serif;font-synthesis:none}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh;min-height:100dvh}button{font:inherit}.startup-status{display:grid;place-items:center;min-height:100svh;margin:0;padding:2rem;text-align:center;color:#173e42}.start-screen{isolation:isolate;min-height:100svh;overflow:hidden;display:grid;align-items:center;grid-template-columns:minmax(0,1fr) minmax(18rem,.82fr);gap:clamp(1.5rem,6vw,7rem);padding:clamp(2rem,8vw,8rem);background:linear-gradient(135deg,#f8f5eb,#e1f2e6 56%,#b8dfd8)}.start-card{max-width:38rem;position:relative;z-index:2}.eyebrow{margin:0 0 .75rem;color:#35726e;font-weight:750;letter-spacing:.04em;text-transform:uppercase;font-size:.78rem}h1{color:#125f63;font-size:clamp(3.5rem,10vw,7.5rem);letter-spacing:-.07em;line-height:.82;margin:0}.intro{max-width:30rem;font-size:clamp(1.15rem,2.2vw,1.5rem);line-height:1.55;margin:2rem 0}.primary-action{min-height:48px;padding:.75rem 1.2rem;border:0;border-radius:1rem;color:#fff;background:#3a897c;font-weight:750;box-shadow:0 .5rem #27695f}.primary-action:disabled{cursor:not-allowed;opacity:.72}.status{margin-top:1.35rem;color:#356263;font-size:.95rem}.island{position:relative;min-height:22rem;width:min(100%,36rem);align-self:end}.sun,.hill,.wave{position:absolute;display:block;border-radius:999px}.sun{right:16%;top:6%;width:5.5rem;aspect-ratio:1;background:#f6c75f;box-shadow:0 0 0 1rem #f6c75f44}.hill-back{width:86%;height:56%;bottom:23%;left:7%;background:#7bc39d;transform:rotate(-5deg)}.hill-front{width:89%;height:43%;bottom:13%;right:-5%;background:#438f79;transform:rotate(8deg)}.wave{left:-15%;width:130%;height:21%;background:#409bae}.wave-one{bottom:7%;opacity:.76;transform:rotate(-4deg)}.wave-two{bottom:-8%;background:#197d91;transform:rotate(3deg)}@media(max-width:700px){.start-screen{grid-template-columns:1fr;align-content:center;padding:2rem 1.5rem 0;gap:0}.island{min-height:15rem;width:110%;margin-left:-5%}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important}}
