*{box-sizing:border-box}body{margin:0;background:#ece7dc;color:#24352e;font:16px/1.5 Arial,sans-serif}header{height:70px;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:12px 28px;background:#15251e;color:#f3eee0}header a{color:#e5dabd;font-size:14px}small{font-weight:normal;color:#c2c7b8;margin-left:12px}main{height:calc(100dvh - 70px);position:relative;overflow:hidden}#expo-scene{position:absolute;inset:0}canvas{display:block;touch-action:none}#expo-loading{position:absolute;inset:0;z-index:10;background:#15251ef5;color:#f3eee0;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:28px;text-align:center}#expo-loading[hidden]{display:none}progress{width:min(440px,80vw);height:15px;accent-color:#d8b76e}h1{font-size:clamp(28px,4vw,48px);font-weight:500}#shop-info{position:absolute;left:25px;bottom:95px;width:330px;max-width:calc(100% - 150px);background:#f9f5e9ee;border:1px solid #fff8;border-radius:16px;padding:20px;pointer-events:auto}#shop-info span{font-size:11px;letter-spacing:2px}h2{font-size:22px;margin:8px 0}#shop-info p{font-size:14px;margin:0 0 10px}#shop-link{color:#195d43;font-weight:bold}.toolbar{position:absolute;bottom:0;left:0;right:0;padding:14px 25px;background:#15251ef2;color:white;display:flex;align-items:center;gap:12px;flex-wrap:wrap}.toolbar span{font-size:12px;color:#ccd2c5}button,select{font:inherit;padding:10px 14px;border-radius:8px;border:1px solid #bbbcaa;background:#f9f5e9;color:#24352e;cursor:pointer;min-height:44px}.toolbar label{font-size:12px}.movement{position:absolute;right:20px;bottom:110px;text-align:center}.movement button{min-width:45px;margin:2px;touch-action:none}a:focus-visible,button:focus-visible,select:focus-visible{outline:3px solid #d4a743;outline-offset:3px}@media(max-width:650px){header{padding:10px;height:85px;font-size:12px;gap:10px}header a{font-size:12px}main{height:calc(100dvh - 85px)}small{display:block;margin:0}.toolbar{padding:8px;gap:6px}.toolbar span{display:none}.toolbar button{font-size:12px}#shop-info{bottom:145px;left:10px;padding:12px;max-width:calc(100% - 120px)}#shop-info p{max-height:90px;overflow:auto}.movement{right:5px;bottom:150px}}

.texture-status{position:absolute;top:12px;left:16px;padding:7px 12px;background:#15251edd;color:#f3eee0;border-radius:8px;font-size:12px;pointer-events:none}
