.theme-toggle {
  display: grid;
  width: 38px;
  height: 38px;
  padding: 0;
  place-items: center;
  border: 1px solid transparent;
  border-radius: 999px;
  color: var(--ink);
  background: transparent;
  cursor: pointer;
  transition: border-color 180ms ease, background 180ms ease, transform 180ms var(--ease);
}

.theme-toggle span {
  position: relative;
  display: block;
  width: 14px;
  height: 14px;
  border: 1.5px solid currentColor;
  border-radius: 50%;
}

.theme-toggle span::after {
  position: absolute;
  top: 2px;
  right: 2px;
  width: 5px;
  height: 5px;
  border-radius: 50%;
  background: var(--paper);
  content: "";
}

.theme-toggle:hover,
.theme-toggle:focus-visible {
  border-color: rgba(85, 241, 255, 0.42);
  background: rgba(85, 241, 255, 0.08);
  outline: none;
  transform: translateY(-1px);
}

@supports ((backdrop-filter: blur(9px)) or (-webkit-backdrop-filter: blur(9px))) {
  .theme-toggle,
  .contact-trigger,
  .quiet,
  .search-row input,
  .search-row select,
  .search-row .explore-button,
  .empty,
  .contact-option,
  .contact-dialog-close,
  .contact-option-action {
    -webkit-backdrop-filter: blur(9px);
    backdrop-filter: blur(9px);
  }
}

html[data-theme="light"] {
  color-scheme: light;
  --paper: #f4f6fa;
  --ink: #101827;
  --muted: #526174;
  --line: rgba(16, 24, 39, 0.2);
  --accent: #05798f;
  --violet: #6653ad;
}

html[data-theme="light"] .static-backdrop {
  opacity: 0.7;
}

html[data-theme="light"] body {
  background: var(--paper);
}

html[data-theme="light"] .search-row input,
html[data-theme="light"] select {
  border-color: rgba(16, 24, 39, 0.24);
  color: var(--ink);
  background: rgba(255, 255, 255, 0.68);
}

html[data-theme="light"] .search-row input::placeholder {
  color: rgba(16, 24, 39, 0.52);
}

html[data-theme="light"] .quiet,
html[data-theme="light"] .contact-trigger {
  border-color: rgba(16, 24, 39, 0.24);
  color: var(--ink);
  background: rgba(255, 255, 255, 0.5);
}

html[data-theme="light"] .search-row .explore-button {
  border-color: rgba(5, 121, 143, 0.48);
  color: #f8feff;
  background: linear-gradient(135deg, rgba(5, 121, 143, 0.88), rgba(102, 83, 173, 0.84)), rgba(255, 255, 255, 0.72);
  box-shadow: 0 0 30px rgba(5, 121, 143, 0.14);
}

html[data-theme="light"] .search-row .explore-button:hover,
html[data-theme="light"] .search-row .explore-button:focus-visible {
  border-color: rgba(5, 121, 143, 0.8);
  background: linear-gradient(135deg, rgba(5, 121, 143, 0.96), rgba(102, 83, 173, 0.9)), rgba(255, 255, 255, 0.8);
}

html[data-theme="light"] .card {
  border-color: rgba(16, 24, 39, 0.2);
  background: rgba(255, 255, 255, 0.74);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.92);
}

html[data-theme="light"] .card:hover {
  border-color: rgba(5, 121, 143, 0.58);
  background: rgba(255, 255, 255, 0.9);
}

@supports ((backdrop-filter: blur(9px)) or (-webkit-backdrop-filter: blur(9px))) {
  html[data-theme="light"] .card {
    background: rgba(255, 255, 255, 0.48);
  }

  html[data-theme="light"] .card:hover {
    background: rgba(255, 255, 255, 0.66);
  }
}

html[data-theme="light"] .empty {
  border-color: rgba(16, 24, 39, 0.2);
  color: var(--muted);
  background: rgba(255, 255, 255, 0.54);
}

html[data-theme="light"] .contact-dialog {
  border-color: rgba(16, 24, 39, 0.22);
  background: rgba(249, 251, 255, 0.72);
  box-shadow: 0 28px 100px rgba(27, 40, 66, 0.2);
}

html[data-theme="light"] .contact-dialog::backdrop {
  background: rgba(222, 229, 240, 0.7);
}

html[data-theme="light"] .contact-option {
  border-color: rgba(16, 24, 39, 0.18);
  background: rgba(255, 255, 255, 0.42);
}

html[data-theme="light"] .contact-option-email {
  color: rgba(16, 24, 39, 0.7);
}

html[data-theme="light"] .contact-option-email-row {
  border-color: rgba(16, 24, 39, 0.12);
}

html[data-theme="light"] .contact-dialog-close,
html[data-theme="light"] .contact-option-action {
  border-color: rgba(16, 24, 39, 0.2);
  color: var(--ink);
  background: rgba(255, 255, 255, 0.42);
}

html[data-theme="light"] .contact-dialog-close:hover,
html[data-theme="light"] .contact-dialog-close:focus-visible,
html[data-theme="light"] .contact-option-action:hover,
html[data-theme="light"] .contact-option-action:focus-visible {
  border-color: rgba(5, 121, 143, 0.52);
  background: rgba(5, 121, 143, 0.09);
}

html[data-theme="light"] .contact-dialog-kicker,
html[data-theme="light"] .contact-dialog-mark {
  color: rgba(5, 121, 143, 0.9);
}

html[data-theme="light"] .theme-toggle:hover,
html[data-theme="light"] .theme-toggle:focus-visible {
  border-color: rgba(5, 121, 143, 0.45);
  background: rgba(5, 121, 143, 0.08);
}

@supports ((backdrop-filter: blur(9px)) or (-webkit-backdrop-filter: blur(9px))) {
  .search {
    padding: 24px;
    border: 1px solid var(--line);
    border-radius: 8px;
    background: rgba(18, 28, 42, 0.16);
    -webkit-backdrop-filter: blur(9px);
    backdrop-filter: blur(9px);
  }

  .search-row input,
  .filter-row select,
  .quiet {
    background: rgba(18, 28, 42, 0.16);
  }

  .search-row .explore-button {
    background: linear-gradient(135deg, rgba(85, 241, 255, 0.22), rgba(125, 77, 255, 0.26)), rgba(18, 28, 42, 0.16);
  }

  html[data-theme="light"] .search {
    border-color: rgba(16, 24, 39, 0.2);
    background: rgba(255, 255, 255, 0.48);
  }

  html[data-theme="light"] .search-row input,
  html[data-theme="light"] .filter-row select,
  html[data-theme="light"] .quiet {
    background: rgba(255, 255, 255, 0.48);
  }

  html[data-theme="light"] .search-row .explore-button {
    background: linear-gradient(135deg, rgba(5, 121, 143, 0.72), rgba(102, 83, 173, 0.68)), rgba(255, 255, 255, 0.48);
  }
}

  html.catalog-pointer-focus .search-row input:focus,
  html.catalog-pointer-focus .filter-row select:focus {
    outline: none;
    box-shadow: none;
  }

  .agentic-widget { position: fixed; right: 18px; bottom: 18px; z-index: 12; display: flex; width: min(460px, calc(100vw - 32px)); justify-content: flex-end; font-family: var(--body); }
  .agentic-widget-launcher { display: inline-flex; width: max-content; padding: 9px 10px; align-items: center; gap: 8px; border: 1px solid rgba(224,237,255,.3); border-radius: 13px; color: var(--ink); background: rgba(3,4,10,.26); box-shadow: 0 8px 24px rgba(0,0,0,.18); -webkit-backdrop-filter: blur(7px); backdrop-filter: blur(7px); cursor: pointer; text-align: left; transition: border-color 180ms ease, background 180ms ease, transform 220ms var(--ease); }
  .agentic-widget-launcher:hover, .agentic-widget-launcher:focus-visible { border-color: rgba(85,241,255,.62); background: rgba(3,4,10,.4); outline: none; transform: translateY(-2px); }
  .agentic-widget-logo-link { display: block; border-radius: 5px; line-height: 0; }.agentic-widget-logo-link:hover, .agentic-widget-logo-link:focus-visible { outline: 1px solid rgba(85,241,255,.62); outline-offset: 3px; }.agentic-widget-logo { display: block; width: 32px; height: 32px; object-fit: contain; }
  .agentic-widget-launcher strong, .agentic-widget-launcher small { display: block; }.agentic-widget-launcher strong, .agentic-widget-header strong { color: var(--accent); font: .7rem/1 var(--mono); letter-spacing: .08em; }.agentic-widget-launcher small, .agentic-widget-heading > span > span { margin-top: 4px; color: rgba(240,244,255,.65); font: 400 .78rem/normal var(--body); }
  .agentic-widget-panel { display: none; overflow: hidden; border: 1px solid rgba(224,237,255,.26); border-radius: 16px; background: rgba(3,4,10,.22); box-shadow: none; -webkit-backdrop-filter: blur(9px); backdrop-filter: blur(9px); }.agentic-widget.is-open .agentic-widget-launcher { display: none; }.agentic-widget.is-open .agentic-widget-panel { display: flex; height: min(570px, calc(100svh - 44px)); flex-direction: column; animation: widget-rise 460ms var(--ease) both; }.agentic-widget.is-closing .agentic-widget-panel { display: flex; height: min(570px, calc(100svh - 44px)); flex-direction: column; pointer-events: none; animation: widget-fold 360ms ease-in both; }
  .agentic-widget-header { display: flex; padding: 14px 14px 12px; align-items: center; justify-content: space-between; border-bottom: 1px solid rgba(224,237,255,.16); }.agentic-widget-heading { display: flex; align-items: center; gap: 10px; }.agentic-widget-header strong, .agentic-widget-header span { display: block; }.agentic-widget-header button { display: grid; width: 30px; height: 30px; padding: 0; place-items: center; border: 1px solid rgba(224,237,255,.18); border-radius: 50%; color: var(--ink); background: transparent; font-size: 1.35rem; cursor: pointer; }.agentic-widget-header button:hover, .agentic-widget-header button:focus-visible { border-color: rgba(85,241,255,.56); outline: none; }
  .agentic-widget-messages { position: relative; overflow-anchor: none; display: flex; flex: 1; flex-direction: column; gap: 10px; min-height: 0; padding: 14px; overflow-y: auto; }.agentic-widget-message { flex-shrink: 0; max-width: 92%; padding: 11px 12px; border: 1px solid rgba(224,237,255,.13); border-radius: 10px; color: rgba(240,244,255,.88); background: rgba(255,255,255,.045); font-size: .9rem; line-height: 1.46; white-space: pre-wrap; animation: widget-message-in 420ms var(--ease) both; }.agentic-widget-message.user { align-self: flex-end; border-color: rgba(85,241,255,.34); background: rgba(85,241,255,.09); }.agentic-widget-status { min-height: 19px; margin: 0; padding: 0 14px 7px; color: rgba(85,241,255,.78); font-size: .72rem; }.agentic-widget-message a { color: var(--accent); text-decoration: underline; text-underline-offset: 2px; }.agentic-widget-message code { padding: 1px 4px; border: 1px solid rgba(224,237,255,.16); border-radius: 4px; color: rgba(240,244,255,.94); background: rgba(255,255,255,.08); font: .84em/1.2 var(--mono); }.agentic-widget-message strong { color: var(--ink); }.agentic-widget-message em { color: rgba(240,244,255,.94); }.agentic-widget-message.terms-notice { padding-block: 7px; color: rgba(240,244,255,.62); font-size: .72rem; }
  .agentic-widget-form { display: flex; gap: 8px; padding: 12px; border-top: 1px solid rgba(224,237,255,.16); }.agentic-widget-form textarea { width: 100%; min-width: 0; min-height: 40px; max-height: 180px; padding: 10px; resize: none; border: 1px solid rgba(224,237,255,.18); border-radius: 8px; color: var(--ink); background: rgba(3,4,10,.12); font: .84rem/1.35 var(--body); }.agentic-widget-form textarea:focus { border-color: rgba(85,241,255,.28); background: rgba(85,241,255,.035); box-shadow: none; outline: none; }.agentic-widget-form button { padding: 0 13px; border: 1px solid rgba(85,241,255,.48); border-radius: 8px; color: var(--accent); background: rgba(85,241,255,.08); font: .78rem var(--body); cursor: pointer; }.agentic-widget-form button:hover, .agentic-widget-form button:focus-visible { background: rgba(85,241,255,.16); outline: none; }
  .agentic-widget-illuminator-link { color: inherit; text-decoration: none; }.agentic-widget-illuminator-link:hover, .agentic-widget-illuminator-link:focus-visible { color: var(--accent); text-decoration: underline; text-underline-offset: 3px; outline: none; }.agentic-widget.agentic-widget-initial .agentic-widget-launcher { animation: widget-launcher-in 620ms var(--ease) 620ms both; }.agentic-widget.is-just-closed .agentic-widget-launcher { animation: widget-launcher-in 360ms var(--ease) both; }
  @keyframes widget-rise { from { opacity: 0; transform: translateY(26px) scale(.92); } to { opacity: 1; transform: translateY(0) scale(1); } } @keyframes widget-fold { from { opacity: 1; transform: translateY(0) scale(1); } to { opacity: 0; transform: translateY(18px) scale(.94); } } @keyframes widget-message-in { from { opacity: 0; filter: blur(4px); } to { opacity: 1; filter: blur(0); } } @keyframes widget-launcher-in { from { opacity: 0; transform: translateY(10px) scale(.96); } to { opacity: 1; transform: translateY(0) scale(1); } }

  html[data-theme="light"] .agentic-widget-launcher, html[data-theme="light"] .agentic-widget-panel { border-color: rgba(16,24,39,.22); background: rgba(255,255,255,.34); box-shadow: 0 18px 48px rgba(27,40,66,.16); }html[data-theme="light"] .agentic-widget-launcher:hover, html[data-theme="light"] .agentic-widget-launcher:focus-visible { border-color: rgba(5,121,143,.58); background: rgba(255,255,255,.44); }html[data-theme="light"] .agentic-widget-header, html[data-theme="light"] .agentic-widget-form { border-color: rgba(16,24,39,.14); }html[data-theme="light"] .agentic-widget-header span, html[data-theme="light"] .agentic-widget-launcher small, html[data-theme="light"] .agentic-widget-message { color: rgba(16,24,39,.74); }html[data-theme="light"] .agentic-widget-message { border-color: rgba(16,24,39,.14); background: rgba(255,255,255,.3); }html[data-theme="light"] .agentic-widget-header button, html[data-theme="light"] .agentic-widget-form textarea { border-color: rgba(16,24,39,.2); color: var(--ink); background: rgba(255,255,255,.36); }html[data-theme="light"] .agentic-widget-form textarea:focus { border-color: rgba(5,121,143,.42); background: rgba(255,255,255,.46); }
html[data-theme="light"] .agentic-widget-message em,
html[data-theme="light"] .agentic-widget-message code {
  color: var(--ink);
}

html[data-theme="light"] .agentic-widget-message code {
  border-color: var(--line);
  background: rgba(16, 24, 39, 0.06);
}

html[data-theme="light"] .agentic-widget-status {
  color: var(--accent);
}

  @media (max-width: 480px) { .agentic-widget { right: 16px; bottom: 16px; width: calc(100vw - 32px); }.agentic-widget.is-open .agentic-widget-panel, .agentic-widget.is-closing .agentic-widget-panel { height: calc(100dvh - 32px); max-height: calc(100dvh - 32px); }.agentic-widget-messages { overscroll-behavior: contain; }.agentic-widget-form { flex: 0 0 auto; }.agentic-widget-form textarea { font-size: 16px; } }
