@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/plus-jakarta-sans-cyrillic-ext-400-normal-CJkVxub1.woff2)format("woff2"),url(/assets/plus-jakarta-sans-cyrillic-ext-400-normal-Dbdydbkh.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/plus-jakarta-sans-vietnamese-400-normal-Cg2kxhWu.woff2)format("woff2"),url(/assets/plus-jakarta-sans-vietnamese-400-normal-B8TCSmUq.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/plus-jakarta-sans-latin-ext-400-normal-D127hM_v.woff2)format("woff2"),url(/assets/plus-jakarta-sans-latin-ext-400-normal-2ppkqaOR.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/plus-jakarta-sans-latin-400-normal-Dhut76fR.woff2)format("woff2"),url(/assets/plus-jakarta-sans-latin-400-normal-BDKaGhyp.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/plus-jakarta-sans-cyrillic-ext-500-normal-WMJmRWOr.woff2)format("woff2"),url(/assets/plus-jakarta-sans-cyrillic-ext-500-normal-B7C_nQD_.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/plus-jakarta-sans-vietnamese-500-normal-DiU8zqi-.woff2)format("woff2"),url(/assets/plus-jakarta-sans-vietnamese-500-normal-CvE5C8T-.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/plus-jakarta-sans-latin-ext-500-normal-9VZagAe1.woff2)format("woff2"),url(/assets/plus-jakarta-sans-latin-ext-500-normal-CqEEAICU.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/plus-jakarta-sans-latin-500-normal-Bf-nb4oT.woff2)format("woff2"),url(/assets/plus-jakarta-sans-latin-500-normal-DYtqi0QS.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/plus-jakarta-sans-cyrillic-ext-600-normal-C5KBqx06.woff2)format("woff2"),url(/assets/plus-jakarta-sans-cyrillic-ext-600-normal-BtwufOTE.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/plus-jakarta-sans-vietnamese-600-normal-Y4VTTRme.woff2)format("woff2"),url(/assets/plus-jakarta-sans-vietnamese-600-normal-5YsyKbU1.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/plus-jakarta-sans-latin-ext-600-normal-DQgPU_Cg.woff2)format("woff2"),url(/assets/plus-jakarta-sans-latin-ext-600-normal-B0WRRYJ1.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/plus-jakarta-sans-latin-600-normal-DLTa1BUW.woff2)format("woff2"),url(/assets/plus-jakarta-sans-latin-600-normal-BR_Ojra4.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/plus-jakarta-sans-cyrillic-ext-700-normal-iShZaXYX.woff2)format("woff2"),url(/assets/plus-jakarta-sans-cyrillic-ext-700-normal-pWfpUei5.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/plus-jakarta-sans-vietnamese-700-normal-CV6qDkkj.woff2)format("woff2"),url(/assets/plus-jakarta-sans-vietnamese-700-normal-BCh_uG_5.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/plus-jakarta-sans-latin-ext-700-normal-BajbvANd.woff2)format("woff2"),url(/assets/plus-jakarta-sans-latin-ext-700-normal-8-d-IyIQ.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/plus-jakarta-sans-latin-700-normal-CfpNZvy6.woff2)format("woff2"),url(/assets/plus-jakarta-sans-latin-700-normal-DqEcQeE5.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-display:swap;font-weight:800;src:url(/assets/plus-jakarta-sans-cyrillic-ext-800-normal-DyqSzs2i.woff2)format("woff2"),url(/assets/plus-jakarta-sans-cyrillic-ext-800-normal-lQKgVBUR.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-display:swap;font-weight:800;src:url(/assets/plus-jakarta-sans-vietnamese-800-normal-CxbopLd3.woff2)format("woff2"),url(/assets/plus-jakarta-sans-vietnamese-800-normal-BkoGl_sr.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-display:swap;font-weight:800;src:url(/assets/plus-jakarta-sans-latin-ext-800-normal-B6BjB2Ju.woff2)format("woff2"),url(/assets/plus-jakarta-sans-latin-ext-800-normal-BPkb-LBK.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-display:swap;font-weight:800;src:url(/assets/plus-jakarta-sans-latin-800-normal-CusIZhrK.woff2)format("woff2"),url(/assets/plus-jakarta-sans-latin-800-normal-BRNHt2w0.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/jetbrains-mono-cyrillic-ext-400-normal-C_uLvvQ5.woff2)format("woff2"),url(/assets/jetbrains-mono-cyrillic-ext-400-normal-Bh0R7Dhr.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/jetbrains-mono-cyrillic-400-normal-BEIGL1Tu.woff2)format("woff2"),url(/assets/jetbrains-mono-cyrillic-400-normal-ugxPyKxw.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/jetbrains-mono-greek-400-normal-C190GLew.woff2)format("woff2"),url(/assets/jetbrains-mono-greek-400-normal-B9oWc5Lo.woff)format("woff");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/jetbrains-mono-vietnamese-400-normal-ByoDsISC.woff2)format("woff2"),url(/assets/jetbrains-mono-vietnamese-400-normal-CqNFfHCs.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/jetbrains-mono-latin-ext-400-normal-Bc8Ftmh3.woff2)format("woff2"),url(/assets/jetbrains-mono-latin-ext-400-normal-fXTG6kC5.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/jetbrains-mono-latin-400-normal-V6pRDFza.woff2)format("woff2"),url(/assets/jetbrains-mono-latin-400-normal-6-qcROiO.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/jetbrains-mono-cyrillic-ext-500-normal-C9ShMxGR.woff2)format("woff2"),url(/assets/jetbrains-mono-cyrillic-ext-500-normal-CEVyPk4Y.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/jetbrains-mono-cyrillic-500-normal-DmUKJPL_.woff2)format("woff2"),url(/assets/jetbrains-mono-cyrillic-500-normal-DJqRU3vO.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/jetbrains-mono-greek-500-normal-JpySY46c.woff2)format("woff2"),url(/assets/jetbrains-mono-greek-500-normal-D7SFKleX.woff)format("woff");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/jetbrains-mono-vietnamese-500-normal-BvH7FW2L.woff2)format("woff2"),url(/assets/jetbrains-mono-vietnamese-500-normal-DNRqzVM1.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/jetbrains-mono-latin-ext-500-normal-Cut-4mMH.woff2)format("woff2"),url(/assets/jetbrains-mono-latin-ext-500-normal-ckzbgY84.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/jetbrains-mono-latin-500-normal-BWZEU5yA.woff2)format("woff2"),url(/assets/jetbrains-mono-latin-500-normal-CJOVTJB7.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--color-paper:oklch(97% .012 95);--color-paper-2:oklch(94.5% .018 95);--color-paper-3:oklch(91% .022 95);--color-surface:oklch(99.2% .006 95);--color-ink:oklch(22% .014 250);--color-ink-2:oklch(40% .014 250);--color-muted:oklch(52% .014 250);--color-line:oklch(88% .02 95);--color-line-strong:oklch(80% .025 95);--color-accent:oklch(86% .18 95);--color-accent-deep:oklch(70% .16 85);--color-accent-tint:oklch(94% .07 95);--color-accent-cast:oklch(76% .2 95/.45);--color-on-accent:oklch(22% .014 250);--color-accent-2:oklch(66% .18 235);--color-accent-2-ink:oklch(48% .16 240);--color-accent-2-tint:oklch(94% .04 235);--color-accent-3:oklch(68% .24 18);--color-accent-3-ink:oklch(52% .2 22);--color-accent-3-tint:oklch(94% .04 18);--color-badge:oklch(52% .2 22);--color-mint:oklch(80% .16 150);--color-mint-ink:oklch(46% .13 150);--color-mint-tint:oklch(94% .05 150);--color-lavender:oklch(74% .16 305);--color-lavender-ink:oklch(48% .16 305);--color-lavender-tint:oklch(94% .04 305);--color-focus:oklch(55% .2 240);--color-scrim:oklch(22% .014 250/.42);--color-bubble-me:oklch(93% .06 95);--color-bubble-ai:oklch(99% .006 95/.94);--color-chat-veil:oklch(97% .012 95/.8);--color-shadow:oklch(30% .03 80/.14);--color-white:oklch(100% 0 0);--font-display:"Plus Jakarta Sans", "Geist", ui-rounded, system-ui, sans-serif;--font-body:"Plus Jakarta Sans", "Geist", ui-rounded, system-ui, sans-serif;--font-mono:"JetBrains Mono", ui-monospace, monospace;--text-xs:.75rem;--text-sm:.875rem;--text-base:1rem;--text-md:1.0625rem;--text-lg:1.25rem;--text-xl:1.5rem;--text-2xl:2rem;--text-3xl:clamp(2rem, 3vw + 1rem, 2.75rem);--space-3xs:.125rem;--space-2xs:.25rem;--space-xs:.5rem;--space-sm:.75rem;--space-md:1rem;--space-lg:1.5rem;--space-xl:2rem;--space-2xl:3rem;--space-3xl:4rem;--radius-sm:10px;--radius-input:14px;--radius-card:20px;--radius-bubble:20px;--radius-pill:999px;--rule-hair:1px;--rule-thick:2px;--ease-out:cubic-bezier(.2, .7, .3, 1);--ease-in:cubic-bezier(.5, 0, .75, 0);--ease-in-out:cubic-bezier(.65, 0, .35, 1);--ease-snap:cubic-bezier(.22, 1, .36, 1);--ease-spring:cubic-bezier(.34, 1.56, .64, 1);--dur-fast:.14s;--dur-base:.22s;--dur-slow:.42s;--rail-w:88px;--list-w:300px;--panel-w:320px;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}:root[data-accent=sky]{--color-accent:oklch(78% .14 230);--color-accent-deep:oklch(60% .15 235);--color-accent-tint:oklch(94% .04 230);--color-accent-cast:oklch(66% .18 235/.4);--color-bubble-me:oklch(93% .045 230)}:root[data-accent=coral]{--color-accent:oklch(78% .15 28);--color-accent-deep:oklch(62% .2 22);--color-accent-tint:oklch(94% .04 25);--color-accent-cast:oklch(68% .24 18/.4);--color-bubble-me:oklch(93% .04 25)}:root[data-accent=mint]{--color-accent:oklch(84% .15 150);--color-accent-deep:oklch(64% .15 150);--color-accent-tint:oklch(94% .05 150);--color-accent-cast:oklch(70% .16 150/.4);--color-bubble-me:oklch(93% .05 150)}:root[data-accent=lavender]{--color-accent:oklch(80% .12 305);--color-accent-deep:oklch(60% .16 305);--color-accent-tint:oklch(94% .035 305);--color-accent-cast:oklch(64% .16 305/.4);--color-bubble-me:oklch(93% .035 305)}:root[data-mode=dark]{--color-paper:oklch(23% .018 265);--color-paper-2:oklch(27% .02 265);--color-paper-3:oklch(32% .022 265);--color-surface:oklch(29% .02 265);--color-ink:oklch(95% .012 95);--color-ink-2:oklch(84% .012 95);--color-muted:oklch(72% .014 250);--color-line:oklch(35% .02 265);--color-line-strong:oklch(42% .022 265);--color-accent-tint:oklch(35% .05 95);--color-accent-2-ink:oklch(78% .12 235);--color-accent-2-tint:oklch(33% .05 235);--color-accent-3-ink:oklch(78% .14 22);--color-accent-3-tint:oklch(33% .06 18);--color-badge:oklch(55% .2 22);--color-mint-ink:oklch(82% .13 150);--color-mint-tint:oklch(33% .05 150);--color-lavender-ink:oklch(82% .1 305);--color-lavender-tint:oklch(33% .05 305);--color-focus:oklch(78% .14 235);--color-scrim:oklch(10% .01 265/.6);--color-bubble-me:oklch(36% .05 95);--color-bubble-ai:oklch(28% .02 265/.94);--color-chat-veil:oklch(23% .018 265/.78);--color-shadow:oklch(5% .01 265/.45);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}:root[data-mode=dark][data-accent=sky]{--color-accent-tint:oklch(34% .05 230);--color-bubble-me:oklch(35% .05 235)}:root[data-mode=dark][data-accent=coral]{--color-accent-tint:oklch(34% .05 25);--color-bubble-me:oklch(35% .05 25)}:root[data-mode=dark][data-accent=mint]{--color-accent-tint:oklch(34% .05 150);--color-bubble-me:oklch(35% .05 150)}:root[data-mode=dark][data-accent=lavender]{--color-accent-tint:oklch(34% .05 305);--color-bubble-me:oklch(35% .05 305)}*,:before,:after{box-sizing:border-box}html,body{overflow-x:clip}html{-webkit-text-size-adjust:100%}body{height:100dvh;font-family:var(--font-body);font-size:var(--text-base);color:var(--color-ink);background:var(--color-paper);-webkit-font-smoothing:antialiased;margin:0;line-height:1.5}[v-cloak]{display:none}h1,h2,h3{font-family:var(--font-display);letter-spacing:-.02em;overflow-wrap:anywhere;min-width:0;margin:0;font-style:normal;line-height:1.2}p{margin:0}ul,ol{margin:0;padding:0;list-style:none}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer;background:0 0;border:0;padding:0}img{max-width:100%;display:block}:focus-visible{outline:3px solid var(--color-focus);outline-offset:2px}.ic{fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;flex:none;width:1.25em;height:1.25em}.muted{color:var(--color-muted)}.small{font-size:var(--text-sm)}.mono{font-family:var(--font-mono);font-size:.9em}.grow{flex:1}.spin{animation:.9s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.btn{--btn-face:var(--color-accent);--btn-ink:var(--color-on-accent);--btn-edge:var(--color-accent-deep);--btn-cast:var(--color-accent-cast);white-space:nowrap;border-radius:var(--radius-pill);min-height:44px;color:var(--btn-ink);background:var(--btn-face);cursor:pointer;box-shadow:0 4px 0 0 var(--btn-edge), 0 6px 12px -3px var(--btn-cast);transition:transform var(--dur-fast) var(--ease-out), box-shadow var(--dur-fast) var(--ease-out), background-color .16s var(--ease-out);border:0;justify-content:center;align-items:center;gap:.5em;padding:.65rem 1.25rem;font-weight:700;display:inline-flex;position:relative;transform:translateY(0)}.btn:hover{box-shadow:0 6px 0 0 var(--btn-edge), 0 12px 22px -4px var(--btn-cast);transform:translateY(-2px)}.btn:active{box-shadow:0 1px 0 0 var(--btn-edge), 0 2px 6px -2px var(--btn-cast);transition-duration:70ms;transform:translateY(3px)}.btn:focus-visible{outline:3px solid var(--color-focus);outline-offset:3px}.btn[disabled]{opacity:.5;cursor:not-allowed;box-shadow:0 4px 0 0 var(--btn-edge);transform:none}.btn--sm{min-height:38px;font-size:var(--text-sm);padding:.45rem .95rem}.btn--lg{min-height:56px;font-size:var(--text-md);padding:.9rem 1.8rem}.btn--soft{--btn-face:var(--color-paper-2);--btn-ink:var(--color-ink);box-shadow:0 1px 0 0 var(--color-line), 0 4px 10px -6px var(--color-shadow)}.btn--soft:hover{background:var(--color-paper-3);box-shadow:0 2px 0 0 var(--color-line), 0 8px 16px -8px var(--color-shadow)}.btn--soft:active{box-shadow:0 0 0 0 var(--color-line)}.btn--soft[disabled]{box-shadow:none}.btn--outline{--btn-face:transparent;--btn-ink:var(--color-ink);box-shadow:inset 0 0 0 var(--rule-thick) var(--color-line-strong)}.btn--outline:hover{background:var(--color-accent-tint);box-shadow:inset 0 0 0 var(--rule-thick) var(--color-accent-deep)}.btn--outline:active{box-shadow:inset 0 0 0 var(--rule-thick) var(--color-accent-deep)}.btn--outline[disabled]{box-shadow:inset 0 0 0 var(--rule-thick) var(--color-line)}.btn--outline.danger{--btn-ink:var(--color-accent-3-ink)}.btn--outline.danger:hover{background:var(--color-accent-3-tint);box-shadow:inset 0 0 0 var(--rule-thick) var(--color-accent-3)}.btn--done{--btn-face:var(--color-mint-tint);--btn-ink:var(--color-mint-ink);box-shadow:none}.btn--done[disabled]{opacity:1;box-shadow:none}.icon-btn{border-radius:var(--radius-pill);width:44px;height:44px;color:var(--color-ink-2);transition:background-color var(--dur-fast) var(--ease-out), color var(--dur-fast) var(--ease-out), transform var(--dur-fast) var(--ease-out);place-items:center;display:inline-grid}.icon-btn:hover{background:var(--color-paper-3);color:var(--color-ink)}.icon-btn:active{transform:scale(.94)}.icon-btn.on{background:var(--color-accent-tint);color:var(--color-ink)}.icon-btn[disabled]{opacity:.35;cursor:not-allowed;background:0 0}.icon-btn.sm{width:34px;height:34px}.icon-btn.sm .ic{width:1rem;height:1rem}.link{color:var(--color-accent-2-ink);text-underline-offset:3px;text-decoration:underline;text-decoration-thickness:2px;-webkit-text-decoration-color:color-mix(in oklch, var(--color-accent-2) 45%, transparent);text-decoration-color:color-mix(in oklch, var(--color-accent-2) 45%, transparent);font-weight:600}.link:hover{text-decoration-color:currentColor}.tag{border-radius:var(--radius-pill);font-size:var(--text-xs);white-space:nowrap;align-items:center;gap:.25em;padding:.1rem .5rem;font-weight:700;display:inline-flex}.tag .ic{width:.9rem;height:.9rem}.tag--sky{background:var(--color-accent-2-tint);color:var(--color-accent-2-ink)}.tag--mint{background:var(--color-mint-tint);color:var(--color-mint-ink)}.tag--lav{background:var(--color-lavender-tint);color:var(--color-lavender-ink)}.tag--accent{background:var(--color-accent-tint);color:var(--color-ink-2)}.tag--paper{background:var(--color-surface);color:var(--color-ink);box-shadow:0 2px 8px -2px var(--color-shadow)}.badge{border-radius:var(--radius-pill);background:var(--color-badge);min-width:24px;height:24px;color:var(--color-white);font-size:var(--text-xs);place-items:center;padding:0 6px;font-weight:800;display:inline-grid}.switch{appearance:none;border-radius:var(--radius-pill);background:var(--color-line-strong);cursor:pointer;width:52px;height:30px;transition:background-color var(--dur-base) var(--ease-out);flex:none;margin:0;position:relative}.switch:after{content:"";background:var(--color-white);width:24px;height:24px;box-shadow:0 2px 4px var(--color-shadow);transition:transform var(--dur-base) var(--ease-spring);border-radius:50%;position:absolute;top:3px;left:3px}.switch:checked{background:var(--color-accent-deep)}.switch:checked:after{transform:translate(22px)}.switch-row{justify-content:space-between;align-items:center;gap:var(--space-md);padding:var(--space-sm) 0;cursor:pointer;display:flex}.switch-row>span{gap:2px;min-width:0;display:grid}.switch-row small{color:var(--color-muted);font-size:var(--text-sm)}.switch-row.inline{margin-bottom:var(--space-md);justify-content:flex-start}.pip{--pip-size:40px;width:var(--pip-size);height:calc(var(--pip-size) * .92);background:var(--color-accent);box-shadow:inset 0 -4px 0 0 var(--color-accent-deep);animation:pip-breathe 4s var(--ease-in-out) infinite;border-radius:48% 52% 46% 54%/58% 56% 44% 42%;flex:none;justify-content:center;align-items:center;gap:22%;display:inline-flex}.pip i{border-radius:var(--radius-pill);background:var(--color-on-accent);transform-origin:50%;width:14%;height:20%;animation:5.5s infinite pip-blink}.pip.hop{animation:pip-hop .52s var(--ease-spring), pip-breathe 4s var(--ease-in-out) .52s infinite}.pip.big{--pip-size:88px}@keyframes pip-breathe{0%,to{transform:scale(1)}50%{transform:scale(1.05,.97)}}@keyframes pip-blink{0%,92%,to{transform:scaleY(1)}95%{transform:scaleY(.1)}}@keyframes pip-hop{0%{transform:translateY(0)}40%{transform:translateY(-10px)scale(.94,1.08)}to{transform:translateY(0)}}#app{height:100%}.app{grid-template-columns:var(--rail-w) minmax(0, 1fr);grid-template-areas:"rail main";height:100dvh;display:grid}.app.is-chats{grid-template-columns:var(--rail-w) var(--list-w) minmax(0, 1fr);grid-template-areas:"rail list main"}.app.is-chats.has-panel{grid-template-columns:var(--rail-w) var(--list-w) minmax(0, 1fr) var(--panel-w);grid-template-areas:"rail list main panel"}.panel-scrim{display:none}.rail{align-items:center;gap:var(--space-sm);padding:var(--space-md) var(--space-xs);background:var(--color-paper-2);border-right:var(--rule-hair) solid var(--color-line);scrollbar-width:none;flex-direction:column;grid-area:rail;display:flex;overflow:hidden auto}.pip-btn{padding:var(--space-xs);border-radius:var(--radius-card);justify-items:center;gap:4px;display:grid}.brand{font-weight:800;font-size:var(--text-xs);letter-spacing:.02em}.rail-nav{gap:var(--space-2xs);width:100%;display:grid}.rail-item{width:100%;padding:var(--space-xs) 0;border-radius:var(--radius-card);color:var(--color-ink-2);transition:color var(--dur-fast) var(--ease-out);justify-items:center;gap:2px;display:grid}.rail-ic{border-radius:var(--radius-pill);width:52px;height:36px;transition:background-color var(--dur-base) var(--ease-out), transform var(--dur-base) var(--ease-spring);place-items:center;display:grid}.rail-ic .ic{width:1.4rem;height:1.4rem}.rail-label{font-size:var(--text-xs);white-space:nowrap;font-weight:600}.rail-item:hover .rail-ic{background:var(--color-paper-3)}.rail-item:hover,.rail-item.active{color:var(--color-ink)}.rail-item.active .rail-ic{background:var(--color-accent);box-shadow:inset 0 -3px 0 0 var(--color-accent-deep)}.rail-item.active .rail-label{font-weight:800}.rail-item:active .rail-ic{transform:scale(.92)}.rail-foot{justify-items:center;gap:var(--space-2xs);margin-top:auto;display:grid}.me{padding:var(--space-2xs);border-radius:var(--radius-card);font-size:var(--text-xs);justify-items:center;gap:2px;font-weight:700;display:grid}.me img{width:44px;height:44px;box-shadow:0 0 0 3px var(--color-paper-2), 0 0 0 5px var(--color-accent-deep);border-radius:50%}.me:hover{background:var(--color-paper-3)}.list{background:var(--color-paper);border-right:var(--rule-hair) solid var(--color-line);flex-direction:column;grid-area:list;min-width:0;display:flex}.list-head{padding:var(--space-md) var(--space-md) var(--space-xs);justify-content:space-between;align-items:center;display:flex}.list-head h2{font-size:var(--text-xl);font-weight:800}.list>.switch-row{margin:0 var(--space-md);padding:var(--space-xs) var(--space-sm);border-radius:var(--radius-input);background:var(--color-paper-2);font-size:var(--text-sm)}.chat-list{padding:var(--space-sm) var(--space-xs);align-content:start;gap:var(--space-2xs);flex:1;display:grid;overflow-y:auto}.chat-item{align-items:center;gap:var(--space-sm);text-align:left;width:100%;padding:var(--space-xs);border-radius:var(--radius-card);transition:background-color var(--dur-fast) var(--ease-out);display:flex;position:relative}.chat-item:hover{background:var(--color-paper-2)}.chat-item.active{background:var(--color-accent-tint)}.chat-item.active .chat-last,.chat-item.active .chat-tags{color:var(--color-ink-2)}.chat-thumb{background-position:50%;background-size:cover;border-radius:16px;flex:none;width:56px;height:56px;position:relative}.chat-thumb img{width:26px;height:26px;box-shadow:0 0 0 2px var(--color-paper);border-radius:50%;position:absolute;bottom:-4px;right:-6px}.chat-thumb img+img{right:14px}.chat-item.active .chat-thumb img{box-shadow:0 0 0 2px var(--color-accent-tint)}.chat-meta{flex:1;gap:1px;min-width:0;display:grid}.chat-name{text-overflow:ellipsis;white-space:nowrap;font-weight:700;overflow:hidden}.chat-last{font-size:var(--text-sm);color:var(--color-muted);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.chat-tags{align-items:center;gap:var(--space-2xs);font-size:var(--text-xs);color:var(--color-muted);flex-wrap:wrap;display:flex}.empty-small{padding:var(--space-lg) var(--space-md);color:var(--color-muted);font-size:var(--text-sm);text-align:center}.queue{margin:var(--space-xs);padding:var(--space-sm);border-radius:var(--radius-card);background:var(--color-paper-2)}.queue h3{align-items:center;gap:var(--space-xs);font-size:var(--text-sm);margin-bottom:var(--space-xs);font-weight:800;display:flex}.queue ol{gap:var(--space-xs);display:grid}.queue li{align-items:center;gap:var(--space-xs);font-size:var(--text-sm);display:flex}.queue li img{border-radius:50%;width:28px;height:28px}.queue li>span:nth-child(2){flex:1;min-width:0;line-height:1.25;display:grid}.queue small{color:var(--color-muted);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.queue-free{font-size:var(--text-sm);color:var(--color-mint-ink);font-weight:600}.state{font-size:var(--text-xs);border-radius:var(--radius-pill);padding:.1rem .5rem;font-weight:800}.state.run{background:var(--color-mint-tint);color:var(--color-mint-ink)}.state.wait{background:var(--color-paper-3);color:var(--color-ink-2)}.main{background:var(--color-paper);flex-direction:column;grid-area:main;min-width:0;min-height:0;display:flex;overflow:hidden}.chat{flex-direction:column;height:100%;min-height:0;display:flex}.chat-head{align-items:center;gap:var(--space-sm);padding:var(--space-sm) var(--space-md);border-bottom:var(--rule-hair) solid var(--color-line);background:var(--color-paper);min-height:68px;display:flex}.chat-title{text-align:left;min-width:0;padding:var(--space-2xs) var(--space-xs);border-radius:var(--radius-input);flex:1;display:grid}.chat-title:hover{background:var(--color-paper-2)}.chat-title-name{font-family:var(--font-display);font-weight:800;font-size:var(--text-lg);letter-spacing:-.02em;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.chat-title-sub{align-items:center;gap:var(--space-2xs);font-size:var(--text-sm);color:var(--color-muted);white-space:nowrap;display:flex;overflow:hidden}.chat-title-sub .ic{width:1rem;height:1rem}.viewers{align-items:center;gap:var(--space-xs);border-radius:var(--radius-pill);background:var(--color-mint-tint);color:var(--color-mint-ink);font-size:var(--text-sm);white-space:nowrap;padding:.25rem .75rem .25rem .25rem;font-weight:700;display:flex}.viewers img{border-radius:50%;width:28px;height:28px}.head-actions{align-items:center;gap:var(--space-2xs);display:flex}.only-mobile{display:none}.chat-search{align-items:center;gap:var(--space-xs);padding:var(--space-xs) var(--space-md);background:var(--color-paper-2);border-bottom:var(--rule-hair) solid var(--color-line);font-size:var(--text-sm);color:var(--color-muted);display:flex}.chat-search input{min-width:0;padding:var(--space-xs);font-size:var(--text-base);color:var(--color-ink);background:0 0;border:0;flex:1}.chat-search input:focus-visible{outline-offset:0;border-radius:var(--radius-sm)}.spectate{align-items:center;gap:var(--space-xs);padding:var(--space-xs) var(--space-md);background:var(--color-accent-2-tint);color:var(--color-accent-2-ink);font-size:var(--text-sm);display:flex}.msgs-wrap{flex:1;min-height:0;position:relative}.chat-bg{background-position:50%;background-size:cover;position:absolute;inset:0}.chat-bg:after{content:"";background:var(--color-chat-veil);position:absolute;inset:0}.msgs{padding:var(--space-lg) var(--space-lg) var(--space-md);gap:var(--space-md);flex-direction:column;display:flex;position:absolute;inset:0;overflow-y:auto}.msgs>*{width:100%;max-width:780px;margin-inline:auto}.msg{gap:var(--space-sm);align-items:flex-start;display:flex}.msg-av{cursor:pointer;width:48px;height:48px;box-shadow:0 0 0 3px var(--color-surface), 0 4px 10px -4px var(--color-shadow);transition:transform var(--dur-base) var(--ease-spring);border-radius:50%;flex:none}.msg-av:hover{transform:scale(1.06)rotate(-3deg)}.msg-body{gap:var(--space-xs);flex:1;justify-items:start;min-width:0;display:grid}.msg-head{align-items:baseline;gap:.2rem var(--space-xs);font-size:var(--text-sm);flex-wrap:wrap;display:flex}.msg-head strong{font-size:var(--text-base);font-weight:800}.msg-head time{color:var(--color-muted);font-size:var(--text-xs);font-family:var(--font-mono)}.role{font-size:var(--text-xs);border-radius:var(--radius-pill);padding:0 .45rem;font-weight:700}.role.ai{background:var(--color-lavender-tint);color:var(--color-lavender-ink)}.role.user{background:var(--color-accent-tint);color:var(--color-ink-2)}.by{color:var(--color-muted);font-size:var(--text-xs)}.via{color:var(--color-accent-2-ink);font-size:var(--text-xs);align-items:center;gap:2px;font-weight:700;display:inline-flex}.via .ic{width:.85rem;height:.85rem}.bubble{font-size:var(--text-md);max-width:62ch;padding:var(--space-sm) var(--space-md);background:var(--color-bubble-ai);border-radius:6px var(--radius-bubble) var(--radius-bubble) var(--radius-bubble);box-shadow:0 1px 0 var(--color-line), 0 8px 20px -14px var(--color-shadow);overflow-wrap:anywhere;line-height:1.55}.msg.user .bubble{background:var(--color-bubble-me)}.msg.hit .bubble{box-shadow:0 0 0 3px var(--color-accent-2)}.msg.live .msg-av{box-shadow:0 0 0 3px var(--color-surface), 0 0 0 5px var(--color-mint)}.act{color:var(--color-lavender-ink);font-style:italic}.msg.user .act{color:var(--color-ink-2)}.caret{vertical-align:text-bottom;background:var(--color-accent-deep);border-radius:3px;width:.5em;height:1.05em;margin-left:2px;animation:.8s steps(2,end) infinite blink;display:inline-block}@keyframes blink{50%{opacity:0}}.msg-img{width:100%;max-width:360px;margin:0}.msg-img img{aspect-ratio:8/5;object-fit:cover;border-radius:var(--radius-card);width:100%;box-shadow:0 8px 20px -12px var(--color-shadow)}.msg-img figcaption{font-size:var(--text-xs);color:var(--color-muted);margin-top:var(--space-2xs)}.audio{align-items:center;gap:var(--space-xs);border-radius:var(--radius-pill);background:var(--color-surface);max-width:100%;box-shadow:0 1px 0 var(--color-line), 0 6px 16px -10px var(--color-shadow);padding:.35rem .5rem .35rem .35rem;display:flex}.audio-play{background:var(--color-accent);width:44px;height:44px;color:var(--color-on-accent);box-shadow:0 3px 0 0 var(--color-accent-deep);transition:transform var(--dur-fast) var(--ease-out), box-shadow var(--dur-fast) var(--ease-out);border-radius:50%;flex:none;place-items:center;display:grid}.audio-play:hover{box-shadow:0 4px 0 0 var(--color-accent-deep);transform:translateY(-1px)}.audio-play:active{box-shadow:0 1px 0 0 var(--color-accent-deep);transform:translateY(2px)}.wave{flex:0 auto;align-items:center;gap:2px;width:150px;min-width:0;height:28px;display:flex;overflow:hidden}.wave span{background:var(--color-line-strong);min-width:1px;transition:background-color var(--dur-fast) linear;border-radius:2px;flex:1}.wave span.on{background:var(--color-accent-deep)}.audio.playing .wave span.on:last-of-type{animation:none}.audio-time{font-family:var(--font-mono);font-size:var(--text-xs);color:var(--color-muted);white-space:nowrap}.memo,.event{align-items:center;gap:var(--space-xs);font-size:var(--text-sm);color:var(--color-ink-2);display:flex}.memo{padding:var(--space-xs) var(--space-sm);border-radius:var(--radius-card);background:var(--color-lavender-tint);color:var(--color-lavender-ink);font-weight:600}.memo-ic{background:var(--color-surface);border-radius:50%;flex:none;place-items:center;width:32px;height:32px;display:grid}.memo span:nth-child(2){flex:1}.memo.working .memo-ic{animation:pip-breathe 1.2s var(--ease-in-out) infinite}.memo time,.event time{font-family:var(--font-mono);font-size:var(--text-xs);opacity:.75}.event{color:var(--color-mint-ink);justify-content:center;font-weight:700}.event img{border-radius:50%;width:22px;height:22px}.status-pill{align-items:center;gap:var(--space-xs);border-radius:var(--radius-pill);background:var(--color-surface);box-shadow:0 6px 16px -10px var(--color-shadow);font-size:var(--text-sm);align-self:flex-start;margin-inline:auto 0;padding:.35rem .9rem .35rem .35rem;font-weight:600;display:inline-flex;width:auto!important}.msgs>.status-pill{margin-inline:max(0px,50% - 390px)}.status-pill img{border-radius:50%;width:30px;height:30px}.status-pill.queued{background:var(--color-accent-2-tint);color:var(--color-accent-2-ink)}.dots{gap:3px;display:inline-flex}.dots i{opacity:.35;background:currentColor;border-radius:50%;width:6px;height:6px;animation:1.1s infinite dot}.dots i:nth-child(2){animation-delay:.15s}.dots i:nth-child(3){animation-delay:.3s}@keyframes dot{0%,60%,to{opacity:.35;transform:translateY(0)}30%{opacity:1;transform:translateY(-3px)}}.composer-wrap{padding:var(--space-xs) var(--space-lg) var(--space-md);background:var(--color-paper);border-top:var(--rule-hair) solid var(--color-line)}.composer-wrap>*{max-width:780px;margin-inline:auto}.persona-line{align-items:center;gap:var(--space-xs);font-size:var(--text-sm);color:var(--color-ink-2);padding:var(--space-2xs) 0 var(--space-xs);flex-wrap:wrap;display:flex}.persona-line img{border-radius:50%;width:24px;height:24px}.audio-mode{align-items:center;gap:var(--space-2xs);color:var(--color-muted);font-size:var(--text-xs);margin-left:auto;font-weight:600;display:inline-flex}.audio-mode .ic{width:1rem;height:1rem}.hint{align-items:center;gap:var(--space-xs);font-size:var(--text-sm);padding:var(--space-xs) var(--space-sm);border-radius:var(--radius-input) var(--radius-input) 0 0;font-weight:600;display:flex}.hint--rec{background:var(--color-accent-3-tint);color:var(--color-accent-3-ink)}.hint--review{background:var(--color-accent-2-tint);color:var(--color-accent-2-ink)}.rec-dot{background:var(--color-accent-3);width:10px;height:10px;animation:pulse 1s var(--ease-in-out) infinite;border-radius:50%}@keyframes pulse{50%{opacity:.5;transform:scale(1.5)}}.composer{align-items:flex-end;gap:var(--space-xs);padding:var(--space-xs);background:var(--color-surface);border-radius:var(--radius-card);box-shadow:inset 0 0 0 var(--rule-thick) var(--color-line), 0 8px 24px -16px var(--color-shadow);transition:box-shadow var(--dur-base) var(--ease-out);display:flex}.composer:focus-within{box-shadow:inset 0 0 0 var(--rule-thick) var(--color-accent-deep), 0 8px 24px -16px var(--color-shadow)}.composer.recording{box-shadow:inset 0 0 0 var(--rule-thick) var(--color-accent-3);border-top-left-radius:0;border-top-right-radius:0}.composer.review{box-shadow:inset 0 0 0 var(--rule-thick) var(--color-accent-2);border-top-left-radius:0;border-top-right-radius:0}.composer textarea{resize:none;min-width:0;font-size:var(--text-md);background:0 0;border:0;flex:1;max-height:40vh;padding:.6rem .4rem;line-height:1.45}.composer textarea:focus-visible{outline:none}.composer textarea::placeholder{color:var(--color-muted)}.mic{background:var(--color-paper-2);width:48px;height:48px;color:var(--color-ink);transition:background-color var(--dur-fast) var(--ease-out), transform var(--dur-fast) var(--ease-out);border-radius:50%;flex:none;place-items:center;display:grid}.mic .ic{width:1.4rem;height:1.4rem}.mic:hover{background:var(--color-paper-3)}.mic:active{transform:scale(.92)}.mic.on{background:var(--color-accent-3);color:var(--color-white);box-shadow:0 0 0 6px var(--color-accent-3-tint)}.send{min-height:48px}.composer-tip{font-size:var(--text-xs);color:var(--color-muted);padding-top:var(--space-xs)}.spectate.joined{background:var(--color-accent-tint);color:var(--color-ink)}.spectate span{flex:1;min-width:0}.join-closed{justify-content:center;align-items:center;gap:var(--space-xs);color:var(--color-muted);font-size:var(--text-sm);padding:var(--space-sm) 0;display:flex}.join-box{gap:var(--space-sm);padding:var(--space-sm) var(--space-md);margin:var(--space-xs) auto;border-radius:var(--radius-card);background:var(--color-accent-tint);display:grid}.join-box p{font-size:var(--text-sm);color:var(--color-ink-2)}.join-box p b{color:var(--color-ink)}.join-row{gap:var(--space-sm);flex-wrap:wrap;align-items:center;display:flex}.join-pick{align-items:center;gap:var(--space-xs);border-radius:var(--radius-pill);background:var(--color-surface);min-width:min(100%,220px);box-shadow:inset 0 0 0 var(--rule-thick) var(--color-line);flex:1;padding:4px 6px 4px 4px;display:flex}.join-pick:focus-within{box-shadow:inset 0 0 0 var(--rule-thick) var(--color-accent-deep)}.join-pick img{border-radius:50%;flex:none;width:36px;height:36px}.join-pick select{cursor:pointer;background:0 0;border:0;flex:1;min-width:0;min-height:40px;font-weight:700}.join-pick select:focus-visible{outline:none}.join-sec{padding-top:var(--space-xs);border-top:0}.join-sec .switch-row,.join-status{padding:var(--space-sm);border-radius:var(--radius-card);background:var(--color-surface);box-shadow:inset 0 0 0 var(--rule-thick) var(--color-line);transition:background-color var(--dur-base) var(--ease-out), box-shadow var(--dur-base) var(--ease-out)}.join-sec.open .switch-row,.join-sec.open .join-status{background:var(--color-accent-tint);box-shadow:inset 0 0 0 var(--rule-thick) var(--color-accent-deep)}.join-sec b{align-items:center;gap:var(--space-2xs);font-size:var(--text-sm);display:flex}.join-sec small{font-size:var(--text-xs)!important;color:var(--color-ink-2)!important}.join-status{align-items:center;gap:var(--space-sm);color:var(--color-ink-2);display:flex}.join-status>span{display:grid}.guest{align-items:center;gap:var(--space-2xs);display:flex}.guest .cast{flex:1;min-width:0}.panel{background:var(--color-paper-2);border-left:var(--rule-hair) solid var(--color-line);min-width:0;padding:0 var(--space-md) var(--space-lg);grid-area:panel;overflow-y:auto}.panel-head{padding:var(--space-md) 0 var(--space-xs);background:var(--color-paper-2);z-index:1;justify-content:space-between;align-items:center;display:flex;position:sticky;top:0}.panel-head h2{font-size:var(--text-lg);font-weight:800}.p-sec{padding:var(--space-md) 0;border-top:var(--rule-hair) solid var(--color-line);gap:var(--space-xs);display:grid}.p-sec h3{align-items:center;gap:var(--space-xs);font-size:var(--text-sm);color:var(--color-ink-2);font-weight:800;display:flex}.p-sec h3:not(:first-child){margin-top:var(--space-xs)}.cast{align-items:center;gap:var(--space-sm);padding:var(--space-xs);border-radius:var(--radius-card);text-align:left;transition:background-color var(--dur-fast) var(--ease-out);display:flex}.cast:hover{background:var(--color-paper-3)}.cast img{border-radius:50%;width:44px;height:44px}.cast span{min-width:0;line-height:1.3;display:grid}.cast small{color:var(--color-muted);font-size:var(--text-sm)}.me-cast{background:var(--color-accent-tint)}.me-cast small{color:var(--color-ink-2)}.me-cast:hover{background:var(--color-accent-tint);filter:brightness(.98)}.mem-num{align-items:center;gap:var(--space-xs);display:flex}.mem-num b{font-family:var(--font-display);font-size:var(--text-3xl);letter-spacing:-.04em;font-variant-numeric:tabular-nums;font-weight:800;line-height:1}.mem-num span{font-size:var(--text-xs);color:var(--color-muted);font-weight:700;line-height:1.2}.meter{border-radius:var(--radius-pill);background:var(--color-paper-3);height:12px;position:relative;overflow:visible}.meter>span{border-radius:var(--radius-pill);background:var(--color-mint);transition:width var(--dur-slow) var(--ease-snap);position:absolute;top:0;bottom:0;left:0}.meter.warn>span{background:var(--color-accent-3)}.meter>i{background:var(--color-ink-2);border-radius:2px;width:3px;position:absolute;top:-4px;bottom:-4px;transform:translate(-50%)}.facts{gap:var(--space-xs);margin-top:var(--space-2xs);display:grid}.facts li{padding:var(--space-xs) var(--space-sm);border-radius:var(--radius-input);background:var(--color-surface);gap:2px;display:grid}.facts li.fresh{box-shadow:inset 0 0 0 var(--rule-thick) var(--color-lavender);animation:fresh-in var(--dur-slow) var(--ease-snap)}@keyframes fresh-in{0%{opacity:0;transform:translateY(6px)}}.facts p{font-size:var(--text-sm)}.facts small{font-size:var(--text-xs);color:var(--color-muted)}.fact-tag{font-size:var(--text-xs);color:var(--color-lavender-ink);justify-self:start;font-weight:800}.chapters{gap:var(--space-2xs);counter-reset:ch;display:grid}.chapters li{counter-increment:ch;gap:var(--space-xs);font-size:var(--text-sm);color:var(--color-muted);align-items:baseline;display:flex}.chapters li:before{content:counter(ch);background:var(--color-paper-3);width:22px;height:22px;font-size:var(--text-xs);color:var(--color-ink-2);border-radius:50%;flex:none;place-items:center;font-weight:800;display:inline-grid}.chapters li.done{text-decoration:line-through;-webkit-text-decoration-color:var(--color-line-strong);text-decoration-color:var(--color-line-strong)}.chapters li.done:before{background:var(--color-mint);color:var(--color-ink)}.chapters li.now{color:var(--color-ink);font-weight:700}.chapters li.now:before{background:var(--color-accent);color:var(--color-on-accent)}.watchers li{align-items:center;gap:var(--space-xs);font-weight:600;display:flex}.watchers img{border-radius:50%;width:32px;height:32px}.live-dot{font-size:var(--text-xs);color:var(--color-mint-ink);align-items:center;gap:4px;margin-left:auto;font-weight:800;display:inline-flex}.live-dot:before{content:"";background:var(--color-mint);width:8px;height:8px;animation:pulse 1.6s var(--ease-in-out) infinite;border-radius:50%}.p-actions{gap:var(--space-xs);flex-wrap:wrap;display:flex}.page{height:100%;padding:var(--space-xl) clamp(var(--space-md), 4vw, var(--space-2xl)) var(--space-3xl);overflow-y:auto}.page-head{justify-content:space-between;align-items:flex-end;gap:var(--space-md);margin-bottom:var(--space-lg);flex-wrap:wrap;display:flex}.page-head>div:first-child{min-width:0;max-width:60ch}.page-head h1{font-size:var(--text-3xl);letter-spacing:-.035em;font-weight:800}.page-head p{color:var(--color-ink-2);margin-top:var(--space-2xs);font-size:var(--text-md)}.page-actions{gap:var(--space-xs);flex-wrap:wrap;align-items:center;display:flex}.file-btn{cursor:pointer}.file-btn input{opacity:0;pointer-events:none;width:1px;height:1px;position:absolute}.file-btn:focus-within{outline:3px solid var(--color-focus);outline-offset:3px}.card{background:var(--color-surface);border-radius:var(--radius-card);padding:var(--space-lg);box-shadow:0 1px 0 var(--color-line), 0 12px 32px -20px var(--color-shadow)}.card h2{font-size:var(--text-lg);align-items:center;gap:var(--space-xs);flex-wrap:wrap;font-weight:800;display:flex}.card>.muted{margin:var(--space-2xs) 0 var(--space-md)}.people{gap:var(--space-md);grid-template-columns:repeat(auto-fill,minmax(min(100%,230px),1fr));display:grid}.person-card{--tint:var(--color-accent-tint);--tint-strong:var(--color-accent);gap:var(--space-2xs);text-align:left;width:100%;height:100%;padding:var(--space-lg) var(--space-md) var(--space-md);border-radius:var(--radius-card);background:var(--tint);box-shadow:0 1px 0 var(--color-line);transition:transform var(--dur-base) var(--ease-spring), box-shadow var(--dur-base) var(--ease-out);justify-items:start;display:grid}.person-card:hover{box-shadow:0 18px 32px -18px var(--color-shadow), inset 0 0 0 var(--rule-thick) var(--tint-strong);transform:translateY(-4px)}.person-card:active{transform:translateY(0)}.tint-mint{--tint:var(--color-mint-tint);--tint-strong:var(--color-mint)}.tint-accent-3{--tint:var(--color-accent-3-tint);--tint-strong:var(--color-accent-3)}.tint-lavender{--tint:var(--color-lavender-tint);--tint-strong:var(--color-lavender)}.tint-sky{--tint:var(--color-accent-2-tint);--tint-strong:var(--color-accent-2)}.person-card>img{width:84px;height:84px;margin-bottom:var(--space-xs);box-shadow:0 0 0 4px var(--color-surface);transition:transform var(--dur-base) var(--ease-spring);border-radius:50%}.person-card:hover>img{transform:rotate(-5deg)scale(1.04)}.pc-name{font-family:var(--font-display);font-weight:800;font-size:var(--text-lg);letter-spacing:-.02em}.pc-title{font-size:var(--text-sm);color:var(--color-ink-2);font-weight:700}.pc-text{font-size:var(--text-sm);color:var(--color-ink-2);-webkit-line-clamp:2;margin-top:var(--space-2xs);-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.pc-likes{align-items:center;gap:var(--space-2xs);font-size:var(--text-xs);color:var(--color-accent-3-ink);margin-top:var(--space-xs);font-weight:700;display:flex}.pc-likes .ic{width:.95rem;height:.95rem}.pc-owners{margin-top:var(--space-xs);display:flex}.pc-owners img{width:24px;height:24px;box-shadow:0 0 0 2px var(--tint);border-radius:50%}.pc-owners img+img{margin-left:-6px}.person-card.add{box-shadow:inset 0 0 0 var(--rule-thick) var(--color-line-strong);text-align:center;background:0 0;border:0;align-content:center;justify-items:center;min-height:240px}.person-card.add:hover{background:var(--color-accent-tint);box-shadow:inset 0 0 0 var(--rule-thick) var(--color-accent-deep)}.add-ic{background:var(--color-accent);width:64px;height:64px;color:var(--color-on-accent);box-shadow:inset 0 -3px 0 var(--color-accent-deep);margin-bottom:var(--space-xs);border-radius:50%;place-items:center;display:grid}.add-ic .ic{width:1.75rem;height:1.75rem}.scenarios{gap:var(--space-lg);display:grid}.scenario{border-radius:var(--radius-card);background:var(--color-surface);box-shadow:0 1px 0 var(--color-line), 0 12px 32px -20px var(--color-shadow);grid-template-columns:minmax(0,280px) minmax(0,1fr);display:grid;overflow:hidden}.sc-art{min-height:200px;padding:var(--space-sm);background-position:50%;background-size:cover}.sc-body{padding:var(--space-lg);gap:var(--space-xs);align-content:start;display:grid}.sc-body h2{font-size:var(--text-xl);font-weight:800}.sc-body>p:first-of-type{color:var(--color-ink-2);max-width:60ch}.sc-cast{align-items:center;gap:var(--space-2xs);font-size:var(--text-sm);color:var(--color-muted);display:flex}.sc-cast img{width:34px;height:34px;box-shadow:0 0 0 2px var(--color-surface);border-radius:50%}.sc-cast img+img{margin-left:-10px}.sc-cast span{margin-left:var(--space-xs)}.sc-origin{align-items:center;gap:var(--space-2xs);font-size:var(--text-xs);color:var(--color-muted);font-weight:600;display:flex}.sc-origin .ic{width:.9rem;height:.9rem}.sc-actions{gap:var(--space-xs);margin-top:var(--space-xs);flex-wrap:wrap;align-items:center;display:flex}.sync-line{align-items:center;gap:var(--space-xs);font-size:var(--text-sm);color:var(--color-ink-2);margin-bottom:var(--space-md);flex-wrap:wrap;display:flex}.disc-bar{gap:var(--space-sm);margin-bottom:var(--space-sm);flex-wrap:wrap;align-items:center;display:flex}.seg{border-radius:var(--radius-pill);background:var(--color-paper-2);flex-wrap:wrap;gap:4px;padding:4px;display:inline-flex}.seg button{border-radius:var(--radius-pill);min-height:38px;font-weight:700;font-size:var(--text-sm);color:var(--color-ink-2);white-space:nowrap;transition:background-color var(--dur-fast) var(--ease-out);padding:.35rem 1rem}.seg button:hover{background:var(--color-paper-3);color:var(--color-ink)}.seg button.on{background:var(--color-surface);color:var(--color-ink);box-shadow:0 2px 6px -2px var(--color-shadow)}.search-field{align-items:center;gap:var(--space-xs);min-width:min(100%,220px);padding:0 var(--space-sm);border-radius:var(--radius-pill);background:var(--color-surface);min-height:46px;box-shadow:inset 0 0 0 var(--rule-thick) var(--color-line);color:var(--color-muted);flex:1;display:flex}.search-field:focus-within{box-shadow:inset 0 0 0 var(--rule-thick) var(--color-accent-deep)}.search-field input{min-width:0;padding:var(--space-xs) 0;color:var(--color-ink);background:0 0;border:0;flex:1}.search-field input:focus-visible{outline:none}.search-field.small{min-height:40px;font-size:var(--text-sm)}.chips{gap:var(--space-xs);flex-wrap:wrap;display:flex}.chip{border-radius:var(--radius-pill);min-height:36px;font-weight:700;font-size:var(--text-sm);background:var(--color-paper-2);color:var(--color-ink-2);transition:background-color var(--dur-fast) var(--ease-out), transform var(--dur-fast) var(--ease-spring);align-items:center;gap:4px;padding:.3rem .9rem;display:inline-flex}button.chip:hover{background:var(--color-paper-3);transform:translateY(-1px)}.chip.on{background:var(--color-accent);color:var(--color-on-accent)}.chip.no{background:var(--color-accent-3-tint);color:var(--color-accent-3-ink)}.chip button{border-radius:50%;place-items:center;width:22px;height:22px;margin-right:-6px;display:grid}.chip button:hover{background:color-mix(in oklch, currentColor 15%, transparent)}.chip button .ic{width:.85rem;height:.85rem}.disc-grid{gap:var(--space-md);margin-top:var(--space-lg);grid-template-columns:repeat(auto-fill,minmax(min(100%,260px),1fr));display:grid}.disc-card{border-radius:var(--radius-card);background:var(--color-surface);box-shadow:0 1px 0 var(--color-line), 0 12px 28px -20px var(--color-shadow);transition:transform var(--dur-base) var(--ease-spring), box-shadow var(--dur-base) var(--ease-out);flex-direction:column;display:flex;overflow:hidden}.disc-card:hover{box-shadow:0 1px 0 var(--color-line), 0 20px 36px -20px var(--color-shadow);transform:translateY(-4px)}.disc-art{background-position:50%;background-size:cover;background-color:var(--color-paper-2);place-items:center;height:128px;display:grid}.type-character .disc-art{background-color:var(--color-lavender-tint)}.type-persona .disc-art{background-color:var(--color-mint-tint)}.disc-art img{width:88px;height:88px;box-shadow:0 0 0 4px var(--color-surface);border-radius:50%}.disc-body{padding:var(--space-md) var(--space-md) var(--space-xs);gap:var(--space-2xs);flex:1;align-content:start;display:grid}.disc-type{font-size:var(--text-xs);color:var(--color-accent-2-ink);font-weight:800}.disc-body h2{font-size:var(--text-lg);font-weight:800}.disc-body p{font-size:var(--text-sm);color:var(--color-ink-2)}.disc-src{margin-top:var(--space-2xs);overflow-wrap:anywhere;align-items:center;gap:4px;display:flex;color:var(--color-muted)!important;font-size:var(--text-xs)!important}.disc-src .ic{width:.9rem;height:.9rem}.disc-card>.btn{margin:var(--space-xs) var(--space-md) var(--space-md);align-self:flex-start}.studio-grid{gap:var(--space-lg);grid-template-columns:minmax(0,420px) minmax(0,1fr);align-items:start;display:grid}.studio-form{gap:var(--space-md);display:grid}fieldset{border:0;min-width:0;margin:0;padding:0}legend{font-weight:700;font-size:var(--text-sm);margin-bottom:var(--space-xs);padding:0}.field{gap:var(--space-2xs);min-width:0;display:grid}.field>span,.field>legend{align-items:center;gap:var(--space-2xs);font-weight:700;font-size:var(--text-sm);display:flex}.field>span small{color:var(--color-muted);margin-left:auto;font-weight:500}.field input:not([type=checkbox]):not([type=radio]):not([type=range]),.field select,.field textarea,.add-repo input,.list-edit input{border-radius:var(--radius-input);background:var(--color-paper);width:100%;min-height:46px;color:var(--color-ink);box-shadow:inset 0 0 0 var(--rule-thick) var(--color-line);transition:box-shadow var(--dur-fast) var(--ease-out);border:0;padding:.6rem .85rem}.field textarea{resize:vertical;line-height:1.5}.field input:focus-visible,.field select:focus-visible,.field textarea:focus-visible,.add-repo input:focus-visible,.list-edit input:focus-visible{box-shadow:inset 0 0 0 var(--rule-thick) var(--color-accent-deep), 0 0 0 4px var(--color-accent-tint);outline:none}.field input:invalid:not(:placeholder-shown){box-shadow:inset 0 0 0 var(--rule-thick) var(--color-accent-3)}input[type=range]{width:100%;accent-color:var(--color-accent-deep);height:28px}.studio-actions{gap:var(--space-xs);flex-wrap:wrap;justify-content:space-between;align-items:center;display:flex}.server-note{align-items:center;gap:var(--space-xs);font-size:var(--text-xs);color:var(--color-muted);overflow-wrap:anywhere;display:flex}.studio-out{min-height:420px;display:grid}.studio-empty,.studio-progress{align-content:center;place-items:center;gap:var(--space-md);text-align:center;color:var(--color-ink-2);display:grid}.empty-art{background:var(--color-accent-2-tint);width:96px;height:96px;color:var(--color-accent-2-ink);border-radius:28px;place-items:center;display:grid;transform:rotate(-6deg)}.empty-art .ic{width:2.5rem;height:2.5rem}.studio-progress .meter{width:min(320px,100%)}.studio-progress .meter>span{background:var(--color-accent)}.results{gap:var(--space-md);grid-template-columns:repeat(auto-fill,minmax(min(100%,200px),1fr));align-content:start;display:grid}.results.avatar{max-width:560px}.results.background{grid-template-columns:repeat(auto-fill,minmax(min(100%,280px),1fr))}.results li{gap:var(--space-xs);display:grid}.results img{border-radius:var(--radius-card);aspect-ratio:1;object-fit:cover;width:100%;animation:fresh-in var(--dur-slow) var(--ease-snap) both}.results.background img{aspect-ratio:16/10}.results li:nth-child(2) img{animation-delay:80ms}.results li:nth-child(3) img{animation-delay:.16s}.results li:nth-child(4) img{animation-delay:.24s}.settings-grid{gap:var(--space-xl);grid-template-columns:220px minmax(0,1fr);align-items:start;display:grid}.settings-nav{gap:var(--space-2xs);display:grid;position:sticky;top:0}.settings-nav button{text-align:left;border-radius:var(--radius-pill);color:var(--color-ink-2);transition:background-color var(--dur-fast) var(--ease-out);padding:.65rem 1rem;font-weight:700}.settings-nav button:hover{background:var(--color-paper-2);color:var(--color-ink)}.settings-nav button.on{background:var(--color-accent);color:var(--color-on-accent);box-shadow:inset 0 -3px 0 var(--color-accent-deep)}.settings-body{min-width:0;max-width:820px}.stack{gap:var(--space-lg);display:grid}.stack .card{gap:var(--space-sm);display:grid}.stack .card>.muted{margin:0}.note{font-size:var(--text-sm);color:var(--color-ink-2);gap:var(--space-xs);flex-wrap:wrap;align-items:baseline;display:flex}.radio-cards{gap:var(--space-sm);grid-template-columns:repeat(auto-fit,minmax(min(100%,180px),1fr));display:grid}.radio-cards legend{grid-column:1/-1}.radio-cards label{padding:var(--space-md);border-radius:var(--radius-card);background:var(--color-paper);box-shadow:inset 0 0 0 var(--rule-thick) var(--color-line);cursor:pointer;transition:box-shadow var(--dur-fast) var(--ease-out), background-color var(--dur-fast) var(--ease-out);gap:2px;display:grid}.radio-cards label:hover{box-shadow:inset 0 0 0 var(--rule-thick) var(--color-line-strong)}.radio-cards label.on{background:var(--color-accent-tint);box-shadow:inset 0 0 0 3px var(--color-accent-deep)}.radio-cards label:focus-within{outline:3px solid var(--color-focus);outline-offset:2px}.radio-cards input{opacity:0;pointer-events:none;position:absolute}.radio-cards small{color:var(--color-ink-2);font-size:var(--text-sm)}.mode-pick{gap:var(--space-md);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.mode-pick button{justify-items:center;gap:var(--space-xs);padding:var(--space-md);border-radius:var(--radius-card);box-shadow:inset 0 0 0 var(--rule-thick) var(--color-line);font-weight:800;display:grid}.mode-pick button>.ic{display:none}.mode-pick button.on{box-shadow:inset 0 0 0 3px var(--color-accent-deep);background:var(--color-accent-tint)}.mode-prev{border-radius:14px;flex-direction:column;justify-content:flex-end;gap:6px;width:100%;height:80px;padding:10px;display:flex}.mode-prev i{border-radius:7px;height:14px}.mode-prev i:first-child{width:60%}.mode-prev i:last-child{align-self:flex-end;width:40%}.mode-prev.light{background:oklch(97% .012 95);box-shadow:inset 0 0 0 1px oklch(88% .02 95)}.mode-prev.light i:first-child{background:oklch(99% .006 95);box-shadow:0 1px oklch(88% .02 95)}.mode-prev.light i:last-child,.mode-prev.dark i:last-child{background:var(--color-accent)}.mode-prev.dark{background:oklch(23% .018 265)}.mode-prev.dark i:first-child{background:oklch(29% .02 265)}.swatches{gap:var(--space-sm);flex-wrap:wrap;display:flex}.swatch{justify-items:center;gap:var(--space-2xs);font-size:var(--text-sm);padding:var(--space-xs);border-radius:var(--radius-card);min-width:76px;font-weight:700;display:grid}.swatch span{width:52px;height:52px;transition:transform var(--dur-base) var(--ease-spring);border-radius:50%}.swatch:hover span{transform:scale(1.08)}.swatch.on span{box-shadow:0 0 0 4px var(--color-surface), 0 0 0 7px var(--color-ink)}.sw-pear span{background:oklch(86% .18 95)}.sw-sky span{background:oklch(78% .14 230)}.sw-coral span{background:oklch(78% .15 28)}.sw-mint span{background:oklch(84% .15 150)}.sw-lavender span{background:oklch(80% .12 305)}.server-head{justify-content:space-between;gap:var(--space-md);align-items:flex-start;display:flex}.server-head>div{min-width:0}.status{font-size:var(--text-xs);border-radius:var(--radius-pill);white-space:nowrap;align-items:center;gap:6px;padding:.25rem .65rem;font-weight:800;display:inline-flex}.status i{background:currentColor;border-radius:50%;width:8px;height:8px}.st-online{background:var(--color-mint-tint);color:var(--color-mint-ink)}.st-langsam{background:var(--color-accent-tint);color:var(--color-ink-2)}.st-offline{background:var(--color-accent-3-tint);color:var(--color-accent-3-ink)}.st-undefined,.st-testing{background:var(--color-paper-2);color:var(--color-ink-2)}.server-fields{gap:var(--space-sm);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.server-fields .wide{grid-column:span 2}.server .btn{justify-self:start}.flow{gap:var(--space-xs);margin-top:var(--space-xs);grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.flow div{padding:var(--space-sm);border-radius:var(--radius-input);background:var(--color-lavender-tint);color:var(--color-lavender-ink);font-size:var(--text-sm);gap:var(--space-2xs);align-content:start;font-weight:600;display:grid}.flow b{background:var(--color-surface);border-radius:50%;place-items:center;width:28px;height:28px;font-weight:800;display:grid}.queue-now{font-weight:700}.repos{gap:var(--space-xs);display:grid}.repos li{align-items:center;gap:var(--space-sm);padding:var(--space-xs) var(--space-sm);border-radius:var(--radius-input);background:var(--color-paper);display:flex}.repo-main{overflow-wrap:anywhere;flex:1;min-width:0;display:grid}.repo-main small{color:var(--color-muted);font-size:var(--text-xs)}.add-repo{gap:var(--space-xs);flex-wrap:wrap;display:flex}.add-repo input{flex:1;min-width:min(100%,240px)}.stack .card>.btn,.stack .card>.file-btn{justify-self:start}.data-rows{gap:var(--space-xs);display:grid}.data-row{justify-content:space-between;align-items:center;gap:var(--space-sm);padding:var(--space-xs) var(--space-sm);border-radius:var(--radius-input);background:var(--color-paper);display:flex}.data-row span{display:grid}.data-row small{color:var(--color-muted);font-size:var(--text-xs)}.overlay{z-index:50;background:var(--color-scrim);animation:fade var(--dur-base) var(--ease-out);position:fixed;inset:0}@keyframes fade{0%{opacity:0}}.overlay.center{padding:8vh var(--space-md) var(--space-md);place-items:start center;display:grid;overflow-y:auto}.modal{background:var(--color-paper);border-radius:var(--radius-card);width:min(100%,580px);box-shadow:0 30px 60px -20px var(--color-shadow);animation:pop var(--dur-base) var(--ease-snap);flex-direction:column;max-height:84vh;display:flex}@keyframes pop{0%{opacity:0;transform:translateY(12px)scale(.98)}}.sheet-wrap{justify-content:flex-end;display:flex}.sheet{background:var(--color-paper);width:min(100%,580px);height:100%;box-shadow:-20px 0 50px -20px var(--color-shadow);animation:slide var(--dur-slow) var(--ease-snap);flex-direction:column;display:flex}@keyframes slide{0%{opacity:0;transform:translate(40px)}}.sheet-head{justify-content:space-between;align-items:center;gap:var(--space-sm);padding:var(--space-md) var(--space-lg);border-bottom:var(--rule-hair) solid var(--color-line);display:flex}.sheet-head h2{font-size:var(--text-xl);font-weight:800}.sheet-body{padding:var(--space-lg);gap:var(--space-md);flex:1;align-content:start;display:grid;overflow-y:auto}.sheet-foot{align-items:center;gap:var(--space-xs);padding:var(--space-md) var(--space-lg);border-top:var(--rule-hair) solid var(--color-line);background:var(--color-paper-2);flex-wrap:wrap;display:flex}.ed-top{align-items:center;gap:var(--space-md);flex-wrap:wrap;display:flex}.ed-av{width:112px;height:112px;box-shadow:0 0 0 5px var(--color-surface), 0 12px 24px -12px var(--color-shadow);border-radius:50%}.ed-av-actions{gap:var(--space-xs);justify-items:start;display:grid}.ed-av-actions small{font-size:var(--text-xs)}.ed-av-drop{cursor:pointer;border-radius:50%;display:block;position:relative}.ed-av-drop input,.scene-up input{opacity:0;pointer-events:none;width:1px;height:1px;position:absolute}.ed-av-hint{background:var(--color-accent);width:36px;height:36px;color:var(--color-on-accent);box-shadow:0 0 0 3px var(--color-paper), inset 0 -2px 0 var(--color-accent-deep);transition:transform var(--dur-base) var(--ease-spring);border-radius:50%;place-items:center;display:grid;position:absolute;bottom:2px;right:2px}.ed-av-drop:hover .ed-av-hint{transform:scale(1.12)}.ed-av-drop:focus-within{outline:3px solid var(--color-focus);outline-offset:4px}.scene-up{aspect-ratio:16/10;border-radius:var(--radius-input);cursor:pointer;background:var(--color-paper-2) center / cover no-repeat;color:var(--color-ink-2);box-shadow:inset 0 0 0 var(--rule-thick) var(--color-line-strong);font-size:var(--text-xs);transition:transform var(--dur-fast) var(--ease-spring), background-color var(--dur-fast) var(--ease-out);flex-direction:column;justify-content:center;align-items:center;gap:4px;font-weight:800;display:flex;position:relative}.scene-up:hover{background-color:var(--color-accent-tint);transform:translateY(-2px)}.scene-up:focus-within{outline:3px solid var(--color-focus);outline-offset:2px}.scene-up.on{box-shadow:0 0 0 3px var(--color-paper), 0 0 0 6px var(--color-accent-deep);justify-content:flex-end;align-items:flex-start;padding:6px}.scene-up.on span{background:var(--color-surface);color:var(--color-ink);border-radius:var(--radius-pill);padding:1px 8px}.field>small.muted{font-size:var(--text-xs)}.chip-input{gap:var(--space-xs);padding:var(--space-xs);border-radius:var(--radius-input);background:var(--color-paper);box-shadow:inset 0 0 0 var(--rule-thick) var(--color-line);flex-wrap:wrap;display:flex}.chip-input:focus-within{box-shadow:inset 0 0 0 var(--rule-thick) var(--color-accent-deep)}.chip-input input{flex:1;min-width:120px;box-shadow:none!important;background:0 0!important;border:0!important;min-height:36px!important;padding:0 .4rem!important}.owner-pick{gap:var(--space-xs);flex-wrap:wrap;display:flex}.owner-pick label{align-items:center;gap:var(--space-xs);border-radius:var(--radius-pill);background:var(--color-paper-2);font-weight:700;font-size:var(--text-sm);cursor:pointer;box-shadow:inset 0 0 0 var(--rule-thick) transparent;transition:box-shadow var(--dur-fast) var(--ease-out), background-color var(--dur-fast) var(--ease-out);padding:.3rem .85rem .3rem .3rem;display:inline-flex}.owner-pick label.on{background:var(--color-accent-tint);box-shadow:inset 0 0 0 var(--rule-thick) var(--color-accent-deep)}.owner-pick label:focus-within{outline:3px solid var(--color-focus);outline-offset:2px}.owner-pick input{opacity:0;pointer-events:none;position:absolute}.owner-pick img{border-radius:50%;width:30px;height:30px}.scene-pick{gap:var(--space-xs);grid-template-columns:repeat(auto-fill,minmax(min(100%,110px),1fr));display:grid}.scene-pick button{aspect-ratio:16/10;border-radius:var(--radius-input);box-shadow:inset 0 0 0 var(--rule-thick) transparent;transition:transform var(--dur-fast) var(--ease-spring);background-position:50%;background-size:cover;align-items:flex-end;padding:6px;display:flex}.scene-pick button:hover{transform:translateY(-2px)}.scene-pick button span{font-size:var(--text-xs);background:var(--color-surface);color:var(--color-ink);border-radius:var(--radius-pill);padding:1px 8px;font-weight:800}.scene-pick button.on{box-shadow:0 0 0 3px var(--color-paper), 0 0 0 6px var(--color-accent-deep)}.scene-gen{color:var(--color-accent-2-ink);flex-direction:column;justify-content:center;gap:4px;background:var(--color-accent-2-tint)!important;align-items:center!important}.scene-gen span{color:inherit!important;background:0 0!important}.list-edit{gap:var(--space-xs);counter-reset:le;display:grid}.list-edit li{align-items:center;gap:var(--space-xs);counter-increment:le;display:flex}.list-edit li:before{content:counter(le);background:var(--color-accent);width:26px;height:26px;font-weight:800;font-size:var(--text-xs);color:var(--color-on-accent);border-radius:50%;flex:none;place-items:center;display:grid}.list-edit input{flex:1;min-width:0}.field>.link{margin-top:var(--space-2xs);justify-self:start}.who{background:var(--color-paper);padding:var(--space-xl) var(--space-md);place-items:center;display:grid;overflow-y:auto}.who-inner{justify-items:center;gap:var(--space-lg);text-align:center;display:grid}.who-inner h1{letter-spacing:-.04em;font-size:clamp(2.25rem,5vw + 1rem,4rem);font-weight:800}.who-list{justify-content:center;gap:var(--space-lg);flex-wrap:wrap;display:flex}.who-card{justify-items:center;gap:var(--space-2xs);padding:var(--space-md);width:164px;transition:transform var(--dur-base) var(--ease-spring), background-color var(--dur-base) var(--ease-out);border-radius:28px;display:grid}.who-card img,.who-card .add-ic{width:120px;height:120px;margin-bottom:var(--space-xs);transition:box-shadow var(--dur-base) var(--ease-out);border-radius:50%}.who-card .add-ic{background:var(--color-paper-2);color:var(--color-ink-2);box-shadow:inset 0 0 0 3px var(--color-line-strong)}.who-card b{font-size:var(--text-lg)}.who-card small{color:var(--color-muted)}.who-card:hover{background:var(--color-paper-2);transform:translateY(-6px)}.who-card:hover img{box-shadow:0 0 0 5px var(--color-paper), 0 0 0 9px var(--color-accent)}.who-card.current img{box-shadow:0 0 0 5px var(--color-paper), 0 0 0 9px var(--color-accent-deep)}.who-inner>.muted{max-width:42ch}.voice{background:var(--color-paper);padding:var(--space-xl) var(--space-md);place-items:center;display:grid;overflow-y:auto}.voice-inner{justify-items:center;gap:var(--space-md);text-align:center;max-width:560px;display:grid}.voice-chat{color:var(--color-muted);font-weight:800}.voice-stage{width:220px;height:220px;margin:var(--space-lg) 0;place-items:center;display:grid;position:relative}.voice-stage img{width:160px;height:160px;box-shadow:0 0 0 6px var(--color-surface), 0 20px 40px -16px var(--color-shadow);border-radius:50%;position:relative}.ring{background:var(--color-accent-2-tint);border-radius:50%;position:absolute;inset:20px}.listening .ring{background:var(--color-accent-3-tint);animation:ring 1.6s var(--ease-out) infinite}.speaking .ring{background:var(--color-accent);opacity:.5;animation:ring 1.1s var(--ease-out) infinite}.thinking .ring{animation:pip-breathe 1.4s var(--ease-in-out) infinite}.ring.r2{animation-delay:.5s}@keyframes ring{0%{opacity:.8;transform:scale(.9)}to{opacity:0;transform:scale(1.35)}}.voice-state{font-family:var(--font-display);font-size:var(--text-2xl);letter-spacing:-.03em;font-weight:800}.voice-partial{font-size:var(--text-lg);color:var(--color-ink-2);min-height:3em}.voice-actions{margin-top:var(--space-md)}.search-modal{padding:var(--space-md);gap:var(--space-sm)}.search-field.big{min-height:56px;font-size:var(--text-md);flex:none}kbd{font-family:var(--font-mono);font-size:var(--text-xs);background:var(--color-paper-2);color:var(--color-muted);border-radius:6px;padding:2px 6px}.search-results{gap:2px;display:grid;overflow-y:auto}.search-results h3{font-size:var(--text-xs);color:var(--color-muted);margin:var(--space-sm) var(--space-xs) var(--space-2xs);font-weight:800}.sr{align-items:center;gap:var(--space-sm);padding:var(--space-xs);border-radius:var(--radius-input);text-align:left;font-weight:700;display:flex}.sr:hover,.sr:focus-visible{background:var(--color-paper-2)}.sr img,.sr-thumb{border-radius:50%;flex:none;width:36px;height:36px}.sr-thumb{background-position:50%;background-size:cover;border-radius:10px}.sr small{color:var(--color-muted);margin-left:auto;font-weight:500}.sr-msg span{font-weight:500;font-size:var(--text-sm);min-width:0;display:grid}.sr-msg small{margin:0;font-weight:700}mark{background:var(--color-accent);color:var(--color-on-accent);border-radius:4px;padding:0 2px}.search-tip{padding:var(--space-xs)}.toasts{bottom:var(--space-lg);z-index:80;gap:var(--space-xs);width:min(100% - 32px,440px);display:grid;position:fixed;left:50%;transform:translate(-50%)}.toast{align-items:center;gap:var(--space-sm);padding:var(--space-xs) var(--space-xs) var(--space-xs) var(--space-md);border-radius:var(--radius-pill);background:var(--color-ink);color:var(--color-paper);font-weight:600;font-size:var(--text-sm);box-shadow:0 12px 30px -12px var(--color-shadow);animation:pop var(--dur-base) var(--ease-snap);display:flex}.toast span{flex:1}.toast .link{color:var(--color-accent);text-decoration-color:currentColor}.toast .icon-btn{color:var(--color-paper)}.toast .icon-btn:hover{background:color-mix(in oklch, var(--color-paper) 15%, transparent)}@media (height<=820px) and (width>=761px){.rail{gap:var(--space-2xs);padding-block:var(--space-xs)}.rail-item{padding:3px 0}.rail-ic{height:32px}.brand{display:none}.rail-foot .icon-btn{width:38px;height:38px}.me span{display:none}.me img{width:38px;height:38px}}.has-panel .viewers span{display:none}.has-panel .viewers{padding:.25rem}@media (width<=1180px){.app.is-chats.has-panel{grid-template-columns:var(--rail-w) var(--list-w) minmax(0, 1fr);grid-template-areas:"rail list main"}.panel{width:min(100%, var(--panel-w));z-index:40;box-shadow:-20px 0 50px -20px var(--color-shadow);animation:slide var(--dur-slow) var(--ease-snap);position:fixed;top:0;bottom:0;right:0}.panel-scrim{z-index:39;background:var(--color-scrim);animation:fade var(--dur-base) var(--ease-out);display:block;position:fixed;inset:0}.viewers span{display:none}.viewers{padding:.25rem}}@media (width<=980px){:root{--list-w:260px}.studio-grid,.settings-grid{grid-template-columns:minmax(0,1fr)}.settings-nav{flex-wrap:wrap;display:flex;position:static}.flow{grid-template-columns:repeat(2,minmax(0,1fr))}.voice-btn span{display:none}.voice-btn{padding-inline:.7rem}}@media (width<=760px){:root{--rail-w:0px}.app,.app.is-chats,.app.is-chats.has-panel{grid-template:"main"minmax(0,1fr)"rail"/minmax(0,1fr)}.app.is-chats:not(.mobile-chat){grid-template-areas:"list""rail"}.app.is-chats:not(.mobile-chat) .main,.app.is-chats.mobile-chat .list,.app.mobile-chat .rail{display:none}.app.mobile-chat{grid-template-rows:minmax(0,1fr)}.rail{padding:var(--space-2xs) var(--space-2xs) calc(var(--space-2xs) + env(safe-area-inset-bottom));border-right:0;border-top:var(--rule-hair) solid var(--color-line);flex-direction:row;gap:0;overflow:auto hidden}.pip-btn,.rail-foot .icon-btn{display:none}.rail-nav{flex:1;gap:0;width:auto;display:flex}.rail-nav li{flex:1;min-width:56px}.rail-ic{width:44px;height:30px}.rail-label{font-size:.6875rem}.rail-foot{margin:0}.me span{display:none}.me img{width:34px;height:34px}.list{border-right:0}.only-mobile{display:inline-grid}.chat-head{padding:var(--space-xs);gap:var(--space-2xs)}.viewers{display:none}.msgs{padding:var(--space-md) var(--space-sm)}.msg-av{width:38px;height:38px}.wave{width:72px}.composer-wrap{padding:var(--space-2xs) var(--space-sm) calc(var(--space-sm) + env(safe-area-inset-bottom))}.composer-tip,.audio-mode,.send span{display:none}.send{padding-inline:.9rem}.page{padding:var(--space-lg) var(--space-md) var(--space-2xl)}.page-head{flex-direction:column;align-items:flex-start}.scenario{grid-template-columns:minmax(0,1fr)}.sc-art{min-height:150px}.server-fields{grid-template-columns:minmax(0,1fr)}.server-fields .wide{grid-column:auto}.flow{grid-template-columns:minmax(0,1fr)}.sheet-body,.sheet-head,.sheet-foot{padding-inline:var(--space-md)}.who-card{width:132px;padding:var(--space-xs)}.who-card img,.who-card .add-ic{width:96px;height:96px}.overlay.center{padding-top:var(--space-md)}}@media (width<=400px){.audio{border-radius:var(--radius-card);flex-wrap:wrap}.wave{flex:1;width:auto}.head-actions .icon-btn:first-child{display:none}.mode-pick{grid-template-columns:minmax(0,1fr)}}@media (pointer:coarse){.icon-btn.sm{width:44px;height:44px}.chip button{width:32px;height:32px}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-property:opacity,background-color,color,box-shadow!important;transition-duration:.12s!important;animation-duration:1ms!important;animation-iteration-count:1!important}.btn:hover,.btn:active,.person-card:hover,.disc-card:hover,.who-card:hover{transform:none}}.boot{background:var(--color-paper);place-items:center;display:grid;position:fixed;inset:0}.offline-bar{top:var(--space-sm);z-index:90;align-items:center;gap:var(--space-xs);border-radius:var(--radius-pill);background:var(--color-accent-3-tint);color:var(--color-accent-3-ink);font-size:var(--text-sm);box-shadow:0 10px 24px -12px var(--color-shadow);padding:.45rem 1rem;font-weight:700;display:inline-flex;position:fixed;left:50%;transform:translate(-50%)}.offline-bar .ic{width:1rem;height:1rem}.load-older{justify-content:center;display:flex}.msg-tools{opacity:0;transition:opacity var(--dur-fast) var(--ease-out);gap:2px;margin-left:auto;display:inline-flex}.msg:hover .msg-tools,.msg:focus-within .msg-tools{opacity:1}@media (hover:none){.msg-tools{opacity:.8}}.msg-head time+.msg-tools{margin-left:auto}.msg.compacted .bubble{opacity:.78}.msg-img img{border-radius:var(--radius-card);max-width:min(100%,420px);display:block}.queue-more{color:var(--color-muted);font-size:var(--text-xs);justify-content:center}.chat-empty{place-items:center;display:grid}.onboard{justify-items:center;gap:var(--space-md);text-align:center;max-width:620px;padding:var(--space-xl) 0;display:grid}.onboard h1{letter-spacing:-.03em;font-size:clamp(1.75rem,3vw + 1rem,2.75rem);font-weight:800}.steps{gap:var(--space-xs);text-align:left;counter-reset:none;width:100%;margin-top:var(--space-xs);display:grid}.steps li{align-items:center;gap:var(--space-sm);padding:var(--space-sm) var(--space-md);border-radius:var(--radius-card);background:var(--color-surface);box-shadow:0 1px 0 var(--color-line);display:flex}.steps li.next{box-shadow:inset 0 0 0 var(--rule-thick) var(--color-accent)}.steps li.done{background:var(--color-paper-2);box-shadow:none}.steps li.done .step-body b{text-decoration:line-through;-webkit-text-decoration-color:var(--color-line-strong);text-decoration-color:var(--color-line-strong);color:var(--color-ink-2)}.step-no{background:var(--color-paper-3);font-variant-numeric:tabular-nums;border-radius:50%;flex:none;place-items:center;width:36px;height:36px;font-weight:800;display:grid}.steps li.next .step-no{background:var(--color-accent);color:var(--color-on-accent)}.steps li.done .step-no{background:var(--color-mint);color:var(--color-ink)}.step-no .ic{width:1.1rem;height:1.1rem}.step-body{flex:1;gap:2px;min-width:0;display:grid}.step-body small{color:var(--color-muted);font-size:var(--text-sm)}.empty-card{justify-items:center;gap:var(--space-md);text-align:center;padding:var(--space-2xl) var(--space-lg);border-radius:var(--radius-card);background:var(--color-surface);box-shadow:0 1px 0 var(--color-line);grid-column:1/-1;display:grid}.empty-card p{max-width:46ch;color:var(--color-ink-2)}.people-bar{justify-content:space-between;align-items:center;gap:var(--space-sm);flex-wrap:wrap;display:flex}.people-bar .search-field{flex:0 320px}.who-close{top:var(--space-md);right:var(--space-md);position:absolute}.who-av{display:block;position:relative}.who-lock{background:var(--color-ink);width:34px;height:34px;color:var(--color-paper);box-shadow:0 0 0 4px var(--color-paper);border-radius:50%;place-items:center;display:grid;position:absolute;bottom:14px;right:6px}.who-lock .ic{width:1rem;height:1rem}.who-card[disabled]{opacity:.6;cursor:progress;transform:none}.who-pin-av{width:120px;height:120px;box-shadow:0 0 0 5px var(--color-paper), 0 0 0 9px var(--color-accent);border-radius:50%}.pin-pad{justify-items:center;gap:var(--space-md);display:grid}.pin-dots{text-align:center;width:14ch;font-family:var(--font-mono);font-size:var(--text-2xl);letter-spacing:.4em;border-radius:var(--radius-input);background:var(--color-surface);border:var(--rule-thick) solid var(--color-line);color:var(--color-ink);padding:.4rem .6rem .4rem 1rem}.pin-dots:focus-visible{outline:3px solid var(--color-focus);outline-offset:2px}.pin-keys{gap:var(--space-xs);grid-template-columns:repeat(3,72px);display:grid}.pin-keys button{background:var(--color-surface);height:64px;font-size:var(--text-xl);box-shadow:0 3px 0 0 var(--color-line);transition:transform var(--dur-fast) var(--ease-out), background-color var(--dur-fast);font-variant-numeric:tabular-nums;border-radius:20px;place-items:center;font-weight:800;display:grid}.pin-keys button:hover{background:var(--color-paper-3)}.pin-keys button:active{box-shadow:0 1px 0 0 var(--color-line);transform:translateY(2px)}.pin-keys button.ok{background:var(--color-accent);color:var(--color-on-accent);box-shadow:0 3px 0 0 var(--color-accent-deep)}.pin-keys button[disabled]{opacity:.45;cursor:not-allowed}.pin-keys .ic{width:1.4rem;height:1.4rem}.pin-error{color:var(--color-accent-3-ink);background:var(--color-accent-3-tint);border-radius:var(--radius-pill);font-weight:700;font-size:var(--text-sm);padding:.35rem .9rem}.who-create{gap:var(--space-md);text-align:left;width:min(100%,420px);display:grid}.pin-form{gap:var(--space-sm);grid-template-columns:repeat(auto-fit,minmax(160px,1fr));align-items:end;display:grid}.pin-form .row-actions{grid-column:1/-1}.row-actions{align-items:center;gap:var(--space-xs);flex-wrap:wrap;display:flex}.btn--danger{--btn-face:var(--color-accent-3);--btn-ink:var(--color-white);--btn-edge:color-mix(in oklch, var(--color-accent-3) 70%, black)}.confirm{width:min(100%,440px)}.confirm h2{font-size:var(--text-lg);font-weight:800}.presets{align-items:center;gap:var(--space-2xs);flex-wrap:wrap;display:flex}.presets .chip{min-height:30px;font-size:var(--text-xs);padding:.2rem .7rem}.workflow-row{align-items:center;gap:var(--space-sm);flex-wrap:wrap;display:flex}.workflow-row small{flex:1;min-width:220px}.test-detail{overflow-wrap:anywhere}.st-idle{background:var(--color-paper-2);color:var(--color-ink-2)}.server-note.warn,.err{color:var(--color-accent-3-ink)}.add-repo input.branch{flex:0 0 110px;min-width:0}.ed-av--empty{background:var(--color-paper-3);color:var(--color-ink-2);place-items:center;display:grid}.ed-av--empty .ic{width:2.5rem;height:2.5rem}.airp{background:linear-gradient(0deg, var(--color-surface), var(--color-surface)), var(--color-lavender-tint);box-shadow:inset 0 0 0 var(--rule-thick) var(--color-lavender-tint), 0 1px 0 var(--color-line)}.studio-target{margin-bottom:var(--space-md)}.results{grid-template-columns:repeat(auto-fill,minmax(min(100%,220px),1fr))}.results li.background img{aspect-ratio:16/10}.result-actions{gap:var(--space-2xs);flex-wrap:wrap;display:flex}code{font-family:var(--font-mono);background:var(--color-paper-2);border-radius:4px;padding:0 .3em;font-size:.9em}.facts li{position:relative}.fact-tools{opacity:0;transition:opacity var(--dur-fast);gap:2px;display:flex;position:absolute;top:4px;right:4px}.facts li:hover .fact-tools,.facts li:focus-within .fact-tools{opacity:1}@media (hover:none){.fact-tools{opacity:.8}}.fact-edit{width:100%;font:inherit;font-size:var(--text-sm);border-radius:var(--radius-sm);border:var(--rule-hair) solid var(--color-line-strong);background:var(--color-paper);color:var(--color-ink);resize:vertical;padding:.3rem .5rem}.chapter-btn{text-align:left;font:inherit;color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit;border-radius:var(--radius-sm);padding:0 2px}.chapter-btn:hover{background:var(--color-paper-3)}.link.small{font-size:var(--text-xs);justify-self:start}.toast--error{background:var(--color-accent-3-ink)}.toast .ic{flex:none;width:1.1rem;height:1.1rem}.voice-inner.listening .voice-stage img{transform:scale(calc(1 + var(--level,0) * .08));transition:transform 90ms linear}@media (prefers-reduced-motion:reduce){.voice-inner.listening .voice-stage img{transform:none}}.voice-pick{gap:var(--space-xs);flex-wrap:wrap;align-items:center;display:flex}.voice-pick select,.voice-pick input{flex:1;min-width:min(100%,220px)}.rec-attach{align-items:center;gap:var(--space-xs);border-radius:var(--radius-pill);background:var(--color-lavender-tint);color:var(--color-lavender-ink);font-size:var(--text-xs);align-self:flex-start;padding:.25rem .75rem;font-weight:700;display:inline-flex}.rec-attach .ic{width:.95rem;height:.95rem}.narrator-sec{border-top:0;padding-top:0}.narrator-card{gap:var(--space-sm);padding:var(--space-sm);border-radius:var(--radius-card);background:var(--color-surface);box-shadow:inset 0 0 0 var(--rule-thick) var(--color-line);transition:background-color var(--dur-base) var(--ease-out), box-shadow var(--dur-base) var(--ease-out);display:grid}.narrator-card.on{background:var(--color-lavender-tint);box-shadow:inset 0 0 0 var(--rule-thick) var(--color-lavender)}.narrator-top{align-items:center;gap:var(--space-sm);display:flex}.narrator-badge{background:var(--color-paper-2);width:36px;height:36px;color:var(--color-ink-2);border-radius:12px;flex:none;place-items:center;display:grid}.narrator-card.on .narrator-badge{background:var(--color-surface);color:var(--color-lavender-ink)}.narrator-badge .ic{width:1.1rem;height:1.1rem}.narrator-title{flex:1;gap:2px;min-width:0;display:grid}.narrator-title b{font-size:var(--text-sm)}.narrator-title small{font-size:var(--text-xs);color:var(--color-ink-2);line-height:1.35}.narrator-state{font-size:var(--text-xs);border-radius:var(--radius-pill);background:var(--color-paper-2);color:var(--color-ink-2);padding:.15rem .6rem;font-weight:800}.narrator-card.on .narrator-state{background:var(--color-surface);color:var(--color-lavender-ink)}.narrate{gap:var(--space-xs);padding-top:var(--space-sm);border-top:var(--rule-hair) solid color-mix(in oklch, var(--color-lavender) 45%, transparent);display:grid}.narrate-field{gap:4px;display:grid}.narrate-field>span{font-size:var(--text-xs);color:var(--color-lavender-ink);gap:var(--space-2xs);align-items:baseline;font-weight:700;display:flex}.narrate-field small{color:var(--color-muted);font-weight:500}.narrate-field input{font:inherit;font-size:var(--text-sm);border-radius:var(--radius-input);border:var(--rule-hair) solid var(--color-line-strong);background:var(--color-surface);width:100%;min-width:0;color:var(--color-ink);padding:.5rem .75rem}.narrate-field input:focus-visible{outline:3px solid var(--color-focus);outline-offset:1px}.narrate-chapter{align-items:center;gap:var(--space-xs);border-radius:var(--radius-input);background:var(--color-surface);cursor:pointer;transition:box-shadow var(--dur-fast) var(--ease-out);padding:.45rem .65rem;display:flex}.narrate-chapter.on{box-shadow:inset 0 0 0 var(--rule-thick) var(--color-lavender)}.narrate-chapter input{width:1.05rem;height:1.05rem;accent-color:var(--color-lavender-ink);flex:none}.narrate-chapter>span{min-width:0;display:grid}.narrate-chapter b{font-size:var(--text-xs)}.narrate-chapter small{font-size:var(--text-xs);color:var(--color-ink-2);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.narrate-btn{justify-self:stretch}.narrate-note{font-size:var(--text-xs);color:var(--color-ink-2)}.narration{align-self:center;gap:var(--space-xs);width:min(100%,680px);padding:var(--space-sm) var(--space-md);border-radius:var(--radius-card);background:color-mix(in oklch, var(--color-surface) 88%, var(--color-lavender-tint));box-shadow:inset 0 0 0 var(--rule-hair) var(--color-lavender), 0 8px 20px -14px var(--color-shadow);display:grid}.msgs>.narration{margin-inline:auto}.narration.hit{box-shadow:inset 0 0 0 var(--rule-thick) var(--color-accent), 0 8px 20px -14px var(--color-shadow)}.narration.compacted .narration-text{opacity:.78}.narration-head{align-items:center;gap:var(--space-xs);font-size:var(--text-sm);color:var(--color-lavender-ink);display:flex}.narration-head strong{letter-spacing:.02em;text-transform:uppercase;font-weight:800;font-size:var(--text-xs)}.narration-head time{color:var(--color-muted);font-size:var(--text-xs);font-family:var(--font-mono)}.narration-ic{background:var(--color-lavender-tint);border-radius:50%;place-items:center;width:28px;height:28px;display:grid}.narration-ic .ic{width:.95rem;height:.95rem}.narration-text{font-family:var(--font-display);font-size:var(--text-md);color:var(--color-ink);white-space:pre-line;font-style:italic;line-height:1.6}.narration-text .act{font-style:normal}.pill-ic{background:var(--color-surface);border-radius:50%;flex:none;place-items:center;width:30px;height:30px;display:grid}.pill-ic .ic{width:1rem;height:1rem}.legend-note{color:var(--color-muted);margin-left:var(--space-2xs);font-weight:500}.humans-note{gap:var(--space-xs);padding:var(--space-xs) var(--space-sm);border-radius:var(--radius-input);background:var(--color-accent-2-tint);color:var(--color-accent-2-ink);font-size:var(--text-xs);align-items:flex-start;font-weight:600;display:flex}.humans-note .ic{flex:none;width:1rem;height:1rem;margin-top:1px}.persona-choose{gap:var(--space-xs);display:grid}.cast .pending-persona{color:var(--color-muted);font-style:italic}.bubble p,.narration-text p{white-space:pre-line;margin:0}.bubble p+p{margin-top:.6em}.narration-text p+p{margin-top:.7em}.narration-text{white-space:normal}.composer{align-items:center}.composer .send{margin-bottom:4px}
