.pi-game{--ink:#284c48;--teal:#147d7a;--mint:#e4f1e8;--cream:#fffaf0;--line:#dadfcc;color:var(--ink);font:15px/1.6 -apple-system,BlinkMacSystemFont,"Segoe UI","Hiragino Kaku Gothic ProN","Yu Gothic",sans-serif;max-width:480px;margin:0 auto;background:var(--cream);border-radius:26px;box-shadow:0 20px 70px #264e4820;overflow:hidden;isolation:isolate;text-align:left;position:relative}
.pi-game *, .pi-game *::before,.pi-game *::after{box-sizing:border-box}
.pi-game button{font:inherit;line-height:1.35;letter-spacing:normal;text-transform:none;cursor:pointer;min-height:44px;border:0;border-radius:14px;padding:10px 14px;margin:0;box-shadow:none;color:var(--ink);background:#f0efe3;-webkit-tap-highlight-color:transparent;touch-action:manipulation}
.pi-game button:hover{filter:brightness(.97)}
.pi-game button:focus-visible{outline:3px solid #91540b;outline-offset:3px;position:relative;z-index:3}
.pi-game button:disabled{cursor:default;opacity:.58;filter:none}
.pi-game p,.pi-game h2,.pi-game h3{margin:0 0 12px;padding:0;line-height:1.6;color:inherit;font-family:inherit;letter-spacing:normal}
.pi-game h2{font-size:23px;line-height:1.45;font-weight:750}.pi-game h3{font-size:17px;font-weight:700}
.pi-game svg{width:23px;height:23px;vertical-align:middle;flex-shrink:0;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.pi-game .pi-header{display:flex;align-items:center;justify-content:space-between;padding:13px 18px;background:#fffaf0;gap:10px;min-height:76px}
.pi-game .pi-brand{display:flex;align-items:center;gap:7px;color:#146765}
.pi-game .pi-brand>svg{width:31px;height:31px;fill:#b5ce7e;stroke:#497b58;transform:rotate(-13deg)}
.pi-game .pi-wordmark{font:bold 25px/1.05 Georgia,serif;letter-spacing:-1px}.pi-game .pi-tagline{font-size:8px;letter-spacing:1px;margin-top:5px;font-weight:700;white-space:nowrap}
.pi-game .pi-tools{display:flex;gap:4px}.pi-game .pi-tools button{background:transparent;padding:8px;min-width:44px;border-radius:50%}.pi-game .pi-tools .pi-lang{font-size:12px;font-weight:750}
.pi-game .pi-scene{aspect-ratio:3/4;position:relative;background:#bce5d7 url("island.png") center/cover no-repeat;overflow:hidden}
.pi-game .pi-scene::after{content:"";position:absolute;inset:0;pointer-events:none;box-shadow:inset 0 -24px 26px -22px #406c5c44}
.pi-game .pi-location{position:absolute;top:17px;left:17px;z-index:2;padding:10px 14px;border:1px solid #ffffffaa;border-radius:17px;background:#fffdf1ef;box-shadow:0 3px 12px #2c58481c;line-height:1.35}
.pi-game .pi-location strong{display:block;font-size:15px}.pi-game .pi-location small{display:block;font-size:11px;color:#65766a;margin-top:3px}
.pi-game .pi-resources{position:absolute;top:18px;right:16px;z-index:2;display:flex;align-items:center;gap:6px;background:#fffaf0ef;border-radius:30px;padding:8px 12px;font-weight:750}
.pi-game .pi-resources svg{color:#c9714e;fill:#f4b893}
.pi-game .pi-gate{position:absolute;top:26%;right:7%;display:flex;align-items:center;gap:5px;background:#fff8e9f5;font-size:11px;padding:7px 10px;border-radius:16px;min-height:36px;box-shadow:0 3px 8px #374e4828;z-index:2}.pi-game .pi-gate svg{width:16px;height:16px}.pi-game .pi-gate.open{color:#fff;background:#337956}
.pi-game .pi-seal{position:absolute;right:20%;top:19%;height:9%;width:14%;background:linear-gradient(135deg,#e2dfd0,#a9ad9c);border:3px solid #b6b8a4;border-radius:35% 24% 29% 19%;box-shadow:0 4px 4px #284a4433,inset 0 2px 1px #fff9;opacity:.98;transition:opacity .7s,transform .7s}
.pi-game .pi-seal::before{content:"";position:absolute;left:34%;top:30%;width:32%;height:40%;transform:rotate(45deg);border:2px solid #e4f2da;background:#56938c;box-shadow:0 0 5px #7ec2bbaa}
.pi-game .pi-seal.open{opacity:0;transform:translateY(-20px);pointer-events:none}
.pi-game .pi-hero{position:absolute;left:4%;top:33%;width:62%;aspect-ratio:512/544;transform-origin:50% 94%;animation:pi-breathe 5s ease-in-out infinite;pointer-events:none}
.pi-game .pi-pet-wrap{position:absolute;left:51%;top:51%;width:40%;aspect-ratio:512/480;transform-origin:50% 94%;transition:transform 1s}
.pi-game .pi-pet{width:100%;height:100%;position:relative;transform-origin:50% 87%;animation:pi-breathe 3.6s ease-in-out infinite}
.pi-game .pi-sprite{width:100%;height:100%;background-image:url("characters.png");background-repeat:no-repeat;background-size:300% 200%}
.pi-game .pi-pet .pi-sprite{background-position:0 0;background-size:300% 213.333333%}.pi-game .pi-hero .pi-sprite{background-position:0 100%;background-size:300% 188.235294%}
.pi-game.pi-eating .pi-pet .pi-sprite{background-position:50% 0}.pi-game.pi-eating .pi-hero .pi-sprite{background-position:50% 100%}
.pi-game.pi-happy .pi-pet .pi-sprite{background-position:100% 0}.pi-game.pi-happy .pi-hero .pi-sprite{background-position:100% 100%}
.pi-game.pi-eating .pi-pet{animation:pi-nibble .42s ease-in-out infinite}.pi-game.pi-happy .pi-pet{animation:pi-hop .6s ease-in-out 3}.pi-game.pi-happy .pi-hero{animation:pi-breathe 1.5s ease-in-out 2}
.pi-game .pi-pet-wrap::before,.pi-game .pi-hero::before{content:"";position:absolute;width:55%;height:7%;bottom:9%;left:24%;background:#84694333;filter:blur(4px);border-radius:50%;z-index:-1}
.pi-game .pi-pet-bubble{position:absolute;top:43%;left:53%;z-index:2;background:#fffdf3f2;box-shadow:0 4px 8px #38533c17;font-size:11px;padding:7px 12px;border-radius:17px;max-width:43%;text-align:center}
.pi-game .pi-pet-bubble::after{content:"";position:absolute;bottom:-6px;left:24px;border-top:7px solid #fffdf3;border-left:4px solid transparent;border-right:4px solid transparent}
.pi-game .pi-milestone{position:absolute;bottom:16px;left:16px;right:16px;display:flex;align-items:center;gap:12px;padding:11px 14px;background:#fffdf3ef;border:1px solid #ffffffaa;border-radius:17px;box-shadow:0 4px 16px #38533c12}
.pi-game .pi-milestone>svg{color:#4c8765;fill:#c6dca5;width:28px;height:28px}.pi-game .pi-milestone-text{flex:1}.pi-game .pi-milestone strong{display:block;font-size:12px}.pi-game .pi-meter{height:5px;background:#e3e6d5;border-radius:9px;overflow:hidden;margin-top:7px}.pi-game .pi-meter>span{display:block;height:100%;background:#75ac89;transition:width .6s}.pi-game .pi-milestone small{font-size:11px}
.pi-game .pi-goal{padding:17px 20px 18px;border-bottom:1px solid #e5e7d8}.pi-game .pi-eyebrow{font-size:10px;letter-spacing:1.4px;color:#668270;font-weight:750;margin-bottom:5px}.pi-game .pi-goal h2{font-size:18px;margin-bottom:3px}.pi-game .pi-goal p{font-size:12px;color:#69796d;margin-bottom:13px;line-height:1.65}
.pi-game .pi-primary{display:flex;align-items:center;justify-content:center;gap:9px;background:var(--teal);color:#fff;border:1px solid #106a68;box-shadow:0 3px 0 #0c5b58;min-height:50px;width:100%;font-weight:750;border-radius:16px;font-size:15px;padding:12px 16px}.pi-game .pi-primary svg:last-child{margin-left:auto;width:18px}.pi-game .pi-primary svg:first-child{margin-right:auto}
.pi-game .pi-nav{display:grid;grid-template-columns:repeat(4,1fr);gap:4px;padding:9px 10px 6px}.pi-game .pi-nav button{display:flex;flex-direction:column;align-items:center;gap:3px;font-size:11px;background:transparent;padding:9px 3px;color:#776d5b}.pi-game .pi-nav .active{background:#e2eeE3;color:#226b58}.pi-game .pi-nav .planned{color:#7d786c}.pi-game .pi-nav small{font-size:9px}
.pi-game .pi-footer{padding:5px 12px 12px;font-size:10px;color:#687b6d;text-align:center;line-height:1.5}.pi-game .pi-save-warning{background:#fff0ca;color:#694b21;padding:9px 12px;font-size:12px}.pi-game .pi-save-warning:empty{display:none}
.pi-game .pi-toast{position:absolute;top:83px;left:14px;right:14px;z-index:8;padding:11px 14px;background:#235953;color:white;border-radius:13px;font-size:13px;box-shadow:0 5px 15px #244c4830;text-align:center;pointer-events:none}.pi-game .pi-toast:empty{display:none}
.pi-game .pi-dialog{color:var(--ink);border:1px solid #e4e6d4;border-radius:25px;background:var(--cream);width:min(440px,calc(100vw - 24px));max-height:calc(100dvh - 32px);margin:auto;padding:22px;box-shadow:0 20px 80px #193f4840;overflow-y:auto;overscroll-behavior:contain;font:inherit;text-align:left}
.pi-game .pi-dialog::backdrop{background:#193e426b;backdrop-filter:blur(3px)}.pi-game .pi-dialog[open]{animation:pi-arrive .2s ease-out}
.pi-game .pi-dialog-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:5px}.pi-game .pi-dialog-head .pi-eyebrow{margin:0}.pi-game .pi-close{background:#ecefdE;border-radius:50%;padding:8px;width:44px;height:44px;flex-shrink:0}
.pi-game .pi-dialog .pi-intro-pet{width:152px;height:142.5px;background-image:url("characters.png");background-size:300% 213.333333%;background-position:0 0;margin:-12px auto 0}.pi-game .pi-dialog .pi-intro-pet.happy{background-position:100% 0}.pi-game .pi-dialog .pi-intro-pet.eat{background-position:50% 0}
.pi-game .pi-dialog .pi-sub{font-size:13px;color:#667567;line-height:1.8}.pi-game .pi-dialog .pi-note{font-size:11px;color:#6b7b70;margin-top:13px;line-height:1.8}.pi-game .pi-dialog .pi-reward{display:flex;align-items:center;justify-content:center;gap:9px;border:1px solid #e0e5ce;border-radius:14px;background:#eef3df;padding:13px;margin:15px 0;color:#42784f;font-weight:700}.pi-game .pi-dialog .pi-reward svg{color:#c6724a;fill:#f7bb91}
.pi-game .pi-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));grid-template-rows:repeat(6,minmax(0,1fr));border:2px solid #557e68;border-radius:12px;overflow:hidden;margin:15px 0 12px;aspect-ratio:1;background:#eaf0df}
.pi-game .pi-cell{border-radius:0;padding:0;min-height:0;min-width:0;border-right:1px solid #cfdbca;border-bottom:1px solid #cfdbca;background:#fffdf4;font-size:clamp(20px,6vw,27px);font-weight:550;color:#157d83;position:relative}
.pi-game .pi-cell:nth-child(6n){border-right:0}.pi-game .pi-cell:nth-child(6n+3){border-right:2px solid #557e68}.pi-game .pi-cell:nth-child(n+7):nth-child(-n+12),.pi-game .pi-cell:nth-child(n+19):nth-child(-n+24){border-bottom:2px solid #557e68}.pi-game .pi-cell:nth-child(n+31){border-bottom:0}
.pi-game .pi-cell.given{background:#edf1e6;color:#354f43;font-weight:700}.pi-game .pi-cell.related{background:#edf6f0}.pi-game .pi-cell.selected{background:#d3ece3;box-shadow:inset 0 0 0 3px #277c74;color:#165d58;z-index:1}.pi-game .pi-cell.bad{color:#9c3732;background:#fff0e7}.pi-game .pi-cell.bad::after{content:"!";position:absolute;right:4px;bottom:0;font-size:11px;font-weight:900;color:#9c3732}.pi-game .pi-cell:focus-visible{outline:0;box-shadow:inset 0 0 0 3px #91540b}
.pi-game .pi-keypad{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:6px;margin-bottom:12px}.pi-game .pi-keypad button{font-size:21px;color:#1c6d66;background:#e0eee1;font-weight:700;padding:8px 0;border-bottom:2px solid #b9d0ba}
.pi-game .pi-puzzle-tools{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}.pi-game .pi-puzzle-tools button{font-size:11px;display:flex;align-items:center;justify-content:center;gap:3px;padding:8px 3px}.pi-game .pi-puzzle-tools svg{width:16px;height:16px}
.pi-game .pi-board-status{font-size:12px;min-height:20px;color:#657b6c;margin:0 0 12px;line-height:1.55}.pi-game .pi-board-status.error{color:#9c3732}.pi-game .pi-rules{font-size:12px;color:#617767;background:#edf2e5;padding:10px 12px;border-radius:12px}.pi-game .pi-puzzle-meta{display:flex;justify-content:space-between;font-size:11px;color:#687b6d;margin-top:6px}.pi-game .pi-plain{background:transparent;text-decoration:underline;color:#356e65;padding:8px 2px;font-size:12px}
.pi-game .pi-choice-row{display:flex;align-items:center;justify-content:space-between;gap:12px;border-bottom:1px solid #e0e4d5;padding:14px 0;font-size:13px}.pi-game .pi-choice-row button{min-width:70px;color:#206958;background:#e1ecdf;font-size:12px}.pi-game .pi-danger{color:#983f34;background:#fbebe0;width:100%;margin-top:16px}.pi-game .pi-secondary{width:100%;background:#e8eee0;color:#366450;margin-top:10px;min-height:46px}
.pi-game .pi-loading{padding:32px;text-align:center}.pi-game .pi-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.pi-game .pi-sr:focus{position:static;width:auto;height:auto;clip:auto;white-space:normal}
.pi-game.pi-reduced *,.pi-game.pi-reduced *::before,.pi-game.pi-reduced *::after{animation:none!important;transition:none!important}.pi-game.pi-paused *{animation-play-state:paused!important}
@keyframes pi-breathe{0%,100%{transform:translateY(0) rotate(-.3deg)}50%{transform:translateY(-3px) rotate(.3deg)}}
@keyframes pi-nibble{0%,100%{transform:scale(1,1)}50%{transform:scale(1.025,.975)}}
@keyframes pi-hop{0%,100%{transform:translateY(0)}45%{transform:translateY(-10px) rotate(3deg)}}
@keyframes pi-arrive{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}
@media(prefers-reduced-motion:reduce){.pi-game *,.pi-game *::before,.pi-game *::after{animation:none!important;transition:none!important}}
@media(max-width:500px){.pi-game{border-radius:0;box-shadow:none}.pi-game .pi-dialog{padding:17px}.pi-game .pi-wordmark{font-size:23px}.pi-game .pi-header{padding:12px 15px}.pi-game .pi-goal{padding:14px 17px}.pi-game .pi-dialog h2{font-size:21px}}
@media(max-width:360px){.pi-game .pi-brand>svg{display:none}.pi-game .pi-wordmark{font-size:21px}.pi-game .pi-tagline{font-size:7px;letter-spacing:.5px}.pi-game .pi-dialog{padding:14px}}

.pi-game .pi-account{display:flex;align-items:center;justify-content:space-between;gap:10px;background:#eaf1e6;border-top:1px solid #d9e3d2;border-bottom:1px solid #d9e3d2;padding:8px 15px;font-size:11px;line-height:1.5}.pi-game .pi-account>span{min-width:0;overflow-wrap:anywhere}.pi-game .pi-account svg{width:15px;height:15px}.pi-game .pi-account a{color:#205b52;font-weight:700;white-space:nowrap;text-decoration:underline;padding:6px}.pi-game .pi-account small{white-space:nowrap;font-size:10px}.pi-game .pi-save-warning button,.pi-game .pi-board-status button{font-size:12px;min-height:36px;padding:6px 10px;margin-top:6px;background:#e3e9d3;color:#31574c}

.pi-game .pi-daily-card{padding:20px;background:linear-gradient(135deg,#eef2df,#e0eee7);border-bottom:1px solid #d3dfcf}.pi-game .pi-daily-card h3{font-size:19px}.pi-game .pi-daily-card p{font-size:12px;margin:7px 0 13px}.pi-game .pi-daily-card>small{display:block;font-size:10px;color:#607763}.pi-game .pi-daily-meta{font-size:11px;margin-top:11px;color:#426b59}.pi-game .pi-diary{list-style:none;padding:0;margin:14px 0}.pi-game .pi-diary li{padding:15px 13px;border:1px solid #dbe4d0;border-radius:15px;margin-bottom:9px;background:#f0f4e6}.pi-game .pi-diary p{font-size:12px;line-height:1.8;margin:5px 0 0}.pi-game .pi-diary .locked{background:#f4f1e9;color:#7b7e71}.pi-game .pi-gift{padding:12px;text-align:center;background:#f9ead6;border:1px solid #ebcea5;border-radius:14px;margin-bottom:14px}.pi-game .pi-gift p{margin:3px 0 0}.pi-game .pi-outfits{display:grid;grid-template-columns:1fr;gap:10px}.pi-game .pi-outfit{display:grid;grid-template-columns:64px 1fr auto;grid-template-rows:auto auto;align-items:center;gap:3px 8px;padding:11px;background:#edf1e4;border:1px solid #d6e0ce;border-radius:16px}.pi-game .pi-outfit strong{font-size:12px;grid-column:2;align-self:end}.pi-game .pi-outfit small{font-size:10px;grid-column:2;align-self:start}.pi-game .pi-outfit button{grid-column:3;grid-row:1/3;padding:8px;font-size:11px;min-width:56px;background:#d4e7d8}.pi-game .pi-outfit.locked{background:#f2efe6;color:#7e7c70}.pi-game .pi-item-art{grid-column:1;grid-row:1/3;position:relative;width:62px;height:52px}.pi-game .pi-item-art .pi-accessory{inset:0;width:100%;height:100%;filter:none}.pi-game .pi-item-art .pi-accessory-flower_pin{width:44px;height:44px;left:9px;top:4px}.pi-game .pi-accessory{position:absolute;left:24%;top:17%;width:49%;height:30%;pointer-events:none;filter:drop-shadow(0 2px 1px #70553835);z-index:2}.pi-game .pi-accessory svg{display:block;width:100%;height:100%;stroke:none;stroke-width:0;fill:none}.pi-game .pi-accessory-flower_pin{left:51%;top:22%;width:26%;height:26%}.pi-game .pi-intro-pet{position:relative}.pi-game .pi-dress-preview{padding:22px 0 3px;margin:12px 0;background:radial-gradient(ellipse,#e4eedb,transparent 65%);border-radius:20px}.pi-game.pi-eating .pi-pet .pi-accessory{transform:translateY(2%)}.pi-game.pi-happy .pi-pet .pi-accessory{transform:translateY(-1%)}
@media(max-width:360px){.pi-game .pi-outfit{grid-template-columns:48px 1fr auto;padding:9px;gap:3px 5px}.pi-game .pi-item-art{width:46px;height:48px}.pi-game .pi-outfit button{min-width:48px}.pi-game .pi-outfit strong{font-size:11px}}
/* The game page owns its viewport; account forms retain native scrolling and zoom. */
.pi-play-page #pi-app{height:100vh;height:100dvh;padding:env(safe-area-inset-top) env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left);box-sizing:border-box}
.pi-play-page .pi-game,.pi-game:fullscreen{height:100%;max-width:560px;border-radius:0;margin:auto}
.pi-game:fullscreen{height:100vh;height:100dvh;max-width:none;padding:env(safe-area-inset-top) max(env(safe-area-inset-right),calc((100vw - 560px)/2)) env(safe-area-inset-bottom) max(env(safe-area-inset-left),calc((100vw - 560px)/2));background:#fffaf0}
:is(.pi-play-page .pi-game,.pi-game:fullscreen) .pi-shell{height:100%;display:flex;flex-direction:column;min-height:0}
:is(.pi-play-page .pi-game,.pi-game:fullscreen) .pi-header{min-height:58px;padding:7px 14px;flex-shrink:0}
:is(.pi-play-page .pi-game,.pi-game:fullscreen) .pi-account{padding:4px 12px;min-height:32px;flex-shrink:0;font-size:11px}
:is(.pi-play-page .pi-game,.pi-game:fullscreen) .pi-account .pi-text-button{font-size:11px;padding:4px 6px;min-height:32px}
:is(.pi-play-page .pi-game,.pi-game:fullscreen) .pi-scene{flex:1;min-height:180px;aspect-ratio:auto}
:is(.pi-play-page .pi-game,.pi-game:fullscreen) .pi-hero{height:76%;max-height:340px;width:auto;left:7%;top:auto;bottom:44px}
:is(.pi-play-page .pi-game,.pi-game:fullscreen) .pi-pet-wrap{width:40%;height:auto;max-height:none;left:54%;top:auto;bottom:50px}
:is(.pi-play-page .pi-game,.pi-game:fullscreen) .pi-location{top:9px;left:10px;padding:7px 10px}
:is(.pi-play-page .pi-game,.pi-game:fullscreen) .pi-location strong{font-size:13px}
:is(.pi-play-page .pi-game,.pi-game:fullscreen) .pi-resources{top:9px;right:10px;padding:5px 9px}
:is(.pi-play-page .pi-game,.pi-game:fullscreen) .pi-milestone{bottom:7px;left:10px;right:10px;padding:6px 10px}
:is(.pi-play-page .pi-game,.pi-game:fullscreen) .pi-milestone strong{font-size:11px}
:is(.pi-play-page .pi-game,.pi-game:fullscreen) .pi-goal{padding:8px 12px;flex-shrink:0}
:is(.pi-play-page .pi-game,.pi-game:fullscreen) .pi-goal .pi-eyebrow{display:none}
:is(.pi-play-page .pi-game,.pi-game:fullscreen) .pi-goal h2{font-size:15px;margin:0 0 2px}
:is(.pi-play-page .pi-game,.pi-game:fullscreen) .pi-goal p{font-size:11px;margin:0 0 6px}
:is(.pi-play-page .pi-game,.pi-game:fullscreen) .pi-primary{min-height:44px;font-size:14px;padding:9px 12px}
:is(.pi-play-page .pi-game,.pi-game:fullscreen) .pi-daily-card{flex-shrink:0;padding:3px 8px;display:flex;align-items:center;justify-content:center;gap:5px;flex-wrap:wrap}
:is(.pi-play-page .pi-game,.pi-game:fullscreen) .pi-daily-card :is(h3,p,small,.pi-eyebrow,.pi-daily-meta,[data-action=daily]){display:none}
:is(.pi-play-page .pi-game,.pi-game:fullscreen) .pi-daily-card .pi-plain{font-size:11px;padding:4px;min-height:36px}
:is(.pi-play-page .pi-game,.pi-game:fullscreen) .pi-nav{flex-shrink:0;padding:4px 8px}
:is(.pi-play-page .pi-game,.pi-game:fullscreen) .pi-nav button{padding:4px 2px;min-height:48px}
:is(.pi-play-page .pi-game,.pi-game:fullscreen) .pi-footer{font-size:9px;padding:2px 8px 4px;flex-shrink:0}
.pi-game .pi-field{display:block;font-size:13px;font-weight:650;margin:12px 0}
.pi-game .pi-field input{display:block;box-sizing:border-box;width:100%;min-height:46px;border:1px solid #b8cfc1;border-radius:12px;padding:10px 12px;background:#fff;color:#284c48;font-size:16px;line-height:1.4;font-family:inherit;margin-top:5px}
.pi-game .pi-field input:focus{outline:2px solid #147d79;outline-offset:1px}
.pi-game .pi-consent{display:flex;gap:9px;align-items:flex-start;font-size:12px;line-height:1.6;margin:15px 0}
.pi-game .pi-consent input{flex-shrink:0;width:20px;height:20px;margin:0}
.pi-game .pi-portal a{color:#126f70;text-decoration:underline}
.pi-game .pi-portal .pi-google{width:100%;border:1px solid #b3c6bf;background:#fff;margin-top:10px;font-weight:600}
.pi-game .pi-portal .pi-secondary{margin-top:9px;width:100%}
.pi-game .pi-portal-status{font-size:12px;color:#754b24;background:#fbf1dd;border-radius:10px;padding:9px;overflow-wrap:anywhere}
.pi-game .pi-portal-status:empty{display:none}
.pi-game .pi-text-button{background:transparent;text-decoration:underline;font-size:12px}
.pi-game .pi-cinematic video{width:100%;max-height:55dvh;aspect-ratio:9/16;background:#e4eee0;object-fit:contain;border-radius:15px}
.pi-game .pi-video-controls{display:flex;flex-wrap:wrap;gap:7px}
.pi-game .pi-video-controls button{flex:1;font-size:12px}
@media(max-height:580px){body.pi-play-page{overflow:auto!important}.pi-play-page #pi-app{height:auto;min-height:580px}.pi-play-page .pi-game{height:580px}.pi-game .pi-dialog{max-height:calc(100dvh - 16px)}}

:is(.pi-play-page .pi-game,.pi-game:fullscreen) .pi-pet-bubble{top:auto;bottom:43%}
/* v0.4.1: a wooden treasure case around the readable puzzle panel. */
.pi-game .pi-dialog.pi-treasure{
 border:8px solid #956038;border-radius:28px 28px 19px 19px;
 padding:20px;width:min(460px,calc(100vw - 20px));
 background:linear-gradient(#fffaf0,#fff8e9) padding-box;
 box-shadow:0 0 0 2px #533c2b,0 0 0 5px #d8b778,0 18px 65px #182f4659,inset 0 0 0 2px #e0c38c;
}
.pi-game .pi-treasure .pi-dialog-head{
 margin:-20px -20px 16px;padding:12px 14px;min-height:66px;
 border-bottom:5px solid #d0aa62;border-radius:18px 18px 0 0;
 background:linear-gradient(90deg,transparent 8%,#c7a468 8%,#f4d992 10%,#ad814a 12%,transparent 12%,transparent 88%,#c7a468 88%,#f4d992 90%,#ad814a 92%,transparent 92%),repeating-linear-gradient(0deg,#ffffff06 0 2px,transparent 2px 9px),linear-gradient(110deg,#6b452f,#a97748 48%,#69442d);
 box-shadow:inset 0 2px #efce9266,0 2px #785334;
}
.pi-game .pi-treasure .pi-dialog-head .pi-eyebrow{color:#fff1cf;font-size:10px;letter-spacing:1.4px;padding:0 22px;text-shadow:0 1px 2px #3a241b}
.pi-game .pi-treasure .pi-close{background:linear-gradient(#f5dc99,#d2ab67);color:#473d2d;border:2px solid #b88b4d;box-shadow:inset 0 1px #fff6d5}
.pi-game .pi-treasure h2{color:#654a30}
@media(max-width:500px){.pi-game .pi-dialog.pi-treasure{padding:14px;border-width:6px}.pi-game .pi-treasure .pi-dialog-head{margin:-14px -14px 14px;padding:10px 8px}.pi-game .pi-treasure .pi-dialog-head .pi-eyebrow{padding-left:22px;padding-right:0;font-size:9px;letter-spacing:1px}}
@media(min-width:960px){
 .pi-play-page .pi-game{max-width:1100px}
 .pi-game:fullscreen{padding-left:max(env(safe-area-inset-left),calc((100vw - 1100px)/2));padding-right:max(env(safe-area-inset-right),calc((100vw - 1100px)/2))}
 :is(.pi-play-page .pi-game,.pi-game:fullscreen) .pi-shell{display:grid;grid-template-columns:minmax(0,1.85fr) minmax(290px,1fr);grid-template-rows:auto auto auto auto minmax(0,1fr) auto auto}
 :is(.pi-play-page .pi-game,.pi-game:fullscreen) .pi-header{grid-column:1/-1;grid-row:1}
 :is(.pi-play-page .pi-game,.pi-game:fullscreen) .pi-save-warning{grid-column:1/-1;grid-row:2}
 :is(.pi-play-page .pi-game,.pi-game:fullscreen) .pi-account{grid-column:1/-1;grid-row:3}
 :is(.pi-play-page .pi-game,.pi-game:fullscreen) .pi-scene{grid-column:1;grid-row:4/6;min-height:280px}
 :is(.pi-play-page .pi-game,.pi-game:fullscreen) .pi-goal{grid-column:2;grid-row:4;padding:24px;align-self:start}
 :is(.pi-play-page .pi-game,.pi-game:fullscreen) .pi-daily-card{grid-column:2;grid-row:5;display:block;padding:12px 24px;overflow-y:auto;min-height:0}
 :is(.pi-play-page .pi-game,.pi-game:fullscreen) .pi-daily-card :is(h3,p,small,.pi-eyebrow,.pi-daily-meta,[data-action=daily]){display:revert}
 :is(.pi-play-page .pi-game,.pi-game:fullscreen) .pi-nav{grid-column:1/-1;grid-row:6}
 :is(.pi-play-page .pi-game,.pi-game:fullscreen) .pi-footer{grid-column:1/-1;grid-row:7}
 :is(.pi-play-page .pi-game,.pi-game:fullscreen) .pi-hero{max-height:none}
 .pi-game .pi-dialog.pi-treasure{width:min(540px,calc(100vw - 40px))}
}

/* v0.5.0: five destinations and a private, UI-free island photo. */
.pi-game .pi-nav{grid-template-columns:repeat(5,minmax(0,1fr))}
.pi-game .pi-nav button{min-width:0;gap:4px;overflow-wrap:anywhere}
.pi-game .pi-tools{flex-shrink:0}
.pi-game .pi-tools button{min-height:44px}
.pi-game .pi-photo-preview{display:block;width:100%;height:auto;max-height:58dvh;object-fit:contain;border-radius:14px;background:#e7eee1;margin:12px 0 18px}
.pi-game a.pi-photo-download{display:flex;align-items:center;justify-content:center;gap:10px;text-decoration:none;color:#fff;width:100%;box-sizing:border-box}
.pi-game .pi-menu-cards{display:grid;gap:12px;margin:18px 0}
.pi-game .pi-menu-cards button{display:flex;align-items:center;justify-content:center;gap:10px;width:100%}
.pi-game .pi-build-plans{display:grid;gap:10px;margin:18px 0}
.pi-game .pi-build-plans>div{display:flex;align-items:center;gap:12px;background:#eaf0e2;border:1px solid #d3dfc8;padding:15px;border-radius:14px}
.pi-game.pi-photo-snapshot .pi-hero,.pi-game.pi-photo-snapshot .pi-pet{animation:none!important;transform:none!important}
.pi-game.pi-photo-snapshot .pi-pet-wrap{transition:none!important}
@media(max-width:600px){
 .pi-game .pi-header{flex-wrap:wrap;gap:2px 10px}
 .pi-game .pi-brand{flex:1 1 190px}
 .pi-game .pi-tools{margin-left:auto}
}
@media(min-width:601px){
 .pi-game:not(:fullscreen) .pi-wordmark{font-size:23px}
 .pi-game:not(:fullscreen) .pi-tagline{font-size:7px;letter-spacing:.7px}
}
.pi-game .pi-dialog.pi-video-dialog{box-sizing:border-box;width:min(640px,calc(100vw - 24px));max-height:calc(100dvh - 24px);padding:0!important;border:1px solid #a9c6b5;border-radius:22px;background:#fffaf0;overflow:auto;box-shadow:0 22px 90px #082c2ed9}
.pi-game .pi-video-dialog::backdrop{background:rgba(6,27,29,.90);backdrop-filter:blur(6px)}
.pi-game .pi-video-dialog .pi-dialog-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 14px;margin:0;min-height:44px}
.pi-game .pi-video-dialog .pi-dialog-head h2{font-size:clamp(16px,3.8vw,21px);line-height:1.35;margin:0;font-weight:700}
.pi-game .pi-video-dialog .pi-close{flex:0 0 44px;font-size:30px;line-height:1;background:#e5eee3}
.pi-game .pi-video-stage{display:flex;align-items:center;justify-content:center;height:min(70dvh,700px);max-height:calc(100dvh - 192px);background:#102528;overflow:hidden}
.pi-game .pi-video-dialog .pi-cinematic video{display:block;width:100%;height:100%;max-height:none;aspect-ratio:auto;object-fit:contain;background:transparent;border-radius:0}
.pi-game .pi-video-info{display:flex;align-items:center;gap:8px;padding:9px 14px;min-height:35px;box-sizing:border-box}
.pi-game .pi-video-status{flex:1;font-size:12px;line-height:1.5;margin:0;color:#3b6054}
.pi-game .pi-video-time{flex:none;font-size:12px;color:#446156;font-variant-numeric:tabular-nums}
.pi-game .pi-video-dialog .pi-video-controls{display:flex;flex-wrap:wrap;gap:6px;padding:0 12px 12px;margin:0}
.pi-game .pi-video-dialog .pi-video-controls button{flex:1 1 auto;min-height:44px;padding:9px 10px;border-radius:12px;border:1px solid #cbdccc;background:#e8eee1;color:#224d45;font-size:13px;font-weight:600;cursor:pointer}
.pi-game .pi-video-dialog .pi-video-controls button[data-video=skip]{background:#147d79;color:#fff;border-color:#147d79}
.pi-game .pi-video-dialog .pi-video-controls button[hidden]{display:none}
.pi-game.pi-cinema-open .pi-scene *{animation-play-state:paused!important}
.pi-game .pi-cinema-notice{padding:10px 12px;margin:0 0 12px;border:1px solid #c5d8c9;border-radius:12px;background:#edf4e7;color:#365b50;font-size:12px;line-height:1.5}
@media(max-width:360px){.pi-game .pi-dialog.pi-video-dialog{width:calc(100vw - 12px);max-height:calc(100dvh - 12px);border-radius:16px}.pi-game .pi-video-dialog .pi-dialog-head{padding:6px 10px}.pi-game .pi-video-dialog .pi-video-controls button{font-size:12px;padding:8px}.pi-game .pi-video-info{padding:7px 10px}}
/* v0.7: puzzle-led places and a complete, responsive treasure case. */
.pi-game .pi-materials{display:flex;flex-wrap:wrap;gap:6px;margin:10px 0 14px}
.pi-game .pi-material{display:inline-flex;align-items:center;gap:5px;padding:7px 9px;border-radius:10px;background:#eceede;border:1px solid #d7dfc9;color:#496252;font-size:12px;white-space:nowrap}
.pi-game .pi-material i{font-style:normal;color:#a07b4f}.pi-game .pi-material-stone i{color:#778c83}.pi-game .pi-material-light{background:#f5edcd;border-color:#e7d8a4}.pi-game .pi-material-light i{color:#a8872d}
.pi-game .pi-quest-list{display:grid;gap:12px;margin:18px 0}.pi-game .pi-quest-card{display:grid;grid-template-columns:84px minmax(0,1fr);gap:12px;padding:15px 12px;background:#f0f3e7;border:1px solid #d5dfc7;border-radius:18px}.pi-game .pi-quest-card.completed{background:#e6efe2;border-color:#b9cdb5}.pi-game .pi-quest-card h3{font-size:17px;margin:0 0 6px}.pi-game .pi-quest-card p{font-size:12px;line-height:1.65;margin:5px 0}.pi-game .pi-quest-card .pi-secondary{width:100%;min-height:44px;margin-top:7px;padding:9px;font-size:13px}.pi-game .pi-quest-card button:disabled{opacity:.65;cursor:default}.pi-game .pi-quest-promise{color:#587a58;font-weight:600}.pi-game .pi-quest-done{display:inline-block;margin-top:8px;font-size:12px;font-weight:700;color:#37745b}.pi-game .pi-quest-art{align-self:start;background:#e6ebd8;border-radius:50%;padding-top:5px}.pi-game :is(.pi-quest-art,.pi-world-reward-art) svg{width:100%;height:auto;display:block;fill:none;stroke:none;stroke-width:0}.pi-game .pi-world-reward-art{width:180px;margin:8px auto 20px}
.pi-game .pi-world-landmarks{position:absolute;inset:0;pointer-events:none;z-index:1}.pi-game .pi-world-landmark{position:absolute;width:24%;filter:drop-shadow(0 2px 2px #4e62443b)}.pi-game .pi-world-landmark svg{display:block;width:100%;height:auto;fill:none;stroke:none;stroke-width:0}.pi-game .pi-landmark-garden{left:34%;bottom:15%;width:28%}.pi-game .pi-landmark-home{left:0;top:24%;width:27%}.pi-game .pi-landmark-cafe{right:0;top:36%;width:29%}.pi-game .pi-landmark-waterway{left:33%;top:34%;width:29%}.pi-game .pi-landmark-grove{left:30%;top:9%;width:26%}.pi-game .pi-landmark-ruins{right:4%;top:7%;width:24%}
.pi-game .pi-puzzle-purpose{font-size:12px;color:#7b613a;line-height:1.5;margin:0 0 10px}.pi-game .pi-puzzle-layout>div{min-width:0}.pi-game .pi-rune-strip{text-align:center;letter-spacing:5px;color:#a68a51;background:linear-gradient(90deg,transparent,#efe4c2,transparent);padding:7px 0;margin:0 0 10px;user-select:none}.pi-game .pi-input-panel .pi-note{font-size:11px;line-height:1.6}.pi-game .pi-treasure .pi-board-status{font-size:12px;line-height:1.5;min-height:18px;margin:8px 0 10px}
.pi-game .pi-success-reveal{text-align:center;padding:18px 4px 20px;background:radial-gradient(ellipse,#eff6d4 0%,#e5f4e2 35%,transparent 70%)}.pi-game .pi-glowing-runes{display:flex;gap:8px;justify-content:center;padding:25px 0 30px}.pi-game .pi-glowing-runes span{font-size:clamp(25px,7vw,38px);color:#3d8678;text-shadow:0 0 13px #adcf96;animation:pi-rune-wake 1.1s ease both;animation-delay:calc(var(--rune)*.07s)}
@keyframes pi-rune-wake{0%{opacity:.35;transform:translateY(8px) scale(.85)}45%,100%{opacity:1;transform:translateY(0) scale(1);text-shadow:0 0 18px #c4d795,0 0 6px #e3efcc}}
@media(min-width:760px){
 .pi-game .pi-dialog.pi-treasure{width:min(780px,calc(100vw - 48px));padding:20px;max-height:calc(100dvh - 32px)}
 .pi-game .pi-treasure .pi-dialog-head{margin:-20px -20px 12px;min-height:54px;padding-top:6px;padding-bottom:6px}
 .pi-game .pi-treasure h2{font-size:22px;margin:0 0 7px}
 .pi-game .pi-treasure .pi-rules{font-size:12px;padding:9px 12px;line-height:1.5}
 .pi-game .pi-treasure .pi-puzzle-meta{margin:8px 0;font-size:11px;gap:10px}
 .pi-game .pi-puzzle-layout{display:grid;grid-template-columns:minmax(260px,1.55fr) minmax(190px,1fr);gap:22px;align-items:start}
 .pi-game .pi-treasure .pi-grid{max-width:min(390px,calc(100dvh - 285px));margin:0 auto}
 .pi-game .pi-treasure .pi-cell{font-size:clamp(19px,3.8dvh,29px)}
 .pi-game .pi-treasure .pi-keypad{grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:12px}
 .pi-game .pi-treasure .pi-keypad button{min-height:52px;padding:8px}
 .pi-game .pi-treasure .pi-puzzle-tools{grid-template-columns:1fr;gap:7px}
 .pi-game .pi-treasure .pi-puzzle-tools button{min-height:40px;padding:9px}
}
@media(max-width:759px){.pi-game .pi-dialog.pi-treasure{max-height:calc(100dvh - 26px);width:min(500px,calc(100vw - 26px));overflow-y:auto}.pi-game .pi-treasure .pi-dialog-head{min-height:54px}.pi-game .pi-input-panel .pi-rune-strip{display:none}.pi-game .pi-quest-card{grid-template-columns:64px minmax(0,1fr);gap:8px}.pi-game .pi-treasure .pi-puzzle-meta{font-size:10px}.pi-game .pi-treasure .pi-keypad{gap:5px}}
@media(prefers-reduced-motion:reduce){.pi-game .pi-glowing-runes span{animation:none!important}}
.pi-game.pi-reduced .pi-glowing-runes span{animation:none!important}
.pi-game .pi-world-landmarks{z-index:0}.pi-game :is(.pi-hero,.pi-pet-wrap){z-index:1}.pi-game .pi-milestone{z-index:2}

/* v0.8: chosen goals, readable difficulty controls, and optional island letters. */
.pi-game .pi-personal-goal{margin:14px 0 0;padding:12px;border:1px solid #cbdcc8;border-radius:16px;background:#edf3e4}
.pi-game .pi-personal-goal-title{display:flex;align-items:center;justify-content:space-between;gap:8px}.pi-game .pi-personal-goal-title strong{font-size:14px}.pi-game .pi-personal-goal p{font-size:12px;margin:7px 0;line-height:1.6}.pi-game .pi-personal-goal progress{width:100%;height:10px;accent-color:#4b876a}.pi-game .pi-personal-goal .pi-secondary{width:100%;min-height:40px;padding:8px;font-size:12px}
.pi-game .pi-difficulty-choices{display:grid;gap:10px;margin:18px 0}.pi-game .pi-difficulty-choice{padding:16px;text-align:left;border:2px solid #d4dec9;border-radius:16px;background:#eff3e5;color:#2e5d52;min-height:76px}.pi-game .pi-difficulty-choice.selected{border-color:#187e77;background:#deeee3}.pi-game .pi-difficulty-choice strong{display:block;font-size:19px}.pi-game .pi-difficulty-choice span{display:block;font-size:13px;line-height:1.6;margin-top:5px}
.pi-game .pi-goal-choices{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:16px}.pi-game .pi-goal-choice{display:flex;flex-direction:column;align-items:center;gap:5px;padding:10px;border:2px solid #d7dfca;border-radius:16px;background:#eff3e5;color:#305e51}.pi-game .pi-goal-choice[aria-pressed=true]{border-color:#187e77}.pi-game .pi-goal-choice span{width:100px;max-width:100%}.pi-game .pi-goal-choice svg{width:100%;height:auto;fill:none;stroke:none;stroke-width:0}.pi-game .pi-goal-choice strong{font-size:14px}.pi-game .pi-goal-choice small{font-size:11px}
.pi-game .pi-letter-inbox article{padding:12px;border:1px solid #d7dfca;background:#eff3e5;border-radius:14px;margin:10px 0}.pi-game .pi-letter-inbox h3{font-size:17px}.pi-game .pi-letter-inbox p{font-size:14px;line-height:1.7}.pi-game .pi-letter-prefs{display:grid;gap:12px;padding:12px;background:#edf3e4;border-radius:12px}.pi-game .pi-letter-prefs label{display:flex;align-items:center;gap:8px;font-size:14px;min-height:34px}.pi-game .pi-letter-prefs input{width:20px;height:20px;accent-color:#147d79}.pi-game .pi-letters-dialog select{font:inherit;min-height:44px;padding:8px;border:1px solid #b7cdb7;border-radius:10px;background:#fffaf0}.pi-game .pi-letters-dialog button:disabled{opacity:.5;cursor:default}.pi-game .pi-photo-download+.pi-secondary{width:100%;margin-top:10px}
@media(min-width:960px){:is(.pi-play-page .pi-game,.pi-game:fullscreen) .pi-goal{max-height:46dvh;overflow:auto;padding:16px 20px}.pi-game .pi-personal-goal{margin-top:10px;padding:10px}}

.pi-game .pi-letters-dialog .pi-dialog-head{position:sticky;top:-22px;z-index:3;background:var(--cream);padding:8px 0}
/* v0.9 approved raster environments: each scene is loaded only when selected. */
.pi-game[data-garden-stage="1"] .pi-scene{background-image:url("garden/soil.webp")}
.pi-game[data-garden-stage="2"] .pi-scene{background-image:url("garden/sprouts.webp")}
.pi-game[data-garden-stage="3"] .pi-scene{background-image:url("garden/bloom.webp")}
.pi-game .pi-garden-illustration,.pi-game .pi-garden-card-art,.pi-game .pi-garden-thumb{background:#e8edda url("garden/soil.webp") center 44%/cover no-repeat}
.pi-game :is(.pi-garden-illustration,.pi-garden-card-art)[data-stage="2"]{background-image:url("garden/sprouts.webp")}
.pi-game :is(.pi-garden-illustration,.pi-garden-card-art)[data-stage="3"]{background-image:url("garden/bloom.webp")}
.pi-game .pi-garden-thumb{height:70px;border-radius:12px;background-size:165%;background-position:50% 44%}
.pi-game .pi-garden-illustration{width:100%;aspect-ratio:16/10;max-height:280px;border-radius:18px;box-shadow:inset 0 0 0 1px #54634926;background-size:100%;background-position:50% 43%;margin:12px 0}
.pi-game .pi-garden-card{display:grid;grid-template-columns:92px minmax(0,1fr);gap:12px;border:1px solid #ccdabc;border-radius:17px;background:#f1f4e8;padding:12px;margin-top:14px;overflow:hidden}
.pi-game .pi-garden-card-art{border-radius:12px;min-height:110px;background-size:230%;background-position:50% 46%}
.pi-game .pi-garden-card h3{font-size:16px;margin:5px 0}.pi-game .pi-garden-card p{font-size:12px;margin:4px 0;line-height:1.5}.pi-game .pi-garden-card small{font-size:9px;letter-spacing:1px;color:#557462}
.pi-game .pi-garden-card .pi-secondary{min-height:42px;font-size:12px;margin:5px 0 0;padding:8px;width:100%}
.pi-game .pi-garden-stages{display:flex;gap:7px;list-style:none;padding:0;margin:14px 0}.pi-game .pi-garden-stages li{flex:1;text-align:center;border-radius:20px;padding:8px 2px;background:#eeeade;color:#78796b;font-size:13px}.pi-game .pi-garden-stages .complete{background:#dcebd6;color:#285a46}.pi-game .pi-garden-stages [aria-current]{box-shadow:inset 0 0 0 2px #779671;font-weight:700}
.pi-game .pi-garden-request{padding:14px 16px;margin:16px 0;background:#eff3e7;border:1px solid #d8e3c9;border-radius:15px}.pi-game .pi-garden-request p{font-size:13px;line-height:1.65;margin:5px 0}.pi-game .pi-garden-request small{display:block;color:#627362;font-size:11px;margin-top:7px}.pi-game .pi-garden-request progress{width:100%;height:8px;accent-color:#61916c}
.pi-game .pi-material-detail{margin-top:15px}.pi-game .pi-material-detail summary{cursor:pointer;font-size:13px;min-height:28px}.pi-game .pi-bouquet-count{font-size:18px;color:#536d4c}
.pi-game .pi-discovery-number{font:700 28px Georgia,serif;display:grid;place-items:center;min-height:68px;color:#7c8c6a}.pi-game .pi-world-reward-art:has(.pi-discovery-number){display:none}
.pi-game .pi-dialog .pi-primary:disabled{opacity:.5;cursor:default}.pi-game .pi-daily-card>.pi-secondary{display:block;width:100%;margin:10px 0}
@media(max-width:360px){.pi-game .pi-garden-card{grid-template-columns:68px minmax(0,1fr);padding:9px;gap:8px}.pi-game .pi-garden-card-art{min-height:100px}.pi-game .pi-garden-illustration{aspect-ratio:16/9}}

/* v0.9.1: portrait art must not collapse when the action area grows. */
@media(max-width:600px){
 .pi-game .pi-header{flex-wrap:nowrap;gap:4px;padding:6px 8px;min-height:56px}
 .pi-game .pi-brand{flex:1 1 auto;min-width:0;gap:4px}
 .pi-game .pi-brand>svg{display:none}
 .pi-game .pi-wordmark{font-size:21px;white-space:nowrap;letter-spacing:-.7px}
 .pi-game .pi-tagline{display:none}
 .pi-game .pi-tools{flex:0 0 auto;gap:0;margin-left:0}
 .pi-game .pi-tools button{width:44px;height:44px;min-width:44px;padding:8px}
 .pi-game .pi-tools .pi-lang{font-size:10px;padding:2px}
 .pi-game .pi-scene{aspect-ratio:2/3;width:100%;background-image:url("mobile/shore.webp");background-position:center;background-size:cover}
 .pi-game[data-garden-stage="1"] .pi-scene{background-image:url("mobile/soil.webp")}
 .pi-game[data-garden-stage="2"] .pi-scene{background-image:url("mobile/sprouts.webp")}
 .pi-game[data-garden-stage="3"] .pi-scene{background-image:url("mobile/bloom.webp")}
 .pi-game .pi-hero{left:-7%;top:auto;bottom:44px;width:84%;height:auto;max-height:none}
 .pi-game .pi-pet-wrap{left:51%;top:auto;bottom:50px;width:44%;height:auto}
 .pi-game .pi-pet-bubble{top:40%;left:49%;max-width:47%;font-size:11px}
 .pi-game .pi-gate{top:22%;right:5%}
 body.pi-play-page{overflow-y:auto!important}
 .pi-play-page #pi-app{height:auto;min-height:100dvh}
 .pi-play-page .pi-game{height:auto;min-height:100dvh}
 :is(.pi-play-page .pi-game,.pi-game:fullscreen) .pi-shell{height:auto;min-height:100dvh}
 :is(.pi-play-page .pi-game,.pi-game:fullscreen) .pi-header{padding:6px 8px;min-height:56px}
 :is(.pi-play-page .pi-game,.pi-game:fullscreen) .pi-scene{flex:none;min-height:0;aspect-ratio:2/3}
 :is(.pi-play-page .pi-game,.pi-game:fullscreen) .pi-hero{left:-7%;top:auto;bottom:44px;width:84%;height:auto;max-height:none}
 :is(.pi-play-page .pi-game,.pi-game:fullscreen) .pi-pet-wrap{left:51%;top:auto;bottom:50px;width:44%;height:auto}
 :is(.pi-play-page .pi-game,.pi-game:fullscreen) .pi-nav{position:fixed;bottom:0;left:50%;transform:translateX(-50%);width:min(100%,560px);z-index:6;background:#fffaf0f7;border-top:1px solid #dbe4d4;box-shadow:0 -4px 18px #254b4810;padding:5px 8px max(5px,env(safe-area-inset-bottom));backdrop-filter:blur(8px)}
 :is(.pi-play-page .pi-game,.pi-game:fullscreen) .pi-nav button{min-height:54px}
 :is(.pi-play-page .pi-game,.pi-game:fullscreen) .pi-footer{padding-bottom:calc(86px + env(safe-area-inset-bottom))}
 .pi-game:fullscreen{overflow-y:auto;padding-left:0;padding-right:0}
}
@media(max-width:360px){.pi-game .pi-wordmark{font-size:18px;letter-spacing:-1px}}

/* v0.10.0: scenery follows unlocked places; responsive art has its own composition. */
.pi-game[data-scene="shore"] .pi-scene{background-image:url("scenery/pc/shore.webp")}
.pi-game .pi-place-art[data-art="shore"]{background-image:url("scenery/pc/shore.webp")}
.pi-game[data-scene="soil"] .pi-scene{background-image:url("scenery/pc/soil.webp")}
.pi-game .pi-place-art[data-art="soil"]{background-image:url("scenery/pc/soil.webp")}
.pi-game[data-scene="sprouts"] .pi-scene{background-image:url("scenery/pc/sprouts.webp")}
.pi-game .pi-place-art[data-art="sprouts"]{background-image:url("scenery/pc/sprouts.webp")}
.pi-game[data-scene="bloom"] .pi-scene{background-image:url("scenery/pc/bloom.webp")}
.pi-game .pi-place-art[data-art="bloom"]{background-image:url("scenery/pc/bloom.webp")}
.pi-game[data-scene="waterway"] .pi-scene{background-image:url("scenery/pc/waterway.webp")}
.pi-game .pi-place-art[data-art="waterway"]{background-image:url("scenery/pc/waterway.webp")}
.pi-game[data-scene="home"] .pi-scene{background-image:url("scenery/pc/home.webp")}
.pi-game .pi-place-art[data-art="home"]{background-image:url("scenery/pc/home.webp")}
.pi-game[data-scene="grove"] .pi-scene{background-image:url("scenery/pc/grove.webp")}
.pi-game .pi-place-art[data-art="grove"]{background-image:url("scenery/pc/grove.webp")}
.pi-game[data-scene="cafe"] .pi-scene{background-image:url("scenery/pc/cafe.webp")}
.pi-game .pi-place-art[data-art="cafe"]{background-image:url("scenery/pc/cafe.webp")}
.pi-game[data-scene="ruins"] .pi-scene{background-image:url("scenery/pc/ruins.webp")}
.pi-game .pi-place-art[data-art="ruins"]{background-image:url("scenery/pc/ruins.webp")}
.pi-game[data-scene="shore-night"] .pi-scene{background-image:url("scenery/pc/shore-night.webp")}
.pi-game .pi-place-art[data-art="shore-night"]{background-image:url("scenery/pc/shore-night.webp")}
@media(max-width:600px){
.pi-game[data-scene="shore"] .pi-scene{background-image:url("mobile/shore.webp")}
.pi-game[data-scene="soil"] .pi-scene{background-image:url("mobile/soil.webp")}
.pi-game[data-scene="sprouts"] .pi-scene{background-image:url("mobile/sprouts.webp")}
.pi-game[data-scene="bloom"] .pi-scene{background-image:url("mobile/bloom.webp")}
.pi-game[data-scene="waterway"] .pi-scene{background-image:url("scenery/mobile/waterway.webp")}
.pi-game[data-scene="home"] .pi-scene{background-image:url("scenery/mobile/home.webp")}
.pi-game[data-scene="grove"] .pi-scene{background-image:url("scenery/mobile/grove.webp")}
.pi-game[data-scene="cafe"] .pi-scene{background-image:url("scenery/mobile/cafe.webp")}
.pi-game[data-scene="ruins"] .pi-scene{background-image:url("scenery/mobile/ruins.webp")}
.pi-game[data-scene="shore-night"] .pi-scene{background-image:url("scenery/mobile/shore-night.webp")}
}
.pi-game button.pi-location{text-align:left;z-index:3;background:#fffaf0ed;max-width:calc(100% - 88px);border:1px solid #ffffffa8;min-height:44px}.pi-game .pi-location small{font-size:10px}.pi-game .pi-pet-wrap{border:0;padding:0;margin:0;border-radius:24px;background:transparent;overflow:visible}.pi-game .pi-pet-wrap:hover{filter:none}.pi-game button.pi-pet-wrap:focus-visible{position:absolute;outline-offset:-15px}.pi-game .pi-place-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:16px 0}.pi-game .pi-place-card{padding:0 0 12px;background:#f0f1e6;overflow:hidden;text-align:left;border:2px solid transparent}.pi-game .pi-place-card[aria-pressed=true]{border-color:#147d7a}.pi-game .pi-place-card:disabled{opacity:.67}.pi-game .pi-place-card strong,.pi-game .pi-place-card small{display:block;margin:6px 10px 0}.pi-game .pi-place-card small{font-size:11px}.pi-game .pi-place-art{display:block;width:100%;aspect-ratio:3/2;background:center/cover no-repeat #e3ead7;border-radius:12px}.pi-game .pi-place-card .pi-place-art{border-radius:0}.pi-game .pi-world-reward-art{width:100%;height:auto}.pi-game .pi-world-reward-art .pi-place-art{aspect-ratio:3/2}.pi-game .pi-quest-art .pi-place-art{width:100%;height:100%;min-height:76px}.pi-game .pi-goal-choice .pi-place-art{width:66px;height:54px}.pi-game[data-scene=shore-night] .pi-seal{opacity:.5}
@media(min-width:601px){.pi-game{max-width:1100px}.pi-game .pi-scene{aspect-ratio:3/2}.pi-game .pi-hero{width:35%;left:10%;top:auto;bottom:44px;height:auto}.pi-game .pi-pet-wrap{width:24%;left:57%;top:auto;bottom:50px}.pi-game .pi-pet-bubble{top:auto;bottom:37%;left:60%}}
@media(min-width:960px){:is(.pi-play-page .pi-game,.pi-game:fullscreen) .pi-scene{aspect-ratio:3/2;min-height:0;align-self:center;width:100%;flex:none}:is(.pi-play-page .pi-game,.pi-game:fullscreen) .pi-hero{width:35%;height:auto;left:10%;bottom:44px}:is(.pi-play-page .pi-game,.pi-game:fullscreen) .pi-pet-wrap{width:24%;left:57%;bottom:50px}}
@media(max-width:600px){.pi-game .pi-hero,:is(.pi-play-page .pi-game,.pi-game:fullscreen) .pi-hero{width:70%;left:-6%;bottom:48px}.pi-game .pi-pet-wrap,:is(.pi-play-page .pi-game,.pi-game:fullscreen) .pi-pet-wrap{width:40%;left:55%;bottom:50px}.pi-game .pi-pet-bubble{top:auto;bottom:32%;left:51%;max-width:46%}.pi-game .pi-place-grid{gap:8px}.pi-game .pi-place-card strong{font-size:13px}}

/* v0.11.0: the companion is the sole character in everyday scenes. */
.pi-game .pi-pet-wrap,:is(.pi-play-page .pi-game,.pi-game:fullscreen) .pi-pet-wrap{left:var(--buddy-x,50%);top:auto;bottom:var(--buddy-bottom,17%);width:32%;height:auto;max-height:none;aspect-ratio:1;transform:translateX(-50%);transition:left .55s ease,bottom .55s ease;transform-origin:center bottom;z-index:2;touch-action:manipulation}
.pi-game .pi-pet,.pi-game.pi-happy .pi-pet,.pi-game.pi-eating .pi-pet{animation:none;transform:scale(var(--buddy-scale,1));transform-origin:center bottom}
.pi-game .pi-pet .pi-sprite,.pi-game.pi-eating .pi-pet .pi-sprite,.pi-game.pi-happy .pi-pet .pi-sprite{background-size:100% 100%;background-position:0 0;background-repeat:no-repeat}
.pi-game .pi-pet-wrap::before{bottom:4%;left:26%;width:48%;height:6%;z-index:-1;background:#2f422833}
.pi-game .pi-pet-bubble{left:50%;top:18%;bottom:auto;transform:translateX(-50%);width:max-content;max-width:72%;font-size:12px;line-height:1.55;padding:8px 14px;pointer-events:none;z-index:3}
.pi-game .pi-pet-bubble strong,.pi-game .pi-pet-bubble span{display:block;overflow-wrap:anywhere}
.pi-game .pi-pet-bubble strong{font-size:11px;color:#36705a;margin-bottom:2px}
.pi-game .pi-pet-bubble::after{left:calc(50% - 4px)}
.pi-game .pi-pet .pi-accessory{left:27%;top:25%;width:37%;height:20%}
.pi-game .pi-pet .pi-accessory-flower_pin{left:55%;top:29%;width:19%;height:19%}
.pi-game[data-pose=right] .pi-pet .pi-accessory{left:43%;top:24%}
.pi-game[data-pose=left] .pi-pet .pi-accessory{left:22%;top:27%}
.pi-game:is([data-pose=back],[data-pose=sleep],[data-pose=sniff],[data-pose=lookback],[data-pose=stretch]) .pi-pet .pi-accessory{display:none}
.pi-game.pi-reacting[data-pose=jump] .pi-pet{animation:pi-buddy-jump .65s ease-in-out 2}
.pi-game.pi-reacting[data-pose=wave] .pi-pet{animation:pi-buddy-sway .65s ease-in-out 2}
@keyframes pi-buddy-jump{0%,100%{transform:translateY(0) scale(var(--buddy-scale,1))}50%{transform:translateY(-16px) scale(var(--buddy-scale,1))}}
@keyframes pi-buddy-sway{0%,100%{transform:rotate(0) scale(var(--buddy-scale,1))}30%{transform:rotate(-5deg) scale(var(--buddy-scale,1))}70%{transform:rotate(5deg) scale(var(--buddy-scale,1))}}
.pi-game .pi-dialog .pi-intro-pet,.pi-game .pi-dialog .pi-intro-pet.happy,.pi-game .pi-dialog .pi-intro-pet.eat{width:155px;height:155px;margin:0 auto 8px;background-size:100% 100%;background-position:center;background-image:url("companion/front.webp")}
.pi-game .pi-dialog .pi-intro-pet.happy{background-image:url("companion/wave.webp")}
.pi-game .pi-dialog .pi-intro-pet.eat{background-image:url("companion/eat.webp")}
.pi-game .pi-name-form{text-align:left}.pi-game .pi-name-form label{display:block;font-weight:700;margin-bottom:8px}.pi-game .pi-name-form input{box-sizing:border-box;width:100%;min-height:48px;padding:10px 13px;font:inherit;font-size:18px;border:2px solid #7d9c82;border-radius:12px;background:#fffef7;color:#244f43}.pi-game .pi-name-error{color:#9e352b;font-size:13px;min-height:1.5em}
.pi-game .pi-discovery-summary{display:flex;align-items:center;gap:14px;padding:18px 22px;background:#f7edda;border-top:1px solid #e4d5b6}.pi-game .pi-discovery-summary>div{flex:1;min-width:0}.pi-game .pi-discovery-summary strong,.pi-game .pi-discovery-summary small{display:block}.pi-game .pi-discovery-summary small{font-size:10px;color:#826d4c;letter-spacing:.08em}.pi-game .pi-discovery-summary strong{font-size:15px;margin-top:4px}.pi-game .pi-discovery-summary p{font-size:11px;margin:5px 0 0}.pi-game .pi-discovery-summary button{width:auto;flex-shrink:0;min-height:44px;padding:10px}
.pi-game .pi-event-list{display:grid;gap:16px}.pi-game .pi-event-card{text-align:left;background:#f2f4e8;border:1px solid #d3ddc7;border-radius:16px;padding:12px}.pi-game .pi-event-card h3{margin:12px 0 6px}.pi-game .pi-event-card p{font-size:13px;line-height:1.8}.pi-game .pi-event-card small{display:block;font-size:11px;margin:10px 0}.pi-game .pi-event-card button{margin-top:5px}.pi-game .pi-event-reveal{margin-bottom:16px}
.pi-game.pi-reduced .pi-pet-wrap{transition:none}.pi-game.pi-reduced .pi-pet,.pi-game.pi-photo-snapshot .pi-pet{animation:none!important;transform:scale(var(--buddy-scale,1))!important}
@media(prefers-reduced-motion:reduce){.pi-game .pi-pet-wrap{transition:none!important}.pi-game .pi-pet{animation:none!important}}
@media(max-width:600px){.pi-game .pi-pet-wrap,:is(.pi-play-page .pi-game,.pi-game:fullscreen) .pi-pet-wrap{width:48%}.pi-game .pi-pet-bubble{top:43%;max-width:78%;font-size:12px}.pi-game .pi-discovery-summary{padding:14px 16px}}
@media(min-width:960px){:is(.pi-play-page .pi-game,.pi-game:fullscreen) .pi-shell{grid-template-rows:auto auto auto auto auto minmax(0,1fr) auto auto}:is(.pi-play-page .pi-game,.pi-game:fullscreen) .pi-scene{grid-row:4/7;align-self:start}:is(.pi-play-page .pi-game,.pi-game:fullscreen) .pi-discovery-summary{grid-column:2;grid-row:5;padding:12px 24px}:is(.pi-play-page .pi-game,.pi-game:fullscreen) .pi-daily-card{grid-row:6}:is(.pi-play-page .pi-game,.pi-game:fullscreen) .pi-nav{grid-row:7}:is(.pi-play-page .pi-game,.pi-game:fullscreen) .pi-footer{grid-row:8}}

.pi-game[data-pose=front] .pi-pet .pi-sprite{background-image:url("companion/front.webp")}

.pi-game[data-pose=left] .pi-pet .pi-sprite{background-image:url("companion/left.webp")}

.pi-game[data-pose=right] .pi-pet .pi-sprite{background-image:url("companion/right.webp")}

.pi-game[data-pose=back] .pi-pet .pi-sprite{background-image:url("companion/back.webp")}

.pi-game[data-pose=wave] .pi-pet .pi-sprite{background-image:url("companion/wave.webp")}

.pi-game[data-pose=jump] .pi-pet .pi-sprite{background-image:url("companion/jump.webp")}

.pi-game[data-pose=eat] .pi-pet .pi-sprite{background-image:url("companion/eat.webp")}

.pi-game[data-pose=sleep] .pi-pet .pi-sprite{background-image:url("companion/sleep.webp")}

.pi-game[data-pose=curious] .pi-pet .pi-sprite{background-image:url("companion/curious.webp")}

.pi-game[data-pose=sniff] .pi-pet .pi-sprite{background-image:url("companion/sniff.webp")}

.pi-game[data-pose=lookback] .pi-pet .pi-sprite{background-image:url("companion/lookback.webp")}

.pi-game[data-pose=stretch] .pi-pet .pi-sprite{background-image:url("companion/stretch.webp")}

.pi-game[data-scene=shell-cove] .pi-scene,.pi-game [data-art=shell-cove]{background-image:url("scenery/pc/shell-cove.webp")}
@media(max-width:600px){.pi-game[data-scene=shell-cove] .pi-scene{background-image:url("scenery/mobile/shell-cove.webp")}}

.pi-game[data-scene=lantern-grove] .pi-scene,.pi-game [data-art=lantern-grove]{background-image:url("scenery/pc/lantern-grove.webp")}
@media(max-width:600px){.pi-game[data-scene=lantern-grove] .pi-scene{background-image:url("scenery/mobile/lantern-grove.webp")}}

.pi-game[data-scene=star-hill] .pi-scene,.pi-game [data-art=star-hill]{background-image:url("scenery/pc/star-hill.webp")}
@media(max-width:600px){.pi-game[data-scene=star-hill] .pi-scene{background-image:url("scenery/mobile/star-hill.webp")}}
@media(min-width:601px){.pi-game .pi-pet-bubble,:is(.pi-play-page .pi-game,.pi-game:fullscreen) .pi-pet-bubble{top:20%;bottom:auto;left:50%;max-width:65%}}
@media(min-width:960px){:is(.pi-play-page .pi-game,.pi-game:fullscreen) .pi-scene{aspect-ratio:auto;align-self:stretch;height:100%;min-height:440px}}

.pi-game[data-journey-step="4"] .pi-gate,.pi-game:not([data-scene=shore]) .pi-gate,.pi-game:not([data-scene=shore]) .pi-seal{display:none}
@media(max-width:600px){.pi-game .pi-pet-bubble,:is(.pi-play-page .pi-game,.pi-game:fullscreen) .pi-pet-bubble{top:37%;bottom:auto;left:50%;max-width:78%}}

/* v0.12.0: real local time. These are authored images, also used by photo export. */
.pi-game[data-light="morning"][data-scene="shore"] .pi-scene,.pi-game[data-light="morning"] .pi-place-art[data-art="shore"]{background-image:url("time/pc/shore-morning.webp")}
@media(max-width:600px){.pi-game[data-light="morning"][data-scene="shore"] .pi-scene{background-image:url("time/mobile/shore-morning.webp")}}
.pi-game[data-light="morning"][data-scene="soil"] .pi-scene,.pi-game[data-light="morning"] .pi-place-art[data-art="soil"]{background-image:url("time/pc/soil-morning.webp")}
@media(max-width:600px){.pi-game[data-light="morning"][data-scene="soil"] .pi-scene{background-image:url("time/mobile/soil-morning.webp")}}
.pi-game[data-light="morning"][data-scene="sprouts"] .pi-scene,.pi-game[data-light="morning"] .pi-place-art[data-art="sprouts"]{background-image:url("time/pc/sprouts-morning.webp")}
@media(max-width:600px){.pi-game[data-light="morning"][data-scene="sprouts"] .pi-scene{background-image:url("time/mobile/sprouts-morning.webp")}}
.pi-game[data-light="morning"][data-scene="bloom"] .pi-scene,.pi-game[data-light="morning"] .pi-place-art[data-art="bloom"]{background-image:url("time/pc/bloom-morning.webp")}
@media(max-width:600px){.pi-game[data-light="morning"][data-scene="bloom"] .pi-scene{background-image:url("time/mobile/bloom-morning.webp")}}
.pi-game[data-light="morning"][data-scene="waterway"] .pi-scene,.pi-game[data-light="morning"] .pi-place-art[data-art="waterway"]{background-image:url("time/pc/waterway-morning.webp")}
@media(max-width:600px){.pi-game[data-light="morning"][data-scene="waterway"] .pi-scene{background-image:url("time/mobile/waterway-morning.webp")}}
.pi-game[data-light="morning"][data-scene="home"] .pi-scene,.pi-game[data-light="morning"] .pi-place-art[data-art="home"]{background-image:url("time/pc/home-morning.webp")}
@media(max-width:600px){.pi-game[data-light="morning"][data-scene="home"] .pi-scene{background-image:url("time/mobile/home-morning.webp")}}
.pi-game[data-light="morning"][data-scene="grove"] .pi-scene,.pi-game[data-light="morning"] .pi-place-art[data-art="grove"]{background-image:url("time/pc/grove-morning.webp")}
@media(max-width:600px){.pi-game[data-light="morning"][data-scene="grove"] .pi-scene{background-image:url("time/mobile/grove-morning.webp")}}
.pi-game[data-light="morning"][data-scene="cafe"] .pi-scene,.pi-game[data-light="morning"] .pi-place-art[data-art="cafe"]{background-image:url("time/pc/cafe-morning.webp")}
@media(max-width:600px){.pi-game[data-light="morning"][data-scene="cafe"] .pi-scene{background-image:url("time/mobile/cafe-morning.webp")}}
.pi-game[data-light="morning"][data-scene="ruins"] .pi-scene,.pi-game[data-light="morning"] .pi-place-art[data-art="ruins"]{background-image:url("time/pc/ruins-morning.webp")}
@media(max-width:600px){.pi-game[data-light="morning"][data-scene="ruins"] .pi-scene{background-image:url("time/mobile/ruins-morning.webp")}}
.pi-game[data-light="morning"][data-scene="shell-cove"] .pi-scene,.pi-game[data-light="morning"] .pi-place-art[data-art="shell-cove"]{background-image:url("time/pc/shell-cove-morning.webp")}
@media(max-width:600px){.pi-game[data-light="morning"][data-scene="shell-cove"] .pi-scene{background-image:url("time/mobile/shell-cove-morning.webp")}}
.pi-game[data-light="morning"][data-scene="lantern-grove"] .pi-scene,.pi-game[data-light="morning"] .pi-place-art[data-art="lantern-grove"]{background-image:url("time/pc/lantern-grove-morning.webp")}
@media(max-width:600px){.pi-game[data-light="morning"][data-scene="lantern-grove"] .pi-scene{background-image:url("time/mobile/lantern-grove-morning.webp")}}
.pi-game[data-light="morning"][data-scene="star-hill"] .pi-scene,.pi-game[data-light="morning"] .pi-place-art[data-art="star-hill"]{background-image:url("time/pc/star-hill-morning.webp")}
@media(max-width:600px){.pi-game[data-light="morning"][data-scene="star-hill"] .pi-scene{background-image:url("time/mobile/star-hill-morning.webp")}}
.pi-game[data-light="day"][data-scene="shore"] .pi-scene,.pi-game[data-light="day"] .pi-place-art[data-art="shore"]{background-image:url("scenery/pc/shore.webp")}
@media(max-width:600px){.pi-game[data-light="day"][data-scene="shore"] .pi-scene{background-image:url("mobile/shore.webp")}}
.pi-game[data-light="day"][data-scene="soil"] .pi-scene,.pi-game[data-light="day"] .pi-place-art[data-art="soil"]{background-image:url("scenery/pc/soil.webp")}
@media(max-width:600px){.pi-game[data-light="day"][data-scene="soil"] .pi-scene{background-image:url("mobile/soil.webp")}}
.pi-game[data-light="day"][data-scene="sprouts"] .pi-scene,.pi-game[data-light="day"] .pi-place-art[data-art="sprouts"]{background-image:url("scenery/pc/sprouts.webp")}
@media(max-width:600px){.pi-game[data-light="day"][data-scene="sprouts"] .pi-scene{background-image:url("mobile/sprouts.webp")}}
.pi-game[data-light="day"][data-scene="bloom"] .pi-scene,.pi-game[data-light="day"] .pi-place-art[data-art="bloom"]{background-image:url("scenery/pc/bloom.webp")}
@media(max-width:600px){.pi-game[data-light="day"][data-scene="bloom"] .pi-scene{background-image:url("mobile/bloom.webp")}}
.pi-game[data-light="day"][data-scene="waterway"] .pi-scene,.pi-game[data-light="day"] .pi-place-art[data-art="waterway"]{background-image:url("scenery/pc/waterway.webp")}
@media(max-width:600px){.pi-game[data-light="day"][data-scene="waterway"] .pi-scene{background-image:url("scenery/mobile/waterway.webp")}}
.pi-game[data-light="day"][data-scene="home"] .pi-scene,.pi-game[data-light="day"] .pi-place-art[data-art="home"]{background-image:url("scenery/pc/home.webp")}
@media(max-width:600px){.pi-game[data-light="day"][data-scene="home"] .pi-scene{background-image:url("scenery/mobile/home.webp")}}
.pi-game[data-light="day"][data-scene="grove"] .pi-scene,.pi-game[data-light="day"] .pi-place-art[data-art="grove"]{background-image:url("scenery/pc/grove.webp")}
@media(max-width:600px){.pi-game[data-light="day"][data-scene="grove"] .pi-scene{background-image:url("scenery/mobile/grove.webp")}}
.pi-game[data-light="day"][data-scene="cafe"] .pi-scene,.pi-game[data-light="day"] .pi-place-art[data-art="cafe"]{background-image:url("scenery/pc/cafe.webp")}
@media(max-width:600px){.pi-game[data-light="day"][data-scene="cafe"] .pi-scene{background-image:url("scenery/mobile/cafe.webp")}}
.pi-game[data-light="day"][data-scene="ruins"] .pi-scene,.pi-game[data-light="day"] .pi-place-art[data-art="ruins"]{background-image:url("time/pc/ruins-day.webp")}
@media(max-width:600px){.pi-game[data-light="day"][data-scene="ruins"] .pi-scene{background-image:url("time/mobile/ruins-day.webp")}}
.pi-game[data-light="day"][data-scene="shell-cove"] .pi-scene,.pi-game[data-light="day"] .pi-place-art[data-art="shell-cove"]{background-image:url("scenery/pc/shell-cove.webp")}
@media(max-width:600px){.pi-game[data-light="day"][data-scene="shell-cove"] .pi-scene{background-image:url("scenery/mobile/shell-cove.webp")}}
.pi-game[data-light="day"][data-scene="lantern-grove"] .pi-scene,.pi-game[data-light="day"] .pi-place-art[data-art="lantern-grove"]{background-image:url("time/pc/lantern-grove-day.webp")}
@media(max-width:600px){.pi-game[data-light="day"][data-scene="lantern-grove"] .pi-scene{background-image:url("time/mobile/lantern-grove-day.webp")}}
.pi-game[data-light="day"][data-scene="star-hill"] .pi-scene,.pi-game[data-light="day"] .pi-place-art[data-art="star-hill"]{background-image:url("time/pc/star-hill-day.webp")}
@media(max-width:600px){.pi-game[data-light="day"][data-scene="star-hill"] .pi-scene{background-image:url("time/mobile/star-hill-day.webp")}}
.pi-game[data-light="night"][data-scene="shore"] .pi-scene,.pi-game[data-light="night"] .pi-place-art[data-art="shore"]{background-image:url("scenery/pc/shore-night.webp")}
@media(max-width:600px){.pi-game[data-light="night"][data-scene="shore"] .pi-scene{background-image:url("scenery/mobile/shore-night.webp")}}
.pi-game[data-light="night"][data-scene="soil"] .pi-scene,.pi-game[data-light="night"] .pi-place-art[data-art="soil"]{background-image:url("time/pc/soil-night.webp")}
@media(max-width:600px){.pi-game[data-light="night"][data-scene="soil"] .pi-scene{background-image:url("time/mobile/soil-night.webp")}}
.pi-game[data-light="night"][data-scene="sprouts"] .pi-scene,.pi-game[data-light="night"] .pi-place-art[data-art="sprouts"]{background-image:url("time/pc/sprouts-night.webp")}
@media(max-width:600px){.pi-game[data-light="night"][data-scene="sprouts"] .pi-scene{background-image:url("time/mobile/sprouts-night.webp")}}
.pi-game[data-light="night"][data-scene="bloom"] .pi-scene,.pi-game[data-light="night"] .pi-place-art[data-art="bloom"]{background-image:url("time/pc/bloom-night.webp")}
@media(max-width:600px){.pi-game[data-light="night"][data-scene="bloom"] .pi-scene{background-image:url("time/mobile/bloom-night.webp")}}
.pi-game[data-light="night"][data-scene="waterway"] .pi-scene,.pi-game[data-light="night"] .pi-place-art[data-art="waterway"]{background-image:url("time/pc/waterway-night.webp")}
@media(max-width:600px){.pi-game[data-light="night"][data-scene="waterway"] .pi-scene{background-image:url("time/mobile/waterway-night.webp")}}
.pi-game[data-light="night"][data-scene="home"] .pi-scene,.pi-game[data-light="night"] .pi-place-art[data-art="home"]{background-image:url("time/pc/home-night.webp")}
@media(max-width:600px){.pi-game[data-light="night"][data-scene="home"] .pi-scene{background-image:url("time/mobile/home-night.webp")}}
.pi-game[data-light="night"][data-scene="grove"] .pi-scene,.pi-game[data-light="night"] .pi-place-art[data-art="grove"]{background-image:url("time/pc/grove-night.webp")}
@media(max-width:600px){.pi-game[data-light="night"][data-scene="grove"] .pi-scene{background-image:url("time/mobile/grove-night.webp")}}
.pi-game[data-light="night"][data-scene="cafe"] .pi-scene,.pi-game[data-light="night"] .pi-place-art[data-art="cafe"]{background-image:url("time/pc/cafe-night.webp")}
@media(max-width:600px){.pi-game[data-light="night"][data-scene="cafe"] .pi-scene{background-image:url("time/mobile/cafe-night.webp")}}
.pi-game[data-light="night"][data-scene="ruins"] .pi-scene,.pi-game[data-light="night"] .pi-place-art[data-art="ruins"]{background-image:url("time/pc/ruins-night.webp")}
@media(max-width:600px){.pi-game[data-light="night"][data-scene="ruins"] .pi-scene{background-image:url("time/mobile/ruins-night.webp")}}
.pi-game[data-light="night"][data-scene="shell-cove"] .pi-scene,.pi-game[data-light="night"] .pi-place-art[data-art="shell-cove"]{background-image:url("time/pc/shell-cove-night.webp")}
@media(max-width:600px){.pi-game[data-light="night"][data-scene="shell-cove"] .pi-scene{background-image:url("time/mobile/shell-cove-night.webp")}}
.pi-game[data-light="night"][data-scene="lantern-grove"] .pi-scene,.pi-game[data-light="night"] .pi-place-art[data-art="lantern-grove"]{background-image:url("scenery/pc/lantern-grove.webp")}
@media(max-width:600px){.pi-game[data-light="night"][data-scene="lantern-grove"] .pi-scene{background-image:url("scenery/mobile/lantern-grove.webp")}}
.pi-game[data-light="night"][data-scene="star-hill"] .pi-scene,.pi-game[data-light="night"] .pi-place-art[data-art="star-hill"]{background-image:url("scenery/pc/star-hill.webp")}
@media(max-width:600px){.pi-game[data-light="night"][data-scene="star-hill"] .pi-scene{background-image:url("scenery/mobile/star-hill.webp")}}
.pi-game[data-pose="morning-stretch"] .pi-pet .pi-sprite{background-image:url("companion/morning-stretch.webp")}
.pi-game[data-pose="day-play"] .pi-pet .pi-sprite{background-image:url("companion/day-play.webp")}
.pi-game[data-pose="evening-yawn"] .pi-pet .pi-sprite{background-image:url("companion/evening-yawn.webp")}
.pi-game[data-pose="night-curl"] .pi-pet .pi-sprite{background-image:url("companion/night-curl.webp")}

.pi-game .pi-buddy-mode{display:block;font-size:10px;font-weight:400;color:#657461;margin:0 0 4px}
.pi-game .pi-pet-bubble,:is(.pi-play-page .pi-game,.pi-game:fullscreen) .pi-pet-bubble{max-width:min(82%,340px);white-space:normal;font-size:13px;line-height:1.6;padding:10px 14px;top:20%;bottom:auto}
.pi-game .pi-berry-art{width:min(100%,230px);aspect-ratio:1;background:url("story/wordleaf-berry.webp") center/cover;margin:4px auto 18px;border-radius:22px}
.pi-game .pi-story-name{font-size:22px;font-weight:700;text-align:center;color:#376c57}
.pi-game:is([data-pose="morning-stretch"],[data-pose="evening-yawn"],[data-pose="night-curl"]) .pi-pet .pi-accessory{display:none}
.pi-game[data-pose="day-play"] .pi-pet .pi-accessory{left:34%;top:23%}
.pi-game[data-pose="day-play"] .pi-pet .pi-accessory-flower_pin{left:56%;top:28%}
.pi-game[data-time-phase="night"] .pi-pet-wrap{transition:none}
@media(max-width:600px){.pi-game .pi-pet-bubble,:is(.pi-play-page .pi-game,.pi-game:fullscreen) .pi-pet-bubble{top:20%;max-width:82%;font-size:12px}}

@media(min-width:601px) and (max-width:959px){
 .pi-game .pi-pet-wrap,:is(.pi-play-page .pi-game,.pi-game:fullscreen) .pi-pet-wrap{left:var(--buddy-tablet-x,60%);width:28%}
 .pi-game .pi-pet-bubble,:is(.pi-play-page .pi-game,.pi-game:fullscreen) .pi-pet-bubble{left:22%;top:31%;max-width:34%;font-size:12px}
 .pi-game .pi-pet-bubble::after{left:auto;right:-5px;top:calc(50% - 4px)}
}
