*,:after,:before{box-sizing:border-box}*{margin:0}html{height:100%;text-size-adjust:100%}body,html{touch-action:pan-x pan-y;overscroll-behavior-y:none;-webkit-tap-highlight-color:transparent}body{min-height:100%;margin:0;font-family:var(--font-sans);line-height:1.45;color:var(--q-text);background:var(--q-bg);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}button,input,select,textarea{font:inherit;line-height:inherit;color:inherit;margin:0}[role=button],[role=switch],a,button,input,select,textarea{touch-action:manipulation}button{cursor:pointer;border:0;padding:0;background:none;-webkit-appearance:none;-moz-appearance:none;appearance:none}button:disabled{cursor:not-allowed}a{color:inherit;text-decoration:none}img,video{max-width:100%}svg{display:block}::placeholder{color:var(--q-muted);opacity:.75}::selection{background:var(--q-primary-container);color:var(--q-on-primary-container)}@media (max-width:768px){input,select,textarea{font-size:16px!important}}:focus-visible{outline:2px solid var(--q-primary);outline-offset:2px}:root{--font-sans:"Roboto Flex","Google Sans Text","Roboto",-apple-system,BlinkMacSystemFont,"Segoe UI Variable Text","Segoe UI",system-ui,sans-serif;--font-mono:ui-monospace,"Cascadia Code",Consolas,"Segoe UI Mono",monospace;--q-hue:280;--q-bg:#121417;--q-surface:#1b1d22;--q-surface-low:#16181d;--q-surface-high:#272a30;--q-surface-container-lowest:#0d0f11;--q-surface-container-low:#16181d;--q-surface-container:#202228;--q-surface-container-high:#292c32;--q-surface-container-highest:#32363e;--q-surface-dim:#101114;--q-surface-bright:#373b43;--q-text:#eeeff2;--q-muted:#9fa3ad;--q-outline:#3c4048;--q-outline-variant:#2e3138;--q-outline-soft:hsl(var(--q-hue) 16% 50%/.16);--q-primary:#96b1e9;--q-on-primary:#151f32;--q-primary-container:#2d3b58;--q-on-primary-container:#dce6f9;--q-secondary-container:#393149;--q-on-secondary-container:#e3ddee;--q-tertiary:#75bdab;--q-on-tertiary-container:#dbf0eb;--q-tertiary-container:#2d4d45;--q-error:#e27881;--q-error-container:#48282b;--q-on-error-container:#f7dee0;--q-success:#60be8f;--q-success-container:#1e3329;--q-shadow:rgba(4,5,6,.5);--q-scrim:rgba(4,5,6,.6);--q-elevation-1:0 1px 3px 1px rgba(4,5,6,.18),0 1px 2px 0 rgba(4,5,6,.3);--q-elevation-2:0 2px 6px 2px rgba(4,5,6,.18),0 1px 2px 0 rgba(4,5,6,.3);--q-elevation-3:0 4px 12px 3px rgba(4,5,6,.22),0 1px 3px 0 rgba(4,5,6,.3);--q-radius-none:0px;--q-radius-xs:4px;--q-radius-sm:8px;--q-radius-md:12px;--q-radius-lg:20px;--q-radius-xl:32px;--q-radius-panel:36px;--q-radius-control:24px;--q-radius-press:16px;--q-radius-pill:9999px;--q-shape-hero:48px 48px 16px 48px;--q-shape-flower:38% 62% 38% 62%/62% 38% 62% 38%;--q-control-height:48px;--q-control-height-large:56px;--q-shape-blob:58% 42% 54% 46%/46% 56% 44% 54%;--q-shape-blob-alt:42% 58% 46% 54%/56% 44% 56% 44%;--q-shape-signature:34px 34px 14px 34px;--q-shape-signature-alt:34px 34px 34px 14px;--q-shape-hero-xl:56px 56px 18px 56px;--q-glow-primary:0 0 0 1px color-mix(in srgb,var(--q-primary) 34%,transparent),0 6px 22px color-mix(in srgb,var(--q-primary) 26%,transparent);--q-glow-tertiary:0 0 0 1px color-mix(in srgb,var(--q-tertiary) 30%,transparent),0 6px 22px color-mix(in srgb,var(--q-tertiary) 22%,transparent);--q-glow-soft:0 10px 34px color-mix(in srgb,var(--q-primary) 16%,transparent);--q-ring-focus:0 0 0 3px color-mix(in srgb,var(--q-primary) 30%,transparent);--q-surface-gradient:linear-gradient(155deg,color-mix(in srgb,var(--q-surface-bright) 62%,transparent),color-mix(in srgb,var(--q-surface-container-low) 92%,transparent));--q-primary-gradient:linear-gradient(140deg,color-mix(in srgb,var(--q-primary) 96%,transparent),color-mix(in srgb,var(--q-tertiary) 62%,transparent));--q-hero-gradient:radial-gradient(120% 120% at 18% 8%,color-mix(in srgb,var(--q-tertiary) 34%,var(--q-primary-container)),color-mix(in srgb,var(--q-primary) 22%,var(--q-primary-container)) 62%,var(--q-primary-container));--q-aura-gradient:radial-gradient(60% 60% at 50% 42%,color-mix(in srgb,var(--q-primary) 20%,transparent),transparent 72%);--q-type-display-xl:800 clamp(34px,4.4vw,58px)/1.06 var(--q-font-flex);--q-type-display:750 clamp(26px,3vw,40px)/1.1 var(--q-font-flex);--q-type-headline:650 clamp(19px,1.8vw,24px)/1.22 var(--q-font-flex);--q-fv-display:"wdth" 106,"GRAD" 30;--q-fv-headline:"wdth" 102,"GRAD" 15;--q-type-eyebrow:700 11px/1.4 var(--q-font-flex);--q-tracking-eyebrow:.1em;--q-ease-emphasized-decelerate:cubic-bezier(.05,.7,.1,1);--q-ease-emphasized-accelerate:cubic-bezier(.3,0,.8,.15);--q-ease-emphasized:cubic-bezier(.2,.9,.2,1.15);--q-ease-standard:cubic-bezier(.2,0,0,1);--q-ease-standard-decelerate:cubic-bezier(0,0,0,1);--q-ease-standard-accelerate:cubic-bezier(.3,0,1,1);--q-motion-spatial:cubic-bezier(.2,.85,.25,1.15);--q-motion-effects:cubic-bezier(.2,0,0,1);--q-motion-spatial-fast:350ms;--q-motion-spatial-default:500ms;--q-motion-effects-fast:160ms;--q-ease-expressive:var(--q-motion-spatial);--q-ease-out:cubic-bezier(.05,.7,.1,1);--q-duration-short1:50ms;--q-duration-short2:100ms;--q-duration-short3:150ms;--q-duration-short4:200ms;--q-duration-medium1:250ms;--q-duration-medium2:300ms;--q-duration-medium3:350ms;--q-duration-medium4:400ms;--q-duration-long1:450ms;--q-duration-long2:500ms;--q-duration-long3:550ms;--q-duration-long4:600ms;--q-duration-fast:150ms;--q-duration-medium:300ms;--q-duration-enter:450ms;--q-spring-medium-bouncy-damping:.5;--q-spring-medium-bouncy-stiffness:1500;--q-spring-low-bouncy-damping:.75;--q-spring-low-bouncy-stiffness:800;--q-state-hover:.08;--q-state-focus:.10;--q-state-pressed:.12;--q-state-dragged:.16;--q-font-flex:"Roboto Flex","Google Sans Text","Roboto",-apple-system,BlinkMacSystemFont,"Segoe UI",system-ui,sans-serif;--q-type-display:750 clamp(32px,4vw,56px)/1.08 var(--q-font-flex);--q-type-wght-regular:400;--q-type-wght-emphasized:650;--q-type-wght-display:750;--q-fv-resting:"wdth" 100,"GRAD" 0;--q-fv-emphasis:"wdth" 104,"GRAD" 25;--q-subtext:var(--q-muted);--q-on-surface:var(--q-text);--q-on-color:#fff;--q-on-scrim:#fff;--q-on-error:#fff;--q-on-success:#fff}@supports (animation-timing-function:linear(0,1)){:root{--q-motion-spatial:linear(0,.12 5%,.4 12%,.72 20%,.94 28%,1.065 38%,1.075 44%,1.025 60%,.995 76%,1)}}.quasar-theme{--q-outline-soft:hsl(var(--q-hue) 16% 50%/.16);min-height:100vh;min-height:100dvh;background:var(--q-bg);color:var(--q-text);font-family:var(--font-sans);font-optical-sizing:auto;-webkit-tap-highlight-color:transparent}.material-expressive{font-variation-settings:var(--q-fv-resting)}.material-expressive .modal,.material-expressive .panel{border-radius:var(--q-radius-panel)}.material-expressive :is(.primary,.cv-primary,.send-btn,.empty-action,.compose-btn):not(:disabled){font-weight:700;letter-spacing:.005em}.material-expressive :is(.primary,.cv-primary,.send-btn,.empty-action,.compose-btn):not(:disabled):active{transform:scale(.96)}.material-expressive :is(.chat-row,.person-row,.nav-list button,.nav-list a):hover{border-radius:var(--q-radius-control) 12px 12px var(--q-radius-control)}.material-expressive :is(.message:not(.own) .bubble,.message.own .bubble){border-radius:22px 22px 22px 8px}.material-expressive .message.own .bubble{border-radius:22px 22px 8px 22px}.material-expressive :is(.primary,.cv-primary,.send-btn,.empty-action,.compose-btn):not(:disabled):hover{box-shadow:var(--q-elevation-2)}@media(prefers-reduced-motion:no-preference){.material-expressive :is(.primary,.cv-primary,.send-btn,.empty-action,.compose-btn,.chat-row,.person-row){transition-timing-function:var(--q-ease-emphasized)}}.quasar-theme .q-state{position:relative;isolation:isolate;overflow:hidden;transition:background-color var(--q-duration-short3) var(--q-ease-standard),color var(--q-duration-short3) var(--q-ease-standard),transform var(--q-duration-short3) var(--q-ease-emphasized-decelerate),border-radius var(--q-duration-medium2) var(--q-ease-emphasized-decelerate)}.quasar-theme .q-state:after{content:"";position:absolute;inset:0;pointer-events:none;border-radius:inherit;background:currentColor;opacity:0;transform:scale(.55);transition:transform var(--q-duration-long1) var(--q-ease-emphasized-decelerate),opacity var(--q-duration-medium2) var(--q-ease-standard)}.quasar-theme .q-state:hover:after{opacity:var(--q-state-hover,.08)}.quasar-theme .q-state:focus-visible:after{opacity:var(--q-state-focus,.1)}.quasar-theme .q-state:not(:disabled):active:after{opacity:var(--q-state-pressed,.12);transform:scale(1);transition-duration:var(--q-duration-short1)}.quasar-theme .q-state:disabled{cursor:not-allowed}@media(hover:none){.quasar-theme .q-state:hover:after{opacity:0}}.material-expressive .q-state{border-radius:var(--q-radius-md)}.material-expressive .q-state:hover{border-radius:var(--q-radius-control)}.material-expressive .q-state:not(:disabled):active{border-radius:var(--q-radius-press) var(--q-radius-xs) var(--q-radius-xs) var(--q-radius-press)}.material-expressive .q-type-morph{font-family:var(--q-font-flex);font-variation-settings:var(--q-fv-resting);transition:font-variation-settings var(--q-duration-medium2) var(--q-ease-emphasized-decelerate)}.material-expressive .q-type-morph.is-selected,.material-expressive .q-type-morph:hover{font-variation-settings:var(--q-fv-emphasis)}.material-expressive ::selection{background:color-mix(in srgb,var(--q-primary) 28%,transparent);color:var(--q-on-primary-container);font-variation-settings:"wght" 600,"GRAD" 25}@keyframes q-emphasized-in{0%{opacity:0;transform:translateY(14px) scale(.94)}to{opacity:1;transform:none}}@keyframes q-emphasized-out{0%{opacity:1;transform:none}to{opacity:0;transform:translateY(-8px) scale(.98)}}@keyframes q-scale-in{0%{opacity:0;transform:scale(.92)}to{opacity:1;transform:scale(1)}}@keyframes q-fade-in{0%{opacity:0}to{opacity:1}}@keyframes q-fade-out{0%{opacity:1}to{opacity:0}}@keyframes q-sheet-up{0%{opacity:.4;transform:translateY(100%)}to{opacity:1;transform:translateY(0)}}@keyframes q-sheet-down{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(24%)}}@keyframes m3-fade-in{0%{opacity:0}to{opacity:1}}@keyframes m3-scale-up{0%{opacity:0;transform:scale(.92)}to{opacity:1;transform:scale(1)}}@keyframes cv-fade-in{0%{opacity:0}to{opacity:1}}.q-motion-in{animation:q-emphasized-in var(--q-duration-long1) var(--q-ease-emphasized-decelerate) both}.q-motion-out{animation:q-emphasized-out var(--q-duration-medium4) var(--q-ease-emphasized-accelerate) both}.q-pill-group{position:relative;display:inline-flex;gap:var(--q-radius-xs);padding:4px;background:color-mix(in srgb,var(--q-surface-container-highest) 72%,transparent)}.q-pill-group,.q-pill-indicator{border-radius:var(--q-radius-pill)}.q-pill-indicator{position:absolute;top:4px;bottom:4px;left:4px;background:color-mix(in srgb,var(--q-primary) 18%,var(--q-surface-container-highest));box-shadow:var(--q-elevation-1);transition:transform var(--q-duration-medium3) var(--q-ease-emphasized-decelerate),width var(--q-duration-medium3) var(--q-ease-emphasized-decelerate);pointer-events:none;z-index:0}.q-pill-group>*{position:relative;z-index:1}.q-fab{display:inline-flex;align-items:center;justify-content:center;gap:10px;height:56px;min-width:56px;padding:0 18px 0 16px;border-radius:var(--q-radius-pill);background:var(--q-primary);color:var(--q-on-primary);box-shadow:var(--q-elevation-3);font-family:var(--q-font-flex);font-weight:600;font-size:14px;letter-spacing:.01em;transition:border-radius var(--q-duration-medium3) var(--q-ease-emphasized-decelerate),min-width var(--q-duration-medium3) var(--q-ease-emphasized-decelerate),padding var(--q-duration-medium3) var(--q-ease-emphasized-decelerate),transform var(--q-duration-short4) var(--q-ease-emphasized),box-shadow var(--q-duration-medium2) var(--q-ease-standard)}.q-fab .q-fab-label{max-width:0;opacity:0;overflow:hidden;white-space:nowrap;transition:max-width var(--q-duration-medium4) var(--q-ease-emphasized-decelerate),opacity var(--q-duration-medium2) var(--q-ease-standard)}.q-fab.q-fab-extended .q-fab-label{max-width:180px;opacity:1}.q-fab:hover{transform:translateY(-2px);box-shadow:0 8px 20px var(--q-shadow)}.q-fab:not(:disabled):active{transform:scale(.94)}.q-dots{display:inline-flex;gap:5px;align-items:center}.q-dots span{width:8px;height:8px;border-radius:50%;background:currentColor;animation:q-dot-pulse 1.2s var(--q-ease-emphasized-decelerate) infinite both}.q-dots span:nth-child(2){animation-delay:.16s}.q-dots span:nth-child(3){animation-delay:.32s}@keyframes q-dot-pulse{0%,70%,to{transform:scale(.5);opacity:.35}35%{transform:scale(1.15);opacity:1}}.theme-dark{color-scheme:dark;--q-bg:hsl(var(--q-hue) 18% 7%);--q-surface:hsl(var(--q-hue) 16% 10%);--q-surface-low:hsl(var(--q-hue) 16% 13%);--q-surface-high:hsl(var(--q-hue) 17% 21%);--q-surface-container-lowest:hsl(var(--q-hue) 18% 5%);--q-surface-container-low:hsl(var(--q-hue) 16% 13%);--q-surface-container:hsl(var(--q-hue) 17% 17%);--q-surface-container-high:hsl(var(--q-hue) 17% 21%);--q-surface-container-highest:hsl(var(--q-hue) 17% 25%);--q-surface-dim:hsl(var(--q-hue) 18% 6%);--q-surface-bright:hsl(var(--q-hue) 16% 28%);--q-text:hsl(var(--q-hue) 24% 96%);--q-muted:hsl(var(--q-hue) 16% 76%);--q-on-surface:var(--q-text);--q-subtext:var(--q-muted);--q-outline:hsl(var(--q-hue) 10% 26%);--q-outline-variant:hsl(var(--q-hue) 12% 19%);--q-primary:hsl(var(--q-hue) 90% 82%);--q-on-primary:hsl(var(--q-hue) 65% 15%);--q-primary-container:hsl(var(--q-hue) 46% 30%);--q-on-primary-container:hsl(var(--q-hue) 90% 96%);--q-tertiary:hsl(calc(var(--q-hue) - 110) 68% 78%);--q-on-tertiary-container:hsl(calc(var(--q-hue) - 110) 70% 94%);--q-tertiary-container:hsl(calc(var(--q-hue) - 110) 36% 25%);--q-secondary-container:hsl(calc(var(--q-hue) + 40) 30% 27%);--q-on-secondary-container:hsl(calc(var(--q-hue) + 40) 65% 94%);--q-error:#e27881;--q-error-container:#48282b;--q-on-error-container:#f7dee0;--q-success:#60be8f;--q-success-container:#1e3329;--q-shadow:hsl(var(--q-hue) 20% 2%/.5);--q-scrim:hsl(var(--q-hue) 20% 2%/.6);--q-elevation-1:0 1px 3px 1px hsl(var(--q-hue) 20% 2%/.18),0 1px 2px 0 hsl(var(--q-hue) 20% 2%/.3);--q-elevation-2:0 2px 6px 2px hsl(var(--q-hue) 20% 2%/.18),0 1px 2px 0 hsl(var(--q-hue) 20% 2%/.3);--q-elevation-3:0 4px 12px 3px hsl(var(--q-hue) 20% 2%/.22),0 1px 3px 0 hsl(var(--q-hue) 20% 2%/.3);--q-primary-hover:hsl(var(--q-hue) 90% 87%);--q-inverse-surface:hsl(var(--q-hue) 24% 90%);--q-on-inverse-surface:hsl(var(--q-hue) 30% 14%);--q-inverse-on-surface:hsl(var(--q-hue) 10% 40%);--cv-bg:var(--q-bg);--cv-panel:var(--q-surface);--cv-panel-2:var(--q-surface-low);--cv-toolbar:var(--q-surface-container-high);--cv-line:var(--q-outline);--cv-line-soft:var(--q-outline-variant);--cv-text:var(--q-text);--cv-muted:var(--q-muted);--cv-muted-2:var(--q-muted);--cv-accent:var(--q-primary);--cv-on-primary:var(--q-on-primary);--cv-accent-soft:var(--q-primary-container);--cv-bubble:var(--q-surface-container-high);--cv-bubble-own:var(--q-primary-container);--cv-hover:var(--q-surface-container-highest);--cv-danger:var(--q-error);--cv-error-container:var(--q-error-container);--cv-scrim:var(--q-scrim);--cv-ink:var(--q-text)}.theme-light{color-scheme:light;--q-bg:hsl(var(--q-hue) 25% 97%);--q-surface:hsl(var(--q-hue) 30% 99%);--q-surface-low:hsl(var(--q-hue) 25% 95%);--q-surface-high:hsl(var(--q-hue) 24% 92%);--q-surface-container-lowest:#fff;--q-surface-container-low:hsl(var(--q-hue) 26% 96%);--q-surface-container:hsl(var(--q-hue) 24% 93%);--q-surface-container-high:hsl(var(--q-hue) 22% 89%);--q-surface-container-highest:hsl(var(--q-hue) 20% 85%);--q-surface-dim:hsl(var(--q-hue) 20% 87%);--q-surface-bright:hsl(var(--q-hue) 30% 99%);--q-text:hsl(var(--q-hue) 18% 12%);--q-muted:hsl(var(--q-hue) 10% 36%);--q-on-surface:var(--q-text);--q-subtext:var(--q-muted);--q-outline:hsl(var(--q-hue) 12% 80%);--q-outline-variant:hsl(var(--q-hue) 14% 88%);--q-primary:hsl(var(--q-hue) 66% 30%);--q-on-primary:#fff;--q-primary-container:hsl(var(--q-hue) 88% 88%);--q-on-primary-container:hsl(var(--q-hue) 62% 18%);--q-tertiary:hsl(calc(var(--q-hue) - 110) 46% 27%);--q-on-tertiary-container:hsl(calc(var(--q-hue) - 110) 52% 16%);--q-tertiary-container:hsl(calc(var(--q-hue) - 110) 66% 84%);--q-secondary-container:hsl(calc(var(--q-hue) + 40) 62% 90%);--q-on-secondary-container:hsl(calc(var(--q-hue) + 40) 40% 20%);--q-error:#ab2b36;--q-error-container:#f9e2e3;--q-on-error-container:#59181d;--q-success:#2d7652;--q-success-container:#def2e8;--q-shadow:hsl(var(--q-hue) 18% 30%/.14);--q-scrim:hsl(var(--q-hue) 16% 12%/.45);--q-elevation-1:0 1px 3px 1px hsl(var(--q-hue) 18% 30%/.12),0 1px 2px 0 hsl(var(--q-hue) 18% 30%/.2);--q-elevation-2:0 2px 6px 2px hsl(var(--q-hue) 18% 30%/.12),0 1px 2px 0 hsl(var(--q-hue) 18% 30%/.2);--q-elevation-3:0 4px 12px 3px hsl(var(--q-hue) 18% 30%/.16),0 1px 3px 0 hsl(var(--q-hue) 18% 30%/.2);--q-primary-hover:hsl(var(--q-hue) 66% 25%);--q-inverse-surface:hsl(var(--q-hue) 16% 12%);--q-on-inverse-surface:hsl(var(--q-hue) 20% 96%);--q-inverse-on-surface:hsl(var(--q-hue) 12% 66%);--cv-bg:var(--q-bg);--cv-panel:var(--q-surface);--cv-panel-2:var(--q-surface-low);--cv-toolbar:var(--q-surface-container-high);--cv-line:var(--q-outline);--cv-line-soft:var(--q-outline-variant);--cv-text:var(--q-text);--cv-muted:var(--q-muted);--cv-muted-2:var(--q-muted);--cv-accent:var(--q-primary);--cv-on-primary:var(--q-on-primary);--cv-accent-soft:var(--q-primary-container);--cv-bubble:var(--q-surface-container-high);--cv-bubble-own:var(--q-primary-container);--cv-hover:var(--q-surface-container-highest);--cv-danger:var(--q-error);--cv-error-container:var(--q-error-container);--cv-scrim:var(--q-scrim);--cv-ink:var(--q-text)}.theme-controls{display:flex;align-items:center;gap:8px;width:100%}.theme-palette{display:flex;gap:4px;flex:1 1 auto;min-width:0}.theme-swatch{flex:1 1;min-width:0;height:44px;display:grid;place-items:center;border-radius:10px;transition:background .15s}.theme-swatch span{display:grid;place-items:center;width:24px;height:24px;border-radius:50%;background:var(--swatch,#8063b6);color:var(--q-on-color);box-shadow:inset 0 0 0 1.5px hsla(0,0%,100%,.5);transition:transform .15s,box-shadow .15s}.theme-swatch:hover{background:var(--q-surface-high)}.theme-swatch:active span{transform:scale(.88)}.theme-swatch[aria-pressed=true] span{box-shadow:0 0 0 2px var(--q-surface),0 0 0 4px var(--swatch,#8063b6)}.theme-swatch:focus-visible{outline:2px solid var(--q-primary);outline-offset:2px}.theme-mode{flex:none;width:44px;height:44px;display:grid;place-items:center;border-radius:10px;color:var(--q-text);transition:background .15s}.theme-mode:hover{background:var(--q-surface-high)}.theme-mode:active{background:var(--q-primary-container)}.theme-mode:focus-visible{outline:2px solid var(--q-primary);outline-offset:2px}.m3-custom-theme-row{margin-top:14px;padding-top:14px;border-top:1px solid var(--q-outline-variant)}.theme-editor-preview{position:relative;overflow:hidden}.theme-preview-layers{position:absolute;inset:0;overflow:hidden;pointer-events:none}.theme-preview-layer{position:absolute;transform:translate(-50%,-50%);display:grid;place-items:center;max-height:100%;font-size:22px;font-weight:700;text-shadow:0 2px 8px color-mix(in srgb,var(--q-bg) 70%,transparent)}.theme-preview-layer img{width:100%;max-height:140px;object-fit:contain;border-radius:12px}.theme-preview-gradient{aspect-ratio:1;border-radius:50%;filter:blur(7px)}.theme-preview-compose,.theme-preview-message,.theme-preview-top{position:relative;z-index:1}.theme-preview-message.own{background:var(--q-message-accent,var(--q-primary));color:var(--q-message-on-accent,var(--q-on-primary))}.theme-live-layers{position:absolute;inset:0;z-index:0;overflow:hidden;pointer-events:none;contain:strict;border-radius:inherit}.theme-live-layer{position:absolute;transform:translate(-50%,-50%);display:grid;place-items:center;max-height:90vh;font-weight:700;font-size:clamp(16px,3vw,40px);text-shadow:0 2px 14px color-mix(in srgb,var(--q-bg) 70%,transparent);filter:drop-shadow(0 8px 18px color-mix(in srgb,var(--q-primary) 20%,transparent))}.theme-live-layer img{display:block;width:100%;max-height:70vh;object-fit:contain;border-radius:var(--q-radius-lg)}.theme-live-gradient{aspect-ratio:1;border-radius:50%;filter:blur(14px)}.theme-live-animation span{animation:q-layer-pulse 2.4s ease-in-out infinite alternate}@keyframes q-layer-pulse{0%{transform:scale(.82) rotate(-8deg);opacity:.45}to{transform:scale(1.15) rotate(8deg);opacity:1}}.theme-layer-actions{display:flex;flex-wrap:wrap;align-items:center;gap:7px;margin:4px 0 12px}.theme-layer-actions strong{flex-basis:100%;color:var(--q-text)}.theme-layer-actions button{padding:8px 10px;border-radius:13px;background:var(--q-surface-container-high);color:var(--q-text);font-size:12px}.theme-layer-empty{padding:14px;border-radius:16px;color:var(--q-muted);font-size:13px}.theme-layer-card,.theme-layer-empty{background:var(--q-surface-container-low)}.theme-layer-card{margin:10px 0;padding:12px;border-radius:18px;border:1px solid var(--q-outline-variant);color:var(--q-text)}.theme-layer-card.muted{opacity:.58}.theme-layer-card header{display:flex;align-items:center;gap:8px;margin-bottom:10px}.theme-layer-card header strong{flex:1 1;font-size:13px}.theme-layer-card header button{color:var(--q-muted);padding:4px 7px;border-radius:9px}.theme-layer-handle{color:var(--q-muted)}.theme-layer-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:8px;gap:8px;margin-top:10px}.theme-layer-grid label,.theme-layer-text{display:flex;flex-direction:column;gap:5px;color:var(--q-muted);font-size:11px}.theme-layer-grid input[type=number],.theme-layer-text input{width:100%;box-sizing:border-box;padding:8px;border:1px solid var(--q-outline-variant);border-radius:11px;background:var(--q-surface-container);color:var(--q-text)}.theme-layer-grid input[type=range]{accent-color:var(--q-primary)}.theme-layer-card header button:disabled{opacity:.35;cursor:default}.theme-layer-shadow{display:flex;align-items:center;gap:8px;margin-top:10px;color:var(--q-muted);font-size:12px}.theme-layer-shadow input{accent-color:var(--q-primary)}.theme-presets{flex-direction:column;margin-top:16px;padding-top:14px;border-top:1px solid var(--q-outline-variant)}.theme-presets,.theme-save-row{display:flex;gap:8px}.theme-save-row input{flex:1 1;min-width:0;padding:10px 12px;border:1px solid var(--q-outline-variant);border-radius:14px;background:var(--q-surface-container-low);color:var(--q-text);font:inherit}.theme-preset-card button,.theme-save-row button{padding:9px 12px;border-radius:14px;background:var(--q-primary-container);color:var(--q-on-primary-container);font-size:12px;font-weight:600}.theme-preset-card{display:flex;align-items:center;gap:8px;padding:9px;border-radius:16px;background:var(--q-surface-container-low)}.theme-preset-card button{padding:7px 9px}.theme-preset-card button:last-child{background:var(--q-error-container);color:var(--q-on-error-container)}.theme-preset-swatch{width:30px;height:30px;flex:none;border-radius:10px}.theme-preset-info{display:flex;flex:1 1;min-width:0;flex-direction:column;color:var(--q-text);font-size:12px}.theme-preset-info small{color:var(--q-muted);font-size:10px}.quasar-theme :is(button,a.primary){touch-action:manipulation}.quasar-theme :is(.primary,.cv-primary,.cv-back,.empty-action,.send-btn,.compose-btn,.icon-btn,.theme-mode,.chat-row,.person-row){position:relative;isolation:isolate;overflow:hidden;transition:background-color var(--q-duration-fast),color var(--q-duration-fast),transform var(--q-duration-fast) var(--q-ease-out)}.quasar-theme :is(.primary,.cv-primary,.cv-back,.empty-action,.send-btn,.compose-btn,.icon-btn,.theme-mode,.chat-row,.person-row):after{content:"";position:absolute;inset:0;pointer-events:none;border-radius:inherit;background:currentColor;opacity:0;transform:scale(.55);transition:transform var(--q-duration-enter) var(--q-ease-out),opacity var(--q-duration-medium)}.quasar-theme :is(.primary,.cv-primary,.cv-back,.empty-action,.send-btn,.compose-btn,.icon-btn,.theme-mode,.chat-row,.person-row):not(:disabled):active:after{opacity:.12;transform:scale(1);transition-duration:80ms}.theme-mode,.theme-swatch{border-radius:50%}.theme-swatch span{transition:transform var(--q-duration-medium) var(--q-ease-out),box-shadow var(--q-duration-fast)}.theme-swatch[aria-pressed=true] span{transform:scale(.88)}.theme-mode svg{animation:theme-icon-in var(--q-duration-medium) var(--q-ease-out) backwards}@keyframes theme-icon-in{0%{opacity:0;transform:rotate(-20deg) scale(.8)}to{opacity:1;transform:none}}@media(hover:hover) and (pointer:fine){.quasar-theme :is(.primary,.cv-primary,.send-btn):not(:disabled):hover{transform:translateY(-1px)}}@media(prefers-reduced-motion:reduce){.quasar-theme *,.quasar-theme :after,.quasar-theme :before{animation:none!important;transition:none!important;scroll-behavior:auto!important}.quasar-theme :is(.primary,.cv-primary,.send-btn):not(:disabled):hover,.quasar-theme :is(button,a.primary):not(:disabled):active{transform:none}.quasar-theme a:focus-visible,.quasar-theme a:hover{transform:none!important}.quasar-theme *{font-variation-settings:normal!important}}.message :is(img,video,.attachment-image-wrap,.attachment-video-preview){-webkit-touch-callout:none;-webkit-user-drag:none;user-drag:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.q-spoiler{cursor:pointer;border-radius:6px;padding:0 2px;color:transparent;background:color-mix(in srgb,var(--q-text) 28%,transparent);transition:color .3s,background-color .3s;-webkit-user-select:none;-moz-user-select:none;user-select:none}.q-spoiler.is-revealed{color:inherit;background:color-mix(in srgb,var(--q-text) 8%,transparent);cursor:text;-webkit-user-select:text;-moz-user-select:text;user-select:text}.q-mention{color:var(--q-primary);cursor:pointer;font-weight:500;text-decoration:none;border-radius:4px}.q-mention:focus-visible,.q-mention:hover{text-decoration:underline}.quasar-theme.material-expressive .app-shell{position:relative;isolation:isolate;background:radial-gradient(120% 90% at 88% -8%,color-mix(in srgb,var(--q-tertiary) 16%,transparent),transparent 62%),radial-gradient(90% 80% at -6% 108%,color-mix(in srgb,var(--q-primary) 13%,transparent),transparent 58%),var(--q-bg);background-image:var(--q-theme-image),radial-gradient(120% 90% at 88% -8%,color-mix(in srgb,var(--q-tertiary) 16%,transparent),transparent 62%),radial-gradient(90% 80% at -6% 108%,color-mix(in srgb,var(--q-primary) 13%,transparent),transparent 58%);background-size:cover;background-position:50%}.quasar-theme.material-expressive .app-shell:after,.quasar-theme.material-expressive .app-shell:before{content:"";position:absolute;z-index:-1;pointer-events:none;opacity:0;contain:strict}@media (min-width:1024px) and (hover:hover) and (prefers-reduced-motion:no-preference){.quasar-theme.material-expressive .app-shell:after,.quasar-theme.material-expressive .app-shell:before{opacity:.5;filter:blur(24px);will-change:transform;transform:translateZ(0)}.quasar-theme.material-expressive .app-shell:before{width:380px;height:380px;top:-120px;right:-90px;border-radius:var(--q-shape-blob);background:color-mix(in srgb,var(--q-tertiary) 24%,transparent);animation:q-blob-drift 32s var(--q-ease-standard) infinite alternate}.quasar-theme.material-expressive .app-shell:after{width:460px;height:420px;bottom:-160px;left:-130px;border-radius:var(--q-shape-blob-alt);background:color-mix(in srgb,var(--q-primary) 18%,transparent);animation:q-blob-drift-alt 40s var(--q-ease-standard) infinite alternate}}@keyframes q-blob-drift{0%{transform:translateZ(0) rotate(0deg) scale(1)}to{transform:translate3d(-18px,18px,0) rotate(14deg) scale(1.04)}}@keyframes q-blob-drift-alt{0%{transform:translateZ(0) rotate(0deg) scale(1)}to{transform:translate3d(18px,-16px,0) rotate(-12deg) scale(1.05)}}.quasar-theme.material-expressive{font-family:var(--q-theme-font,var(--font-sans));font-size:var(--q-theme-text-size,16px)}.quasar-theme.material-expressive .panel{border:0;border-radius:var(--q-theme-corner,var(--q-radius-panel))}.quasar-theme.material-expressive .sidebar{background:linear-gradient(180deg,color-mix(in srgb,var(--q-surface-container) 92%,transparent),color-mix(in srgb,var(--q-surface-container-low) 96%,transparent));box-shadow:inset -1px 0 0 color-mix(in srgb,var(--q-outline-variant) 35%,transparent)}.quasar-theme.material-expressive .conversation{position:relative;isolation:isolate;border:0;border-radius:var(--q-theme-corner,var(--q-radius-panel));background:color-mix(in srgb,var(--q-chat-custom,var(--q-surface)) var(--q-theme-opacity,100%),transparent);box-shadow:var(--q-elevation-1)}.quasar-theme.material-expressive .conversation>:not(.theme-live-layers){position:relative;z-index:1}.quasar-theme.material-expressive .sidebar{background-color:var(--q-panel-custom,transparent)}.quasar-theme.material-expressive[data-theme-glow=off] .conversation{box-shadow:none}.quasar-theme.material-expressive .sidebar{background:color-mix(in srgb,var(--q-panel-custom,var(--q-surface-container)) var(--q-theme-opacity,100%),transparent)}.quasar-theme.material-expressive :is(button.primary,button.cv-primary,button.send-btn,button.compose-btn,button.m3-tonal-btn){border-radius:var(--q-theme-button-corner,var(--q-radius-control))}.quasar-theme.material-expressive :is([role=menu],.message-context-menu,.attachment-sheet,.emoji-picker){background-color:color-mix(in srgb,var(--q-surface-container-high) var(--q-theme-menu-opacity,96%),transparent);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.quasar-theme[data-theme-motion=off] *,.quasar-theme[data-theme-motion=off] :after,.quasar-theme[data-theme-motion=off] :before{animation:none!important;transition:none!important;scroll-behavior:auto!important}.theme-editor-tabs{display:flex;gap:6px;overflow-x:auto;padding:4px;margin:8px 0 14px;border-radius:18px;background:var(--q-surface-container-low)}.theme-editor-tabs button{flex:none;padding:9px 14px;border-radius:14px;color:var(--q-muted);font:inherit;font-size:13px;white-space:nowrap}.theme-editor-tabs button.active{background:var(--q-primary-container);color:var(--q-on-primary-container);font-weight:650}.theme-editor-preview{padding:14px;margin-bottom:16px;min-height:150px;border:1px solid color-mix(in srgb,var(--q-outline) 35%,transparent);box-shadow:0 8px 24px color-mix(in srgb,var(--q-shadow) 25%,transparent);background-image:var(--q-theme-image);background-size:cover;background-position:50%;transition:background .2s,border-radius .2s}.theme-preview-top{display:flex;align-items:center;gap:9px;color:var(--q-text)}.theme-preview-top>span:nth-child(2){display:flex;flex-direction:column;font-size:12px}.theme-preview-top small{color:var(--q-muted);font-size:10px}.theme-preview-avatar{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:var(--q-primary);color:var(--q-on-primary);font-size:12px;font-weight:700}.theme-preview-top i{margin-left:auto;width:8px;height:8px;border-radius:50%;background:var(--q-success)}.theme-preview-message{width:max-content;max-width:80%;padding:9px 12px;margin:12px 0 0;border-radius:15px 15px 15px 5px;background:var(--q-surface-container-high);color:var(--q-text);font-size:12px}.theme-preview-message.own{margin-left:auto;background:var(--q-primary);color:var(--q-on-primary)}.theme-preview-compose{display:flex;justify-content:space-between;align-items:center;margin-top:12px;padding:8px 10px;border-radius:18px;background:color-mix(in srgb,var(--q-surface-container-high) 90%,transparent);color:var(--q-muted);font-size:11px}.theme-preview-compose b{display:grid;place-items:center;width:24px;height:24px;border-radius:50%;background:var(--q-primary);color:var(--q-on-primary)}.theme-editor-color-row{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:8px 0}.theme-editor-color-row label,.theme-editor-controls>label{display:flex;flex:1 1;align-items:center;justify-content:space-between;gap:10px;color:var(--q-text);font-size:13px}.theme-editor-color-row input[type=text],.theme-editor-controls select{width:112px;padding:9px 10px;border:1px solid var(--q-outline-variant);border-radius:13px;background:var(--q-surface-container-low);color:var(--q-text);font:inherit;font-size:13px}.theme-editor-color-row input:focus,.theme-editor-controls select:focus{outline:2px solid var(--q-primary);outline-offset:1px}.theme-editor-chip{width:32px;height:32px;flex:none;border-radius:11px;border:1px solid color-mix(in srgb,var(--q-text) 20%,transparent)}.theme-editor-controls{display:flex;flex-direction:column;gap:18px;padding:8px 2px}.theme-editor-controls>label{flex-wrap:wrap}.theme-editor-controls output{margin-left:auto;color:var(--q-primary);font-weight:650}.theme-editor-controls input[type=range]{flex:0 0 100%;accent-color:var(--q-primary)}.theme-editor-controls select{width:auto;min-width:150px}.theme-editor-file{display:flex;flex-direction:column;gap:8px;color:var(--q-text);font-size:13px}.theme-editor-file input{max-width:100%;color:var(--q-muted)}.theme-editor-toggle{display:flex;align-items:center;justify-content:space-between;padding:12px;border-radius:16px;background:var(--q-surface-container-low)}.theme-editor-toggle span{display:flex;flex-direction:column;gap:3px;color:var(--q-text);font-size:13px}.theme-editor-toggle small{color:var(--q-muted)}.theme-editor-toggle input{width:20px;height:20px;accent-color:var(--q-primary)}.quasar-theme.material-expressive .sb-brand{position:relative;overflow:hidden}.quasar-theme.material-expressive .sb-brand:after{content:"";position:absolute;inset:auto -30px -40px auto;width:130px;height:130px;border-radius:var(--q-shape-flower);background:color-mix(in srgb,var(--q-tertiary) 22%,transparent);transform:rotate(-18deg);pointer-events:none}.quasar-theme.material-expressive .sb-brand strong{font-size:36px;font-weight:850;letter-spacing:-.05em;line-height:1.05;font-variation-settings:var(--q-fv-display);background:linear-gradient(135deg,var(--q-text),color-mix(in srgb,var(--q-primary) 74%,var(--q-text)));-webkit-background-clip:text;background-clip:text;color:transparent}.quasar-theme.material-expressive.theme-light .sb-brand strong{background:linear-gradient(135deg,var(--q-text),color-mix(in srgb,var(--q-primary) 60%,var(--q-text)));-webkit-background-clip:text;background-clip:text;color:transparent}.quasar-theme.material-expressive .sb-brand small{font-variation-settings:"GRAD" 12;font-weight:560}.quasar-theme.material-expressive .sb-search{height:46px;border:0;background:color-mix(in srgb,var(--q-surface-container-high) 88%,transparent)}.quasar-theme.material-expressive .sb-search:focus-within{box-shadow:var(--q-ring-focus);background:var(--q-surface-container-highest)}.quasar-theme.material-expressive .list-head span{font:var(--q-type-eyebrow);letter-spacing:var(--q-tracking-eyebrow);text-transform:uppercase;color:color-mix(in srgb,var(--q-primary) 80%,var(--q-muted));font-variation-settings:"GRAD" 25}.quasar-theme.material-expressive .chat-row{border:0;background:color-mix(in srgb,var(--q-surface-container-low) 55%,transparent);border-radius:24px;box-shadow:none;transition:background-color var(--q-motion-effects-fast) var(--q-motion-effects),transform var(--q-motion-spatial-fast) var(--q-motion-spatial),border-radius var(--q-motion-spatial-fast) var(--q-motion-spatial),box-shadow var(--q-motion-spatial-fast) var(--q-motion-effects)}.quasar-theme.material-expressive .chat-row:hover{background:var(--q-surface-container);border-radius:30px 16px 30px 30px;box-shadow:var(--q-elevation-1);transform:translateY(-1px)}.quasar-theme.material-expressive .chat-row:active{border-radius:18px 12px 18px 18px;transform:scale(.98)}.quasar-theme.material-expressive .chat-row.selected{background:linear-gradient(135deg,var(--q-secondary-container),color-mix(in srgb,var(--q-primary) 28%,var(--q-secondary-container)));border-radius:var(--q-shape-signature);box-shadow:var(--q-glow-soft)}.quasar-theme.material-expressive .chat-row .chat-avatar{transition:transform var(--q-motion-spatial-fast) var(--q-motion-spatial),border-radius var(--q-motion-spatial-fast) var(--q-motion-spatial)}.quasar-theme.material-expressive .chat-row:hover .chat-avatar{transform:scale(1.06);border-radius:var(--q-shape-flower)}.quasar-theme.material-expressive .chat-row.selected .chat-avatar{box-shadow:var(--q-glow-primary)}.quasar-theme.material-expressive .chat-row.selected .channel-avatar{border-radius:var(--q-shape-flower)}.quasar-theme.material-expressive .sb-footer{border:0;border-radius:22px;background:color-mix(in srgb,var(--q-surface-container) 82%,transparent)}.quasar-theme.material-expressive .ban-status{border:0;border-radius:24px}.quasar-theme.material-expressive .chat-badge{animation:q-badge-pop var(--q-duration-long1) var(--q-ease-emphasized) both;box-shadow:0 0 0 1px color-mix(in srgb,var(--q-on-primary) 22%,transparent),0 3px 10px color-mix(in srgb,var(--q-primary) 42%,transparent)}@keyframes q-badge-pop{0%{transform:scale(.3);opacity:0}55%{transform:scale(1.22);opacity:1}75%{transform:scale(.94)}to{transform:scale(1);opacity:1}}.quasar-theme.material-expressive .compose-btn{border-radius:var(--q-shape-signature);background:var(--q-primary-gradient);color:var(--q-on-primary);box-shadow:var(--q-elevation-2)}.quasar-theme.material-expressive .compose-btn:hover{border-radius:var(--q-shape-flower);transform:scale(1.08);box-shadow:var(--q-glow-primary)}.quasar-theme.material-expressive .compose-btn:active{transform:scale(.92) rotate(-4deg);border-radius:var(--q-shape-signature-alt)}.quasar-theme.material-expressive .heading-copy h2{font-size:clamp(17px,1.5vw,21px);font-weight:800;letter-spacing:-.025em;font-variation-settings:"wdth" 106,"GRAD" 25;transition:font-variation-settings var(--q-duration-medium2) var(--q-ease-emphasized-decelerate)}.quasar-theme.material-expressive .channel-heading.clickable:hover .heading-copy h2{font-variation-settings:"wdth" 110,"GRAD" 32}.quasar-theme.material-expressive .channel-icon{border-radius:var(--q-shape-signature)}.quasar-theme.material-expressive .channel-heading.clickable:hover .channel-icon{border-radius:var(--q-shape-flower);transform:scale(1.04)}.quasar-theme.material-expressive .icon-btn{border-radius:50%;transition:background-color var(--q-motion-effects-fast) var(--q-motion-effects),color var(--q-motion-effects-fast) var(--q-motion-effects),transform var(--q-motion-spatial-fast) var(--q-motion-spatial),border-radius var(--q-motion-spatial-fast) var(--q-motion-spatial)}.quasar-theme.material-expressive .icon-btn:hover{border-radius:18px;background:color-mix(in srgb,var(--q-surface-container-highest) 78%,transparent)}.quasar-theme.material-expressive .icon-btn:active{border-radius:12px 4px 12px 12px;transform:scale(.9)}.quasar-theme.material-expressive .icon-btn.toggled{box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--q-primary) 34%,transparent)}.quasar-theme.material-expressive .message .bubble{border:0;background:color-mix(in srgb,var(--q-surface-container-high) 96%,transparent);border-radius:28px 28px 28px 8px;box-shadow:0 2px 6px color-mix(in srgb,var(--q-shadow) 45%,transparent);position:relative;isolation:isolate;transition:transform var(--q-motion-spatial-fast) var(--q-motion-spatial),border-radius var(--q-motion-spatial-fast) var(--q-motion-spatial),box-shadow var(--q-motion-spatial-fast) var(--q-motion-effects)}.quasar-theme.material-expressive .message .bubble:after{content:"";position:absolute;inset:0;pointer-events:none;border-radius:inherit;background:currentColor;opacity:0;transform:scale(.55);transition:transform var(--q-duration-long1) var(--q-ease-emphasized-decelerate),opacity var(--q-duration-medium2) var(--q-ease-standard)}.quasar-theme.material-expressive .message:hover .bubble:after{opacity:var(--q-state-hover)}.quasar-theme.material-expressive .message.menu-open .bubble:after{opacity:var(--q-state-focus)}.quasar-theme.material-expressive .message:active .bubble:after{opacity:var(--q-state-pressed);transform:scale(1)}@media (hover:none){.quasar-theme.material-expressive .message:hover .bubble:after{opacity:0}}.quasar-theme.material-expressive .message.own .bubble{--q-on-primary-container:var(--q-message-on-accent,var(--q-on-primary));background:var(--q-message-accent,var(--q-primary));color:var(--q-message-on-accent,var(--q-on-primary));border-radius:var(--q-theme-corner,28px) var(--q-theme-corner,28px) 8px var(--q-theme-corner,28px);box-shadow:0 6px 18px color-mix(in srgb,var(--q-message-accent,var(--q-primary)) 30%,transparent),inset 0 1px 0 color-mix(in srgb,var(--q-message-on-accent,var(--q-on-primary)) 16%,transparent)}.quasar-theme.material-expressive .message.own .bubble :is(.q-mention,a){color:var(--q-message-on-accent,var(--q-on-primary));text-decoration:underline;-webkit-text-decoration-color:color-mix(in srgb,var(--q-on-primary) 55%,transparent);text-decoration-color:color-mix(in srgb,var(--q-on-primary) 55%,transparent)}.quasar-theme.material-expressive .message.own .bubble .q-spoiler{background:color-mix(in srgb,var(--q-on-primary) 32%,transparent)}.quasar-theme.material-expressive .message.own .bubble .q-spoiler.is-revealed{background:color-mix(in srgb,var(--q-on-primary) 14%,transparent)}.quasar-theme.material-expressive .message.own .bubble .voice-play-btn{color:var(--q-primary)}.quasar-theme.material-expressive .message.own .bubble .voice-rate-pill{color:var(--q-on-primary);background:color-mix(in srgb,var(--q-on-primary) 16%,transparent)}.quasar-theme.material-expressive .message:hover .bubble{transform:translateY(-1px);box-shadow:var(--q-elevation-2)}.quasar-theme.material-expressive .message.own:hover .bubble{box-shadow:0 8px 24px color-mix(in srgb,var(--q-message-accent,var(--q-primary)) 36%,transparent)}.quasar-theme.material-expressive .message.menu-open .bubble{border-radius:var(--q-radius-control);box-shadow:var(--q-glow-primary)}.quasar-theme.material-expressive .bubble p{font-variation-settings:"GRAD" 6}.quasar-theme.material-expressive .message.own .message-meta{color:color-mix(in srgb,var(--q-primary) 72%,var(--q-muted))}.quasar-theme.material-expressive .message-reaction{border:0;background:color-mix(in srgb,var(--q-surface-container-highest) 88%,transparent);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--q-outline-variant) 80%,transparent);transition:transform var(--q-motion-spatial-fast) var(--q-motion-spatial),background-color var(--q-motion-effects-fast) var(--q-motion-effects);animation:q-reaction-pop var(--q-duration-long1) var(--q-ease-emphasized) both}.quasar-theme.material-expressive .message-reaction:hover{transform:scale(1.14) rotate(-3deg);background:var(--q-secondary-container);box-shadow:var(--q-glow-soft)}@keyframes q-reaction-pop{0%{transform:scale(.4);opacity:0}60%{transform:scale(1.16);opacity:1}to{transform:scale(1);opacity:1}}.quasar-theme.material-expressive .reaction-picker button{border-radius:14px}.quasar-theme.material-expressive .reaction-picker button:hover{border-radius:var(--q-shape-flower)}.quasar-theme.material-expressive .m3-composer-wrap{background:color-mix(in srgb,var(--q-surface) 72%,transparent);box-shadow:0 -1px 0 color-mix(in srgb,var(--q-outline-variant) 50%,transparent)}.quasar-theme.material-expressive .composer{min-height:54px;border:0;border-radius:var(--q-radius-pill);background:color-mix(in srgb,var(--q-surface-container-highest) 95%,transparent);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--q-outline-variant) 45%,transparent),0 8px 24px color-mix(in srgb,var(--q-primary) 9%,transparent);transition:box-shadow var(--q-motion-spatial-fast) var(--q-motion-effects),background-color var(--q-motion-effects-fast) var(--q-motion-effects)}.quasar-theme.material-expressive .composer:focus-within{background:var(--q-surface-container-highest);box-shadow:var(--q-ring-focus),inset 0 0 0 1px color-mix(in srgb,var(--q-primary) 55%,transparent)}.quasar-theme.material-expressive .composer textarea{font-variation-settings:"GRAD" 8}.quasar-theme.material-expressive .composer .icon-btn{border-radius:50%;background:color-mix(in srgb,var(--q-surface-container-highest) 55%,transparent);color:var(--q-muted)}.quasar-theme.material-expressive .composer .icon-btn:hover{background:var(--q-surface-container-highest);color:var(--q-text)}.quasar-theme.material-expressive .send-btn{border-radius:50%;background:var(--q-primary-gradient);color:var(--q-on-primary);box-shadow:var(--q-elevation-2)}.quasar-theme.material-expressive .send-btn:hover{box-shadow:var(--q-glow-primary);border-radius:18px}.quasar-theme.material-expressive .send-btn:active{transform:scale(.9);border-radius:12px 4px 12px 12px}.quasar-theme.material-expressive .empty-state{position:relative;overflow:hidden;background:var(--q-aura-gradient),color-mix(in srgb,var(--q-surface-container-low) 70%,transparent);border-radius:var(--q-shape-hero);gap:12px;padding:48px 32px}.quasar-theme.material-expressive .empty-state:after,.quasar-theme.material-expressive .empty-state:before{content:"";position:absolute;z-index:-1;pointer-events:none;opacity:.55;contain:strict}.quasar-theme.material-expressive .empty-state:before{width:260px;height:260px;top:-90px;right:-70px;border-radius:var(--q-shape-flower);background:color-mix(in srgb,var(--q-tertiary) 20%,transparent);transform:rotate(-14deg)}.quasar-theme.material-expressive .empty-state:after{width:190px;height:190px;bottom:-70px;left:-50px;border-radius:var(--q-shape-blob);background:color-mix(in srgb,var(--q-primary) 16%,transparent)}@media (min-width:1024px) and (hover:hover) and (prefers-reduced-motion:no-preference){.quasar-theme.material-expressive .empty-state:before{animation:q-blob-drift-alt 30s var(--q-ease-standard) infinite alternate;will-change:transform}.quasar-theme.material-expressive .empty-state:after{animation:q-blob-drift 24s var(--q-ease-standard) infinite alternate;will-change:transform}}.quasar-theme.material-expressive .empty-state-icon{width:92px;height:92px;display:grid;place-items:center;border-radius:var(--q-shape-flower);background:var(--q-primary-gradient);color:var(--q-on-primary);box-shadow:var(--q-glow-primary)}@media (min-width:1024px) and (hover:hover) and (prefers-reduced-motion:no-preference){.quasar-theme.material-expressive .empty-state-icon{animation:q-hero-float 7s var(--q-ease-standard) infinite alternate;will-change:transform}}@keyframes q-hero-float{0%{transform:translateY(0) rotate(-2deg)}to{transform:translateY(-6px) rotate(2deg)}}.quasar-theme.material-expressive .empty-state .eyebrow{font:var(--q-type-eyebrow);letter-spacing:var(--q-tracking-eyebrow);text-transform:uppercase;color:color-mix(in srgb,var(--q-primary) 82%,var(--q-muted));font-variation-settings:"GRAD" 25}.quasar-theme.material-expressive .empty-state h3{font:var(--q-type-display);font-variation-settings:var(--q-fv-display);letter-spacing:-.035em;text-wrap:balance;color:var(--q-text)}.quasar-theme.material-expressive .empty-state p{font-size:14px;max-width:360px}.quasar-theme.material-expressive .empty-action{margin-top:8px;min-height:50px;padding:0 26px;border-radius:var(--q-radius-pill);background:var(--q-primary-gradient);color:var(--q-on-primary);font-weight:700;font-variation-settings:"GRAD" 20;box-shadow:var(--q-elevation-2)}.quasar-theme.material-expressive .empty-action:hover:not(:disabled){transform:translateY(-2px) scale(1.03);box-shadow:var(--q-glow-primary)}.quasar-theme.material-expressive .empty-action:active{transform:scale(.95);border-radius:var(--q-radius-press)}.quasar-theme.material-expressive .list-welcome{position:relative;overflow:hidden;border:0;border-radius:28px 28px 12px 28px;background:var(--q-hero-gradient);color:var(--q-on-primary-container);box-shadow:var(--q-glow-soft)}.quasar-theme.material-expressive .list-welcome:before{content:"";position:absolute;width:150px;height:150px;top:-56px;right:-40px;border-radius:var(--q-shape-flower);background:color-mix(in srgb,var(--q-on-primary-container) 14%,transparent);contain:strict}@media (min-width:1024px) and (hover:hover) and (prefers-reduced-motion:no-preference){.quasar-theme.material-expressive .list-welcome:before{animation:q-blob-drift 22s var(--q-ease-standard) infinite alternate;will-change:transform}}.quasar-theme.material-expressive .list-welcome h3{font:var(--q-type-headline);font-variation-settings:var(--q-fv-headline)}.quasar-theme.material-expressive .list-welcome button{margin-top:14px;min-height:42px;border-radius:var(--q-radius-pill);background:var(--q-on-primary-container);color:var(--q-primary-container);font-weight:700;box-shadow:var(--q-elevation-1)}.quasar-theme.material-expressive .nav-menu{border-radius:28px 28px 12px 28px;box-shadow:var(--q-elevation-3),var(--q-glow-soft)}.quasar-theme.material-expressive .list-section{gap:6px}.quasar-theme.material-expressive .modal{border-radius:var(--q-radius-panel)}::view-transition-group(q-chat-hero){animation-duration:.56s;animation-timing-function:cubic-bezier(.2,.85,.25,1.15)}::view-transition-new(q-chat-hero),::view-transition-old(q-chat-hero){animation-duration:.42s}::view-transition-new(root),::view-transition-old(root){animation-duration:.32s;animation-timing-function:cubic-bezier(.05,.7,.1,1)}.quasar-theme.material-expressive .conversation:has(.conversation-body[data-scrolled=true]) .topbar{background:color-mix(in srgb,var(--q-surface-container-low) 92%,transparent);box-shadow:inset 0 -1px 0 color-mix(in srgb,var(--q-outline-variant) 70%,transparent),0 12px 32px -18px rgba(0,0,0,.45)}@keyframes q-item-in{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes q-item-pop{0%{opacity:0;transform:scale(.5)}to{opacity:1;transform:scale(1)}}.quasar-theme.material-expressive .nav-head,.quasar-theme.material-expressive .nav-list>*{animation:q-item-in .48s var(--q-ease-emphasized-decelerate) backwards}.quasar-theme.material-expressive .nav-list>:first-child{animation-delay:50ms}.quasar-theme.material-expressive .nav-list>:nth-child(2){animation-delay:90ms}.quasar-theme.material-expressive .nav-list>:nth-child(3){animation-delay:.13s}.quasar-theme.material-expressive .nav-list>:nth-child(4){animation-delay:.17s}.quasar-theme.material-expressive .nav-list>:nth-child(5){animation-delay:.21s}.quasar-theme.material-expressive .nav-list>:nth-child(6){animation-delay:.25s}.quasar-theme.material-expressive .nav-list>:nth-child(7){animation-delay:.29s}.quasar-theme.material-expressive .nav-list>:nth-child(8){animation-delay:.33s}.quasar-theme.material-expressive .nav-list>:nth-child(n+9){animation-delay:.36s}.quasar-theme.material-expressive .nav-foot{animation:q-item-in .48s var(--q-ease-emphasized-decelerate) .37s backwards}.quasar-theme.material-expressive .attachment-sheet-actions>*,.quasar-theme.material-expressive .attachment-sheet-cancel,.quasar-theme.material-expressive .attachment-sheet-handle,.quasar-theme.material-expressive .attachment-sheet-header{animation:q-item-in .46s var(--q-ease-emphasized-decelerate) backwards}.quasar-theme.material-expressive .attachment-sheet-handle{animation-delay:30ms}.quasar-theme.material-expressive .attachment-sheet-header{animation-delay:70ms}.quasar-theme.material-expressive .attachment-sheet-actions>:first-child{animation-delay:.13s}.quasar-theme.material-expressive .attachment-sheet-actions>:nth-child(2){animation-delay:175ms}.quasar-theme.material-expressive .attachment-sheet-actions>:nth-child(3){animation-delay:.22s}.quasar-theme.material-expressive .attachment-sheet-actions>:nth-child(4){animation-delay:265ms}.quasar-theme.material-expressive .attachment-sheet-actions>:nth-child(n+5){animation-delay:.3s}.quasar-theme.material-expressive .attachment-sheet-cancel{animation-delay:.32s}.quasar-theme.material-expressive .message-context-menu>*{animation:q-item-in .42s var(--q-ease-emphasized-decelerate) backwards}.quasar-theme.material-expressive .message-context-menu>:first-child{animation-delay:30ms}.quasar-theme.material-expressive .message-context-menu>:nth-child(2){animation-delay:65ms}.quasar-theme.material-expressive .message-context-menu>:nth-child(3){animation-delay:.1s}.quasar-theme.material-expressive .message-context-menu>:nth-child(4){animation-delay:135ms}.quasar-theme.material-expressive .message-context-menu>:nth-child(5){animation-delay:.17s}.quasar-theme.material-expressive .message-context-menu>:nth-child(6){animation-delay:205ms}.quasar-theme.material-expressive .message-context-menu>:nth-child(n+7){animation-delay:.24s}.quasar-theme.material-expressive .reaction-picker button{animation:q-item-pop .44s var(--q-ease-emphasized) backwards}.quasar-theme.material-expressive .reaction-picker button:first-child{animation-delay:80ms}.quasar-theme.material-expressive .reaction-picker button:nth-child(2){animation-delay:.12s}.quasar-theme.material-expressive .reaction-picker button:nth-child(3){animation-delay:.16s}.quasar-theme.material-expressive .reaction-picker button:nth-child(4){animation-delay:.2s}.quasar-theme.material-expressive .reaction-picker button:nth-child(5){animation-delay:.24s}.quasar-theme.material-expressive .reaction-picker button:nth-child(6){animation-delay:.28s}.quasar-theme.material-expressive .reaction-picker button:nth-child(n+7){animation-delay:.32s}.quasar-theme.material-expressive .send-btn{animation:q-send-pop .5s var(--q-ease-emphasized) backwards}@keyframes q-send-pop{0%{opacity:0;transform:scale(.4) rotate(-70deg)}55%{opacity:1;transform:scale(1.18) rotate(8deg)}to{opacity:1;transform:scale(1) rotate(0deg)}}.quasar-theme.material-expressive .jump-to-latest{transition:transform var(--q-duration-medium2) var(--q-ease-emphasized-decelerate),border-radius var(--q-duration-medium2) var(--q-ease-emphasized-decelerate),box-shadow var(--q-duration-medium2) var(--q-ease-emphasized-decelerate),background-color var(--q-duration-fast) linear}.quasar-theme.material-expressive .jump-to-latest:hover{border-radius:var(--q-shape-flower);transform:scale(1.12);box-shadow:var(--q-glow-primary)}.quasar-theme.material-expressive .jump-to-latest:active{border-radius:var(--q-radius-press);transform:scale(.92)}.quasar-theme.material-expressive .theme-swatch span{transition:transform var(--q-duration-medium2) var(--q-ease-emphasized-decelerate),border-radius var(--q-duration-medium2) var(--q-ease-emphasized-decelerate)}.quasar-theme.material-expressive .theme-swatch:hover span{transform:scale(1.14);border-radius:var(--q-shape-flower)}.quasar-theme.material-expressive .theme-swatch[aria-pressed=true] span{transform:scale(1.1);border-radius:var(--q-shape-flower)}.quasar-theme.material-expressive .theme-swatch:active span{transform:scale(.85);border-radius:50%}.quasar-theme.material-expressive .switch{transition:background-color var(--q-duration-medium2) var(--q-ease-emphasized-decelerate),border-color var(--q-duration-medium2) var(--q-ease-emphasized-decelerate)}.quasar-theme.material-expressive .switch .knob{transition:transform var(--q-duration-medium2) cubic-bezier(.2,.85,.25,1.15),border-radius var(--q-duration-medium2) cubic-bezier(.2,.85,.25,1.15),background-color var(--q-duration-fast) linear,color var(--q-duration-fast) linear}.quasar-theme.material-expressive .switch.on .knob{transform:translateX(20px) scale(1.15);border-radius:8px}.quasar-theme.material-expressive .switch:active .knob{transform:scale(.9);border-radius:50%}.quasar-theme.material-expressive .switch.on:active .knob{transform:translateX(20px) scale(1.02);border-radius:8px}.quasar-theme.material-expressive .pinned-message-banner .pinned-pin-icon{animation:q-pin-wiggle .76s var(--q-ease-emphasized) .28s backwards}.quasar-theme.material-expressive .pinned-message-banner:hover .pinned-pin-icon{animation:q-pin-wiggle .56s var(--q-ease-emphasized)}@keyframes q-pin-wiggle{0%{transform:scale(.5) rotate(0deg)}30%{transform:scale(1.15) rotate(-16deg)}60%{transform:scale(1) rotate(11deg)}85%{transform:rotate(-5deg)}to{transform:rotate(0deg) scale(1)}}.quasar-theme.material-expressive .typing-status{animation:q-item-in .42s var(--q-ease-emphasized-decelerate) backwards}.quasar-theme.material-expressive .messages-empty{animation:q-emphasized-in .55s var(--q-ease-emphasized-decelerate) 90ms backwards}@media (prefers-reduced-motion:reduce){.quasar-theme.material-expressive .app-shell:after,.quasar-theme.material-expressive .app-shell:before,.quasar-theme.material-expressive .attachment-sheet-actions>*,.quasar-theme.material-expressive .attachment-sheet-cancel,.quasar-theme.material-expressive .attachment-sheet-handle,.quasar-theme.material-expressive .attachment-sheet-header,.quasar-theme.material-expressive .empty-state-icon,.quasar-theme.material-expressive .empty-state:after,.quasar-theme.material-expressive .empty-state:before,.quasar-theme.material-expressive .list-welcome:before,.quasar-theme.material-expressive .message-context-menu>*,.quasar-theme.material-expressive .messages-empty,.quasar-theme.material-expressive .nav-foot,.quasar-theme.material-expressive .nav-head,.quasar-theme.material-expressive .nav-list>*,.quasar-theme.material-expressive .pinned-message-banner .pinned-pin-icon,.quasar-theme.material-expressive .reaction-picker button,.quasar-theme.material-expressive .send-btn,.quasar-theme.material-expressive .typing-status{animation:none!important}.quasar-theme.material-expressive .jump-to-latest,.quasar-theme.material-expressive .switch,.quasar-theme.material-expressive .switch .knob,.quasar-theme.material-expressive .theme-swatch span,.quasar-theme.material-expressive .topbar{transition-duration:1ms!important}::view-transition-group(q-chat-hero),::view-transition-new(q-chat-hero),::view-transition-new(root),::view-transition-old(q-chat-hero),::view-transition-old(root){animation-duration:1ms!important}}.q-web{--qw-spring:linear(0,.009,.035 2.1%,.141 4.4%,.723 12.9%,.938 16.7%,1.017 20%,1.051 23.6%,1.059 27.3%,1.035 36.4%,1.006 45.5%,.994 54.5%,1.001 72.7%,1);--qw-spring-bouncy:linear(0,.038 1.6%,.153 3.4%,.629 9.9%,.856 13.6%,1.03 17.8%,1.127 22.2%,1.148 24.9%,1.137 28%,1.063 34.6%,.979 43.2%,.966 48.4%,.989 58.1%,1.006 67.9%,.999 100%);--qw-emph-decel:cubic-bezier(.05,.7,.1,1)}.q-web .qw-ripple-host{position:relative}.q-web .qw-ripple-layer{position:absolute;inset:0;overflow:hidden;border-radius:inherit;pointer-events:none;z-index:0}.q-web .qw-ripple{position:absolute;border-radius:50%;pointer-events:none;background:currentColor;opacity:.16;transform:translate(-50%,-50%) scale(0);animation:qw-ripple .62s var(--qw-emph-decel) forwards}.q-web .qw-ripple.is-fading{animation:qw-ripple .62s var(--qw-emph-decel) forwards,qw-ripple-fade .38s linear forwards}@keyframes qw-ripple{to{transform:translate(-50%,-50%) scale(1)}}@keyframes qw-ripple-fade{to{opacity:0}}@media (min-width:769px) and (hover:hover) and (prefers-reduced-motion:no-preference){.q-web .material-expressive .sidebar{animation:qw-enter-start .42s var(--qw-emph-decel) backwards}}@keyframes qw-enter-start{0%{opacity:0;transform:translateX(-16px)}to{opacity:1;transform:none}}@keyframes qw-shared-z{0%{opacity:0;transform:scale(.98)}to{opacity:1;transform:none}}@media (min-width:769px) and (hover:hover) and (prefers-reduced-motion:no-preference){.q-web .material-expressive .list-section>*{animation:qw-rise .36s var(--qw-emph-decel) backwards}.q-web .material-expressive .list-section>:nth-child(2){animation-delay:24ms}.q-web .material-expressive .list-section>:nth-child(3){animation-delay:48ms}.q-web .material-expressive .list-section>:nth-child(4){animation-delay:72ms}.q-web .material-expressive .list-section>:nth-child(5){animation-delay:96ms}.q-web .material-expressive .list-section>:nth-child(n+6){animation-delay:.11s}}@keyframes qw-rise{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}.q-web .material-expressive .chat-row{position:relative;transition:background-color .16s linear,transform .32s var(--qw-spring)}.q-web .material-expressive .chat-row:active{transform:scale(.985);transition-duration:80ms}.q-web .material-expressive .chat-row:before{content:"";position:absolute;left:4px;top:50%;width:3px;height:0;border-radius:999px;background:var(--q-primary);transform:translateY(-50%);transition:height .28s var(--qw-emph-decel)}.q-web .material-expressive .chat-row.selected:before{height:40%}@media (min-width:769px) and (hover:hover) and (prefers-reduced-motion:no-preference){.q-web .material-expressive .messages>.message-swipe-container:last-child .message{animation:qw-msg-in .32s var(--qw-emph-decel) backwards;animation-delay:0ms}.q-web .material-expressive .messages>.message-swipe-container:nth-last-child(2) .message{animation:qw-msg-in .32s var(--qw-emph-decel) backwards;animation-delay:28ms}.q-web .material-expressive .messages>.message-swipe-container:nth-last-child(3) .message{animation:qw-msg-in .32s var(--qw-emph-decel) backwards;animation-delay:56ms}.q-web .material-expressive .messages>.message-swipe-container:nth-last-child(n+4) .message{animation:qw-msg-in .32s var(--qw-emph-decel) backwards;animation-delay:72ms}}.q-web .material-expressive .message .bubble{transform-origin:bottom left;transition:transform .26s var(--qw-emph-decel)}.q-web .material-expressive .message.own .bubble{transform-origin:bottom right}@keyframes qw-msg-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}.q-web .material-expressive .messages>.message-swipe-container:last-child .message{animation-delay:0ms}.q-web .material-expressive .messages>.message-swipe-container:nth-last-child(2) .message{animation-delay:40ms}.q-web .material-expressive .messages>.message-swipe-container:nth-last-child(3) .message{animation-delay:80ms}.q-web .material-expressive .messages>.message-swipe-container:nth-last-child(4) .message{animation-delay:.12s}.q-web .material-expressive .messages>.message-swipe-container:nth-last-child(5) .message,.q-web .material-expressive .messages>.message-swipe-container:nth-last-child(n+6) .message{animation-delay:.16s}@keyframes qw-flash{0%,to{box-shadow:var(--q-elevation-1)}30%{box-shadow:0 0 0 3px color-mix(in srgb,var(--q-primary) 30%,transparent)}}.q-web .material-expressive .typing-dot{animation:qw-typing 1.1s var(--qw-spring-bouncy) infinite}.q-web .material-expressive .typing-dot:nth-child(2){animation-delay:.14s}.q-web .material-expressive .typing-dot:nth-child(3){animation-delay:.28s}@keyframes qw-typing{0%,60%,to{transform:translateY(0) scale(1);opacity:.5}30%{transform:translateY(-5px) scale(1.2);opacity:1}}.q-web .material-expressive :is(.icon-btn,.send-btn,.compose-btn,.empty-action,.primary,.confirm-danger,.edit-cancel,.secondary-button,.m3-nav-pill){transition:transform .28s var(--qw-emph-decel),background-color .16s linear,color .16s linear}.q-web .material-expressive :is(.primary,.confirm-danger,.edit-cancel,.secondary-button):active{transform:scale(.97);transition-duration:80ms}.q-web .material-expressive .send-btn:not(:disabled):active{transform:scale(.92);transition-duration:80ms}.q-web .material-expressive .composer{transition:box-shadow .2s var(--qw-emph-decel),background-color .16s linear}@media (min-width:769px){.q-web .material-expressive .modal:not(.q-motion-in){border-radius:var(--q-shape-hero-xl);animation:qw-dialog-in .56s var(--qw-spring) backwards}}.q-web .material-expressive .modal .confirm-icon{border-radius:var(--q-shape-flower);animation:qw-icon-pop .7s var(--qw-spring-bouncy) .12s backwards}.q-web .material-expressive .people-list>*{animation:qw-rise .5s var(--qw-spring) backwards}.q-web .material-expressive .people-list>:nth-child(2){animation-delay:40ms}.q-web .material-expressive .people-list>:nth-child(3){animation-delay:80ms}.q-web .material-expressive .people-list>:nth-child(n+4){animation-delay:.12s}.q-web .material-expressive .nav-menu{animation:qw-drawer-in .32s var(--qw-emph-decel) backwards}.q-web .material-expressive .menu-scrim{animation:qw-fade .24s linear backwards}@keyframes qw-fade{0%{opacity:0}to{opacity:1}}@keyframes qw-dialog-in{0%{opacity:0;transform:translateY(40px) scale(.86);border-radius:80px}to{opacity:1;transform:none}}@keyframes qw-drawer-in{0%{transform:translateX(-100%)}to{transform:none}}@keyframes qw-icon-pop{0%{opacity:0;transform:scale(.2) rotate(-90deg)}to{opacity:1;transform:none}}.q-web .material-expressive input::-webkit-contacts-auto-fill-button,.q-web .material-expressive input::-webkit-credentials-auto-fill-button,.q-web .material-expressive input::-webkit-search-cancel-button,.q-web .material-expressive input::-webkit-search-decoration{-webkit-appearance:none;display:none;visibility:hidden}.q-web .material-expressive input::-ms-clear{display:none}.q-web .material-expressive .sb-search input:-webkit-autofill{-webkit-box-shadow:0 0 0 40px var(--q-surface-container-high) inset;-webkit-text-fill-color:var(--q-text)}.q-web .material-expressive .spinner{border:0;background:currentColor;opacity:.9;animation:qw-loader 1s var(--qw-emph-decel) infinite alternate}@keyframes qw-loader{0%{transform:scale(.85);opacity:.7}to{transform:scale(1);opacity:1}}.q-web .material-expressive .chat-badge{animation:q-badge-pop .6s var(--qw-spring-bouncy) backwards}@media (max-width:768px){.q-web .material-expressive .app-shell:after,.q-web .material-expressive .app-shell:before{display:none}.q-web .material-expressive .app-shell{background:var(--q-bg)}.q-web .material-expressive :is(.sidebar,.conversation){border-radius:0;box-shadow:none;background:var(--q-bg)}.q-web .material-expressive .app-shell.conversation-open .conversation{animation:qw-screen-in .42s var(--qw-emph-decel) backwards}.q-web .material-expressive .app-shell.list-open .sidebar{animation:qw-screen-back .38s var(--qw-emph-decel) backwards}.q-web .material-expressive .sb-brand{padding:28px 12px 18px}.q-web .material-expressive .sb-brand:after{display:none}.q-web .material-expressive .sb-brand strong{font-size:40px;font-weight:500;letter-spacing:-.02em;font-variation-settings:"wdth" 100,"GRAD" 0,"opsz" 48;background:none;color:var(--q-text);-webkit-text-fill-color:currentColor}.q-web .material-expressive .sb-search{height:56px;padding:0 20px;border-radius:var(--q-radius-pill);background:var(--q-surface-container-high);transition:background-color .2s linear,transform .45s var(--qw-spring)}.q-web .material-expressive .sb-search:focus-within{background:var(--q-surface-container-highest);transform:scale(1.015)}.q-web .material-expressive .sb-search input{font-size:16px!important}.q-web .material-expressive .compose-btn{width:56px;height:56px;border-radius:18px;background:var(--q-primary-container);color:var(--q-on-primary-container);box-shadow:var(--q-elevation-2)}.q-web .material-expressive .compose-btn:active{border-radius:28px;transform:scale(.92)}.q-web .material-expressive .list-section{gap:2px;margin-bottom:20px}.q-web .material-expressive .list-head{padding:4px 16px 8px}.q-web .material-expressive .list-head span{font:500 14px/1.4 var(--q-font-flex);letter-spacing:0;text-transform:none;color:var(--q-primary)}.q-web .material-expressive .chat-row{min-height:72px;padding:12px 16px;margin:0;border-radius:6px;background:var(--q-surface-container);box-shadow:none}.q-web .material-expressive .list-head+.chat-row,.q-web .material-expressive .list-section>.chat-row:first-child{border-top-left-radius:24px;border-top-right-radius:24px}.q-web .material-expressive .list-section>.chat-row:last-child{border-bottom-left-radius:24px;border-bottom-right-radius:24px}.q-web .material-expressive .chat-row:active{transform:scale(.98);border-radius:20px;background:var(--q-surface-container-highest)}.q-web .material-expressive .chat-row.selected{background:var(--q-secondary-container);box-shadow:none}.q-web .material-expressive .chat-row:before{display:none}.q-web .material-expressive .chat-avatar{width:48px;height:48px}.q-web .material-expressive .chat-meta strong{font-size:16px;font-weight:500}.q-web .material-expressive .chat-meta small{font-size:14px}.q-web .material-expressive .app-shell.list-open .m3-bottom-nav{left:12px;right:12px;bottom:max(12px,env(safe-area-inset-bottom,0px));height:72px;padding:0;border-radius:36px;background:color-mix(in srgb,var(--q-surface-container-high) 88%,transparent);backdrop-filter:blur(20px) saturate(1.3);-webkit-backdrop-filter:blur(20px) saturate(1.3);box-shadow:var(--q-elevation-3);animation:qw-nav-in .56s var(--qw-spring) backwards}.q-web .material-expressive .sidebar{padding-bottom:max(16px,env(safe-area-inset-bottom,0px))}.q-web .material-expressive .m3-nav-item{padding-top:10px}.q-web .material-expressive .m3-nav-pill{width:32px;background:transparent;transition:width .5s var(--qw-spring-bouncy),transform .3s var(--qw-spring),background-color .2s linear,color .2s linear}.q-web .material-expressive .m3-nav-item.active .m3-nav-pill{width:64px;background:var(--q-secondary-container);color:var(--q-on-secondary-container)}.q-web .material-expressive .m3-nav-item.active .m3-nav-label{font-weight:700}.q-web .material-expressive .m3-nav-item:active .m3-nav-pill{transform:scale(.9)}.q-web .material-expressive .topbar{height:calc(68px + env(safe-area-inset-top));border-bottom:0;box-shadow:none;background:color-mix(in srgb,var(--q-bg) 82%,transparent)}.q-web .material-expressive .channel-icon{border-radius:50%}.q-web .material-expressive .heading-copy h2{font:500 18px/1.25 var(--q-font-flex);font-variation-settings:normal}.q-web .material-expressive .mobile-back{width:48px;height:48px;transition:transform .4s var(--qw-spring-bouncy),border-radius .4s var(--qw-spring)}.q-web .material-expressive .mobile-back:active{border-radius:16px;transform:scale(.9)}.q-web .material-expressive .message{animation-duration:.38s}.q-web .material-expressive .message .bubble{border-radius:24px 24px 24px 8px;box-shadow:none}.q-web .material-expressive .message.own .bubble{border-radius:24px 24px 8px 24px}.q-web .material-expressive .message.is-grouped-before .bubble{border-top-left-radius:8px}.q-web .material-expressive .message.own.is-grouped-before .bubble{border-top-left-radius:24px;border-top-right-radius:8px}.q-web .material-expressive .m3-composer-wrap{background:var(--q-bg);backdrop-filter:none;-webkit-backdrop-filter:none;box-shadow:none;padding-bottom:max(8px,env(safe-area-inset-bottom))}.q-web .material-expressive .composer{min-height:56px;background:var(--q-surface-container-high);box-shadow:none}.q-web .material-expressive .composer:focus-within{transform:none;box-shadow:inset 0 0 0 2px var(--q-primary)}.q-web .material-expressive .composer textarea{font-size:16px}.q-web .material-expressive .send-btn{width:48px;height:48px;border-radius:16px;background:var(--q-primary)}.q-web .material-expressive .send-btn:not(:disabled):active{border-radius:24px;transform:scale(.88)}.q-web .material-expressive .list-section>:nth-child(n+7){animation-delay:.15s}}@keyframes qw-screen-in{0%{opacity:0;transform:translateX(22%) scale(.96)}to{opacity:1;transform:none}}@keyframes qw-screen-back{0%{opacity:.4;transform:translateX(-10%) scale(.97)}to{opacity:1;transform:none}}@keyframes qw-nav-in{0%{opacity:0;transform:translateY(40px) scale(.9)}to{opacity:1;transform:none}}@media (hover:hover) and (pointer:fine){.q-web .material-expressive .chat-row:hover{transform:translateX(4px)}.q-web .material-expressive .chat-row:hover .chat-avatar{transform:scale(1.1) rotate(-4deg);border-radius:var(--q-shape-flower)}.q-web .material-expressive .message:hover .bubble{transform:translateY(-2px) scale(1.01)}.q-web .material-expressive .send-btn:not(:disabled):hover{transform:scale(1.08) rotate(-8deg)}.q-web .material-expressive .send-btn:not(:disabled):hover svg{transform:translate(2px,-2px)}.q-web .material-expressive .icon-btn:hover svg{transform:scale(1.12)}.q-web .material-expressive .compose-btn:hover svg{transform:rotate(90deg)}}@media (prefers-reduced-motion:reduce){.q-web .material-expressive *,.q-web .material-expressive :after,.q-web .material-expressive :before{animation-duration:1ms!important;animation-delay:0ms!important;animation-iteration-count:1!important;transition-duration:1ms!important}.q-web .qw-ripple{display:none}}