@font-face{font-family:Pretendard;src:url('/assets/Pretendard.woff2') format('woff2');font-display:swap;font-weight:100 900}
:root{font-family:Pretendard,-apple-system,BlinkMacSystemFont,sans-serif;color:#f2ecdd;background:#241f19;--gold:#d6bd7a;--glass:rgba(28,29,25,.78);color-scheme:dark}
*{box-sizing:border-box}body{margin:0;overflow:hidden;overscroll-behavior:none}button,input{font:inherit}button{color:inherit;cursor:pointer;-webkit-tap-highlight-color:transparent}button:focus-visible,input:focus-visible,summary:focus-visible{outline:2px solid var(--gold);outline-offset:5px}button:disabled{opacity:.45;cursor:wait}[hidden]{display:none!important}#temple,#scene{position:fixed;inset:0;width:100%;height:100%;height:100dvh}#scene{display:block;touch-action:none}svg{fill:none;stroke:currentColor;stroke-width:1.4;stroke-linecap:round;stroke-linejoin:round}button{border:0;background:none}.pill{border:1px solid rgba(233,226,206,.23);border-radius:100px;background:var(--glass);backdrop-filter:blur(18px);box-shadow:0 4px 20px #0002}.topbar{position:fixed;top:max(20px,env(safe-area-inset-top));left:24px;right:24px;display:flex;justify-content:space-between;align-items:center;z-index:2}.brand{display:flex;align-items:center;gap:12px;padding:13px 23px;color:var(--gold)}.brand svg{width:25px;height:25px}.brand span{font-size:19px;font-weight:600}.brand small{font-size:11px;display:block;color:#c4beac;letter-spacing:.15em;margin-top:3px}.top-actions{display:flex;align-items:center;gap:9px}.top-actions button{display:flex;align-items:center;justify-content:center;gap:10px;padding:14px 17px;height:54px;min-width:54px}.top-actions svg{width:22px;height:22px}.top-actions .icon-only{padding:14px}.top-actions button[aria-pressed=true]{color:var(--gold);background:#3b382adf}#count{font-variant-numeric:tabular-nums;font-size:14px}.status{position:fixed;top:105px;left:50%;transform:translateX(-50%);border-radius:50px;padding:9px 18px;background:#302e27c9;font-size:12px;white-space:nowrap;color:#ded4ba;z-index:3}.status.connected{opacity:0;pointer-events:none;transition:opacity 1s 2s}.toast{position:fixed;top:155px;left:50%;transform:translateX(-50%);background:#292b23e8;padding:12px 22px;border:1px solid #ffffff1f;border-radius:30px;white-space:nowrap;font-size:14px;z-index:8}.actions{position:fixed;bottom:max(32px,calc(env(safe-area-inset-bottom) + 16px));left:50%;transform:translateX(-50%);display:flex;padding:12px 24px;gap:20px;z-index:4}.actions button{min-width:66px;min-height:61px;display:flex;flex-direction:column;align-items:center;gap:7px;opacity:.78;transition:color .2s,transform .2s}.actions button svg{width:30px;height:30px}.actions button span{font-size:13px}.actions button:hover,.actions button.active{color:var(--gold);opacity:1}.actions button:active{transform:scale(.94)}.hint{position:fixed;bottom:134px;left:50%;transform:translateX(-50%);font-size:11px;color:#f1e9d4ac;white-space:nowrap;text-shadow:0 1px 5px #000}.panel{background:rgba(26,29,24,.94);backdrop-filter:blur(20px);border:1px solid #c1bcab40;border-radius:22px;box-shadow:0 20px 80px #0006}.people{position:fixed;top:90px;right:24px;z-index:6;padding:20px 24px;width:230px}.people h2{font-size:14px;font-weight:500;color:var(--gold);margin:0 0 16px}.people ul{list-style:none;padding:0;margin:0;display:grid;gap:12px}.people li{display:flex;align-items:center;gap:10px;font-size:14px}.people li::before{content:'';width:7px;height:7px;border-radius:50%;background:#b5c394}.people li small{margin-left:auto;color:#aaa58e}.bead-panel{position:fixed;z-index:7;width:310px;left:50%;bottom:145px;transform:translateX(-50%);text-align:center;padding:20px 20px 15px}.bead-panel p{font-size:12px;color:#c1b89e;line-height:1.6}.close{position:absolute;right:12px;top:8px;font-size:25px;color:#b4ad9a;width:40px;height:40px}#bead-ring{position:relative;width:250px;height:250px;padding:0;touch-action:none}#bead-svg{width:100%;height:100%;fill:#8c6942;stroke:#c6a571;stroke-width:.6}.bead-counter{position:absolute;inset:0;display:flex;justify-content:center;align-items:center;gap:7px;pointer-events:none}.bead-counter strong{font-size:43px;font-weight:300;color:#e4cc94}.bead-counter small{font-size:13px;color:#b0a690}.joystick{position:fixed;left:24px;bottom:150px;width:96px;height:96px;border-radius:50%;border:1px solid #fff4;background:#272a2255;touch-action:none;z-index:5}.joystick span{position:absolute;width:42px;height:42px;border-radius:50%;left:26px;top:26px;background:#e4d8b54f;border:1px solid #eee2c366;pointer-events:none}.audio-credit{position:fixed;right:20px;bottom:18px;z-index:6;color:#c4bfae;font-size:10px;text-shadow:0 1px 4px #000}.audio-credit summary{cursor:pointer;list-style:none}.audio-credit p{position:absolute;right:0;bottom:18px;width:280px;background:#25281ff5;padding:16px;border-radius:12px;line-height:1.7}.audio-credit a{color:#e6cf95}@media(max-width:700px){.topbar{left:14px;right:14px;top:max(14px,env(safe-area-inset-top))}.brand{padding:11px 15px;gap:8px}.brand span{font-size:16px}.brand small{font-size:10px}.top-actions{gap:6px}.top-actions button{height:47px;min-width:43px;padding:11px}.top-actions svg{width:19px;height:19px}.top-actions .icon-only{padding:11px}#count{font-size:12px}.actions{padding:12px 19px;gap:9px;bottom:max(24px,calc(env(safe-area-inset-bottom) + 12px))}.actions button{min-width:57px}.actions button span{font-size:12px}.hint{bottom:125px;font-size:10px}.bead-panel{bottom:135px;width:290px}.bead-panel p{margin:8px 0}#bead-ring{width:220px;height:220px}.joystick{left:16px;bottom:160px;width:88px;height:88px}.joystick span{left:22px;top:22px}.audio-credit{bottom:8px;right:12px;font-size:9px}.people{top:78px;right:14px}.status{top:90px}.toast{top:134px;max-width:90%;font-size:12px}}
#bead-svg circle.lit{fill:#d6b979;stroke:#f0d59a}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{transition:none!important;animation:none!important}}

.joystick{display:none}@media (pointer:coarse),(max-width:700px){.joystick{display:block}}

#hello{touch-action:none;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none}

.speech-layer{position:fixed;inset:0;pointer-events:none;z-index:1;overflow:hidden}.speech{position:absolute;left:0;top:0;width:max-content;max-width:min(224px,calc(100vw - 32px));padding:11px 15px;background:#fff9ec;color:#3d352b;border:1px solid #dfd0b4;border-radius:18px;box-shadow:0 5px 18px #20180e30;font-size:14px;line-height:1.5;overflow-wrap:anywhere;will-change:transform}.speech::after{content:'';position:absolute;bottom:-7px;left:calc(50% - 7px);width:12px;height:12px;background:#fff9ec;border-right:1px solid #dfd0b4;border-bottom:1px solid #dfd0b4;transform:rotate(45deg)}.speech strong{display:block;font-size:11px;font-weight:500;color:#7b6e57;margin-bottom:3px}.chat-form{position:fixed;left:50%;bottom:calc(var(--keyboard-offset,0px) + max(24px,env(safe-area-inset-bottom)));transform:translateX(-50%);z-index:7;display:flex;align-items:center;gap:8px;width:min(440px,calc(100% - 28px));padding:9px 10px 9px 18px;border:1px solid #dfd0b4;border-radius:25px;background:#fff9ec;color:#3d352b;box-shadow:0 6px 24px #20180e35}.chat-form input{min-width:0;flex:1;width:100%;height:44px;background:transparent;border:0;color:inherit;font-size:16px;outline-offset:0}.chat-form input::placeholder{color:#8b806e}.chat-form button{flex-shrink:0;min-height:44px;padding:0 16px;border-radius:18px;background:#534d3e;color:#fff4da;font-size:14px}.top-actions button.active{color:var(--gold);background:#3b382adf}

#retry-entry{position:fixed;top:170px;left:50%;transform:translateX(-50%);z-index:8;padding:12px 22px;font-size:14px}.status{max-width:calc(100% - 36px);width:max-content;white-space:normal;text-align:center;line-height:1.6}
