:root{font-family:ui-rounded,Trebuchet MS,system-ui,sans-serif;color:#213f37;background:#f7f6ef;font-synthesis:none;font-weight:400;--green:#234d3f;--muted:#758279;--line:#e2e6da}*{box-sizing:border-box}body{margin:0}button,a,select{-webkit-tap-highlight-color:transparent}button,select{font:inherit}button,a{touch-action:manipulation}button{cursor:pointer}a{color:inherit;text-decoration:none}button:disabled{cursor:default;opacity:.4}button:focus-visible,a:focus-visible,select:focus-visible{outline:3px solid #ca8745;outline-offset:5px}h1:focus{outline:none}button{border:0}h1,h2,h3,p{margin:0}h1,h2,h3{letter-spacing:-.045em}p{line-height:1.8}.site-header{height:104px;max-width:1224px;padding:0 40px;margin:auto;display:flex;align-items:center;gap:30px;border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:10px;font-size:23px;font-weight:800;letter-spacing:-1px;white-space:nowrap}.brand-light{font-weight:400}.brand-icon{background:#e3ead8;border-radius:12px;width:35px;height:35px;display:grid;place-items:center}.brand-icon svg{width:23px;color:#4b7050}.header-note{font-size:12px;color:var(--muted);margin:auto;display:flex;gap:9px;align-items:center}.status-dot{display:inline-block;width:6px;height:6px;border-radius:50%;background:#86a26b;vertical-align:middle;margin-right:5px}.install-button{background:transparent;border:1px solid #d9dfd2;border-radius:8px;padding:10px 15px;font-size:12px;color:var(--green)}main{max-width:1144px;margin:auto;padding:0 40px}.hero{display:grid;grid-template-columns:1fr 1fr;align-items:center;min-height:500px;gap:35px;padding:44px 0 33px}.eyebrow{font-size:10px;letter-spacing:2px;font-weight:800;color:#69806b;display:flex;gap:9px;align-items:center}.eyebrow>span{width:6px;height:6px;border-radius:50%;background:#9cb77c}.hero h1{font-size:70px;line-height:1.08;margin:22px 0 20px;font-weight:700;letter-spacing:-4px}em{font-style:normal;color:#789260}.hero-copy>p{font-size:15px;color:#788176}.primary{display:inline-flex;justify-content:center;align-items:center;gap:32px;border-radius:10px;background:var(--green);color:#fffdf4;padding:16px 23px;font-size:14px;font-weight:700;box-shadow:0 5px #183d2f12}.hero .primary{margin-top:26px}.primary:hover{background:#38654c}.hero-promise{margin-top:18px;font-size:10px;color:#8b9387}.hero-promise span{color:#b89c55;margin-right:5px}.hero-art{height:375px;position:relative;isolation:isolate;overflow:hidden;background:#ecedde;border-radius:47% 45% 42% 39%;transform:rotate(-3deg)}.sun-disc{position:absolute;left:30%;top:24px;width:174px;height:174px;border-radius:50%;background:#f5df9f}.hill{position:absolute;width:540px;height:240px;bottom:-80px;border-radius:50%;z-index:1}.hill-back{background:#d2ddbc;left:-90px;bottom:-28px;transform:rotate(16deg)}.hill-front{background:#b7cda1;left:30px;transform:rotate(-15deg)}.friend{width:100%;height:100%;overflow:visible}.hero-friend{position:absolute;z-index:3;filter:drop-shadow(0 12px 5px #46613b16)}.hero-mint{width:180px;height:214px;left:26%;bottom:70px;transform:rotate(3deg)}.hero-berry{width:137px;height:164px;left:5%;bottom:67px;transform:rotate(-9deg)}.hero-sun{width:133px;height:161px;right:3%;bottom:70px;transform:rotate(13deg)}.art-caption{position:absolute;z-index:4;bottom:28px;left:0;right:0;text-align:center;color:#56724a;font-size:11px;letter-spacing:1.2px;transform:rotate(3deg)}.art-spark{position:absolute;color:#a2ad7d;font-size:32px}.spark-one{left:8%;top:54px}.spark-two{right:10%;top:65px;font-size:40px}.art-dot{position:absolute;width:8px;height:8px;background:#a8b990;border-radius:50%;right:18%;top:35px}.art-leaf{position:absolute;width:60px;color:#91ac76;z-index:2}.leaf-one{left:-13px;bottom:65px;transform:rotate(-70deg)}.leaf-two{right:-5px;bottom:54px;transform:rotate(20deg)}.games-section{padding:28px 0 35px}.section-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:25px}.section-heading h2{font-size:27px;margin-top:10px;letter-spacing:-1px}.count-pill{border:1px solid var(--line);padding:7px 12px;border-radius:20px;font-size:10px;color:#82907d;white-space:nowrap}.game-grid{display:grid;grid-template-columns:1fr 1fr;gap:25px}.game-card{border:1px solid #dce3d2;border-radius:17px;background:#fffefa;overflow:hidden;transition:transform .2s,box-shadow .2s}.game-card:hover{transform:translateY(-4px);box-shadow:0 12px 26px #2844320b}.card-art{height:224px;background:#e5ecd8;position:relative;overflow:hidden}.new-badge{position:absolute;left:20px;top:18px;background:#fffcf2d9;padding:7px 10px;border-radius:5px;letter-spacing:1px;font-size:8px;font-weight:800;z-index:4}.card-circle{position:absolute;width:300px;height:300px;border-radius:50%;background:#d4e2bf;left:calc(50% - 150px);top:33px}.card-friend{position:absolute;bottom:44px;height:140px;width:128px;z-index:2}.card-sky{left:calc(50% - 160px);transform:rotate(-11deg)}.card-mint{left:calc(50% - 64px);height:155px;bottom:44px}.card-berry{left:calc(50% + 32px);transform:rotate(11deg)}.mini-tray{position:absolute;display:flex;gap:7px;background:#f4f4e7;bottom:-17px;left:calc(50% - 110px);width:220px;border-radius:12px;padding:10px 12px;transform:rotate(-3deg);box-shadow:0 3px 5px #46613b15}.mini-tray i{width:59px;height:40px;background:#e4e9d7;border-radius:6px}.card-spark{position:absolute;right:39px;top:52px;color:#98af76;font-size:29px}.card-copy{padding:24px 25px 18px}.game-type{font-size:8px;font-weight:800;letter-spacing:1.7px;color:#8a9a76}.card-copy h3{font-size:26px;margin:9px 0 10px}.card-copy h3 span{float:right;font-size:25px;font-weight:400;color:#8ca17a}.card-copy p{font-size:12px;color:#87907f}.card-bottom{border-top:1px solid #edf0e7;margin-top:20px;padding-top:15px;display:flex;justify-content:space-between;align-items:center;font-size:10px;color:#8a9383}.card-bottom strong{color:#507449;font-size:12px}.coming-card{border:1px dashed #d8ddcf;border-radius:17px;display:flex;flex-direction:column;align-items:center;justify-content:center;background:#f0f1e88c;text-align:center;min-height:360px}.coming-icon{width:65px;height:65px;display:grid;place-items:center;background:#e7ebde;border-radius:22px;font-size:38px;color:#a3b094;margin-bottom:24px}.coming-card h3{font-size:21px;font-weight:500;color:#7f8d78;margin-bottom:12px}.coming-card p{font-size:12px;color:#9aa38f}.coming-pill{font-size:9px;color:#99a28e;background:#e6eadf;border-radius:20px;padding:8px 15px;margin-top:24px}.quiet-banner{display:flex;align-items:center;gap:20px;border-radius:12px;background:#edefe3;padding:23px 27px;margin:0 0 45px}.quiet-banner>span:first-child{color:#94a481;font-size:34px}.quiet-banner h3{font-size:15px;letter-spacing:-.3px;font-weight:600}.quiet-banner p{font-size:11px;color:#8c9682;margin-top:3px}.banner-leaf{margin-left:auto;color:#b3c2a0}.banner-leaf svg{width:30px}footer{max-width:1144px;margin:auto;padding:26px 40px 32px;border-top:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;font-size:10px;color:#939c88}.footer-brand{display:flex;gap:8px;align-items:center}.footer-brand svg{width:17px;color:#95ac7e}.install-info{margin:15px auto;padding:20px 25px;max-width:960px;border:1px solid #cbd8bd;background:#edf3e4;border-radius:12px;font-size:13px}.install-info p{margin:8px 0}.install-info button{background:#234d3f;color:#fff;border-radius:8px;padding:8px 16px}.game-page{padding:28px 0 50px}.game-topline{display:flex;justify-content:space-between;align-items:center}.back-link{font-size:12px;color:#74846b}.play-layout{display:grid;grid-template-columns:1fr 1.2fr;gap:70px;align-items:start;margin-top:35px}.play-intro{padding-top:28px}.play-intro h1{font-size:50px;line-height:1.1;margin:18px 0}.play-intro h1 em{display:block}.play-intro>p{font-size:14px;color:#7b8872}.instructions{border-top:1px solid var(--line);padding-top:23px;margin-top:28px}.instructions h2{font-size:18px;margin-bottom:14px}.instructions p{font-size:12px;margin-bottom:12px;color:#7d8974}.instructions b{color:#59774c;margin-right:8px}.instructions small{font-size:10px;color:#8a967e;line-height:1.8;display:block}.level-select{display:block;font-size:11px;margin-top:25px;color:#6a7b5f}.level-select select{display:block;max-width:100%;width:100%;margin-top:8px;border:1px solid #d5ddcb;background:#fffdf5;padding:12px 9px;border-radius:8px;font-size:11px;color:#395237}.game-shell{background:#f1efdc;border:1px solid #dedfc6;border-radius:24px;padding:20px;box-shadow:0 12px 32px #435c2e08}.board-header{display:flex;justify-content:space-between;align-items:center;font-size:10px;color:#8a9276}.board-header>span:last-child>span{color:#b8a14c;margin-left:4px}.level-badge{background:#e0e6cd;color:#677f50;padding:7px 10px;border-radius:6px;letter-spacing:1.2px;font-size:9px;font-weight:700}.board-title{text-align:center;font-size:19px;margin:16px 0;color:#536542}.progress-track{height:5px;background:#e2e3cd;border-radius:8px;margin-bottom:20px;overflow:hidden}.progress-track>span{display:block;height:100%;background:#93b372;transition:width .2s}.board{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));background:#e3e9cd;border:5px solid #d8e1bd;border-radius:13px;padding:8px;gap:2px}.cell{aspect-ratio:1;display:flex;align-items:center;justify-content:center;border-radius:7px;background:#edf0dc77;min-width:0}.piece{width:100%;height:100%;background:none;padding:0;border-radius:8px;transition:transform .15s,background .15s}.piece.available:hover{transform:translateY(-4px);background:#f9f9e4}.piece.blocked{filter:saturate(.5);opacity:.65}.piece.available{box-shadow:inset 0 -2px #9cab772b}.tree{font-size:50px;line-height:1;color:#7b9662;text-shadow:0 3px 0 #667c4d}.tree-cell{background:#bdcda2}.exit-label{text-align:center;font-size:8px;color:#9aa581;letter-spacing:1.3px;padding:12px 0 10px}.tray{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:5px;padding:8px;background:#dfdfc6;border-radius:11px}.tray-slot{aspect-ratio:.85;background:#f9f6e7;border-radius:6px;display:grid;place-items:center;box-shadow:0 2px #b5bc9c;min-width:0}.tray-slot>span{font-size:24px;color:#d5dac2}.tray-slot .friend{animation:pop .2s ease-out}.game-message{min-height:42px;display:flex;align-items:center;justify-content:center;font-size:11px;text-align:center;color:#788763;margin:8px 0}.game-message.won{color:#4a7d3d;font-weight:700}.game-message.lost{color:#9e7656}.game-actions{display:flex;gap:10px}.secondary{border:1px solid #d5d9be;background:#f8f6e9;border-radius:8px;padding:11px 16px;font-size:11px;color:#6e805a;flex:1}.secondary:hover:not(:disabled){background:#e9eecf}.result-panel{margin-top:16px;padding:18px;text-align:center;background:#e3ecd3;border:1px solid #bacc9f;border-radius:12px}.result-panel.lost{background:#f0e5d6;border-color:#e0c9ac}.result-symbol{color:#aa9f48;font-size:27px}.result-panel h3{font-size:22px;margin:8px 0}.result-panel p{font-size:12px;margin-bottom:15px}.result-panel .primary{font-size:12px;padding:12px 22px}@keyframes pop{0%{transform:scale(.7)}to{transform:scale(1)}}@media(min-width:1400px){.hero{min-height:540px}.hero-art{height:400px}.hero-mint{width:195px;height:230px}.card-art{height:240px}}@media(max-width:850px){.header-note{display:none}.install-button{margin-left:auto}.site-header{padding:0 25px;height:85px}main{padding:0 25px}.hero h1{font-size:56px}.hero{gap:15px;min-height:430px}.hero-art{height:310px}.hero-mint{width:140px;height:170px;left:23%;bottom:70px}.hero-berry{width:100px;height:125px;left:0}.hero-sun{width:100px;height:125px;right:0}.sun-disc{width:135px;height:135px;left:27%}.hero-copy>p{font-size:13px}.play-layout{gap:30px;grid-template-columns:.85fr 1.2fr}.play-intro h1{font-size:39px}.game-shell{padding:14px}.board{padding:4px}.tree{font-size:38px}.card-friend{width:105px;height:120px}.card-sky{left:calc(50% - 130px)}.card-mint{left:calc(50% - 52px);height:140px}.card-berry{left:calc(50% + 26px)}.card-art{height:210px}.card-copy{padding:20px}.card-copy h3{font-size:23px}footer{padding-left:25px;padding-right:25px}}@media(max-width:600px){.site-header{height:76px;padding:0 20px;gap:12px}.brand{font-size:20px}.brand-icon{width:30px;height:30px;border-radius:9px}.install-button{font-size:10px;padding:9px;max-width:124px}.brand-light{display:none}main{padding:0 20px}.hero{grid-template-columns:1fr;gap:22px;padding-top:35px;padding-bottom:24px}.hero h1{font-size:61px;margin:18px 0;letter-spacing:-3.5px}.hero-copy>p{font-size:14px}.hero-art{height:280px;max-width:390px;width:100%;justify-self:center;grid-row:2}.hero-mint{width:150px;height:180px;left:29%;bottom:47px}.hero-berry{width:118px;height:145px;left:6%;bottom:45px}.hero-sun{width:115px;height:145px;right:1%;bottom:46px}.sun-disc{left:33%;top:14px}.hill-back{bottom:-50px}.hill-front{bottom:-110px}.art-caption{bottom:15px;font-size:10px}.spark-one{top:38px}.hero-promise{margin-top:14px}.hero .primary{margin-top:20px}.games-section{padding-top:20px}.section-heading{align-items:end;margin-bottom:20px;gap:10px}.section-heading h2{font-size:23px;max-width:210px}.count-pill{font-size:8px;padding:6px 9px}.section-heading>.count-pill{max-width:88px;white-space:normal;text-align:center;line-height:1.5}.game-grid{grid-template-columns:1fr;gap:20px}.card-art{height:222px}.card-friend{width:125px;height:145px}.card-sky{left:calc(50% - 150px)}.card-mint{left:calc(50% - 62px);height:161px}.card-berry{left:calc(50% + 26px)}.card-copy{padding:23px}.card-copy h3{font-size:26px}.coming-card{min-height:250px}.coming-icon{margin-bottom:16px;width:50px;height:50px;font-size:31px}.coming-card h3{font-size:20px}.coming-pill{margin-top:16px}.quiet-banner{padding:20px;gap:12px;margin-bottom:30px}.quiet-banner>span:first-child{font-size:28px}.quiet-banner h3{font-size:14px}.quiet-banner p{font-size:10px}.banner-leaf{display:none}footer{padding:20px;gap:16px;font-size:9px;flex-wrap:wrap}.play-layout{grid-template-columns:1fr;margin-top:20px;gap:23px}.play-intro{padding:0}.play-intro h1{font-size:35px;margin:12px 0}.play-intro h1 em{display:inline}.play-intro>p{font-size:12px}.instructions{margin-top:16px;padding-top:15px}.instructions h2{font-size:16px;margin-bottom:10px}.instructions p{font-size:11px;margin-bottom:6px}.instructions small{font-size:9px}.level-select{margin-top:16px}.level-select select{padding:10px}.game-shell{padding:15px;border-radius:19px}.board{padding:7px}.tree{font-size:48px}.board-title{font-size:18px}.game-page{padding-top:20px}.install-info{margin:12px 20px;font-size:12px}.tray{gap:4px;padding:7px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}.visually-hidden{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}.forest-stage{position:relative;width:100%;aspect-ratio:480/760;border-radius:17px;overflow:hidden;background:#8ed777;isolation:isolate}.phaser-host{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none}.phaser-host canvas{display:block!important;width:100%!important;height:100%!important}.canvas-board-controls.board{position:absolute;display:grid;grid-template-columns:repeat(6,minmax(0,1fr));grid-template-rows:repeat(5,minmax(0,1fr));padding:0;gap:0;border:0;border-radius:0;background:none;z-index:2}.canvas-board-controls .cell{background:none;aspect-ratio:auto;position:relative}.canvas-board-controls .piece{opacity:1;filter:none;box-shadow:none;position:absolute;top:0;right:0;bottom:0;left:0;transition:none}.canvas-board-controls .piece.available:hover{background:#fff9bf25;transform:none}.canvas-board-controls .piece:focus-visible{outline:3px solid #fffbd7;outline-offset:-5px;box-shadow:inset 0 0 0 5px #5b8845}.canvas-loading{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;color:#285736;font-weight:700;background:#d1eda4}.instructions summary{cursor:pointer;font-size:16px;font-weight:600;margin-bottom:12px}.instructions[open] p,.instructions[open] small{display:block}.game-shell{background:#fff5d5;border-color:#d3c291;padding:14px;box-shadow:0 12px 32px #435c2e14}.board-title{margin:12px 0}.progress-track{margin-bottom:12px}.play-layout{grid-template-columns:1fr 1.3fr;gap:55px}.result-panel{margin-top:10px}@media(max-width:600px){.play-layout{display:flex;flex-direction:column;gap:15px}.play-intro{width:100%}.play-intro .eyebrow,.play-intro>p{display:none}.play-intro h1{font-size:27px;margin:7px 0}.instructions{margin-top:0;padding-top:0;border:0}.instructions p,.instructions small{display:none}.instructions h2{font-size:11px;font-weight:400;color:#708060;margin:6px 0}.instructions h2:after{content:" · Välj tre lika med fri väg nedåt."}.level-select{font-size:0;margin-top:8px}.level-select select{margin-top:0}.game-shell{width:100%;padding:9px;border-radius:15px}.game-shell>.board-title{font-size:14px;margin:8px 0}.board-header{font-size:9px}.game-page{padding-top:15px}.forest-stage{border-radius:11px}.game-message{font-size:11px;min-height:35px;margin:4px 0}.game-topline .count-pill{display:none}.play-layout{margin-top:13px}}@media(max-width:600px){.instructions summary{font-size:11px;font-weight:400;color:#708060;margin-bottom:0}.instructions summary:after{content:" · Tre lika, sju platser."}.instructions[open] p,.instructions[open] small{display:block}.instructions[open] summary{margin-bottom:10px}}body.playing{overflow:hidden;overscroll-behavior:none;background:#6bb765}.app.is-map{min-height:100dvh;background:#86d9d7}.app.is-playing{min-height:100dvh;background:#6bb765}.is-playing>.site-header,.is-playing>footer,.is-playing>.install-info{display:none}.is-playing>main{max-width:none;margin:0;padding:0}.app-game{position:fixed;top:0;right:0;bottom:0;left:0;width:100%;height:100vh;height:100dvh;overflow:hidden;display:grid;grid-template-rows:auto auto minmax(0,1fr) auto;gap:0;padding:max(6px,env(safe-area-inset-top)) max(10px,env(safe-area-inset-right)) max(8px,env(safe-area-inset-bottom)) max(10px,env(safe-area-inset-left));background:radial-gradient(ellipse at 50% 40%,var(--game-ground-light,#a2d678),var(--game-ground,#72bb69) 65%,var(--game-edge,#4e9258));color:var(--game-ink,#fdfae1);isolation:isolate}.game-toolbar{width:min(100%,680px);margin:0 auto;display:flex;gap:10px;align-items:center;min-height:54px}.game-icon-button{display:grid;place-items:center;flex:0 0 44px;width:44px;height:44px;border:1px solid #d1e99b80;border-radius:14px;background:#fdf0c8;color:#4e6c3b;font-size:26px;box-shadow:0 3px #3f713729;cursor:pointer}.game-icon-button:hover{background:#fff9e0}.game-heading{min-width:0;flex:1}.game-heading h1{font-size:23px;letter-spacing:-1px;text-shadow:0 2px #3d713b66;color:#fffbe2;line-height:1.25}.game-heading .board-title{font-size:11px;color:#e5f4c7;font-weight:400;margin:4px 0 0;letter-spacing:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-align:left}.game-hud{width:min(100%,620px);margin:5px auto 7px;display:flex;gap:12px;align-items:center;min-height:38px;padding:0 4px}.game-level select{max-width:114px;height:36px;padding:4px 23px 4px 10px;color:#4e6c3b;background:#fff3ce;border:1px solid #6b984a;border-radius:10px;font:600 12px system-ui}.app-game .progress-track{flex:1;margin:0;height:9px;background:#467f4566;border:1px solid #c9e79e66}.app-game .progress-track>span{background:#ffe26e}.game-score{font-size:12px;color:#f9ffe6;white-space:nowrap;font-weight:600}.scene-viewport{position:relative;min-width:0;min-height:0;width:100%;height:100%;display:grid;place-items:center;overflow:hidden}.dev-solve-button{flex:none;min-height:32px;max-width:112px;padding:6px 8px;border-radius:10px;background:#fff0c8;color:#34594c;font-size:11px;font-weight:700;line-height:1.2;box-shadow:0 2px #3f713729}.dev-solve-button[aria-pressed=true]{background:#f3c977}.dev-solve-button:disabled{opacity:.5}.app-game .forest-stage{border-radius:18px;aspect-ratio:auto;flex:none;max-width:100%;max-height:100%;box-shadow:0 6px 24px #396f3930}.game-bottom{width:min(100%,620px);margin:0 auto;padding:3px 0 0}.app-game .game-message{min-height:29px;max-height:42px;line-height:1.35;margin:0 0 4px;font-size:11px;color:#fffde8;padding:3px 5px;overflow:hidden;text-shadow:0 1px #376c3260}.app-game .game-message.lost,.app-game .game-message.won{color:#fff8c0}.app-game .game-actions{gap:12px}.app-game .secondary{min-height:44px;padding:9px 15px;background:#fff0c8;color:#5a723c;border:1px solid #5d8e4270;font-size:13px;box-shadow:0 3px #3f713729}.app-game .secondary:disabled{opacity:.5}.app-game .secondary:hover:not(:disabled){background:#fff8db}.game-modal-backdrop{position:absolute;top:0;right:0;bottom:0;left:0;z-index:50;display:grid;place-items:center;padding:20px;background:#173e38a6;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.app-game .result-panel,.game-menu{position:relative;width:min(100%,390px);max-height:100%;overflow:auto;padding:26px;border-radius:20px;border:2px solid #d3d99c;background:#fff6da;color:#3b5739;box-shadow:0 15px 50px #173e3850;text-align:center;margin:0}.app-game .result-panel{background:#f0f8d3}.app-game .result-panel.lost{background:#fff0d6}.result-undo{display:block;width:100%;margin-top:14px}.game-menu{text-align:left}.game-menu h2{font-size:25px;margin:6px 40px 20px 0}.game-menu p{font-size:13px;line-height:1.7;margin:12px 0}.game-menu .fullscreen-note{font-size:11px;color:#78825a}.close-menu{position:absolute;right:12px;top:12px;width:36px;height:36px;min-width:36px;font-size:22px}.game-menu .primary{margin-top:10px;display:flex;width:100%}.menu-home{display:block;text-align:center;margin-top:18px;font-size:12px;text-decoration:underline}.app-game .game-actions{gap:8px}.app-game .secondary.powerup{flex:0 0 56px;display:flex;align-items:center;justify-content:center;gap:5px;padding:5px;font-size:19px}.powerup b{font-size:12px}.reward-earned{padding:10px;border-radius:10px;background:#dceba6;color:#48723c;font-weight:700}.game-menu .source-note{font-size:11px;color:#78825a}.game-modal-backdrop.victory-backdrop{background:none;-webkit-backdrop-filter:none;backdrop-filter:none;align-items:end;padding:12px max(12px,env(safe-area-inset-right)) max(12px,env(safe-area-inset-bottom)) max(12px,env(safe-area-inset-left))}.app-game.round-won .game-bottom{opacity:0;pointer-events:none}.app-game .victory-backdrop .result-panel{background:#fff6e4f5;box-shadow:0 10px 35px #10253455;width:min(100%,420px);padding:17px 22px;border-color:#f2d184;animation:reward-arrive .42s cubic-bezier(.2,.8,.3,1)}.victory-backdrop .result-symbol{display:none}.victory-backdrop h3{margin:0 0 4px}.victory-backdrop .result-panel>p{margin-bottom:9px}.victory-backdrop .reward-earned{padding:8px;font-size:11px;animation:reward-shine .8s ease-out}.app-game .victory-backdrop .result-undo{min-height:36px;margin-top:9px;padding:6px;font-size:11px}@keyframes reward-arrive{0%{transform:scale(.94);opacity:0}to{transform:scale(1);opacity:1}}@keyframes reward-shine{0%{box-shadow:0 0 0 8px #ffdf7480;transform:scale(.9)}to{box-shadow:0 0 0 0 transparent;transform:scale(1)}}@media(max-height:500px)and (orientation:landscape){.victory-active.scene-viewport{justify-items:start;padding-left:7%}.app-game .victory-backdrop .result-panel{width:min(43vw,350px);margin-left:auto;padding:13px}.victory-backdrop h3{font-size:19px}.victory-backdrop .result-panel>p{font-size:11px}}@media(prefers-reduced-motion:reduce){.app-game .victory-backdrop .result-panel,.victory-backdrop .reward-earned{animation:none}}.control-icon{width:25px;height:25px;flex:none;filter:drop-shadow(0 1px 0 #23432840)}.arcade-controls{display:flex;gap:12px;align-items:stretch;margin-top:12px;padding-bottom:6px}.arcade-next,.arcade-undo,.game-action{position:relative;cursor:pointer;font-family:inherit;font-weight:800;touch-action:manipulation;transition:transform .12s,box-shadow .12s;isolation:isolate}.arcade-next:before,.arcade-undo:before,.game-action:before{content:"";position:absolute;inset:3px 5px auto;height:38%;border-radius:inherit;background:linear-gradient(#fff5,#fff0);z-index:-1;pointer-events:none}.arcade-next{min-width:0;flex:1;min-height:64px;display:flex;align-items:center;justify-content:center;gap:12px;padding:12px 16px;border:3px solid #ffe9a0;border-radius:22px;background:linear-gradient(#a7dc54,#6dbd3e 48%,#44a038 51%,#4ea43b);color:#fffbe9;box-shadow:inset 0 2px #fff4ba99,0 5px #287432,0 8px 12px #35572c25;text-shadow:0 2px 0 #376d32;font-size:17px;letter-spacing:.6px;text-transform:uppercase}.arcade-next .control-icon{width:31px;height:31px;padding:5px;background:#2d7e3840;border-radius:50%;box-shadow:inset 0 1px 2px #24583155}.arcade-undo{flex:0 0 64px;min-height:64px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;padding:6px;border:3px solid #fff0b6;border-radius:22px;background:linear-gradient(#ffdc86,#f2bb55 55%,#e7a540);color:#78512d;box-shadow:inset 0 2px #fff8cf,0 5px #ba7f31,0 8px 12px #66421d20;text-shadow:0 1px #fff1b5;font-size:10px;letter-spacing:.3px;text-transform:uppercase}.arcade-undo .control-icon{width:28px;height:28px}.game-action{flex:1;min-width:0;min-height:50px;padding:8px 6px;display:flex;align-items:center;justify-content:center;gap:6px;border:2px solid #fff0b8;border-radius:16px;box-shadow:inset 0 2px #fff6d075,0 4px #8c7938;background:linear-gradient(#ffe2a0,#ebbd61);color:#71542d;font-size:12px;text-shadow:0 1px #fff5d3}.game-action .control-icon{width:20px;height:20px}.game-action--restart{border-color:#d6f2cd;background:linear-gradient(#a6deae,#6abd96);color:#2a614b;text-shadow:0 1px #d2efd7;box-shadow:inset 0 2px #ecffe475,0 4px #3f876a}.arcade-next:active,.arcade-undo:active,.game-action:active:not(:disabled){transform:translateY(4px);box-shadow:inset 0 2px 3px #25422425,0 1px #537b3e}.game-action:disabled{opacity:.45;cursor:default;filter:saturate(.55)}.arcade-undo:disabled{opacity:.45;cursor:default}@media(max-width:360px){.arcade-controls{gap:9px}.arcade-next{font-size:14px;padding:10px 8px;gap:7px}.arcade-undo{flex-basis:58px}.arcade-next .control-icon{width:26px;height:26px}.game-action{font-size:11px;gap:4px}}@media(max-height:500px)and (orientation:landscape){.arcade-next,.arcade-undo{min-height:56px}.game-action{min-height:38px;padding:4px}.game-action .control-icon{width:18px;height:18px}.arcade-controls{margin-top:8px}}.sound-toggle{display:flex;gap:10px;align-items:center;width:100%;padding:11px 14px;margin:14px 0;border:2px solid #d5dca4;border-radius:15px;background:linear-gradient(#f9efc8,#ebdfaa);box-shadow:0 3px #b6b77b;color:#587144;font-weight:700;font-size:13px}.sound-toggle>span{font-size:23px}.sound-toggle[aria-pressed=false]{filter:saturate(.5);color:#818268}@media(max-height:650px)and (orientation:portrait){.app-game .victory-backdrop .result-panel{padding:12px 18px}.victory-backdrop .result-panel>p:not(.reward-earned){display:none}.victory-backdrop h3{font-size:20px}}@media(max-width:420px){.game-toolbar{gap:7px}.game-heading h1{font-size:19px}.game-heading .board-title{font-size:10px}.game-icon-button{flex-basis:42px;width:42px;height:42px;border-radius:12px}.game-hud{gap:9px;margin-top:2px}.game-score{font-size:11px}.app-game .game-message{font-size:10px}}@media(max-height:500px)and (orientation:landscape){.game-toolbar{min-height:44px}.game-heading .board-title{display:none}.game-heading h1{font-size:18px}.game-icon-button{height:36px;flex-basis:40px;width:40px;border-radius:10px}.game-hud{min-height:30px;margin:2px auto}.game-level select{height:30px}.game-bottom{padding-top:0}.app-game .game-message{min-height:20px;font-size:10px;margin-bottom:2px}.app-game .secondary{min-height:36px;padding:5px}.app-game .forest-stage{border-radius:10px}.game-menu{padding:18px}}.app-game .game-message{height:42px;min-height:42px;max-height:42px}.app-game .game-message:empty,.app-game .game-message:has(>.visually-hidden){position:absolute;width:1px;height:1px;min-height:0;max-height:none;margin:0;padding:0;overflow:hidden;clip-path:inset(50%)}.app-game .game-message:empty{visibility:hidden}.game-modal-backdrop.victory-backdrop{pointer-events:none}.victory-backdrop .result-panel{pointer-events:auto}@media(max-height:500px)and (orientation:landscape){.app-game .game-message{height:34px;min-height:34px;max-height:34px}}.world-name{display:block;color:#e7f4b9;font-size:10px;font-weight:700;letter-spacing:.6px}.catalog-status{max-width:480px;margin:15vh auto;padding:24px}.catalog-status button{padding:12px 20px;margin-top:16px;border-radius:12px;background:#c5dd91;color:#234d3f}img.friend{object-fit:contain}.hero-art{overflow:visible;background:none;border-radius:0;transform:none}.hero-landscape{position:absolute;top:0;right:0;bottom:0;left:0;overflow:hidden;background:#ecedde;border-radius:47% 45% 42% 39%;transform:rotate(-3deg);z-index:0}.hero-friend{filter:none}.hero-berry{left:4%;width:27%;height:58%;transform:rotate(-7deg)}.hero-mint{left:34%;width:32%;height:68%;transform:none}.hero-sun{right:4%;width:27%;height:58%;transform:rotate(7deg)}.card-friend{width:26%;height:65%;bottom:18%}.card-sky{left:6%}.card-mint{left:37%;height:73%}.card-berry{left:68%}.hero-art .art-caption{transform:none;font-size:12px;font-weight:600;letter-spacing:1px;color:#46613b;bottom:20px}.game-level select{font-size:16px}.fullscreen-notice{position:absolute;top:112px;left:50%;transform:translate(-50%);width:min(90%,620px);padding:12px 16px;border-radius:12px;background:#fff6da;color:#3b5739;box-shadow:0 3px 12px #173e3850;font-size:14px;line-height:1.5;z-index:40}.app:fullscreen{width:100%;height:100%;overflow-y:auto;background:#f7f6ef}.app.is-playing:fullscreen{overflow:hidden}.site-fullscreen-notice{position:fixed;top:90px;z-index:100}.site-fullscreen{box-shadow:none}@media(max-width:600px){.site-fullscreen{width:38px;flex-basis:38px;height:38px;font-size:23px}}button,select,.game-icon-button,.game-card,.primary{-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}.game-card img,.world-island svg,.control-icon{-webkit-user-drag:none}.game-level-number{display:inline-flex;align-items:center;height:36px;padding:0;color:#fff8d1;font:800 16px Trebuchet MS,system-ui;white-space:nowrap;text-shadow:0 2px #46723b;cursor:default}.game-toolbar,.game-hud{-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}.rescue-meter{position:relative;min-width:0;flex:1;display:flex;align-items:center;padding:3px 0}.app-game .rescue-meter .progress-track{position:relative;flex:1;height:28px;border:2px solid #fff1b3;border-radius:16px;background:#37694d;box-shadow:0 3px #426e39,inset 0 2px 4px #173f4570;overflow:hidden}.app-game .rescue-meter .progress-track>span:first-child{display:block;height:100%;border-radius:14px;background:linear-gradient(#fff4a3,#ffd54f 50%,#efb442);transition:width .3s ease-out}@media(max-width:360px){.game-level-number{font-size:14px}}@media(max-height:500px)and (orientation:landscape){.game-level-number{height:30px}.rescue-meter{padding:0}.app-game .rescue-meter .progress-track{height:24px}}@media(prefers-reduced-motion:reduce){.app-game .rescue-meter .progress-track>span:first-child{transition:none}}.dev-report-button{font-size:12px!important;padding:8px 10px!important;min-height:36px;background:#e6edc8;color:#385e4b;border-radius:12px}.voyage-report{position:absolute;top:8px;right:12px}.site-dev-report{position:fixed;right:12px;bottom:max(12px,env(safe-area-inset-bottom));z-index:80}.game-toolbar>.dev-report-button{position:absolute;right:8px;top:100%;z-index:15;font-size:10px!important;min-height:28px;padding:4px 7px!important}.game-toolbar>.dev-report-button{position:static;flex:0 0 36px;width:36px;min-height:36px;padding:4px!important;z-index:auto}.game-toolbar:has(>.dev-report-button) .game-heading h1{font-size:clamp(14px,4vw,19px);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.victory-backdrop .reward-loot{display:flex;align-items:center;justify-content:center;gap:8px;margin:6px 0 0;padding:4px 6px;background:#f2e6b8;animation:none}.reward-loot-item{display:flex;align-items:center;justify-content:center;gap:5px;flex:1;min-width:0;padding:3px 7px;border:1px solid #e0cc87;border-radius:12px;background:#fff7d7;animation:loot-pop .45s .12s cubic-bezier(.2,.8,.3,1) both}.reward-loot-item:nth-child(2){animation-delay:.24s}.reward-loot-item img{display:block;flex:none;width:32px;height:32px;filter:drop-shadow(0 2px 1px #78612733)}.reward-loot-item>span{display:flex;flex-direction:column;align-items:flex-start;line-height:1.2;font-size:11px;color:#4b6644}.reward-loot-item b{font-size:16px;color:#8c6433}@keyframes loot-pop{0%{transform:translateY(8px) scale(.75);opacity:0}to{transform:none;opacity:1}}@media(max-height:650px)and (orientation:portrait){.victory-backdrop .reward-loot{padding:3px 5px;margin-top:4px}.reward-loot-item{padding:2px 5px}.reward-loot-item img{width:26px;height:26px}.reward-loot-item>span{font-size:10px}.reward-loot-item b{font-size:14px}}@media(prefers-reduced-motion:reduce){.reward-loot-item{animation:none}}.game-heading .board-title{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;white-space:normal;margin:0;font-size:clamp(16px,4.4vw,20px);font-weight:800;line-height:1.15;letter-spacing:-.02em;color:#fffce8;text-shadow:0 2px #3d713b66}.game-heading .board-title:focus{outline:none}.app-game:is([data-biome=winter],[data-biome=desert],[data-biome=tropical],[data-biome=volcanic]) :is(.board-title,.game-level-number,.game-message){color:var(--game-ink);text-shadow:none}.catalog-error-detail{overflow-wrap:anywhere;font:13px/1.5 monospace;color:#744f32}.level-load-notice,.world-update-notice{position:fixed;left:50%;bottom:76px;transform:translate(-50%);z-index:45;width:min(90%,440px);padding:12px 16px;border:2px solid #fff6ca;border-radius:16px;background:#fff4d8;color:#345c4d;box-shadow:0 4px 16px #244b3c44;font:14px system-ui}.level-load-notice button,.world-update-notice button{margin:6px;padding:8px 14px;border-radius:10px;background:#d6e9bb;color:#345c4d}.world-update-notice{bottom:16px;display:flex;align-items:center;gap:10px}.world-update-notice p{flex:1}.is-map>.site-header,.is-map>footer,.is-map>.install-info{display:none}.is-map>main{padding:0;max-width:none}.world-map{min-height:100dvh;overflow:hidden;background:radial-gradient(ellipse at 20% 20%,#cdf6e7 0,transparent 45%),linear-gradient(#86d9d7,#79cbd5 60%,#b0e6db);color:#264f48;padding:20px 20px 60px;isolation:isolate}.map-toolbar{max-width:800px;margin:0 auto;display:flex;align-items:center;gap:16px}.map-toolbar h1{font-size:clamp(24px,4vw,36px);line-height:1.15}.map-kicker{font-size:10px;letter-spacing:2px;font-weight:800}.map-compass{font-size:48px;color:#fff3bb;margin-left:auto}.map-intro{text-align:center;font-size:14px;margin:20px auto 4px;max-width:500px}.world-path{list-style:none;margin:0 auto;padding:0;width:min(100%,760px);position:relative}.world-stop{position:relative;padding:30px 0 38px;width:100%;display:flex;flex-direction:column;align-items:flex-start;--island-color:#9cda72}.world-stop:nth-child(2n){align-items:flex-end;--island-color:#c3d87c}.world-island{position:relative;display:flex;flex-direction:column;align-items:center;width:320px;max-width:100%;background:none;padding:0;border:none;border-radius:40px;color:#244f43;font:inherit;z-index:1;filter:drop-shadow(0 8px 8px #27798520)}button.world-island:not(:disabled):hover .island-art{transform:translateY(-5px)}.island-art{width:100%;height:auto;display:block;transition:transform .2s}.island-water{fill:#d0fff0;opacity:.5}.island-rock{fill:#ac8f58;stroke:#8e774f;stroke-width:2}.island-ground{fill:var(--island-color);stroke:#eaf4a8;stroke-width:5}.island-path{fill:none;stroke:#ffe6a3;stroke-width:13;stroke-linecap:round}.island-trunk{fill:#8d6840}.island-tree{fill:#449e59}.island-leaf{fill:#83c969}.island-house path:first-child{fill:#fff1b9;stroke:#b98a50;stroke-width:3}.island-house path:nth-child(2){fill:#dc795e;stroke:#a75c49;stroke-width:3}.island-house path:nth-child(3){fill:#8b684e}.island-house path:nth-child(4){fill:#7db8bb}.island-flagpole{stroke:#6c8065;stroke-width:4}.island-flag{fill:#ffe594;stroke:#d6a74b;stroke-width:2}.island-number{font:800 15px sans-serif;fill:#806535}.island-flower{fill:#fff6b5}.island-seal{position:absolute;top:128px;left:calc(50% - 24px);width:48px;height:48px;display:grid;place-items:center;border-radius:50%;background:#fff2b2;border:3px solid #fffbd8;box-shadow:0 4px #c5a456;color:#728747;font-size:23px}.island-name{display:block;font-size:24px;font-weight:800;letter-spacing:-.5px;margin:5px 0 2px;text-align:center}.island-progress{font-size:13px;color:#386c62;text-align:center;line-height:1.5}.map-dev-badge{display:block;border-radius:30px;background:#fff5c3b3;padding:4px 10px;margin-top:7px;font-size:10px;font-weight:700;letter-spacing:.6px}.map-connector{position:absolute;top:-65px;left:35%;width:30%;height:140px;border:7px dashed #f3edbc;border-left:none;border-bottom:none;transform:rotate(32deg);border-radius:0 80px 0 0;opacity:.85;z-index:0}.world-stop:nth-child(odd) .map-connector{transform:scaleX(-1) rotate(32deg)}.world-stop:first-child .map-connector{display:none}.world-stop.is-locked .world-island{opacity:1;cursor:default;filter:saturate(.3) drop-shadow(0 8px 8px #27798520)}.world-stop.is-locked .map-connector{opacity:.35}.is-coming-soon .island-art{opacity:.65}.is-coming-soon .island-ground,.is-coming-soon .island-rock{fill:#bce2db33;stroke:#e4fff0;stroke-dasharray:7 7;stroke-width:3}.is-coming-soon .island-path{stroke:#e6fff2;stroke-dasharray:3 14;stroke-width:7}.island-outline-house{fill:none;stroke:#f3fff2;stroke-width:3;stroke-dasharray:7 5}.is-coming-soon .island-seal{background:#bde6db;color:#5a978a;border-style:dashed;box-shadow:none}.is-coming-soon .island-name{font-size:22px}.map-level-panel{position:relative;z-index:2;background:#fff8dfee;border:2px solid #fffdeb;border-radius:24px;padding:20px;width:min(100%,380px);margin-top:14px;box-shadow:0 8px 20px #326f6630}.map-level-panel h2{font-size:22px}.map-level-panel>p{font-size:12px;line-height:1.5;margin:7px 0 15px;color:#67816b}.map-level-nodes{display:flex;flex-wrap:wrap;gap:12px}.map-level-node{position:relative;width:54px;height:54px;border:3px solid #fff3b9;border-radius:50%;background:linear-gradient(#a6d976,#72b95a);box-shadow:0 4px #4d924d;color:#fffce8;font:800 21px inherit;font-size:21px;font-weight:800}.map-level-node.is-cleared{background:linear-gradient(#ffdd76,#eeb14b);box-shadow:0 4px #b98536;color:#785529}.map-level-node small{position:absolute;right:-3px;bottom:-6px;font-size:17px;color:#fff5be;text-shadow:0 1px #af7f31}.map-unlock-notice{position:sticky;top:12px;z-index:5;max-width:500px;padding:14px 20px;margin:15px auto 0;text-align:center;background:#fff4bd;border:2px solid #fffce2;border-radius:20px;box-shadow:0 6px 20px #478f7a44;font-size:15px;font-weight:700}.unlock-burst{position:absolute;top:70px;left:0;width:100%;font-size:35px;color:#fff8bc;letter-spacing:30px;pointer-events:none;animation:unlock-sparks 2.6s both}.is-unlocking .island-seal{animation:unlock-lock 2.6s both}.is-unlocking .map-connector{animation:unlock-road 2s both}.is-discovered .island-art{animation:island-arrive 2.6s both}@keyframes unlock-lock{0%,20%{transform:scale(.8) rotate(-12deg);filter:grayscale(1)}35%{transform:scale(1.3) rotate(12deg)}55%,to{transform:scale(1);filter:none}}@keyframes unlock-road{0%{opacity:.2;clip-path:inset(0 100% 0 0)}to{opacity:1;clip-path:inset(0)}}@keyframes unlock-sparks{0%,20%{opacity:0;transform:translateY(20px) scale(.5)}40%{opacity:1}to{opacity:0;transform:translateY(-50px) scale(1.2)}}@keyframes island-arrive{0%{opacity:.2;transform:translateY(15px)}to{opacity:.65;transform:none}}@media(max-width:600px){.world-map{padding:14px 14px 40px}.map-toolbar{gap:12px}.map-toolbar .game-icon-button{width:42px;flex-basis:42px}.map-compass{font-size:35px}.map-intro{font-size:12px;max-width:290px}.world-island{width:270px}.world-stop:nth-child(2n){align-items:flex-end}.world-stop{padding-top:25px}.map-connector{left:43%;width:17%;height:115px;top:-65px;transform:rotate(12deg)}.world-stop:nth-child(odd) .map-connector{transform:scaleX(-1) rotate(12deg)}.island-seal{top:106px}.island-name{font-size:22px}.island-progress{font-size:12px}.map-level-panel{padding:16px}.map-level-node{width:50px;height:50px}}.unlock-lock-mark{position:absolute;top:128px;left:calc(50% - 24px);width:48px;height:48px;display:grid;place-items:center;background:#fff2b2;border-radius:50%;font-size:25px;z-index:2;animation:lock-falls 2.5s both}@keyframes lock-falls{0%,25%{opacity:1;transform:rotate(-12deg)}40%{opacity:1;transform:rotate(18deg) scale(1.2)}65%,to{opacity:0;transform:translateY(50px) rotate(45deg) scale(.4)}}@media(max-width:600px){.unlock-lock-mark{top:106px}}@media(prefers-reduced-motion:reduce){.unlock-lock-mark{display:none}}.map-total-level{flex:none;display:flex;flex-direction:column;align-items:center;justify-content:center;min-width:65px;height:65px;margin-left:auto;background:linear-gradient(#fff4bd,#ffd77c);border:3px solid #fff9d7;border-radius:22px;box-shadow:0 4px #c49c57;color:#746039}.map-total-level small{font-size:9px;font-weight:800;letter-spacing:1px}.map-total-level strong{font-size:28px;line-height:1.1}.map-level-node.is-current{outline:3px solid #fffdf0;outline-offset:4px}.map-level-node:nth-child(3n+2){transform:translateY(8px)}.map-level-nodes{padding-bottom:8px}@media(max-width:600px){.map-total-level{min-width:55px;height:58px;border-radius:18px}.map-total-level strong{font-size:25px}}.world-stop,.world-stop:nth-child(2n){align-items:center}.world-landmark{margin-bottom:10px}.world-stop.is-locked .world-landmark{filter:saturate(.3)}.map-level-route{position:relative;list-style:none;margin:0;padding:10px 0 30px;width:min(100%,440px)}.map-road-stop{position:relative;height:116px;display:flex;align-items:center;flex-direction:column;justify-content:center;width:100%;isolation:isolate}.map-road-stop:nth-child(odd){padding-right:30%}.map-road-stop:nth-child(2n){padding-left:30%}.map-road-stop .map-level-node{flex:none;width:64px;height:64px;font-size:25px;position:relative;z-index:2}.map-road-stop .map-level-node:disabled{opacity:1;filter:grayscale(.7);background:#a9c8c0;color:#f5fff0;box-shadow:0 4px #7fa89a;cursor:default}.map-road-stop .map-level-node:before{content:"";position:absolute;inset:5px 10px auto;height:15px;border-radius:50%;background:#fff4;pointer-events:none}.map-level-route .map-level-node{transform:none}.road-level-name{position:relative;z-index:2;font-size:12px;font-weight:700;margin-top:10px;max-width:190px;text-align:center;color:#315e53;background:#dcf4d4cc;padding:3px 9px;border-radius:20px}.level-road{position:absolute;z-index:0;top:65px;left:35%;width:30%;height:116px;border:10px solid #f6e2a5;border-left:none;border-bottom:none;border-radius:0 65px 0 0;transform:rotate(24deg);box-shadow:3px -3px #c8b57155}.map-road-stop:nth-child(2n) .level-road{transform:scaleX(-1) rotate(24deg)}.map-road-stop:last-child .level-road{height:90px;width:15%;left:44%;transform:rotate(-20deg)}.world-stop.is-locked .level-road{opacity:.45;border-style:dashed}.world-stop .map-connector{left:47%;width:6%;height:100px;top:-55px;transform:rotate(10deg)}.world-stop:nth-child(odd) .map-connector{transform:rotate(-10deg)}.is-coming-soon{padding-top:10px}.map-road-stop.is-current .map-level-node{box-shadow:0 4px #4d924d,0 0 0 9px #fff3b85c}@media(max-width:600px){.map-road-stop{height:112px}.map-road-stop .map-level-node{width:58px;height:58px;font-size:23px}.road-level-name{font-size:11px;max-width:150px}.level-road{height:112px;border-width:8px}.world-stop .map-connector{left:47%;width:6%}}.world-stop{max-width:560px;margin-inline:auto}.world-stop:not(.is-coming-soon):before{content:"";position:absolute;top:75px;right:4%;bottom:20px;left:4%;z-index:-1;border:9px solid #f7e6ae;border-bottom-width:18px;border-radius:46% 44% 40% 42%/160px 170px 130px 130px;background:linear-gradient(#c1e78d,#a4d47d 55%,#b8dd88);box-shadow:0 15px #d2b576,0 24px #4caaa94d}.world-stop:nth-child(2n):before{background:linear-gradient(#dce8a0,#bdcf82)}.world-stop.is-locked:before{filter:saturate(.35);opacity:.75}.world-stop+.world-stop{margin-top:190px}.world-stop+.world-stop .map-connector{top:-195px;height:235px;left:40%;width:20%;border-width:7px;transform:rotate(-10deg);opacity:.8}.world-transfer{position:absolute;top:-140px;left:calc(50% - 50px);width:100px;display:flex;align-items:center;flex-direction:column;font-size:38px;z-index:1;filter:drop-shadow(0 5px 3px #438a8e30)}.world-transfer small{font-size:10px;white-space:nowrap;background:#c9efead9;border-radius:20px;padding:4px 8px;color:#386f74}.is-coming-soon .map-connector{opacity:.4!important}.world-stop.is-unlocking .world-transfer{animation:boat-crossing 2.7s both}@keyframes boat-crossing{0%{transform:translateY(-35px) rotate(-8deg)}to{transform:translateY(30px) rotate(7deg)}}@media(max-width:600px){.world-stop:not(.is-coming-soon):before{top:65px;right:0;bottom:15px;left:0;border-width:6px;border-bottom-width:13px}.world-stop+.world-stop{margin-top:180px}}.map-toolbar>div{flex:1;min-width:0}.map-toolbar .map-total-level{margin-left:0}@media(max-width:600px){.map-toolbar{gap:8px}.map-toolbar h1{font-size:20px;line-height:1.1}.map-toolbar .game-icon-button{width:38px;flex-basis:38px;height:38px}.map-total-level{min-width:50px}.map-kicker{font-size:8px;letter-spacing:1px}}.world-map{overflow:clip}.world-path,.map-level-route{display:flex;flex-direction:column-reverse}.world-stop+.world-stop{margin-top:0;margin-bottom:190px}.world-stop+.world-stop .map-connector{top:auto;bottom:-195px}.world-transfer{top:auto;bottom:-140px}.map-road-stop .level-road{top:auto;bottom:65px;transform:scaleY(-1) rotate(24deg)}.map-road-stop:nth-child(2n) .level-road{transform:scale(-1) rotate(24deg)}.map-road-stop:last-child .level-road{top:auto;bottom:65px;transform:scaleY(-1) rotate(-20deg)}.map-toolbar{position:sticky;top:10px;z-index:20;padding:8px;border-radius:20px;background:#c6eee6ed;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.map-unlock-notice{top:98px}@keyframes boat-crossing{0%{transform:translateY(35px) rotate(7deg)}to{transform:translateY(-30px) rotate(-8deg)}}@media(max-width:600px){.world-stop+.world-stop{margin-top:0;margin-bottom:180px}}.world-stop{max-width:500px;padding:14px 0 24px}.world-island{width:240px}.map-level-route{padding:0 0 14px;width:min(100%,400px)}.map-road-stop{height:86px}.map-road-stop .map-level-node{width:54px;height:54px;font-size:22px}.road-level-name{font-size:10px;margin-top:7px;padding:2px 8px;max-width:155px}.map-road-stop .level-road{height:86px;bottom:52px;border-width:8px}.map-road-stop:last-child .level-road{height:65px;bottom:52px}.world-stop+.world-stop{margin-bottom:130px}.world-stop+.world-stop .map-connector{bottom:-145px;height:175px}.world-transfer{bottom:-105px;font-size:32px}.island-seal,.unlock-lock-mark{top:90px;width:42px;height:42px;left:calc(50% - 21px);font-size:21px}.island-name{font-size:21px}.island-progress{font-size:11px}.map-dev-badge{font-size:9px;margin-top:5px;padding:3px 8px}.world-stop:not(.is-coming-soon):before{top:55px;border-bottom-width:13px}@media(max-width:600px){.world-island{width:220px}.island-seal,.unlock-lock-mark{top:80px}.world-stop+.world-stop{margin-bottom:130px}.map-road-stop{height:86px}.road-level-name{font-size:10px}.world-stop:not(.is-coming-soon):before{top:45px}}.world-stop{flex-direction:column-reverse;padding-top:40px}.map-level-road-frame{position:relative;width:min(100%,400px);isolation:isolate}.map-level-road-frame .map-level-route{width:100%;z-index:1}.map-road-trace{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;overflow:visible;pointer-events:none;z-index:0}.map-road-trace path{fill:none;stroke-linecap:round;stroke-linejoin:round}.road-edge{stroke:#c8ae70;stroke-width:15}.road-sand{stroke:#fff0b7;stroke-width:10}.world-stop.is-locked .map-road-trace{opacity:.45}.map-traveler{position:absolute;left:0;top:0;z-index:4;width:40px;height:45px;pointer-events:none}.map-traveler img{width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 3px 2px #315b3240)}.map-traveler.is-walking img{animation:map-footsteps .15s ease-in-out infinite alternate}.traveler-track{position:absolute;width:0;height:0;overflow:hidden;pointer-events:none}.map-travel-notice{position:sticky;top:96px;z-index:15;margin:0 auto;padding:8px 16px;width:max-content;max-width:90%;border-radius:20px;background:#fff5c7;color:#48623b;font-size:13px;font-weight:700}.map-dev-tools{position:fixed;bottom:12px;right:12px;z-index:30}.map-dev-tools button{padding:9px 12px;border:1px solid #fff6c4;border-radius:14px;background:#fff5d4ed;color:#58705a;box-shadow:0 3px 10px #386e6333;font:600 11px system-ui}.map-reset-dialog{position:fixed;top:0;right:0;bottom:0;left:0;margin:auto;width:min(90vw,370px);padding:24px;border:3px solid #fff1bd;border-radius:24px;background:#fff8df;color:#355c48;box-shadow:0 15px 50px #173e3850}.map-reset-dialog::backdrop{background:#163f3bb3;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.map-reset-dialog h2{font-size:24px}.map-reset-dialog p{font-size:13px;line-height:1.6;margin:12px 0 20px}.map-reset-dialog>div{display:flex;gap:10px}.map-reset-dialog button{flex:1;padding:12px;border-radius:13px;background:#d7e9b7;color:#365b41;font-weight:700}.map-reset-dialog button:last-child{background:#f3ce86;color:#805730}@keyframes map-footsteps{0%{transform:rotate(-6deg) translateY(-2px)}to{transform:rotate(6deg) translateY(1px)}}.world-harbor{position:absolute;top:-30px;left:calc(50% - 45px);width:90px;height:74px;z-index:3;pointer-events:none}.harbor-dock,.arrival-dock{position:absolute;left:calc(50% - 19px);width:38px;height:36px;background:repeating-linear-gradient(0deg,#ae8756 0,#ae8756 5px,#e4bd7d 5px,#e4bd7d 10px);border:3px solid #886b47;border-radius:4px;box-shadow:0 4px #459ba94d}.harbor-dock{bottom:0}.harbor-boat{position:absolute;left:23px;top:-13px;width:44px;height:48px;font-size:40px;line-height:48px}.world-harbor small{position:absolute;bottom:-18px;width:100%;text-align:center;font-size:9px;font-weight:700;color:#487569}.arrival-dock{bottom:-13px;z-index:0}.is-coming-soon .arrival-dock{opacity:.45}.boat-departed .harbor-boat{visibility:hidden}.map-voyage{position:absolute;top:0;right:0;bottom:0;left:0;z-index:12;pointer-events:none}.voyage-walker,.voyage-vessel{position:absolute;top:0;left:0}.voyage-walker{width:40px;height:45px}.voyage-walker img{width:100%;height:100%;animation:map-footsteps .15s infinite alternate}.voyage-vessel{width:64px;height:68px}.voyage-boat{display:block;font-size:60px;line-height:68px}.boat-passengers{position:absolute;bottom:9px;left:14px;display:flex;z-index:2}.boat-passengers img{width:16px;height:19px;margin-left:-3px}.world-map[data-voyage-stage=boarding] .voyage-vessel,.world-map[data-voyage-stage=sailing] .voyage-walker,.world-map[data-voyage-stage=unlocking] .voyage-walker{visibility:hidden}.world-map:not([data-voyage-stage=none]) .map-traveler{visibility:hidden}.map-unlock-notice button{margin-left:8px;background:#e4d59c;border-radius:12px;padding:5px 9px;color:#635c39;font-size:10px}.world-harbor+.world-island{margin-top:6px}.map-traveler:not(.is-walking) img{transform-origin:50% 100%;animation:friend-idle 2.2s ease-in-out infinite}.island-tree,.island-leaf{transform-box:fill-box;transform-origin:50% 100%;animation:island-breeze 4.5s ease-in-out infinite alternate}.island-leaf{animation-delay:-1.4s}.island-flag{transform-box:fill-box;transform-origin:0 50%;animation:flag-breeze 2.5s ease-in-out infinite alternate}.island-house path:nth-child(4){animation:window-glow 6s ease-in-out infinite alternate}.world-stop:not(.boat-departed) .harbor-boat{animation:boat-idle 3s ease-in-out infinite}.voyage-boat{animation:boat-idle 1.8s ease-in-out infinite}.boat-passengers img{animation:friend-idle 1.5s ease-in-out infinite}.boat-passengers img:nth-child(2){animation-delay:-.5s}.boat-passengers img:nth-child(3){animation-delay:-1s}.map-sea-life{position:fixed;top:0;right:0;bottom:0;left:0;z-index:-1;pointer-events:none;overflow:hidden}.map-sea-life i{position:absolute;width:65px;height:15px;border-bottom:3px solid #d5fffa77;border-radius:50%;top:18%;left:4%;animation:sea-ripple 7s ease-in-out infinite}.map-sea-life i:nth-child(2){top:42%;left:77%;animation-delay:-2s}.map-sea-life i:nth-child(3){top:68%;left:12%;animation-delay:-4s}.map-sea-life i:nth-child(4){top:88%;left:72%;animation-delay:-6s}@keyframes friend-idle{0%,to{transform:translateY(0) rotate(-2deg) scaleY(1)}50%{transform:translateY(-3px) rotate(2deg) scaleY(1.035)}}@keyframes island-breeze{0%{transform:rotate(-2deg)}to{transform:rotate(3deg)}}@keyframes flag-breeze{0%{transform:skewY(-4deg) scaleX(.94)}to{transform:skewY(4deg) scaleX(1)}}@keyframes window-glow{0%{fill:#7db8bb}to{fill:#ffdf85}}@keyframes boat-idle{0%,to{transform:translateY(0) rotate(-2deg)}50%{transform:translateY(-3px) rotate(3deg)}}@keyframes sea-ripple{0%,to{transform:translate(-6px);opacity:.3}50%{transform:translate(14px);opacity:.9}}@media(prefers-reduced-motion:reduce){.world-map *{animation:none!important;transition:none!important}}.world-stop.is-collapsed{max-width:290px;padding:8px 0 16px}.is-collapsed .world-landmark{width:160px;margin:0}.is-collapsed .island-name{font-size:17px}.is-collapsed .island-progress{font-size:10px}.is-collapsed .island-seal{top:57px;width:32px;height:32px;left:calc(50% - 16px);font-size:16px}.is-collapsed .map-dev-badge{font-size:8px}.island-range{font-size:9px;color:#426c61;line-height:1.5;margin:4px 0}.world-stop.is-collapsed:before{top:35px;right:12%;bottom:6px;left:12%;border-bottom-width:8px;border-radius:45%}.is-collapsed .world-harbor{transform:scale(.75);transform-origin:50% 100%;top:-34px}.is-coming-soon .world-island{width:170px}.is-coming-soon .island-seal{top:58px;width:34px;height:34px;left:calc(50% - 17px)}.is-coming-soon .island-name{font-size:18px}.world-landmark:focus-visible{outline:3px solid #fff8bb;outline-offset:6px}.level-fast-forward{position:absolute;left:calc(50% + 42px);top:13px;width:32px;height:30px;border:1px solid #f5f1cc;border-radius:10px;background:#fff6d8;color:#627c61;font-size:16px;z-index:3;box-shadow:0 2px #8bad6c}.map-road-stop:nth-child(odd) .level-fast-forward{left:calc(35% + 36px)}.map-road-stop:nth-child(2n) .level-fast-forward{left:calc(65% + 36px)}.world-fast-forward{position:relative;z-index:2;margin:8px 0;padding:7px 11px;border-radius:12px;background:#fff6d8;color:#627c61;font-size:11px}.map-traveler,.voyage-walker,.voyage-vessel{opacity:0}.world-map{padding-bottom:max(50px,calc(50dvh - 210px))}dialog.map-voyage{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;margin:0;border:0;padding:45px 12px 18px;width:100vw;height:100dvh;max-width:none;max-height:none;overflow:auto;box-sizing:border-box;background:radial-gradient(ellipse at 20% 25%,#cdf6e7,transparent 65%),linear-gradient(#84d7d4,#79cbd5);color:#285a4f;text-align:center;isolation:isolate;animation:voyage-enter .2s ease-out}.map-voyage::backdrop{background:#79cbd5}.map-voyage.is-leaving{animation:voyage-leave .18s ease-in both}.voyage-title{font-size:clamp(21px,4vw,30px);line-height:1.2;max-width:600px;margin:0 auto 8px}.voyage-skip{position:absolute;right:15px;top:10px;border-radius:14px;padding:8px 12px;background:#e7f4d8;color:#527166;font-size:12px}.voyage-scene{display:block;width:min(100%,400px);height:min(68dvh,560px);margin:0 auto;overflow:visible;--island-color:#a9dc7b}.voyage-island-art{overflow:visible}.voyage-island-label{text-anchor:middle;font:700 16px sans-serif;fill:#356859}.voyage-dock{fill:#dbb578;stroke:#8e734d;stroke-width:3}.voyage-sea-track{fill:none;stroke:#edfff2;stroke-width:3;stroke-dasharray:7 12;opacity:.75}.voyage-target{filter:grayscale(.8);opacity:.8;transition:filter .5s,opacity .5s}.voyage-target.is-open{filter:none;opacity:1}.voyage-gate{font-size:27px;text-anchor:middle}.voyage-scene .voyage-walker,.voyage-scene .voyage-vessel{opacity:1;position:static}.map-voyage[data-phase=boarding] .voyage-vessel{visibility:visible}.map-voyage[data-phase=boarding] .ship-passengers{opacity:0}.map-voyage:not([data-phase=boarding]) .voyage-walker{visibility:hidden}.ship-hull{font-size:54px}.ship-bob{transform-box:fill-box;transform-origin:50% 100%;animation:boat-idle 2s ease-in-out infinite}.voyage-walker image{transform-box:fill-box;transform-origin:50% 100%;animation:map-footsteps .15s ease-in-out infinite alternate}.voyage-actions{height:72px;width:min(100%,320px);margin:0 auto;padding-bottom:8px}.voyage-actions .arcade-next{width:100%;font-size:15px;min-height:56px}@keyframes voyage-enter{0%{opacity:0}to{opacity:1}}@keyframes voyage-leave{0%{opacity:1}to{opacity:0}}@media(max-height:500px)and (orientation:landscape){dialog.map-voyage{padding-top:18px;display:grid;grid-template-columns:1fr 1fr;align-items:center}.voyage-title{grid-column:2;font-size:23px}.voyage-scene{grid-row:1/3;grid-column:1;height:85dvh}.voyage-actions{grid-column:2}}@media(prefers-reduced-motion:reduce){.map-voyage,.map-voyage *{animation:none!important;transition:none!important}}.is-collapsed .world-harbor,.is-collapsed>.arrival-dock{display:none}.voyage-stop{fill:#ffe39a;stroke:#fff8c8;stroke-width:3}.voyage-stop-number{font:800 14px sans-serif;fill:#6a6245;text-anchor:middle}.voyage-scene{user-select:none;-webkit-user-select:none;pointer-events:none}.coming-patrol{position:absolute;left:calc(50% - 26px);top:80px;width:52px;height:60px;z-index:2;transform:translate(95px,20px);animation:coming-orbit 14s linear infinite;pointer-events:none}.coming-patrol>span{font-size:48px;line-height:60px}.coming-patrol>img{position:absolute;bottom:12px;left:13px;width:18px;height:20px;object-fit:contain}@keyframes coming-orbit{0%,to{transform:translate(95px) rotate(-4deg);z-index:2}25%{transform:translateY(-43px) rotate(4deg);z-index:0}50%{transform:translate(-95px) rotate(-4deg);z-index:2}75%{transform:translateY(43px) rotate(4deg);z-index:3}}dialog.map-voyage{pointer-events:auto}.world-landmark[aria-expanded=true]:hover .island-art{transform:none}.house-level-label{font-size:10px;color:#426c51;line-height:1.5}.house-is-cleared .island-seal{background:#ffd476;color:#805b32}.world-landmark[aria-current=step] .island-seal{outline:3px solid #fff9c9;outline-offset:3px}.island-collapse{position:absolute;right:15px;bottom:12px;z-index:4;padding:5px 8px;border-radius:10px;background:#eaf0b6;color:#54714c;font-size:9px}.map-level-road-frame{z-index:auto;isolation:auto}.island-art-frame{display:block;flex:none;width:100%;aspect-ratio:300/190}.island-art-frame>.island-art{width:100%;height:100%}.island-art-placeholder{display:block;width:90%;height:65%;margin:18% auto 0;border-radius:50%;background:var(--region-ground,#a4d47d);border:3px solid #eaf4a8;opacity:.65}button.world-island:not(:disabled):hover .island-art{transform:none}.world-landmark:not(:disabled):hover{filter:drop-shadow(0 0 6px #fff5a999)}.map-level-node,.island-seal,.map-total-level strong{font-variant-numeric:tabular-nums}.map-road-stop .map-level-node[data-number-digits="4"]{font-size:16px;letter-spacing:-.04em}.island-seal[data-number-digits="4"]{font-size:14px;letter-spacing:-.04em}.map-total-level strong{font-size:clamp(18px,5vw,25px)}.world-stop.is-expanded{max-width:640px;padding-top:120px}.map-level-road-frame{width:min(100%,600px)}.map-level-road-frame .map-level-route{display:grid;grid-template-columns:repeat(var(--road-columns),minmax(0,1fr));grid-auto-rows:116px;padding:0 0 14px}.map-level-route .map-road-stop:nth-child(n){width:100%;height:116px;padding:0 4px;justify-content:center;min-width:0}.map-level-route .road-level-name{max-width:100%;min-height:24px;line-height:1.2;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;padding:2px 5px}.map-level-route .map-road-stop:nth-child(n) .level-fast-forward{left:calc(50% + 30px);top:14px}.map-road-scenery{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;z-index:0;pointer-events:none;overflow:visible}.world-stop[data-coast]{--coast-radius:46% 44% 40% 42% / 160px 170px 130px 130px}.world-map .world-stop[data-coast]:before{border-radius:var(--coast-radius);box-shadow:none}.world-stop[data-coast]{isolation:isolate}.world-stop[data-coast]:after{content:none}.coast-rocks{position:absolute;top:55px;right:4%;bottom:20px;left:4%;z-index:-1;pointer-events:none}.coast-rocks svg{display:block;overflow:visible}.world-map .world-stop[data-coast=sand]:before{border-color:#f9e4ad;border-width:14px}.world-map .world-stop[data-coast=pebble]:before{border-color:#d0d9c8;border-width:8px}.world-map .world-stop[data-coast=cliff]:before{border-color:#b8c8b6;border-width:7px}@media(max-width:600px){.coast-rocks{top:45px;right:0;bottom:15px;left:0}}.world-map .world-stop.is-collapsed[data-coast]:before{display:none}.world-stop.is-collapsed .world-landmark{width:220px}.world-stop.is-collapsed .island-seal{top:80px}.island-collapse{width:44px;height:44px;padding:0;display:grid;place-items:center;cursor:pointer}.island-collapse:focus-visible{outline:3px solid #315b51;outline-offset:4px}.map-traveler.is-overview{left:calc(50% + 20px);top:55px;transform:none;opacity:1}.world-stop.is-collapsed :is(.island-name,.island-progress,.island-range){text-shadow:0 1px 2px #d7f4e8}.world-path{isolation:isolate}.world-map .map-connector{display:none}.sea-route-layer{position:absolute;top:0;right:0;bottom:0;left:0;z-index:-1;pointer-events:none;list-style:none}.sea-route-layer svg{display:block;overflow:visible}.sea-route-layer path{fill:none;stroke:#f3edbc;stroke-width:5;stroke-dasharray:7 12;stroke-linecap:round;opacity:.75}.map-locate-arrow{position:fixed;left:50%;transform:translate(-50%);z-index:25;width:52px;height:52px;display:grid;place-items:center;padding:0;border:3px solid #fff9d7;border-radius:18px;background:#fff0ba;color:#456c56;box-shadow:0 4px #628e7680,0 6px 16px #285a4f33;cursor:pointer}.map-locate-arrow.is-up{top:var(--locate-top,105px)}.map-locate-arrow.is-down{bottom:max(16px,env(safe-area-inset-bottom))}.map-locate-arrow:focus-visible{outline:3px solid #315b51;outline-offset:4px}.world-map:has(.map-dev-tools) .map-locate-arrow.is-down{bottom:max(70px,calc(env(safe-area-inset-bottom) + 54px))}.voyage-scene{overflow:hidden}.voyage-target.is-open{pointer-events:all;cursor:pointer}.voyage-island-hit{fill:transparent;stroke:transparent;stroke-width:3}.voyage-target[role=button]:hover .voyage-island-hit{stroke:#fff3ab99}.voyage-target[role=button]:focus{outline:none}.voyage-target[role=button]:focus-visible .voyage-island-hit{stroke:#fff3ab;stroke-width:4}.world-map{-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}.world-stop[data-region]:before{background:linear-gradient(var(--region-light),var(--region-ground) 70%);box-shadow:0 15px 0 var(--region-shore),0 24px #4caaa94d}.world-stop[data-region=frost] .road-level-name{background:#edf8e8dd}.world-stop[data-region=copper] .road-level-name{background:#f9e4bddd}.world-stop[data-region=ember] :is(.island-name,.island-progress,.island-range,.house-level-label){color:#fff3dc}.harbor-boat>svg,.coming-patrol>svg{display:block;width:100%;height:100%}.ship-hull{overflow:visible}.region-boundary{position:absolute;bottom:-132px;left:50%;transform:translate(-50%);width:min(100vw,1000px);height:80px;z-index:0;pointer-events:none}.region-boundary svg{display:block;width:100%;height:100%;overflow:visible}.region-border-halo,.region-border-line{fill:none;stroke-linecap:round}.region-border-halo{stroke:#d4f0df;stroke-width:4;opacity:.65}.region-border-line{stroke:#517f7c;stroke-width:1.5;stroke-dasharray:3 7;opacity:.8}.region-name{font:italic 600 13px Georgia,serif;letter-spacing:.04em;color:#315c59;text-shadow:0 1px #daf1dfb0;pointer-events:none}.region-boundary .region-name{position:absolute;left:16px;top:5px;max-width:calc(50% - 58px)}.region-origin{position:absolute;bottom:-36px;left:12px;max-width:calc(50% - 40px);z-index:0}.island-boat-rock{transform-origin:0px 5px;animation:island-boat-bob 3.2s ease-in-out infinite}.island-pond-ripple{transform-box:fill-box;transform-origin:center;animation:island-pond-ring 3.6s ease-out infinite}.island-water-stream{stroke-dasharray:9 7;animation:island-water-flow 1.2s linear infinite}@keyframes island-boat-bob{0%,to{transform:translateY(0) rotate(-2deg)}50%{transform:translateY(-2px) rotate(2deg)}}@keyframes island-pond-ring{0%{transform:scale(.6);opacity:0}20%{opacity:.6}to{transform:scale(1.25);opacity:0}}@keyframes island-water-flow{0%{stroke-dashoffset:16}to{stroke-dashoffset:0}}@media(prefers-reduced-motion:reduce){.island-boat-rock,.island-pond-ripple,.island-water-stream{animation:none;transform:none;stroke-dashoffset:0}.island-pond-ripple{opacity:.35}}.player-name{margin-top:20px;max-width:390px;letter-spacing:normal}.player-name-dialog{position:fixed;top:0;right:0;bottom:0;left:0;margin:auto;padding:0;width:min(90vw,420px);max-height:90dvh;overflow:auto;border:3px solid #dce7bf;border-radius:22px;background:#eef2e4;color:#213f37;box-shadow:0 15px 60px #173e3855}.player-name-dialog::backdrop{background:#163f3bb8;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.player-name form{padding:16px;border:1px solid #d9dfd2;border-radius:18px;background:#eef2e4}.player-name label{display:block;font-size:18px;font-weight:700;margin-bottom:10px}.player-name-fields{display:flex;gap:8px;flex-wrap:wrap}.player-name input{min-width:0;flex:1 1 140px;width:100%;padding:10px;border:1px solid #91a58b;border-radius:10px;font:inherit;background:#fffdf6;color:#213f37}.player-name button{min-height:44px;padding:10px 13px;border-radius:10px;background:#d6e5bc;color:#234d3f;font-family:inherit;font-weight:600;font-size:13px}.player-name p{font-size:12px;color:#58705a;line-height:1.5;margin-top:10px}.player-name .player-name-skip,.player-name .player-name-edit{background:transparent;text-decoration:underline;text-underline-offset:3px}.player-name input:focus-visible{outline:3px solid #ca8745;outline-offset:3px}.brand-owner{min-width:0;overflow:hidden;text-overflow:ellipsis}.brand{min-width:0}.hero .eyebrow,.footer-brand{overflow-wrap:anywhere}.telemetry-choice{margin:12px 0;padding:12px;border:1px solid #91a58b;border-radius:12px;background:#f8f9ef}.telemetry-choice summary{cursor:pointer;min-height:44px;padding:12px 0;font-size:13px}.telemetry-choice summary:focus-visible{outline:3px solid #ca8745;outline-offset:3px}
