*{box-sizing:border-box}html,body{margin:0;width:100%;height:100%;overflow:hidden;font-family:system-ui,-apple-system,"Apple SD Gothic Neo","Malgun Gothic",sans-serif;background:#171c27;color:#f8f5eb}button,a{font:inherit}button{cursor:pointer}#player,#scene{position:relative;width:100%;height:100%;min-height:400px}#scene canvas{display:block;width:100%;height:100%;touch-action:none}.topbar{position:absolute;inset:20px 24px auto;display:flex;justify-content:space-between;gap:12px;pointer-events:none}.topbar>*{pointer-events:auto}.glass,.actions,.panel,.menu,.action-status{background:rgba(18,25,31,.65);border:1px solid rgba(255,255,255,.22);box-shadow:0 8px 30px rgba(0,0,0,.2);backdrop-filter:blur(14px);color:#f8f5eb}.glass{padding:12px 17px;border-radius:50px}.glass:hover,.actions button:hover,.actions a:hover,.menu button:hover{background:rgba(255,255,255,.16)}#roomButton{display:flex;gap:12px;align-items:center}#roomName{font-size:.86rem;opacity:.76;border-left:1px solid #8f958f;padding-left:12px}.tools{display:flex;gap:8px}.room-wrap{position:relative}.menu{position:absolute;top:55px;left:0;min-width:210px;padding:16px;border-radius:18px}.menu strong{display:block;font-size:.85rem;color:#d9c6a0;margin:0 0 8px}.menu button{display:block;width:100%;border:0;color:inherit;background:transparent;text-align:left;padding:10px;border-radius:9px}.scene-status{position:absolute;top:15%;left:50%;transform:translateX(-50%);text-align:center;text-shadow:0 2px 9px #000;width:min(90vw,650px);pointer-events:none}.scene-status p{margin:5px 0;font-size:.84rem}#networkStatus{color:#dfd9c6}.actions{position:absolute;left:50%;bottom:22px;transform:translateX(-50%);display:flex;padding:7px;border-radius:24px;gap:3px;white-space:nowrap}.actions button,.actions a{color:inherit;text-decoration:none;border:0;background:none;border-radius:17px;padding:10px 18px;display:flex;flex-direction:column;align-items:center;gap:2px;font-size:.78rem}.actions span{font-size:1.4rem}.actions button[aria-pressed=true]{background:rgba(233,207,151,.24)}.panel{position:absolute;right:25px;top:83px;border-radius:20px;width:min(340px,calc(100vw - 40px));padding:25px;line-height:1.6}.panel h2{font-size:1.2rem;margin:0 0 14px}.panel p{font-size:.85rem}.panel label{display:block;margin:18px 0;font-size:.92rem}.panel input{accent-color:#e0c58f}.fine{opacity:.68}.close{position:absolute;right:16px;top:10px;border:0;background:none;color:inherit;font-size:1.7rem}.action-status{position:absolute;top:27%;left:50%;transform:translateX(-50%);padding:13px 20px;border-radius:30px;font-size:.9rem}.meditation{position:absolute;inset:0;background:radial-gradient(ellipse at center,#283545,#101923);z-index:5;overflow:auto;text-align:center}.back{position:absolute;top:25px;left:25px;background:rgba(255,255,255,.1);border:1px solid #687886;color:#fff;padding:11px 16px;border-radius:30px}.meditation-body{min-height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:78px 24px 45px}.eyebrow{letter-spacing:.2em;color:#e1c890;font-size:.75rem}.meditation h2{font-size:clamp(1.7rem,4vw,2.5rem);margin:4px 0 20px}.verse{font-family:Georgia,serif;font-size:clamp(1.3rem,3vw,2rem);line-height:1.55;max-width:690px}.verse small{display:block;font-family:system-ui;font-size:.72rem;color:#c8bda7;margin-top:10px}.beads{display:flex;gap:10px;margin:40px 0 25px;flex-wrap:wrap;justify-content:center}.beads i{width:18px;height:18px;border-radius:50%;background:#6d7880;border:1px solid #a8afb0;box-shadow:inset -3px -3px 5px #34414b}.beads i.done{background:#e8cb91;box-shadow:0 0 14px #e8cb91}.meditation strong{font-size:2rem;color:#ead4a8}.meditation p:not(.eyebrow){font-size:.85rem;color:#d0d5d7}.next{border:1px solid #e9d6ae;background:#d8bc87;color:#1b2930;border-radius:25px;padding:13px 28px;margin-top:12px;font-weight:700}.next:hover{background:#f1d6a2}[hidden]{display:none!important}@media(max-width:600px){.topbar{inset:12px 12px auto}.glass{padding:10px}.mobile-hide{display:none}#roomButton{font-size:.8rem;gap:6px}#roomName{font-size:.72rem;padding-left:7px}.tools{gap:4px}.scene-status{top:14%;}.scene-status p{font-size:.7rem}.actions{bottom:12px}.actions button,.actions a{padding:8px 10px;font-size:.65rem}.actions span{font-size:1.25rem}.panel{right:12px;top:64px}}
