@font-face {
  font-family: "Fazer";
  src: url("../../public/fonts/Fazer-Regular.woff2") format("woff2");
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: "Fazer";
  src: url("../../public/fonts/Fazer-Italic.woff2") format("woff2");
  font-weight: 400;
  font-style: italic;
  font-display: swap;
}

@font-face {
  font-family: "Fazer";
  src: url("../../public/fonts/FazerSemiBold-Regular.woff2") format("woff2");
  font-weight: 650;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: "Fazer";
  src: url("../../public/fonts/FazerSemiBold-Italic.woff2") format("woff2");
  font-weight: 650;
  font-style: italic;
  font-display: swap;
}

:root {
  --app-font: "Fazer", ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  --color-purple: #6959ad;
  --color-intro-purple: #6b5bb1;
  --color-purple-light: #9788d6;
  --color-chat-light: #e7e3fb;
  --color-chat-question: #d2cceb;
  --color-chat-dark: #4c4373;
  --color-white: #ffffff;
  --color-black: #000000;
  --color-gray-dark: #2b2b2b;
  --color-gray: #828282;
  --color-paper: #ffffff;
}

.theme-franz-marc .header-top {
  color: var(--color-white);
  background: var(--color-black);
}

.theme-franz-marc .header-main {
  color: var(--color-black);
  background: var(--color-white);
}

.theme-franz-marc .brand-tsoa {
  font-weight: 650;
  letter-spacing: 0.05em;
}

.theme-franz-marc .header-top .brand-logo-tsoa {
  filter: invert(1);
}

.theme-franz-marc .header-top .brand-logo-hirmer {
  filter: invert(1);
}

.theme-franz-marc .brand-fmm {
  font-size: 18px;
}

.theme-franz-marc .intro-screen {
  color: var(--color-black);
  background: var(--color-intro-purple);
}

.theme-franz-marc .intro-screen .intro-tsoa {
  font-size: clamp(64px, 20vw, 160px);
}

.theme-franz-marc .intro-screen .intro-fmm {
  font-size: clamp(28px, 9vw, 68px);
}

.theme-dark.theme-franz-marc .header-top {
  color: #000000;
  background: #ffffff;
}

.theme-dark.theme-franz-marc .header-main {
  color: #ffffff;
  background: #2b2b2b;
}

.theme-dark.theme-franz-marc .brand-tsoa,
.theme-dark.theme-franz-marc .brand-hirmer {
  color: #000000;
}

.theme-dark.theme-franz-marc .header-top .brand-logo-tsoa {
  filter: none;
}

.theme-dark.theme-franz-marc .header-top .brand-logo-hirmer {
  filter: none;
}

.theme-dark.theme-franz-marc .header-main .brand-logo-fmm {
  filter: invert(1);
}

.theme-dark.theme-franz-marc .header-main .asset-icon-button img,
.theme-dark.theme-franz-marc .detail-back-bar .asset-icon-button img,
.theme-dark.theme-franz-marc .menu-overlay .close-button img,
.theme-dark.theme-franz-marc .menu-tools img,
.theme-dark.theme-franz-marc .filter-toggle img,
.theme-dark.theme-franz-marc .card-arrow img {
  filter: invert(1);
}

.theme-dark.theme-franz-marc .chat-button img,
.theme-dark.theme-franz-marc .media-action img {
  filter: none;
}

.theme-dark.theme-franz-marc .lw-panel.museum-chat-panel {
  color: #ffffff !important;
  background: var(--color-chat-dark) !important;
}

.theme-dark.theme-franz-marc .lw-panel.museum-chat-panel .lw-body {
  color: #ffffff !important;
}

.theme-dark.theme-franz-marc .museum-chat-suggestion {
  color: #ffffff;
  background: #2b2b2b;
}

.theme-dark.theme-franz-marc .museum-chat-suggestion-arrow,
.theme-dark.theme-franz-marc .museum-chat-sources summary {
  color: var(--color-purple-light);
}

.theme-dark.theme-franz-marc .lw-panel.museum-chat-panel .lw-msg.me {
  color: #ffffff !important;
  background: var(--color-purple) !important;
}

.theme-dark.theme-franz-marc .lw-panel.museum-chat-panel .lw-msg.ai {
  color: #ffffff !important;
}

.theme-dark.theme-franz-marc .lw-panel.museum-chat-panel .lw-msg strong:not(.museum-chat-sender-label) {
  color: #ffffff !important;
  font-weight: inherit !important;
}

.theme-dark.theme-franz-marc .lw-panel.museum-chat-panel .lw-input {
  color: var(--color-purple-light) !important;
  background: #2b2b2b !important;
  border-color: var(--color-purple-light) !important;
}

.theme-dark.theme-franz-marc .lw-panel.museum-chat-panel .lw-input input {
  color: #ffffff !important;
}

.theme-dark.theme-franz-marc .lw-panel.museum-chat-panel .lw-input input::placeholder {
  color: #ffffff !important;
}

.theme-dark.theme-franz-marc .lw-panel.museum-chat-panel .lw-input button {
  color: #ffffff !important;
  background: var(--color-purple) !important;
}

.theme-dark.theme-franz-marc .lw-panel.museum-chat-panel .lw-input .museum-chat-voice-button {
  color: #ffffff !important;
  background: transparent !important;
}

.theme-dark.theme-franz-marc .lw-panel.museum-chat-panel .museum-chat-voice-button img {
  filter: invert(1);
}

.theme-dark.theme-franz-marc .lw-panel.museum-chat-panel .museum-chat-voice-button.is-listening img {
  filter: invert(24%) sepia(84%) saturate(2488%) hue-rotate(348deg) brightness(93%) contrast(89%) drop-shadow(0 0 8px rgba(217, 45, 32, 0.45));
}
