pi-roundtable-web 0.30.3 → 0.31.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +10 -0
- package/README.md +1 -1
- package/dist/{chunk-index-t7csmbpy.css → chunk-index-96bv2xfw.css} +1 -1
- package/dist/index.html +1 -1
- package/dist/sw.js +1 -1
- package/package.json +3 -3
package/CHANGELOG.md
CHANGED
|
@@ -5,6 +5,16 @@ The format follows [Keep a Changelog](https://keepachangelog.com/en/1.1.0/).
|
|
|
5
5
|
|
|
6
6
|
## [Unreleased]
|
|
7
7
|
|
|
8
|
+
## [0.31.0] - 2026-11-01
|
|
9
|
+
|
|
10
|
+
- Release in lockstep with pi-roundtable 0.31.0; no package-specific behavior changes.
|
|
11
|
+
|
|
12
|
+
## [0.30.4] - 2026-11-01
|
|
13
|
+
|
|
14
|
+
### Fixed
|
|
15
|
+
|
|
16
|
+
- On a phone, typing in the animated scene's dialogue box no longer hides the message box under the on-screen keyboard. The scene used to keep its share of the height while the keyboard was up, so a message of three or four lines pushed the box's last line, the caret and the send button below the visible area. While the message box has the focus on a narrow screen, the dialogue box takes what it holds (at least its usual share), the scene gives way down to a sliver, and past 30 % of the visible height the message box scrolls inside. The layout returns when the message box loses the focus.
|
|
17
|
+
|
|
8
18
|
## [0.30.3] - 2026-11-01
|
|
9
19
|
|
|
10
20
|
- 0.30.2 was tagged but never published: its release run stopped on lint (a hook's dependency suppression the change had dropped) before any package was published. 0.30.3 carries 0.30.2's changes.
|
package/README.md
CHANGED
|
@@ -30,7 +30,7 @@ Then only a person whose principal holds the owner role gets in.
|
|
|
30
30
|
|
|
31
31
|
## Requirements
|
|
32
32
|
|
|
33
|
-
- Bun 1.4.4 or later, and pi-roundtable `>=0.
|
|
33
|
+
- Bun 1.4.4 or later, and pi-roundtable `>=0.31.0 <0.32.0` as a peer dependency.
|
|
34
34
|
- The host must run on the machine that holds its data directory: the console reads `<dataDir>/sessions` from disk, and the app keeps its files and keys under `<dataDir>/web/`.
|
|
35
35
|
- An agent team: `agents` in the configuration, with or without `discord`. Without Discord the host also needs a surface that hosts rooms, and this plugin is one; the start fails otherwise, naming the fix.
|
|
36
36
|
- A way to authenticate the owners (see [Authentication](#authentication)): a password, Cloudflare Access or a verifier of your own in front of the listener, or `none` on a listener only the owner reaches.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
:root{--buncss-light:initial;--buncss-dark: ;color-scheme:light dark;--bg:var(--buncss-light,#f5f6f8)var(--buncss-dark,#0f1115);--surface:var(--buncss-light,#fff)var(--buncss-dark,#171a20);--surface-2:var(--buncss-light,#eef0f4)var(--buncss-dark,#1d2128);--surface-3:var(--buncss-light,#e4e7ee)var(--buncss-dark,#262b34);--raised:var(--buncss-light,#fff)var(--buncss-dark,#1c2027);--border:var(--buncss-light,#dfe2e8)var(--buncss-dark,#2a2f39);--border-strong:var(--buncss-light,#c4cad6)var(--buncss-dark,#3b414d);--control-border:var(--buncss-light,#7f8797)var(--buncss-dark,#69717f);--scrim:var(--buncss-light,#0f11156b)var(--buncss-dark,#0000009e);--text:var(--buncss-light,#16181d)var(--buncss-dark,#e9ebf0);--muted:var(--buncss-light,#5a6270)var(--buncss-dark,#a0a7b4);--on-accent:var(--buncss-light,#fff)var(--buncss-dark,#0c1230);--accent:var(--buncss-light,#3a5bd9)var(--buncss-dark,#8ea4ff);--accent-strong:var(--buncss-light,#2f4ac0)var(--buncss-dark,#a9b9ff);--accent-soft:var(--buncss-light,#e8edfd)var(--buncss-dark,#232c52);--accent-ink:var(--buncss-light,#2a47b8)var(--buncss-dark,#b6c4ff);--success:var(--buncss-light,#17703f)var(--buncss-dark,#5fd699);--success-soft:var(--buncss-light,#e3f4ea)var(--buncss-dark,#16301f);--warn:var(--buncss-light,#8a5a00)var(--buncss-dark,#f0b95b);--warn-soft:var(--buncss-light,#fdf1d8)var(--buncss-dark,#33270f);--danger:var(--buncss-light,#b42318)var(--buncss-dark,#ff8f85);--danger-soft:var(--buncss-light,#fde8e6)var(--buncss-dark,#3a1b19);--yolo:var(--buncss-light,#9a4608)var(--buncss-dark,#ffa664);--yolo-soft:var(--buncss-light,#fdebd9)var(--buncss-dark,#382314);--long:var(--buncss-light,#6d3fc0)var(--buncss-dark,#b99cf5);--long-soft:var(--buncss-light,#efe7fb)var(--buncss-dark,#2a2140);--code-bg:var(--buncss-light,#fbfbfd)var(--buncss-dark,#14171c);--code-fg:var(--buncss-light,#1d2129)var(--buncss-dark,#e6e8ee);--code-gutter-bg:var(--buncss-light,#f1f2f6)var(--buncss-dark,#191d23);--code-gutter:var(--buncss-light,#5c6372)var(--buncss-dark,#8b93a1);--code-selection:var(--buncss-light,#cfdcff)var(--buncss-dark,#2b3a66);--code-active-line:var(--buncss-light,#f0f2f8)var(--buncss-dark,#1a1f27);--code-keyword:var(--buncss-light,#a0267a)var(--buncss-dark,#f08bd0);--code-string:var(--buncss-light,#1a6a35)var(--buncss-dark,#7fd69a);--code-number:var(--buncss-light,#9a4a00)var(--buncss-dark,#ffb070);--code-comment:var(--buncss-light,#5f6878)var(--buncss-dark,#8e98aa);--code-type:var(--buncss-light,#0b6a8f)var(--buncss-dark,#6cc7e6);--code-function:var(--buncss-light,#3a4fc0)var(--buncss-dark,#9db2ff);--code-meta:var(--buncss-light,#7a5a00)var(--buncss-dark,#e0c070);--busy:var(--success);--accent-text:var(--on-accent);--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.25rem;--space-6:1.5rem;--space-8:2rem;--space-10:2.5rem;--radius-sm:6px;--radius:10px;--radius-lg:16px;--radius-full:999px;--shadow-1:0 1px 2px var(--buncss-light,#1018280f)var(--buncss-dark,#0006);--shadow-2:0 4px 14px var(--buncss-light,#1018281a)var(--buncss-dark,#00000073);--shadow-3:0 18px 48px var(--buncss-light,#10182833)var(--buncss-dark,#0009);--font:system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",sans-serif;--font-mono:ui-monospace,"SF Mono",Menlo,Consolas,monospace;--text-xs:.75rem;--text-sm:.8125rem;--text-base:.9375rem;--text-md:1rem;--text-lg:1.125rem;--text-xl:1.375rem;--text-2xl:1.75rem;--leading-tight:1.25;--leading:1.5;--weight-medium:500;--weight-bold:650;--dur-fast:.12s;--dur:.2s;--dur-slow:.34s;--ease-out:cubic-bezier(.2,.8,.2,1);--ease-in-out:cubic-bezier(.65,0,.35,1);--ease-spring:cubic-bezier(.34,1.56,.64,1);--rail-width:15rem;--tabbar-height:3.5rem;--touch:2.75rem;--safe-top:env(safe-area-inset-top,0px);--safe-bottom:env(safe-area-inset-bottom,0px);--safe-left:env(safe-area-inset-left,0px);--safe-right:env(safe-area-inset-right,0px);font-family:var(--font);font-size:16px;line-height:var(--leading);-webkit-text-size-adjust:100%;text-size-adjust:100%}@media (prefers-color-scheme:dark){:root{--buncss-light: ;--buncss-dark:initial}}:root[data-theme=light]{--buncss-light:initial;--buncss-dark: ;color-scheme:light}:root[data-theme=dark]{--buncss-light: ;--buncss-dark:initial;color-scheme:dark}@media (prefers-reduced-motion:reduce){:root{--dur-fast:.01ms;--dur:.01ms;--dur-slow:.01ms}*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.01ms!important}}.av{overflow:visible}.av .ov{opacity:0}.av .glow{opacity:.28}.av .ch,.av .prop,.av .eyes,.av .ov{transform-box:view-box}.av .ch{transform-origin:50px 94px}.av .eyes{transform-origin:50px 52px;animation:5.2s infinite av-blink}.av .o-wait,.av .o-done,.av .o-err{transform-origin:17px 19px}.av .o-think{transform-origin:50px 50px}.av [data-prop=staff]{transform-origin:73px 82px}.av [data-prop=shield]{transform-origin:27px 82px}.av [data-prop=scroll]{transform-origin:76px 76px}.av [data-prop=hammer]{transform-origin:79px 84px}.av [data-prop=bow]{transform-origin:78px 70px}.av [data-prop=lute]{transform-origin:75px 70px}.av [data-prop=flask]{transform-origin:73px 66px}.av [data-prop=quill]{transform-origin:72px 82px}.av [data-prop=tome]{transform-origin:78px 76px}.av [data-prop=bell]{transform-origin:76px 62px}.av [data-prop=keys]{transform-origin:78px 62px}.av [data-prop=map]{transform-origin:77px 58px}.av [data-prop=telescope]{transform-origin:76px 74px}.av [data-prop=wrench]{transform-origin:78px 86px}.av [data-prop=spade]{transform-origin:76px 60px}.av [data-prop=ladle]{transform-origin:78px 78px}.av [data-prop=lantern]{transform-origin:76px 62px}.av [data-prop=seal]{transform-origin:76px 66px}.av [data-prop=dagger]{transform-origin:78px 86px}.av [data-prop=beads]{transform-origin:78px 62px}.av [data-prop=bird]{transform-origin:78px 76px}.av [data-prop=anchor]{transform-origin:76px 76px}.av [data-prop=marotte]{transform-origin:76px 62px}.av [data-prop=sword]{transform-origin:76px 82px}:-webkit-any(.av,.av-host)[data-state=idle] .ch{animation:3.8s ease-in-out infinite av-breathe}:-moz-any(.av,.av-host)[data-state=idle] .ch{animation:3.8s ease-in-out infinite av-breathe}:is(.av,.av-host)[data-state=idle] .ch{animation:3.8s ease-in-out infinite av-breathe}:-webkit-any(.av,.av-host)[data-state=thinking] .ch{animation:3.2s ease-in-out infinite av-tilt}:-moz-any(.av,.av-host)[data-state=thinking] .ch{animation:3.2s ease-in-out infinite av-tilt}:is(.av,.av-host)[data-state=thinking] .ch{animation:3.2s ease-in-out infinite av-tilt}:-webkit-any(.av,.av-host)[data-state=thinking] .o-think{opacity:1;animation:2.6s linear infinite av-orbit}:-moz-any(.av,.av-host)[data-state=thinking] .o-think{opacity:1;animation:2.6s linear infinite av-orbit}:is(.av,.av-host)[data-state=thinking] .o-think{opacity:1;animation:2.6s linear infinite av-orbit}:-webkit-any(.av,.av-host)[data-state=working] .ch{animation:.56s ease-in-out infinite av-bob}:-moz-any(.av,.av-host)[data-state=working] .ch{animation:.56s ease-in-out infinite av-bob}:is(.av,.av-host)[data-state=working] .ch{animation:.56s ease-in-out infinite av-bob}:-webkit-any(.av,.av-host)[data-state=working] .prop{animation:.56s ease-in-out infinite alternate av-sweep}:-moz-any(.av,.av-host)[data-state=working] .prop{animation:.56s ease-in-out infinite alternate av-sweep}:is(.av,.av-host)[data-state=working] .prop{animation:.56s ease-in-out infinite alternate av-sweep}:-webkit-any(.av,.av-host)[data-state=working] .glow{animation:.56s ease-in-out infinite alternate av-glow}:-moz-any(.av,.av-host)[data-state=working] .glow{animation:.56s ease-in-out infinite alternate av-glow}:is(.av,.av-host)[data-state=working] .glow{animation:.56s ease-in-out infinite alternate av-glow}:-webkit-any(.av,.av-host)[data-state=waiting] .ch{animation:1.6s ease-in-out infinite av-lean}:-moz-any(.av,.av-host)[data-state=waiting] .ch{animation:1.6s ease-in-out infinite av-lean}:is(.av,.av-host)[data-state=waiting] .ch{animation:1.6s ease-in-out infinite av-lean}:-webkit-any(.av,.av-host)[data-state=waiting] .o-wait{opacity:1;animation:1.2s ease-in-out infinite av-badge}:-moz-any(.av,.av-host)[data-state=waiting] .o-wait{opacity:1;animation:1.2s ease-in-out infinite av-badge}:is(.av,.av-host)[data-state=waiting] .o-wait{opacity:1;animation:1.2s ease-in-out infinite av-badge}:-webkit-any(.av,.av-host)[data-state=waiting] .glow{animation:1.2s ease-in-out infinite alternate av-glow}:-moz-any(.av,.av-host)[data-state=waiting] .glow{animation:1.2s ease-in-out infinite alternate av-glow}:is(.av,.av-host)[data-state=waiting] .glow{animation:1.2s ease-in-out infinite alternate av-glow}:-webkit-any(.av,.av-host)[data-state=done] .ch{animation:.7s cubic-bezier(.3,1.6,.5,1) av-pop}:-moz-any(.av,.av-host)[data-state=done] .ch{animation:.7s cubic-bezier(.3,1.6,.5,1) av-pop}:is(.av,.av-host)[data-state=done] .ch{animation:.7s cubic-bezier(.3,1.6,.5,1) av-pop}:-webkit-any(.av,.av-host)[data-state=done] .o-done{opacity:1;animation:.5s ease-out av-badge-in}:-moz-any(.av,.av-host)[data-state=done] .o-done{opacity:1;animation:.5s ease-out av-badge-in}:is(.av,.av-host)[data-state=done] .o-done{opacity:1;animation:.5s ease-out av-badge-in}:-webkit-any(.av,.av-host)[data-state=done] .glow{opacity:.7}:-moz-any(.av,.av-host)[data-state=done] .glow{opacity:.7}:is(.av,.av-host)[data-state=done] .glow{opacity:.7}:-webkit-any(.av,.av-host)[data-state=error] .ch{animation:.5s ease-in-out 2 av-shake}:-moz-any(.av,.av-host)[data-state=error] .ch{animation:.5s ease-in-out 2 av-shake}:is(.av,.av-host)[data-state=error] .ch{animation:.5s ease-in-out 2 av-shake}:-webkit-any(.av,.av-host)[data-state=error] .o-err{opacity:1;animation:.3s ease-out av-badge-in}:-moz-any(.av,.av-host)[data-state=error] .o-err{opacity:1;animation:.3s ease-out av-badge-in}:is(.av,.av-host)[data-state=error] .o-err{opacity:1;animation:.3s ease-out av-badge-in}:-webkit-any(.av,.av-host)[data-state=error] .ring{stroke:#e5484d}:-moz-any(.av,.av-host)[data-state=error] .ring{stroke:#e5484d}:is(.av,.av-host)[data-state=error] .ring{stroke:#e5484d}:-webkit-any(.av,.av-host)[data-state=error] .glow{opacity:0}:-moz-any(.av,.av-host)[data-state=error] .glow{opacity:0}:is(.av,.av-host)[data-state=error] .glow{opacity:0}:-webkit-any(.av,.av-host)[data-state=sleepy] .ch{animation:6s ease-in-out infinite av-breathe}:-moz-any(.av,.av-host)[data-state=sleepy] .ch{animation:6s ease-in-out infinite av-breathe}:is(.av,.av-host)[data-state=sleepy] .ch{animation:6s ease-in-out infinite av-breathe}:-webkit-any(.av,.av-host)[data-state=sleepy] .o-zz{opacity:1;animation:3s ease-in-out infinite av-float}:-moz-any(.av,.av-host)[data-state=sleepy] .o-zz{opacity:1;animation:3s ease-in-out infinite av-float}:is(.av,.av-host)[data-state=sleepy] .o-zz{opacity:1;animation:3s ease-in-out infinite av-float}:-webkit-any(.av,.av-host)[data-state=sleepy] .glow{opacity:.08}:-moz-any(.av,.av-host)[data-state=sleepy] .glow{opacity:.08}:is(.av,.av-host)[data-state=sleepy] .glow{opacity:.08}@keyframes av-blink{0%,93%,to{transform:scaleY(1)}96%{transform:scaleY(.08)}}@keyframes av-breathe{0%,to{transform:scale(1)}50%{transform:scale(1.012,1.03)}}@keyframes av-tilt{0%,to{transform:rotate(-3deg)}50%{transform:rotate(3deg)}}@keyframes av-orbit{to{transform:rotate(360deg)}}@keyframes av-bob{0%,to{transform:translateY(0)}50%{transform:translateY(-2.4px)}}@keyframes av-sweep{0%{transform:rotate(-9deg)}to{transform:rotate(9deg)}}@keyframes av-glow{0%{opacity:.2}to{opacity:.85}}@keyframes av-lean{0%,to{transform:rotate(-1deg)translateY(0)}50%{transform:rotate(-6deg)translateY(1px)}}@keyframes av-badge{0%,to{transform:scale(1)}50%{transform:scale(1.14)}}@keyframes av-badge-in{0%{transform:scale(.2);opacity:0}to{transform:scale(1);opacity:1}}@keyframes av-pop{0%{transform:scale(1)}40%{transform:scale(1.1,.94)}70%{transform:scale(.97,1.05)}to{transform:scale(1)}}@keyframes av-shake{0%,to{transform:translate(0)}20%{transform:translate(-2.4px)}40%{transform:translate(2.4px)}60%{transform:translate(-1.6px)}80%{transform:translate(1.6px)}}@keyframes av-float{0%,to{transform:translateY(0);opacity:.35}50%{transform:translateY(-4px);opacity:1}}@media (prefers-reduced-motion:reduce){.av *{animation:none!important}.av .o-think{opacity:0!important}}.av.static *{animation:none!important}:root[data-look=camelot]{--bg:var(--buncss-light,#f4ead5)var(--buncss-dark,#0f1726);--surface:var(--buncss-light,#fbf5e6)var(--buncss-dark,#16213a);--surface-2:var(--buncss-light,#eee1c3)var(--buncss-dark,#1c2a47);--surface-3:var(--buncss-light,#e3d2a9)var(--buncss-dark,#243557);--raised:var(--buncss-light,#fffaf0)var(--buncss-dark,#1b2744);--border:var(--buncss-light,#dccb9f)var(--buncss-dark,#2c3c61);--border-strong:var(--buncss-light,#c2ad78)var(--buncss-dark,#41537f);--control-border:var(--buncss-light,#8a7650)var(--buncss-dark,#7e8db2);--scrim:var(--buncss-light,#2b211873)var(--buncss-dark,#03060eb3);--text:var(--buncss-light,#2b2118)var(--buncss-dark,#efe6d2);--muted:var(--buncss-light,#66543c)var(--buncss-dark,#bcb8ab);--on-accent:var(--buncss-light,#fff9ea)var(--buncss-dark,#1a1405);--accent:var(--buncss-light,#7a500a)var(--buncss-dark,#e6b94c);--accent-strong:var(--buncss-light,#5f3e07)var(--buncss-dark,#f2cd6c);--accent-soft:var(--buncss-light,#f0deb0)var(--buncss-dark,#2d3045);--accent-ink:var(--buncss-light,#553705)var(--buncss-dark,#f0cd78);--code-bg:var(--buncss-light,#fffaf0)var(--buncss-dark,#121c33);--code-fg:var(--buncss-light,#2b2118)var(--buncss-dark,#efe6d2);--code-gutter-bg:var(--buncss-light,#f1e5c6)var(--buncss-dark,#16213a);--code-gutter:var(--buncss-light,#66543c)var(--buncss-dark,#bcb8ab);--code-selection:var(--buncss-light,#ecd9a0)var(--buncss-dark,#31446e);--code-active-line:var(--buncss-light,#f6ecd2)var(--buncss-dark,#18243f);--code-keyword:var(--buncss-light,#7a500a)var(--buncss-dark,#e6b94c);--code-string:var(--buncss-light,#8a1c1c)var(--buncss-dark,#ff9a8f);--code-number:var(--buncss-light,#5f3d94)var(--buncss-dark,#c3a7f5);--code-comment:var(--buncss-light,#6a5a42)var(--buncss-dark,#b0ab9d);--code-type:var(--buncss-light,#26602d)var(--buncss-dark,#6fd49b);--code-function:var(--buncss-light,#1f4a80)var(--buncss-dark,#8fb4ff);--code-meta:var(--buncss-light,#764a07)var(--buncss-dark,#f0b95b);--gold:var(--buncss-light,#b98a2c)var(--buncss-dark,#e6b94c);--gold-soft:var(--buncss-light,#e9d29a)var(--buncss-dark,#3b4256);--gold-wash:var(--buncss-light,#f2e4bd)var(--buncss-dark,#222f4d);--success:var(--buncss-light,#26602d)var(--buncss-dark,#6fd49b);--success-soft:var(--buncss-light,#dfe9c9)var(--buncss-dark,#153027);--warn:var(--buncss-light,#764a07)var(--buncss-dark,#f0b95b);--warn-soft:var(--buncss-light,#f6e2b0)var(--buncss-dark,#3a2d12);--danger:var(--buncss-light,#a3281e)var(--buncss-dark,#ff9a8f);--danger-soft:var(--buncss-light,#f3d6cb)var(--buncss-dark,#3d1f2a);--yolo:var(--buncss-light,#96400a)var(--buncss-dark,#ffae72);--yolo-soft:var(--buncss-light,#f3dcc2)var(--buncss-dark,#3b2616);--long:var(--buncss-light,#5f3d94)var(--buncss-dark,#c3a7f5);--long-soft:var(--buncss-light,#e8ddee)var(--buncss-dark,#2c2547);--shadow-1:0 1px 2px var(--buncss-light,#4a340e1a)var(--buncss-dark,#00000073);--shadow-2:0 4px 14px var(--buncss-light,#4a340e24)var(--buncss-dark,#00000080);--shadow-3:0 18px 48px var(--buncss-light,#4a340e42)var(--buncss-dark,#000000a6);--font-heading:"Iowan Old Style",Palatino,"Songti TC","Noto Serif TC",Georgia,serif}[data-look=camelot] h1,[data-look=camelot] h2,[data-look=camelot] h3,[data-look=camelot] .page-bar strong,[data-look=camelot] .prompt-head strong{font-family:var(--font-heading);letter-spacing:0}[data-look=camelot] body{background:radial-gradient(60rem 36rem at 12% -8%,var(--buncss-light,#fffcf08c)var(--buncss-dark,#4660a029),transparent 70%),radial-gradient(48rem 30rem at 96% 108%,var(--buncss-light,#c8a05a33)var(--buncss-dark,#e6b94c0f),transparent 70%),radial-gradient(22rem 14rem at 70% 24%,var(--buncss-light,#b98a2c14)var(--buncss-dark,#788cd20d),transparent 70%),var(--bg)}[data-look=camelot] .topbar,[data-look=camelot] .tabbar{border-color:var(--gold-soft)}[data-look=camelot] .page-head{padding-bottom:var(--space-2);background:linear-gradient(90deg,var(--gold),transparent 70%)bottom/100% 1px no-repeat}[data-look=camelot] .room-head{position:relative;border-bottom-color:var(--gold-soft);box-shadow:0 1px 0 color-mix(in srgb,var(--gold)38%,transparent)}[data-look=camelot] .room-head:before,[data-look=camelot] .room-head:after{content:"";position:absolute;pointer-events:none;background:linear-gradient(var(--gold),var(--gold))bottom/100% 2px no-repeat,linear-gradient(var(--gold),var(--gold))var(--side)/2px 100% no-repeat;width:.75rem;height:.75rem;bottom:-1px}[data-look=camelot] .room-head:before{--side:left;left:0}[data-look=camelot] .room-head:after{--side:right;right:0}[data-look=camelot] .card,[data-look=camelot] .prompt,[data-look=camelot] .progress,[data-look=camelot] .bubble{border-color:color-mix(in srgb,var(--gold)34%,var(--border))}[data-look=camelot] .message[data-mine] .bubble{border-color:#0000}[data-look=camelot] .room-row[data-home],[data-look=camelot] .room-row[aria-current=page],[data-look=camelot] .creator-preview{background:var(--gold-wash)}[data-look=camelot] .prompt{position:relative;--seal-out:.9rem;--seal-in:.6rem}[data-look=camelot] .prompt[data-sealed]{padding-bottom:calc(var(--space-4) + var(--seal-in));margin-bottom:var(--seal-out)}.wax-seal{--seal-size:2.5rem;position:absolute;right:var(--space-4);bottom:calc(var(--seal-out)*-1);width:var(--seal-size);height:var(--seal-size);pointer-events:none;filter:drop-shadow(0 2px 2px #00000047);transform:rotate(-9deg)}.wax-seal[data-stamp]{animation-name:seal-stamp;animation-duration:.45s;animation-timing-function:var(--ease-spring);animation-fill-mode:both}.wax-seal svg{display:block;overflow:visible;width:100%;height:100%}.wax-seal .seal-body{fill:var(--agent-accent,var(--accent))}.wax-seal .seal-ring{fill:none;stroke:color-mix(in srgb,var(--agent-accent,var(--accent))62%,#000);stroke-width:1.6}.wax-seal .seal-mark{fill:none;stroke:color-mix(in srgb,var(--agent-accent,var(--accent))62%,#000);stroke-width:3;stroke-linecap:round;stroke-linejoin:round}@keyframes seal-stamp{0%{opacity:0;transform:rotate(-9deg)scale(1.7)}60%{opacity:1;transform:rotate(-9deg)scale(.92)}to{opacity:1;transform:rotate(-9deg)scale(1)}}[data-look=camelot] .progress-bar{display:none}.candle-runes{display:inline-flex;align-items: center;gap:var(--space-2);flex:none}.candle{overflow:visible;width:.85rem;height:1.55rem}.candle .candle-wax{fill:var(--buncss-light,#f3e3b6)var(--buncss-dark,#d9cdb0);stroke:var(--gold);stroke-width:.6}.candle .candle-wick{stroke:var(--buncss-light,#4a3a28)var(--buncss-dark,#1a1405);stroke-width:.9}.candle .candle-flame{fill:var(--gold);transform-box:fill-box;transform-origin:50% 100%;animation:1.7s ease-in-out infinite candle-flicker}.runes{display:inline-flex;gap:.3rem}.rune{width:.55rem;height:.9rem}.rune path{fill:none;stroke:color-mix(in srgb,var(--gold)80%,var(--text));stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}.rune{animation:2.4s ease-in-out infinite rune-shimmer}.rune[data-rune="1"]{animation-delay:.3s}.rune[data-rune="2"]{animation-delay:.6s}.rune[data-rune="3"]{animation-delay:.9s}.rune[data-rune="4"]{animation-delay:1.2s}.rune[data-rune="5"]{animation-delay:1.5s}@keyframes rune-shimmer{0%,to{opacity:.4}45%{opacity:1}}@keyframes candle-flicker{0%,to{opacity:1;transform:scale(1)rotate(0)}30%{opacity:.82;transform:scale(.92,1.08)rotate(-2deg)}65%{opacity:.94;transform:scale(1.06,.95)rotate(2deg)}}@media (prefers-reduced-motion:reduce){.wax-seal[data-stamp],.candle .candle-flame,.rune{animation-name:none}.rune{opacity:.85}}*{box-sizing:border-box}html{background:var(--bg);height:100%}body{overflow:hidden;background:var(--bg);color:var(--text);font-size:var(--text-base);-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:transparent;overscroll-behavior:none;height:100%;margin:0}a{color:var(--accent)}h1,h2,h3{font-weight:var(--weight-bold);line-height:var(--leading-tight);letter-spacing:-.01em;margin:0}h1{font-size:var(--text-xl)}h2{font-size:var(--text-md)}:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:var(--radius-sm)}.visually-hidden{position:absolute;overflow:hidden;clip-path:inset(50%);white-space:nowrap;width:1px;height:1px}kbd{padding:0 var(--space-2);border:1px solid var(--border-strong);border-radius:var(--radius-sm);background:var(--surface-2);color:var(--muted);font:inherit;font-size:var(--text-xs)}.app{position:fixed;left:0;right:0;top:var(--app-top,0px);height:var(--app-height,100dvh);display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:minmax(0,1fr)auto;background:var(--bg)}.stage{grid-row:1;display:flex;overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;padding-left:var(--safe-left);padding-right:var(--safe-right);flex-direction:column;min-width:0;min-height:0}.stage[data-fill]{overflow:hidden}.route{display:flex;flex-direction:column;flex:1;min-height:0}.no-vt .route{animation:route-in var(--dur-slow)var(--ease-out)both}@keyframes route-in{0%{opacity:0;transform:translateY(8px)}}.topbar{position:sticky;z-index:5;display:flex;justify-content:space-between;align-items: center;gap:var(--space-3);padding:calc(var(--space-2) + var(--safe-top))var(--space-4)var(--space-2);background:color-mix(in srgb,var(--bg)88%,transparent);backdrop-filter:blur(14px);border-bottom:1px solid var(--border);top:0}.topbar h1{font-size:var(--text-md)}.brand{display:flex;align-items: center;gap:var(--space-2);min-width:0}.brand-mark{display:grid;border-radius:var(--radius-sm);background:var(--accent);color:var(--on-accent);overflow:hidden;flex:none;place-items: center;width:1.75rem;height:1.75rem}.brand-mark img{object-fit:cover;width:100%;height:100%}.brand h1{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.topbar-end,.rail-foot{display:flex;align-items: center;gap:var(--space-2)}.live-chip{display:inline-flex;align-items: center;gap:var(--space-2);font-size:var(--text-xs);color:var(--muted)}.live-chip:before{content:"";border-radius:var(--radius-full);background:var(--muted);width:.5rem;height:.5rem}.live-chip[data-on]:before{background:var(--success);box-shadow:0 0 0 0 var(--success);animation:pulse 2.4s var(--ease-out)infinite}@keyframes pulse{70%,to{box-shadow:0 0 0 6px #0000}}.rail{display:none}.tabbar{grid-row:2;display:flex;padding-bottom:var(--safe-bottom);padding-left:var(--safe-left);padding-right:var(--safe-right);border-top:1px solid var(--border);background:color-mix(in srgb,var(--surface)92%,transparent);backdrop-filter:blur(14px)}.tab{position:relative;display:flex;min-height:var(--tabbar-height);color:var(--muted);font-size:var(--text-xs);text-decoration:none;transition:color var(--dur)var(--ease-out);flex-direction:column;flex:1;justify-content:center;align-items: center;gap:2px}.tab[aria-current=page]{color:var(--accent)}.tab svg{transition:transform var(--dur)var(--ease-spring)}.tab[aria-current=page] svg{transform:translateY(-1px)scale(1.1)}.tab-badge{position:absolute;border-radius:var(--radius-full);background:var(--warn);color:var(--bg);font-size:.65rem;font-weight:var(--weight-bold);text-align:center;min-width:1.1rem;padding:0 .3rem;line-height:1.1rem;top:.35rem;left:calc(50% + .55rem)}.app[data-fill]{grid-template-rows:minmax(0,1fr)}.app[data-fill] .tabbar,.app[data-fill] .topbar{display:none}@media (min-width:720px){.app{grid-template-columns:var(--rail-width)minmax(0,1fr);grid-template-rows:minmax(0,1fr)}.app[data-fill] .topbar,.topbar,.tabbar,.app[data-fill] .tabbar{display:none}.rail{grid-column:1;display:flex;gap:var(--space-4);padding:calc(var(--space-4) + var(--safe-top))var(--space-3)var(--space-3)calc(var(--space-3) + var(--safe-left));border-right:1px solid var(--border);background:var(--surface);flex-direction:column;min-height:0}.stage{grid-column:2;padding-left:0}.rail-nav{display:flex;gap:var(--space-1);overflow-y:auto;flex-direction:column;flex:1}.rail-link{position:relative;display:flex;align-items: center;gap:var(--space-3);padding:0 var(--space-3);border-radius:var(--radius);color:var(--muted);font-weight:var(--weight-medium);text-decoration:none;transition:background-color var(--dur-fast)var(--ease-out),color var(--dur-fast)var(--ease-out);min-height:2.5rem}.rail-link:hover{background:var(--surface-2);color:var(--text)}.rail-link[aria-current=page]{background:var(--accent-soft);color:var(--accent-ink)}.rail-link .tab-badge{position:static;margin-left:auto}.rail-foot{padding-left:var(--space-3)}}.page{display:flex;gap:var(--space-5);padding:var(--space-4)var(--space-4)calc(var(--space-8) + var(--safe-bottom));flex-direction:column;width:100%;max-width:60rem;margin:0 auto}@media (min-width:720px){.page{padding:var(--space-8)var(--space-8)var(--space-10)}}.page-head{min-height:var(--touch);display:flex;justify-content:space-between;align-items: center;gap:var(--space-3);flex-wrap:wrap}.section-title{font-size:var(--text-xs);color:var(--muted);text-transform:uppercase;letter-spacing:.06em}.stack{display:flex;gap:var(--space-3);flex-direction:column}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:var(--space-3)var(--space-4);box-shadow:var(--shadow-1)}.card-link{display:block;color:inherit;text-decoration:none;transition:border-color var(--dur-fast)var(--ease-out),transform var(--dur)var(--ease-out)}.card-link:hover{border-color:var(--accent)}.card-head{display:flex;justify-content:space-between;align-items: flex-start;gap:var(--space-2);flex-wrap:wrap}.facts{display:grid;grid-template-columns:repeat(auto-fit,minmax(10rem,1fr));gap:var(--space-2)var(--space-4);margin:var(--space-2)0 0}.facts dt{font-size:var(--text-xs);color:var(--muted)}.facts dd{overflow-wrap:anywhere;margin:0}.skill-meta{display:grid;grid-template-columns:max-content minmax(0,1fr);gap:var(--space-2)var(--space-4);margin:0}.skill-meta dt{font-size:var(--text-xs);color:var(--muted);padding-top:.15em}.skill-meta dd{overflow-wrap:anywhere;margin:0}.skill-document{display:flex;gap:var(--space-4);flex-direction:column}.skill-meta{padding-bottom:var(--space-4);border-bottom:1px solid var(--border)}.prose.document{line-height:1.65}.prose.document>:-webkit-any(p,ul,ol,blockquote,h1,h2,h3,h4){max-width:72ch}.prose.document>:-moz-any(p,ul,ol,blockquote,h1,h2,h3,h4){max-width:72ch}.prose.document>:is(p,ul,ol,blockquote,h1,h2,h3,h4){max-width:72ch}.meta,.hint,.empty{font-size:var(--text-sm);color:var(--muted);margin:0}.empty{padding:var(--space-6)var(--space-4);text-align:center;border:1px dashed var(--border-strong);border-radius:var(--radius)}.text{white-space:pre-wrap;overflow-wrap:anywhere;margin:0}.badge{display:inline-flex;padding:0 var(--space-2);border:1px solid var(--border);border-radius:var(--radius-full);background:var(--surface-2);font-size:var(--text-xs);color:var(--muted);white-space:nowrap;align-items: center;gap:.25rem;line-height:1.3rem}.badge-busy{background:var(--success-soft);color:var(--success);border-color:#0000}.badge-warn{background:var(--warn-soft);color:var(--warn);border-color:#0000}.badge-accent{background:var(--accent-soft);color:var(--accent-ink);border-color:#0000}.badge-yolo{background:var(--yolo-soft);color:var(--yolo);border-color:#0000}.badge-long{background:var(--long-soft);color:var(--long);border-color:#0000}.failure{padding:var(--space-3)var(--space-4);border:1px solid var(--danger);border-radius:var(--radius);background:var(--danger-soft);color:var(--danger);margin:0}.skeleton{border-radius:var(--radius);background:linear-gradient(100deg,var(--surface-2)30%,var(--surface-3)50%,var(--surface-2)70%);animation:1.4s linear infinite shimmer;background-size:300% 100%;height:4rem}@keyframes shimmer{0%{background-position:100% 0}to{background-position:0 0}}button,input,select,textarea{font:inherit;color:inherit}button{display:inline-flex;justify-content:center;align-items: center;gap:var(--space-2);padding:0 var(--space-4);border:1px solid var(--accent);border-radius:var(--radius);background:var(--accent);color:var(--on-accent);font-weight:var(--weight-medium);cursor:pointer;touch-action:manipulation;transition:background-color var(--dur-fast)var(--ease-out),border-color var(--dur-fast)var(--ease-out),transform var(--dur-fast)var(--ease-out),opacity var(--dur)var(--ease-out);min-height:2.5rem}button:hover:not(:disabled){background:var(--accent-strong);border-color:var(--accent-strong)}button:active:not(:disabled){transform:scale(.97)}button.secondary,.tabs button{border-color:var(--control-border);color:var(--text);background:0 0}button.secondary:hover:not(:disabled),.tabs button:hover:not(:disabled){background:var(--surface-2);border-color:var(--control-border)}.tabs button[aria-selected=true],.tabs button[aria-pressed=true]{border-color:var(--accent);color:var(--accent)}button.danger{border-color:var(--danger);color:var(--danger);background:0 0}button.danger:hover:not(:disabled){background:var(--danger-soft);border-color:var(--danger)}button:disabled{opacity:.55;cursor:default}.icon-button{display:inline-flex;width:var(--touch);min-width:var(--touch);height:var(--touch);min-height:var(--touch);color:var(--muted);background:0 0;border-color:#0000;justify-content:center;align-items: center;padding:0}.icon-button:hover:not(:disabled){background:var(--surface-2);color:var(--text);border-color:#0000}.link-button{padding:0 var(--space-2);color:var(--accent);background:0 0;border-color:#0000;min-height:2rem}.link-button:hover:not(:disabled){background:var(--accent-soft);border-color:#0000}.danger-icon:hover:not(:disabled){background:var(--danger-soft);color:var(--danger)}input,select,textarea{padding:var(--space-2)var(--space-3);border:1px solid var(--control-border);border-radius:var(--radius);background:var(--surface);transition:border-color var(--dur-fast)var(--ease-out);width:100%;min-height:2.5rem}input:focus-visible{outline:2px solid var(--accent);outline-offset:0;border-color:var(--accent)}select:focus-visible{outline:2px solid var(--accent);outline-offset:0;border-color:var(--accent)}textarea:focus-visible{outline:2px solid var(--accent);outline-offset:0;border-color:var(--accent)}textarea{resize:vertical;line-height:var(--leading)}input[type=radio]:focus-visible{border-radius:50%}input[type=radio],input[type=checkbox]{accent-color:var(--accent);width:1.1rem;height:1.1rem;min-height:0}label{display:flex;gap:var(--space-1);font-size:var(--text-sm);color:var(--muted);flex-direction:column}label.inline{flex-direction:row;align-items: center}label.inline select{width:auto}fieldset{border:0;min-width:0;margin:0;padding:0}legend{margin-bottom:var(--space-2);font-size:var(--text-sm);color:var(--text);font-weight:var(--weight-medium);padding:0}.toolbar{display:flex;gap:var(--space-3);flex-wrap:wrap}.toolbar input{flex:1;width:auto;min-width:12rem}.tabs{display:flex;gap:var(--space-1)}.actions{display:flex;gap:var(--space-2);flex-wrap:wrap;justify-content:flex-end}.form{max-width:40rem}.form-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(14rem,1fr));gap:var(--space-3)}.back{font-size:var(--text-sm);text-decoration:none}.page-bar{display:flex;align-items: center;gap:var(--space-2);margin:calc(var(--space-2)*-1)calc(var(--space-2)*-1)0}.page-bar strong{font-size:var(--text-md)}.crash{display:flex;align-items: center;gap:var(--space-3);margin:var(--space-10)auto 0;padding:var(--space-6);border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface);box-shadow:var(--shadow-2);text-align:center;flex-direction:column;max-width:24rem}.crash p{color:var(--muted);margin:0}.crash-icon{display:grid;border-radius:var(--radius-full);background:var(--warn-soft);color:var(--warn);place-items: center;width:2.75rem;height:2.75rem}button.yolo-action{border-color:var(--yolo);background:var(--yolo);color:var(--bg)}button.yolo-action:hover:not(:disabled){border-color:var(--yolo);background:color-mix(in srgb,var(--yolo)88%,var(--text))}.switch{position:relative;border-color:var(--control-border);border-radius:var(--radius-full);background:var(--surface-3);transition:background-color var(--dur)var(--ease-out),border-color var(--dur)var(--ease-out);flex:none;width:2.75rem;min-width:2.75rem;height:1.65rem;min-height:1.65rem;padding:0}.switch:hover:not(:disabled){background:var(--border-strong);border-color:var(--control-border)}.switch-thumb{position:absolute;border-radius:var(--radius-full);background:var(--control-border);box-shadow:var(--shadow-1);transition:transform var(--dur)var(--ease-spring),background-color var(--dur)var(--ease-out);width:1.2rem;height:1.2rem;margin-top:-.6rem;top:50%;left:2px}.switch[aria-checked=true],.switch[aria-checked=true]:hover:not(:disabled){background:var(--accent);border-color:var(--accent)}.switch[aria-checked=true] .switch-thumb{background:var(--on-accent);transform:translate(1.1rem)}.segmented{display:inline-flex;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface-2);gap:2px;padding:3px}.segmented-wide{display:flex}.segmented-wide label{flex:1}.segmented label{position:relative;justify-content:center;align-items: center;gap:var(--space-2);padding:0 var(--space-3);border-radius:calc(var(--radius) - 3px);color:var(--muted);font-weight:var(--weight-medium);cursor:pointer;transition:background-color var(--dur)var(--ease-out),color var(--dur)var(--ease-out);flex-direction:row;min-height:2.25rem}.segmented label[data-checked=true]{background:var(--surface);color:var(--text);box-shadow:var(--shadow-1),inset 0 0 0 1px var(--border-strong)}.segmented input{position:absolute;opacity:0;cursor:pointer;width:100%;height:100%;inset:0}.segmented label:has(:focus-visible){outline:2px solid var(--accent)}.look-swatch{display:inline-flex;border:1px solid var(--control-border);border-radius:var(--radius-sm);gap:2px;padding:2px}.look-swatch i{display:block;border-radius:2px;width:.7rem;height:.9rem}.look-swatch[data-swatch=modern] i:first-child{background:var(--buncss-light,#f5f6f8)var(--buncss-dark,#0f1115)}.look-swatch[data-swatch=modern] i:nth-child(2){background:var(--buncss-light,#fff)var(--buncss-dark,#171a20)}.look-swatch[data-swatch=modern] i:nth-child(3){background:var(--buncss-light,#3a5bd9)var(--buncss-dark,#8ea4ff)}.look-swatch[data-swatch=camelot] i:first-child{background:var(--buncss-light,#f4ead5)var(--buncss-dark,#0f1726)}.look-swatch[data-swatch=camelot] i:nth-child(2){background:var(--buncss-light,#fbf5e6)var(--buncss-dark,#16213a)}.look-swatch[data-swatch=camelot] i:nth-child(3){background:var(--buncss-light,#b98a2c)var(--buncss-dark,#e6b94c)}.av-host{display:inline-block;user-select:none;flex:none;width:2.5rem;height:2.5rem;line-height:0}.av-host:empty{border-radius:var(--radius-full);background:var(--surface-3)}.av-host>svg{display:block;width:100%;height:100%}.av-host.static .av *{animation:none!important}.av-stack{position:relative;display:inline-block;flex:none}.av-stack-item{position:absolute;top:0}.toaster{position:fixed;z-index:50;left:0;right:0;bottom:calc(var(--tabbar-height) + var(--safe-bottom) + var(--space-3));display:flex;align-items: center;gap:var(--space-2);pointer-events:none;flex-direction:column}.app[data-fill]~.toaster{bottom:calc(5.5rem + var(--safe-bottom))}@media (min-width:720px){.toaster{bottom:var(--space-6)}}.toast{pointer-events:auto;display:flex;align-items: center;gap:var(--space-2);padding:var(--space-2)var(--space-2)var(--space-2)var(--space-4);border:1px solid var(--border-strong);border-radius:var(--radius);background:var(--raised);box-shadow:var(--shadow-2);font-size:var(--text-sm);animation:toast-in var(--dur-slow)var(--ease-spring)both;max-width:min(28rem,100vw - 2rem)}.toast[data-tone=danger]{border-color:var(--danger)}.toast-action{padding:0 var(--space-3);font-size:var(--text-sm);min-height:2rem}.toast .icon-button{width:2rem;min-width:2rem;height:2rem;min-height:2rem}@keyframes toast-in{0%{opacity:0;transform:translateY(12px)scale(.96)}}dialog{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--raised);color:var(--text);box-shadow:var(--shadow-3);padding:0}dialog::backdrop{background:var(--scrim);opacity:var(--sheet-progress,1);transition:opacity var(--dur)var(--ease-out)}dialog.sheet{overflow:hidden;opacity:0;transition:transform var(--dur-slow)var(--ease-out),opacity var(--dur)var(--ease-out);width:min(32rem,100vw - 2rem);max-height:min(85dvh,48rem);margin:auto;transform:translateY(16px)scale(.98)}dialog.sheet[open]{display:flex;flex-direction:column}dialog.sheet[data-state=open]{opacity:1;transform:none}dialog.sheet[data-state=closing]{opacity:0;transition-duration:var(--dur);transform:translateY(16px)scale(.98)}dialog.sheet[data-state=opening]::backdrop{opacity:0}dialog.sheet[data-state=closing]::backdrop{opacity:0}dialog.sheet[data-dragging]{transition:none}.sheet-grab{display:none;padding:var(--space-2)0 var(--space-1);touch-action:none;justify-content:center}.sheet-handle{border-radius:var(--radius-full);background:var(--border-strong);width:2.5rem;height:.3rem}.sheet-body{position:relative;display:flex;gap:var(--space-3);overflow-y:auto;padding:var(--space-5)var(--space-5)calc(var(--space-5) + var(--safe-bottom));overscroll-behavior:contain;flex-direction:column;flex:auto;min-height:0}.sheet-head{display:flex;justify-content:space-between;align-items: center;gap:var(--space-3);padding:var(--space-4)var(--space-4)var(--space-4)var(--space-5);border-bottom:1px solid var(--border);touch-action:none;flex:none}.sheet-head h2{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}.sheet-head button{touch-action:manipulation;flex:none}.sheet-head .icon-button{width:2.5rem;min-width:2.5rem;height:2.5rem;min-height:2.5rem}@media (min-width:720px){dialog.sheet.wide{width:min(56rem,100vw - 4rem)}}dialog.sheet.full{border:0;border-radius:0;width:100vw;max-width:none;height:100dvh;max-height:none;margin:0}@media (max-width:719px){dialog.sheet{border-radius:var(--radius-lg)var(--radius-lg)0 0;opacity:1;width:100%;max-width:none;margin:auto 0 0;transform:translateY(100%)}dialog.sheet[data-state=open]{transform:none}dialog.sheet[data-state=closing]{opacity:1;transform:translateY(100%)}.sheet-grab{display:flex}.sheet-head{padding:var(--space-3)var(--space-3)var(--space-3)var(--space-4)}.sheet-body{padding:var(--space-4)var(--space-4)calc(var(--space-4) + var(--safe-bottom))}}.menu{display:flex;list-style:none;flex-direction:column;margin:0;padding:0}.menu-item{display:flex;align-items: center;gap:var(--space-3);padding:var(--space-2)var(--space-1);border-radius:var(--radius);color:var(--text);text-align:left;text-decoration:none;font-weight:inherit;background:0 0;border:0;flex-direction:row;width:100%;min-height:3.5rem}.menu-link:hover,.menu-toggle:hover{background:var(--surface-2)}.menu-toggle{gap:var(--space-3);color:var(--text);font-size:var(--text-base);cursor:pointer;flex-direction:row}.menu-icon{display:grid;border-radius:var(--radius);background:var(--surface-2);color:var(--muted);flex:none;place-items: center;width:2.25rem;height:2.25rem}.menu-icon[data-tone=yolo]{background:var(--yolo-soft);color:var(--yolo)}.menu-icon[data-tone=long]{background:var(--long-soft);color:var(--long)}.menu-icon[data-tone=danger]{background:var(--danger-soft);color:var(--danger)}.menu-text{display:flex;flex-direction:column;flex:1;min-width:0}.menu-text .meta{font-weight:400}.more-list{display:flex;padding:var(--space-2);list-style:none;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);flex-direction:column;margin:0}.prose{overflow-wrap:anywhere}.prose>:first-child{margin-top:0}.prose>:last-child{margin-bottom:0}.prose p,.prose ul,.prose ol,.prose blockquote,.prose .code-block,.prose .table-wrap{margin:0 0 var(--space-3)}.prose ul,.prose ol{padding-left:1.4rem}.prose h1,.prose h2,.prose h3,.prose h4{margin:var(--space-4)0 var(--space-2);font-size:var(--text-md)}.prose blockquote{padding:0 var(--space-3);color:var(--muted);background:var(--surface-2);border-radius:var(--radius-sm)}.prose code{background:var(--surface-3);font-family:var(--font-mono);border-radius:4px;padding:.1em .35em;font-size:.88em}.code-block{position:relative}.code-block pre{padding:var(--space-3);overflow-x:auto;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface-2);font-size:var(--text-sm);margin:0}.code-block pre code{font-size:inherit;background:0 0;padding:0}.code-copy{position:absolute;opacity:0;transition:opacity var(--dur)var(--ease-out);width:2rem;min-width:2rem;height:2rem;min-height:2rem;top:.25rem;right:.25rem}.code-block:hover .code-copy{opacity:1}.code-copy:focus-visible{opacity:1}@media (hover:none){.code-copy{opacity:1}}.table-wrap{overflow-x:auto}.prose table{border-collapse:collapse;font-size:var(--text-sm)}.prose th,.prose td{padding:var(--space-1)var(--space-3);border:1px solid var(--border);text-align:left}.transcript{display:flex;gap:var(--space-3);list-style:none;flex-direction:column;margin:0;padding:0}.entry{padding:var(--space-3)var(--space-4);border:1px solid var(--border);border-radius:var(--radius);background:var(--surface)}.entry-user{background:var(--accent-soft)}.entry-compaction{color:var(--muted);border-style:dashed}.entry-tool{padding:var(--space-2)var(--space-4);font-size:var(--text-sm);background:0 0}.entry-tool summary{cursor:pointer;color:var(--muted)}.entry-tool pre{margin:var(--space-2)0 0;overflow:auto;white-space:pre-wrap;overflow-wrap:anywhere;max-height:20rem}.entry-head{display:flex;justify-content:space-between;gap:var(--space-2);margin-bottom:var(--space-1)}.role{font-size:var(--text-xs);font-weight:var(--weight-bold);text-transform:uppercase;letter-spacing:.04em}.call{display:block;margin-top:var(--space-2);font-size:var(--text-xs);color:var(--muted);overflow-wrap:anywhere}.theme-reveal::view-transition-old(root){animation:none;mix-blend-mode:normal}.theme-reveal::view-transition-new(root){animation:none;mix-blend-mode:normal}.theme-fade *,.theme-fade *:before,.theme-fade *:after{transition:background-color .24s var(--ease-out),color .24s var(--ease-out),border-color .24s var(--ease-out)!important}::view-transition-old(root){animation-duration:var(--dur-slow);animation-timing-function:var(--ease-out)}::view-transition-new(root){animation-duration:var(--dur-slow);animation-timing-function:var(--ease-out)}@media (max-width:719px),(pointer:coarse){button,input,select,textarea{min-height:var(--touch)}input[type=radio],input[type=checkbox]{min-height:0}select,textarea{font-size:var(--text-md)}input:where(:not(:-webkit-any([type=checkbox],[type=radio],[type=range],[type=color],[type=file]))){font-size:var(--text-md)}input:where(:not(:-moz-any([type=checkbox],[type=radio],[type=range],[type=color],[type=file]))){font-size:var(--text-md)}input:where(:not(:is([type=checkbox],[type=radio],[type=range],[type=color],[type=file]))){font-size:var(--text-md)}.switch{min-height:1.65rem}.link-button,.segmented label,.to-end,.prompt-details summary,.rail-link{min-height:var(--touch)}.prompt-details summary{display:flex;align-items: center}.code-copy,.toast .icon-button,.attached-chip .icon-button{width:var(--touch);min-width:var(--touch);height:var(--touch);min-height:var(--touch)}.back,.schedule a,.meta a{display:inline-flex;min-height:var(--touch);align-items: center}kbd{display:none}}.search-button{gap:var(--space-3);color:var(--muted)}.search-button span{display:none}@media (min-width:720px){.search-button span{display:inline}}.header-button{color:var(--text);background:0 0;border-color:#0000}.header-button:hover:not(:disabled){background:var(--surface-2);border-color:#0000}.switcher-search .switcher-add{margin-right:calc(var(--space-2)*-1);flex:none}.room-list{display:flex;gap:var(--space-2);list-style:none;flex-direction:column;margin:0;padding:0}.room-row{display:flex;align-items: center;gap:var(--space-3);padding:var(--space-3)var(--space-4);border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface);box-shadow:var(--shadow-1);color:inherit;text-decoration:none;transition:transform var(--dur)var(--ease-out),border-color var(--dur-fast)var(--ease-out),box-shadow var(--dur)var(--ease-out);min-height:4.25rem}.room-row:hover{border-color:var(--agent-accent,var(--accent));box-shadow:var(--shadow-2)}.room-row[aria-current=page]{border-color:var(--agent-accent,var(--accent));background:color-mix(in srgb,var(--agent-accent,var(--accent))14%,var(--surface))}.room-row:active{transform:scale(.99)}.room-row[data-home]{padding:var(--space-4);background:color-mix(in srgb,var(--agent-accent,var(--accent))9%,var(--surface))}.room-row-main{display:flex;flex-direction:column;flex:1;gap:2px;min-width:0}.room-row-top{display:flex;align-items: center;gap:var(--space-2)}.room-row-top strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.room-row-time{font-size:var(--text-xs);color:var(--muted);flex:none;margin-left:auto}.room-row-preview{display:flex;align-items: center;gap:var(--space-2);color:var(--muted);font-size:var(--text-sm);min-width:0}.room-row-preview>span:last-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.room-row-badges{display:flex;gap:var(--space-1);empty-cells:hide;flex-wrap:wrap}.room-row-badges:empty{display:none}.room-row-chevron{color:var(--muted);transition:transform var(--dur)var(--ease-out);flex:none}.room-row:hover .room-row-chevron{transform:translate(3px)}.thread-group{display:flex;gap:var(--space-1);margin:var(--space-2)0 var(--space-2)var(--space-5);flex-direction:column}.thread-list{display:flex;gap:var(--space-1);list-style:none;flex-direction:column;margin:0;padding:0}.thread-item{position:relative;overflow:hidden;border-radius:var(--radius-lg)}.thread-card{position:relative;display:flex;border:1px solid var(--border);border-radius:var(--radius-lg);background:color-mix(in srgb,var(--agent-accent,var(--accent))10%,var(--surface));touch-action:pan-y;transition:border-color var(--dur-fast)var(--ease-out);align-items: center}.thread-card[data-closed]{background:var(--surface);color:var(--muted)}.thread-card:hover{border-color:var(--agent-accent,var(--accent))}.thread-card:has(.thread-link[aria-current=page]){border-color:var(--agent-accent,var(--accent))}.thread-link{font-weight:600}.thread-card .thread-link{display:flex;align-items: center;gap:var(--space-3);padding:var(--space-2)var(--space-3);border-radius:var(--radius-lg);color:inherit;font-size:var(--text-sm);text-decoration:none;flex:1;min-width:0;min-height:3.5rem}.thread-card .thread-link:focus-visible{outline:2px solid var(--focus,var(--accent));outline-offset:-2px}.thread-more:focus-visible{outline:2px solid var(--focus,var(--accent));outline-offset:-2px}.thread-row-icon{color:var(--muted);flex:none}.thread-card-main{display:flex;flex-direction:column;flex:1;gap:2px;min-width:0}.thread-card-top,.thread-card-meta{display:flex;align-items: center;gap:var(--space-2);min-width:0}.thread-card-meta{flex-wrap:wrap}.thread-card-meta .room-row-time{white-space:nowrap}.thread-title{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0}.thread-card:not([data-closed]) .thread-title{color:var(--text)}.thread-reveal{position:absolute;display:flex;align-items: center;gap:var(--space-2);padding-left:var(--space-4);border-radius:var(--radius-lg);background:var(--danger-soft);color:var(--danger);font-size:var(--text-sm);font-weight:var(--weight-medium);inset:0}.thread-card[data-armed]{border-color:var(--danger)}.thread-more,.thread-clear{min-width:var(--touch);min-height:var(--touch);color:var(--muted);font-size:var(--text-xs);background:0 0;border-color:#0000;flex:none;font-weight:400}.thread-more:hover:not(:disabled),.thread-clear:hover:not(:disabled){background:var(--surface-2);color:var(--text);border-color:#0000}.thread-more{margin-right:var(--space-1);padding:0}.thread-clear{position:absolute;padding:0 var(--space-3);top:0;right:0}.thread-finished{position:relative}@media (prefers-reduced-motion:reduce){.thread-card{transition:none}}.thread-closed>summary{display:flex;min-height:var(--touch);padding:0 var(--space-3);color:var(--muted);font-size:var(--text-xs);cursor:pointer;list-style:none;align-items: center}.thread-closed>summary::-webkit-details-marker{display:none}.thread-closed>summary:before{content:"▸";margin-right:var(--space-2)}.thread-closed[open]>summary:before{content:"▾"}.thread-closed>summary:hover{color:var(--text)}.thread-closed[open]>summary{margin-bottom:var(--space-1)}.thread-finished>.thread-closed>summary{padding-right:6rem}.line .prose{text-align:center;flex:0 auto}.line .prose p{margin:0}.typing{display:inline-flex;flex:none;gap:3px}.typing i{border-radius:var(--radius-full);background:var(--success);animation:bounce 1.1s var(--ease-in-out)infinite;width:5px;height:5px}.typing i:nth-child(2){animation-delay:.15s}.typing i:nth-child(3){animation-delay:.3s}@keyframes bounce{0%,60%,to{transform:none;opacity:.45}30%{transform:translateY(-4px);opacity:1}}.room{position:relative;display:flex;background:var(--bg);flex-direction:column;flex:1;min-height:0}.room,.room-scroll,.composer{touch-action:pan-y pinch-zoom}.room-head{display:flex;align-items: center;gap:var(--space-3);padding:calc(var(--space-2) + var(--safe-top))var(--space-3)var(--space-2)var(--space-2);border-bottom:1px solid var(--border);background:color-mix(in srgb,var(--surface)92%,transparent);backdrop-filter:blur(14px);z-index:4}.room-title{display:flex;flex-direction:column;flex:1;min-width:0}.room-title h1{overflow:hidden;font-size:var(--text-md);text-overflow:ellipsis;white-space:nowrap}.room-status{font-size:var(--text-xs);color:var(--muted)}.room-status[data-working]{color:var(--success)}@media (min-width:720px){.room-back{display:none}.room-head{padding-left:var(--space-4)}}button.room-name{display:inline;border-radius:var(--radius-sm);color:inherit;font:inherit;text-align:left;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;background:0 0;border:0;max-width:100%;min-height:0;padding:0}button.room-name:hover:not(:disabled){text-decoration:underline;text-decoration-color:var(--muted);text-underline-offset:.2em;background:0 0}.room-muted,.muted-mark{margin-left:var(--space-2);vertical-align:-.1em;color:var(--muted);flex:none}button.room-picture{border-radius:var(--radius-full);background:0 0;border:0;flex:none;min-height:0;padding:0}button.room-picture:hover:not(:disabled){background:0 0}.switcher{position:fixed;z-index:30;--switcher-progress:0;visibility:hidden;pointer-events:none;transition:visibility 0s linear var(--dur-slow);inset:0}.switcher[data-state=open]{--switcher-progress:1}.switcher[data-state=open],.switcher[data-state=dragging]{visibility:visible;pointer-events:auto;transition:none}.switcher-scrim{position:absolute;background:var(--scrim);opacity:var(--switcher-progress);transition:opacity var(--dur-slow)var(--ease-out);touch-action:pan-y;inset:0}.switcher-panel{position:absolute;display:flex;padding:var(--safe-top)0 var(--safe-bottom)var(--safe-left);border-right:1px solid var(--border);background:var(--surface);box-shadow:var(--shadow-2);outline:none;transform:translate3d(calc((var(--switcher-progress) - 1)*100%),0,0);transition:transform var(--dur-slow)var(--ease-out);touch-action:pan-y;flex-direction:column;width:min(80vw,360px);inset:0 auto 0 0}.switcher[data-state=dragging] .switcher-scrim,.switcher[data-state=dragging] .switcher-panel{transition:none}.switcher-search{display:flex;align-items: center;gap:var(--space-2);margin:var(--space-3)var(--space-3)var(--space-1);padding:0 var(--space-3);border:1px solid var(--control-border);border-radius:var(--radius-full);background:var(--surface-2);color:var(--muted)}.switcher-search svg{flex:none}.switcher-search input{min-height:var(--touch);color:var(--text);outline:none;background:0 0;border:0;min-width:0;padding:0;font-size:1rem}.switcher-search:focus-within{border-color:var(--accent)}.switcher-scroll{overflow-y:auto;touch-action:pan-y;overscroll-behavior:contain;padding:0 var(--space-2)var(--space-3);flex:1;min-height:0}.switcher-heading{margin:var(--space-3)var(--space-2)var(--space-1);color:var(--muted);font-size:var(--text-xs);font-weight:var(--weight-medium)}.switcher-heading[data-waiting]{color:var(--warn)}.switcher-list{display:flex;list-style:none;flex-direction:column;gap:2px;margin:0;padding:0}.switcher-row{display:flex;align-items: center;gap:var(--space-3);padding:var(--space-2)var(--space-3);border-radius:var(--radius);color:inherit;text-decoration:none;min-height:3.5rem}.switcher-row:hover,.switcher-row:active{background:var(--surface-2)}.switcher-row[aria-current=page]{background:color-mix(in srgb,var(--agent-accent,var(--accent))14%,var(--surface))}.switcher-picture{position:relative;display:inline-flex;flex:none}.switcher-dot{position:absolute;border:2px solid var(--surface);border-radius:var(--radius-full);background:var(--warn);width:.7rem;height:.7rem;top:-1px;right:-1px}.switcher-name{display:flex;flex-direction:column;flex:1;min-width:0}.switcher-name strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.switcher-working{display:inline-flex;align-items: center;gap:var(--space-2);color:var(--success);font-size:var(--text-xs)}.switcher-mode{display:inline-flex;flex:none}.switcher-mode[data-mode=yolo]{color:var(--yolo)}.switcher-mode[data-mode=long]{color:var(--long)}.switcher-mode[data-mode=muted]{color:var(--muted)}.mode-banner{display:grid;grid-template-rows:0fr;transition:grid-template-rows var(--dur-slow)var(--ease-out);z-index:3}.mode-banner[data-open=true]{grid-template-rows:1fr}.mode-banner-inner{overflow:hidden;min-height:0}.mode-lines{display:flex;flex-direction:column}.mode-line{display:flex;align-items: center;gap:var(--space-2);padding:0 var(--space-2)0 var(--space-4);font-size:var(--text-sm);font-weight:var(--weight-medium)}.mode-line>span{flex:1}.mode-line[data-mode=yolo]{background:var(--yolo-soft);color:var(--yolo)}.mode-line[data-mode=long]{background:var(--long-soft);color:var(--long)}.mode-line .link-button{color:inherit;text-decoration:underline}.mode-line[data-mode=yolo] svg{animation:flash 2.6s var(--ease-in-out)infinite}@keyframes flash{50%{opacity:.45}}.room-scroll{overflow-anchor:auto;overflow-y:auto;overscroll-behavior:contain;scroll-padding-bottom:var(--space-4);flex:1;min-height:0}.room-content{display:flex;gap:var(--space-3);padding:var(--space-4)var(--space-3);flex-direction:column;justify-content:flex-end;width:100%;max-width:52rem;min-height:100%;margin:0 auto}.older{align-self: center}.messages{display:flex;list-style:none;flex-direction:column;gap:2px;margin:0;padding:0}.message{display:flex;align-items: flex-end;gap:var(--space-2);content-visibility:auto;contain-intrinsic-size:auto 6rem}@supports not (overflow-anchor: auto){.message{content-visibility:visible}}.message[data-header]{margin-top:var(--space-3)}.message[data-mine]{justify-content:flex-end}.message[data-enter],.line[data-enter],.slot[data-enter]{animation:arrive var(--dur-slow)var(--ease-out)both}@keyframes arrive{0%{opacity:0;transform:translateY(10px)scale(.985)}}.message-avatar{flex:none;align-self: flex-start;width:32px}.message-main{display:flex;flex-direction:column;gap:2px;min-width:0;max-width:min(40rem,86%)}.message[data-mine] .message-main{align-items: flex-end}.message-meta{display:flex;align-items:baseline;gap:var(--space-2);padding:0 var(--space-1);font-size:var(--text-xs);color:var(--muted)}.message-meta strong{color:var(--text);font-size:var(--text-sm)}.bubble{padding:var(--space-2)var(--space-3);border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface);box-shadow:var(--shadow-1);min-width:0}.message[data-mine] .bubble{background:var(--accent);color:var(--on-accent);border-bottom-right-radius:var(--radius-sm);border-color:#0000}.message[data-mine] .bubble a,.message[data-mine] .bubble code{color:inherit}.message[data-mine] .prose code,.message[data-mine] .prose blockquote{background:#ffffff2e}.message[data-mine] .code-block pre{color:inherit;background:#0003;border-color:#0000}.message:not([data-mine]) .bubble{border-bottom-left-radius:var(--radius-sm)}.message[data-live] .bubble{border-style:dashed}.message[data-pending=sending] .bubble{opacity:.6}.message[data-pending=failed] .bubble{background:var(--danger-soft);border-color:var(--danger);color:var(--danger)}.pending-actions{justify-content:flex-end}.failure-text{color:var(--danger)}.files{display:flex;gap:var(--space-2);margin:var(--space-2)0 0;list-style:none;flex-wrap:wrap;padding:0}.bubble>.files:first-child{margin-top:0}.file-image{display:block;border-radius:var(--radius);object-fit:cover;max-width:min(100%,22rem);max-height:18rem}.file-chip{display:inline-flex;align-items: center;gap:var(--space-2);padding:var(--space-1)var(--space-3);border-radius:var(--radius-full);background:var(--surface-2);color:var(--text);font-size:var(--text-sm);text-decoration:none}.message[data-mine] .file-chip{color:inherit;background:#fff3}.line{display:flex;justify-content:center;align-items: center;gap:var(--space-2);margin:var(--space-2)0;font-size:var(--text-xs);color:var(--muted)}.day{display:flex;margin:var(--space-4)0 var(--space-1);font-size:var(--text-xs);color:var(--muted);justify-content:center}.day span{padding:0 var(--space-3);border-radius:var(--radius-full);background:var(--surface-2);line-height:1.5rem}.slot{list-style:none;margin:var(--space-2)0}.progress{display:flex;gap:var(--space-2);padding:var(--space-3);border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface);animation:arrive var(--dur-slow)var(--ease-out)both;flex-direction:column}.progress-head{display:flex;align-items: center;gap:var(--space-3);font-size:var(--text-sm);color:var(--muted)}.progress-label{flex:1}.progress-bar{position:relative;overflow:hidden;border-radius:var(--radius-full);background:var(--surface-3);width:2.5rem;height:.3rem}.progress-bar:after{content:"";position:absolute;border-radius:inherit;background:var(--agent-accent,var(--accent));animation:sweep 1.3s var(--ease-in-out)infinite;width:60%;inset:0}@keyframes sweep{0%{transform:translate(-100%)}to{transform:translate(170%)}}.chips{display:flex;gap:var(--space-1);list-style:none;flex-wrap:wrap;margin:0;padding:0}.chip{display:inline-flex;align-items: center;gap:var(--space-2);padding:0 var(--space-3);border-radius:var(--radius-full);background:var(--surface-2);font-family:var(--font-mono);font-size:var(--text-xs);animation:chip-in var(--dur)var(--ease-spring)both;max-width:100%;line-height:1.6rem}@keyframes chip-in{0%{opacity:0;transform:scale(.85)}}.chip-more-item{display:contents}.chip-more{border:1px dashed var(--border);color:var(--muted);font:inherit;cursor:pointer;background:0 0;min-height:0}.chip-more:hover:not(:disabled){border-color:var(--border);background:var(--surface-2);color:var(--text)}.chip-dot{border-radius:var(--radius-full);background:var(--muted);flex:none;width:.45rem;height:.45rem}.chip[data-status=running] .chip-dot{background:var(--accent);animation:pulse-dot 1s var(--ease-in-out)infinite}.chip[data-status=ok] .chip-dot{background:var(--success)}.chip[data-status=failed] .chip-dot,.chip[data-status=refused] .chip-dot{background:var(--danger)}@keyframes pulse-dot{50%{transform:scale(1.5);opacity:.5}}.chip-preview{overflow:hidden;color:var(--muted);text-overflow:ellipsis;white-space:nowrap;max-width:14rem}.progress-flow{display:block;text-align:left}.progress-text{overflow:hidden;color:var(--muted);font-size:var(--text-sm);text-align:left;white-space:pre-wrap;overflow-wrap:anywhere;-webkit-mask-image:linear-gradient(#0000,#000 40%);mask-image:linear-gradient(#0000,#000 40%);display:flex;background:0 0;border:0;flex-direction:column;justify-content:flex-end;width:100%;min-height:0;max-height:4.6em;padding:0;font-weight:400;line-height:1.5}.progress-text:hover:not(:disabled){background:0 0;border:0}.progress-text[data-expanded=true]{overflow-y:auto;-webkit-mask-image:none;mask-image:none;max-height:40dvh}.caret{display:inline-block;vertical-align:text-bottom;background:var(--accent);animation:1s steps(2,start) infinite blink;width:.5ch;height:1.05em;margin-left:2px}@keyframes blink{to{visibility:hidden}}.waiting-button{padding:0 var(--space-2);gap:var(--space-1);border-radius:var(--radius-full);background:var(--warn);color:var(--bg);font-weight:var(--weight-bold);border-color:#0000;min-height:2rem}.waiting-button:hover:not(:disabled){background:var(--warn)}@media (min-width:720px){.room-head .waiting-button{display:none}}.to-end{position:absolute;right:var(--space-4);z-index:3;padding:0 var(--space-3);border-radius:var(--radius-full);box-shadow:var(--shadow-2);animation:toast-in var(--dur-slow)var(--ease-spring)both;min-height:2.25rem;bottom:5.5rem}.room-note,.offline-note{padding:var(--space-3)var(--space-4);text-align:center;font-size:var(--text-sm);color:var(--muted);background:var(--surface);border-top:1px solid var(--border);margin:0}.offline-banner{display:flex;justify-content:center;align-items: center;gap:var(--space-2);padding:var(--space-2)var(--space-4);background:var(--warn-soft);color:var(--warn);font-size:var(--text-sm);font-weight:var(--weight-medium);animation:banner-in var(--dur-slow)var(--ease-out)both}@keyframes banner-in{0%{opacity:0;transform:translateY(-6px)}}.spinner{border-radius:var(--radius-full);animation:.8s linear infinite spin;border:2px solid;border-right-color:#0000;flex:none;width:.9rem;height:.9rem}@keyframes spin{to{transform:rotate(360deg)}}.pending-note{color:var(--muted)}.composer{display:flex;gap:var(--space-2);padding:var(--space-2)var(--space-3)calc(var(--space-2) + var(--safe-bottom));flex-direction:column;width:100%;max-width:52rem;margin:0 auto}.composer-row{display:flex;align-items: flex-end;gap:var(--space-1);padding:var(--space-1);border:1px solid var(--control-border);background:var(--surface);box-shadow:var(--shadow-1);transition:border-color var(--dur-fast)var(--ease-out),box-shadow var(--dur)var(--ease-out);border-radius:1.5rem}.composer-row:focus-within{border-color:var(--agent-accent,var(--accent));box-shadow:0 0 0 3px color-mix(in srgb,var(--agent-accent,var(--accent))24%,transparent)}.composer textarea{min-height:var(--touch);padding:.7rem var(--space-2);resize:none;background:0 0;border:0;flex:1;max-height:200px;font-size:1rem}.composer textarea:focus-visible{outline:none}.composer-send{width:var(--touch);height:var(--touch);border-radius:var(--radius-full);flex:none;padding:0}.composer-send:disabled{background:var(--surface-3);color:var(--muted);border-color:#0000}.composer-stop{border-radius:var(--radius-full);background:var(--danger-soft);color:var(--danger);flex:none}.composer-stop:hover:not(:disabled){background:var(--danger-soft);color:var(--danger);box-shadow:inset 0 0 0 1px var(--danger)}.attached{display:flex;gap:var(--space-1);list-style:none;flex-wrap:wrap;margin:0;padding:0}.attached-chip{display:inline-flex;align-items: center;gap:var(--space-2);padding:0 0 0 var(--space-3);border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface);font-size:var(--text-sm);animation:chip-in var(--dur)var(--ease-spring)both;max-width:100%}.chip-body{display:flex;text-align:left;flex-direction:column;min-width:0}.chip-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:14rem}.chip-body .meta{overflow:hidden;font-size:var(--text-xs);text-overflow:ellipsis;white-space:nowrap;max-width:14rem}.chip-take{display:inline-flex;align-items: center;gap:var(--space-2);padding:var(--space-1)0;color:inherit;background:0 0;border:0;min-height:0;font-weight:400}.chip-take:hover:not(:disabled){color:var(--accent);background:0 0;border:0}.attached-chip[data-state=uploading]{opacity:.6}.attached-chip[data-state=failed]{border-color:var(--danger);color:var(--danger)}.attached-chip .icon-button{width:2rem;min-width:2rem;height:2rem;min-height:2rem}.prompt{display:flex;gap:var(--space-3);padding:var(--space-4);border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface);box-shadow:var(--shadow-2);transition:box-shadow var(--dur-slow)var(--ease-out),opacity var(--dur-slow)var(--ease-out);flex-direction:column}.prompt-action{background:linear-gradient(180deg,var(--accent-soft),var(--surface)3.5rem)}.prompt-timeout{background:linear-gradient(180deg,var(--warn-soft),var(--surface)3.5rem)}.prompt-ask{background:linear-gradient(180deg,var(--long-soft),var(--surface)3.5rem)}.prompt[data-ended]{box-shadow:var(--shadow-1);background:var(--surface)}.prompt-head{display:flex;align-items: center;gap:var(--space-2);flex-wrap:wrap}.prompt-icon{display:grid;border-radius:var(--radius);background:var(--accent-soft);color:var(--accent-ink);place-items: center;width:1.9rem;height:1.9rem}.prompt-timeout .prompt-icon{background:var(--warn-soft);color:var(--warn)}.prompt-ask .prompt-icon{background:var(--long-soft);color:var(--long)}.prompt-outcome{display:inline-flex;align-items: center;gap:var(--space-1);padding:0 var(--space-2);border-radius:var(--radius-full);background:var(--surface-2);color:var(--muted);font-size:var(--text-xs);animation:chip-in var(--dur)var(--ease-spring)both;margin-left:auto;line-height:1.4rem}.prompt-outcome[data-outcome=approved],.prompt-outcome[data-outcome=answered]{background:var(--success-soft);color:var(--success)}.prompt-outcome[data-outcome=declined],.prompt-outcome[data-outcome=cancelled]{background:var(--danger-soft);color:var(--danger)}.prompt-meta{color:var(--muted);font-size:var(--text-xs);margin:0}.collapse{display:grid;grid-template-rows:0fr;opacity:0;transition:grid-template-rows var(--dur-slow)var(--ease-out),opacity var(--dur)var(--ease-out)}.collapse[data-open=true]{grid-template-rows:1fr;opacity:1}.collapse-inner{display:flex;gap:var(--space-3);overflow:hidden;flex-direction:column;min-height:0;margin:-3px;padding:3px}.prompt-details{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface-2);font-size:var(--text-sm)}.prompt-details summary{padding:var(--space-2)var(--space-3);cursor:pointer;font-weight:var(--weight-medium)}.prompt-details>:not(summary){padding:0 var(--space-3)var(--space-3);margin:0}.prompt-input{overflow:auto;font-family:var(--font-mono);font-size:var(--text-xs);white-space:pre-wrap;overflow-wrap:anywhere;max-height:14rem}.prompt-files{list-style:none}.prompt-files li{display:flex;align-items: center;gap:var(--space-2)}.copy-action{align-self: flex-start}.field,.options{display:flex;gap:var(--space-2);flex-direction:column}.prompt textarea{resize:none}.prompt-answer{padding:var(--space-2)var(--space-3);border-radius:var(--radius);background:var(--surface-2);font-size:var(--text-sm);list-style:none;margin:0}.option{align-items: flex-start;gap:var(--space-3);min-height:var(--touch);padding:var(--space-2)var(--space-3);border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);color:var(--text);font-size:var(--text-base);cursor:pointer;transition:border-color var(--dur-fast)var(--ease-out),background-color var(--dur-fast)var(--ease-out);flex-direction:row}.option:hover{border-color:var(--border-strong)}.option[data-checked=true]{border-color:var(--accent);background:var(--accent-soft)}.option input{margin-top:.15rem}.option span{display:flex;flex-direction:column}.option-preview{padding:var(--space-3);overflow:auto;border-radius:var(--radius);background:var(--surface-2);font-family:var(--font-mono);font-size:var(--text-xs);white-space:pre-wrap;animation:arrive var(--dur)var(--ease-out)both;max-height:12rem;margin:0}dialog.palette{width:min(36rem,100vw - 1.5rem);max-height:min(70dvh,32rem);margin:12vh auto auto}dialog.palette .sheet-body{gap:0;padding:0}@media (max-width:719px){dialog.palette{margin:calc(var(--safe-top) + .5rem)auto auto;border-radius:var(--radius-lg);border-bottom:1px solid var(--border);opacity:0;width:calc(100vw - 1rem);transform:translateY(-12px)scale(.98)}dialog.palette[data-state=open]{opacity:1;transform:none}dialog.palette[data-state=closing]{opacity:0;transform:translateY(-12px)scale(.98)}dialog.palette .sheet-grab{display:none}}.palette-input{display:flex;align-items: center;gap:var(--space-3);padding:0 var(--space-4);border-bottom:1px solid var(--border);color:var(--muted)}.palette-input input{color:var(--text);background:0 0;border:0;min-height:3.25rem;font-size:1rem}.palette-input input:focus-visible{outline:none}.palette-list{padding:var(--space-2);overflow-y:auto;list-style:none;margin:0}.palette-list a{display:flex;align-items: center;gap:var(--space-3);min-height:var(--touch);padding:0 var(--space-3);border-radius:var(--radius);color:var(--text);text-decoration:none}.palette-list li[data-active] a,.palette-list a[aria-current=true]{background:var(--accent-soft);color:var(--accent-ink)}.palette-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1}.palette-icon{display:grid;border-radius:var(--radius-full);background:var(--surface-2);place-items: center;width:28px;height:28px}.palette-empty{padding:var(--space-4);text-align:center;color:var(--muted)}.profile-head{display:flex;align-items: center;gap:var(--space-4)}.profile-head>div{display:flex;gap:var(--space-2);flex-direction:column;align-items: flex-start}.schedule-list{display:flex;gap:var(--space-3);list-style:none;flex-direction:column;margin:0;padding:0}.schedule{display:flex;align-items: flex-start;gap:var(--space-3)}.schedule-main{display:flex;gap:var(--space-1);flex-direction:column;flex:1;min-width:0}.schedule-prompt{overflow:hidden;display:-webkit-box;-webkit-line-clamp:3;color:var(--text);overflow-wrap:anywhere;-webkit-box-orient:vertical;margin:0}.split{display:grid;grid-template-columns:minmax(18rem,22rem)minmax(0,1fr);flex:1;min-height:0}.split-list{overflow-y:auto;border-right:1px solid var(--border);background:var(--bg);min-height:0}.split-list .page[data-column]{padding:var(--space-4);gap:var(--space-4);max-width:none}.split-list .search-button span{display:none}.split-detail{display:flex;min-width:0;min-height:0}.split-detail .room{min-width:0}.agent-sheet .form{max-width:none}.agent-sheet h3{font-size:var(--text-md)}.field-head{display:flex;justify-content:space-between;align-items: center;gap:var(--space-3)}.field-label,.agent-sheet legend{font-size:var(--text-sm);color:var(--muted);font-weight:var(--weight-medium)}button.compact{padding:0 var(--space-3);font-size:var(--text-sm);min-height:2rem}.option-chips{display:flex;gap:var(--space-2);overflow-y:auto;overscroll-behavior:contain;flex-wrap:wrap;max-height:10.5rem}button.option-chip{padding:0 var(--space-3);border-color:var(--control-border);border-radius:var(--radius-full);background:var(--surface);color:var(--text);font-size:var(--text-sm);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%;min-height:2.25rem;font-weight:400}button.option-chip:hover:not(:disabled){border-color:var(--accent);background:var(--surface-2)}button.option-chip[aria-pressed=true],button.option-chip[aria-pressed=true]:hover:not(:disabled){border-color:var(--accent);background:var(--accent);color:var(--on-accent)}textarea.prompt-full{resize:none;font-family:var(--font-mono);font-size:var(--text-sm);flex:1;min-height:12rem}@media (max-width:719px),(pointer:coarse){textarea.prompt-full{font-size:var(--text-md)}}.review-fields{display:flex;gap:var(--space-2);list-style:none;flex-direction:column;margin:0;padding:0}.review-fields li{display:flex;align-items:baseline;gap:var(--space-2);font-size:var(--text-sm);flex-wrap:wrap}.review-before{color:var(--muted);text-decoration:line-through}pre.diff{padding:var(--space-2)0;overflow:auto;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);font-family:var(--font-mono);font-size:var(--text-xs);max-height:18rem;margin:0;line-height:1.5}.diff-line{display:block;padding:0 var(--space-3)0 0;white-space:pre-wrap;overflow-wrap:anywhere}.diff-line[data-kind=add]{background:color-mix(in srgb,var(--success)16%,transparent)}.diff-line[data-kind=del]{background:color-mix(in srgb,var(--danger)16%,transparent)}.diff-mark{display:inline-block;text-align:center;color:var(--muted);user-select:none;width:1.5rem}.field-tools{display:inline-flex;align-items: center;gap:var(--space-2)}.sheet.full .field textarea.prompt-full{min-height:55vh}.sheet.full .sheet-body>.stack,.sheet.full .review,.sheet.full .review>.field{flex:1;min-height:0}.sheet.full .review pre.diff{flex:1;min-height:12rem;max-height:none}.skill-lock{display:flex;align-items: center;gap:var(--space-2)}.history .menu-item[aria-pressed=true]{background:var(--surface-2)}[data-hold]{-webkit-touch-callout:none;-webkit-user-select:none;user-select:none}.room-content{-webkit-user-select:none;user-select:none}[data-hold=text] .bubble{-webkit-user-select:text;user-select:text}.message[data-hold]:focus-visible{outline:2px solid var(--focus,var(--accent));outline-offset:2px;border-radius:var(--radius-lg)}.action-popover{position:fixed;z-index:60;display:flex;overflow-y:auto;padding:var(--space-1);border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface);box-shadow:var(--shadow-2);outline:none;animation:popover-in var(--dur)var(--ease-out)both;flex-direction:column;min-width:13rem;max-width:min(22rem,100vw - 16px);max-height:calc(100dvh - 16px)}@keyframes popover-in{0%{opacity:0;transform:translateY(-4px)scale(.98)}}.action-popover .menu-item{padding:var(--space-1)var(--space-2);font-size:var(--text-sm);cursor:pointer;min-height:2.5rem}.action-popover .menu-icon{width:1.75rem;height:1.75rem}.action-items .menu-item{cursor:pointer}.action-items .menu-item:hover{background:var(--surface-2)}.action-items .menu-item:focus-visible{background:var(--surface-2)}.action-items .menu-item[data-tone=danger] strong{color:var(--danger)}.action-items .menu-check{color:var(--accent);flex:none;margin-left:auto}.action-popover .menu-item[role]{width:100%}.rt-table{position:relative;display:flex;aspect-ratio:10/11;flex-direction:column;width:100%;min-height:0;max-height:100%}.rt-table[data-variant=full]:not([data-list]){aspect-ratio:auto;flex:1 1 0;min-height:16rem}.rt-table[data-variant=compact]{aspect-ratio:auto;flex:none;height:120px}.rt-table-stage{position:relative;flex:1 1 0;min-height:0}.rt-table[data-list]{aspect-ratio:auto;height:100%}.rt-table[data-list] .rt-table-stage{aspect-ratio:10/11;flex:none;max-height:60%}.rt-table[data-list] .rt-table-stage>ul{display:none}.rt-table-list{overflow:auto;display:grid;grid-template-columns:repeat(auto-fill,minmax(8.5rem,1fr));list-style:none;flex:auto;gap:.4rem;min-height:0;margin:0;padding:.5rem}.rt-table-list button{display:flex;color:inherit;font:inherit;text-align:start;cursor:pointer;background:0 0;border:1px solid;border-radius:.5rem;align-items: center;gap:.5rem;width:100%;min-height:2.75rem;padding:.4rem .6rem}.rt-table-list button:before{content:"";background:var(--seat);border-radius:50%;flex:none;width:.75rem;height:.75rem}.t2d{position:relative;overflow:hidden;user-select:none;-webkit-user-select:none;width:100%;height:100%}.t2d svg{display:block;width:100%;height:100%}.t2d .seat{cursor:pointer;outline:none}.t2d .seat:focus-visible .plate{stroke:currentColor;stroke-width:3}.t2d .seat .lift,.t2d .seat .halo,.t2d .seat .badge,.t2d .seat .orbit,.t2d .seat .beam{transform-box:fill-box;transform-origin:center}.t2d .seat .halo{opacity:0;transition:opacity .35s}.t2d .seat .badge{opacity:0;transition:opacity .25s,transform .35s cubic-bezier(.3,1.6,.5,1);transform:scale(.4)}.t2d .seat .orbit{opacity:0;transition:opacity .3s}.t2d .seat .beam{opacity:0;transition:opacity .35s}.t2d .seat:hover .halo{opacity:.35}.t2d.focus .seat:not([data-focus]) .lift{opacity:.7}.t2d .seat[data-focus] .lift{transform:scale(1.06)}.t2d.dim .seat:not([data-state=speaking]) .lift{opacity:.78}.t2d .seat[data-state=idle] .lift{animation:3.4s ease-in-out infinite t2d-breathe}.t2d .seat[data-state=thinking] .halo{opacity:.25}.t2d .seat[data-state=thinking] .orbit{opacity:1;animation:2.6s linear infinite t2d-spin}.t2d .seat[data-state=working] .halo{opacity:.7;animation:1.1s ease-in-out infinite t2d-pulse}.t2d .seat[data-state=working] .lift{animation:.55s ease-in-out infinite t2d-bob}.t2d .seat[data-state=waiting] .halo{opacity:.8;animation:1.7s ease-in-out infinite t2d-pulse}.t2d .seat[data-state=waiting] .badge{opacity:1;animation:1.6s ease-in-out infinite t2d-wave;transform:scale(1)}.t2d .seat[data-state=waiting] .lift{transform:translateY(2px)}.t2d .seat[data-state=speaking] .halo{opacity:.85}.t2d .seat[data-state=speaking] .beam{opacity:1}.t2d .seat[data-state=speaking] .lift{animation:.5s ease-in-out infinite t2d-talk}.t2d .seat[data-state=done] .badge{opacity:1;transform:scale(1)}.t2d .seat[data-state=done] .lift{animation:.6s ease-out t2d-pop}.t2d .seat[data-state=done] .halo{opacity:.4}.t2d .seat[data-state=error] .badge{opacity:1;transform:scale(1)}.t2d .seat[data-state=error] .lift{animation:.45s linear t2d-shake}.t2d .seat[data-state=error] .halo{opacity:.85;animation:.9s steps(2,end) 2 both t2d-flicker}@keyframes t2d-breathe{50%{transform:scaleY(1.02)}}@keyframes t2d-spin{to{transform:rotate(360deg)}}@keyframes t2d-pulse{50%{opacity:.35;transform:scale(1.08)}}@keyframes t2d-bob{50%{transform:translateY(-3px)}}@keyframes t2d-wave{50%{transform:scale(1.12)rotate(6deg)}}@keyframes t2d-talk{50%{transform:scale(1.025)}}@keyframes t2d-pop{40%{transform:scale(1.14)}}@keyframes t2d-shake{20%{transform:translate(-4px)}40%{transform:translate(4px)}60%{transform:translate(-3px)}80%{transform:translate(2px)}}@keyframes t2d-flicker{50%{opacity:.25}}.t2d.reduced .seat *{animation:none!important;transition:none!important}.t2d .seat-in{animation:.82s ease-out both t2d-in}.t2d .seat-out{pointer-events:none;animation:.64s ease-in both t2d-out}.t2d .seat-ring{fill:none;stroke-width:3;transform-box:fill-box;transform-origin:center;animation:.82s ease-out both t2d-ring}.t2d .seat-out .puff{transform-box:fill-box;transform-origin:center;animation:.72s ease-out both t2d-puff}.t2d.reduced .seat-in,.t2d.reduced .seat-out{animation-duration:.16s}.t2d.reduced .seat-ring,.t2d.reduced .seat-out .puff{display:none}@keyframes t2d-in{0%{opacity:0}}@keyframes t2d-out{40%{opacity:1}to{opacity:0}}@keyframes t2d-ring{0%{opacity:0;transform:scale(.3)}40%{opacity:1}to{opacity:0;transform:scale(1.4)}}@keyframes t2d-puff{0%{opacity:1;transform:scale(.3)}50%{opacity:1}to{opacity:0;transform:translateY(-18px)scale(1.5)}}.t2d.reduced .seat[data-state=waiting] .halo,.t2d.reduced .seat[data-state=working] .halo{opacity:.6}.table-page{display:flex;gap:var(--space-2);padding:var(--space-3)var(--space-3)var(--space-2);flex-direction:column;flex:1;width:100%;min-height:0}@media (min-width:720px){.table-page{padding:var(--space-5)var(--space-6)var(--space-4)}}.table-frame{display:flex;flex-direction:column;flex:1;min-height:0}.table-host{display:flex;flex-direction:column;flex:1;justify-content:flex-start;align-items: center;width:100%;min-height:0}.table-empty{margin:var(--space-8)auto;color:var(--muted)}.table-empty-state{margin:var(--space-8)auto;display:flex;align-items: center;gap:var(--space-2);text-align:center;flex-direction:column;max-width:24rem}.table-empty-state p{margin:0}.table-tools{display:flex;align-items: center;gap:var(--space-2)}.seat-row .menu-text{flex:1;min-width:0}.group-strip{border-bottom:1px solid var(--border);background:var(--surface)}.rt-names{position:absolute;overflow:hidden;pointer-events:none;font-family:var(--rt-font,system-ui,sans-serif);inset:0}.rt-name{position:absolute;border:2px solid var(--rt-ink,#0b0f1e);background:linear-gradient(var(--rt-gold,#e3b24b),var(--rt-gold-dark,#9a6c1d));color:var(--rt-plate-ink,#3a2410);font:700 var(--rt-name-size,12px)/1.25 var(--rt-font,system-ui,sans-serif);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;cursor:pointer;pointer-events:auto;visibility:hidden;will-change:transform;border-radius:.3em;max-width:12em;min-height:0;padding:.12em .7em .16em;top:0;left:0}.rt-name:focus-visible{outline:3px solid var(--accent,#3a5bd9);outline-offset:2px}.rt-speed{mix-blend-mode:screen}.table-frame{position:relative}.room-scene,.room-scene .table-host{flex:1;min-height:0}.scene-box{position:absolute;inset-inline:var(--space-3);bottom:var(--space-3);display:flex;border:3px solid var(--rt-ink,#0b0f1e);background:color-mix(in srgb,var(--surface)94%,transparent);transform:translateY(calc(100% + var(--space-4)));opacity:0;pointer-events:none;z-index:4;border-radius:1.1rem;flex-direction:column;max-width:46rem;max-height:62%;margin-inline-start:auto;margin-inline-end:auto;transition:transform .36s cubic-bezier(.2,.9,.25,1.05),opacity .2s ease-out;box-shadow:0 .6rem 2rem #00000073}.scene-box[data-open]{opacity:1;pointer-events:auto;transform:none}.scene-tab{display:flex;align-items: center;gap:var(--space-2);margin:-1.1rem var(--space-3)0;padding:.2rem var(--space-2).2rem .3rem;max-width:calc(100% - 2*var(--space-3));border:3px solid var(--rt-ink,#0b0f1e);background:var(--agent-accent,var(--accent));color:#fff;border-radius:.8rem;align-self: flex-start}.scene-chip{display:grid;border:3px solid var(--rt-ink,#0b0f1e);background:var(--surface);overflow:hidden;border-radius:50%;place-items: center;width:2.4rem;height:2.4rem;margin:-.9rem 0 -.3rem}.scene-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:var(--text-md);text-shadow:0 1px #00000059;flex:0 auto;min-width:4ch}.scene-tools{display:flex;flex:none;align-items: center;gap:.15rem;margin-inline-start:var(--space-2)}.scene-tools .icon-button{color:inherit}.scene-log-button{gap:var(--space-1);padding-inline:var(--space-2);font-size:var(--text-xs);flex:none;width:auto}.scene-log-button span{white-space:nowrap}.scene-body{overflow:auto;padding:var(--space-2)var(--space-3)var(--space-1);flex:auto;min-height:0}.scene-line{overflow-wrap:anywhere;min-height:2.6rem;font-size:1.02rem;line-height:1.55}.scene-line[role=button]{cursor:pointer}.scene-line>:first-child{margin-top:0}.scene-from{display:block;color:var(--muted);font-size:var(--text-xs)}.scene-card{margin-top:var(--space-2)}.scene-composer{border-top:1px solid var(--border);flex:none}.scene-log{overflow:auto;padding:var(--space-2)var(--space-3);max-height:70dvh}@media (max-width:719px){.scene-tools{margin-inline-start:var(--space-1)}.scene-tools .icon-button{width:2.5rem;min-width:2.5rem}.scene-tools .scene-log-button{padding-inline:var(--space-1);width:auto}}@media (max-width:719px) and (orientation:portrait){.table-frame[data-focused]{display:grid;grid-template-rows:55% minmax(0,1fr)}.table-frame[data-focused] .table-host{min-height:0}.table-frame[data-focused] .scene-box{position:relative;border-bottom:0;border-radius:1rem 1rem 0 0;max-width:none;min-height:0;max-height:none;margin:0;inset:auto}}@media (max-width:719px) and (orientation:landscape){.scene-box{inset-inline:var(--space-2);bottom:var(--space-1);max-width:none;max-height:38%}}@media (prefers-reduced-motion:reduce){.scene-box{transition:none}}.council-chip{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:14rem}.council-row{text-align:start;width:100%}.council-row[aria-current=true]{background:color-mix(in srgb,var(--accent)12%,transparent)}.council-count{display:block}.council-sheet h3{font-size:var(--text-sm);margin:0}.order-strip{display:flex;align-items: center;gap:var(--space-1)var(--space-2);margin-top:var(--space-1);padding:var(--space-1)var(--space-3);background:color-mix(in srgb,var(--accent)7%,transparent);flex-wrap:wrap}.order-faces{display:flex;align-items: center;gap:var(--space-1);list-style:none;flex-wrap:wrap;margin:0;padding:0}.order-face{position:relative;display:inline-flex;transition:opacity .2s ease-out,transform .2s ease-out}.order-face[data-place=spoken]{opacity:.5}.order-face[data-place=current]{transform:scale(1.08)}.order-badge{position:absolute;background:color-mix(in srgb,var(--accent)22%,var(--surface));color:var(--text);text-align:center;border-radius:999px;min-width:1rem;height:1rem;padding-inline-start:.15rem;padding-inline-end:.15rem;font-size:.625rem;font-weight:700;line-height:1rem;bottom:-.25rem}.order-badge:not(:-webkit-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))){right:-.3rem}.order-badge:not(:-moz-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))){right:-.3rem}.order-badge:not(:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))){right:-.3rem}.order-badge:-webkit-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)){left:-.3rem}.order-badge:-moz-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)){left:-.3rem}.order-badge:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)){left:-.3rem}.order-badge:empty{display:none}.order-chip{color:var(--muted);font-size:var(--text-xs);font-variant-numeric:tabular-nums;white-space:nowrap;margin-inline-start:auto}.order-queued{color:var(--muted);font-size:var(--text-xs);flex-basis:100%}@media (prefers-reduced-motion:reduce){.order-face{transition:none}}@media (max-height:480px){.order-strip{margin-top:0;padding-block-start:0;padding-block-end:0}}
|
|
1
|
+
:root{--buncss-light:initial;--buncss-dark: ;color-scheme:light dark;--bg:var(--buncss-light,#f5f6f8)var(--buncss-dark,#0f1115);--surface:var(--buncss-light,#fff)var(--buncss-dark,#171a20);--surface-2:var(--buncss-light,#eef0f4)var(--buncss-dark,#1d2128);--surface-3:var(--buncss-light,#e4e7ee)var(--buncss-dark,#262b34);--raised:var(--buncss-light,#fff)var(--buncss-dark,#1c2027);--border:var(--buncss-light,#dfe2e8)var(--buncss-dark,#2a2f39);--border-strong:var(--buncss-light,#c4cad6)var(--buncss-dark,#3b414d);--control-border:var(--buncss-light,#7f8797)var(--buncss-dark,#69717f);--scrim:var(--buncss-light,#0f11156b)var(--buncss-dark,#0000009e);--text:var(--buncss-light,#16181d)var(--buncss-dark,#e9ebf0);--muted:var(--buncss-light,#5a6270)var(--buncss-dark,#a0a7b4);--on-accent:var(--buncss-light,#fff)var(--buncss-dark,#0c1230);--accent:var(--buncss-light,#3a5bd9)var(--buncss-dark,#8ea4ff);--accent-strong:var(--buncss-light,#2f4ac0)var(--buncss-dark,#a9b9ff);--accent-soft:var(--buncss-light,#e8edfd)var(--buncss-dark,#232c52);--accent-ink:var(--buncss-light,#2a47b8)var(--buncss-dark,#b6c4ff);--success:var(--buncss-light,#17703f)var(--buncss-dark,#5fd699);--success-soft:var(--buncss-light,#e3f4ea)var(--buncss-dark,#16301f);--warn:var(--buncss-light,#8a5a00)var(--buncss-dark,#f0b95b);--warn-soft:var(--buncss-light,#fdf1d8)var(--buncss-dark,#33270f);--danger:var(--buncss-light,#b42318)var(--buncss-dark,#ff8f85);--danger-soft:var(--buncss-light,#fde8e6)var(--buncss-dark,#3a1b19);--yolo:var(--buncss-light,#9a4608)var(--buncss-dark,#ffa664);--yolo-soft:var(--buncss-light,#fdebd9)var(--buncss-dark,#382314);--long:var(--buncss-light,#6d3fc0)var(--buncss-dark,#b99cf5);--long-soft:var(--buncss-light,#efe7fb)var(--buncss-dark,#2a2140);--code-bg:var(--buncss-light,#fbfbfd)var(--buncss-dark,#14171c);--code-fg:var(--buncss-light,#1d2129)var(--buncss-dark,#e6e8ee);--code-gutter-bg:var(--buncss-light,#f1f2f6)var(--buncss-dark,#191d23);--code-gutter:var(--buncss-light,#5c6372)var(--buncss-dark,#8b93a1);--code-selection:var(--buncss-light,#cfdcff)var(--buncss-dark,#2b3a66);--code-active-line:var(--buncss-light,#f0f2f8)var(--buncss-dark,#1a1f27);--code-keyword:var(--buncss-light,#a0267a)var(--buncss-dark,#f08bd0);--code-string:var(--buncss-light,#1a6a35)var(--buncss-dark,#7fd69a);--code-number:var(--buncss-light,#9a4a00)var(--buncss-dark,#ffb070);--code-comment:var(--buncss-light,#5f6878)var(--buncss-dark,#8e98aa);--code-type:var(--buncss-light,#0b6a8f)var(--buncss-dark,#6cc7e6);--code-function:var(--buncss-light,#3a4fc0)var(--buncss-dark,#9db2ff);--code-meta:var(--buncss-light,#7a5a00)var(--buncss-dark,#e0c070);--busy:var(--success);--accent-text:var(--on-accent);--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.25rem;--space-6:1.5rem;--space-8:2rem;--space-10:2.5rem;--radius-sm:6px;--radius:10px;--radius-lg:16px;--radius-full:999px;--shadow-1:0 1px 2px var(--buncss-light,#1018280f)var(--buncss-dark,#0006);--shadow-2:0 4px 14px var(--buncss-light,#1018281a)var(--buncss-dark,#00000073);--shadow-3:0 18px 48px var(--buncss-light,#10182833)var(--buncss-dark,#0009);--font:system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",sans-serif;--font-mono:ui-monospace,"SF Mono",Menlo,Consolas,monospace;--text-xs:.75rem;--text-sm:.8125rem;--text-base:.9375rem;--text-md:1rem;--text-lg:1.125rem;--text-xl:1.375rem;--text-2xl:1.75rem;--leading-tight:1.25;--leading:1.5;--weight-medium:500;--weight-bold:650;--dur-fast:.12s;--dur:.2s;--dur-slow:.34s;--ease-out:cubic-bezier(.2,.8,.2,1);--ease-in-out:cubic-bezier(.65,0,.35,1);--ease-spring:cubic-bezier(.34,1.56,.64,1);--rail-width:15rem;--tabbar-height:3.5rem;--touch:2.75rem;--safe-top:env(safe-area-inset-top,0px);--safe-bottom:env(safe-area-inset-bottom,0px);--safe-left:env(safe-area-inset-left,0px);--safe-right:env(safe-area-inset-right,0px);font-family:var(--font);font-size:16px;line-height:var(--leading);-webkit-text-size-adjust:100%;text-size-adjust:100%}@media (prefers-color-scheme:dark){:root{--buncss-light: ;--buncss-dark:initial}}:root[data-theme=light]{--buncss-light:initial;--buncss-dark: ;color-scheme:light}:root[data-theme=dark]{--buncss-light: ;--buncss-dark:initial;color-scheme:dark}@media (prefers-reduced-motion:reduce){:root{--dur-fast:.01ms;--dur:.01ms;--dur-slow:.01ms}*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.01ms!important}}.av{overflow:visible}.av .ov{opacity:0}.av .glow{opacity:.28}.av .ch,.av .prop,.av .eyes,.av .ov{transform-box:view-box}.av .ch{transform-origin:50px 94px}.av .eyes{transform-origin:50px 52px;animation:5.2s infinite av-blink}.av .o-wait,.av .o-done,.av .o-err{transform-origin:17px 19px}.av .o-think{transform-origin:50px 50px}.av [data-prop=staff]{transform-origin:73px 82px}.av [data-prop=shield]{transform-origin:27px 82px}.av [data-prop=scroll]{transform-origin:76px 76px}.av [data-prop=hammer]{transform-origin:79px 84px}.av [data-prop=bow]{transform-origin:78px 70px}.av [data-prop=lute]{transform-origin:75px 70px}.av [data-prop=flask]{transform-origin:73px 66px}.av [data-prop=quill]{transform-origin:72px 82px}.av [data-prop=tome]{transform-origin:78px 76px}.av [data-prop=bell]{transform-origin:76px 62px}.av [data-prop=keys]{transform-origin:78px 62px}.av [data-prop=map]{transform-origin:77px 58px}.av [data-prop=telescope]{transform-origin:76px 74px}.av [data-prop=wrench]{transform-origin:78px 86px}.av [data-prop=spade]{transform-origin:76px 60px}.av [data-prop=ladle]{transform-origin:78px 78px}.av [data-prop=lantern]{transform-origin:76px 62px}.av [data-prop=seal]{transform-origin:76px 66px}.av [data-prop=dagger]{transform-origin:78px 86px}.av [data-prop=beads]{transform-origin:78px 62px}.av [data-prop=bird]{transform-origin:78px 76px}.av [data-prop=anchor]{transform-origin:76px 76px}.av [data-prop=marotte]{transform-origin:76px 62px}.av [data-prop=sword]{transform-origin:76px 82px}:-webkit-any(.av,.av-host)[data-state=idle] .ch{animation:3.8s ease-in-out infinite av-breathe}:-moz-any(.av,.av-host)[data-state=idle] .ch{animation:3.8s ease-in-out infinite av-breathe}:is(.av,.av-host)[data-state=idle] .ch{animation:3.8s ease-in-out infinite av-breathe}:-webkit-any(.av,.av-host)[data-state=thinking] .ch{animation:3.2s ease-in-out infinite av-tilt}:-moz-any(.av,.av-host)[data-state=thinking] .ch{animation:3.2s ease-in-out infinite av-tilt}:is(.av,.av-host)[data-state=thinking] .ch{animation:3.2s ease-in-out infinite av-tilt}:-webkit-any(.av,.av-host)[data-state=thinking] .o-think{opacity:1;animation:2.6s linear infinite av-orbit}:-moz-any(.av,.av-host)[data-state=thinking] .o-think{opacity:1;animation:2.6s linear infinite av-orbit}:is(.av,.av-host)[data-state=thinking] .o-think{opacity:1;animation:2.6s linear infinite av-orbit}:-webkit-any(.av,.av-host)[data-state=working] .ch{animation:.56s ease-in-out infinite av-bob}:-moz-any(.av,.av-host)[data-state=working] .ch{animation:.56s ease-in-out infinite av-bob}:is(.av,.av-host)[data-state=working] .ch{animation:.56s ease-in-out infinite av-bob}:-webkit-any(.av,.av-host)[data-state=working] .prop{animation:.56s ease-in-out infinite alternate av-sweep}:-moz-any(.av,.av-host)[data-state=working] .prop{animation:.56s ease-in-out infinite alternate av-sweep}:is(.av,.av-host)[data-state=working] .prop{animation:.56s ease-in-out infinite alternate av-sweep}:-webkit-any(.av,.av-host)[data-state=working] .glow{animation:.56s ease-in-out infinite alternate av-glow}:-moz-any(.av,.av-host)[data-state=working] .glow{animation:.56s ease-in-out infinite alternate av-glow}:is(.av,.av-host)[data-state=working] .glow{animation:.56s ease-in-out infinite alternate av-glow}:-webkit-any(.av,.av-host)[data-state=waiting] .ch{animation:1.6s ease-in-out infinite av-lean}:-moz-any(.av,.av-host)[data-state=waiting] .ch{animation:1.6s ease-in-out infinite av-lean}:is(.av,.av-host)[data-state=waiting] .ch{animation:1.6s ease-in-out infinite av-lean}:-webkit-any(.av,.av-host)[data-state=waiting] .o-wait{opacity:1;animation:1.2s ease-in-out infinite av-badge}:-moz-any(.av,.av-host)[data-state=waiting] .o-wait{opacity:1;animation:1.2s ease-in-out infinite av-badge}:is(.av,.av-host)[data-state=waiting] .o-wait{opacity:1;animation:1.2s ease-in-out infinite av-badge}:-webkit-any(.av,.av-host)[data-state=waiting] .glow{animation:1.2s ease-in-out infinite alternate av-glow}:-moz-any(.av,.av-host)[data-state=waiting] .glow{animation:1.2s ease-in-out infinite alternate av-glow}:is(.av,.av-host)[data-state=waiting] .glow{animation:1.2s ease-in-out infinite alternate av-glow}:-webkit-any(.av,.av-host)[data-state=done] .ch{animation:.7s cubic-bezier(.3,1.6,.5,1) av-pop}:-moz-any(.av,.av-host)[data-state=done] .ch{animation:.7s cubic-bezier(.3,1.6,.5,1) av-pop}:is(.av,.av-host)[data-state=done] .ch{animation:.7s cubic-bezier(.3,1.6,.5,1) av-pop}:-webkit-any(.av,.av-host)[data-state=done] .o-done{opacity:1;animation:.5s ease-out av-badge-in}:-moz-any(.av,.av-host)[data-state=done] .o-done{opacity:1;animation:.5s ease-out av-badge-in}:is(.av,.av-host)[data-state=done] .o-done{opacity:1;animation:.5s ease-out av-badge-in}:-webkit-any(.av,.av-host)[data-state=done] .glow{opacity:.7}:-moz-any(.av,.av-host)[data-state=done] .glow{opacity:.7}:is(.av,.av-host)[data-state=done] .glow{opacity:.7}:-webkit-any(.av,.av-host)[data-state=error] .ch{animation:.5s ease-in-out 2 av-shake}:-moz-any(.av,.av-host)[data-state=error] .ch{animation:.5s ease-in-out 2 av-shake}:is(.av,.av-host)[data-state=error] .ch{animation:.5s ease-in-out 2 av-shake}:-webkit-any(.av,.av-host)[data-state=error] .o-err{opacity:1;animation:.3s ease-out av-badge-in}:-moz-any(.av,.av-host)[data-state=error] .o-err{opacity:1;animation:.3s ease-out av-badge-in}:is(.av,.av-host)[data-state=error] .o-err{opacity:1;animation:.3s ease-out av-badge-in}:-webkit-any(.av,.av-host)[data-state=error] .ring{stroke:#e5484d}:-moz-any(.av,.av-host)[data-state=error] .ring{stroke:#e5484d}:is(.av,.av-host)[data-state=error] .ring{stroke:#e5484d}:-webkit-any(.av,.av-host)[data-state=error] .glow{opacity:0}:-moz-any(.av,.av-host)[data-state=error] .glow{opacity:0}:is(.av,.av-host)[data-state=error] .glow{opacity:0}:-webkit-any(.av,.av-host)[data-state=sleepy] .ch{animation:6s ease-in-out infinite av-breathe}:-moz-any(.av,.av-host)[data-state=sleepy] .ch{animation:6s ease-in-out infinite av-breathe}:is(.av,.av-host)[data-state=sleepy] .ch{animation:6s ease-in-out infinite av-breathe}:-webkit-any(.av,.av-host)[data-state=sleepy] .o-zz{opacity:1;animation:3s ease-in-out infinite av-float}:-moz-any(.av,.av-host)[data-state=sleepy] .o-zz{opacity:1;animation:3s ease-in-out infinite av-float}:is(.av,.av-host)[data-state=sleepy] .o-zz{opacity:1;animation:3s ease-in-out infinite av-float}:-webkit-any(.av,.av-host)[data-state=sleepy] .glow{opacity:.08}:-moz-any(.av,.av-host)[data-state=sleepy] .glow{opacity:.08}:is(.av,.av-host)[data-state=sleepy] .glow{opacity:.08}@keyframes av-blink{0%,93%,to{transform:scaleY(1)}96%{transform:scaleY(.08)}}@keyframes av-breathe{0%,to{transform:scale(1)}50%{transform:scale(1.012,1.03)}}@keyframes av-tilt{0%,to{transform:rotate(-3deg)}50%{transform:rotate(3deg)}}@keyframes av-orbit{to{transform:rotate(360deg)}}@keyframes av-bob{0%,to{transform:translateY(0)}50%{transform:translateY(-2.4px)}}@keyframes av-sweep{0%{transform:rotate(-9deg)}to{transform:rotate(9deg)}}@keyframes av-glow{0%{opacity:.2}to{opacity:.85}}@keyframes av-lean{0%,to{transform:rotate(-1deg)translateY(0)}50%{transform:rotate(-6deg)translateY(1px)}}@keyframes av-badge{0%,to{transform:scale(1)}50%{transform:scale(1.14)}}@keyframes av-badge-in{0%{transform:scale(.2);opacity:0}to{transform:scale(1);opacity:1}}@keyframes av-pop{0%{transform:scale(1)}40%{transform:scale(1.1,.94)}70%{transform:scale(.97,1.05)}to{transform:scale(1)}}@keyframes av-shake{0%,to{transform:translate(0)}20%{transform:translate(-2.4px)}40%{transform:translate(2.4px)}60%{transform:translate(-1.6px)}80%{transform:translate(1.6px)}}@keyframes av-float{0%,to{transform:translateY(0);opacity:.35}50%{transform:translateY(-4px);opacity:1}}@media (prefers-reduced-motion:reduce){.av *{animation:none!important}.av .o-think{opacity:0!important}}.av.static *{animation:none!important}:root[data-look=camelot]{--bg:var(--buncss-light,#f4ead5)var(--buncss-dark,#0f1726);--surface:var(--buncss-light,#fbf5e6)var(--buncss-dark,#16213a);--surface-2:var(--buncss-light,#eee1c3)var(--buncss-dark,#1c2a47);--surface-3:var(--buncss-light,#e3d2a9)var(--buncss-dark,#243557);--raised:var(--buncss-light,#fffaf0)var(--buncss-dark,#1b2744);--border:var(--buncss-light,#dccb9f)var(--buncss-dark,#2c3c61);--border-strong:var(--buncss-light,#c2ad78)var(--buncss-dark,#41537f);--control-border:var(--buncss-light,#8a7650)var(--buncss-dark,#7e8db2);--scrim:var(--buncss-light,#2b211873)var(--buncss-dark,#03060eb3);--text:var(--buncss-light,#2b2118)var(--buncss-dark,#efe6d2);--muted:var(--buncss-light,#66543c)var(--buncss-dark,#bcb8ab);--on-accent:var(--buncss-light,#fff9ea)var(--buncss-dark,#1a1405);--accent:var(--buncss-light,#7a500a)var(--buncss-dark,#e6b94c);--accent-strong:var(--buncss-light,#5f3e07)var(--buncss-dark,#f2cd6c);--accent-soft:var(--buncss-light,#f0deb0)var(--buncss-dark,#2d3045);--accent-ink:var(--buncss-light,#553705)var(--buncss-dark,#f0cd78);--code-bg:var(--buncss-light,#fffaf0)var(--buncss-dark,#121c33);--code-fg:var(--buncss-light,#2b2118)var(--buncss-dark,#efe6d2);--code-gutter-bg:var(--buncss-light,#f1e5c6)var(--buncss-dark,#16213a);--code-gutter:var(--buncss-light,#66543c)var(--buncss-dark,#bcb8ab);--code-selection:var(--buncss-light,#ecd9a0)var(--buncss-dark,#31446e);--code-active-line:var(--buncss-light,#f6ecd2)var(--buncss-dark,#18243f);--code-keyword:var(--buncss-light,#7a500a)var(--buncss-dark,#e6b94c);--code-string:var(--buncss-light,#8a1c1c)var(--buncss-dark,#ff9a8f);--code-number:var(--buncss-light,#5f3d94)var(--buncss-dark,#c3a7f5);--code-comment:var(--buncss-light,#6a5a42)var(--buncss-dark,#b0ab9d);--code-type:var(--buncss-light,#26602d)var(--buncss-dark,#6fd49b);--code-function:var(--buncss-light,#1f4a80)var(--buncss-dark,#8fb4ff);--code-meta:var(--buncss-light,#764a07)var(--buncss-dark,#f0b95b);--gold:var(--buncss-light,#b98a2c)var(--buncss-dark,#e6b94c);--gold-soft:var(--buncss-light,#e9d29a)var(--buncss-dark,#3b4256);--gold-wash:var(--buncss-light,#f2e4bd)var(--buncss-dark,#222f4d);--success:var(--buncss-light,#26602d)var(--buncss-dark,#6fd49b);--success-soft:var(--buncss-light,#dfe9c9)var(--buncss-dark,#153027);--warn:var(--buncss-light,#764a07)var(--buncss-dark,#f0b95b);--warn-soft:var(--buncss-light,#f6e2b0)var(--buncss-dark,#3a2d12);--danger:var(--buncss-light,#a3281e)var(--buncss-dark,#ff9a8f);--danger-soft:var(--buncss-light,#f3d6cb)var(--buncss-dark,#3d1f2a);--yolo:var(--buncss-light,#96400a)var(--buncss-dark,#ffae72);--yolo-soft:var(--buncss-light,#f3dcc2)var(--buncss-dark,#3b2616);--long:var(--buncss-light,#5f3d94)var(--buncss-dark,#c3a7f5);--long-soft:var(--buncss-light,#e8ddee)var(--buncss-dark,#2c2547);--shadow-1:0 1px 2px var(--buncss-light,#4a340e1a)var(--buncss-dark,#00000073);--shadow-2:0 4px 14px var(--buncss-light,#4a340e24)var(--buncss-dark,#00000080);--shadow-3:0 18px 48px var(--buncss-light,#4a340e42)var(--buncss-dark,#000000a6);--font-heading:"Iowan Old Style",Palatino,"Songti TC","Noto Serif TC",Georgia,serif}[data-look=camelot] h1,[data-look=camelot] h2,[data-look=camelot] h3,[data-look=camelot] .page-bar strong,[data-look=camelot] .prompt-head strong{font-family:var(--font-heading);letter-spacing:0}[data-look=camelot] body{background:radial-gradient(60rem 36rem at 12% -8%,var(--buncss-light,#fffcf08c)var(--buncss-dark,#4660a029),transparent 70%),radial-gradient(48rem 30rem at 96% 108%,var(--buncss-light,#c8a05a33)var(--buncss-dark,#e6b94c0f),transparent 70%),radial-gradient(22rem 14rem at 70% 24%,var(--buncss-light,#b98a2c14)var(--buncss-dark,#788cd20d),transparent 70%),var(--bg)}[data-look=camelot] .topbar,[data-look=camelot] .tabbar{border-color:var(--gold-soft)}[data-look=camelot] .page-head{padding-bottom:var(--space-2);background:linear-gradient(90deg,var(--gold),transparent 70%)bottom/100% 1px no-repeat}[data-look=camelot] .room-head{position:relative;border-bottom-color:var(--gold-soft);box-shadow:0 1px 0 color-mix(in srgb,var(--gold)38%,transparent)}[data-look=camelot] .room-head:before,[data-look=camelot] .room-head:after{content:"";position:absolute;pointer-events:none;background:linear-gradient(var(--gold),var(--gold))bottom/100% 2px no-repeat,linear-gradient(var(--gold),var(--gold))var(--side)/2px 100% no-repeat;width:.75rem;height:.75rem;bottom:-1px}[data-look=camelot] .room-head:before{--side:left;left:0}[data-look=camelot] .room-head:after{--side:right;right:0}[data-look=camelot] .card,[data-look=camelot] .prompt,[data-look=camelot] .progress,[data-look=camelot] .bubble{border-color:color-mix(in srgb,var(--gold)34%,var(--border))}[data-look=camelot] .message[data-mine] .bubble{border-color:#0000}[data-look=camelot] .room-row[data-home],[data-look=camelot] .room-row[aria-current=page],[data-look=camelot] .creator-preview{background:var(--gold-wash)}[data-look=camelot] .prompt{position:relative;--seal-out:.9rem;--seal-in:.6rem}[data-look=camelot] .prompt[data-sealed]{padding-bottom:calc(var(--space-4) + var(--seal-in));margin-bottom:var(--seal-out)}.wax-seal{--seal-size:2.5rem;position:absolute;right:var(--space-4);bottom:calc(var(--seal-out)*-1);width:var(--seal-size);height:var(--seal-size);pointer-events:none;filter:drop-shadow(0 2px 2px #00000047);transform:rotate(-9deg)}.wax-seal[data-stamp]{animation-name:seal-stamp;animation-duration:.45s;animation-timing-function:var(--ease-spring);animation-fill-mode:both}.wax-seal svg{display:block;overflow:visible;width:100%;height:100%}.wax-seal .seal-body{fill:var(--agent-accent,var(--accent))}.wax-seal .seal-ring{fill:none;stroke:color-mix(in srgb,var(--agent-accent,var(--accent))62%,#000);stroke-width:1.6}.wax-seal .seal-mark{fill:none;stroke:color-mix(in srgb,var(--agent-accent,var(--accent))62%,#000);stroke-width:3;stroke-linecap:round;stroke-linejoin:round}@keyframes seal-stamp{0%{opacity:0;transform:rotate(-9deg)scale(1.7)}60%{opacity:1;transform:rotate(-9deg)scale(.92)}to{opacity:1;transform:rotate(-9deg)scale(1)}}[data-look=camelot] .progress-bar{display:none}.candle-runes{display:inline-flex;align-items: center;gap:var(--space-2);flex:none}.candle{overflow:visible;width:.85rem;height:1.55rem}.candle .candle-wax{fill:var(--buncss-light,#f3e3b6)var(--buncss-dark,#d9cdb0);stroke:var(--gold);stroke-width:.6}.candle .candle-wick{stroke:var(--buncss-light,#4a3a28)var(--buncss-dark,#1a1405);stroke-width:.9}.candle .candle-flame{fill:var(--gold);transform-box:fill-box;transform-origin:50% 100%;animation:1.7s ease-in-out infinite candle-flicker}.runes{display:inline-flex;gap:.3rem}.rune{width:.55rem;height:.9rem}.rune path{fill:none;stroke:color-mix(in srgb,var(--gold)80%,var(--text));stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}.rune{animation:2.4s ease-in-out infinite rune-shimmer}.rune[data-rune="1"]{animation-delay:.3s}.rune[data-rune="2"]{animation-delay:.6s}.rune[data-rune="3"]{animation-delay:.9s}.rune[data-rune="4"]{animation-delay:1.2s}.rune[data-rune="5"]{animation-delay:1.5s}@keyframes rune-shimmer{0%,to{opacity:.4}45%{opacity:1}}@keyframes candle-flicker{0%,to{opacity:1;transform:scale(1)rotate(0)}30%{opacity:.82;transform:scale(.92,1.08)rotate(-2deg)}65%{opacity:.94;transform:scale(1.06,.95)rotate(2deg)}}@media (prefers-reduced-motion:reduce){.wax-seal[data-stamp],.candle .candle-flame,.rune{animation-name:none}.rune{opacity:.85}}*{box-sizing:border-box}html{background:var(--bg);height:100%}body{overflow:hidden;background:var(--bg);color:var(--text);font-size:var(--text-base);-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:transparent;overscroll-behavior:none;height:100%;margin:0}a{color:var(--accent)}h1,h2,h3{font-weight:var(--weight-bold);line-height:var(--leading-tight);letter-spacing:-.01em;margin:0}h1{font-size:var(--text-xl)}h2{font-size:var(--text-md)}:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:var(--radius-sm)}.visually-hidden{position:absolute;overflow:hidden;clip-path:inset(50%);white-space:nowrap;width:1px;height:1px}kbd{padding:0 var(--space-2);border:1px solid var(--border-strong);border-radius:var(--radius-sm);background:var(--surface-2);color:var(--muted);font:inherit;font-size:var(--text-xs)}.app{position:fixed;left:0;right:0;top:var(--app-top,0px);height:var(--app-height,100dvh);display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:minmax(0,1fr)auto;background:var(--bg)}.stage{grid-row:1;display:flex;overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;padding-left:var(--safe-left);padding-right:var(--safe-right);flex-direction:column;min-width:0;min-height:0}.stage[data-fill]{overflow:hidden}.route{display:flex;flex-direction:column;flex:1;min-height:0}.no-vt .route{animation:route-in var(--dur-slow)var(--ease-out)both}@keyframes route-in{0%{opacity:0;transform:translateY(8px)}}.topbar{position:sticky;z-index:5;display:flex;justify-content:space-between;align-items: center;gap:var(--space-3);padding:calc(var(--space-2) + var(--safe-top))var(--space-4)var(--space-2);background:color-mix(in srgb,var(--bg)88%,transparent);backdrop-filter:blur(14px);border-bottom:1px solid var(--border);top:0}.topbar h1{font-size:var(--text-md)}.brand{display:flex;align-items: center;gap:var(--space-2);min-width:0}.brand-mark{display:grid;border-radius:var(--radius-sm);background:var(--accent);color:var(--on-accent);overflow:hidden;flex:none;place-items: center;width:1.75rem;height:1.75rem}.brand-mark img{object-fit:cover;width:100%;height:100%}.brand h1{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.topbar-end,.rail-foot{display:flex;align-items: center;gap:var(--space-2)}.live-chip{display:inline-flex;align-items: center;gap:var(--space-2);font-size:var(--text-xs);color:var(--muted)}.live-chip:before{content:"";border-radius:var(--radius-full);background:var(--muted);width:.5rem;height:.5rem}.live-chip[data-on]:before{background:var(--success);box-shadow:0 0 0 0 var(--success);animation:pulse 2.4s var(--ease-out)infinite}@keyframes pulse{70%,to{box-shadow:0 0 0 6px #0000}}.rail{display:none}.tabbar{grid-row:2;display:flex;padding-bottom:var(--safe-bottom);padding-left:var(--safe-left);padding-right:var(--safe-right);border-top:1px solid var(--border);background:color-mix(in srgb,var(--surface)92%,transparent);backdrop-filter:blur(14px)}.tab{position:relative;display:flex;min-height:var(--tabbar-height);color:var(--muted);font-size:var(--text-xs);text-decoration:none;transition:color var(--dur)var(--ease-out);flex-direction:column;flex:1;justify-content:center;align-items: center;gap:2px}.tab[aria-current=page]{color:var(--accent)}.tab svg{transition:transform var(--dur)var(--ease-spring)}.tab[aria-current=page] svg{transform:translateY(-1px)scale(1.1)}.tab-badge{position:absolute;border-radius:var(--radius-full);background:var(--warn);color:var(--bg);font-size:.65rem;font-weight:var(--weight-bold);text-align:center;min-width:1.1rem;padding:0 .3rem;line-height:1.1rem;top:.35rem;left:calc(50% + .55rem)}.app[data-fill]{grid-template-rows:minmax(0,1fr)}.app[data-fill] .tabbar,.app[data-fill] .topbar{display:none}@media (min-width:720px){.app{grid-template-columns:var(--rail-width)minmax(0,1fr);grid-template-rows:minmax(0,1fr)}.app[data-fill] .topbar,.topbar,.tabbar,.app[data-fill] .tabbar{display:none}.rail{grid-column:1;display:flex;gap:var(--space-4);padding:calc(var(--space-4) + var(--safe-top))var(--space-3)var(--space-3)calc(var(--space-3) + var(--safe-left));border-right:1px solid var(--border);background:var(--surface);flex-direction:column;min-height:0}.stage{grid-column:2;padding-left:0}.rail-nav{display:flex;gap:var(--space-1);overflow-y:auto;flex-direction:column;flex:1}.rail-link{position:relative;display:flex;align-items: center;gap:var(--space-3);padding:0 var(--space-3);border-radius:var(--radius);color:var(--muted);font-weight:var(--weight-medium);text-decoration:none;transition:background-color var(--dur-fast)var(--ease-out),color var(--dur-fast)var(--ease-out);min-height:2.5rem}.rail-link:hover{background:var(--surface-2);color:var(--text)}.rail-link[aria-current=page]{background:var(--accent-soft);color:var(--accent-ink)}.rail-link .tab-badge{position:static;margin-left:auto}.rail-foot{padding-left:var(--space-3)}}.page{display:flex;gap:var(--space-5);padding:var(--space-4)var(--space-4)calc(var(--space-8) + var(--safe-bottom));flex-direction:column;width:100%;max-width:60rem;margin:0 auto}@media (min-width:720px){.page{padding:var(--space-8)var(--space-8)var(--space-10)}}.page-head{min-height:var(--touch);display:flex;justify-content:space-between;align-items: center;gap:var(--space-3);flex-wrap:wrap}.section-title{font-size:var(--text-xs);color:var(--muted);text-transform:uppercase;letter-spacing:.06em}.stack{display:flex;gap:var(--space-3);flex-direction:column}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:var(--space-3)var(--space-4);box-shadow:var(--shadow-1)}.card-link{display:block;color:inherit;text-decoration:none;transition:border-color var(--dur-fast)var(--ease-out),transform var(--dur)var(--ease-out)}.card-link:hover{border-color:var(--accent)}.card-head{display:flex;justify-content:space-between;align-items: flex-start;gap:var(--space-2);flex-wrap:wrap}.facts{display:grid;grid-template-columns:repeat(auto-fit,minmax(10rem,1fr));gap:var(--space-2)var(--space-4);margin:var(--space-2)0 0}.facts dt{font-size:var(--text-xs);color:var(--muted)}.facts dd{overflow-wrap:anywhere;margin:0}.skill-meta{display:grid;grid-template-columns:max-content minmax(0,1fr);gap:var(--space-2)var(--space-4);margin:0}.skill-meta dt{font-size:var(--text-xs);color:var(--muted);padding-top:.15em}.skill-meta dd{overflow-wrap:anywhere;margin:0}.skill-document{display:flex;gap:var(--space-4);flex-direction:column}.skill-meta{padding-bottom:var(--space-4);border-bottom:1px solid var(--border)}.prose.document{line-height:1.65}.prose.document>:-webkit-any(p,ul,ol,blockquote,h1,h2,h3,h4){max-width:72ch}.prose.document>:-moz-any(p,ul,ol,blockquote,h1,h2,h3,h4){max-width:72ch}.prose.document>:is(p,ul,ol,blockquote,h1,h2,h3,h4){max-width:72ch}.meta,.hint,.empty{font-size:var(--text-sm);color:var(--muted);margin:0}.empty{padding:var(--space-6)var(--space-4);text-align:center;border:1px dashed var(--border-strong);border-radius:var(--radius)}.text{white-space:pre-wrap;overflow-wrap:anywhere;margin:0}.badge{display:inline-flex;padding:0 var(--space-2);border:1px solid var(--border);border-radius:var(--radius-full);background:var(--surface-2);font-size:var(--text-xs);color:var(--muted);white-space:nowrap;align-items: center;gap:.25rem;line-height:1.3rem}.badge-busy{background:var(--success-soft);color:var(--success);border-color:#0000}.badge-warn{background:var(--warn-soft);color:var(--warn);border-color:#0000}.badge-accent{background:var(--accent-soft);color:var(--accent-ink);border-color:#0000}.badge-yolo{background:var(--yolo-soft);color:var(--yolo);border-color:#0000}.badge-long{background:var(--long-soft);color:var(--long);border-color:#0000}.failure{padding:var(--space-3)var(--space-4);border:1px solid var(--danger);border-radius:var(--radius);background:var(--danger-soft);color:var(--danger);margin:0}.skeleton{border-radius:var(--radius);background:linear-gradient(100deg,var(--surface-2)30%,var(--surface-3)50%,var(--surface-2)70%);animation:1.4s linear infinite shimmer;background-size:300% 100%;height:4rem}@keyframes shimmer{0%{background-position:100% 0}to{background-position:0 0}}button,input,select,textarea{font:inherit;color:inherit}button{display:inline-flex;justify-content:center;align-items: center;gap:var(--space-2);padding:0 var(--space-4);border:1px solid var(--accent);border-radius:var(--radius);background:var(--accent);color:var(--on-accent);font-weight:var(--weight-medium);cursor:pointer;touch-action:manipulation;transition:background-color var(--dur-fast)var(--ease-out),border-color var(--dur-fast)var(--ease-out),transform var(--dur-fast)var(--ease-out),opacity var(--dur)var(--ease-out);min-height:2.5rem}button:hover:not(:disabled){background:var(--accent-strong);border-color:var(--accent-strong)}button:active:not(:disabled){transform:scale(.97)}button.secondary,.tabs button{border-color:var(--control-border);color:var(--text);background:0 0}button.secondary:hover:not(:disabled),.tabs button:hover:not(:disabled){background:var(--surface-2);border-color:var(--control-border)}.tabs button[aria-selected=true],.tabs button[aria-pressed=true]{border-color:var(--accent);color:var(--accent)}button.danger{border-color:var(--danger);color:var(--danger);background:0 0}button.danger:hover:not(:disabled){background:var(--danger-soft);border-color:var(--danger)}button:disabled{opacity:.55;cursor:default}.icon-button{display:inline-flex;width:var(--touch);min-width:var(--touch);height:var(--touch);min-height:var(--touch);color:var(--muted);background:0 0;border-color:#0000;justify-content:center;align-items: center;padding:0}.icon-button:hover:not(:disabled){background:var(--surface-2);color:var(--text);border-color:#0000}.link-button{padding:0 var(--space-2);color:var(--accent);background:0 0;border-color:#0000;min-height:2rem}.link-button:hover:not(:disabled){background:var(--accent-soft);border-color:#0000}.danger-icon:hover:not(:disabled){background:var(--danger-soft);color:var(--danger)}input,select,textarea{padding:var(--space-2)var(--space-3);border:1px solid var(--control-border);border-radius:var(--radius);background:var(--surface);transition:border-color var(--dur-fast)var(--ease-out);width:100%;min-height:2.5rem}input:focus-visible{outline:2px solid var(--accent);outline-offset:0;border-color:var(--accent)}select:focus-visible{outline:2px solid var(--accent);outline-offset:0;border-color:var(--accent)}textarea:focus-visible{outline:2px solid var(--accent);outline-offset:0;border-color:var(--accent)}textarea{resize:vertical;line-height:var(--leading)}input[type=radio]:focus-visible{border-radius:50%}input[type=radio],input[type=checkbox]{accent-color:var(--accent);width:1.1rem;height:1.1rem;min-height:0}label{display:flex;gap:var(--space-1);font-size:var(--text-sm);color:var(--muted);flex-direction:column}label.inline{flex-direction:row;align-items: center}label.inline select{width:auto}fieldset{border:0;min-width:0;margin:0;padding:0}legend{margin-bottom:var(--space-2);font-size:var(--text-sm);color:var(--text);font-weight:var(--weight-medium);padding:0}.toolbar{display:flex;gap:var(--space-3);flex-wrap:wrap}.toolbar input{flex:1;width:auto;min-width:12rem}.tabs{display:flex;gap:var(--space-1)}.actions{display:flex;gap:var(--space-2);flex-wrap:wrap;justify-content:flex-end}.form{max-width:40rem}.form-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(14rem,1fr));gap:var(--space-3)}.back{font-size:var(--text-sm);text-decoration:none}.page-bar{display:flex;align-items: center;gap:var(--space-2);margin:calc(var(--space-2)*-1)calc(var(--space-2)*-1)0}.page-bar strong{font-size:var(--text-md)}.crash{display:flex;align-items: center;gap:var(--space-3);margin:var(--space-10)auto 0;padding:var(--space-6);border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface);box-shadow:var(--shadow-2);text-align:center;flex-direction:column;max-width:24rem}.crash p{color:var(--muted);margin:0}.crash-icon{display:grid;border-radius:var(--radius-full);background:var(--warn-soft);color:var(--warn);place-items: center;width:2.75rem;height:2.75rem}button.yolo-action{border-color:var(--yolo);background:var(--yolo);color:var(--bg)}button.yolo-action:hover:not(:disabled){border-color:var(--yolo);background:color-mix(in srgb,var(--yolo)88%,var(--text))}.switch{position:relative;border-color:var(--control-border);border-radius:var(--radius-full);background:var(--surface-3);transition:background-color var(--dur)var(--ease-out),border-color var(--dur)var(--ease-out);flex:none;width:2.75rem;min-width:2.75rem;height:1.65rem;min-height:1.65rem;padding:0}.switch:hover:not(:disabled){background:var(--border-strong);border-color:var(--control-border)}.switch-thumb{position:absolute;border-radius:var(--radius-full);background:var(--control-border);box-shadow:var(--shadow-1);transition:transform var(--dur)var(--ease-spring),background-color var(--dur)var(--ease-out);width:1.2rem;height:1.2rem;margin-top:-.6rem;top:50%;left:2px}.switch[aria-checked=true],.switch[aria-checked=true]:hover:not(:disabled){background:var(--accent);border-color:var(--accent)}.switch[aria-checked=true] .switch-thumb{background:var(--on-accent);transform:translate(1.1rem)}.segmented{display:inline-flex;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface-2);gap:2px;padding:3px}.segmented-wide{display:flex}.segmented-wide label{flex:1}.segmented label{position:relative;justify-content:center;align-items: center;gap:var(--space-2);padding:0 var(--space-3);border-radius:calc(var(--radius) - 3px);color:var(--muted);font-weight:var(--weight-medium);cursor:pointer;transition:background-color var(--dur)var(--ease-out),color var(--dur)var(--ease-out);flex-direction:row;min-height:2.25rem}.segmented label[data-checked=true]{background:var(--surface);color:var(--text);box-shadow:var(--shadow-1),inset 0 0 0 1px var(--border-strong)}.segmented input{position:absolute;opacity:0;cursor:pointer;width:100%;height:100%;inset:0}.segmented label:has(:focus-visible){outline:2px solid var(--accent)}.look-swatch{display:inline-flex;border:1px solid var(--control-border);border-radius:var(--radius-sm);gap:2px;padding:2px}.look-swatch i{display:block;border-radius:2px;width:.7rem;height:.9rem}.look-swatch[data-swatch=modern] i:first-child{background:var(--buncss-light,#f5f6f8)var(--buncss-dark,#0f1115)}.look-swatch[data-swatch=modern] i:nth-child(2){background:var(--buncss-light,#fff)var(--buncss-dark,#171a20)}.look-swatch[data-swatch=modern] i:nth-child(3){background:var(--buncss-light,#3a5bd9)var(--buncss-dark,#8ea4ff)}.look-swatch[data-swatch=camelot] i:first-child{background:var(--buncss-light,#f4ead5)var(--buncss-dark,#0f1726)}.look-swatch[data-swatch=camelot] i:nth-child(2){background:var(--buncss-light,#fbf5e6)var(--buncss-dark,#16213a)}.look-swatch[data-swatch=camelot] i:nth-child(3){background:var(--buncss-light,#b98a2c)var(--buncss-dark,#e6b94c)}.av-host{display:inline-block;user-select:none;flex:none;width:2.5rem;height:2.5rem;line-height:0}.av-host:empty{border-radius:var(--radius-full);background:var(--surface-3)}.av-host>svg{display:block;width:100%;height:100%}.av-host.static .av *{animation:none!important}.av-stack{position:relative;display:inline-block;flex:none}.av-stack-item{position:absolute;top:0}.toaster{position:fixed;z-index:50;left:0;right:0;bottom:calc(var(--tabbar-height) + var(--safe-bottom) + var(--space-3));display:flex;align-items: center;gap:var(--space-2);pointer-events:none;flex-direction:column}.app[data-fill]~.toaster{bottom:calc(5.5rem + var(--safe-bottom))}@media (min-width:720px){.toaster{bottom:var(--space-6)}}.toast{pointer-events:auto;display:flex;align-items: center;gap:var(--space-2);padding:var(--space-2)var(--space-2)var(--space-2)var(--space-4);border:1px solid var(--border-strong);border-radius:var(--radius);background:var(--raised);box-shadow:var(--shadow-2);font-size:var(--text-sm);animation:toast-in var(--dur-slow)var(--ease-spring)both;max-width:min(28rem,100vw - 2rem)}.toast[data-tone=danger]{border-color:var(--danger)}.toast-action{padding:0 var(--space-3);font-size:var(--text-sm);min-height:2rem}.toast .icon-button{width:2rem;min-width:2rem;height:2rem;min-height:2rem}@keyframes toast-in{0%{opacity:0;transform:translateY(12px)scale(.96)}}dialog{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--raised);color:var(--text);box-shadow:var(--shadow-3);padding:0}dialog::backdrop{background:var(--scrim);opacity:var(--sheet-progress,1);transition:opacity var(--dur)var(--ease-out)}dialog.sheet{overflow:hidden;opacity:0;transition:transform var(--dur-slow)var(--ease-out),opacity var(--dur)var(--ease-out);width:min(32rem,100vw - 2rem);max-height:min(85dvh,48rem);margin:auto;transform:translateY(16px)scale(.98)}dialog.sheet[open]{display:flex;flex-direction:column}dialog.sheet[data-state=open]{opacity:1;transform:none}dialog.sheet[data-state=closing]{opacity:0;transition-duration:var(--dur);transform:translateY(16px)scale(.98)}dialog.sheet[data-state=opening]::backdrop{opacity:0}dialog.sheet[data-state=closing]::backdrop{opacity:0}dialog.sheet[data-dragging]{transition:none}.sheet-grab{display:none;padding:var(--space-2)0 var(--space-1);touch-action:none;justify-content:center}.sheet-handle{border-radius:var(--radius-full);background:var(--border-strong);width:2.5rem;height:.3rem}.sheet-body{position:relative;display:flex;gap:var(--space-3);overflow-y:auto;padding:var(--space-5)var(--space-5)calc(var(--space-5) + var(--safe-bottom));overscroll-behavior:contain;flex-direction:column;flex:auto;min-height:0}.sheet-head{display:flex;justify-content:space-between;align-items: center;gap:var(--space-3);padding:var(--space-4)var(--space-4)var(--space-4)var(--space-5);border-bottom:1px solid var(--border);touch-action:none;flex:none}.sheet-head h2{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}.sheet-head button{touch-action:manipulation;flex:none}.sheet-head .icon-button{width:2.5rem;min-width:2.5rem;height:2.5rem;min-height:2.5rem}@media (min-width:720px){dialog.sheet.wide{width:min(56rem,100vw - 4rem)}}dialog.sheet.full{border:0;border-radius:0;width:100vw;max-width:none;height:100dvh;max-height:none;margin:0}@media (max-width:719px){dialog.sheet{border-radius:var(--radius-lg)var(--radius-lg)0 0;opacity:1;width:100%;max-width:none;margin:auto 0 0;transform:translateY(100%)}dialog.sheet[data-state=open]{transform:none}dialog.sheet[data-state=closing]{opacity:1;transform:translateY(100%)}.sheet-grab{display:flex}.sheet-head{padding:var(--space-3)var(--space-3)var(--space-3)var(--space-4)}.sheet-body{padding:var(--space-4)var(--space-4)calc(var(--space-4) + var(--safe-bottom))}}.menu{display:flex;list-style:none;flex-direction:column;margin:0;padding:0}.menu-item{display:flex;align-items: center;gap:var(--space-3);padding:var(--space-2)var(--space-1);border-radius:var(--radius);color:var(--text);text-align:left;text-decoration:none;font-weight:inherit;background:0 0;border:0;flex-direction:row;width:100%;min-height:3.5rem}.menu-link:hover,.menu-toggle:hover{background:var(--surface-2)}.menu-toggle{gap:var(--space-3);color:var(--text);font-size:var(--text-base);cursor:pointer;flex-direction:row}.menu-icon{display:grid;border-radius:var(--radius);background:var(--surface-2);color:var(--muted);flex:none;place-items: center;width:2.25rem;height:2.25rem}.menu-icon[data-tone=yolo]{background:var(--yolo-soft);color:var(--yolo)}.menu-icon[data-tone=long]{background:var(--long-soft);color:var(--long)}.menu-icon[data-tone=danger]{background:var(--danger-soft);color:var(--danger)}.menu-text{display:flex;flex-direction:column;flex:1;min-width:0}.menu-text .meta{font-weight:400}.more-list{display:flex;padding:var(--space-2);list-style:none;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);flex-direction:column;margin:0}.prose{overflow-wrap:anywhere}.prose>:first-child{margin-top:0}.prose>:last-child{margin-bottom:0}.prose p,.prose ul,.prose ol,.prose blockquote,.prose .code-block,.prose .table-wrap{margin:0 0 var(--space-3)}.prose ul,.prose ol{padding-left:1.4rem}.prose h1,.prose h2,.prose h3,.prose h4{margin:var(--space-4)0 var(--space-2);font-size:var(--text-md)}.prose blockquote{padding:0 var(--space-3);color:var(--muted);background:var(--surface-2);border-radius:var(--radius-sm)}.prose code{background:var(--surface-3);font-family:var(--font-mono);border-radius:4px;padding:.1em .35em;font-size:.88em}.code-block{position:relative}.code-block pre{padding:var(--space-3);overflow-x:auto;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface-2);font-size:var(--text-sm);margin:0}.code-block pre code{font-size:inherit;background:0 0;padding:0}.code-copy{position:absolute;opacity:0;transition:opacity var(--dur)var(--ease-out);width:2rem;min-width:2rem;height:2rem;min-height:2rem;top:.25rem;right:.25rem}.code-block:hover .code-copy{opacity:1}.code-copy:focus-visible{opacity:1}@media (hover:none){.code-copy{opacity:1}}.table-wrap{overflow-x:auto}.prose table{border-collapse:collapse;font-size:var(--text-sm)}.prose th,.prose td{padding:var(--space-1)var(--space-3);border:1px solid var(--border);text-align:left}.transcript{display:flex;gap:var(--space-3);list-style:none;flex-direction:column;margin:0;padding:0}.entry{padding:var(--space-3)var(--space-4);border:1px solid var(--border);border-radius:var(--radius);background:var(--surface)}.entry-user{background:var(--accent-soft)}.entry-compaction{color:var(--muted);border-style:dashed}.entry-tool{padding:var(--space-2)var(--space-4);font-size:var(--text-sm);background:0 0}.entry-tool summary{cursor:pointer;color:var(--muted)}.entry-tool pre{margin:var(--space-2)0 0;overflow:auto;white-space:pre-wrap;overflow-wrap:anywhere;max-height:20rem}.entry-head{display:flex;justify-content:space-between;gap:var(--space-2);margin-bottom:var(--space-1)}.role{font-size:var(--text-xs);font-weight:var(--weight-bold);text-transform:uppercase;letter-spacing:.04em}.call{display:block;margin-top:var(--space-2);font-size:var(--text-xs);color:var(--muted);overflow-wrap:anywhere}.theme-reveal::view-transition-old(root){animation:none;mix-blend-mode:normal}.theme-reveal::view-transition-new(root){animation:none;mix-blend-mode:normal}.theme-fade *,.theme-fade *:before,.theme-fade *:after{transition:background-color .24s var(--ease-out),color .24s var(--ease-out),border-color .24s var(--ease-out)!important}::view-transition-old(root){animation-duration:var(--dur-slow);animation-timing-function:var(--ease-out)}::view-transition-new(root){animation-duration:var(--dur-slow);animation-timing-function:var(--ease-out)}@media (max-width:719px),(pointer:coarse){button,input,select,textarea{min-height:var(--touch)}input[type=radio],input[type=checkbox]{min-height:0}select,textarea{font-size:var(--text-md)}input:where(:not(:-webkit-any([type=checkbox],[type=radio],[type=range],[type=color],[type=file]))){font-size:var(--text-md)}input:where(:not(:-moz-any([type=checkbox],[type=radio],[type=range],[type=color],[type=file]))){font-size:var(--text-md)}input:where(:not(:is([type=checkbox],[type=radio],[type=range],[type=color],[type=file]))){font-size:var(--text-md)}.switch{min-height:1.65rem}.link-button,.segmented label,.to-end,.prompt-details summary,.rail-link{min-height:var(--touch)}.prompt-details summary{display:flex;align-items: center}.code-copy,.toast .icon-button,.attached-chip .icon-button{width:var(--touch);min-width:var(--touch);height:var(--touch);min-height:var(--touch)}.back,.schedule a,.meta a{display:inline-flex;min-height:var(--touch);align-items: center}kbd{display:none}}.search-button{gap:var(--space-3);color:var(--muted)}.search-button span{display:none}@media (min-width:720px){.search-button span{display:inline}}.header-button{color:var(--text);background:0 0;border-color:#0000}.header-button:hover:not(:disabled){background:var(--surface-2);border-color:#0000}.switcher-search .switcher-add{margin-right:calc(var(--space-2)*-1);flex:none}.room-list{display:flex;gap:var(--space-2);list-style:none;flex-direction:column;margin:0;padding:0}.room-row{display:flex;align-items: center;gap:var(--space-3);padding:var(--space-3)var(--space-4);border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface);box-shadow:var(--shadow-1);color:inherit;text-decoration:none;transition:transform var(--dur)var(--ease-out),border-color var(--dur-fast)var(--ease-out),box-shadow var(--dur)var(--ease-out);min-height:4.25rem}.room-row:hover{border-color:var(--agent-accent,var(--accent));box-shadow:var(--shadow-2)}.room-row[aria-current=page]{border-color:var(--agent-accent,var(--accent));background:color-mix(in srgb,var(--agent-accent,var(--accent))14%,var(--surface))}.room-row:active{transform:scale(.99)}.room-row[data-home]{padding:var(--space-4);background:color-mix(in srgb,var(--agent-accent,var(--accent))9%,var(--surface))}.room-row-main{display:flex;flex-direction:column;flex:1;gap:2px;min-width:0}.room-row-top{display:flex;align-items: center;gap:var(--space-2)}.room-row-top strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.room-row-time{font-size:var(--text-xs);color:var(--muted);flex:none;margin-left:auto}.room-row-preview{display:flex;align-items: center;gap:var(--space-2);color:var(--muted);font-size:var(--text-sm);min-width:0}.room-row-preview>span:last-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.room-row-badges{display:flex;gap:var(--space-1);empty-cells:hide;flex-wrap:wrap}.room-row-badges:empty{display:none}.room-row-chevron{color:var(--muted);transition:transform var(--dur)var(--ease-out);flex:none}.room-row:hover .room-row-chevron{transform:translate(3px)}.thread-group{display:flex;gap:var(--space-1);margin:var(--space-2)0 var(--space-2)var(--space-5);flex-direction:column}.thread-list{display:flex;gap:var(--space-1);list-style:none;flex-direction:column;margin:0;padding:0}.thread-item{position:relative;overflow:hidden;border-radius:var(--radius-lg)}.thread-card{position:relative;display:flex;border:1px solid var(--border);border-radius:var(--radius-lg);background:color-mix(in srgb,var(--agent-accent,var(--accent))10%,var(--surface));touch-action:pan-y;transition:border-color var(--dur-fast)var(--ease-out);align-items: center}.thread-card[data-closed]{background:var(--surface);color:var(--muted)}.thread-card:hover{border-color:var(--agent-accent,var(--accent))}.thread-card:has(.thread-link[aria-current=page]){border-color:var(--agent-accent,var(--accent))}.thread-link{font-weight:600}.thread-card .thread-link{display:flex;align-items: center;gap:var(--space-3);padding:var(--space-2)var(--space-3);border-radius:var(--radius-lg);color:inherit;font-size:var(--text-sm);text-decoration:none;flex:1;min-width:0;min-height:3.5rem}.thread-card .thread-link:focus-visible{outline:2px solid var(--focus,var(--accent));outline-offset:-2px}.thread-more:focus-visible{outline:2px solid var(--focus,var(--accent));outline-offset:-2px}.thread-row-icon{color:var(--muted);flex:none}.thread-card-main{display:flex;flex-direction:column;flex:1;gap:2px;min-width:0}.thread-card-top,.thread-card-meta{display:flex;align-items: center;gap:var(--space-2);min-width:0}.thread-card-meta{flex-wrap:wrap}.thread-card-meta .room-row-time{white-space:nowrap}.thread-title{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0}.thread-card:not([data-closed]) .thread-title{color:var(--text)}.thread-reveal{position:absolute;display:flex;align-items: center;gap:var(--space-2);padding-left:var(--space-4);border-radius:var(--radius-lg);background:var(--danger-soft);color:var(--danger);font-size:var(--text-sm);font-weight:var(--weight-medium);inset:0}.thread-card[data-armed]{border-color:var(--danger)}.thread-more,.thread-clear{min-width:var(--touch);min-height:var(--touch);color:var(--muted);font-size:var(--text-xs);background:0 0;border-color:#0000;flex:none;font-weight:400}.thread-more:hover:not(:disabled),.thread-clear:hover:not(:disabled){background:var(--surface-2);color:var(--text);border-color:#0000}.thread-more{margin-right:var(--space-1);padding:0}.thread-clear{position:absolute;padding:0 var(--space-3);top:0;right:0}.thread-finished{position:relative}@media (prefers-reduced-motion:reduce){.thread-card{transition:none}}.thread-closed>summary{display:flex;min-height:var(--touch);padding:0 var(--space-3);color:var(--muted);font-size:var(--text-xs);cursor:pointer;list-style:none;align-items: center}.thread-closed>summary::-webkit-details-marker{display:none}.thread-closed>summary:before{content:"▸";margin-right:var(--space-2)}.thread-closed[open]>summary:before{content:"▾"}.thread-closed>summary:hover{color:var(--text)}.thread-closed[open]>summary{margin-bottom:var(--space-1)}.thread-finished>.thread-closed>summary{padding-right:6rem}.line .prose{text-align:center;flex:0 auto}.line .prose p{margin:0}.typing{display:inline-flex;flex:none;gap:3px}.typing i{border-radius:var(--radius-full);background:var(--success);animation:bounce 1.1s var(--ease-in-out)infinite;width:5px;height:5px}.typing i:nth-child(2){animation-delay:.15s}.typing i:nth-child(3){animation-delay:.3s}@keyframes bounce{0%,60%,to{transform:none;opacity:.45}30%{transform:translateY(-4px);opacity:1}}.room{position:relative;display:flex;background:var(--bg);flex-direction:column;flex:1;min-height:0}.room,.room-scroll,.composer{touch-action:pan-y pinch-zoom}.room-head{display:flex;align-items: center;gap:var(--space-3);padding:calc(var(--space-2) + var(--safe-top))var(--space-3)var(--space-2)var(--space-2);border-bottom:1px solid var(--border);background:color-mix(in srgb,var(--surface)92%,transparent);backdrop-filter:blur(14px);z-index:4}.room-title{display:flex;flex-direction:column;flex:1;min-width:0}.room-title h1{overflow:hidden;font-size:var(--text-md);text-overflow:ellipsis;white-space:nowrap}.room-status{font-size:var(--text-xs);color:var(--muted)}.room-status[data-working]{color:var(--success)}@media (min-width:720px){.room-back{display:none}.room-head{padding-left:var(--space-4)}}button.room-name{display:inline;border-radius:var(--radius-sm);color:inherit;font:inherit;text-align:left;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;background:0 0;border:0;max-width:100%;min-height:0;padding:0}button.room-name:hover:not(:disabled){text-decoration:underline;text-decoration-color:var(--muted);text-underline-offset:.2em;background:0 0}.room-muted,.muted-mark{margin-left:var(--space-2);vertical-align:-.1em;color:var(--muted);flex:none}button.room-picture{border-radius:var(--radius-full);background:0 0;border:0;flex:none;min-height:0;padding:0}button.room-picture:hover:not(:disabled){background:0 0}.switcher{position:fixed;z-index:30;--switcher-progress:0;visibility:hidden;pointer-events:none;transition:visibility 0s linear var(--dur-slow);inset:0}.switcher[data-state=open]{--switcher-progress:1}.switcher[data-state=open],.switcher[data-state=dragging]{visibility:visible;pointer-events:auto;transition:none}.switcher-scrim{position:absolute;background:var(--scrim);opacity:var(--switcher-progress);transition:opacity var(--dur-slow)var(--ease-out);touch-action:pan-y;inset:0}.switcher-panel{position:absolute;display:flex;padding:var(--safe-top)0 var(--safe-bottom)var(--safe-left);border-right:1px solid var(--border);background:var(--surface);box-shadow:var(--shadow-2);outline:none;transform:translate3d(calc((var(--switcher-progress) - 1)*100%),0,0);transition:transform var(--dur-slow)var(--ease-out);touch-action:pan-y;flex-direction:column;width:min(80vw,360px);inset:0 auto 0 0}.switcher[data-state=dragging] .switcher-scrim,.switcher[data-state=dragging] .switcher-panel{transition:none}.switcher-search{display:flex;align-items: center;gap:var(--space-2);margin:var(--space-3)var(--space-3)var(--space-1);padding:0 var(--space-3);border:1px solid var(--control-border);border-radius:var(--radius-full);background:var(--surface-2);color:var(--muted)}.switcher-search svg{flex:none}.switcher-search input{min-height:var(--touch);color:var(--text);outline:none;background:0 0;border:0;min-width:0;padding:0;font-size:1rem}.switcher-search:focus-within{border-color:var(--accent)}.switcher-scroll{overflow-y:auto;touch-action:pan-y;overscroll-behavior:contain;padding:0 var(--space-2)var(--space-3);flex:1;min-height:0}.switcher-heading{margin:var(--space-3)var(--space-2)var(--space-1);color:var(--muted);font-size:var(--text-xs);font-weight:var(--weight-medium)}.switcher-heading[data-waiting]{color:var(--warn)}.switcher-list{display:flex;list-style:none;flex-direction:column;gap:2px;margin:0;padding:0}.switcher-row{display:flex;align-items: center;gap:var(--space-3);padding:var(--space-2)var(--space-3);border-radius:var(--radius);color:inherit;text-decoration:none;min-height:3.5rem}.switcher-row:hover,.switcher-row:active{background:var(--surface-2)}.switcher-row[aria-current=page]{background:color-mix(in srgb,var(--agent-accent,var(--accent))14%,var(--surface))}.switcher-picture{position:relative;display:inline-flex;flex:none}.switcher-dot{position:absolute;border:2px solid var(--surface);border-radius:var(--radius-full);background:var(--warn);width:.7rem;height:.7rem;top:-1px;right:-1px}.switcher-name{display:flex;flex-direction:column;flex:1;min-width:0}.switcher-name strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.switcher-working{display:inline-flex;align-items: center;gap:var(--space-2);color:var(--success);font-size:var(--text-xs)}.switcher-mode{display:inline-flex;flex:none}.switcher-mode[data-mode=yolo]{color:var(--yolo)}.switcher-mode[data-mode=long]{color:var(--long)}.switcher-mode[data-mode=muted]{color:var(--muted)}.mode-banner{display:grid;grid-template-rows:0fr;transition:grid-template-rows var(--dur-slow)var(--ease-out);z-index:3}.mode-banner[data-open=true]{grid-template-rows:1fr}.mode-banner-inner{overflow:hidden;min-height:0}.mode-lines{display:flex;flex-direction:column}.mode-line{display:flex;align-items: center;gap:var(--space-2);padding:0 var(--space-2)0 var(--space-4);font-size:var(--text-sm);font-weight:var(--weight-medium)}.mode-line>span{flex:1}.mode-line[data-mode=yolo]{background:var(--yolo-soft);color:var(--yolo)}.mode-line[data-mode=long]{background:var(--long-soft);color:var(--long)}.mode-line .link-button{color:inherit;text-decoration:underline}.mode-line[data-mode=yolo] svg{animation:flash 2.6s var(--ease-in-out)infinite}@keyframes flash{50%{opacity:.45}}.room-scroll{overflow-anchor:auto;overflow-y:auto;overscroll-behavior:contain;scroll-padding-bottom:var(--space-4);flex:1;min-height:0}.room-content{display:flex;gap:var(--space-3);padding:var(--space-4)var(--space-3);flex-direction:column;justify-content:flex-end;width:100%;max-width:52rem;min-height:100%;margin:0 auto}.older{align-self: center}.messages{display:flex;list-style:none;flex-direction:column;gap:2px;margin:0;padding:0}.message{display:flex;align-items: flex-end;gap:var(--space-2);content-visibility:auto;contain-intrinsic-size:auto 6rem}@supports not (overflow-anchor: auto){.message{content-visibility:visible}}.message[data-header]{margin-top:var(--space-3)}.message[data-mine]{justify-content:flex-end}.message[data-enter],.line[data-enter],.slot[data-enter]{animation:arrive var(--dur-slow)var(--ease-out)both}@keyframes arrive{0%{opacity:0;transform:translateY(10px)scale(.985)}}.message-avatar{flex:none;align-self: flex-start;width:32px}.message-main{display:flex;flex-direction:column;gap:2px;min-width:0;max-width:min(40rem,86%)}.message[data-mine] .message-main{align-items: flex-end}.message-meta{display:flex;align-items:baseline;gap:var(--space-2);padding:0 var(--space-1);font-size:var(--text-xs);color:var(--muted)}.message-meta strong{color:var(--text);font-size:var(--text-sm)}.bubble{padding:var(--space-2)var(--space-3);border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface);box-shadow:var(--shadow-1);min-width:0}.message[data-mine] .bubble{background:var(--accent);color:var(--on-accent);border-bottom-right-radius:var(--radius-sm);border-color:#0000}.message[data-mine] .bubble a,.message[data-mine] .bubble code{color:inherit}.message[data-mine] .prose code,.message[data-mine] .prose blockquote{background:#ffffff2e}.message[data-mine] .code-block pre{color:inherit;background:#0003;border-color:#0000}.message:not([data-mine]) .bubble{border-bottom-left-radius:var(--radius-sm)}.message[data-live] .bubble{border-style:dashed}.message[data-pending=sending] .bubble{opacity:.6}.message[data-pending=failed] .bubble{background:var(--danger-soft);border-color:var(--danger);color:var(--danger)}.pending-actions{justify-content:flex-end}.failure-text{color:var(--danger)}.files{display:flex;gap:var(--space-2);margin:var(--space-2)0 0;list-style:none;flex-wrap:wrap;padding:0}.bubble>.files:first-child{margin-top:0}.file-image{display:block;border-radius:var(--radius);object-fit:cover;max-width:min(100%,22rem);max-height:18rem}.file-chip{display:inline-flex;align-items: center;gap:var(--space-2);padding:var(--space-1)var(--space-3);border-radius:var(--radius-full);background:var(--surface-2);color:var(--text);font-size:var(--text-sm);text-decoration:none}.message[data-mine] .file-chip{color:inherit;background:#fff3}.line{display:flex;justify-content:center;align-items: center;gap:var(--space-2);margin:var(--space-2)0;font-size:var(--text-xs);color:var(--muted)}.day{display:flex;margin:var(--space-4)0 var(--space-1);font-size:var(--text-xs);color:var(--muted);justify-content:center}.day span{padding:0 var(--space-3);border-radius:var(--radius-full);background:var(--surface-2);line-height:1.5rem}.slot{list-style:none;margin:var(--space-2)0}.progress{display:flex;gap:var(--space-2);padding:var(--space-3);border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface);animation:arrive var(--dur-slow)var(--ease-out)both;flex-direction:column}.progress-head{display:flex;align-items: center;gap:var(--space-3);font-size:var(--text-sm);color:var(--muted)}.progress-label{flex:1}.progress-bar{position:relative;overflow:hidden;border-radius:var(--radius-full);background:var(--surface-3);width:2.5rem;height:.3rem}.progress-bar:after{content:"";position:absolute;border-radius:inherit;background:var(--agent-accent,var(--accent));animation:sweep 1.3s var(--ease-in-out)infinite;width:60%;inset:0}@keyframes sweep{0%{transform:translate(-100%)}to{transform:translate(170%)}}.chips{display:flex;gap:var(--space-1);list-style:none;flex-wrap:wrap;margin:0;padding:0}.chip{display:inline-flex;align-items: center;gap:var(--space-2);padding:0 var(--space-3);border-radius:var(--radius-full);background:var(--surface-2);font-family:var(--font-mono);font-size:var(--text-xs);animation:chip-in var(--dur)var(--ease-spring)both;max-width:100%;line-height:1.6rem}@keyframes chip-in{0%{opacity:0;transform:scale(.85)}}.chip-more-item{display:contents}.chip-more{border:1px dashed var(--border);color:var(--muted);font:inherit;cursor:pointer;background:0 0;min-height:0}.chip-more:hover:not(:disabled){border-color:var(--border);background:var(--surface-2);color:var(--text)}.chip-dot{border-radius:var(--radius-full);background:var(--muted);flex:none;width:.45rem;height:.45rem}.chip[data-status=running] .chip-dot{background:var(--accent);animation:pulse-dot 1s var(--ease-in-out)infinite}.chip[data-status=ok] .chip-dot{background:var(--success)}.chip[data-status=failed] .chip-dot,.chip[data-status=refused] .chip-dot{background:var(--danger)}@keyframes pulse-dot{50%{transform:scale(1.5);opacity:.5}}.chip-preview{overflow:hidden;color:var(--muted);text-overflow:ellipsis;white-space:nowrap;max-width:14rem}.progress-flow{display:block;text-align:left}.progress-text{overflow:hidden;color:var(--muted);font-size:var(--text-sm);text-align:left;white-space:pre-wrap;overflow-wrap:anywhere;-webkit-mask-image:linear-gradient(#0000,#000 40%);mask-image:linear-gradient(#0000,#000 40%);display:flex;background:0 0;border:0;flex-direction:column;justify-content:flex-end;width:100%;min-height:0;max-height:4.6em;padding:0;font-weight:400;line-height:1.5}.progress-text:hover:not(:disabled){background:0 0;border:0}.progress-text[data-expanded=true]{overflow-y:auto;-webkit-mask-image:none;mask-image:none;max-height:40dvh}.caret{display:inline-block;vertical-align:text-bottom;background:var(--accent);animation:1s steps(2,start) infinite blink;width:.5ch;height:1.05em;margin-left:2px}@keyframes blink{to{visibility:hidden}}.waiting-button{padding:0 var(--space-2);gap:var(--space-1);border-radius:var(--radius-full);background:var(--warn);color:var(--bg);font-weight:var(--weight-bold);border-color:#0000;min-height:2rem}.waiting-button:hover:not(:disabled){background:var(--warn)}@media (min-width:720px){.room-head .waiting-button{display:none}}.to-end{position:absolute;right:var(--space-4);z-index:3;padding:0 var(--space-3);border-radius:var(--radius-full);box-shadow:var(--shadow-2);animation:toast-in var(--dur-slow)var(--ease-spring)both;min-height:2.25rem;bottom:5.5rem}.room-note,.offline-note{padding:var(--space-3)var(--space-4);text-align:center;font-size:var(--text-sm);color:var(--muted);background:var(--surface);border-top:1px solid var(--border);margin:0}.offline-banner{display:flex;justify-content:center;align-items: center;gap:var(--space-2);padding:var(--space-2)var(--space-4);background:var(--warn-soft);color:var(--warn);font-size:var(--text-sm);font-weight:var(--weight-medium);animation:banner-in var(--dur-slow)var(--ease-out)both}@keyframes banner-in{0%{opacity:0;transform:translateY(-6px)}}.spinner{border-radius:var(--radius-full);animation:.8s linear infinite spin;border:2px solid;border-right-color:#0000;flex:none;width:.9rem;height:.9rem}@keyframes spin{to{transform:rotate(360deg)}}.pending-note{color:var(--muted)}.composer{display:flex;gap:var(--space-2);padding:var(--space-2)var(--space-3)calc(var(--space-2) + var(--safe-bottom));flex-direction:column;width:100%;max-width:52rem;margin:0 auto}.composer-row{display:flex;align-items: flex-end;gap:var(--space-1);padding:var(--space-1);border:1px solid var(--control-border);background:var(--surface);box-shadow:var(--shadow-1);transition:border-color var(--dur-fast)var(--ease-out),box-shadow var(--dur)var(--ease-out);border-radius:1.5rem}.composer-row:focus-within{border-color:var(--agent-accent,var(--accent));box-shadow:0 0 0 3px color-mix(in srgb,var(--agent-accent,var(--accent))24%,transparent)}.composer textarea{min-height:var(--touch);padding:.7rem var(--space-2);resize:none;background:0 0;border:0;flex:1;max-height:200px;font-size:1rem}.composer textarea:focus-visible{outline:none}.composer-send{width:var(--touch);height:var(--touch);border-radius:var(--radius-full);flex:none;padding:0}.composer-send:disabled{background:var(--surface-3);color:var(--muted);border-color:#0000}.composer-stop{border-radius:var(--radius-full);background:var(--danger-soft);color:var(--danger);flex:none}.composer-stop:hover:not(:disabled){background:var(--danger-soft);color:var(--danger);box-shadow:inset 0 0 0 1px var(--danger)}.attached{display:flex;gap:var(--space-1);list-style:none;flex-wrap:wrap;margin:0;padding:0}.attached-chip{display:inline-flex;align-items: center;gap:var(--space-2);padding:0 0 0 var(--space-3);border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface);font-size:var(--text-sm);animation:chip-in var(--dur)var(--ease-spring)both;max-width:100%}.chip-body{display:flex;text-align:left;flex-direction:column;min-width:0}.chip-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:14rem}.chip-body .meta{overflow:hidden;font-size:var(--text-xs);text-overflow:ellipsis;white-space:nowrap;max-width:14rem}.chip-take{display:inline-flex;align-items: center;gap:var(--space-2);padding:var(--space-1)0;color:inherit;background:0 0;border:0;min-height:0;font-weight:400}.chip-take:hover:not(:disabled){color:var(--accent);background:0 0;border:0}.attached-chip[data-state=uploading]{opacity:.6}.attached-chip[data-state=failed]{border-color:var(--danger);color:var(--danger)}.attached-chip .icon-button{width:2rem;min-width:2rem;height:2rem;min-height:2rem}.prompt{display:flex;gap:var(--space-3);padding:var(--space-4);border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface);box-shadow:var(--shadow-2);transition:box-shadow var(--dur-slow)var(--ease-out),opacity var(--dur-slow)var(--ease-out);flex-direction:column}.prompt-action{background:linear-gradient(180deg,var(--accent-soft),var(--surface)3.5rem)}.prompt-timeout{background:linear-gradient(180deg,var(--warn-soft),var(--surface)3.5rem)}.prompt-ask{background:linear-gradient(180deg,var(--long-soft),var(--surface)3.5rem)}.prompt[data-ended]{box-shadow:var(--shadow-1);background:var(--surface)}.prompt-head{display:flex;align-items: center;gap:var(--space-2);flex-wrap:wrap}.prompt-icon{display:grid;border-radius:var(--radius);background:var(--accent-soft);color:var(--accent-ink);place-items: center;width:1.9rem;height:1.9rem}.prompt-timeout .prompt-icon{background:var(--warn-soft);color:var(--warn)}.prompt-ask .prompt-icon{background:var(--long-soft);color:var(--long)}.prompt-outcome{display:inline-flex;align-items: center;gap:var(--space-1);padding:0 var(--space-2);border-radius:var(--radius-full);background:var(--surface-2);color:var(--muted);font-size:var(--text-xs);animation:chip-in var(--dur)var(--ease-spring)both;margin-left:auto;line-height:1.4rem}.prompt-outcome[data-outcome=approved],.prompt-outcome[data-outcome=answered]{background:var(--success-soft);color:var(--success)}.prompt-outcome[data-outcome=declined],.prompt-outcome[data-outcome=cancelled]{background:var(--danger-soft);color:var(--danger)}.prompt-meta{color:var(--muted);font-size:var(--text-xs);margin:0}.collapse{display:grid;grid-template-rows:0fr;opacity:0;transition:grid-template-rows var(--dur-slow)var(--ease-out),opacity var(--dur)var(--ease-out)}.collapse[data-open=true]{grid-template-rows:1fr;opacity:1}.collapse-inner{display:flex;gap:var(--space-3);overflow:hidden;flex-direction:column;min-height:0;margin:-3px;padding:3px}.prompt-details{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface-2);font-size:var(--text-sm)}.prompt-details summary{padding:var(--space-2)var(--space-3);cursor:pointer;font-weight:var(--weight-medium)}.prompt-details>:not(summary){padding:0 var(--space-3)var(--space-3);margin:0}.prompt-input{overflow:auto;font-family:var(--font-mono);font-size:var(--text-xs);white-space:pre-wrap;overflow-wrap:anywhere;max-height:14rem}.prompt-files{list-style:none}.prompt-files li{display:flex;align-items: center;gap:var(--space-2)}.copy-action{align-self: flex-start}.field,.options{display:flex;gap:var(--space-2);flex-direction:column}.prompt textarea{resize:none}.prompt-answer{padding:var(--space-2)var(--space-3);border-radius:var(--radius);background:var(--surface-2);font-size:var(--text-sm);list-style:none;margin:0}.option{align-items: flex-start;gap:var(--space-3);min-height:var(--touch);padding:var(--space-2)var(--space-3);border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);color:var(--text);font-size:var(--text-base);cursor:pointer;transition:border-color var(--dur-fast)var(--ease-out),background-color var(--dur-fast)var(--ease-out);flex-direction:row}.option:hover{border-color:var(--border-strong)}.option[data-checked=true]{border-color:var(--accent);background:var(--accent-soft)}.option input{margin-top:.15rem}.option span{display:flex;flex-direction:column}.option-preview{padding:var(--space-3);overflow:auto;border-radius:var(--radius);background:var(--surface-2);font-family:var(--font-mono);font-size:var(--text-xs);white-space:pre-wrap;animation:arrive var(--dur)var(--ease-out)both;max-height:12rem;margin:0}dialog.palette{width:min(36rem,100vw - 1.5rem);max-height:min(70dvh,32rem);margin:12vh auto auto}dialog.palette .sheet-body{gap:0;padding:0}@media (max-width:719px){dialog.palette{margin:calc(var(--safe-top) + .5rem)auto auto;border-radius:var(--radius-lg);border-bottom:1px solid var(--border);opacity:0;width:calc(100vw - 1rem);transform:translateY(-12px)scale(.98)}dialog.palette[data-state=open]{opacity:1;transform:none}dialog.palette[data-state=closing]{opacity:0;transform:translateY(-12px)scale(.98)}dialog.palette .sheet-grab{display:none}}.palette-input{display:flex;align-items: center;gap:var(--space-3);padding:0 var(--space-4);border-bottom:1px solid var(--border);color:var(--muted)}.palette-input input{color:var(--text);background:0 0;border:0;min-height:3.25rem;font-size:1rem}.palette-input input:focus-visible{outline:none}.palette-list{padding:var(--space-2);overflow-y:auto;list-style:none;margin:0}.palette-list a{display:flex;align-items: center;gap:var(--space-3);min-height:var(--touch);padding:0 var(--space-3);border-radius:var(--radius);color:var(--text);text-decoration:none}.palette-list li[data-active] a,.palette-list a[aria-current=true]{background:var(--accent-soft);color:var(--accent-ink)}.palette-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1}.palette-icon{display:grid;border-radius:var(--radius-full);background:var(--surface-2);place-items: center;width:28px;height:28px}.palette-empty{padding:var(--space-4);text-align:center;color:var(--muted)}.profile-head{display:flex;align-items: center;gap:var(--space-4)}.profile-head>div{display:flex;gap:var(--space-2);flex-direction:column;align-items: flex-start}.schedule-list{display:flex;gap:var(--space-3);list-style:none;flex-direction:column;margin:0;padding:0}.schedule{display:flex;align-items: flex-start;gap:var(--space-3)}.schedule-main{display:flex;gap:var(--space-1);flex-direction:column;flex:1;min-width:0}.schedule-prompt{overflow:hidden;display:-webkit-box;-webkit-line-clamp:3;color:var(--text);overflow-wrap:anywhere;-webkit-box-orient:vertical;margin:0}.split{display:grid;grid-template-columns:minmax(18rem,22rem)minmax(0,1fr);flex:1;min-height:0}.split-list{overflow-y:auto;border-right:1px solid var(--border);background:var(--bg);min-height:0}.split-list .page[data-column]{padding:var(--space-4);gap:var(--space-4);max-width:none}.split-list .search-button span{display:none}.split-detail{display:flex;min-width:0;min-height:0}.split-detail .room{min-width:0}.agent-sheet .form{max-width:none}.agent-sheet h3{font-size:var(--text-md)}.field-head{display:flex;justify-content:space-between;align-items: center;gap:var(--space-3)}.field-label,.agent-sheet legend{font-size:var(--text-sm);color:var(--muted);font-weight:var(--weight-medium)}button.compact{padding:0 var(--space-3);font-size:var(--text-sm);min-height:2rem}.option-chips{display:flex;gap:var(--space-2);overflow-y:auto;overscroll-behavior:contain;flex-wrap:wrap;max-height:10.5rem}button.option-chip{padding:0 var(--space-3);border-color:var(--control-border);border-radius:var(--radius-full);background:var(--surface);color:var(--text);font-size:var(--text-sm);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%;min-height:2.25rem;font-weight:400}button.option-chip:hover:not(:disabled){border-color:var(--accent);background:var(--surface-2)}button.option-chip[aria-pressed=true],button.option-chip[aria-pressed=true]:hover:not(:disabled){border-color:var(--accent);background:var(--accent);color:var(--on-accent)}textarea.prompt-full{resize:none;font-family:var(--font-mono);font-size:var(--text-sm);flex:1;min-height:12rem}@media (max-width:719px),(pointer:coarse){textarea.prompt-full{font-size:var(--text-md)}}.review-fields{display:flex;gap:var(--space-2);list-style:none;flex-direction:column;margin:0;padding:0}.review-fields li{display:flex;align-items:baseline;gap:var(--space-2);font-size:var(--text-sm);flex-wrap:wrap}.review-before{color:var(--muted);text-decoration:line-through}pre.diff{padding:var(--space-2)0;overflow:auto;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);font-family:var(--font-mono);font-size:var(--text-xs);max-height:18rem;margin:0;line-height:1.5}.diff-line{display:block;padding:0 var(--space-3)0 0;white-space:pre-wrap;overflow-wrap:anywhere}.diff-line[data-kind=add]{background:color-mix(in srgb,var(--success)16%,transparent)}.diff-line[data-kind=del]{background:color-mix(in srgb,var(--danger)16%,transparent)}.diff-mark{display:inline-block;text-align:center;color:var(--muted);user-select:none;width:1.5rem}.field-tools{display:inline-flex;align-items: center;gap:var(--space-2)}.sheet.full .field textarea.prompt-full{min-height:55vh}.sheet.full .sheet-body>.stack,.sheet.full .review,.sheet.full .review>.field{flex:1;min-height:0}.sheet.full .review pre.diff{flex:1;min-height:12rem;max-height:none}.skill-lock{display:flex;align-items: center;gap:var(--space-2)}.history .menu-item[aria-pressed=true]{background:var(--surface-2)}[data-hold]{-webkit-touch-callout:none;-webkit-user-select:none;user-select:none}.room-content{-webkit-user-select:none;user-select:none}[data-hold=text] .bubble{-webkit-user-select:text;user-select:text}.message[data-hold]:focus-visible{outline:2px solid var(--focus,var(--accent));outline-offset:2px;border-radius:var(--radius-lg)}.action-popover{position:fixed;z-index:60;display:flex;overflow-y:auto;padding:var(--space-1);border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface);box-shadow:var(--shadow-2);outline:none;animation:popover-in var(--dur)var(--ease-out)both;flex-direction:column;min-width:13rem;max-width:min(22rem,100vw - 16px);max-height:calc(100dvh - 16px)}@keyframes popover-in{0%{opacity:0;transform:translateY(-4px)scale(.98)}}.action-popover .menu-item{padding:var(--space-1)var(--space-2);font-size:var(--text-sm);cursor:pointer;min-height:2.5rem}.action-popover .menu-icon{width:1.75rem;height:1.75rem}.action-items .menu-item{cursor:pointer}.action-items .menu-item:hover{background:var(--surface-2)}.action-items .menu-item:focus-visible{background:var(--surface-2)}.action-items .menu-item[data-tone=danger] strong{color:var(--danger)}.action-items .menu-check{color:var(--accent);flex:none;margin-left:auto}.action-popover .menu-item[role]{width:100%}.rt-table{position:relative;display:flex;aspect-ratio:10/11;flex-direction:column;width:100%;min-height:0;max-height:100%}.rt-table[data-variant=full]:not([data-list]){aspect-ratio:auto;flex:1 1 0;min-height:16rem}.rt-table[data-variant=compact]{aspect-ratio:auto;flex:none;height:120px}.rt-table-stage{position:relative;flex:1 1 0;min-height:0}.rt-table[data-list]{aspect-ratio:auto;height:100%}.rt-table[data-list] .rt-table-stage{aspect-ratio:10/11;flex:none;max-height:60%}.rt-table[data-list] .rt-table-stage>ul{display:none}.rt-table-list{overflow:auto;display:grid;grid-template-columns:repeat(auto-fill,minmax(8.5rem,1fr));list-style:none;flex:auto;gap:.4rem;min-height:0;margin:0;padding:.5rem}.rt-table-list button{display:flex;color:inherit;font:inherit;text-align:start;cursor:pointer;background:0 0;border:1px solid;border-radius:.5rem;align-items: center;gap:.5rem;width:100%;min-height:2.75rem;padding:.4rem .6rem}.rt-table-list button:before{content:"";background:var(--seat);border-radius:50%;flex:none;width:.75rem;height:.75rem}.t2d{position:relative;overflow:hidden;user-select:none;-webkit-user-select:none;width:100%;height:100%}.t2d svg{display:block;width:100%;height:100%}.t2d .seat{cursor:pointer;outline:none}.t2d .seat:focus-visible .plate{stroke:currentColor;stroke-width:3}.t2d .seat .lift,.t2d .seat .halo,.t2d .seat .badge,.t2d .seat .orbit,.t2d .seat .beam{transform-box:fill-box;transform-origin:center}.t2d .seat .halo{opacity:0;transition:opacity .35s}.t2d .seat .badge{opacity:0;transition:opacity .25s,transform .35s cubic-bezier(.3,1.6,.5,1);transform:scale(.4)}.t2d .seat .orbit{opacity:0;transition:opacity .3s}.t2d .seat .beam{opacity:0;transition:opacity .35s}.t2d .seat:hover .halo{opacity:.35}.t2d.focus .seat:not([data-focus]) .lift{opacity:.7}.t2d .seat[data-focus] .lift{transform:scale(1.06)}.t2d.dim .seat:not([data-state=speaking]) .lift{opacity:.78}.t2d .seat[data-state=idle] .lift{animation:3.4s ease-in-out infinite t2d-breathe}.t2d .seat[data-state=thinking] .halo{opacity:.25}.t2d .seat[data-state=thinking] .orbit{opacity:1;animation:2.6s linear infinite t2d-spin}.t2d .seat[data-state=working] .halo{opacity:.7;animation:1.1s ease-in-out infinite t2d-pulse}.t2d .seat[data-state=working] .lift{animation:.55s ease-in-out infinite t2d-bob}.t2d .seat[data-state=waiting] .halo{opacity:.8;animation:1.7s ease-in-out infinite t2d-pulse}.t2d .seat[data-state=waiting] .badge{opacity:1;animation:1.6s ease-in-out infinite t2d-wave;transform:scale(1)}.t2d .seat[data-state=waiting] .lift{transform:translateY(2px)}.t2d .seat[data-state=speaking] .halo{opacity:.85}.t2d .seat[data-state=speaking] .beam{opacity:1}.t2d .seat[data-state=speaking] .lift{animation:.5s ease-in-out infinite t2d-talk}.t2d .seat[data-state=done] .badge{opacity:1;transform:scale(1)}.t2d .seat[data-state=done] .lift{animation:.6s ease-out t2d-pop}.t2d .seat[data-state=done] .halo{opacity:.4}.t2d .seat[data-state=error] .badge{opacity:1;transform:scale(1)}.t2d .seat[data-state=error] .lift{animation:.45s linear t2d-shake}.t2d .seat[data-state=error] .halo{opacity:.85;animation:.9s steps(2,end) 2 both t2d-flicker}@keyframes t2d-breathe{50%{transform:scaleY(1.02)}}@keyframes t2d-spin{to{transform:rotate(360deg)}}@keyframes t2d-pulse{50%{opacity:.35;transform:scale(1.08)}}@keyframes t2d-bob{50%{transform:translateY(-3px)}}@keyframes t2d-wave{50%{transform:scale(1.12)rotate(6deg)}}@keyframes t2d-talk{50%{transform:scale(1.025)}}@keyframes t2d-pop{40%{transform:scale(1.14)}}@keyframes t2d-shake{20%{transform:translate(-4px)}40%{transform:translate(4px)}60%{transform:translate(-3px)}80%{transform:translate(2px)}}@keyframes t2d-flicker{50%{opacity:.25}}.t2d.reduced .seat *{animation:none!important;transition:none!important}.t2d .seat-in{animation:.82s ease-out both t2d-in}.t2d .seat-out{pointer-events:none;animation:.64s ease-in both t2d-out}.t2d .seat-ring{fill:none;stroke-width:3;transform-box:fill-box;transform-origin:center;animation:.82s ease-out both t2d-ring}.t2d .seat-out .puff{transform-box:fill-box;transform-origin:center;animation:.72s ease-out both t2d-puff}.t2d.reduced .seat-in,.t2d.reduced .seat-out{animation-duration:.16s}.t2d.reduced .seat-ring,.t2d.reduced .seat-out .puff{display:none}@keyframes t2d-in{0%{opacity:0}}@keyframes t2d-out{40%{opacity:1}to{opacity:0}}@keyframes t2d-ring{0%{opacity:0;transform:scale(.3)}40%{opacity:1}to{opacity:0;transform:scale(1.4)}}@keyframes t2d-puff{0%{opacity:1;transform:scale(.3)}50%{opacity:1}to{opacity:0;transform:translateY(-18px)scale(1.5)}}.t2d.reduced .seat[data-state=waiting] .halo,.t2d.reduced .seat[data-state=working] .halo{opacity:.6}.table-page{display:flex;gap:var(--space-2);padding:var(--space-3)var(--space-3)var(--space-2);flex-direction:column;flex:1;width:100%;min-height:0}@media (min-width:720px){.table-page{padding:var(--space-5)var(--space-6)var(--space-4)}}.table-frame{display:flex;flex-direction:column;flex:1;min-height:0}.table-host{display:flex;flex-direction:column;flex:1;justify-content:flex-start;align-items: center;width:100%;min-height:0}.table-empty{margin:var(--space-8)auto;color:var(--muted)}.table-empty-state{margin:var(--space-8)auto;display:flex;align-items: center;gap:var(--space-2);text-align:center;flex-direction:column;max-width:24rem}.table-empty-state p{margin:0}.table-tools{display:flex;align-items: center;gap:var(--space-2)}.seat-row .menu-text{flex:1;min-width:0}.group-strip{border-bottom:1px solid var(--border);background:var(--surface)}.rt-names{position:absolute;overflow:hidden;pointer-events:none;font-family:var(--rt-font,system-ui,sans-serif);inset:0}.rt-name{position:absolute;border:2px solid var(--rt-ink,#0b0f1e);background:linear-gradient(var(--rt-gold,#e3b24b),var(--rt-gold-dark,#9a6c1d));color:var(--rt-plate-ink,#3a2410);font:700 var(--rt-name-size,12px)/1.25 var(--rt-font,system-ui,sans-serif);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;cursor:pointer;pointer-events:auto;visibility:hidden;will-change:transform;border-radius:.3em;max-width:12em;min-height:0;padding:.12em .7em .16em;top:0;left:0}.rt-name:focus-visible{outline:3px solid var(--accent,#3a5bd9);outline-offset:2px}.rt-speed{mix-blend-mode:screen}.table-frame{position:relative}.room-scene,.room-scene .table-host{flex:1;min-height:0}.scene-box{position:absolute;inset-inline:var(--space-3);bottom:var(--space-3);display:flex;border:3px solid var(--rt-ink,#0b0f1e);background:color-mix(in srgb,var(--surface)94%,transparent);transform:translateY(calc(100% + var(--space-4)));opacity:0;pointer-events:none;z-index:4;border-radius:1.1rem;flex-direction:column;max-width:46rem;max-height:62%;margin-inline-start:auto;margin-inline-end:auto;transition:transform .36s cubic-bezier(.2,.9,.25,1.05),opacity .2s ease-out;box-shadow:0 .6rem 2rem #00000073}.scene-box[data-open]{opacity:1;pointer-events:auto;transform:none}.scene-tab{display:flex;align-items: center;gap:var(--space-2);margin:-1.1rem var(--space-3)0;padding:.2rem var(--space-2).2rem .3rem;max-width:calc(100% - 2*var(--space-3));border:3px solid var(--rt-ink,#0b0f1e);background:var(--agent-accent,var(--accent));color:#fff;border-radius:.8rem;align-self: flex-start}.scene-chip{display:grid;border:3px solid var(--rt-ink,#0b0f1e);background:var(--surface);overflow:hidden;border-radius:50%;place-items: center;width:2.4rem;height:2.4rem;margin:-.9rem 0 -.3rem}.scene-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:var(--text-md);text-shadow:0 1px #00000059;flex:0 auto;min-width:4ch}.scene-tools{display:flex;flex:none;align-items: center;gap:.15rem;margin-inline-start:var(--space-2)}.scene-tools .icon-button{color:inherit}.scene-log-button{gap:var(--space-1);padding-inline:var(--space-2);font-size:var(--text-xs);flex:none;width:auto}.scene-log-button span{white-space:nowrap}.scene-body{overflow:auto;padding:var(--space-2)var(--space-3)var(--space-1);flex:auto;min-height:0}.scene-line{overflow-wrap:anywhere;min-height:2.6rem;font-size:1.02rem;line-height:1.55}.scene-line[role=button]{cursor:pointer}.scene-line>:first-child{margin-top:0}.scene-from{display:block;color:var(--muted);font-size:var(--text-xs)}.scene-card{margin-top:var(--space-2)}.scene-composer{border-top:1px solid var(--border);flex:none}.scene-log{overflow:auto;padding:var(--space-2)var(--space-3);max-height:70dvh}@media (max-width:719px){.scene-tools{margin-inline-start:var(--space-1)}.scene-tools .icon-button{width:2.5rem;min-width:2.5rem}.scene-tools .scene-log-button{padding-inline:var(--space-1);width:auto}}@media (max-width:719px) and (orientation:portrait){.table-frame[data-focused]{display:grid;grid-template-rows:55% minmax(0,1fr)}.table-frame[data-focused] .table-host{min-height:0}.table-frame[data-focused] .scene-box{position:relative;border-bottom:0;border-radius:1rem 1rem 0 0;max-width:none;min-height:0;max-height:none;margin:0;inset:auto}}@media (max-width:719px) and (orientation:landscape){.scene-box{inset-inline:var(--space-2);bottom:var(--space-1);max-width:none;max-height:38%}}@media (max-width:719px){.table-frame[data-focused]:has(.scene-composer:focus-within){display:flex;flex-direction:column}.table-frame[data-focused]:has(.scene-composer:focus-within) .table-host{flex:1 1 0;min-height:15%}.table-frame[data-focused]:has(.scene-composer:focus-within) .scene-box{position:relative;border-bottom:0;border-radius:1rem 1rem 0 0;flex:0 auto;max-width:none;min-height:45%;max-height:none;margin:0;inset:auto}.table-frame[data-focused]:has(.scene-composer:focus-within) .scene-composer textarea{max-height:max(5.5rem,calc(var(--app-height,100dvh)*.3))}}@media (prefers-reduced-motion:reduce){.scene-box{transition:none}}.council-chip{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:14rem}.council-row{text-align:start;width:100%}.council-row[aria-current=true]{background:color-mix(in srgb,var(--accent)12%,transparent)}.council-count{display:block}.council-sheet h3{font-size:var(--text-sm);margin:0}.order-strip{display:flex;align-items: center;gap:var(--space-1)var(--space-2);margin-top:var(--space-1);padding:var(--space-1)var(--space-3);background:color-mix(in srgb,var(--accent)7%,transparent);flex-wrap:wrap}.order-faces{display:flex;align-items: center;gap:var(--space-1);list-style:none;flex-wrap:wrap;margin:0;padding:0}.order-face{position:relative;display:inline-flex;transition:opacity .2s ease-out,transform .2s ease-out}.order-face[data-place=spoken]{opacity:.5}.order-face[data-place=current]{transform:scale(1.08)}.order-badge{position:absolute;background:color-mix(in srgb,var(--accent)22%,var(--surface));color:var(--text);text-align:center;border-radius:999px;min-width:1rem;height:1rem;padding-inline-start:.15rem;padding-inline-end:.15rem;font-size:.625rem;font-weight:700;line-height:1rem;bottom:-.25rem}.order-badge:not(:-webkit-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))){right:-.3rem}.order-badge:not(:-moz-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))){right:-.3rem}.order-badge:not(:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))){right:-.3rem}.order-badge:-webkit-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)){left:-.3rem}.order-badge:-moz-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)){left:-.3rem}.order-badge:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)){left:-.3rem}.order-badge:empty{display:none}.order-chip{color:var(--muted);font-size:var(--text-xs);font-variant-numeric:tabular-nums;white-space:nowrap;margin-inline-start:auto}.order-queued{color:var(--muted);font-size:var(--text-xs);flex-basis:100%}@media (prefers-reduced-motion:reduce){.order-face{transition:none}}@media (max-height:480px){.order-strip{margin-top:0;padding-block-start:0;padding-block-end:0}}
|
package/dist/index.html
CHANGED
|
@@ -9,7 +9,7 @@
|
|
|
9
9
|
|
|
10
10
|
|
|
11
11
|
|
|
12
|
-
<link rel="stylesheet" crossorigin href="./chunk-index-
|
|
12
|
+
<link rel="stylesheet" crossorigin href="./chunk-index-96bv2xfw.css"><script type="module" crossorigin src="./chunk-index-htdkpbrd.js"></script></head>
|
|
13
13
|
<body>
|
|
14
14
|
<div id="root"></div>
|
|
15
15
|
|
package/dist/sw.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
var o=self,i=new URL(o.registration.scope);var d=new URL("index.html",i).href,h=new Set(["index.html","account-zk4efb87.css","chunk-account-xz99gxg8.js","chunk-action-menu-fsxjfeaq.js","chunk-agent-bq536p6g.js","chunk-arranged-rooms-y2q330yg.js","chunk-attachments-s1z9jggf.js","chunk-bulk-actions-je4qp745.js","chunk-character-creator-x8grfnwr.js","chunk-command-menu-2etjx0c7.js","chunk-confirm-wn14ffh3.js","chunk-connectors-zxn3tbnv.js","chunk-conversations-2w67mmvv.js","chunk-council-sheet-b4b04w9y.js","chunk-council-view-wem4vdqc.js","chunk-drag-r9x782vs.js","chunk-entry-bq3j0xby.js","chunk-folder-list-bbn6ctsf.js","chunk-folds-55w643e1.js","chunk-gate-d8deb600.js","chunk-host-icons-knmx5qa0.js","chunk-host-picture-42n2n9gp.js","chunk-host-state-az2ka7rs.js","chunk-host-ui-1s0xyghd.js","chunk-index-0q15ysrb.js","chunk-index-0xdptr30.js","chunk-index-0xq8m6nw.js","chunk-index-1k6n0hh9.js","chunk-index-1kvnezap.js","chunk-index-25ewnkkb.js","chunk-index-3c4wvjkj.js","chunk-index-4fyrpzwf.js","chunk-index-50r5h98m.js","chunk-index-5j6m33d2.js","chunk-index-5x86qy8d.js","chunk-index-63qqjbs8.js","chunk-index-6btfp80d.js","chunk-index-6r61x1d2.js","chunk-index-711j3dpr.js","chunk-index-7379m5yw.js","chunk-index-7wksnc48.js","chunk-index-9hb4042t.js","chunk-index-9smnxvd0.js","chunk-index-ab60h2c5.js","chunk-index-apbknsyg.js","chunk-index-b5924bb7.js","chunk-index-bdf7gs56.js","chunk-index-d0vznz2x.js","chunk-index-de5x85yn.js","chunk-index-e6z5kyz8.js","chunk-index-evmzrr8e.js","chunk-index-fdv6mepk.js","chunk-index-ff8vzfgq.js","chunk-index-fw6kawhw.js","chunk-index-hd7k712z.js","chunk-index-hrpmm09c.js","chunk-index-htdkpbrd.js","chunk-index-jsgs2gmq.js","chunk-index-kjxva289.js","chunk-index-kkcx4bns.js","chunk-index-kvvmxbyh.js","chunk-index-mcb21c5a.js","chunk-index-n1w5rpxz.js","chunk-index-n7187vns.js","chunk-index-nk38jsgf.js","chunk-index-q6txr5q7.js","chunk-index-r868k92r.js","chunk-index-rj8cvc66.js","chunk-index-rny986v2.js","chunk-index-s6a9rvgd.js","chunk-index-sjt00y5k.js","chunk-index-sp35q2ay.js","chunk-index-
|
|
1
|
+
var o=self,i=new URL(o.registration.scope);var d=new URL("index.html",i).href,h=new Set(["index.html","account-zk4efb87.css","chunk-account-xz99gxg8.js","chunk-action-menu-fsxjfeaq.js","chunk-agent-bq536p6g.js","chunk-arranged-rooms-y2q330yg.js","chunk-attachments-s1z9jggf.js","chunk-bulk-actions-je4qp745.js","chunk-character-creator-x8grfnwr.js","chunk-command-menu-2etjx0c7.js","chunk-confirm-wn14ffh3.js","chunk-connectors-zxn3tbnv.js","chunk-conversations-2w67mmvv.js","chunk-council-sheet-b4b04w9y.js","chunk-council-view-wem4vdqc.js","chunk-drag-r9x782vs.js","chunk-entry-bq3j0xby.js","chunk-folder-list-bbn6ctsf.js","chunk-folds-55w643e1.js","chunk-gate-d8deb600.js","chunk-host-icons-knmx5qa0.js","chunk-host-picture-42n2n9gp.js","chunk-host-state-az2ka7rs.js","chunk-host-ui-1s0xyghd.js","chunk-index-0q15ysrb.js","chunk-index-0xdptr30.js","chunk-index-0xq8m6nw.js","chunk-index-1k6n0hh9.js","chunk-index-1kvnezap.js","chunk-index-25ewnkkb.js","chunk-index-3c4wvjkj.js","chunk-index-4fyrpzwf.js","chunk-index-50r5h98m.js","chunk-index-5j6m33d2.js","chunk-index-5x86qy8d.js","chunk-index-63qqjbs8.js","chunk-index-6btfp80d.js","chunk-index-6r61x1d2.js","chunk-index-711j3dpr.js","chunk-index-7379m5yw.js","chunk-index-7wksnc48.js","chunk-index-96bv2xfw.css","chunk-index-9hb4042t.js","chunk-index-9smnxvd0.js","chunk-index-ab60h2c5.js","chunk-index-apbknsyg.js","chunk-index-b5924bb7.js","chunk-index-bdf7gs56.js","chunk-index-d0vznz2x.js","chunk-index-de5x85yn.js","chunk-index-e6z5kyz8.js","chunk-index-evmzrr8e.js","chunk-index-fdv6mepk.js","chunk-index-ff8vzfgq.js","chunk-index-fw6kawhw.js","chunk-index-hd7k712z.js","chunk-index-hrpmm09c.js","chunk-index-htdkpbrd.js","chunk-index-jsgs2gmq.js","chunk-index-kjxva289.js","chunk-index-kkcx4bns.js","chunk-index-kvvmxbyh.js","chunk-index-mcb21c5a.js","chunk-index-n1w5rpxz.js","chunk-index-n7187vns.js","chunk-index-nk38jsgf.js","chunk-index-q6txr5q7.js","chunk-index-r868k92r.js","chunk-index-rj8cvc66.js","chunk-index-rny986v2.js","chunk-index-s6a9rvgd.js","chunk-index-sjt00y5k.js","chunk-index-sp35q2ay.js","chunk-index-t9an6yb2.js","chunk-index-tc8s2rz3.js","chunk-index-tn9qzrj2.js","chunk-index-vgn794d7.js","chunk-index-vvxr0vz8.js","chunk-index-w0vfwqck.js","chunk-index-w1rarv3r.js","chunk-index-xfr1byr9.js","chunk-index-xj1960qj.js","chunk-index-xwnkf825.js","chunk-index-y37ffyvy.js","chunk-index-yrr5wvja.js","chunk-index-z1fvb2kq.js","chunk-index-zwfdwgnb.js","chunk-layout-actions-x0xxb5da.js","chunk-mention-menu-b1k1tm6b.js","chunk-menu-items-2meta18j.js","chunk-mode-toggle-7a44994f.js","chunk-note-row-pab6wtf0.js","chunk-notes-m0sjp2ct.js","chunk-notice-bell-s15pgaw3.js","chunk-notices-zs8xg8v8.js","chunk-onboarding-sddzxrw5.js","chunk-overview-gkf6vfks.js","chunk-palette-m6bkdz1w.js","chunk-placement-items-cb66mx65.js","chunk-profile-mvj96kv6.js","chunk-prompt-history-mffm0c56.js","chunk-prompts-26ey03ak.js","chunk-room-confirms-1j8qfyj9.js","chunk-room-menu-6myvrac1.js","chunk-rooms-menu-button-3cnm8wdd.js","chunk-schedules-gjfm0x30.js","chunk-seat-menu-neps7phz.js","chunk-section-fold-pgrjf74t.js","chunk-settings-aa212bna.js","chunk-sheet-hosts-xwtaf228.js","chunk-shortcut-help-aaat3wrh.js","chunk-shortcuts-wt9x6qd6.js","chunk-skill-editor-4jkr948n.js","chunk-skills-87rvtwt1.js","chunk-start-over-line-59zn5ekf.js","chunk-switcher-list-43n1vf29.js","chunk-tab-dot-773bfgn1.js","chunk-table-1ghv10s7.js","chunk-table2d-4k5n9dxy.js","chunk-thread-actions-dd9ah02w.js","chunk-thread-cards-qs242xk1.js","chunk-thread-list-qxymkzs9.js","chunk-transcript-sjra3d3m.js","chunk-waiting-chip-yq3485cq.js","chunk-waiting-xmy1cyk1.js","chunk-where-m6ss9smq.js","chunk-workspace-jt68gwza.js","chunk-zh-tw-m2yyg5ty.js"].map((e)=>new URL(e,i).href)),w=/\/chunk-table3d-[a-z0-9]+\.js$/,g=/\/chunk-(?:codeeditor|lang-[a-z]+)-[a-z0-9]+\.js$/,k=["api/","auth/","login","files/","avatars/"],m=(e)=>{let n=e.pathname.slice(i.pathname.length);return k.some((t)=>n.startsWith(t))};async function v(e){let n=await caches.open("roundtable-web-f0c06ca4a968");try{let t=await fetch(e);if(t.ok&&new URL(e.url).href===i.href)await n.put(d,t.clone());return t}catch{let t=await n.match(d);if(t)return t;throw Error("offline and the shell is not cached")}}async function W(e){let n=await caches.open("roundtable-web-f0c06ca4a968"),t=await n.match(e);if(t)return t;let a=await fetch(e);if(a.ok)await n.put(e,a.clone());return a}var r=(e,n)=>typeof e==="string"&&e?e.slice(0,n):void 0;function l(e){if(typeof e!=="string")return i.href;let n=URL.parse(e,i);return n&&n.origin===i.origin&&n.pathname.startsWith(i.pathname)?n.href:i.href}var E=new Set(["notice","test"]);async function u(e,n){if(!e?.tag||!e.kind||!E.has(e.kind))return;try{await fetch(new URL("api/push/receipts",i),{method:"POST",credentials:"include",headers:{"content-type":"application/json"},body:JSON.stringify({tag:e.tag,event:n})})}catch{}}async function y(e){if(typeof e!=="number"||!Number.isSafeInteger(e)||e<0)return;try{if(e>0)await o.navigator.setAppBadge?.(e);else await o.navigator.clearAppBadge?.()}catch{}}async function P(e){let n={};try{let s=e.data?.json();if(typeof s==="object"&&s!==null)n=s}catch{}let t=r(n.tag,200),a=r(n.kind,16);if(await y(n.badge),a==="clear"){if(t)for(let s of await o.registration.getNotifications({tag:t}))s.close();return}await o.registration.showNotification(r(n.title,120)??"Roundtable",{body:r(n.body,240),icon:new URL("icons/192.png",i).href,badge:new URL("icons/badge-96.png",i).href,...t?{tag:t,renotify:!0}:{},...n.urgency==="high"?{requireInteraction:!0}:{},data:{url:l(n.url),...t?{tag:t}:{},...a?{kind:a}:{}}}),await u({...t?{tag:t}:{},...a?{kind:a}:{}},"received")}async function b(e){e.notification.close();let n=e.notification.data,t=l(n?.url),a=r(n?.tag,200),s=r(n?.kind,16),f=u({...a?{tag:a}:{},...s?{kind:s}:{}},"opened"),c=(await o.clients.matchAll({type:"window",includeUncontrolled:!0})).find((p)=>p.url.startsWith(i.href));if(c)await c.focus(),c.postMessage({type:"roundtable:open",url:t});else await o.clients.openWindow(t);await f}o.addEventListener("install",(e)=>{e.waitUntil(caches.open("roundtable-web-f0c06ca4a968").then((n)=>n.addAll([...h])).then(()=>o.skipWaiting()))});o.addEventListener("activate",(e)=>{e.waitUntil(caches.keys().then((n)=>Promise.all(n.filter((t)=>t.startsWith("roundtable-web-")&&t!=="roundtable-web-f0c06ca4a968").map((t)=>caches.delete(t)))).then(()=>o.clients.claim()))});o.addEventListener("fetch",(e)=>{let{request:n}=e;if(n.method!=="GET")return;let t=new URL(n.url);if(t.origin!==i.origin||!t.pathname.startsWith(i.pathname))return;if(m(t))return;if(n.mode==="navigate")e.respondWith(v(n));else if(h.has(t.origin+t.pathname)||w.test(t.pathname)||g.test(t.pathname))e.respondWith(W(n))});o.addEventListener("push",(e)=>{e.waitUntil(P(e))});o.addEventListener("notificationclick",(e)=>{e.waitUntil(b(e))});
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "pi-roundtable-web",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.31.0",
|
|
4
4
|
"description": "A web console for the owners of a pi-roundtable host: conversations, transcripts, and memory notes, with live updates",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"license": "MIT",
|
|
@@ -43,7 +43,7 @@
|
|
|
43
43
|
"jose": "6.2.12"
|
|
44
44
|
},
|
|
45
45
|
"peerDependencies": {
|
|
46
|
-
"pi-roundtable": ">=0.
|
|
46
|
+
"pi-roundtable": ">=0.31.0 <0.32.0"
|
|
47
47
|
},
|
|
48
48
|
"devDependencies": {
|
|
49
49
|
"@biomejs/biome": "2.5.15",
|
|
@@ -70,7 +70,7 @@
|
|
|
70
70
|
"@types/react": "19.3.0",
|
|
71
71
|
"@types/react-dom": "19.3.0",
|
|
72
72
|
"@types/three": "0.186.0",
|
|
73
|
-
"pi-roundtable": "0.
|
|
73
|
+
"pi-roundtable": "0.31.0",
|
|
74
74
|
"react": "19.3.0",
|
|
75
75
|
"react-dom": "19.3.0",
|
|
76
76
|
"react-markdown": "10.1.0",
|