:root{--ink:#f3efe6;--ink-dim:#c9c2b2;--panel:#18201cd1;--line:#f3efe629;--accent:#d9a441;--full:#8a8378;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}html,body{height:100%;color:var(--ink);-webkit-tap-highlight-color:transparent;touch-action:none;background:#1d2a24;margin:0;font-family:system-ui,-apple-system,Segoe UI,Noto Sans,Noto Sans Thai,Noto Sans KR,Noto Sans JP,sans-serif;overflow:hidden}#scene{width:100%;height:100%;display:block;position:fixed;inset:0}button{font:inherit;color:inherit;cursor:pointer}.panel{background:var(--panel);border:1px solid var(--line);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:18px;max-width:420px;max-height:calc(100% - 32px);margin:0 auto;padding:22px 18px;position:fixed;inset:50% 16px auto;overflow-y:auto;transform:translateY(-50%)}.panel h1{letter-spacing:.06em;margin:0;font-size:28px;font-weight:600}.sub{color:var(--ink-dim);margin:4px 0 16px;font-size:14px}.privacy-link{color:var(--ink-dim);display:block}.reminder{color:var(--ink-dim);align-items:center;gap:10px;margin-top:8px;padding:6px 0;font-size:14px;display:flex}.reminder[hidden]{display:none}.reminder input{width:20px;height:20px;accent-color:var(--accent)}.name{color:var(--ink-dim);align-items:center;gap:10px;margin-bottom:12px;font-size:14px;display:flex}.name input{border:1px solid var(--line);min-width:0;color:var(--ink);background:#00000040;border-radius:10px;flex:1;padding:10px 12px;font-size:16px}.primary{background:var(--accent);color:#1d1a12;border:0;border-radius:12px;width:100%;padding:12px;font-weight:600}#room-list{gap:8px;margin:14px 0 0;padding:0;list-style:none;display:grid}#room-list button{border:1px solid var(--line);text-align:left;background:#ffffff0a;border-radius:12px;justify-content:space-between;align-items:center;width:100%;padding:12px 14px;display:flex}#room-list li:nth-child(n+6){display:none}#room-list.all{overscroll-behavior:contain;max-height:290px;overflow-y:auto}#room-list.all li:nth-child(n+6){display:block}#more-rooms{border:1px solid var(--line);width:100%;color:var(--ink-dim);font:inherit;cursor:pointer;background:0 0;border-radius:12px;margin-top:8px;padding:10px 14px;font-size:14px}#more-rooms[hidden]{display:none}.gathering-box{border:1px solid var(--accent);color:var(--ink);text-align:center;background:#00000040;border-radius:12px;margin:14px 0 0;padding:12px 14px;font-size:16px;line-height:1.4}.gathering-box:empty{display:none}#room-list button:disabled{color:var(--full);cursor:default}.count{font-variant-numeric:tabular-nums;color:var(--ink-dim)}.status{min-height:1.2em;color:var(--ink-dim);margin:10px 0 0;font-size:13px}#hud{top:max(12px, env(safe-area-inset-top));background:var(--panel);border:1px solid var(--line);border-radius:999px;align-items:center;gap:10px;padding:6px 14px 6px 6px;font-size:14px;display:flex;position:fixed;left:12px}#hud button{background:0 0;border:0;border-radius:50%;width:30px;height:30px}#room-count{font-variant-numeric:tabular-nums;color:var(--ink-dim)}#actions{bottom:max(16px, env(safe-area-inset-bottom));box-sizing:border-box;scrollbar-width:none;background:var(--panel);border:1px solid var(--line);border-radius:999px;gap:2px;width:max-content;max-width:calc(100vw - 16px);padding:6px;display:flex;position:fixed;left:50%;overflow-x:auto;transform:translate(-50%)}#actions button{white-space:nowrap;background:0 0;border:0;border-radius:999px;flex:none;padding:10px 9px;font-size:14px}#actions button:active{background:#ffffff1a}#mute{font-size:15px}#mute.muted{opacity:.4;text-decoration:line-through}#context{right:20px;bottom:calc(max(16px, env(safe-area-inset-bottom)) + 96px);white-space:nowrap;border-radius:999px;width:auto;padding:14px 20px;position:fixed}#meditate-panel{text-align:center;max-width:300px}#meditate-panel h2{margin:0 0 14px;font-size:18px;font-weight:500}#meditate-times{justify-content:center;gap:8px;margin-bottom:10px;display:flex}#meditate-times button{border:1px solid var(--line);background:0 0;border-radius:12px;flex:1;padding:14px 0}#meditate-close{color:var(--ink-dim);background:0 0;border:0;padding:10px 16px}#session{left:0;right:0;bottom:calc(max(16px, env(safe-area-inset-bottom)) + 24px);text-align:center;pointer-events:none;position:fixed}#session-clock{font-variant-numeric:tabular-nums;text-shadow:0 1px 8px #0009;margin:0 0 12px;font-size:44px;font-weight:300}#session-end{pointer-events:auto;background:var(--panel);border:1px solid var(--line);border-radius:999px;padding:10px 24px}#guide{top:calc(max(12px, env(safe-area-inset-top)) + 112px);background:var(--panel);border:1px solid var(--line);border-radius:14px;align-items:center;gap:4px;width:min(340px,100vw - 24px);padding:8px 6px 8px 14px;display:flex;position:fixed;left:50%;transform:translate(-50%)}#guide-text{flex:1;margin:0;font-size:14px;line-height:1.35}#guide-close{width:36px;height:36px;color:var(--ink-dim);background:0 0;border:0;flex:none;font-size:18px}#guide-arrow{top:calc(max(12px, env(safe-area-inset-top)) + 176px);pointer-events:none;width:44px;height:44px;position:fixed;left:calc(50% - 22px)}#guide-arrow svg{width:100%;height:100%;fill:var(--accent);stroke:#00000073;stroke-width:2px;display:block}#stick.pulse{animation:1.6s ease-in-out infinite stick-pulse}@keyframes stick-pulse{50%{box-shadow:0 0 0 10px #ffffff38}}@media (prefers-reduced-motion:reduce){#stick.pulse{animation:none;box-shadow:0 0 0 4px #ffffff59}}#stick{left:20px;bottom:calc(max(16px, env(safe-area-inset-bottom)) + 64px);border:1px solid var(--line);touch-action:none;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;background:#00000047;border-radius:50%;place-items:center;width:120px;height:120px;display:grid;position:fixed}#stick-knob{pointer-events:none;background:#ffffff8c;border-radius:50%;width:52px;height:52px}#fade{opacity:0;pointer-events:none;background:#000;position:fixed;inset:0}#context2{right:20px;bottom:calc(max(16px, env(safe-area-inset-bottom)) + 152px);white-space:nowrap;border-radius:999px;width:auto;padding:14px 20px;position:fixed}#toast{left:50%;top:calc(max(12px, env(safe-area-inset-top)) + 64px);pointer-events:none;background:#141814db;border-radius:12px;width:max-content;max-width:calc(100vw - 32px);margin:0;padding:10px 16px;font-size:14px;position:fixed;transform:translate(-50%)}#offer-panel h2{margin:0 0 12px;font-size:18px;font-weight:600}#offer-options{flex-wrap:wrap;gap:8px;margin-bottom:12px;display:flex}#offer-options button{min-height:44px;color:var(--ink);background:#ffffff14;border:2px solid #0000;border-radius:10px;flex:30%;padding:8px}#offer-options button.chosen{border-color:var(--accent)}#offer-options i{vertical-align:-2px;border-radius:50%;width:14px;height:14px;margin-right:6px;display:inline-block}#offer-text{box-sizing:border-box;width:100%;color:var(--ink);font:inherit;resize:none;background:#00000040;border:1px solid #fff3;border-radius:10px;margin-bottom:6px;padding:10px;font-size:16px}#offer-go{margin-bottom:8px}#offer-cancel{width:100%;min-height:40px;color:var(--ink-dim);background:0 0;border:0}#names{pointer-events:none;position:fixed;inset:0;overflow:hidden}.name-label{color:#fff;white-space:nowrap;text-overflow:ellipsis;will-change:transform;background:#0000006b;border-radius:999px;max-width:140px;padding:2px 8px;font-size:12px;line-height:1.4;position:absolute;top:0;left:0;overflow:hidden}.name-label.own{color:var(--accent)}#context:disabled{opacity:.75}#perf{top:max(12px, env(safe-area-inset-top));pointer-events:none;background:#0000008c;border-radius:8px;margin:0;padding:8px 10px;font:11px/1.4 ui-monospace,monospace;position:fixed;right:12px}#perf.over{outline:2px solid #e05a4f}[hidden]{display:none!important}#greet{white-space:nowrap;will-change:transform;border-radius:999px;width:auto;padding:9px 16px;font-size:14px;position:fixed;top:0;left:0}body.handheld-open :is(#gathering,#bows-today,#names,#hud,#actions,#stick,#context,#context2,#toast,#greet,#guide,#guide-arrow,#perf){visibility:hidden}#handheld{color:#4a3f31;touch-action:none;-webkit-user-select:none;user-select:none;position:fixed;inset:0}#handheld button{color:inherit;background:0 0;border:0;padding:0}#handheld svg{fill:none;stroke:currentColor;stroke-width:1.5px;stroke-linecap:round;stroke-linejoin:round;width:26px;height:26px;display:block}#handheld-close{left:max(14px, env(safe-area-inset-left));top:max(14px, env(safe-area-inset-top));position:absolute;padding:8px!important}#handheld-tools{right:max(14px, env(safe-area-inset-right));bottom:max(22px, env(safe-area-inset-bottom));gap:8px;display:flex;position:absolute}#handheld-tools button{padding:8px}#handheld-sound.muted{opacity:.45}#handheld-sound.muted .waves{display:none}#handheld-count{left:max(24px, env(safe-area-inset-left));bottom:max(26px, env(safe-area-inset-bottom));letter-spacing:.02em;font-variant-numeric:tabular-nums;margin:0;font-size:19px;position:absolute}#handheld-hint{left:0;right:0;bottom:max(70px, calc(env(safe-area-inset-bottom) + 54px));text-align:center;opacity:.72;pointer-events:none;margin:0;font-size:14px;transition:opacity .8s;position:absolute}#handheld-menu{right:max(14px, env(safe-area-inset-right));bottom:max(74px, calc(env(safe-area-inset-bottom) + 56px));background:#fffcf5eb;border-radius:14px;gap:6px;padding:10px;font-size:14px;display:grid;position:absolute;box-shadow:0 6px 22px #46321e2e}#handheld-goals{gap:4px;display:flex}#handheld-menu button{border-radius:9px;padding:8px 12px}#handheld-goals button.chosen{background:#78583229}#gathering{left:12px;top:calc(max(12px, env(safe-area-inset-top)) + 52px);box-sizing:border-box;background:var(--panel);border:1px solid var(--line);border-radius:999px;align-items:center;gap:10px;max-width:calc(100vw - 24px);min-height:30px;padding:6px 6px 6px 14px;font-size:14px;display:flex;position:fixed}#bows-today{left:12px;top:calc(max(12px, env(safe-area-inset-top)) + 52px);background:var(--panel);border:1px solid var(--line);font-variant-numeric:tabular-nums;pointer-events:none;border-radius:999px;margin:0;padding:5px 14px;font-size:13px;position:fixed}body:has(#guide:not([hidden])) #bows-today{visibility:hidden}#gathering:not([hidden])~#bows-today{top:calc(max(12px, env(safe-area-inset-top)) + 100px)}#gathering-text{font-variant-numeric:tabular-nums;margin:0;padding-right:8px}#gathering-join{white-space:nowrap;border-radius:999px;flex:none;width:auto;padding:7px 14px;font-size:14px}
