*,: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-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{position:relative;overflow:hidden;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-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-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-message-accent,var(--q-primary));color:var(--q-message-on-accent,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)}.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}