*{box-sizing:border-box}html,body{margin:0;width:100%;height:100%;overflow:hidden;color:#493c31;background:#ebe5d8;font-family:Arial,sans-serif}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;cursor:pointer}button:disabled{cursor:default;opacity:.55}a{color:inherit}button:focus-visible,a:focus-visible{outline:3px solid #b38e4e;outline-offset:3px}[hidden]{display:none!important}#mall-scene{position:absolute;inset:0}#mall-scene canvas{display:block;width:100%;height:100%;touch-action:none;outline:0}.mall-header{position:absolute;top:0;left:0;right:0;display:flex;justify-content:space-between;align-items:center;gap:20px;padding:20px 28px;background:linear-gradient(#f9f6eff5,#f9f6efc9,transparent);pointer-events:none}.mall-header>*{pointer-events:auto}.mall-header a,.mall-header button,.mall-actions button,.floor-nav button{border:1px solid #d7cdb7;border-radius:24px;background:#fffcf1ee;padding:11px 16px;text-decoration:none;color:#493c31}.mall-header span,.eyebrow{font-size:10px;letter-spacing:2px}.mall-header h1{font:38px Georgia,serif;margin:4px 0 0}.mall-header div{text-align:center}.mall-intro{position:absolute;left:5%;top:25%;width:350px;padding:28px;background:#fffaf0ef;border:1px solid #e4d9c4;border-radius:24px;box-shadow:0 15px 60px #63533813}.mall-intro h2{font:48px/1.05 Georgia,serif;letter-spacing:-1px;margin:18px 0}.mall-intro p{font-size:14px;line-height:1.65;color:#8b7865}.primary{background:#493c31!important;color:#fff9e9!important;border:0!important;border-radius:20px;padding:14px 20px}.mall-intro small{display:block;font-size:10px;line-height:1.5;color:#7b806f;margin-top:18px}.floor-nav{position:absolute;top:120px;left:25px;padding:14px;display:flex;gap:12px;align-items:center;background:#fffaf0ed;border:1px solid #d7cdb7;border-radius:18px}.floor-nav>span{font-size:9px;letter-spacing:2px}.floor-nav #floor-buttons{display:flex;gap:5px}.floor-nav #floor-buttons button{padding:9px 12px;border-radius:10px}.floor-nav button[aria-pressed=true]{background:#493c31;color:#fff9e9}.floor-nav #mall-outside{font-size:11px}.mall-actions{position:absolute;bottom:27px;left:50%;transform:translateX(-50%);display:flex;align-items:center;gap:8px;white-space:nowrap}.mall-actions button{font-size:12px}.mall-help{position:absolute;bottom:77px;left:50%;transform:translateX(-50%);font-size:10px;white-space:nowrap;background:#fff9ecd9;border-radius:15px;padding:7px 12px;pointer-events:none}.mall-crosshair{position:absolute;left:50%;top:50%;font-size:25px;color:white;text-shadow:0 0 3px #493c31;pointer-events:none}.mall-toast{position:absolute;left:50%;bottom:115px;transform:translateX(-50%);max-width:min(600px,90%);padding:10px 17px;border-radius:14px;background:#fffaf1;font-size:13px;display:none}.mall-toast:not(:empty){display:block}.mall-directory{position:absolute;top:200px;bottom:112px;right:24px;width:310px;border:1px solid #d7cdb7;background:#fffaf1f5;border-radius:20px;padding:18px;overflow:auto;box-shadow:0 10px 35px #493c3120}.mall-directory>div:first-child{display:flex;justify-content:space-between;align-items:center}.mall-directory h2{font:24px Georgia;margin:0}.mall-directory p{font-size:11px;line-height:1.5;color:#8b7865}.mall-directory button{border:0;border-radius:12px;padding:8px;color:#493c31;background:#f0ebdf}.unit-row{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:13px 0;border-bottom:1px solid #e1dbc9}.unit-row b{font-size:14px}.unit-row small{display:block;font-size:11px;margin-top:5px;color:#8b7865}.unit-row button{font-size:11px;white-space:nowrap}dialog{width:min(700px,calc(100% - 28px));border:1px solid #d6c8ad;border-radius:25px;padding:30px;background:#fffaf1;color:#493c31;max-height:85dvh;overflow:auto;box-shadow:0 30px 100px #182d3a4d}dialog::backdrop{background:#493c31a3;backdrop-filter:blur(5px)}dialog h2{font:34px Georgia;margin:14px 0}dialog p{font-size:14px;line-height:1.6}dialog .dialog-close{position:absolute;right:14px;top:12px;width:32px;height:32px;border-radius:50%;border:1px solid #d7cdb7;background:none;color:#493c31;font-size:24px}.unit-plans{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:24px 0}.unit-plan{border:1px solid #dcd3bf;border-radius:18px;padding:18px 13px;background:#f8f3e7}.unit-plan strong{display:block;font:29px Georgia;margin:10px 0}.unit-plan span{font-size:12px}.unit-plan button{font-size:12px;padding:11px 16px;width:100%;margin-top:15px}.unit-terms{font-size:11px!important;color:#8b7865;border-top:1px solid #ddd5c3;padding-top:16px}#unit-extra a,#unit-extra button{display:inline-block;border:1px solid #d7cdb7;border-radius:14px;padding:11px 16px;background:#f5f0e4;text-decoration:none;color:#493c31;margin-right:8px}#mall-joystick{display:none;position:absolute;left:24px;bottom:88px;width:88px;height:88px;border:1px solid #d2c29d;background:#fffaf06b;border-radius:50%;touch-action:none}#mall-joystick span{position:absolute;left:23px;top:23px;width:40px;height:40px;background:#6b533ba8;border:1px solid #eee5d3;border-radius:50%;pointer-events:none}
@media(max-width:700px){#mall-look{display:none}.mall-actions{width:max-content;max-width:calc(100% - 16px)}}
@media(pointer:coarse){#mall-joystick{display:block}#mall-look{display:none}.mall-help{display:none}}@media(max-width:700px){.mall-header{padding:14px;gap:8px}.mall-header span{font-size:7px;letter-spacing:1px}.mall-header h1{font-size:27px}.mall-header a,.mall-header button{font-size:10px;padding:9px 10px}.mall-intro{left:18px;top:auto;bottom:120px;width:280px;padding:20px}.mall-intro h2{font-size:37px}.mall-intro p{font-size:12px}.floor-nav{top:90px;left:12px;right:12px;justify-content:center;padding:9px;gap:6px}.floor-nav>span{display:none}.floor-nav #floor-buttons button{padding:8px 10px}.floor-nav #mall-outside{font-size:9px;padding:8px}.mall-actions{bottom:22px;max-width:96%;gap:5px}.mall-actions button{font-size:10px;padding:11px 12px}.mall-directory{left:14px;right:14px;top:150px;bottom:95px;width:auto}.unit-plans{gap:6px}.unit-plan{padding:12px 8px}.unit-plan strong{font-size:23px}.unit-plan button{padding:10px 4px;font-size:11px}.unit-plan span{font-size:10px}dialog{padding:25px 17px}dialog h2{font-size:28px}.mall-toast{bottom:185px}}@media(orientation:landscape) and (max-height:550px){.mall-header{padding:8px 15px}.mall-header h1{font-size:23px}.floor-nav{top:69px;left:12px;right:auto}.mall-intro{top:90px;bottom:auto;padding:15px;width:270px}.mall-intro h2{font-size:28px;margin:10px 0}.mall-intro p{font-size:11px;line-height:1.3}.mall-intro small{margin-top:9px}.mall-actions{bottom:12px}.mall-directory{top:119px;bottom:65px;left:auto;right:14px;width:285px}.mall-help{display:none}}

.mall-presence{position:absolute;right:26px;top:100px;font-size:10px;background:#fff9ecd9;border-radius:15px;padding:7px 11px;pointer-events:none}.mall-presence:empty{display:none}@media(max-width:700px){.mall-presence{right:14px;top:134px;font-size:9px}}@media(orientation:landscape) and (max-height:550px){.mall-presence{top:72px;right:14px}}

.mall-directory{width:355px;top:190px;bottom:95px}.rental-floors{display:flex;gap:7px}.rental-floors button{padding:9px 13px}.rental-floors [aria-pressed=true]{background:#493c31;color:#fff9eb}#rental-price{font-size:18px;color:#493c31;font-weight:600}.unit-search-label{display:block;font-size:11px;color:#8b7865}.unit-search-label input{display:block;width:100%;padding:11px 12px;border:1px solid #d5cbb5;border-radius:12px;background:#fffefa;color:#493c31;margin-top:7px;font:14px Arial}.rental-offer{display:flex;flex-direction:column;gap:13px;background:#f1eddf;border:1px solid #ddd0b9;border-radius:18px;padding:24px;margin:20px 0}.rental-offer strong{font:40px Georgia}.rental-offer span{font-size:12px;color:#8b7865}.lift-options{display:grid;grid-template-columns:repeat(3,1fr);gap:9px}.lift-options button{border:1px solid #d6cbb5;border-radius:14px;padding:15px 10px;background:#f4efdf;color:#493c31}.unit-row{padding:10px 0}.mall-help{font-size:9px}@media(max-width:700px){.mall-directory{width:auto;left:12px;right:12px;top:150px;bottom:85px}.rental-offer{padding:20px}.rental-offer strong{font-size:34px}.mall-help{display:none}.floor-nav #mall-outside{max-width:112px}.rental-floors{justify-content:space-between}}@media(orientation:landscape) and (max-height:550px){.mall-directory{top:118px;left:auto;width:340px;bottom:63px}.mall-intro{width:260px}.rental-offer{padding:15px;margin:10px 0}.rental-offer strong{font-size:30px}}
.mall-directory>div:first-child{position:sticky;top:0;background:#fffaf1;padding-bottom:8px;z-index:1}@media(orientation:landscape) and (max-height:550px){.mall-directory{top:65px;bottom:58px}.mall-directory>p:first-of-type{display:none}}
.game-choose{display:flex;gap:8px}.game-choose button{border:1px solid #d7cdb7;padding:8px 16px;border-radius:12px;background:#f1ecdf;color:#493c31}.game-choose [aria-pressed=true]{background:#493c31;color:#fff9e9}
.mall-extra-actions{position:absolute;right:24px;bottom:85px;display:flex;flex-direction:column;gap:7px;background:#fffaf1f5;padding:12px;border:1px solid #d7cdb7;border-radius:18px;z-index:3}.mall-extra-actions button,.social-nearby button,.social-offer-buttons button{border:1px solid #d7cdb7;background:#f7f1e4;color:#493c31;border-radius:12px;padding:11px 14px}.mall-actions button[aria-pressed=true],.mall-extra-actions button[aria-pressed=true]{background:#bcae98}.unit-faq{margin-top:22px}.unit-faq details{border-top:1px solid #ded6c6;padding:12px 0}.unit-faq summary{cursor:pointer;font-size:14px}.unit-faq p{font-size:13px;color:#8b7865}.mall-game-dialog{width:min(530px,calc(100% - 24px))}.game-score{font-size:13px;color:#8b7865;margin:14px 0}.game-board{margin:20px auto}.memory-board{display:grid;grid-template-columns:repeat(2,1fr);gap:13px;max-width:290px}.memory-board button{height:105px;border:3px solid #6b533b;border-radius:22px;background:#6b533b;color:#f0e8da;font-size:40px;transition:background .12s,transform .12s}.memory-board button:nth-child(2){border-color:#cba972;background:#806342}.memory-board button:nth-child(3){border-color:#95b1c8;background:#455e71}.memory-board button:nth-child(4){border-color:#cfa4b0;background:#774f63}.memory-board button.is-lit{background:#fff6d2;color:#493c31;transform:scale(.95);box-shadow:0 0 30px #e7d39b80}.reaction-pad{width:100%;min-height:155px;border:0;border-radius:22px;background:#80523f;color:#fff7e7;font:22px Georgia}.reaction-pad.ready{background:#6b533b;box-shadow:0 0 25px #8b786560}.game-start{width:100%}.game-status{min-height:23px}.social-nearby{margin:16px 0}.social-nearby p{font-size:12px;color:#8b7865}.social-nearby button{margin:4px}.social-messages{max-height:220px;min-height:90px;overflow-y:auto;background:#f0ecdf;border-radius:16px;padding:12px;overflow-wrap:anywhere}.social-messages p{margin:8px 0;font-size:13px}.social-form{display:flex;gap:8px;margin-top:15px}.social-form input{min-width:0;flex:1;padding:12px;border:1px solid #d8cdb9;border-radius:14px;background:#fffdf5;font:14px Arial}.social-offer-buttons{display:flex;gap:8px}
@media(max-width:700px){.mall-actions{display:grid;grid-template-columns:repeat(5,1fr);width:calc(100% - 24px);max-width:390px;bottom:max(10px,env(safe-area-inset-bottom));gap:5px}.mall-actions #directory-open{display:none}.mall-actions #mall-interact{grid-column:1/-1;grid-row:1;padding:10px}.mall-actions button{padding:10px 6px;min-height:38px;font-size:10px}.mall-actions #mall-jump span{display:none}#mall-joystick{bottom:119px;width:80px;height:80px}.mall-extra-actions{right:12px;bottom:110px}.mall-directory{bottom:106px}.mall-toast{bottom:205px;font-size:12px}.social-form{flex-wrap:wrap}.social-form input{flex-basis:100%}.social-form button{width:100%}.memory-board button{height:90px}}
@media(orientation:landscape) and (max-height:550px){.mall-actions{display:flex;width:max-content;max-width:calc(100% - 140px);bottom:8px;gap:4px}.mall-actions #directory-open{display:none}.mall-actions button{font-size:10px;padding:9px;min-height:36px}.mall-actions #mall-interact{max-width:185px;overflow:hidden;text-overflow:ellipsis}.mall-header span{display:none}.mall-header a,.mall-header button{padding:7px 10px}.floor-nav{top:54px;padding:6px}.mall-presence{top:48px}.mall-extra-actions{bottom:52px}.mall-toast{bottom:60px}#mall-joystick{bottom:50px;left:14px;width:76px;height:76px}.mall-game-dialog{width:min(530px,calc(100% - 24px))}.memory-board{max-width:220px;gap:8px}.memory-board button{height:57px}.game-board{margin:12px auto}.mall-game-dialog h2{font-size:25px;margin:7px 0}.game-note{font-size:12px}.reaction-pad{min-height:90px}}

.mall-switcher{position:absolute;right:18px;top:86px;z-index:9}.mall-switcher>button{background:#fffdf4;color:#493c31;padding:8px 13px;border:1px solid #c9cdbf;border-radius:12px;cursor:pointer}.mall-switcher>div{position:absolute;right:0;top:44px;width:220px;max-height:65dvh;overflow:auto;box-sizing:border-box;padding:9px;background:#fffdf4;box-shadow:0 8px 30px #493c3130;border:1px solid #c9cdbf;border-radius:15px}.mall-switcher a{display:block;padding:10px;color:#493c31;text-decoration:none;border-radius:8px}.mall-switcher a[aria-current=page]{background:#e2e9da;font-weight:600}.mall-header h1{color:var(--mall-accent,#493c31)}
@media(max-width:760px){.mall-switcher{right:10px;top:75px}.mall-switcher>button{font-size:11px;padding:6px 9px}.mall-switcher>div{max-height:55dvh}.mall-header h1{font-size:20px}}
@media(max-height:500px){.mall-switcher{top:64px}.mall-switcher>div{max-height:58dvh}}
.mall-presence{top:126px}@media(max-width:700px){.mall-presence{top:150px}}@media(orientation:landscape) and (max-height:550px){.mall-switcher{top:94px}.mall-presence{top:48px}}

#mall-switch-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}#mall-switch-list a{padding:13px 10px;border:1px solid #d4dccb;border-radius:12px;text-decoration:none;font-size:14px}#mall-switch-list a[aria-current=page]{background:#e2e9da;font-weight:600}

.store-directory{width:min(880px,calc(100% - 24px));padding:30px;max-height:90dvh;overscroll-behavior:contain}.store-directory h2{margin-bottom:8px}.store-directory .directory-intro{margin:0 0 18px;color:#6b533b}.directory-search-label{display:block;font-size:13px;font-weight:600}.directory-search-label input{display:block;width:100%;min-width:0;margin-top:8px;padding:14px;border:1px solid #bcae98;border-radius:13px;background:#fffdf7;color:#493c31;font:16px Arial}.directory-floors{display:flex;gap:6px;flex-wrap:wrap;margin-top:14px}.directory-floors button{border:1px solid #bec7b3;border-radius:10px;background:#f2ecdc;color:#493c31;padding:10px 12px}.directory-floors [aria-pressed=true]{background:#493c31;color:#fff9e9}.store-directory .directory-location,.store-directory .directory-status{font-size:12px;line-height:1.45;color:#6b533b;margin:12px 0}.directory-results{display:flex;flex-direction:column;gap:8px;max-height:46dvh;overflow:auto;overscroll-behavior:contain;padding:3px}.directory-result{display:grid;grid-template-columns:58px minmax(0,1fr) auto;align-items:center;gap:12px;padding:14px;border:1px solid #ddd2bb;border-radius:14px;background:#fffdf5}.directory-unit-number{padding:10px 4px;text-align:center;border-radius:10px;background:#e5ebdc;color:#493c31;font-weight:bold;font-size:15px}.directory-result b{display:block;font-size:16px;color:#493c31;overflow-wrap:anywhere}.directory-result small{display:block;font-size:12px;line-height:1.5;color:#6b533b;margin-top:5px}.directory-result button{border:1px solid #bcae98;border-radius:12px;padding:12px;background:#edf0e2;color:#493c31;font-size:13px;min-height:44px}.store-directory button:focus-visible,.store-directory input:focus-visible{outline:3px solid #b38e4e;outline-offset:2px}
@media(max-width:600px){.store-directory{padding:22px 16px}.store-directory h2{font-size:28px}.directory-result{grid-template-columns:48px minmax(0,1fr);gap:10px;padding:12px}.directory-result button{grid-column:2;justify-self:start}.directory-result b{font-size:15px}.directory-floors button{padding:10px}.directory-results{max-height:44dvh}}
@media(orientation:landscape) and (max-height:550px){.store-directory{padding:18px 22px;max-height:94dvh}.store-directory h2{font-size:25px;margin:8px 0}.store-directory .directory-intro{display:none}.directory-search-label input{padding:10px}.directory-floors{margin-top:9px}.directory-results{max-height:38dvh}}
