#world{position:absolute;inset:0;transition:transform 1s cubic-bezier(.2,.7,.2,1);pointer-events:none}/* Centred with margins, not transforms: the bench, store, added assets and every avatar share one stacking order. */
#store-building{--stage-w:min(60vw,var(--stage-max,90vh));position:absolute;left:calc(50% - 63vw);top:51%;width:var(--stage-w);margin:calc(var(--stage-w) / -3) 0 0 calc(var(--stage-w) / -2);pointer-events:none}#store-building>img{width:100%;display:block;transition:opacity .8s}.store-night{position:absolute;inset:0;opacity:0}[data-time=night] .store-day{opacity:0}[data-time=night] .store-night{opacity:1}.store-sign{position:absolute;left:36%;top:25%;width:28%;aspect-ratio:3.5}.store-sign>img{position:absolute;inset:0;width:100%;height:100%}.sign-night{opacity:0}[data-time=night] .sign-day{opacity:0}[data-time=night] .sign-night{opacity:1}.store-sign span{position:absolute;inset:12% 2% 4%;display:grid;place-items:center;color:#f9e7c5;font:600 clamp(8px,1.1vw,17px) Georgia;text-shadow:0 1px 2px #34251b;white-space:nowrap}[data-time=night] .store-sign span{color:#c4c6bf;text-shadow:0 1px 2px #101c29}.at-store #world{transform:translateX(calc(63vw - 185px))}.at-store #current{visibility:hidden;pointer-events:none}
#store-toggle{top:22px;left:22px;right:auto;bottom:auto;z-index:5;width:44px;height:44px;opacity:1;background:var(--glass);color:var(--glass-ink);border:1px solid var(--glass-line);box-shadow:var(--glass-shadow)}.joined #store-toggle{left:76px}
#store-panel,#activity-panel{position:fixed;z-index:8;inset:12px 12px 12px auto;width:min(370px,calc(100% - 24px));height:calc(100svh - 24px);max-height:none;max-width:none;margin:0;padding:24px;overflow:auto;border:1px solid var(--glass-line);border-radius:22px;background:var(--glass);color:var(--glass-ink);backdrop-filter:blur(24px);box-shadow:var(--glass-shadow);font:13px/1.5 'Alegreya Sans',system-ui,sans-serif}#activity-panel{inset:12px auto 12px 12px;width:min(480px,calc(100% - 24px))}#activity-panel::backdrop{background:#0b1b2010;backdrop-filter:blur(2px)}#store-panel header,#activity-panel header{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}#store-panel h1,#activity-panel h1{font:400 26px Georgia;margin:0}#store-panel h2,#activity-panel h2{font:400 20px Georgia}#store-panel header p,#activity-room{font-size:11px;opacity:.7;margin:7px 0 20px}#store-panel button,#activity-panel button{position:static;inset:auto;width:auto;height:auto;display:inline-grid;padding:8px 12px;border-radius:15px;border:1px solid var(--glass-line);background:var(--field-bg);color:inherit;opacity:1;font:12px 'Alegreya Sans',system-ui,sans-serif;backdrop-filter:none}#store-panel header button,#activity-panel header button{padding:0;width:28px;height:28px;border:0;background:transparent;font-size:23px}#store-panel button:disabled,#activity-panel button:disabled{opacity:.35;cursor:default}.store-demo,.local-caption{font-size:10px;opacity:.65}.wallet{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--glass-line);padding:10px 0 18px}.wallet strong{font:26px 'Alegreya Sans',system-ui,sans-serif}#store-products{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:18px}.product{border:1px solid var(--glass-line);background:var(--field-bg);border-radius:15px;padding:14px 10px;display:flex;flex-direction:column;align-items:center;gap:9px}.product-icon{font-size:28px}.product h2{font:14px Georgia!important;margin:0}.product small{font-size:11px;opacity:.7}.product button{width:100%!important}#store-inventory{font-size:12px;line-height:2}#purchase-status{font-size:12px;min-height:18px}.activity-controls{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0}#doodle-canvas{width:100%;aspect-ratio:1;background:#f5f0df;border:1px solid #89927b;border-radius:15px;touch-action:none;display:block}.color-choice{width:28px!important;height:28px!important;border-radius:50%!important;padding:0!important;background:var(--pen-color)!important}.color-choice[aria-pressed=true]{outline:2px solid var(--accent);outline-offset:2px}#activity-panel textarea{width:100%;padding:12px;border:1px solid var(--glass-line);border-radius:12px;background:var(--field-bg);color:inherit;font:13px 'Alegreya Sans',system-ui,sans-serif;resize:vertical}#activity-panel input[type=file]{font:11px 'Alegreya Sans',system-ui,sans-serif;width:100%;margin:12px 0}.memory{margin:16px 0;padding:15px;border:1px solid var(--glass-line);background:var(--field-bg);border-radius:15px}.memory p{white-space:pre-wrap;overflow-wrap:anywhere}.memory img{width:100%;max-height:240px;object-fit:contain;border-radius:9px}.memory small{font-size:10px;opacity:.65;display:block;margin:8px 0}.sungka-board{display:grid;grid-template-columns:36px repeat(7,1fr) 36px;grid-template-rows:55px 55px;gap:5px;border-radius:42px;padding:12px 8px;background:linear-gradient(120deg,#866140,#b08a5a,#725237);box-shadow:inset 0 2px 6px #38291c;margin:24px 0;color:#f7ead1}.sungka-board button{border-radius:50%!important;padding:0!important;background:#47372580!important;color:#fff4d6!important;box-shadow:inset 0 2px 5px #241b14;border:1px solid #bca17f!important;width:100%!important;font-size:14px!important}.sungka-home{display:grid;place-items:center;background:#3c30257d;border-radius:22px;grid-row:1 / 3;font:20px 'Alegreya Sans',system-ui,sans-serif;box-shadow:inset 0 2px 5px #241b14}.sungka-home:first-child{grid-column:1}.sungka-home:last-child{grid-column:9}.sungka-rules{font-size:11px;opacity:.8}.sungka-rules summary{cursor:pointer}.sungka-rules p{line-height:1.8}
@media(max-width:700px){.at-store #world{transform:translateX(63vw)}#store-panel{top:auto;height:46svh;width:calc(100% - 24px)}.at-store #store-building{top:30%}.at-store #store-building .store-sign span{font-size:8px}.product-icon{font-size:23px}#store-products{grid-template-columns:repeat(2,1fr)}}
#activity-panel form{display:block;margin:0}#store-panel{top:86px;height:calc(100svh - 98px)}
@media(max-width:700px){#store-panel{top:auto;height:46svh}}
#enter-store{position:absolute;inset:12% 4% 3%;width:92%;height:85%;padding:0;border:0;border-radius:0;background:transparent!important;backdrop-filter:none;opacity:1;pointer-events:auto;cursor:pointer;box-shadow:none}#enter-store:focus-visible{outline:2px dashed #e8d6a5;outline-offset:-12px}.cabinet-label{display:flex;justify-content:space-between;font:17px Georgia;margin-top:22px}.cabinet-label span{font:10px system-ui;opacity:.6;align-self:center}#store-panel{width:min(430px,calc(100% - 24px))}.at-store #world{transform:translateX(calc(63vw - 215px))}#store-products{grid-template-columns:repeat(4,minmax(0,1fr));gap:5px;padding:10px;margin-top:10px;border-radius:7px;border:2px solid #755537;background:linear-gradient(95deg,#9e7b50,#c19b69 42%,#89643e);box-shadow:3px 5px 0 #59442f80,inset 1px 2px 2px #ead5ad80;--cubby-top:#70563a;--cubby-back:#a48a65;--cubby-side:#826643;--cubby-floor:#ceb28a}.product{border:0;border-radius:1px;min-height:122px;padding:11px 3px 5px;gap:6px;justify-content:flex-end;position:relative;background:linear-gradient(160deg,var(--cubby-top),var(--cubby-back) 40%,var(--cubby-side));box-shadow:inset 5px 6px 8px #2c211f45,inset -2px 0 2px #e8d3a140,inset 0 -6px 0 var(--cubby-floor);color:#fff7e5}.product:before{content:"";position:absolute;inset:0;border-left:7px solid var(--cubby-side);border-top:9px solid #5a432238;border-right:1px solid #e6d5ad33;pointer-events:none}.product h2{font:11px/1.2 Georgia!important;text-align:center;min-height:25px;display:grid;place-items:center;z-index:1}.product small{font-size:9px;z-index:1;opacity:.9}.product-icon{font-size:25px;line-height:1.2;z-index:1;filter:drop-shadow(1px 3px 2px #382c2460)}#store-panel .product button{font-size:10px;padding:4px 8px;margin-bottom:5px;border-radius:5px;background:#f2e6cbbd;color:#3f3d30;z-index:1;border-color:#f4dfb654}.empty-cubby{min-height:122px}.empty-cubby span{font:italic 10px 'Alegreya Sans',system-ui,sans-serif;opacity:.4;margin-bottom:28px}[data-time=night] #store-products{background:linear-gradient(95deg,#484744,#66665b,#3c3f3e);border-color:#353c3d;--cubby-top:#252e36;--cubby-back:#454a48;--cubby-side:#333c40;--cubby-floor:#6b7066;box-shadow:3px 5px 0 #17232b80,inset 1px 2px 2px #8a9a9f40}[data-time=night] .product{color:#d6dad5}[data-time=night] .product-icon{filter:brightness(.65) saturate(.65) drop-shadow(1px 3px 2px #0c192960)}[data-time=night] #store-panel .product button{background:#c5cebf8c;color:#16292d}.store-demo{margin-top:20px}
@media(max-width:700px){.at-store #world{transform:translateX(63vw)}#store-panel{width:calc(100% - 24px)}.product,.empty-cubby{min-height:112px}.product h2{font-size:10px!important}}

/* Scrapbook photo input adapts from a quiet desktop drop zone to a thumb-friendly picker. */
.scrapbook-dropzone{display:flex;align-items:center;justify-content:center;min-height:58px;margin:12px 0;padding:14px 16px;border:1px dashed var(--glass-line);border-radius:14px;background:var(--field-bg);color:var(--glass-ink);font:12px 'Alegreya Sans',system-ui,sans-serif;text-align:center;cursor:pointer;transition:background .2s,border-color .2s,transform .2s}.scrapbook-dropzone:hover,.scrapbook-dropzone:focus-within,.scrapbook-dropzone.is-dragging{background:var(--glass);border-color:var(--accent)}.scrapbook-dropzone.is-dragging{transform:translateY(-1px)}.scrapbook-dropzone input[type=file]{width:auto;margin:0 0 0 8px;padding:0;border:0;background:transparent;color:inherit;font:inherit}.scrapbook-dropzone input[type=file]::file-selector-button{margin-right:8px;padding:7px 11px;border:1px solid var(--glass-line);border-radius:14px;background:var(--glass);color:var(--glass-ink);font:inherit;cursor:pointer}@media(min-width:701px){.scrapbook-dropzone{justify-content:space-between;text-align:left}}@media(max-width:700px){.scrapbook-dropzone{min-height:64px;flex-direction:column;gap:8px;padding:12px;font-size:13px}.scrapbook-dropzone input[type=file]{margin:0;width:100%;font-size:12px}.scrapbook-dropzone input[type=file]::file-selector-button{padding:9px 13px}}@media(pointer:coarse){.scrapbook-dropzone{min-height:72px}.scrapbook-dropzone input[type=file]::file-selector-button{min-height:44px;padding-inline:16px}}
#enter-store{pointer-events:none}.at-store #enter-store{pointer-events:auto}
/* Everyone can select or leave one of the five store places from this scene. */
.at-store #seat-actions,.at-store #join-tambay,.at-store #leave-inline,.at-store #current{visibility:visible;pointer-events:auto}
#store-panel{z-index:20}
@media(max-width:700px){#store-panel{inset:0;width:100%;height:100dvh;max-height:none;border-radius:0;padding-top:max(24px,env(safe-area-inset-top));padding-bottom:max(24px,env(safe-area-inset-bottom))}}
@media(max-width:700px){#store-panel{top:0;right:0;bottom:0;left:0;width:100%;height:100dvh;z-index:20}}
#store-panel{inset:auto;top:50%;left:50%;right:auto;bottom:auto;width:min(430px,calc(100% - 32px));height:auto;max-height:calc(100svh - 32px);transform:translate(-50%,-50%);overflow:auto;border-radius:22px;padding:24px;z-index:20}html:has(#store-panel:not([hidden]))::after{content:"";position:fixed;inset:0;z-index:19;background:#0b1b2038;backdrop-filter:blur(3px);pointer-events:none}
@media(max-width:700px){.at-store #store-building{top:51%}}

/* Scrapbook: "Snapshot this tambay" and its preview before saving. */
#activity-panel .snapshot-tambay{justify-self:start;margin:8px 0 4px}
#activity-panel .snapshot-preview{display:block;width:100%;margin:8px 0;border:1px solid var(--glass-line);border-radius:12px}
#activity-panel .snapshot-preview[hidden]{display:none}
.seated-person .person-art{transform-origin:50% 88%;animation:peep-breathe 5s ease-in-out infinite}.seated-person[data-motion="wave"] .person-art{animation:peep-wave 7s ease-in-out infinite}.seated-person[data-motion="sip"] .person-art{animation:peep-sip 9s ease-in-out infinite}.seated-person[data-motion="read"] .person-art{animation:peep-read 8s ease-in-out infinite}.seated-person[data-motion="stretch"] .person-art{animation:peep-stretch 10s ease-in-out infinite}@keyframes peep-breathe{0%,100%{transform:translateY(0)}50%{transform:translateY(-1.5%)}}@keyframes peep-wave{0%,72%,100%{transform:rotate(0)}78%{transform:rotate(-3deg) translateY(-1%)}84%{transform:rotate(3deg)}}@keyframes peep-sip{0%,68%,100%{transform:translateY(0)}76%{transform:translateY(-2%) rotate(-1deg)}84%{transform:translateY(0)}}@keyframes peep-read{0%,100%{transform:rotate(0)}50%{transform:rotate(1.5deg) translateY(1%)}}@keyframes peep-stretch{0%,70%,100%{transform:translateY(0)}80%{transform:translateY(-3%) scaleY(1.015)}90%{transform:translateY(0)}}@media (prefers-reduced-motion:reduce){.seated-person .person-art{animation:none!important}}
