/*! Package version @n8n/chat@1.17.2 */

/* =============================================================
   1. BRAND OVERRIDES — gemappt auf vars.css
   ============================================================= */
:root {
  /* Primary / Secondary */
  --chat--color--primary: var(--brand-color-main);
  --chat--color--primary--shade-100: var(--main-darkest);
  --chat--color--primary-shade-50: var(--brand-color-main-subtile);
  --chat--color--secondary: var(--brand-color-sec);
  --chat--color-secondary-shade-50: var(--main-dark-subtile);

  /* Neutrals */
  --chat--color-dark: var(--main-darkest);
  --chat--color-light: var(--main-light);
  --chat--color-light-shade-50: var(--main-medium);
  --chat--color-light-shade-100: var(--main-lightest);
  --chat--color-white: var(--main-lightest);
  --chat--color-disabled: var(--main-dark-subtile);
  --chat--color-typing: var(--main-dark);

  /* Border-Radii */
  --chat--border-radius: var(--radius-medium);
  --chat--button--border-radius: var(--radius-medium);
  --chat--input--border-radius: var(--radius-medium);
  --chat--message--border-radius: var(--radius-medium);

  /* Font-Sizes */
  --chat--heading--font-size: var(--font-size__medium);
  --chat--subtitle--font-size: var(--font-size__small);
  --chat--message--font-size: var(--font-size__small-reg);
  --chat--input--font-size: var(--font-size__small-reg);
  --chat--button--font-size: var(--font-size__small-reg);

  /* Body / Header / Footer */
  --chat--body--background: var(--main-lightest) !important;
  --chat--header--background: var(--brand-color-main) !important;
  --chat--header--color: var(--main-lightest);
  --chat--footer--background: var(--main-medium);
  --chat--footer--color: var(--main-darkest);

  /* Messages */
  --chat--message--bot--background: var(--main-medium) !important;
  --chat--message--bot--color: var(--main-darkest);
  --chat--message--user--background: var(--brand-color-main);
  --chat--message--user--color: var(--main-lightest);

  /* Primary-Buttons */
  --chat--button--background--primary: var(--brand-color-main);
  --chat--button--background--primary--hover: var(--main-darkest);
  --chat--button--background--primary--disabled: var(--main-dark-subtile);
  --chat--button--color--primary: var(--main-lightest);
  --chat--button--color--primary--hover: var(--main-lightest);
  --chat--button--color--primary--disabled: var(--main-light);

  /* Secondary-Buttons */
  --chat--button--background--secondary: var(--brand-color-sec);
  --chat--button--background--secondary--hover: var(--main-darkest);
  --chat--button--background--secondary--disabled: var(--main-dark-subtile);
  --chat--button--color--secondary: var(--main-lightest);
  --chat--button--color--secondary--hover: var(--main-lightest);
  --chat--button--color--secondary--disabled: var(--main-light);

  /* Toggle */
  --chat--toggle--background: var(--brand-color-main);
  --chat--toggle--hover--background: var(--main-darkest);
  --chat--toggle--active--background: var(--brand-color-sec);
  --chat--toggle--color: var(--main-lightest);

  /* Spacing */
  --chat--spacing: var(--grid__small);
  --chat--messages-list--padding: var(--grid__small);
  --chat--header--padding: var(--grid__small);
  --chat--footer--padding: var(--grid__small);
  --chat--input--padding: var(--grid__x-small);
  --chat--button--padding: var(--grid__x-small);
  --chat--message--padding: var(--grid__x-small);
  --chat--message--margin-bottom: var(--grid__x-small);
}


/* =============================================================
   2. N8N CHAT — DEFAULTS (Fallback-Werte der Library)
   Hinweis: Werden durch Block 1 überschrieben — bei Bedarf entfernbar.
   ============================================================= */
:root {
  /* Farben (Defaults) */
  --chat--color--primary: #e74266;
  --chat--color--primary-shade-50: #db4061;
  --chat--color--primary--shade-100: #cf3c5c;
  --chat--color--secondary: #20b69e;
  --chat--color-secondary-shade-50: #1ca08a;
  --chat--color-white: #fff;
  --chat--color-light: #f2f4f8;
  --chat--color-light-shade-50: #e6e9f1;
  --chat--color-light-shade-100: #c2c5cc;
  --chat--color-medium: #d2d4d9;
  --chat--color-dark: #101330;
  --chat--color-disabled: #d2d4d9;
  --chat--color-typing: #404040;

  /* Layout */
  --chat--spacing: 1rem;
  --chat--border-radius: .25rem;
  --chat--transition-duration: .15s;
  --chat--font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif;

  /* Window */
  --chat--window--width: 400px;
  --chat--window--height: 600px;
  --chat--window--bottom: var(--chat--spacing);
  --chat--window--right: var(--chat--spacing);
  --chat--window--z-index: 9999;
  --chat--window--border: 1px solid var(--chat--color-light-shade-50);
  --chat--window--border-radius: var(--chat--border-radius);
  --chat--window--margin-bottom: var(--chat--spacing);

  /* Header */
  --chat--header-height: auto;
  --chat--header--padding: var(--chat--spacing);
  --chat--header--background: var(--chat--color-dark);
  --chat--header--color: var(--chat--color-light);
  --chat--header--border-top: none;
  --chat--header--border-bottom: none;
  --chat--header--border-left: none;
  --chat--header--border-right: none;
  --chat--heading--font-size: 2em;
  --chat--subtitle--font-size: inherit;
  --chat--subtitle--line-height: 1.8;

  /* Messages */
  --chat--message--font-size: 1rem;
  --chat--message--padding: var(--chat--spacing);
  --chat--message--border-radius: var(--chat--border-radius);
  --chat--message-line-height: 1.5;
  --chat--message--margin-bottom: calc(var(--chat--spacing) * 1);
  --chat--message--bot--background: var(--chat--color-white);
  --chat--message--bot--color: var(--chat--color-dark);
  --chat--message--bot--border: none;
  --chat--message--user--background: var(--brand-color-main);
  --chat--message--user--color: var(--chat--color-white);
  --chat--message--user--border: none;
  --chat--message--pre--background: #0000000d;
  --chat--messages-list--padding: var(--chat--spacing);

  /* Toggle */
  --chat--toggle--size: 64px;
  --chat--toggle--width: var(--chat--toggle--size);
  --chat--toggle--height: var(--chat--toggle--size);
  --chat--toggle--border-radius: 50%;
  --chat--toggle--background: var(--brand-color-main);
  --chat--toggle--hover--background: var(--chat--color--primary-shade-50);
  --chat--toggle--active--background: var(--chat--color--primary--shade-100);
  --chat--toggle--color: var(--chat--color-white);

  /* Input */
  --chat--textarea--height: 50px;
  --chat--textarea--max-height: 30rem;
  --chat--input--width: 100%;
  --chat--input--font-size: inherit;
  --chat--input--border: 0;
  --chat--input--border-radius: 0;
  --chat--input--padding: .8rem;
  --chat--input--background: var(--chat--color-white);
  --chat--input--text-color: initial;
  --chat--input--line-height: 1.5;
  --chat--input--placeholder--font-size: var(--chat--input--font-size);
  --chat--input--border-active: 0;
  --chat--input--left--panel--width: 2rem;
  --chat--input--container--background: var(--chat--color-white);
  --chat--input--container--border: 0;
  --chat--input--container--border-radius: 0;
  --chat--input--container--padding: 0;
  --chat--input--button--border-radius: 16px;

  /* Buttons */
  --chat--button--padding: calc(var(--chat--spacing) * 5 / 8) var(--chat--spacing);
  --chat--button--border-radius: var(--chat--border-radius);
  --chat--button--font-size: 1rem;
  --chat--button--line-height: 1;

  --chat--button--color--primary: var(--chat--color-light);
  --chat--button--background--primary: var(--chat--color--secondary);
  --chat--button--border--primary: none;
  --chat--button--color--primary--hover: var(--chat--color-light);
  --chat--button--background--primary--hover: var(--chat--color-secondary-shade-50);
  --chat--button--border--primary--hover: none;
  --chat--button--color--primary--disabled: var(--chat--color-light);
  --chat--button--background--primary--disabled: #81bbb1;
  --chat--button--border--primary--disabled: none;

  --chat--button--color--secondary: var(--chat--color-light);
  --chat--button--background--secondary: #949494;
  --chat--button--border--secondary: none;
  --chat--button--color--secondary--hover: var(--chat--color-light);
  --chat--button--background--secondary--hover: #828282;
  --chat--button--border--secondary--hover: none;
  --chat--button--color--secondary--disabled: var(--chat--color-light);
  --chat--button--background--secondary--disabled: #c7c7c7;
  --chat--button--border--secondary--disabled: none;

  /* Close / Actions / Send */
  --chat--close--button--color-hover: var(--chat--color--primary);
  --chat--message--actions--color: var(--chat--color--primary);
  --chat--message--actions--gap: var(--chat--spacing);

  --chat--input--send--button--background: var(--chat--color-white);
  --chat--input--send--button--color: var(--chat--color--secondary);
  --chat--input--send--button--background-hover: var(--chat--color--primary-shade-50);
  --chat--input--send--button--color-hover: var(--chat--color-secondary-shade-50);

  --chat--input--file--button--background: var(--chat--color-white);
  --chat--input--file--button--color: var(--chat--color--secondary);
  --chat--input--file--button--background-hover: var(--chat--input--file--button--background);
  --chat--input--file--button--color-hover: var(--chat--color-secondary-shade-50);
  --chat--files-spacing: .25rem;

  /* Body / Footer */
  --chat--body--background: var(--chat--color-light);
  --chat--footer--padding: 0;
  --chat--footer--background: var(--chat--color-light);
  --chat--footer--color: var(--chat--color-dark);
  --chat--footer--border-top: 1px solid var(--chat--color-light-shade-100);
}


/* =============================================================
   3. HIGHLIGHT.JS — LIGHT THEME
   ============================================================= */
pre code.hljs        { display: block; padding: 1em; overflow-x: auto; }
code.hljs            { padding: 3px 5px; }
.hljs                { color: #24292e; background: #fff; }

.hljs-doctag,
.hljs-keyword,
.hljs-meta .hljs-keyword,
.hljs-template-tag,
.hljs-template-variable,
.hljs-type,
.hljs-variable.language_      { color: #d73a49; }

.hljs-title,
.hljs-title.class_,
.hljs-title.class_.inherited__,
.hljs-title.function_         { color: #6f42c1; }

.hljs-attr,
.hljs-attribute,
.hljs-literal,
.hljs-meta,
.hljs-number,
.hljs-operator,
.hljs-selector-attr,
.hljs-selector-class,
.hljs-selector-id,
.hljs-variable                { color: #005cc5; }

.hljs-meta .hljs-string,
.hljs-regexp,
.hljs-string                  { color: #032f62; }

.hljs-built_in,
.hljs-symbol                  { color: #e36209; }

.hljs-code,
.hljs-comment,
.hljs-formula                 { color: #6a737d; }

.hljs-name,
.hljs-quote,
.hljs-selector-pseudo,
.hljs-selector-tag            { color: #22863a; }

.hljs-subst                   { color: #24292e; }
.hljs-section                 { color: #005cc5; font-weight: 700; }
.hljs-bullet                  { color: #735c0f; }
.hljs-emphasis                { color: #24292e; font-style: italic; }
.hljs-strong                  { color: #24292e; font-weight: 700; }
.hljs-addition                { color: #22863a; background-color: #f0fff4; }
.hljs-deletion                { color: #b31d28; background-color: #ffeef0; }


/* =============================================================
   4. HIGHLIGHT.JS — DARK THEME
   Aktiv via [data-theme=dark] oder prefers-color-scheme: dark
   ============================================================= */
body[data-theme=dark] pre code.hljs { display: block; padding: 1em; overflow-x: auto; }
body[data-theme=dark] code.hljs     { padding: 3px 5px; }
body[data-theme=dark] .hljs         { color: #adbac7; background: #22272e; }

body[data-theme=dark] .hljs-doctag,
body[data-theme=dark] .hljs-keyword,
body[data-theme=dark] .hljs-meta .hljs-keyword,
body[data-theme=dark] .hljs-template-tag,
body[data-theme=dark] .hljs-template-variable,
body[data-theme=dark] .hljs-type,
body[data-theme=dark] .hljs-variable.language_      { color: #f47067; }

body[data-theme=dark] .hljs-title,
body[data-theme=dark] .hljs-title.class_,
body[data-theme=dark] .hljs-title.class_.inherited__,
body[data-theme=dark] .hljs-title.function_         { color: #dcbdfb; }

body[data-theme=dark] .hljs-attr,
body[data-theme=dark] .hljs-attribute,
body[data-theme=dark] .hljs-literal,
body[data-theme=dark] .hljs-meta,
body[data-theme=dark] .hljs-number,
body[data-theme=dark] .hljs-operator,
body[data-theme=dark] .hljs-selector-attr,
body[data-theme=dark] .hljs-selector-class,
body[data-theme=dark] .hljs-selector-id,
body[data-theme=dark] .hljs-variable                { color: #6cb6ff; }

body[data-theme=dark] .hljs-meta .hljs-string,
body[data-theme=dark] .hljs-regexp,
body[data-theme=dark] .hljs-string                  { color: #96d0ff; }

body[data-theme=dark] .hljs-built_in,
body[data-theme=dark] .hljs-symbol                  { color: #f69d50; }

body[data-theme=dark] .hljs-code,
body[data-theme=dark] .hljs-comment,
body[data-theme=dark] .hljs-formula                 { color: #768390; }

body[data-theme=dark] .hljs-name,
body[data-theme=dark] .hljs-quote,
body[data-theme=dark] .hljs-selector-pseudo,
body[data-theme=dark] .hljs-selector-tag            { color: #8ddb8c; }

body[data-theme=dark] .hljs-subst    { color: #adbac7; }
body[data-theme=dark] .hljs-section  { color: #316dca; font-weight: 700; }
body[data-theme=dark] .hljs-bullet   { color: #eac55f; }
body[data-theme=dark] .hljs-emphasis { color: #adbac7; font-style: italic; }
body[data-theme=dark] .hljs-strong   { color: #adbac7; font-weight: 700; }
body[data-theme=dark] .hljs-addition { color: #b4f1b4; background-color: #1b4721; }
body[data-theme=dark] .hljs-deletion { color: #ffd8d3; background-color: #78191b; }

@media (prefers-color-scheme: dark) {
  body:not([data-theme]) pre code.hljs { display: block; padding: 1em; overflow-x: auto; }
  body:not([data-theme]) code.hljs     { padding: 3px 5px; }
  body:not([data-theme]) .hljs         { color: #adbac7; background: #22272e; }

  body:not([data-theme]) .hljs-doctag,
  body:not([data-theme]) .hljs-keyword,
  body:not([data-theme]) .hljs-meta .hljs-keyword,
  body:not([data-theme]) .hljs-template-tag,
  body:not([data-theme]) .hljs-template-variable,
  body:not([data-theme]) .hljs-type,
  body:not([data-theme]) .hljs-variable.language_      { color: #f47067; }

  body:not([data-theme]) .hljs-title,
  body:not([data-theme]) .hljs-title.class_,
  body:not([data-theme]) .hljs-title.class_.inherited__,
  body:not([data-theme]) .hljs-title.function_         { color: #dcbdfb; }

  body:not([data-theme]) .hljs-attr,
  body:not([data-theme]) .hljs-attribute,
  body:not([data-theme]) .hljs-literal,
  body:not([data-theme]) .hljs-meta,
  body:not([data-theme]) .hljs-number,
  body:not([data-theme]) .hljs-operator,
  body:not([data-theme]) .hljs-selector-attr,
  body:not([data-theme]) .hljs-selector-class,
  body:not([data-theme]) .hljs-selector-id,
  body:not([data-theme]) .hljs-variable                { color: #6cb6ff; }

  body:not([data-theme]) .hljs-meta .hljs-string,
  body:not([data-theme]) .hljs-regexp,
  body:not([data-theme]) .hljs-string                  { color: #96d0ff; }

  body:not([data-theme]) .hljs-built_in,
  body:not([data-theme]) .hljs-symbol                  { color: #f69d50; }

  body:not([data-theme]) .hljs-code,
  body:not([data-theme]) .hljs-comment,
  body:not([data-theme]) .hljs-formula                 { color: #768390; }

  body:not([data-theme]) .hljs-name,
  body:not([data-theme]) .hljs-quote,
  body:not([data-theme]) .hljs-selector-pseudo,
  body:not([data-theme]) .hljs-selector-tag            { color: #8ddb8c; }

  body:not([data-theme]) .hljs-subst    { color: #adbac7; }
  body:not([data-theme]) .hljs-section  { color: #316dca; font-weight: 700; }
  body:not([data-theme]) .hljs-bullet   { color: #eac55f; }
  body:not([data-theme]) .hljs-emphasis { color: #adbac7; font-style: italic; }
  body:not([data-theme]) .hljs-strong   { color: #adbac7; font-weight: 700; }
  body:not([data-theme]) .hljs-addition { color: #b4f1b4; background-color: #1b4721; }
  body:not([data-theme]) .hljs-deletion { color: #ffd8d3; background-color: #78191b; }
}

/* hljs-Klassen, sofern unter .n8n-chat gescoped (identisch zum Light-Theme) */
.n8n-chat pre code.hljs { display: block; padding: 1em; overflow-x: auto; }
.n8n-chat code.hljs     { padding: 3px 5px; }
.n8n-chat .hljs         { color: #24292e; background: #fff; }


/* =============================================================
   5. CHAT MESSAGE MARKDOWN — RESET & TYPO
   ============================================================= */
.chat-message-markdown {
  -webkit-text-size-adjust: 100%;
  word-break: break-word;
  line-height: 1.4;
  display: block;
  box-sizing: border-box;
  font-size: inherit;
}

.chat-message-markdown *,
.chat-message-markdown *::before,
.chat-message-markdown *::after { box-sizing: border-box; }

.chat-message-markdown ::before,
.chat-message-markdown ::after {
  -webkit-text-decoration: inherit;
  text-decoration: inherit;
  vertical-align: inherit;
}

.chat-message-markdown body,
.chat-message-markdown dl dl, .chat-message-markdown dl ol, .chat-message-markdown dl ul,
.chat-message-markdown ol dl, .chat-message-markdown ul dl,
.chat-message-markdown ol ol, .chat-message-markdown ol ul,
.chat-message-markdown ul ol, .chat-message-markdown ul ul,
.chat-message-markdown button, .chat-message-markdown input,
.chat-message-markdown select, .chat-message-markdown textarea { margin: 0; }

.chat-message-markdown hr      { height: 0; overflow: visible; }
.chat-message-markdown main,
.chat-message-markdown details { display: block; }
.chat-message-markdown summary { display: list-item; }

.chat-message-markdown nav ol,
.chat-message-markdown nav ul  { padding: 0; list-style: none; }

.chat-message-markdown pre,
.chat-message-markdown code,
.chat-message-markdown kbd,
.chat-message-markdown samp {
  font-family: var(--font-family--monospace), "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
  font-size: 1em;
}

.chat-message-markdown abbr[title] {
  cursor: help;
  text-decoration: underline dotted;
}

.chat-message-markdown b,
.chat-message-markdown strong { font-weight: var(--font-weight--bold); }
.chat-message-markdown small  { opacity: .8; font-size: 80%; }

.chat-message-markdown audio,
.chat-message-markdown canvas,
.chat-message-markdown iframe,
.chat-message-markdown img,
.chat-message-markdown svg,
.chat-message-markdown video    { vertical-align: middle; }

.chat-message-markdown img      { max-width: 100%; height: auto; }
.chat-message-markdown iframe   { border-style: none; aspect-ratio: 16 / 9; }
.chat-message-markdown svg:not([fill])    { fill: currentColor; }
.chat-message-markdown svg:not(:root)     { overflow: hidden; }

.chat-message-markdown button,
.chat-message-markdown input    { overflow: visible; }
.chat-message-markdown button,
.chat-message-markdown select   { text-transform: none; }
.chat-message-markdown button,
.chat-message-markdown [type=button],
.chat-message-markdown [type=reset],
.chat-message-markdown [type=submit] { -webkit-appearance: button; }

.chat-message-markdown fieldset { border: 1px solid #666; padding: .35em .75em .625em; }
.chat-message-markdown legend   { color: inherit; white-space: normal; max-width: 100%; display: table; }
.chat-message-markdown progress { vertical-align: baseline; display: inline-block; }
.chat-message-markdown textarea { resize: vertical; overflow: auto; }

.chat-message-markdown [type=search] { outline-offset: -2px; -webkit-appearance: textfield; }
.chat-message-markdown ::-webkit-inner-spin-button,
.chat-message-markdown ::-webkit-outer-spin-button { height: auto; }
.chat-message-markdown ::-webkit-input-placeholder { color: inherit; opacity: .54; }
.chat-message-markdown ::-webkit-search-decoration { -webkit-appearance: none; }
.chat-message-markdown ::-webkit-file-upload-button { font: inherit; -webkit-appearance: button; }
.chat-message-markdown ::-moz-focus-inner { border-style: none; padding: 0; }
.chat-message-markdown :-moz-focusring   { outline: 1px dotted buttontext; }
.chat-message-markdown :-moz-ui-invalid  { box-shadow: none; }

.chat-message-markdown [aria-busy=true]     { cursor: progress; }
.chat-message-markdown [aria-controls]      { cursor: pointer; }
.chat-message-markdown [aria-disabled=true],
.chat-message-markdown [disabled]           { cursor: not-allowed; }
.chat-message-markdown [aria-hidden=false][hidden]         { display: inline; }
.chat-message-markdown [aria-hidden=false][hidden]:not(:focus) {
  clip: rect(0, 0, 0, 0);
  position: absolute;
}

@media print {
  .chat-message-markdown a[href^=http]::after { content: " (" attr(href) ")"; }
}

.chat-message-markdown :root {
  --background-main: #fefefe;
  --background-element: #eee;
  --background-inverted: #282a36;
  --text-main: #1f1f1f;
  --text-alt: #333;
  --text-inverted: #fefefe;
  --border-element: #282a36;
  --theme: #7a283a;
  --theme-light: #bc8f8f;
  --theme-dark: #8f5656;
}

.chat-message-markdown body {
  background: var(--background-main);
  max-width: 36rem;
  min-height: 100%;
  color: var(--text-main);
  margin: auto;
  overflow-x: hidden;
}

.chat-message-markdown h1, .chat-message-markdown h2,
.chat-message-markdown h3, .chat-message-markdown h4,
.chat-message-markdown h5, .chat-message-markdown h6 { margin: 2rem 0 .8em; }
.chat-message-markdown p,
.chat-message-markdown ul,
.chat-message-markdown ol,
.chat-message-markdown figure,
.chat-message-markdown table * { font-size: var(--font-size__small-reg); }
.chat-message-markdown h1 { font-size: var(--font-size__medium-large); }
.chat-message-markdown h2 { font-size: var(--font-size__medium); }
.chat-message-markdown h3 { font-size: var(--font-size__regular); }
.chat-message-markdown h4 { font-size: 1.25rem;  line-height: 1.3; }
.chat-message-markdown h5,
.chat-message-markdown h6 { font-size: 1rem;     line-height: 1.4; }

.chat-message-markdown p,
.chat-message-markdown ul,
.chat-message-markdown ol,
.chat-message-markdown figure { margin: .6rem 0 1.2rem; }

.chat-message-markdown h1 span, .chat-message-markdown h2 span,
.chat-message-markdown h3 span, .chat-message-markdown h4 span,
.chat-message-markdown h5 span, .chat-message-markdown h6 span {
  font-size: 1em;
  font-style: italic;
  font-weight: var(--font-weight--regular);
  margin-top: .3em;
  line-height: 1.3;
  display: block;
}
.chat-message-markdown h1 span { font-size: .6em; }
.chat-message-markdown h2 span { font-size: .7em; }
.chat-message-markdown h3 span { font-size: .8em; }
.chat-message-markdown h4 span { font-size: .9em; }

.chat-message-markdown mark { background: pink; padding: .1em .15em; }
.chat-message-markdown pre  { tab-size: 4; }
.chat-message-markdown ins  { font-weight: var(--font-weight--bold); text-decoration: none; }

.chat-message-markdown blockquote {
  border-left: .3rem solid var(--theme);
  margin: .6rem 0 1.2rem;
  padding-left: 2rem;
}
.chat-message-markdown blockquote p { font-size: 1.2em; font-style: italic; }
.chat-message-markdown figure       { margin: 0; }

.chat-message-markdown a         { color: var(--theme); text-decoration: underline; }
.chat-message-markdown a:hover   { color: var(--theme-light); }
.chat-message-markdown a:active  { color: var(--theme-dark); }
.chat-message-markdown :focus    { outline: 3px solid var(--theme-light); outline-offset: 3px; }

.chat-message-markdown input {
  background: var(--background-element);
  border: 2px solid var(--border-element);
  border-radius: .5rem;
  padding: .5rem .65rem;
  font-size: 1rem;
}

.chat-message-markdown kbd,
.chat-message-markdown code {
  -webkit-box-decoration-break: clone;
  box-decoration-break: clone;
  border-radius: .2rem;
  padding: .1em .25em;
}
.chat-message-markdown kbd > kbd { padding-left: 0; padding-right: 0; }
.chat-message-markdown pre code  { word-break: normal; padding: 0 0 .5rem .5rem; display: block; overflow-x: auto; }

.chat-message-markdown [tabindex="-1"]:focus { outline: none; }
.chat-message-markdown [hidden]              { display: none; }
.chat-message-markdown [aria-disabled],
.chat-message-markdown [disabled]            { cursor: not-allowed !important; pointer-events: none !important; }
.chat-message-markdown a[href^="#"]::after   { content: ""; }

.chat-message-markdown body > a:first-child {
  background: var(--theme);
  color: var(--text-inverted);
  border-radius: .2rem;
  padding: .3em .5em;
  position: absolute;
  top: -10rem;
}
.chat-message-markdown body > a:first-child:focus { top: 1rem; }

.chat-message-markdown ul,
.chat-message-markdown ol           { margin-bottom: 1rem; padding-left: 1.5rem; }
.chat-message-markdown ul li,
.chat-message-markdown ol li        { margin-bottom: .5rem; }

.chat-message-markdown > :first-child { margin-top: 0; }
.chat-message-markdown > :last-child  { margin-bottom: 0; }

.chat-message-markdown pre {
  font-family: inherit;
  font-size: inherit;
  white-space: pre-wrap;
  box-sizing: border-box;
  padding: var(--chat--spacing);
  background: var(--chat--message--pre--background);
  border-radius: var(--chat--border-radius);
  margin: 0;
}


/* =============================================================
   6. BUTTONS (Chat-Library)
   ============================================================= */
.chat-button-wrapper-disabled { cursor: not-allowed; }

.chat-button {
  text-align: center;
  vertical-align: middle;
  -webkit-user-select: none;
  user-select: none;
  padding: var(--chat--button--padding);
  font-size: var(--chat--button--font-size);
  line-height: var(--chat--button--line-height);
  border-radius: var(--chat--button--border-radius);
  cursor: pointer;
  text-decoration: none;
  display: inline-flex;
  transition:
    color            var(--chat--transition-duration) ease-in-out,
    background-color var(--chat--transition-duration) ease-in-out,
    border-color     var(--chat--transition-duration) ease-in-out,
    box-shadow       var(--chat--transition-duration) ease-in-out;
}

.chat-button:focus {
  outline: 0;
  box-shadow: 0 0 0 .2rem #007bff40;
}

.chat-button-primary {
  color:            var(--chat--button--color--primary);
  background-color: var(--chat--button--background--primary);
  border:           var(--chat--button--border--primary);
}
.chat-button-primary:hover {
  color:            var(--chat--button--color--primary--hover);
  background-color: var(--chat--button--background--primary--hover);
  border:           var(--chat--button--border--primary--hover);
}
.chat-button-primary-disabled {
  pointer-events: none;
  color:            var(--chat--button--color--primary--disabled);
  background-color: var(--chat--button--background--primary--disabled);
  border:           var(--chat--button--border--primary--disabled);
}

.chat-button-secondary {
  color:            var(--chat--button--color--secondary);
  background-color: var(--chat--button--background--secondary);
  border:           var(--chat--button--border--secondary);
}
.chat-button-secondary:hover {
  color:            var(--chat--button--color--secondary--hover);
  background-color: var(--chat--button--background--secondary--hover);
  border:           var(--chat--button--border--secondary--hover);
}
.chat-button-secondary-disabled {
  pointer-events: none;
  color:            var(--chat--button--color--secondary--disabled);
  background-color: var(--chat--button--background--secondary--disabled);
  border:           var(--chat--button--border--secondary--disabled);
}

._buttons_omuwb_1 {
  gap: var(--chat--spacing);
  margin-top: var(--chat--spacing);
  display: flex;
}


/* =============================================================
   7. GET-STARTED / POWERED-BY
   ============================================================= */
.chat-get-started {
  padding-top: var(--chat--spacing);
  padding-bottom: var(--chat--spacing);
  justify-content: center;
  align-items: center;
  height: 100%;
  display: flex;
}

.chat-powered-by          { text-align: center; }
.chat-powered-by a        { color: var(--chat--color--primary); text-decoration: none; }
.chat-get-started-footer  { padding: var(--chat--spacing); }


/* =============================================================
   8. FILE-CHIP IM CHAT
   ============================================================= */
.chat-file[data-v-dc3234f3] {
  width: fit-content;
  max-width: 15rem;
  color: var(--chat--color-dark);
  border: 1px solid var(--chat--color-dark);
  background: #fff;
  border-radius: .25rem;
  flex-wrap: nowrap;
  align-items: center;
  gap: .25rem;
  padding: .5rem;
  font-size: .75rem;
  display: flex;
}
.chat-file[data-v-dc3234f3]:has(.chat-file-preview) { cursor: pointer; }

.chat-icon[data-v-dc3234f3]            { flex-shrink: 0; }
.chat-file-name-tooltip[data-v-dc3234f3] { overflow: hidden; }
.chat-file-name[data-v-dc3234f3] {
  text-overflow: ellipsis;
  white-space: nowrap;
  max-width: 100%;
  margin: 0;
  overflow: hidden;
}

.chat-file-delete[data-v-dc3234f3],
.chat-file-preview[data-v-dc3234f3] {
  cursor: pointer;
  background: 0 0;
  border: none;
  flex-shrink: 0;
  display: block;
}
.chat-file-delete[data-v-dc3234f3]         { position: relative; }
.chat-file-delete[data-v-dc3234f3]:hover   { color: red; }
.chat-file-delete[data-v-dc3234f3]::before { content: ""; position: absolute; inset: -10px; }


/* =============================================================
   9. CHAT INPUT
   ============================================================= */
.chat-input[data-v-fb8d706b] {
  flex-direction: column;
  justify-content: center;
  align-items: center;
  width: 100%;
  display: flex;
  position: relative;
}
.chat-input[data-v-fb8d706b] * { box-sizing: border-box; }

.chat-inputs[data-v-fb8d706b] {
  width:         var(--chat--input--width, 100%);
  background:    var(--chat--input--container--background, var(--color--background--light-2));
  border:        var(--chat--input--container--border, 1px solid var(--color--foreground--tint-1));
  border-radius: var(--chat--input--container--border-radius, 24px);
  padding:       var(--chat--input--container--padding, 12px);
  justify-content: center;
  align-items: flex-end;
  display: flex;
}

.chat-inputs textarea[data-v-fb8d706b] {
  font-family: inherit;
  font-size:     var(--chat--input--font-size);
  border-radius: var(--chat--input--border-radius);
  width: 100%;
  padding:    var(--chat--input--padding);
  min-height: var(--chat--textarea--height);
  max-height: var(--chat--textarea--max-height);
  height:     var(--chat--textarea--height);
  resize: none;
  background:  var(--chat--input--background, white);
  color:       var(--chat--input--text-color, initial);
  line-height: var(--chat--input--line-height, 1.5);
  border: none;
  outline: none;
  overflow-y: auto;
}
.chat-inputs textarea[data-v-fb8d706b]::placeholder {
  font-size: var(--chat--input--placeholder--font-size, var(--chat--input--font-size));
}

.chat-inputs-controls[data-v-fb8d706b] { display: flex; }

.chat-input-send-button[data-v-fb8d706b],
.chat-input-file-button[data-v-fb8d706b] {
  height: var(--chat--textarea--height);
  width:  var(--chat--textarea--height);
  background: var(--chat--input--send--button--background, transparent);
  cursor: pointer;
  color: var(--brand-color-main);
  border-radius: var(--chat--input--button--border-radius, 16px);
  transition: all var(--chat--transition-duration, .15s) ease;
  border: none;
  justify-content: center;
  align-items: center;
  margin: 0px !important;
  font-size: 24px;
  display: inline-flex;
}
.chat-input-send-button svg[data-v-fb8d706b],
.chat-input-file-button svg[data-v-fb8d706b] { min-width: fit-content; }

.chat-input-send-button[disabled][data-v-fb8d706b],
.chat-input-file-button[disabled][data-v-fb8d706b] {
  cursor: no-drop;
  color: var(--chat--color-disabled);
}
.chat-input-send-button[data-v-fb8d706b]:hover:not([disabled]),
.chat-input-file-button[data-v-fb8d706b]:hover:not([disabled]) {
  background: transparent;
  color:      var(--brand-color-main);
}

.chat-input-file-button[data-v-fb8d706b] {
  background: var(--chat--input--file--button--background, transparent);
  color:      var(--chat--input--file--button--color, var(--chat--color--secondary));
}
.chat-input-file-button[data-v-fb8d706b]:hover:not([disabled]) {
  background: var(--chat--input--file--button--background-hover, #0000000d);
  color:      var(--chat--input--file--button--color-hover, var(--chat--color--secondary));
}

.chat-files[data-v-fb8d706b] {
  width: 100%;
  padding: var(--chat--files-spacing);
  flex-flow: wrap;
  gap: .5rem;
  display: flex;
  overflow: hidden auto;
}
.chat-input-left-panel[data-v-fb8d706b] {
  width: var(--chat--input--left--panel--width);
  margin-left: .4rem;
}


/* =============================================================
   10. CHAT LAYOUT (Header / Body / Footer)
   ============================================================= */
.chat-layout {
  width: 100%;
  height: 100%;
  font-family: var(--chat--font-family);
  flex-direction: column;
  display: flex;
  overflow-y: auto;
}

.chat-layout .chat-header {
  height:        var(--chat--header-height);
  padding:       var(--chat--header--padding);
  background:    var(--chat--header--background);
  color:         var(--chat--header--color);
  border-top:    var(--chat--header--border-top);
  border-bottom: var(--chat--header--border-bottom);
  border-left:   var(--chat--header--border-left);
  border-right:  var(--chat--header--border-right);
  flex-direction: column;
  justify-content: center;
  gap: 1em;
  display: flex;
}
.chat-layout .chat-header h1 {
  font-size: var(--chat--heading--font-size);
  color:     var(--chat--header--color);
}
.chat-layout .chat-header p {
  font-size:   var(--chat--subtitle--font-size);
  line-height: var(--chat--subtitle--line-height);
}

.chat-layout .chat-body {
  background: var(--chat--body--background);
  flex-direction: column;
  flex: 1;
  min-height: 100px;
  display: flex;
  position: relative;
  overflow-y: auto;
}

.chat-layout .chat-footer {
  border-top: var(--chat--footer--border-top, 1px solid var(--chat--color-light-shade-100));
  background: var(--chat--footer--background);
  padding:    var(--chat--footer--padding);
  color:      var(--chat--footer--color);
}


/* =============================================================
   11. SVG ICON UTILS / SPINNER
   ============================================================= */
._strokeWidth_amcx4_1 rect,
._strokeWidth_amcx4_1 path { stroke-width: var(--icon--stroke-width); }

._spin_amcx4_6  { animation: 1s linear infinite _spin_amcx4_6; }
@keyframes _spin_amcx4_6 {
  0% { transform: rotate(0); }
  to { transform: rotate(360deg); }
}

@keyframes _spin_1n6ou_1 {
  0% { transform: rotate(0); }
  to { transform: rotate(360deg); }
}


/* =============================================================
   12. N8N BUTTON (Variants & States)
   ============================================================= */
:global(.n8n-button--success) {
  --button--color--background: var(--color--success);
  --button--color--background-hover: var(--color--success--shade-1);
  --button--color--background-active: var(--color--success--shade-1);
  --button--color: var(--color--neutral-white);
  --button--shadow:        0 0 0 1px var(--color--success);
  --button--shadow--hover: 0 0 0 1px var(--color--success--shade-1);
  --button--shadow--active:0 0 0 1px var(--color--success--shade-1);
}
:is(:global(.n8n-button--success):disabled,
    :global(.n8n-button--success)[aria-disabled=true]) {
  --button--color--background: var(--color--success--tint-3);
  --button--shadow: 0 0 0 1px var(--color--success--tint-3);
}

:global(.n8n-button--warning) {
  --button--color--background: var(--color--warning);
  --button--color--background-hover: var(--color--warning--shade-1);
  --button--color--background-active: var(--color--warning--shade-1);
  --button--color: var(--color--neutral-white);
  --button--shadow:        0 0 0 1px var(--color--warning);
  --button--shadow--hover: 0 0 0 1px var(--color--warning--shade-1);
  --button--shadow--active:0 0 0 1px var(--color--warning--shade-1);
}
:is(:global(.n8n-button--warning):disabled,
    :global(.n8n-button--warning)[aria-disabled=true]) {
  --button--color--background: var(--color--warning--tint-1);
  --button--shadow: 0 0 0 1px var(--color--warning--tint-1);
}

._button_1n6ou_3 {
  appearance: none;
  touch-action: manipulation;
  -webkit-tap-highlight-color: transparent;
  -webkit-user-select: none;
  user-select: none;
  width: fit-content;
  font-weight: var(--font-weight--medium);
  cursor: pointer;
  height:        var(--button--height);
  padding:       var(--button--padding);
  border-radius: var(--button--radius);
  line-height: 1;
  font-size: var(--button--font-size);

  --button--color--background: transparent;
  --button--color--background-hover: transparent;
  --button--color--background-active: transparent;
  --button--color: var(--lightningcss-light, var(--color--neutral-900)) var(--lightningcss-dark, var(--color--neutral-100));

  --button--shadow:        0 0 0 0 transparent;
  --button--shadow--hover: 0 0 0 0 transparent;
  --button--shadow--active:0 0 0 0 transparent;

  --button--border--shadow:        0 0 0 0 transparent;
  --button--border--shadow--hover: 0 0 0 0 transparent;
  --button--border--shadow--active:0 0 0 0 transparent;

  --button--border-color:         transparent;
  --button--border-color--hover:  transparent;
  --button--border-color--active: transparent;

  background-color: var(--button--color--background);
  color: var(--button--color);
  box-shadow: inset var(--button--border--shadow), var(--button--shadow);
  border: none;
  align-items: center;
  text-decoration: none;
  display: grid;
}
._button_1n6ou_3 > * { grid-area: 1 / 1; }

._button_1n6ou_3:hover {
  background-color: var(--button--color--background-hover);
  box-shadow: inset var(--button--border--shadow--hover), var(--button--shadow--hover);
}
._button_1n6ou_3:active {
  background-color: var(--button--color--background-active);
  box-shadow: inset var(--button--border--shadow--active), var(--button--shadow--active);
}
._button_1n6ou_3:focus { outline: none; }
._button_1n6ou_3:focus-visible {
  outline: var(--focus--border-width) solid var(--focus--border-color);
  outline-offset: 2px;
  transition: outline .15s ease-out;
}

/* sizes */
._button_1n6ou_3._xsmall_1n6ou_56 {
  --button--height: var(--height--xs);
  --button--padding: 0 var(--spacing--2xs);
  --button--radius: var(--radius--3xs);
  --button--font-size: var(--font-size--2xs);
}
._button_1n6ou_3._small_1n6ou_62 {
  --button--height: var(--height--sm);
  --button--padding: 0 var(--spacing--xs);
  --button--radius: var(--radius--3xs);
  --button--font-size: var(--font-size--xs);
}
._button_1n6ou_3._medium_1n6ou_68 {
  --button--height: var(--height--md);
  --button--padding: 0 var(--spacing--xs);
  --button--radius: var(--radius--3xs);
  --button--font-size: var(--font-size--sm);
}
._button_1n6ou_3._large_1n6ou_74 {
  --button--height: var(--height--lg);
  --button--padding: 0 var(--spacing--sm);
  --button--radius: var(--radius--2xs);
  --button--font-size: var(--font-size--sm);
}
._button_1n6ou_3._xlarge_1n6ou_80 {
  --button--height: var(--height--xl);
  --button--padding: 0 var(--spacing--sm);
  --button--radius: var(--radius--xs);
  --button--font-size: var(--font-size--md);
}

/* variants */
._button_1n6ou_3._solid_1n6ou_86 {
  --button--color--background: var(--color--orange-400);
  --button--color--background-hover: var(--color--orange-500);
  --button--color--background-active: var(--color--orange-600);
  --button--color: var(--color--neutral-white);
  --button--shadow:        0 1px 3px 0 var(--lightningcss-light, var(--color--black-alpha-100)) var(--lightningcss-dark, var(--color--black-alpha-200));
  --button--shadow--hover: 0 1px 3px 0 var(--lightningcss-light, var(--color--black-alpha-100)) var(--lightningcss-dark, var(--color--black-alpha-200));
  --button--shadow--active:0 1px 3px 0 var(--lightningcss-light, var(--color--black-alpha-100)) var(--lightningcss-dark, var(--color--black-alpha-200));
  --button--border-color:         var(--color--orange-400);
  --button--border-color--hover:  var(--color--orange-500);
  --button--border-color--active: var(--color--orange-600);
  --button--border--shadow:        0 0 0 1px var(--button--border-color);
  --button--border--shadow--hover: 0 0 0 1px var(--button--border-color--hover);
  --button--border--shadow--active:0 0 0 1px var(--button--border-color--active);
}

._button_1n6ou_3._subtle_1n6ou_104 {
  --button--color--background:        var(--lightningcss-light, var(--color--neutral-white)) var(--lightningcss-dark, var(--color--neutral-800));
  --button--color--background-hover:  var(--lightningcss-light, var(--color--neutral-150))   var(--lightningcss-dark, var(--color--neutral-700));
  --button--color--background-active: var(--lightningcss-light, var(--color--neutral-200))   var(--lightningcss-dark, var(--color--neutral-600));
  --button--shadow:        0 1px 3px var(--lightningcss-light, var(--color--black-alpha-100))   var(--lightningcss-dark, var(--color--black-alpha-300)),
                           0 0 0 1.5px var(--lightningcss-light, transparent)                  var(--lightningcss-dark, var(--color--black-alpha-100));
  --button--shadow--hover: 0 1px 3px 0 var(--lightningcss-light, var(--color--black-alpha-200)) var(--lightningcss-dark, var(--color--black-alpha-300)),
                           0 0 0 1px   var(--lightningcss-light, transparent)                   var(--lightningcss-dark, var(--color--black-alpha-100));
  --button--shadow--active:0 1px 3px 0 var(--lightningcss-light, var(--color--black-alpha-200)) var(--lightningcss-dark, var(--color--black-alpha-300)),
                           0 0 0 1px   var(--lightningcss-light, transparent)                   var(--lightningcss-dark, var(--color--black-alpha-100));
  --button--border-color:         var(--lightningcss-light, var(--color--black-alpha-200)) var(--lightningcss-dark, var(--color--white-alpha-100));
  --button--border-color--hover:  var(--lightningcss-light, var(--color--black-alpha-200)) var(--lightningcss-dark, var(--color--white-alpha-300));
  --button--border-color--active: var(--lightningcss-light, var(--color--black-alpha-300)) var(--lightningcss-dark, var(--color--white-alpha-300));
  --button--border--shadow:        0 0 0 1px var(--button--border-color);
  --button--border--shadow--hover: 0 0 0 1px var(--button--border-color--hover);
  --button--border--shadow--active:0 0 0 1px var(--button--border-color--active);
}

._button_1n6ou_3._outline_1n6ou_139 {
  --button--color--background: transparent;
  --button--color--background-hover:  var(--lightningcss-light, var(--color--neutral-150))     var(--lightningcss-dark, var(--color--white-alpha-100));
  --button--color--background-active: var(--lightningcss-light, var(--color--black-alpha-200)) var(--lightningcss-dark, var(--color--white-alpha-200));
  --button--border-color:         var(--lightningcss-light, var(--color--black-alpha-200)) var(--lightningcss-dark, var(--color--white-alpha-100));
  --button--border-color--hover:  var(--lightningcss-light, var(--color--black-alpha-200)) var(--lightningcss-dark, var(--color--white-alpha-200));
  --button--border-color--active: var(--lightningcss-light, var(--color--black-alpha-300)) var(--lightningcss-dark, var(--color--white-alpha-300));
  --button--border--shadow:        0 0 0 1px var(--button--border-color);
  --button--border--shadow--hover: 0 0 0 1px var(--button--border-color--hover);
  --button--border--shadow--active:0 0 0 1px var(--button--border-color--active);
}

._button_1n6ou_3._ghost_1n6ou_165 {
  --button--color--background: transparent;
  --button--color--background-hover:  var(--lightningcss-light, var(--color--black-alpha-100)) var(--lightningcss-dark, var(--color--white-alpha-100));
  --button--color--background-active: var(--lightningcss-light, var(--color--black-alpha-200)) var(--lightningcss-dark, var(--color--white-alpha-200));
  --button--border-color: transparent;
  --button--border--shadow:        0 0 0 1px var(--button--border-color);
  --button--border--shadow--hover: 0 0 0 1px var(--button--border-color);
  --button--border--shadow--active:0 0 0 1px var(--button--border-color);
}

._button_1n6ou_3._destructive_1n6ou_180 {
  --button--color--background:        var(--lightningcss-light, var(--color--red-500)) var(--lightningcss-dark, var(--color--red-600));
  --button--color--background-hover:  var(--lightningcss-light, var(--color--red-600)) var(--lightningcss-dark, var(--color--red-500));
  --button--color--background-active: var(--lightningcss-light, var(--color--red-600)) var(--lightningcss-dark, var(--color--red-400));
  --button--color: var(--color--neutral-white);
  --button--shadow:        var(--lightningcss-light, 0 1px 3px 0 var(--color--black-alpha-100)) var(--lightningcss-dark, 0 1px 3px 0 var(--color--black-alpha-200));
  --button--shadow--hover: var(--lightningcss-light, 0 1px 3px 0 var(--color--black-alpha-100)) var(--lightningcss-dark, 0 1px 3px 0 var(--color--black-alpha-200));
  --button--shadow--active:var(--lightningcss-light, 0 1px 3px 0 var(--color--black-alpha-100)) var(--lightningcss-dark, 0 1px 3px 0 var(--color--black-alpha-200));
  --button--border-color:         var(--lightningcss-light, var(--color--red-500)) var(--lightningcss-dark, var(--color--red-600));
  --button--border-color--hover:  var(--lightningcss-light, var(--color--red-600)) var(--lightningcss-dark, var(--color--red-500));
  --button--border-color--active: var(--lightningcss-light, var(--color--red-600)) var(--lightningcss-dark, var(--color--red-400));
  --button--border--shadow:        0 0 0 1px var(--button--border-color);
  --button--border--shadow--hover: 0 0 0 1px var(--button--border-color--hover);
  --button--border--shadow--active:0 0 0 1px var(--button--border-color--active);
}

._button_1n6ou_3._success_1n6ou_204 {
  --button--color--background:        var(--lightningcss-light, var(--color--green-600)) var(--lightningcss-dark, var(--color--green-700));
  --button--color--background-hover:  var(--lightningcss-light, var(--color--green-700)) var(--lightningcss-dark, var(--color--green-600));
  --button--color--background-active: var(--lightningcss-light, var(--color--green-700)) var(--lightningcss-dark, var(--color--green-500));
  --button--color: var(--color--neutral-white);
  --button--shadow:        var(--lightningcss-light, 0 1px 3px 0 var(--color--black-alpha-100)) var(--lightningcss-dark, 0 1px 3px 0 var(--color--black-alpha-200));
  --button--shadow--hover: var(--lightningcss-light, 0 1px 3px 0 var(--color--black-alpha-100)) var(--lightningcss-dark, 0 1px 3px 0 var(--color--black-alpha-200));
  --button--shadow--active:var(--lightningcss-light, 0 1px 3px 0 var(--color--black-alpha-100)) var(--lightningcss-dark, 0 1px 3px 0 var(--color--black-alpha-200));
  --button--border-color:         var(--lightningcss-light, var(--color--green-600)) var(--lightningcss-dark, var(--color--green-700));
  --button--border-color--hover:  var(--lightningcss-light, var(--color--green-700)) var(--lightningcss-dark, var(--color--green-600));
  --button--border-color--active: var(--lightningcss-light, var(--color--green-700)) var(--lightningcss-dark, var(--color--green-500));
  --button--border--shadow:        0 0 0 1px var(--button--border-color);
  --button--border--shadow--hover: 0 0 0 1px var(--button--border-color--hover);
  --button--border--shadow--active:0 0 0 1px var(--button--border-color--active);
}

._button_1n6ou_3._disabled_1n6ou_231 { opacity: .5; cursor: not-allowed; }
._button_1n6ou_3._loading_1n6ou_235  { pointer-events: none; }

._button_1n6ou_3._iconOnly_1n6ou_238 {
  width: var(--button--height);
  justify-content: center;
  align-items: center;
  padding: 0;
}
._button_1n6ou_3._iconOnly_1n6ou_238 > * { width: var(--button--height); }

._loading-container_1n6ou_248 {
  justify-content: center;
  align-items: center;
  height: auto;
  display: flex;
}

._button-inner_1n6ou_255 {
  justify-content: center;
  align-items: center;
  gap: var(--spacing--3xs);
  white-space: nowrap;
  display: flex;
}
._button-inner_1n6ou_255 > span                                  { white-space: nowrap; }
._loading-container_1n6ou_248 + ._button-inner_1n6ou_255         { pointer-events: none; opacity: 0; }

._loading-spinner_1n6ou_272 {
  justify-content: center;
  align-items: center;
  animation: 1s linear infinite _spin_1n6ou_1;
  display: flex;
}
@media (prefers-reduced-motion: reduce) {
  ._loading-spinner_1n6ou_272 { animation: none; }
}

.n8n-button-fade-enter-active,
.n8n-button-fade-leave-active {
  --easing--ease-out: cubic-bezier(.215, .61, .355, 1);
  transition:
    opacity   .2s var(--easing--ease-out),
    transform .2s var(--easing--ease-out);
}
@media (prefers-reduced-motion: reduce) {
  .n8n-button-fade-enter-active,
  .n8n-button-fade-leave-active { transition: opacity .1s; }
}
.n8n-button-fade-enter-from,
.n8n-button-fade-leave-to {
  opacity: 0;
  filter: blur(2px);
  transform: translateY(4px);
}
@media (prefers-reduced-motion: reduce) {
  .n8n-button-fade-enter-from,
  .n8n-button-fade-leave-to { filter: none; transform: none; }
}


/* =============================================================
   13. TYPOGRAPHIE (Helper-Klassen)
   ============================================================= */
._bold_1e0nf_1     { font-weight: var(--font-weight--medium); }
._regular_1e0nf_5  { font-weight: var(--font-weight--regular); }

._size-xlarge_1e0nf_9  { font-size: var(--font-size--xl);  line-height: var(--line-height--xl); }
._size-large_1e0nf_14  { font-size: var(--font-size--md);  line-height: var(--line-height--xl); }
._size-medium_1e0nf_19 { font-size: var(--font-size--sm);  line-height: var(--line-height--lg); }
._size-small_1e0nf_24  { font-size: var(--font-size--2xs); line-height: var(--line-height--lg); }
._size-xsmall_1e0nf_29 { font-size: var(--font-size--3xs); line-height: var(--line-height--sm); }
._compact_1e0nf_34     { line-height: 1; }

._primary_1e0nf_38         { color: var(--color--primary); }
._secondary_1e0nf_42       { color: var(--color--secondary); }
._text-dark_1e0nf_46       { color: var(--color--text--shade-1); }
._text-base_1e0nf_50       { color: var(--color--text); }
._text-light_1e0nf_54      { color: var(--color--text--tint-1); }
._text-xlight_1e0nf_58     { color: var(--color--text--tint-3); }
._danger_1e0nf_62          { color: var(--color--text--danger); }
._success_1e0nf_66         { color: var(--color--success); }
._warning_1e0nf_70         { color: var(--color--warning); }
._foreground-dark_1e0nf_74 { color: var(--color--foreground--shade-1); }
._foreground-xdark_1e0nf_78{ color: var(--color--foreground--shade-2); }

._align-left_1e0nf_82   { text-align: left; }
._align-right_1e0nf_86  { text-align: right; }
._align-center_1e0nf_90 { text-align: center; }


/* =============================================================
   14. TOOLTIP
   ============================================================= */
._arrow_1twu1_1   { fill: currentColor; }
._buttons_1twu1_5 {
  margin-top: var(--spacing--sm);
  align-items: center;
  gap: var(--spacing--2xs);
  display: flex;
}
._disabledTrigger_1twu1_12      { pointer-events: none; }
._disabledTrigger_1twu1_12 > *  { pointer-events: auto; }

.n8n-tooltip {
  z-index: 2100;
  max-width: 180px;
  font-size: 12px;
  line-height: var(--line-height--md);
  background: var(--color--background--shade-2);
  color: var(--color--foreground--tint-2);
  word-wrap: break-word;
  border-radius: 4px;
  padding: 10px;
}
.n8n-tooltip svg { fill: var(--color--background--shade-2); }


/* =============================================================
   15. INPUT (Library)
   ============================================================= */
._inputContainer_dr6ed_3 {
  align-items: center;
  gap: var(--spacing--3xs);

  --input--height:        var(--height--lg);
  --input--radius:        var(--radius--2xs);
  --input--font-size:     var(--font-size--sm);
  --input--padding:       var(--spacing--xs);
  --input--color--background: var(--lightningcss-light, var(--color--neutral-white)) var(--lightningcss-dark, var(--color--neutral-950));

  --input--shadow:        0 0 0 0 transparent;
  --input--shadow--hover: 0 0 0 0 transparent;
  --input--shadow--focus: 0 0 0 0 transparent;

  --input--border-color:        var(--lightningcss-light, var(--color--black-alpha-200)) var(--lightningcss-dark, var(--color--white-alpha-100));
  --input--border-color--hover: var(--lightningcss-light, var(--color--black-alpha-200)) var(--lightningcss-dark, var(--color--white-alpha-200));
  --input--border-color--focus: var(--lightningcss-light, var(--color--black-alpha-300)) var(--lightningcss-dark, var(--color--white-alpha-300));

  --input--border--shadow:        0 0 0 1px var(--input--border-color);
  --input--border--shadow--hover: 0 0 0 1px var(--input--border-color--hover);
  --input--border--shadow--focus: 0 0 0 1px var(--input--border-color--focus);

  width: 100%;
  display: inline-flex;
}

._inputContainer_dr6ed_3._xlarge_dr6ed_29 {
  --input--height: var(--height--xl);
  --input--radius: var(--radius--2xs);
  --input--font-size: var(--font-size--md);
}
._inputContainer_dr6ed_3._large_dr6ed_34 {
  --input--height: var(--height--lg);
  --input--radius: var(--radius--2xs);
  --input--font-size: var(--font-size--sm);
}
._inputContainer_dr6ed_3._medium_dr6ed_39 {
  --input--height: var(--height--md);
  --input--radius: var(--radius--3xs);
  --input--font-size: var(--font-size--sm);
}
._inputContainer_dr6ed_3._small_dr6ed_44 {
  --input--height: var(--height--sm);
  --input--radius: var(--radius--3xs);
  --input--font-size: var(--font-size--xs);
  --input--padding: var(--spacing--2xs);
}
._inputContainer_dr6ed_3._mini_dr6ed_50 {
  --input--height: var(--height--xs);
  --input--radius: var(--radius--3xs);
  --input--font-size: var(--font-size--2xs);
  --input--padding: var(--spacing--2xs);
}

._inputWrapper_dr6ed_57 {
  align-items: center;
  gap: var(--input--padding);
  min-width: 0;
  padding: 0 var(--input--padding);
  min-height: var(--input--height);
  border-radius:
    var(--input--radius--top-left,     var(--input--radius))
    var(--input--radius--top-right,    var(--input--radius))
    var(--input--radius--bottom-right, var(--input--radius))
    var(--input--radius--bottom-left,  var(--input--radius));
  background-color: var(--input--color--background);
  box-shadow: var(--input--shadow), inset var(--input--border--shadow);
  flex: 1;
  display: inline-flex;
}
._inputWrapper_dr6ed_57 > input {
  padding: 0 var(--input--padding);
  margin-inline: calc(var(--input--padding) * -1);
  border-radius: inherit;
}
._inputWrapper_dr6ed_57:focus-within {
  outline: var(--focus--border-width) solid var(--focus--border-color);
  outline-offset: 2px;
  transition: outline .15s ease-out;
  box-shadow: var(--input--shadow--focus), inset var(--input--border--shadow--focus);
}
._inputWrapper_dr6ed_57:hover:not(._disabled_dr6ed_80):not(:focus-within) {
  box-shadow: var(--input--shadow--hover), inset var(--input--border--shadow--hover);
}
._inputWrapper_dr6ed_57._disabled_dr6ed_80 { cursor: not-allowed; opacity: .6; }

._isTextarea_dr6ed_91 { align-items: flex-start; padding-inline: 0; }
._disabled_dr6ed_80   { cursor: not-allowed; }
._readonly_dr6ed_100  { cursor: default; }

._hasPrepend_dr6ed_104 ._inputWrapper_dr6ed_57 {
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
}
._hasAppend_dr6ed_109 ._inputWrapper_dr6ed_57 {
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
}

._input_dr6ed_3 {
  min-width: 0;
  min-height: var(--input--height);
  font-family: inherit;
  font-size: var(--input--font-size, var(--font-size--md));
  color: var(--color--text--shade-1);
  background: 0 0;
  border: none;
  outline: none;
  flex: 1;
  padding: 0;
}
._input_dr6ed_3::placeholder { color: var(--color--text--tint-1); }
._input_dr6ed_3:read-only    { cursor: default; }
._input_dr6ed_3:disabled     { cursor: not-allowed; color: var(--color--text--tint-1); }

._textarea_dr6ed_140 {
  resize: vertical;
  min-width: 0;
  padding: var(--input--padding);
  line-height: var(--line-height--md);
  font-family: inherit;
  font-size: var(--input--font-size, var(--font-size--base));
  background: 0 0;
  border: none;
  outline: none;
  flex: 1;
}
._textarea_dr6ed_140::placeholder { color: var(--color--text--tint-1); }
._textarea_dr6ed_140:read-only    { cursor: default; }
._textarea_dr6ed_140:disabled     { cursor: not-allowed; color: var(--color--text--tint-1); }

._prefix_dr6ed_166,
._suffix_dr6ed_167 {
  color: var(--color--text--shade-1);
  opacity: .7;
  flex-shrink: 0;
  align-items: center;
  display: flex;
}
._prefix_dr6ed_166 svg,
._suffix_dr6ed_167 svg {
  width:  var(--spacing--sm);
  height: var(--spacing--sm);
}

._clearButton_dr6ed_180 {
  color: var(--color--text--tint-1);
  cursor: pointer;
  border-radius: var(--radius--sm);
  background: 0 0;
  border: none;
  flex-shrink: 0;
  justify-content: center;
  align-items: center;
  padding: 0;
  transition: color .2s;
  display: flex;
}
._clearButton_dr6ed_180:hover { color: var(--color--text--shade-1); }
._clearButton_dr6ed_180:focus { outline: none; }

._prepend_dr6ed_202,
._append_dr6ed_203 {
  background-color: var(--lightningcss-light, var(--color--neutral-150)) var(--lightningcss-dark, var(--color--neutral-800));
  padding: 0 var(--spacing--xs);
  flex-shrink: 0;
  align-items: center;
  display: flex;
}
._prepend_dr6ed_202 { border-right: var(--border); margin-left:  calc(-1 * var(--spacing--xs)); }
._append_dr6ed_203  { border-left:  var(--border); margin-right: calc(-1 * var(--spacing--xs)); }

._hiddenTextarea_dr6ed_221 {
  visibility: hidden  !important;
  z-index:    -1000   !important;
  height:     0       !important;
  position:   absolute!important;
  top:        0       !important;
  right:      0       !important;
  overflow:   hidden  !important;
}


/* =============================================================
   16. BLINKING CURSOR
   ============================================================= */
.blinking-cursor {
  height: var(--font-size--md);
  width:  var(--spacing--3xs);
  border-radius: var(--radius--sm);
  margin-left:   var(--spacing--4xs);
  animation: 1s step-end infinite blink;
  display: inline-block;
}
@keyframes blink {
  0%, to { background-color: #0000; }
  50%    { background-color: var(--color--foreground--shade-2); }
}


/* =============================================================
   17. SKELETON LOADING
   ============================================================= */
._h1Last_1sdbr_1 { width: 40%; }
._pLast_1sdbr_5  { width: 61%; }

._custom_1sdbr_9,
.n8n-loading-custom.el-skeleton,
.n8n-loading-custom.el-skeleton .el-skeleton__item { width: 100%; height: 100%; }

.n8n-loading-custom,
.n8n-loading-custom > div { width: 100%; height: 100%; }


/* =============================================================
   18. MARKDOWN / STICKY (n8n)
   ============================================================= */
._markdown_24arw_1   { color: var(--color--text); }
._markdown_24arw_1 * { font-size: var(--font-size--md); line-height: var(--line-height--xl); }

._markdown_24arw_1 h1,
._markdown_24arw_1 h2,
._markdown_24arw_1 h3,
._markdown_24arw_1 h4 {
  margin-bottom: var(--spacing--sm);
  font-size:     var(--font-size--md);
  font-weight:   var(--font-weight--bold);
}
._markdown_24arw_1 h3,
._markdown_24arw_1 h4 { font-weight: var(--font-weight--bold); }

._markdown_24arw_1 p,
._markdown_24arw_1 span { margin-bottom: var(--spacing--sm); }

._markdown_24arw_1 ul,
._markdown_24arw_1 ol {
  margin-bottom: var(--spacing--sm);
  padding-left:  var(--spacing--md);
}
._markdown_24arw_1 ul li,
._markdown_24arw_1 ol li { margin-top: .25em; }

._markdown_24arw_1 pre > code {
  background-color: var(--color--background);
  color: var(--color--text--shade-1);
}
._markdown_24arw_1 li > code,
._markdown_24arw_1 p  > code {
  padding: 0 var(--spacing--4xs);
  color: var(--color--text--shade-1);
  background-color: var(--color--background);
}

._markdown_24arw_1 ._label_24arw_43 { color: var(--color--text); }
._markdown_24arw_1 img {
  border-radius: var(--radius--lg);
  max-width: 100%;
}
._markdown_24arw_1 blockquote {
  border-left: var(--border-color) 2px solid;
  padding-left: 10px;
  font-style: italic;
}

input[type=checkbox]        { accent-color: var(--color--primary); }
input[type=checkbox] + label { cursor: pointer; }

/* Sticky */
._sticky_24arw_64 {
  color: var(--sticky--color--text);
  overflow-wrap: break-word;
}
._sticky_24arw_64 h1, ._sticky_24arw_64 h2,
._sticky_24arw_64 h3, ._sticky_24arw_64 h4,
._sticky_24arw_64 h5, ._sticky_24arw_64 h6 { color: var(--sticky--color--text); }

._sticky_24arw_64 h1, ._sticky_24arw_64 h2,
._sticky_24arw_64 h3, ._sticky_24arw_64 h4 {
  margin-bottom: var(--spacing--2xs);
  font-weight:   var(--font-weight--bold);
  line-height:   var(--line-height--lg);
}
._sticky_24arw_64 h1 { font-size: 36px; }
._sticky_24arw_64 h2 { font-size: 24px; }
._sticky_24arw_64 h3,
._sticky_24arw_64 h4,
._sticky_24arw_64 h5,
._sticky_24arw_64 h6 { font-size: var(--font-size--md); }

._sticky_24arw_64 p {
  margin-bottom: var(--spacing--2xs);
  font-size:     var(--font-size--sm);
  font-weight:   var(--font-weight--regular);
  line-height:   var(--line-height--lg);
}
._sticky_24arw_64 ul,
._sticky_24arw_64 ol {
  margin-bottom: var(--spacing--2xs);
  padding-left:  var(--spacing--md);
}
._sticky_24arw_64 ul li,
._sticky_24arw_64 ol li {
  font-size:   var(--font-size--sm);
  font-weight: var(--font-weight--regular);
  line-height: var(--line-height--md);
  margin-top: .25em;
}
:is(._sticky_24arw_64 ul:has(input[type=checkbox]),
    ._sticky_24arw_64 ol:has(input[type=checkbox])) {
  padding-left: var(--spacing--5xs);
  list-style-type: none;
}

._sticky_24arw_64 pre > code {
  background-color: var(--sticky--code--color--background);
  color: var(--sticky--code--color--text);
}
._sticky_24arw_64 li > code,
._sticky_24arw_64 p  > code { color: var(--sticky--code--color--text); }
._sticky_24arw_64 a:hover   { text-decoration: underline; }

._sticky_24arw_64 img {
  object-fit: contain;
  margin-top:    var(--spacing--xs);
  margin-bottom: var(--spacing--2xs);
}
._sticky_24arw_64 img[src*="#full-width"] { width: 100%; }

._sticky_24arw_64 pre,
._markdown_24arw_1 pre {
  margin-bottom: var(--spacing--sm);
  display: grid;
}
._sticky_24arw_64 pre > code,
._markdown_24arw_1 pre > code {
  padding: var(--spacing--sm);
  display: block;
  overflow-x: auto;
}
._sticky_24arw_64 iframe,
._markdown_24arw_1 iframe { aspect-ratio: 16 / 9; }
._sticky_24arw_64 summary,
._markdown_24arw_1 summary { cursor: pointer; }

._spacer_24arw_160 { margin: var(--spacing--2xl); }


/* =============================================================
   19. RECYCLE-SCROLLER
   ============================================================= */
.recycle-scroller-wrapper {
  flex: auto;
  width: 100%;
  height: 100%;
  overflow: auto;
}
.recycle-scroller {
  width: 100%;
  display: block;
  position: relative;
}
.recycle-scroller-items-wrapper {
  width: 100%;
  position: absolute;
}
.recycle-scroller-item {
  width: 100%;
  display: flex;
  position: relative;
}


/* =============================================================
   20. RESIZER (Drag-Handles)
   ============================================================= */
._resize_11wc6_1 {
  --resizer--size: 4px;
  --resizer--spacing--side:  -2px;
  --resizer--spacing--corner:-3px;
  z-index: 2;
  width: 100%;
  height: 100%;
  position: relative;
}
._resizer_11wc6_11 { z-index: 3; position: absolute; }

._right_11wc6_16  { width: var(--resizer--size); height: 100%;
                    top:  var(--resizer--spacing--side); right: var(--resizer--spacing--side);
                    cursor: ew-resize; }
._top_11wc6_24    { width: 100%; height: var(--resizer--size);
                    top:  var(--resizer--spacing--side); left: var(--resizer--spacing--side);
                    cursor: ns-resize; }
._bottom_11wc6_32 { width: 100%; height: var(--resizer--size);
                    bottom: var(--resizer--spacing--side); left: var(--resizer--spacing--side);
                    cursor: ns-resize; }
._left_11wc6_40   { width: var(--resizer--size); height: 100%;
                    top:  var(--resizer--spacing--side); left: var(--resizer--spacing--side);
                    cursor: ew-resize; }

._topLeft_11wc6_48     { width: var(--resizer--size); height: var(--resizer--size);
                         top: var(--resizer--spacing--corner); left: var(--resizer--spacing--corner);
                         cursor: nw-resize; }
._topRight_11wc6_56    { width: var(--resizer--size); height: var(--resizer--size);
                         top: var(--resizer--spacing--corner); right: var(--resizer--spacing--corner);
                         cursor: ne-resize; }
._bottomLeft_11wc6_64  { width: var(--resizer--size); height: var(--resizer--size);
                         bottom: var(--resizer--spacing--corner); left: var(--resizer--spacing--corner);
                         cursor: sw-resize; }
._bottomRight_11wc6_72 { width: var(--resizer--size); height: var(--resizer--size);
                         bottom: var(--resizer--spacing--corner); right: var(--resizer--spacing--corner);
                         cursor: se-resize; }

._outset_11wc6_80 {
  --resizer--spacing--side:   calc(-1 * var(--resizer--size) + 2px);
  --resizer--spacing--corner: calc(-1 * var(--resizer--size) + 3px);
}


/* =============================================================
   21. LDS RING SPINNER
   ============================================================= */
.lds-ring {
  width: 48px;
  height: 48px;
  display: inline-block;
  position: relative;
}
.lds-ring div {
  box-sizing: border-box;
  border: 4px solid var(--color--foreground--tint-2);
  border-color: var(--color--primary) transparent transparent transparent;
  border-radius: 50%;
  width: 48px;
  height: 48px;
  animation: 1.2s cubic-bezier(.5, 0, .5, 1) infinite lds-ring;
  display: block;
  position: absolute;
}
.lds-ring div:first-child   { animation-delay: -.45s; }
.lds-ring div:nth-child(2)  { animation-delay: -.30s; }
.lds-ring div:nth-child(3)  { animation-delay: -.15s; }

@keyframes lds-ring {
  0% { transform: rotate(0); }
  to { transform: rotate(360deg); }
}


/* =============================================================
   22. STICKY-NOTE COMPONENT
   ============================================================= */
._sticky_v7tn3_1 {
  border-radius: var(--radius);
  background-color: var(--sticky--color--background);
  border: 1px solid var(--sticky--border-color);
  position: absolute;
}
._customColor_v7tn3_8 {
  --sticky--color--text: var(--sticky--color--text--custom);
  --color--text--shade-1: var(--sticky--color--text--custom);
  --sticky--border-color: var(--sticky--border-color--custom-light);
}
body[data-theme=dark] ._customColor_v7tn3_8 {
  --sticky--border-color: var(--sticky--border-color--custom-dark);
}
@media (prefers-color-scheme: dark) {
  body:not([data-theme=light]) ._customColor_v7tn3_8 {
    --sticky--border-color: var(--sticky--border-color--custom-dark);
  }
}

._clickable_v7tn3_23 { cursor: pointer; }

._wrapper_v7tn3_27 {
  width: 100%;
  height: 100%;
  padding: var(--spacing--2xs) var(--spacing--xs) 0;
  position: absolute;
  overflow: hidden;
}
._footer_v7tn3_35 {
  padding: var(--spacing--5xs) var(--spacing--2xs) 0 var(--spacing--2xs);
  justify-content: flex-end;
  display: flex;
}

._color-2_v7tn3_41 { --sticky--color--background: var(--sticky--color--background--variant-2); --sticky--border-color: var(--sticky--border-color--variant-2); }
._color-3_v7tn3_46 { --sticky--color--background: var(--sticky--color--background--variant-3); --sticky--border-color: var(--sticky--border-color--variant-3); }
._color-4_v7tn3_51 { --sticky--color--background: var(--sticky--color--background--variant-4); --sticky--border-color: var(--sticky--border-color--variant-4); }
._color-5_v7tn3_56 { --sticky--color--background: var(--sticky--color--background--variant-5); --sticky--border-color: var(--sticky--border-color--variant-5); }
._color-6_v7tn3_61 { --sticky--color--background: var(--sticky--color--background--variant-6); --sticky--border-color: var(--sticky--border-color--variant-6); }
._color-7_v7tn3_66 { --sticky--color--background: var(--sticky--color--background--variant-7); --sticky--border-color: var(--sticky--border-color--variant-7); }

.sticky-textarea {
  height: calc(100% - var(--spacing--lg));
  padding: var(--spacing--2xs) var(--spacing--2xs) 0 var(--spacing--2xs);
  cursor: default;
}
.sticky-textarea .n8n-input        { align-items: stretch; height: 100%; }
.sticky-textarea .n8n-input > div  { align-items: stretch; }
.sticky-textarea textarea          { resize: unset; }

.full-height { height: calc(100% - var(--spacing--2xs)); }


/* =============================================================
   23. USER-STACK / DROPDOWN
   ============================================================= */
ul.user-stack-list {
  gap: var(--spacing--sm);
  padding-bottom: var(--spacing--2xs);
  border: none;
  flex-direction: column;
  display: flex;
}
ul.user-stack-list .el-dropdown-menu__item { line-height: var(--line-height--md); }
ul.user-stack-list li:hover                { color: currentColor !important; }

.user-stack-popper {
  border: 1px solid var(--border-color--light);
  border-radius: var(--radius);
  padding: var(--spacing--5xs) 0;
  box-shadow: var(--shadow--card-hover);
  background-color: var(--color--background--light-3);
}


/* =============================================================
   24. COMMAND BAR (Transitions)
   ============================================================= */
.command-bar-enter-active { transition: opacity .1s ease-out, transform .1s ease-out; }
.command-bar-leave-active { transition: opacity .1s ease-in,  transform .1s ease-in; }

.command-bar-enter-from { opacity: 0; transform: translate(-50%) translateY(-20px) scale(.95); }
.command-bar-leave-to   { opacity: 0; transform: translate(-50%) translateY(-10px) scale(.98); }
.command-bar-enter-to,
.command-bar-leave-from { opacity: 1; transform: translate(-50%) translateY(0)     scale(1); }

.el-popper { pointer-events: auto; }


/* =============================================================
   25. CHAT MESSAGE (Bubble + Actions)
   ============================================================= */
.message-actions[data-v-41aa479b] {
  gap: var(--chat--message--actions--gap);
  margin: 0 var(--chat--message--actions--gap);
  align-items: center;
  display: inline-flex;
}
.icon[data-v-41aa479b]       { color: var(--chat--message--actions--color); cursor: pointer; }
.icon[data-v-41aa479b]:hover { color: var(--chat--message--actions--hover); }

.chat-message {
  max-width: fit-content;
  font-size:     var(--chat--message--font-size);
  padding:       var(--chat--message--padding);
  border-radius: var(--chat--message--border-radius);
  scroll-margin: 3rem;
  display: block;
  position: relative;
  overflow: hidden;
}

.chat-message .chat-message-actions {
  opacity: 0;
  gap: 1rem;
  display: flex;
  position: absolute;
  bottom: calc(100% - .5rem);
  left: 0;
  transform: translateY(-.25rem);
}
.chat-message.chat-message-from-user .chat-message-actions {
  left: auto;
  right: 0;
}
.chat-message:hover .chat-message-actions { opacity: 1; }

.chat-message p {
  line-height: var(--chat--message-line-height);
  word-wrap: break-word;
}
.chat-message + .chat-message { margin-top: var(--chat--message--margin-bottom); }

.chat-message.chat-message-from-user + .chat-message.chat-message-from-bot,
.chat-message.chat-message-from-bot  + .chat-message.chat-message-from-user {
  margin-top: var(--chat--spacing);
}

.chat-message.chat-message-from-bot:not(.chat-message-transparent) {
  background-color: var(--chat--message--bot--background);
  border:           var(--chat--message--bot--border);
}
.chat-message.chat-message-from-bot {
  color: var(--chat--message--bot--color);
  border-bottom-left-radius: 0;
}

.chat-message.chat-message-from-user:not(.chat-message-transparent) {
  background-color: var(--brand-color-main);
  border:           var(--chat--message--user--border);
}
.chat-message.chat-message-from-user {
  color: var(--chat--message--user--color);
  border-bottom-right-radius: 0;
  margin-left: auto;
}

.chat-message .chat-message-files {
  flex-wrap: wrap;
  gap: .25rem;
  padding-top: .5rem;
  display: flex;
}


/* =============================================================
   26. CHAT WINDOW (Floating Widget + Toggle)
   ============================================================= */
.chat-window-wrapper {
  bottom:  var(--chat--window--bottom);
  right:   var(--chat--window--right);
  z-index: var(--chat--window--z-index);
  max-width:  calc(100% - var(--chat--window--right,  var(--chat--spacing)) * 2);
  max-height: calc(100% - var(--chat--window--bottom, var(--chat--spacing)) * 2);
  flex-direction: column;
  display: flex;
  position: fixed;
}

.chat-window-wrapper .chat-window {
  width:         var(--chat--window--width);
  height:        var(--chat--window--height);
  border:        var(--chat--window--border, 1px solid var(--chat--color-light-shade-100));
  border-radius: var(--chat--window--border-radius, var(--chat--border-radius));
  max-width: 100%;
  max-height: 100%;
  margin-bottom: var(--chat--window--margin-bottom, var(--chat--spacing));
  transform-origin: 100% 100%;
  display: flex;
  overflow: hidden;
}
.chat-window-wrapper .chat-window .chat-layout {
  flex: 1;
  width: auto;
  height: auto;
}

.chat-window-wrapper .chat-window-toggle {
  background: var(--chat--toggle--background);
  color:      var(--chat--toggle--color);
  cursor: pointer;
  width:  var(--chat--toggle--width);
  height: var(--chat--toggle--height);
  border-radius: var(--chat--toggle--border-radius, 50%);
  transition:
    transform  var(--chat--transition-duration) ease,
    background var(--chat--transition-duration) ease;
  flex: none;
  justify-content: center;
  align-items: center;
  margin-left: auto;
  display: inline-flex;
}
.chat-window-wrapper .chat-window-toggle:hover,
.chat-window-wrapper .chat-window-toggle:focus {
  background: var(--chat--toggle--hover--background);
  transform: scale(1.05);
}
.chat-window-wrapper .chat-window-toggle:active {
  background: var(--chat--toggle--active--background);
  transform: scale(.95);
}

.chat-window-transition-enter-active,
.chat-window-transition-leave-active {
  transition:
    transform var(--chat--transition-duration) ease,
    opacity   var(--chat--transition-duration) ease;
}
.chat-window-transition-enter-from,
.chat-window-transition-leave-to { opacity: 0; transform: scale(0); }

.chat-window-toggle-transition-enter-active,
.chat-window-toggle-transition-leave-active {
  transition: opacity var(--chat--transition-duration) ease;
}
.chat-window-toggle-transition-enter-from,
.chat-window-toggle-transition-leave-to { opacity: 0; }


/* =============================================================
   27. TYPING INDICATOR
   ============================================================= */
.chat-message-typing { max-width: 80px; }

.chat-message-typing.chat-message-typing-animation-scaling .chat-message-typing-circle {
  animation: .8s ease-in-out 3.6s infinite chat-message-typing-animation-scaling;
}
.chat-message-typing.chat-message-typing-animation-bouncing .chat-message-typing-circle {
  animation: .8s ease-in-out 3.6s infinite chat-message-typing-animation-bouncing;
}

.chat-message-typing .chat-message-typing-body {
  justify-content: center;
  align-items: center;
  display: flex;
}
.chat-message-typing .chat-message-typing-circle {
  background-color: var(--chat--color-typing);
  border-radius: 50%;
  width: 10px;
  height: 10px;
  margin: 3px;
  display: block;
}
.chat-message-typing .chat-message-typing-circle:first-child  { animation-delay: 0s; }
.chat-message-typing .chat-message-typing-circle:nth-child(2) { animation-delay: .333s; }
.chat-message-typing .chat-message-typing-circle:nth-child(3) { animation-delay: .666s; }

@keyframes chat-message-typing-animation-scaling {
  0%   { transform: scale(1); }
  33%  { transform: scale(1); }
  50%  { transform: scale(1.4); }
  to   { transform: scale(1); }
}
@keyframes chat-message-typing-animation-bouncing {
  0%   { transform: translateY(0); }
  33%  { transform: translateY(0); }
  50%  { transform: translateY(-10px); }
  to   { transform: translateY(0); }
}


/* =============================================================
   28. MESSAGES LIST / EMPTY STATE
   ============================================================= */
.chat-messages-list {
  padding: var(--chat--messages-list--padding);
  margin-top: unset !important;
  display: block;
}

.empty-container {
  justify-content: center;
  align-items: center;
  display: flex;
  container-type: size;
}
.empty-container p { max-width: 16em; margin: 0; }

.empty {
  text-align: center;
  color: var(--color--text);
  justify-content: center;
  align-items: center;
  gap: var(--spacing--xs);
  padding-inline: var(--spacing--md);
  padding-bottom: var(--spacing--lg);
  flex-direction: column;
  display: flex;
  overflow: hidden;
}
.emptyIcon { zoom: 2.5; color: var(--color-button-secondary-border); }

@container (height < 150px) {
  .empty     { text-align: left; flex-direction: row; }
  .emptyIcon { zoom: 1.5; }
}


/* =============================================================
   29. CHAT HEADING / CLOSE BUTTON
   ============================================================= */
.chat-heading {
  justify-content: space-between;
  align-items: center;
  display: flex;
}
.chat-close-button {
  cursor: pointer;
  background: 0 0;
  border: none;
  display: flex;
}
.chat-close-button:hover {
  color: var(--chat--close--button--color-hover, var(--chat--color--primary));
}

/*$vite$:1*/