:root{--text-scale: 1;--space-0: 0px;--space-2: 2px;--space-4: 4px;--space-8: 8px;--space-12: 12px;--space-16: 16px;--space-20: 20px;--space-24: 24px;--space-32: 32px;--space-40: 40px;--space-48: 48px;--space-64: 64px;--radius-sm: 6px;--radius-md: 10px;--radius-lg: 14px;--radius-bubble: 18px;--radius-bubble-inner: 4px;--radius-pill: 999px;--size-sidebar: 320px;--size-header: 56px;--size-avatar-small: 28px;--size-avatar: 40px;--size-avatar-large: 80px;--size-icon: 20px;--size-icon-compact: 18px;--size-icon-small: 16px;--size-icon-tiny: 14px;--size-bubble-max: 560px;--size-touch: 40px;--size-control: 36px;--size-control-small: 32px;--avatar-0: #4f5bd5;--avatar-1: #0f766e;--avatar-2: #2e7d32;--avatar-3: #a15c07;--avatar-4: #be185d;--avatar-5: #7c3aed;--avatar-6: #0369a1;--avatar-7: #5b6475;--font-ui: "Inter", "Apple Color Emoji", "Segoe UI Emoji", "Noto Color Emoji", system-ui, sans-serif;--font-mono: "JetBrains Mono", ui-monospace, monospace;--weight-regular: 400;--weight-medium: 500;--weight-semibold: 600;--weight-bold: 700;--type-caption: 400 calc(12px * var(--text-scale)) / calc(16px * var(--text-scale)) var(--font-ui);--type-footnote: 400 calc(13px * var(--text-scale)) / calc(18px * var(--text-scale)) var(--font-ui);--type-body: 400 calc(14px * var(--text-scale)) / calc(20px * var(--text-scale)) var(--font-ui);--type-message: 400 calc(15px * var(--text-scale)) / calc(21px * var(--text-scale)) var(--font-ui);--type-title: 600 calc(16px * var(--text-scale)) / calc(22px * var(--text-scale)) var(--font-ui);--type-headline: 600 calc(20px * var(--text-scale)) / calc(26px * var(--text-scale)) var(--font-ui);--type-display: 700 calc(28px * var(--text-scale)) / calc(34px * var(--text-scale)) var(--font-ui);--type-mono: 400 calc(13px * var(--text-scale)) / calc(19px * var(--text-scale)) var(--font-mono);--type-emoji: 400 calc(40px * var(--text-scale)) / calc(48px * var(--text-scale)) var(--font-ui);--shadow-small: 0px 1px 3px 0px var(--shadow);--shadow-medium: 0px 4px 16px -2px var(--shadow);--shadow-large: 0px 12px 40px -8px var(--shadow);--motion-fast: .15s;--motion-normal: .2s;--motion-slow: .25s;--ease-standard: cubic-bezier(.2, 0, 0, 1);--ease-enter: cubic-bezier(0, 0, 0, 1);--ease-exit: cubic-bezier(.3, 0, 1, 1)}:root{color-scheme:light;--bg: #ffffff;--sidebar: #f6f7f9;--raised: #ffffff;--hover: #eceef2;--selected: #e2e6ee;--separator: #e3e5ea;--text: #14161b;--text-2: #555b67;--text-3: #626874;--accent: #3d55d6;--accent-hover: #3449be;--accent-soft: #e6eafc;--accent-text: #3449c4;--on-accent: #ffffff;--bubble-in: #eff1f4;--bubble-in-text: #14161b;--bubble-in-border: #00000000;--bubble-out: #3d55d6;--bubble-out-text: #ffffff;--bubble-out-meta: #e2e7ff;--bubble-out-border: #00000000;--code-in: #14161b12;--code-out: #ffffff26;--badge-muted: #646a76;--on-badge-muted: #ffffff;--input: #eff1f4;--input-border: #00000000;--focus: #3d55d6;--danger: #cc2636;--on-danger: #ffffff;--warning: #975800;--success: #17744a;--overlay: #0c0e1473;--shadow: #0c0e1429;--scrollbar: #14161b33;--scrim: #0000008c;--on-scrim: #ffffff;--selection: #fde68a;--on-selection: #14161b}@media(prefers-color-scheme:dark){:root{color-scheme:dark;--bg: #111215;--sidebar: #17181c;--raised: #282a2f;--hover: #eceef211;--selected: #eceef21e;--separator: #26282e;--text: #eceef2;--text-2: #a9aeb8;--text-3: #9da2ad;--accent: #3d55d6;--accent-hover: #4a62e3;--accent-soft: #232a4d;--accent-text: #93a4ff;--on-accent: #ffffff;--bubble-in: #22242a;--bubble-in-text: #eceef2;--bubble-in-border: #00000000;--bubble-out: #3d55d6;--bubble-out-text: #ffffff;--bubble-out-meta: #e2e7ff;--bubble-out-border: #00000000;--code-in: #ffffff14;--code-out: #ffffff26;--badge-muted: #6b717d;--on-badge-muted: #ffffff;--input: #eceef214;--input-border: #00000000;--focus: #93a4ff;--danger: #ff7a85;--on-danger: #1a0306;--warning: #e3a63e;--success: #52c48e;--overlay: #00000099;--shadow: #00000080;--scrollbar: #eceef23d;--scrim: #0000008c;--on-scrim: #ffffff;--selection: #e9bd55;--on-selection: #111215}}@media(prefers-contrast:more){:root{color-scheme:light;--bg: #ffffff;--sidebar: #ffffff;--raised: #ffffff;--hover: #e9e9ec;--selected: #d9dbe2;--separator: #4a4d55;--text: #000000;--text-2: #1d1f24;--text-3: #30333a;--accent: #1f35b8;--accent-hover: #172a96;--accent-soft: #dfe4fb;--accent-text: #1f35b8;--on-accent: #ffffff;--bubble-in: #ffffff;--bubble-in-text: #000000;--bubble-in-border: #000000;--bubble-out: #1f35b8;--bubble-out-text: #ffffff;--bubble-out-meta: #ffffff;--bubble-out-border: #1f35b8;--code-in: #0000001f;--code-out: #ffffff33;--badge-muted: #30333a;--on-badge-muted: #ffffff;--input: #ffffff;--input-border: #000000;--focus: #000000;--danger: #a3121f;--on-danger: #ffffff;--warning: #6b3c00;--success: #0b5232;--overlay: #000000a6;--shadow: #00000066;--scrollbar: #000000a6;--scrim: #000000b3;--on-scrim: #ffffff;--selection: #ffd23f;--on-selection: #000000}}@media(prefers-color-scheme:dark)and (prefers-contrast:more){:root{color-scheme:dark;--bg: #000000;--sidebar: #000000;--raised: #0d0e10;--hover: #1f2126;--selected: #30333b;--separator: #b8bcc6;--text: #ffffff;--text-2: #eceef2;--text-3: #d3d6dd;--accent: #a3b2ff;--accent-hover: #bcc7ff;--accent-soft: #1d2140;--accent-text: #a3b2ff;--on-accent: #000000;--bubble-in: #000000;--bubble-in-text: #ffffff;--bubble-in-border: #ffffff;--bubble-out: #a3b2ff;--bubble-out-text: #000000;--bubble-out-meta: #000000;--bubble-out-border: #a3b2ff;--code-in: #ffffff2e;--code-out: #00000026;--badge-muted: #d3d6dd;--on-badge-muted: #000000;--input: #000000;--input-border: #ffffff;--focus: #ffffff;--danger: #ff9aa2;--on-danger: #000000;--warning: #ffc46b;--success: #7fe0b0;--overlay: #000000bf;--shadow: #000000cc;--scrollbar: #ffffffb3;--scrim: #000000b3;--on-scrim: #ffffff;--selection: #ffd23f;--on-selection: #000000}}:root[data-theme=light]{color-scheme:light;--bg: #ffffff;--sidebar: #f6f7f9;--raised: #ffffff;--hover: #eceef2;--selected: #e2e6ee;--separator: #e3e5ea;--text: #14161b;--text-2: #555b67;--text-3: #626874;--accent: #3d55d6;--accent-hover: #3449be;--accent-soft: #e6eafc;--accent-text: #3449c4;--on-accent: #ffffff;--bubble-in: #eff1f4;--bubble-in-text: #14161b;--bubble-in-border: #00000000;--bubble-out: #3d55d6;--bubble-out-text: #ffffff;--bubble-out-meta: #e2e7ff;--bubble-out-border: #00000000;--code-in: #14161b12;--code-out: #ffffff26;--badge-muted: #646a76;--on-badge-muted: #ffffff;--input: #eff1f4;--input-border: #00000000;--focus: #3d55d6;--danger: #cc2636;--on-danger: #ffffff;--warning: #975800;--success: #17744a;--overlay: #0c0e1473;--shadow: #0c0e1429;--scrollbar: #14161b33;--scrim: #0000008c;--on-scrim: #ffffff;--selection: #fde68a;--on-selection: #14161b}:root[data-theme=dark]{color-scheme:dark;--bg: #111215;--sidebar: #17181c;--raised: #282a2f;--hover: #eceef211;--selected: #eceef21e;--separator: #26282e;--text: #eceef2;--text-2: #a9aeb8;--text-3: #9da2ad;--accent: #3d55d6;--accent-hover: #4a62e3;--accent-soft: #232a4d;--accent-text: #93a4ff;--on-accent: #ffffff;--bubble-in: #22242a;--bubble-in-text: #eceef2;--bubble-in-border: #00000000;--bubble-out: #3d55d6;--bubble-out-text: #ffffff;--bubble-out-meta: #e2e7ff;--bubble-out-border: #00000000;--code-in: #ffffff14;--code-out: #ffffff26;--badge-muted: #6b717d;--on-badge-muted: #ffffff;--input: #eceef214;--input-border: #00000000;--focus: #93a4ff;--danger: #ff7a85;--on-danger: #1a0306;--warning: #e3a63e;--success: #52c48e;--overlay: #00000099;--shadow: #00000080;--scrollbar: #eceef23d;--scrim: #0000008c;--on-scrim: #ffffff;--selection: #e9bd55;--on-selection: #111215}:root[data-theme=light][data-contrast=more]{color-scheme:light;--bg: #ffffff;--sidebar: #ffffff;--raised: #ffffff;--hover: #e9e9ec;--selected: #d9dbe2;--separator: #4a4d55;--text: #000000;--text-2: #1d1f24;--text-3: #30333a;--accent: #1f35b8;--accent-hover: #172a96;--accent-soft: #dfe4fb;--accent-text: #1f35b8;--on-accent: #ffffff;--bubble-in: #ffffff;--bubble-in-text: #000000;--bubble-in-border: #000000;--bubble-out: #1f35b8;--bubble-out-text: #ffffff;--bubble-out-meta: #ffffff;--bubble-out-border: #1f35b8;--code-in: #0000001f;--code-out: #ffffff33;--badge-muted: #30333a;--on-badge-muted: #ffffff;--input: #ffffff;--input-border: #000000;--focus: #000000;--danger: #a3121f;--on-danger: #ffffff;--warning: #6b3c00;--success: #0b5232;--overlay: #000000a6;--shadow: #00000066;--scrollbar: #000000a6;--scrim: #000000b3;--on-scrim: #ffffff;--selection: #ffd23f;--on-selection: #000000}:root[data-theme=dark][data-contrast=more]{color-scheme:dark;--bg: #000000;--sidebar: #000000;--raised: #0d0e10;--hover: #1f2126;--selected: #30333b;--separator: #b8bcc6;--text: #ffffff;--text-2: #eceef2;--text-3: #d3d6dd;--accent: #a3b2ff;--accent-hover: #bcc7ff;--accent-soft: #1d2140;--accent-text: #a3b2ff;--on-accent: #000000;--bubble-in: #000000;--bubble-in-text: #ffffff;--bubble-in-border: #ffffff;--bubble-out: #a3b2ff;--bubble-out-text: #000000;--bubble-out-meta: #000000;--bubble-out-border: #a3b2ff;--code-in: #ffffff2e;--code-out: #00000026;--badge-muted: #d3d6dd;--on-badge-muted: #000000;--input: #000000;--input-border: #ffffff;--focus: #ffffff;--danger: #ff9aa2;--on-danger: #000000;--warning: #ffc46b;--success: #7fe0b0;--overlay: #000000bf;--shadow: #000000cc;--scrollbar: #ffffffb3;--scrim: #000000b3;--on-scrim: #ffffff;--selection: #ffd23f;--on-selection: #000000}:root[data-motion=reduce]{--motion-fast: 0ms;--motion-normal: 0ms;--motion-slow: 0ms}@font-face{font-family:Inter;font-style:normal;font-weight:400 700;font-display:swap;src:url("./Inter-LGR3B7KW.woff2") format("woff2")}@font-face{font-family:Inter;font-style:italic;font-weight:400 700;font-display:swap;src:url("./Inter-Italic-C3VCDCXG.woff2") format("woff2")}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:400 700;font-display:swap;src:url("./JetBrainsMono-2I6TMU2Z.woff2") format("woff2")}*,*:before,*:after{box-sizing:border-box}html{height:100%;-webkit-text-size-adjust:100%;text-size-adjust:100%}body{margin:0;height:100%;background:var(--bg);color:var(--text);font:var(--type-body);font-feature-settings:"cv05","cv08";-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow:hidden}button,input,select,textarea{font:inherit;color:inherit;margin:0}button{background:none;border:0;padding:0;cursor:pointer;-webkit-tap-highlight-color:transparent}:focus-visible{outline:2px solid var(--focus);outline-offset:2px}::selection{background:var(--selection);color:var(--on-selection)}*{scrollbar-width:thin;scrollbar-color:var(--scrollbar) transparent;scroll-padding:var(--space-8)}.icon{width:var(--size-icon);height:var(--size-icon);flex:none}.icon.small{width:var(--size-icon-small);height:var(--size-icon-small)}.icon.tiny{width:var(--size-icon-tiny);height:var(--size-icon-tiny)}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.accent{color:var(--accent-text)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-8);height:var(--size-control);padding:0 var(--space-16);border-radius:var(--radius-md);font-weight:var(--weight-medium);white-space:nowrap;transition:background-color var(--motion-fast) var(--ease-standard),transform var(--motion-fast) var(--ease-standard)}.btn:active:not(:disabled){transform:scale(.97)}.btn:disabled{opacity:.45;cursor:default}.btn.primary{background:var(--accent);color:var(--on-accent)}.btn.primary:hover:not(:disabled){background:var(--accent-hover)}.btn.secondary{background:var(--hover)}.btn.secondary:hover:not(:disabled){background:var(--selected)}.btn.ghost:hover:not(:disabled){background:var(--hover)}.btn.danger{background:var(--danger);color:var(--on-danger)}.icon-btn{display:inline-grid;place-items:center;flex:none;width:var(--size-touch);height:var(--size-touch);border-radius:var(--radius-pill);color:var(--text-2);transition:background-color var(--motion-fast) var(--ease-standard),color var(--motion-fast) var(--ease-standard)}.icon-btn:hover{background:var(--hover);color:var(--text)}.icon-btn:focus-visible{outline-offset:-2px}.icon-btn.small{width:var(--size-control-small);height:var(--size-control-small)}.icon-btn.small .icon{width:var(--size-icon-compact);height:var(--size-icon-compact)}.field{height:var(--size-control);width:100%;padding:0 var(--space-12);border-radius:var(--radius-md);border:1px solid var(--input-border);background:var(--input);outline:none}.field::placeholder,textarea::placeholder{color:var(--text-3);opacity:1}.field:focus-visible{outline:2px solid var(--focus);outline-offset:-2px}input[type=search]{appearance:none}input[type=search]::-webkit-search-cancel-button{display:none}input[role=switch]{appearance:none;flex:none;width:36px;height:20px;border-radius:var(--radius-pill);background:radial-gradient(circle closest-side,#fff 96%,transparent) 2px 2px / 16px 16px no-repeat color-mix(in srgb,var(--text-3) 40%,transparent);box-shadow:inset 0 0 0 1px var(--input-border);cursor:pointer;transition:background-color var(--motion-fast) var(--ease-standard),background-position var(--motion-fast) var(--ease-standard)}input[role=switch]:checked{background-color:var(--accent);background-position:18px 2px}input[role=switch]:disabled{opacity:.45;cursor:default}input[type=checkbox]:not([role=switch]){width:var(--size-icon-compact);height:var(--size-icon-compact);accent-color:var(--accent)}.badge{display:inline-grid;place-items:center;min-width:18px;height:18px;padding:0 var(--space-4);border-radius:var(--radius-pill);background:var(--accent);color:var(--on-accent);font:var(--type-caption);font-weight:var(--weight-semibold);font-variant-numeric:tabular-nums}.badge.muted{background:var(--badge-muted);color:var(--on-badge-muted)}.avatar{--size: var(--size-avatar);display:inline-grid;place-items:center;flex:none;width:var(--size);height:var(--size);border-radius:50%;color:#fff;font-size:round(calc(var(--size) * .39),1px);font-weight:var(--weight-semibold);line-height:var(--size);user-select:none}.avatar img{width:100%;height:100%;border-radius:50%;object-fit:cover}.avatar.small{--size: var(--size-avatar-small)}.avatar.large{--size: var(--size-avatar-large)}.avatar.c0{background:var(--avatar-0)}.avatar.c1{background:var(--avatar-1)}.avatar.c2{background:var(--avatar-2)}.avatar.c3{background:var(--avatar-3)}.avatar.c4{background:var(--avatar-4)}.avatar.c5{background:var(--avatar-5)}.avatar.c6{background:var(--avatar-6)}.avatar.c7{background:var(--avatar-7)}.lazy{display:contents}:root{--list-width: min(var(--sidebar-width, 360px), 40vw);--panel-width: min(var(--info-width, 360px), 40vw)}.app{display:grid;grid-template-columns:var(--list-width) minmax(0,1fr);height:100%}.sidebar{position:relative;z-index:1;display:flex;flex-direction:column;min-width:0;min-height:0;background:var(--sidebar);border-right:1px solid var(--separator)}.resizer{position:absolute;inset-block:0;right:-4px;width:8px;cursor:col-resize;touch-action:none}.resizer:is(:active,:focus-visible){outline:none;background:linear-gradient(var(--focus),var(--focus)) center / 2px 100% no-repeat}.pane{position:relative;display:flex;min-width:0;min-height:0;container-type:inline-size}.pane>.chat{flex:1}.info-panel{position:relative;display:none;flex-direction:column;flex:none;width:var(--panel-width);min-height:0;border-left:1px solid var(--separator);background:var(--bg)}.info-panel>.resizer{right:auto;left:-4px}.info-panel.beside{display:flex}.info-header .back{display:none}@container (width < 760px){.info-panel{position:absolute;inset:0;width:auto;border-left:0}.info-panel.beside{display:none}.info-panel.over{display:flex}.pane:has(>.info-panel.over)>.chat{visibility:hidden}.info-header .close,.info-panel>.resizer{display:none}.info-header .back{display:block}}.sidebar-header{display:flex;align-items:center;gap:var(--space-4);height:var(--size-header);padding:0 var(--space-8) 0 var(--space-20);flex:none}.sidebar-header .back{margin-inline:calc((var(--size-icon) - var(--size-touch)) / 2) calc(-1 * var(--space-4))}.sidebar-header h1{flex:1;margin:0;font:var(--type-headline)}.search{display:grid;align-items:center}.search>*{grid-area:1 / 1}.search>.icon{z-index:1;margin-inline-start:var(--space-12);color:var(--text-3);pointer-events:none}.search .field{padding-inline:var(--space-40)}.search .clear{justify-self:end;margin-inline-end:2px;border-radius:calc(var(--radius-md) - 2px)}.search .clear[hidden]{display:none}.conv-scroll>.search{position:sticky;top:0;z-index:1;padding-bottom:var(--space-8);background:var(--sidebar)}.conv-scroll{flex:1;min-height:0;overflow-y:auto;scroll-padding-top:calc(var(--size-control) + var(--space-16));padding:0 var(--space-8) var(--space-8)}.conv{display:flex;align-items:center;gap:var(--space-12);width:100%;padding:10px var(--space-12);border-radius:var(--radius-md);color:inherit;text-align:left;text-decoration:none;transition:background-color var(--motion-fast) var(--ease-standard)}.conv.action{min-height:var(--space-48)}.conv.action .conv-name{font-weight:var(--weight-regular)}.conv.action.danger{color:var(--danger)}:is(button,a).conv:hover{background:var(--hover)}.conv.selected{background:var(--selected)}.conv-main{display:grid;gap:2px;flex:1;min-width:0}.conv-line{display:flex;align-items:center;gap:var(--space-8);min-width:0}.conv-name{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:var(--weight-semibold)}.conv-time{flex:none;font:var(--type-caption);font-variant-numeric:tabular-nums;color:var(--text-3)}.conv.unread .conv-time{color:var(--accent-text);font-weight:var(--weight-semibold)}.conv-preview{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font:var(--type-footnote);color:var(--text-2)}.conv-preview .who{color:var(--text)}.conv-scroll .conv-name{font:var(--type-message);font-weight:var(--weight-semibold)}.conv-scroll .conv-preview{font:var(--type-body)}.conv-preview .status{margin-right:var(--space-4);vertical-align:-4px;opacity:1}.conv-preview .status .icon{width:var(--size-icon-small);height:var(--size-icon-small)}.conv-preview .status.read{color:var(--accent-text)}.conv-flags{display:flex;align-items:center;gap:var(--space-4);flex:none;color:var(--text-3)}.chat{position:relative;display:flex;flex-direction:column;min-width:0;min-height:0;background:var(--bg)}.chat.empty{display:grid;place-items:center}.empty-state{display:grid;justify-items:center;gap:var(--space-12);padding:var(--space-24) var(--space-16);color:var(--text-3);text-align:center}.empty-state .icon{width:32px;height:32px}.spinner{width:var(--size-icon);height:var(--size-icon);border:2px solid currentColor;border-right-color:transparent;border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(1turn)}}.chat{--chat-inset: var(--space-20);--glyph-inset: calc(var(--chat-inset) - (var(--size-touch) - var(--size-icon)) / 2)}.chat-header{display:flex;align-items:center;gap:var(--space-4);height:var(--size-header);padding-inline:var(--chat-inset) var(--glyph-inset);border-bottom:1px solid var(--separator);flex:none}.chat-header .avatar{--size: 36px;margin-right:var(--space-8)}.chat-header .back{display:none;margin-inline-start:calc(var(--glyph-inset) - var(--chat-inset))}.chat-title{flex:1;min-width:0}.chat-header .icon-btn[aria-expanded=true]{color:var(--accent-text)}.chat-title .name{font:var(--type-title);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chat-title .sub{font:var(--type-caption);color:var(--text-2)}.chat-title .sub.accent{color:var(--accent-text)}.timeline-wrap{position:relative;flex:1;min-height:0;display:flex}.vlist{flex:1;overflow-y:auto;overflow-anchor:none;overscroll-behavior:contain}.vlist-canvas{position:relative}.vlist-row{position:absolute;left:0;right:0}.vlist-row.sticky{z-index:1;pointer-events:none}.vlist-row.sticky>*{position:sticky;top:0}.date{display:flex;justify-content:center;padding:var(--space-16) 0 var(--space-4);-webkit-user-select:none;user-select:none}.date span{padding:var(--space-4) var(--space-12);border-radius:var(--radius-pill);background:var(--raised);box-shadow:var(--shadow-small);color:var(--text-2);font:var(--type-caption);font-weight:var(--weight-semibold)}.unread-line{display:flex;align-items:center;gap:var(--space-8);padding:var(--space-12) var(--chat-inset) var(--space-2);color:var(--accent-text);font:var(--type-caption);font-weight:var(--weight-semibold)}.unread-line:before,.unread-line:after{content:"";flex:1;height:1px;background:var(--separator)}.system{display:flex;justify-content:center;align-items:center;gap:var(--space-8);padding:var(--space-12) var(--chat-inset) var(--space-2);font:var(--type-caption);color:var(--text-2)}.msg{--pick: auto;--stack: fit-content(min(75%, var(--size-bubble-max)));position:relative;display:grid;grid-template:"pick avatar stack actions" / var(--pick) auto var(--stack) auto;justify-content:start;padding:1px var(--chat-inset)}.msg.first{padding-top:11px}.msg.out{grid-template:"pick . actions stack" / var(--pick) 1fr auto var(--stack)}.msg-stack{display:contents}.msg-stack>*{grid-column:stack;justify-self:start;min-width:0}.msg.out .msg-stack>*{justify-self:end}.msg.fresh .msg-stack>*{animation:rise var(--motion-normal) var(--ease-enter)}.msg-avatar{grid-area:avatar;position:relative;width:var(--size-avatar-small);margin-inline-end:var(--space-8)}.msg-burst{position:absolute;inset:calc(10px - var(--run, 0px)) 0 0;z-index:1;display:flex;flex-direction:column;justify-content:flex-end;pointer-events:none}.msg.first .msg-burst{top:0}.msg-burst>button{position:sticky;bottom:var(--space-8);display:flex;border-radius:50%;pointer-events:auto}.bubble{--r-tl: var(--radius-bubble);--r-tr: var(--radius-bubble);--r-br: var(--radius-bubble);--r-bl: var(--radius-bubble);position:relative;min-width:0;max-width:100%;padding:7px 12px 8px;border:1px solid var(--bubble-in-border);border-radius:var(--r-tl) var(--r-tr) var(--r-br) var(--r-bl);background:var(--bubble-in);color:var(--bubble-in-text);font:var(--type-message);overflow-wrap:anywhere}.msg.out .bubble{background:var(--bubble-out);color:var(--bubble-out-text);border-color:var(--bubble-out-border)}.msg.in:not(.round-top) .bubble{--r-tl: var(--radius-bubble-inner)}.msg.in:not(.round-bottom) .bubble{--r-bl: var(--radius-bubble-inner)}.msg.out:not(.round-top) .bubble{--r-tr: var(--radius-bubble-inner)}.msg.out:not(.round-bottom) .bubble{--r-br: var(--radius-bubble-inner)}.bubble :is(.album,.location,.link-preview,.quote,pre,.poll-option,.file-icon,.cover){--inset: calc(var(--space-12) + 1px);border-radius:max(0px,var(--tl, var(--radius-bubble)) - var(--inset)) max(0px,var(--tr, var(--radius-bubble)) - var(--inset)) max(0px,var(--br, var(--radius-bubble)) - var(--inset)) max(0px,var(--bl, var(--radius-bubble)) - var(--inset))}.bubble :is(.album,.location){--inset: var(--space-4)}.bubble>:first-child:is(.link-preview,.quote),.bubble>.attachments:first-child>:first-child,.bubble>.body:first-child>pre:first-child{--tl: var(--r-tl);--tr: var(--r-tr)}.bubble.bare>.attachments>:last-child{--bl: var(--r-bl);--br: var(--r-br)}.bubble :is(.file-icon,.cover){--tr: initial;--br: initial}.msg.jumbo .bubble{padding:0;border:0;background:none;color:var(--text);font:var(--type-emoji)}.msg.jumbo .meta{position:static;display:flex;justify-content:flex-end;margin-top:2px;color:var(--text-3)}.bubble.deleted,.msg.out .bubble.deleted{display:flex;align-items:center;gap:6px;background:transparent;border-color:var(--separator);color:var(--text-3);font-style:italic}.msg.out .bubble.deleted .meta{color:var(--text-3)}.msg-name{display:block;margin-bottom:2px;text-align:start;font:var(--type-caption);font-weight:var(--weight-semibold);color:var(--text-2)}.body :is(p,pre,blockquote,ul,ol){margin:0}.body :is(p,pre,blockquote,ul,ol,li)+:is(p,pre,blockquote,ul,ol,li){margin-top:var(--space-4)}.body pre{padding:var(--space-8) 10px;background:var(--code-in);font:var(--type-mono);white-space:pre;overflow-x:auto}.body code{font-family:var(--font-mono);font-size:.88em}.body :not(pre)>code{padding:1px 4px;border-radius:4px;background:var(--code-in)}.msg.out .body pre,.msg.out .body :not(pre)>code{background:var(--code-out)}.body blockquote{padding-left:10px;border-left:3px solid color-mix(in srgb,currentColor 35%,transparent)}.body ul,.body ol{padding-left:22px}.body a{color:var(--accent-text);text-decoration:underline;text-underline-offset:2px}.msg.out .body a{color:inherit}.mention{font-weight:var(--weight-semibold);color:var(--accent-text)}.msg.out .mention{color:inherit}.spoiler:not(.revealed){border-radius:4px;background:var(--text-3);cursor:pointer}.msg.out .spoiler:not(.revealed){background:var(--bubble-out-meta)}.spoiler:not(.revealed),.spoiler:not(.revealed) *,.spoiler:not(.revealed)::selection,.spoiler:not(.revealed) *::selection{color:transparent;text-decoration-color:transparent}.body.collapsed{max-height:calc(21px * 12 * var(--text-scale));overflow:hidden;mask-image:linear-gradient(to bottom,black 70%,transparent)}.read-more{margin-top:var(--space-4);font-weight:var(--weight-semibold);color:var(--accent-text)}.msg.out .read-more{color:inherit}.meta,.meta-spacer{display:inline-flex;align-items:center;gap:4px;font:var(--type-caption);font-variant-numeric:tabular-nums;white-space:nowrap}.meta{position:absolute;right:9px;bottom:calc(var(--space-4) + 1.4px * var(--text-scale));color:var(--text-3)}.msg.out .meta{color:var(--bubble-out-meta)}.meta-spacer{visibility:hidden;margin-left:10px;vertical-align:bottom;height:0}.status{display:inline-grid;place-items:center;width:var(--size-icon-small);height:var(--size-icon-small);opacity:.65}.status .icon{width:var(--size-icon-tiny);height:var(--size-icon-tiny)}.status.read,.status.failed{opacity:1}:root:not([data-contrast=more]) .meta>:not(.status){opacity:.88}:root:not([data-contrast=more]) .meta>.status:not(.read,.failed){opacity:.55}.msg.out:not(.jumbo) .bubble:not(.bare,.deleted) .status:not(.failed){color:var(--bubble-out-text)}.status.failed{color:var(--danger)}.quote{display:grid;width:100%;margin:1px 0 6px;padding:5px 10px;border-left:3px solid var(--accent-text);background:var(--code-in);text-align:left;font:var(--type-footnote)}.msg.out .quote{border-left-color:currentColor;background:var(--code-out)}.bubble>.quote:first-child{margin-top:calc(var(--space-12) - 7px)}.bubble.visual>.quote:first-child{margin-top:calc(var(--space-12) - 3px)}.quote-name{font-weight:var(--weight-semibold)}.quote-text{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;opacity:.85}.reactions{position:relative;display:flex;flex-wrap:wrap;gap:var(--space-4);margin-top:-6px;padding:0 var(--space-8)}.reaction{display:inline-flex;align-items:center;gap:var(--space-4);height:26px;padding:0 8px;border:2px solid var(--bg);border-radius:var(--radius-pill);background:var(--raised);box-shadow:var(--shadow-small);font:var(--type-caption);font-weight:var(--weight-semibold);color:var(--text-2);animation:pop var(--motion-normal) var(--ease-standard)}.reaction.mine{background:var(--accent-soft);color:var(--accent-text)}.reaction .emoji{font-size:14px;line-height:1}.msg-actions{grid-area:actions;display:flex;align-self:center;margin-inline:var(--space-8);opacity:0;transition:opacity var(--motion-fast) var(--ease-standard)}.msg:hover .msg-actions,.msg-actions:focus-within{opacity:1}.jump{position:absolute;right:var(--chat-inset);bottom:var(--space-16);display:grid;place-items:center;width:var(--size-touch);height:var(--size-touch);border-radius:50%;background:var(--raised);color:var(--text-2);box-shadow:var(--shadow-medium);animation:rise var(--motion-fast) var(--ease-enter)}.composer{position:relative;display:grid;grid-template-columns:minmax(0,1fr);gap:var(--space-8);padding:var(--space-8) var(--chat-inset) var(--space-12);flex:none}.composer-row{display:flex;align-items:flex-end;gap:var(--space-4)}.composer-row>.icon-btn:first-child{margin-inline-start:calc(var(--glyph-inset) - var(--chat-inset))}.composer-row>.icon-btn:last-child{margin-inline-end:calc(var(--glyph-inset) - var(--chat-inset))}.composer-field{display:flex;align-items:flex-end;flex:1;min-width:0;min-height:var(--size-touch);padding:0 0 0 var(--space-16);border:1px solid var(--input-border);border-radius:calc(var(--size-touch) / 2);background:var(--input)}.composer-field:focus-within{box-shadow:inset 0 0 0 1px var(--separator)}.composer textarea{--pad: calc((var(--size-touch) - 2px - 21px) / 2);flex:1;min-width:0;max-height:calc(21px * 8 * var(--text-scale) + 2 * var(--pad));padding:var(--pad) 0;border:0;outline:0;resize:none;background:transparent;font:var(--type-message)}.send{display:grid;place-items:center;flex:none;width:var(--size-touch);height:var(--size-touch);border-radius:50%;background:var(--accent);color:var(--on-accent);animation:pop var(--motion-fast) var(--ease-enter)}.send:hover{background:var(--accent-hover)}.send .icon{width:var(--size-icon-compact);height:var(--size-icon-compact)}.reply-bar{display:flex;align-items:center;gap:var(--space-8);padding:var(--space-4) var(--space-4) var(--space-4) var(--space-12);border-left:3px solid var(--accent-text);border-radius:var(--radius-sm);background:var(--sidebar);animation:rise var(--motion-fast) var(--ease-enter)}.reply-bar-text{display:grid;flex:1;min-width:0;font:var(--type-footnote)}.reply-bar .quote-text{-webkit-line-clamp:1;color:var(--text-2)}@keyframes rise{0%{opacity:0;transform:translateY(8px)}}@keyframes pop{0%{opacity:0;transform:scale(.6)}}@keyframes fade{0%{opacity:0}}@media(pointer:coarse){.msg{-webkit-touch-callout:none;-webkit-user-select:none;user-select:none}}@media(max-width:719px){.app{grid-template-columns:minmax(0,1fr)}.app[data-view=list]>.pane,.app[data-view=chat]>.sidebar,.resizer{display:none}.sidebar{border-right:0}.chat-header .back{display:inline-grid}.chat{--chat-inset: var(--space-12)}.msg-actions{display:none}}.composer-field .emoji-btn{width:36px;height:36px;margin:1px 2px}.completions{display:grid;max-height:264px;overflow-y:auto;padding:var(--space-4);border:1px solid var(--separator);border-radius:var(--radius-md);background:var(--raised);box-shadow:var(--shadow-medium);animation:rise var(--motion-fast) var(--ease-enter)}.completion{display:flex;align-items:center;gap:var(--space-12);min-height:var(--size-touch);padding:0 var(--space-12);border-radius:var(--radius-sm);text-align:left}.completion.active,.completion:hover{background:var(--hover)}.completion .emoji{width:var(--size-avatar-small);font-size:20px;text-align:center}.completion-label{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.completion mark{background:none;color:var(--accent-text);font-weight:var(--weight-semibold)}.selection-bar{display:flex;align-items:center;gap:var(--space-4);padding-inline:var(--glyph-inset);border-top:1px solid var(--separator)}.selection-count{flex:1;font-weight:var(--weight-medium)}.chat.selecting .composer:not(.selection-bar),.timeline.selecting .msg-actions{display:none}.timeline.selecting .msg{--pick: calc(22px + var(--chat-inset));cursor:pointer;-webkit-user-select:none;user-select:none}.msg:is(.selected,.menu-open){background:var(--selected)}.msg.flash .bubble:after{content:"";position:absolute;inset:-1px;border-radius:inherit;background:var(--accent);opacity:0;pointer-events:none;animation:flash 1.6s var(--ease-standard)}.msg.out.flash .bubble:after{background:var(--bubble-out-text)}:root[data-motion=reduce] .msg.flash .bubble:after{animation-duration:2.4s}@keyframes flash{12%,40%{opacity:.22}}.pick-mark{display:grid;place-items:center;flex:none;align-self:center;width:22px;height:22px;border:2px solid var(--text-2);border-radius:50%;color:transparent}.msg .pick-mark{grid-area:pick}.pick-mark.on{border-color:var(--accent);background:var(--accent);color:var(--on-accent)}.pick-mark .icon{width:var(--size-icon-tiny);height:var(--size-icon-tiny)}.format-bar{position:absolute;z-index:2;translate:0 calc(-100% - var(--space-8));display:flex;gap:2px;padding:2px;border:1px solid var(--separator);border-radius:var(--radius-pill);background:var(--raised);box-shadow:var(--shadow-medium);animation:rise var(--motion-fast) var(--ease-enter)}.format-measure{position:absolute;visibility:hidden;white-space:pre-wrap;overflow-wrap:break-word}.layer{position:fixed;inset:0;z-index:10;pointer-events:none}.layer>*{pointer-events:auto}.tooltip{position:fixed;padding:4px 8px;border-radius:var(--radius-sm);background:var(--text);color:var(--bg);font:var(--type-caption);font-weight:var(--weight-medium);white-space:nowrap;animation:fade var(--motion-fast) var(--ease-enter)}.menu{position:fixed;display:grid;min-width:200px;padding:var(--space-4);border:1px solid var(--separator);border-radius:var(--radius-md);background:var(--raised);box-shadow:var(--shadow-medium);animation:menu-in var(--motion-fast) var(--ease-enter)}.menu-item{display:flex;align-items:center;gap:var(--space-12);height:var(--size-control);padding:0 var(--space-12);border-radius:var(--radius-sm);text-align:left;white-space:nowrap}.menu-item .icon{width:var(--size-icon-compact);height:var(--size-icon-compact);color:var(--text-2)}.menu-item .check{margin-inline-start:auto;color:var(--accent-text)}.menu-item:hover,.menu-item:focus-visible{background:var(--hover);outline:none}.menu-item.danger,.menu-item.danger .icon{color:var(--danger)}.menu-separator{height:1px;margin:var(--space-4) 6px;background:var(--separator)}.dialog{width:min(440px,calc(100vw - 32px));padding:0;border:1px solid var(--separator);border-radius:var(--radius-lg);background:var(--raised);color:var(--text);box-shadow:var(--shadow-large);animation:menu-in var(--motion-normal) var(--ease-enter)}.dialog::backdrop{background:var(--overlay);animation:fade var(--motion-normal) var(--ease-enter)}.dialog-body{display:grid;gap:var(--space-8);padding:var(--space-24) var(--space-24) var(--space-20)}.dialog-body h2{margin:0;font:var(--type-headline)}.dialog-body p{margin:0;color:var(--text-2)}.dialog-actions{display:flex;justify-content:flex-end;gap:var(--space-8);padding:0 var(--space-24) var(--space-24)}.toasts{position:fixed;left:50%;bottom:var(--space-24);z-index:60;display:grid;justify-items:center;gap:var(--space-8);transform:translate(-50%)}.app~.toasts{bottom:calc(var(--space-12) + var(--size-touch) + var(--space-16))}@media(min-width:720px){:is(.app,.admin-root)~.toasts{left:calc(50% + var(--list-width) / 2)}}.toast{max-width:min(480px,calc(100vw - 32px));padding:var(--space-8) var(--space-16);border-radius:var(--radius-md);background:var(--text);color:var(--bg);box-shadow:var(--shadow-medium);animation:rise var(--motion-normal) var(--ease-enter)}@keyframes menu-in{0%{opacity:0;transform:scale(.96)}}.emoji-picker{position:fixed;display:grid;grid-template-rows:auto auto minmax(0,1fr);gap:var(--space-8);width:min(352px,calc(100vw - 16px));height:min(400px,calc(100vh - 16px));padding:var(--space-8);border:1px solid var(--separator);border-radius:var(--radius-lg);background:var(--raised);box-shadow:var(--shadow-medium);animation:menu-in var(--motion-fast) var(--ease-enter)}@media(max-width:719px){.emoji-picker{width:calc(100vw - 2 * var(--space-12))}}.emoji-tabs{display:flex;justify-content:space-between}.emoji-tab{width:32px;height:32px;border-radius:var(--radius-sm);font-size:18px}.emoji-grid{overflow-y:auto;overscroll-behavior:contain}.emoji-group{margin:var(--space-8) 4px 4px;color:var(--text-2);font:var(--type-caption);font-weight:var(--weight-medium)}.emoji-cells{display:grid;grid-template-columns:repeat(auto-fill,36px);justify-content:space-between}.emoji-cell{display:grid;place-items:center;width:36px;height:36px;border-radius:var(--radius-sm);font-size:22px;line-height:1}.emoji-tab:hover,.emoji-cell:hover,.emoji-cell:focus-visible{background:var(--hover);outline:none}.reaction-bar{position:fixed;display:flex;align-items:center;gap:2px;padding:var(--space-4);border:1px solid var(--separator);border-radius:var(--radius-pill);background:var(--raised);box-shadow:var(--shadow-medium);animation:menu-in var(--motion-fast) var(--ease-enter)}.reaction-bar.flat{position:static;padding:0;border:0;background:none;box-shadow:none;animation:none}.emoji-cell.mine{background:var(--accent-soft)}.reaction-bar .emoji-cell{border-radius:50%}.emoji-picker .field{border-radius:var(--radius-sm)}.emoji-picker .search .clear{border-radius:calc(var(--radius-sm) - 2px)}.msg-menu{position:fixed;inset:0}.splash{display:grid;place-items:center;height:100%;color:var(--text-3)}.splash .icon{width:32px;height:32px}.onboarding-wrap{display:flex;flex-direction:column;height:100%}.onboarding{display:grid;place-items:center;min-height:100%;padding:var(--space-24) var(--space-16);overflow-y:auto}.onboarding-wrap>.onboarding{flex:1;min-height:0}.onboarding-card{display:grid;gap:var(--space-16);width:min(400px,100%)}.onboarding-card h1{margin:0;font:var(--type-display)}.onboarding-card :where(p){margin:0;color:var(--text-2)}.brand{display:flex;align-items:center;gap:var(--space-8);font:var(--type-headline);color:var(--accent-text)}.or{text-align:center;color:var(--text-3);font:var(--type-caption)}.stack{display:grid;gap:var(--space-12)}.stack.tight{gap:var(--space-8)}.row-actions{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-8)}.row-actions.end{justify-content:flex-end}.row-actions .field{flex:1;min-width:160px}.check-row{display:flex;align-items:center;gap:var(--space-8);color:var(--text-2);cursor:pointer}.form-error{color:var(--danger);font:var(--type-footnote)}.form-error:empty{display:none}.muted-note{margin:0;color:var(--text-3);font:var(--type-footnote)}.mono{font-family:var(--font-mono);overflow-wrap:anywhere}.code-field{display:flex;align-items:center;gap:var(--space-8);min-height:var(--space-48);padding:var(--space-4) var(--space-4) var(--space-4) var(--space-16);border-radius:var(--radius-lg);background:var(--input);color:var(--text)}.code{flex:1;min-width:0;font:var(--type-mono);overflow-wrap:anywhere;user-select:all}.code-copy{display:grid;justify-items:center;gap:var(--space-2);min-width:56px;padding:var(--space-4);border-radius:calc(var(--radius-lg) - var(--space-4));color:var(--accent-text);font:var(--type-caption)}.code-copy:hover{background:var(--selected)}.field.mono{height:auto;padding:var(--space-8) var(--space-12);resize:none}.field.compact{width:160px;text-align:end;font-variant-numeric:tabular-nums}.qr{width:min(256px,100%);aspect-ratio:1;justify-self:center;border-radius:var(--radius-md);image-rendering:pixelated}.qr.placeholder{background:var(--hover)}.link-code summary{color:var(--text-3);cursor:pointer}.banner{padding:var(--space-8) var(--space-16);background:var(--accent-soft);color:var(--text);font:var(--type-footnote);text-align:center;flex:none}.call-banner{display:flex;align-items:center;justify-content:center;gap:var(--space-8)}.call-banner .btn{height:28px;padding:0 var(--space-12)}.banner .link{color:var(--accent-text);font-weight:var(--weight-semibold);text-decoration:underline}.banner.danger{background:color-mix(in srgb,var(--danger) 16%,var(--bg))}.sidebar .banner{margin:0 var(--space-8) var(--space-8);border-radius:var(--radius-md)}.sheet{width:min(520px,calc(100vw - 32px));max-height:min(760px,calc(100vh - 32px))}.sheet:has(.picker){height:min(760px,calc(100vh - 32px))}.sheet:has(.picker) :is(.sheet-body,.sheet-body>.stack){display:flex;flex:1;flex-direction:column}.sheet:has(.picker) .sheet-body{scroll-padding-block:calc(var(--size-control) + var(--space-8)) calc(var(--size-control) + var(--space-32))}.sheet[open]{display:flex}.sheet-panel{display:flex;flex-direction:column;flex:1;min-height:0}.sheet-header{display:flex;align-items:center;gap:var(--space-8);padding:var(--space-16) var(--space-12) var(--space-8) var(--space-24)}.sheet-header h2{flex:1;margin:0;font:var(--type-headline)}.sheet-body{overflow-y:auto;padding:var(--space-8) var(--space-24) var(--space-24)}.section{margin:var(--space-16) 0 var(--space-8);font:var(--type-caption);font-weight:var(--weight-semibold);color:var(--text-3);text-transform:uppercase;letter-spacing:.04em}.settings-section,:is(.sheet-body,.info-body) section{display:grid}.storage-list{max-height:50vh;overflow-y:auto;margin-inline:calc(-1 * var(--space-12));padding-inline:var(--space-12)}.toggle{display:flex;align-items:center;justify-content:space-between;gap:var(--space-16);min-height:var(--space-48);padding-block:var(--space-4);border-radius:var(--radius-md);transition:background-color var(--motion-fast) var(--ease-standard)}.toggle:has(>[role=switch]:enabled,>.choice:enabled){cursor:pointer}.toggle:has(>[role=switch]:enabled,>.choice:enabled):hover{background:var(--hover)}:is(.sheet-body,.dialog-body,.admin-main,.onboarding-card,.info-body) :is(.toggle,.conv){width:calc(100% + 2 * var(--space-12));margin-inline:calc(-1 * var(--space-12));padding-inline:var(--space-12)}.choice{display:flex;align-items:center;gap:var(--space-4);flex:none;color:var(--text-2)}.choice:disabled{cursor:default}.choice:disabled .icon{display:none}.swatch-input{width:var(--size-control);height:var(--size-control);padding:0;border:0;border-radius:var(--radius-md);background:none;overflow:hidden;cursor:pointer}.swatch-input::-webkit-color-swatch-wrapper{padding:0}.swatch-input::-webkit-color-swatch{border:0;border-radius:var(--radius-md)}.swatch-input::-moz-color-swatch{border:0;border-radius:var(--radius-md)}.toggle>:last-child>.btn.ghost:last-child,.conv>.btn.ghost:last-child{padding-inline:var(--space-12);margin-inline-end:calc(-1 * var(--space-12))}.card-head{display:flex;align-items:center;gap:var(--space-16)}.card-head>div{flex:1;min-width:0}.card-head>.icon-btn.small:last-child{margin-inline-end:calc((var(--size-icon-compact) - var(--size-control-small)) / 2)}.subheading{margin:var(--space-8) 0 var(--space-4);font:var(--type-body);font-weight:var(--weight-semibold)}.card-name{font:var(--type-headline)}.card-actions{display:grid;grid-auto-columns:minmax(0,1fr);grid-auto-flow:column;gap:var(--space-8)}.card-actions .btn{flex-direction:column;gap:var(--space-4);height:auto;padding:var(--space-8) var(--space-4);font:var(--type-caption);font-weight:var(--weight-medium);white-space:normal;overflow-wrap:anywhere}.facts{display:grid;grid-template-columns:max-content 1fr;gap:var(--space-4) var(--space-16);margin:0}.facts dt{color:var(--text-3)}.facts dd{margin:0}.facts.wide{gap:var(--space-8) var(--space-24)}.safety .code-field{padding-block:var(--space-12);container-type:inline-size}.safety .code{flex:none;width:35ch;margin-inline:auto;font-size:min(calc(16px * var(--text-scale)),(100cqi - 64px) / 21);line-height:1.6;text-align:center}.safety .code-copy{width:56px}.info{--panel-inset: var(--space-20);display:flex;flex-direction:column;flex:1;min-height:0}.info-header{display:flex;align-items:center;gap:var(--space-4);flex:none;height:var(--size-header);padding-inline:calc(var(--panel-inset) - (var(--size-touch) - var(--size-icon)) / 2);border-bottom:1px solid var(--separator)}.info-header h2{flex:1;margin:0;font:var(--type-title)}.info-body{display:grid;grid-template-columns:minmax(0,1fr);align-content:start;gap:var(--space-16);flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain;padding:var(--space-24) var(--panel-inset);scroll-padding-top:calc(var(--size-control) + var(--space-16))}.profile{display:grid;justify-items:center;gap:var(--space-4);text-align:center}.profile h3{margin:var(--space-8) 0 0;font:var(--type-headline)}.about{margin:0;overflow-wrap:anywhere}.info-body .tabs{position:sticky;top:calc(-1 * var(--space-24));z-index:1;margin-inline:calc(-1 * var(--panel-inset));padding:var(--space-8) var(--panel-inset) 0;overflow-x:auto;background:var(--bg)}.info-body .tab{flex:1}.info-body .shared-grid{grid-template-columns:repeat(3,minmax(0,1fr));margin:2px calc(-1 * var(--panel-inset)) 0}.warning{color:var(--warning)}.verified{margin:0;color:var(--success);font:var(--type-footnote)}.picker{display:grid;gap:var(--space-8)}.picker>.search,.picker+.row-actions{position:sticky;z-index:1;background:var(--raised)}.picker>.search{top:calc(-1 * var(--space-8));margin-block:calc(-1 * var(--space-8));padding-block:var(--space-8)}.picker+.row-actions{bottom:calc(-1 * var(--space-24));margin:auto 0 calc(-1 * var(--space-24));padding-bottom:var(--space-24)}.avatar.add{background:var(--accent-soft);color:var(--accent-text)}.avatar.folder{background:var(--selected);color:var(--text-2)}.avatar.large>.icon{width:32px;height:32px}.chips{display:flex;flex-wrap:wrap;gap:var(--space-8)}.chips:empty{display:none}.chip{display:flex;align-items:center;gap:var(--space-8);height:var(--size-control-small);padding:0 var(--space-8) 0 var(--space-2);border-radius:var(--radius-pill);background:var(--input);font:var(--type-footnote)}.chip:hover{background:var(--selected)}.chip .icon{color:var(--text-2)}.device>.icon{color:var(--text-3)}.receipt .facts{margin-left:auto;font:var(--type-footnote)}.badge.mention{background:var(--accent);color:var(--on-accent)}.search-results .section{margin-inline:var(--space-12)}.search-results mark{background:var(--accent-soft);color:inherit;border-radius:2px}.search-results [role=status]{padding:0 var(--space-12) var(--space-8)}.conv.hit .conv-preview{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;white-space:normal}.chat-title-btn{display:flex;align-items:center;flex:1;min-width:0;text-align:left}.composer.readonly{padding:var(--space-16);color:var(--text-3);text-align:center;font:var(--type-footnote)}.forwarded{display:flex;align-items:center;gap:var(--space-4);font:var(--type-caption);font-style:italic;opacity:.75}.meta-line{display:flex;justify-content:flex-end;margin:6px -3px -4px 0}.meta-line .meta{position:static}.msg.mention-me.in .bubble{box-shadow:inset 3px 0 0 var(--accent)}.readers{display:flex;align-items:center;justify-content:flex-end;gap:2px;margin-top:2px;border-radius:var(--radius-pill)}.readers .avatar{--size: 16px}.readers .more{font:var(--type-caption);color:var(--text-3)}.poll{display:grid;gap:var(--space-8);width:240px;min-width:100%;max-width:100%;padding:var(--space-4) 0}.poll-question{font-weight:var(--weight-semibold)}.poll-hint{font:var(--type-caption);opacity:.75}.poll-option{position:relative;display:flex;justify-content:space-between;gap:var(--space-8);padding:var(--space-8) var(--space-12);background:color-mix(in srgb,currentColor 8%,transparent);overflow:hidden;text-align:left}.poll-option.mine{font-weight:var(--weight-semibold)}.poll-bar{position:absolute;inset:0 auto 0 0;width:calc(var(--share, 0) * 100%);background:color-mix(in srgb,currentColor 12%,transparent);pointer-events:none;transition:width var(--motion-normal) var(--ease-standard)}.admin-root{height:100%}.app.admin .conv-list{padding:0 var(--space-8) var(--space-8)}.app.admin .conv{font-weight:var(--weight-medium)}.admin-main{min-width:0;overflow-y:auto}.admin-main>h2{display:flex;align-items:center;height:var(--size-header);margin:0;padding:0 var(--space-32);border-bottom:1px solid var(--separator);font:var(--type-headline)}.admin-main>div{padding:var(--space-24) var(--space-32)}.table-wrap{margin-inline:calc(-1 * var(--space-8));overflow-x:auto}.table{width:100%;border-collapse:collapse}.table th{padding:var(--space-8);text-align:left;font:var(--type-caption);font-weight:var(--weight-semibold);color:var(--text-3);border-bottom:1px solid var(--separator)}.table td{padding:var(--space-8);border-bottom:1px solid var(--separator)}.table tbody tr{cursor:pointer}.table tbody tr:hover{background:var(--hover)}.table tr.muted{color:var(--text-3)}.link{color:var(--accent-text);font-weight:var(--weight-medium)}.tag{margin-left:var(--space-8);padding:1px 6px;border-radius:var(--radius-pill);background:var(--hover);font:var(--type-caption)}.app.admin .nav-menu{display:none}@media(max-width:719px){.app.admin{grid-template-rows:auto minmax(0,1fr)}.app.admin .sidebar{border-bottom:1px solid var(--separator)}.app.admin .conv-list{display:none}.app.admin .nav-menu{display:inline-grid}.admin-main>h2,.admin-main>div{padding-inline:var(--space-20)}}.licenses{max-height:60vh;margin:0;overflow:auto;font:var(--type-mono);font-size:11px;white-space:pre-wrap}.toggle:has(>span>.muted-note){padding-block:10px}.toggle>span>.muted-note{display:block;margin-top:var(--space-2)}.photo-editor{position:relative;display:grid;flex:none;border-radius:50%}.photo-update{position:absolute;inset:0;display:grid;place-content:center;justify-items:center;gap:var(--space-2);border-radius:50%;background:var(--scrim);color:var(--on-scrim);font:var(--type-caption);font-weight:var(--weight-semibold);opacity:0;transition:opacity var(--motion-fast) var(--ease-standard)}.photo-editor:is(:hover,:focus-visible,:active) .photo-update{opacity:1}.photo-editor:is(:hover,:focus-visible,:active) .avatar{color:transparent}.crop-box{justify-items:center}.crop{width:256px;height:256px;border-radius:50%;background:var(--hover);cursor:grab;touch-action:none}.crop-box .zoom{width:256px;accent-color:var(--accent)}.crop-box .row-actions{justify-self:stretch}.calendar{display:grid;gap:var(--space-8)}.calendar-head{display:flex;align-items:center;justify-content:space-between}.calendar-head [aria-disabled=true]{opacity:.45;cursor:default}.calendar-title{font:var(--type-title)}.calendar-title:first-letter{text-transform:uppercase}.calendar-grid{width:100%;border-collapse:collapse;table-layout:fixed}.calendar-grid th{padding-bottom:var(--space-4);color:var(--text-3);font:var(--type-caption);font-weight:var(--weight-semibold)}.calendar-grid td{padding:1px;text-align:center}.calendar-day{width:100%;max-width:var(--size-touch);aspect-ratio:1;border-radius:50%;font-variant-numeric:tabular-nums}.calendar-day:hover:enabled{background:var(--hover)}.calendar-day[aria-current=date]{background:var(--accent-soft);color:var(--accent-text);font-weight:var(--weight-semibold)}.calendar-day:disabled{color:var(--text-3);opacity:.45;cursor:default}.attachments{display:grid;grid-template-columns:minmax(0,1fr);gap:6px;margin-bottom:4px}.bubble.visual{padding:3px 3px 8px}.bubble.visual>:not(.attachments,.meta){margin-left:9px;margin-right:9px}.bubble.visual>.msg-name{margin-top:var(--space-4)}.bubble.bare{padding:3px}.bubble.bare .attachments{margin:0}.bubble.bare .meta-line{position:absolute;right:8px;bottom:8px;margin:0;padding:0 6px;border-radius:var(--radius-pill);background:var(--scrim)}.bubble.bare .meta-line .meta{color:var(--on-scrim)}.album{display:grid;grid-template-columns:1fr 1fr;gap:2px;width:400px;max-width:100%;overflow:hidden}.album.n1{grid-template-columns:1fr;width:var(--width, 400px);min-width:120px}.album.n1 .tile{aspect-ratio:var(--ratio, 1)}.album.n3 .tile:first-child{grid-column:span 2;aspect-ratio:2}.tile{position:relative;display:block;aspect-ratio:1;overflow:hidden;background:var(--code-in)}.tile:focus-visible{outline-offset:-2px}.tile-img,.link-img,.map-img,.cover{display:block;width:100%;height:100%;object-fit:cover}.tile-img:not(.loaded){filter:blur(6px);transform:scale(1.1)}.tile-badge,.tile-more{position:absolute;display:flex;align-items:center;gap:2px;color:var(--on-scrim)}.tile-badge{left:6px;bottom:6px;padding:1px 6px;border-radius:var(--radius-pill);background:var(--scrim);font:var(--type-caption)}.tile-download{position:absolute;left:50%;top:50%;display:grid;place-items:center;width:40px;height:40px;margin:-20px 0 0 -20px;border-radius:50%;background:var(--scrim);color:var(--on-scrim)}.tile-more{inset:0;justify-content:center;background:var(--scrim);font:var(--type-headline)}.progress{position:absolute;left:50%;top:50%;width:36px;height:36px;margin:-18px 0 0 -18px;border-radius:50%;background:conic-gradient(#fff calc(var(--progress, 0) * 1turn),#fff4 0);mask:radial-gradient(circle,transparent 13px,#000 14px)}.file-card{display:flex;align-items:center;gap:var(--space-12);width:220px;min-width:100%;max-width:100%;padding:2px 0;text-align:left}.file-icon{position:relative;display:grid;place-items:center;flex:none;width:40px;height:40px;background:var(--code-in)}.msg.out .file-icon{background:var(--code-out)}.file-icon .progress{width:40px;height:40px;margin:-20px 0 0 -20px;background:conic-gradient(currentColor calc(var(--progress, 0) * 1turn),transparent 0);mask:radial-gradient(circle,transparent 17px,#000 18px)}.file-text,.link-text,.location-text,.player-title{display:grid;min-width:0}.file-name,.song,.link-title{overflow:hidden;font-weight:var(--weight-semibold);text-overflow:ellipsis;white-space:nowrap}.file-size,.artist,.link-domain,.link-desc{font:var(--type-footnote);opacity:.8}.link-desc{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.player{display:flex;align-items:center;gap:var(--space-8);width:260px;max-width:100%}.player .cover{width:48px;height:48px;flex:none}.play{display:grid;place-items:center;flex:none;width:36px;height:36px;border-radius:50%;background:var(--accent);color:var(--on-accent)}.msg.out .play{background:var(--bubble-out-text);color:var(--bubble-out)}.play.playing .play-icon,.play:not(.playing) .pause-icon{display:none}.play .icon{width:16px;height:16px;fill:currentColor}.player-main{display:grid;flex:1;min-width:0;gap:2px}.wave{display:flex;align-items:center;gap:1px;height:28px;cursor:pointer}.wave span{flex:1;height:calc(var(--level) * 100%);border-radius:1px;background:currentColor;opacity:.35}.wave span.played{opacity:1}.player-meta{display:flex;justify-content:space-between;align-items:center;font:var(--type-caption);font-variant-numeric:tabular-nums;opacity:.85}.speed{min-width:34px;padding:0 6px;border-radius:var(--radius-pill);background:var(--code-in);font:var(--type-caption);font-weight:var(--weight-semibold)}.msg.out .speed{background:var(--code-out)}.link-preview,.location{display:grid;overflow:hidden;margin-top:6px;background:var(--code-in);color:inherit;text-decoration:none}.link-preview{margin:0 0 6px}.msg.out .link-preview,.msg.out .location{background:var(--code-out)}.link-img{aspect-ratio:1.91}.link-text,.location-text{padding:6px 10px 8px;font:var(--type-footnote)}.location{width:320px;max-width:100%;margin-top:0}.map{position:relative;display:block;aspect-ratio:16 / 9;background:var(--code-in)}.pin{position:absolute;left:50%;top:50%;margin:-24px 0 0 -12px;color:var(--danger)}.pin .icon{width:24px;height:24px}.open{display:flex;align-items:center;gap:4px;color:var(--accent-text)}.msg.out .open{color:inherit}.viewer{width:100%;max-width:none;height:100%;max-height:none;margin:0;padding:0;overflow:hidden;border:0;background:#000e;color:#fff}.viewer::backdrop{background:transparent}.viewer-stage{position:absolute;inset:0;overflow:hidden}.viewer-stage.zoomed{cursor:grab;touch-action:none}.viewer-stage.zoomed:active{cursor:grabbing}.viewer-frame{position:absolute;inset:var(--space-64);container-type:size}.viewer.strip .viewer-frame{bottom:calc(56px + 2 * var(--space-16))}@property --mx{syntax: "<length>"; inherits: false; initial-value: 0px;}@property --my{syntax: "<length>"; inherits: false; initial-value: 0px;}.viewer-img{--fit: min(var(--width), 100cqw, 100cqh * var(--ratio));--across: var(--fit);--down: calc(var(--fit) / var(--ratio));--mx: max(0px, (var(--across) * var(--zoom) - 100cqw) / 2);--my: max(0px, (var(--down) * var(--zoom) - 100cqh) / 2);position:absolute;left:50%;top:50%;width:var(--fit);aspect-ratio:var(--ratio);translate:-50% -50%;transform:translate(clamp(-1 * var(--mx),var(--x),var(--mx)),clamp(-1 * var(--my),var(--y),var(--my))) rotate(var(--turn)) scale(var(--zoom));transition:transform var(--motion-normal) var(--ease-standard)}.viewer-stage.turned .viewer-img{--fit: min(var(--width), 100cqh, 100cqw * var(--ratio));--across: calc(var(--fit) / var(--ratio));--down: var(--fit)}.viewer-stage.moving .viewer-img,:root[data-motion=reduce] .viewer-img{transition:none}.viewer .icon-btn{color:#fff}.viewer .icon-btn:hover{background:#fff2}.viewer-bar{position:absolute;top:var(--space-12);right:var(--space-12);display:flex;gap:var(--space-4)}.viewer-previous,.viewer-next{position:absolute;top:50%;margin-top:-20px}.viewer-previous{left:var(--space-12)}.viewer-next{right:var(--space-12)}.viewer-strip{position:absolute;inset:auto 0 var(--space-12);display:flex;justify-content:safe center;gap:var(--space-4);overflow-x:auto;padding:var(--space-4) var(--space-12);scrollbar-width:none}.viewer-thumb{flex:none;width:56px;height:56px;overflow:hidden;border:2px solid transparent;border-radius:var(--radius-sm);opacity:.6}.viewer-thumb:hover{opacity:.85}.viewer-thumb[aria-current=true]{border-color:#fff;opacity:1}@media(max-width:719px){.viewer-frame{inset-inline:0}}.tray{display:flex;gap:var(--space-8);overflow-x:auto;padding:var(--space-4) 0}.tray-item{position:relative;display:grid;place-items:center;flex:none;width:72px;height:72px;overflow:hidden;border-radius:var(--radius-md);background:var(--sidebar);font:var(--type-caption);text-align:center}.tray-item img{width:100%;height:100%;object-fit:cover}.tray-item .name{overflow:hidden;max-width:64px;text-overflow:ellipsis;white-space:nowrap}.tray-item .remove{position:absolute;top:2px;right:2px;width:22px;height:22px;border-radius:50%;background:var(--scrim);color:var(--on-scrim)}.tray-item .remove .icon{width:var(--size-icon-tiny);height:var(--size-icon-tiny)}.tray-options{display:flex;align-items:center;gap:var(--space-8);font:var(--type-footnote);color:var(--text-2)}.recorder{display:flex;flex:1;align-items:center;gap:var(--space-8);min-height:var(--size-touch);padding:0 var(--space-8) 0 var(--space-16);border-radius:var(--radius-pill);background:var(--input);font-variant-numeric:tabular-nums}.recorder .dot{width:10px;height:10px;border-radius:50%;background:var(--danger);animation:pulse 1s ease-in-out infinite alternate}.recorder .elapsed{flex:1}.drop-target{outline:2px dashed var(--accent);outline-offset:-8px}@keyframes pulse{to{opacity:.3}}.tray-thumb{width:100%;height:100%}.tray-item>span{display:grid;justify-items:center;gap:2px;padding:4px}.editor{display:flex;flex-direction:column;width:min(960px,calc(100vw - 32px));max-width:none;height:min(760px,calc(100vh - 32px));max-height:none;padding:0;overflow:hidden;border:0;border-radius:var(--radius-lg);background:#111215;color:#fff}.editor::backdrop{background:var(--overlay)}.editor-stage{position:relative;display:grid;flex:1;min-height:0;margin:var(--space-16);place-items:center}.editor-stage>.editor-canvas{position:absolute;touch-action:none;cursor:crosshair}.editor-bar{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-8);padding:var(--space-12) var(--space-16);background:#1b1c20}.editor-bar .icon-btn{color:#fff}.editor-bar .icon-btn:disabled{opacity:.4}.editor-bar .btn.secondary{background:#fff2;color:#fff}.editor-bar .spacer{flex:1}.swatches,.widths{display:flex;gap:var(--space-4)}.swatch,.width{display:grid;place-items:center;width:28px;height:28px;border:2px solid transparent;border-radius:50%}.swatch{background:var(--swatch);box-shadow:inset 0 0 0 1px #fff4}.swatch.on,.width.on{border-color:#fff}.width span{width:var(--dot);height:var(--dot);border-radius:50%;background:#fff}.scan-video{width:100%;aspect-ratio:4 / 3;object-fit:cover;border-radius:var(--radius-md);background:#000}.tabs{display:flex;border-bottom:1px solid var(--separator)}.tab{padding:var(--space-8);border-bottom:2px solid transparent;color:var(--text-2);font-weight:var(--weight-semibold)}.tab:focus-visible{outline-offset:-2px}.tab[aria-selected=true]{border-bottom-color:var(--accent);color:var(--text)}.shared-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(96px,1fr));gap:2px}.shared-end{height:1px}.shared-loading{display:flex;justify-content:center;padding:var(--space-24);color:var(--text-3)}.call{inset:0;width:auto;max-width:none;height:auto;max-height:none;margin:0;border:0;flex-direction:column;align-items:center;gap:var(--space-24);padding:var(--space-48) var(--space-16) var(--space-32);background:#181a20;color:#fff;outline:none;animation:fade var(--motion-normal) var(--ease-enter)}.call[open]{display:flex}.call-waiting{display:grid;gap:var(--space-8);width:min(480px,100%)}.call-waiting:empty{display:none}.call-waiting-item{display:flex;align-items:center;gap:var(--space-8);padding:var(--space-8) var(--space-8) var(--space-8) var(--space-16);border-radius:var(--radius-md);background:#ffffff24;animation:rise var(--motion-normal) var(--ease-enter)}.call-waiting-item span{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.call-waiting .btn{height:32px;padding:0 var(--space-12)}.call-waiting .btn.accept{background:var(--success);color:#fff}.call-header{text-align:center}.call-header h2{font:var(--type-headline)}.call-status{font:var(--type-body);color:#ffffffbf;font-variant-numeric:tabular-nums}.call-stage{flex:1;min-height:0;width:100%;max-width:1100px;display:flex;flex-direction:column;gap:var(--space-12)}.call-grid{flex:1;min-height:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));grid-auto-rows:minmax(0,1fr);gap:var(--space-12)}.call-tile{position:relative;display:grid;place-items:center;min-height:0;border-radius:var(--radius-lg);background:#ffffff0f;overflow:hidden}.call-tile.speaking{box-shadow:inset 0 0 0 3px var(--success)}.call-filmstrip{display:flex;gap:var(--space-12);overflow-x:auto;padding-bottom:var(--space-4)}.call-chip{display:grid;justify-items:center;gap:var(--space-4);width:64px;flex:none}.call-chip .avatar{transition:box-shadow var(--motion-fast)}.call-chip.speaking .avatar{box-shadow:0 0 0 3px var(--success)}.call-chip-name{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font:var(--type-caption);color:#ffffffbf}.call-video{width:100%;height:100%;object-fit:contain;background:#000}.call-name{position:absolute;left:var(--space-8);bottom:var(--space-8);display:flex;align-items:center;gap:var(--space-4);padding:var(--space-2) var(--space-8);border-radius:var(--radius-pill);background:#00000080;font:var(--type-footnote)}.call-controls{display:flex;gap:var(--space-16)}.call-btn{display:grid;place-items:center;width:56px;height:56px;border-radius:var(--radius-pill);background:#ffffff24;color:#fff;transition:background var(--motion-fast) var(--ease-standard)}.call-btn:hover{background:#ffffff38}.call-btn.on{background:#fff;color:#181a20}.call-btn.danger{background:var(--danger)}.call-btn.accept{background:var(--success)}body:has(.call) .toasts{bottom:calc(var(--space-32) + 56px + var(--space-24))}
