body.tbz-ui21 {
  --u-bg: #f3f5f9;
  --u-surface: #ffffff;
  --u-line: #dfe5ee;
  --u-line-2: #eaeef4;
  --u-line-3: #c9d2de;
  --u-ink: #0f172a;
  --u-ink-2: #273449;
  --u-ink-3: #46566b;
  --u-mute: #526176;
  --u-teal: #0a7c91;
  --u-teal-d: #075d6e;
  --u-teal-dd: #054b59;
  --u-teal-50: #e9f5f7;
  --u-teal-100: #d3ebf0;
  --u-gold: #8a4b07;
  --u-gold-50: #fdf3dc;
  --u-gold-line: #f0cf86;
  --u-danger: #b91c1c;
  --u-danger-50: #fdeeee;
  --u-ok: #0f6b4f;
  --u-ok-50: #e7f6ef;
  --u-r-sm: 10px;
  --u-r: 14px;
  --u-r-lg: 20px;
  --u-r-pill: 999px;
  --u-sh-1: 0 1px 2px rgba(15, 23, 42, .06), 0 1px 1px rgba(15, 23, 42, .03);
  --u-sh-2: 0 12px 32px -14px rgba(15, 23, 42, .22), 0 2px 6px rgba(15, 23, 42, .05);
  --u-col: 760px;
  --u-wide: 1080px;
  --u-app-top: 56px;
  --tbz-ag-bg: #f3f5f9;
  --tbz-ag-bg-soft: #eaeef4;
  --tbz-ag-card-2: #ffffff;
  --tbz-ag-border: #dfe5ee;
  --tbz-ag-border-soft: #eaeef4;
  --tbz-ag-border-strong: #c9d2de;
  --tbz-ag-text: #0f172a;
  --tbz-ag-text-2: #273449;
  --tbz-ag-muted: #46566b;
  --tbz-ag-muted-2: #526176;
  --tbz-ag-accent-l: #e9f5f7;
  --tbz-ag-accent-l2: #f2f9fa;
  --tbz-ag-sh-glow: 0 0 0 4px rgba(10, 124, 145, .16);
  --tbz-ag-accent-grad: linear-gradient(135deg, #0a7c91 0%, #086a7c 100%);
  background: var(--u-bg);
  color: var(--u-ink);
}
body.tbz-ui21 [hidden] { display: none !important; }

body.tbz-ui21 a:focus-visible,
body.tbz-ui21 button:focus-visible,
body.tbz-ui21 input:focus-visible,
body.tbz-ui21 select:focus-visible,
body.tbz-ui21 textarea:focus-visible,
body.tbz-ui21 [role="button"]:focus-visible,
body.tbz-ui21 [tabindex]:focus-visible,
body.tbz-ui21 summary:focus-visible,
body.tbz-ui21 label:focus-visible {
  outline: 3px solid var(--u-teal) !important;
  outline-offset: 2px !important;
}
body.tbz-ui21 .tbz-chat-topbar a:focus-visible,
body.tbz-ui21 .tbz-chat-topbar button:focus-visible { outline-color: #67e8f9 !important; }
body.tbz-ui21 .tbz-agent-app .tbz-agent-stream:focus-visible { outline-offset: -3px !important; }
body.tbz-ui21 .tbz-agent-app .tbz-agent-input-wrap textarea:focus-visible { outline: none !important; }

body.tbz-ui21 .tbz-chat-topbar { height: 56px; }
body.tbz-ui21 .tbz-chat-topbar-right { gap: 6px; }
body.tbz-ui21 .tbz-chat-account-link,
body.tbz-ui21 .tbz-chat-back-link,
body.tbz-ui21 a.tbz-chat-tier-badge {
  min-height: 44px;
  min-width: 44px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  border-radius: var(--u-r-pill);
  font-size: 13.5px;
  font-weight: 600;
  text-decoration: none;
}
body.tbz-ui21 .tbz-chat-account-link {
  padding: 0 12px;
  color: rgba(255, 255, 255, .86);
}
body.tbz-ui21 .tbz-chat-account-link:hover { color: #fff; background: rgba(255, 255, 255, .1); }
body.tbz-ui21 .tbz-chat-account-link i { font-size: 15px; }
body.tbz-ui21 .tbz-chat-back-link {
  padding: 0 14px;
  color: #fff;
  background: rgba(255, 255, 255, .08);
  border: 1px solid rgba(255, 255, 255, .24);
}
body.tbz-ui21 .tbz-chat-back-link:hover { background: rgba(255, 255, 255, .16); border-color: rgba(255, 255, 255, .4); }
body.tbz-ui21 a.tbz-chat-tier-badge.tbz-chat-tier--anon {
  padding: 0 16px;
  color: #ffffff;
  background: rgba(255, 255, 255, .1);
  border: 1px solid rgba(255, 255, 255, .3);
  letter-spacing: 0;
  text-transform: none;
}
body.tbz-ui21 a.tbz-chat-tier-badge.tbz-chat-tier--anon:hover { background: rgba(255, 255, 255, .18); }
body.tbz-ui21 .tbz-chat-tier--essentiel { color: #e2e8f0; border-color: rgba(255, 255, 255, .3); }
@media (max-width: 480px) {
  body.tbz-ui21 .tbz-chat-topbar-inner { padding: 0 8px 0 12px; gap: 6px; }
  body.tbz-ui21 .tbz-chat-back-link { padding: 0 12px; }
  body.tbz-ui21 .tbz-chat-tier-badge:not(a) { display: none; }
}

body.tbz-ui21 .tbz-agent-news-banner {
  align-items: center;
  gap: 10px;
  padding: 0 4px 0 16px;
  min-height: 44px;
  background: var(--u-teal-50);
  border-bottom: 1px solid var(--u-teal-100);
  box-shadow: none;
  color: var(--u-ink-2);
  font-size: 14px;
  line-height: 1.45;
}
body.tbz-ui21 .tbz-agent-news-banner > i:first-child { color: var(--u-teal-d); font-size: 15px; }
body.tbz-ui21 .tbz-agent-news-banner-text { padding: 8px 0; }
body.tbz-ui21 .tbz-agent-news-banner-text strong { color: var(--u-teal-dd); }
body.tbz-ui21 .tbz-agent-news-banner-close {
  width: 44px;
  height: 44px;
  padding: 0;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: var(--u-r-pill);
  color: var(--u-teal-dd);
}
body.tbz-ui21 .tbz-agent-news-banner-close:hover { background: rgba(10, 124, 145, .12); }
@media (max-width: 599.98px) {
  body.tbz-ui21 .tbz-agent-news-banner { flex-wrap: nowrap; align-items: flex-start; font-size: 13.5px; padding-left: 14px; }
  body.tbz-ui21 .tbz-agent-news-banner > i:first-child { display: none; }
  body.tbz-ui21 .tbz-agent-news-banner-close { order: 0; flex: 0 0 44px; }
}

body.tbz-ui21 .tbz-agent-shell {
  background: var(--u-bg);
  color: var(--u-ink);
  padding-bottom: 0 !important;
}
body.tbz-ui21 .tbz-agent-app .tbz-agent-main { background: var(--u-bg); }

html body.tbz-ui21 .tbz-agent-shell .tbz-agent-app[data-state="chat"] {
  height: calc(100vh - var(--u-app-top)) !important;
  height: calc(100dvh - var(--u-app-top)) !important;
  min-height: 420px;
  max-height: none;
}
body.tbz-ui21:has(.tbz-agent-app[data-state="chat"]) .tbz-agent-news-banner { display: none !important; }
body.tbz-ui21.tbz-u21-chat .tbz-agent-news-banner { display: none !important; }

body.tbz-ui21 .tbz-agent-app .tbz-agent-sidebar {
  background: var(--u-surface);
  border-right: 1px solid var(--u-line);
}
body.tbz-ui21 .tbz-agent-app .tbz-agent-sidebar-header { padding: 14px 12px 10px; gap: 6px; }
body.tbz-ui21 .tbz-agent-app .tbz-agent-newconv {
  min-height: 44px;
  justify-content: center;
  background: var(--u-teal);
  border: 1px solid var(--u-teal);
  color: #fff;
  font-weight: 600;
  font-size: 14.5px;
  box-shadow: var(--u-sh-1);
}
body.tbz-ui21 .tbz-agent-app .tbz-agent-newconv i { color: #fff; }
body.tbz-ui21 .tbz-agent-app .tbz-agent-newconv:hover { background: var(--u-teal-dd); border-color: var(--u-teal-dd); color: #fff; }
body.tbz-ui21 .tbz-agent-app .tbz-agent-sidebar-collapse,
body.tbz-ui21 .tbz-agent-app .tbz-agent-sidebar-close {
  width: 44px;
  height: 44px;
  border-radius: 12px;
  color: var(--u-ink-3);
}
body.tbz-ui21 .tbz-agent-app .tbz-agent-sidebar-search { padding: 2px 12px 10px; }
body.tbz-ui21 .tbz-agent-app .tbz-agent-sidebar-search input {
  min-height: 44px;
  font-size: 14.5px;
  background: var(--u-bg);
  border: 1px solid transparent;
  color: var(--u-ink);
}
body.tbz-ui21 .tbz-agent-app .tbz-agent-sidebar-search input::placeholder { color: var(--u-mute); opacity: 1; }
body.tbz-ui21 .tbz-agent-app .tbz-agent-sidebar-search input:focus { border-color: var(--u-teal); background: var(--u-surface); }
body.tbz-ui21 .tbz-agent-app .tbz-agent-sidebar-search i { color: var(--u-mute); top: 50%; transform: translateY(-50%); margin-top: -4px; }
body.tbz-ui21 .tbz-agent-app .tbz-agent-conv-item {
  min-height: 52px;
  border-radius: 12px;
}
body.tbz-ui21 .tbz-agent-app .tbz-agent-conv-item:hover { background: var(--u-bg); }
body.tbz-ui21 .tbz-agent-app .tbz-agent-conv-item.is-active { background: var(--u-teal-50); }
body.tbz-ui21 .tbz-agent-app .tbz-agent-conv-item-title { color: var(--u-ink); font-size: 14px; font-weight: 500; }
body.tbz-ui21 .tbz-agent-app .tbz-agent-conv-item.is-active .tbz-agent-conv-item-title { color: var(--u-teal-dd); font-weight: 600; }
body.tbz-ui21 .tbz-agent-app .tbz-agent-conv-item-meta,
body.tbz-ui21 .tbz-agent-app .tbz-agent-conv-item-date,
body.tbz-ui21 .tbz-agent-app .tbz-agent-conv-item-credits { color: var(--u-mute); font-size: 12.5px; }
body.tbz-ui21 .tbz-agent-app .tbz-agent-conv-item-actions button,
body.tbz-ui21 .tbz-agent-app .tbz-agent-conv-item-action {
  min-width: 44px;
  min-height: 44px;
  border-radius: 10px;
  color: var(--u-ink-3);
}
body.tbz-ui21 .tbz-agent-app .tbz-agent-conv-item-actions { gap: 0; align-self: center; margin: 0; }
body.tbz-ui21 .tbz-agent-app .tbz-agent-conv-item-date > span[aria-hidden="true"] { color: var(--u-mute) !important; }
body.tbz-ui21 .tbz-agent-app .tbz-agent-conv-item.is-active .tbz-agent-conv-item-date,
body.tbz-ui21 .tbz-agent-app .tbz-agent-conv-item.is-active .tbz-agent-conv-item-date > span[aria-hidden="true"],
body.tbz-ui21 .tbz-agent-app .tbz-agent-conv-item.is-active .tbz-agent-conv-item-credits { color: var(--u-teal-d) !important; }
body.tbz-ui21 .tbz-agent-app .tbz-agent-conv-item-empty { color: var(--u-mute) !important; }
body.tbz-ui21 .tbz-agent-app .tbz-agent-conv-more-btn {
  min-height: 44px;
  color: var(--u-teal-d);
  border-color: var(--u-line-3);
  font-size: 13.5px;
}
body.tbz-ui21 .tbz-agent-app .tbz-agent-conv-more-btn:hover { color: var(--u-teal-dd); border-color: var(--u-teal); background: var(--u-teal-50); }
body.tbz-ui21 .tbz-agent-app .tbz-agent-conv-more,
body.tbz-ui21 .tbz-agent-app .tbz-agent-conv-show-more {
  min-height: 44px;
  color: var(--u-teal-d);
  font-weight: 600;
  border-color: var(--u-line);
}
body.tbz-ui21 .tbz-agent-app .tbz-agent-sidebar-footer { border-top: 1px solid var(--u-line); background: var(--u-surface); }
body.tbz-ui21 .tbz-agent-app .tbz-agent-quota-compact {
  border-radius: var(--u-r);
  border: 1px solid var(--u-line);
  background: var(--u-bg);
  box-shadow: none;
}
body.tbz-ui21 .tbz-agent-app .tbz-agent-quota-compact-label { color: var(--u-ink-3); font-size: 12.5px; letter-spacing: .04em; }
body.tbz-ui21 .tbz-agent-app .tbz-agent-quota-compact-total { color: var(--u-ink); font-variant-numeric: tabular-nums; }
body.tbz-ui21 .tbz-agent-app .tbz-agent-quota-chip {
  background: var(--u-surface);
  border: 1px solid var(--u-line);
  color: var(--u-ink-2);
  font-size: 12.5px;
}
body.tbz-ui21 .tbz-agent-app .tbz-agent-quota-compact-reset { color: var(--u-mute); font-size: 12.5px; font-style: normal; }
body.tbz-ui21 .tbz-agent-app .tbz-agent-quota-compact-cta,
body.tbz-ui21 .tbz-agent-app .tbz-agent-quota-locked-cta {
  min-height: 44px;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  border-radius: var(--u-r-pill);
  font-weight: 600;
  font-size: 14px;
}
body.tbz-ui21 .tbz-agent-app .tbz-agent-quota-compact-cta { background: var(--u-teal); color: #fff; border: 0; }
body.tbz-ui21 .tbz-agent-app .tbz-agent-quota-compact-cta:hover { background: var(--u-teal-dd); color: #fff; }
body.tbz-ui21 .tbz-agent-app .tbz-agent-quota-locked-cta { background: var(--u-surface); color: var(--u-teal-dd); border: 1px solid var(--u-line); }
body.tbz-ui21 .tbz-agent-app .tbz-agent-quota-locked-cta:hover { border-color: var(--u-teal); }
body.tbz-ui21 .tbz-agent-app .tbz-agent-quota-block-hint { color: var(--u-ink-3); }
body.tbz-ui21 .tbz-agent-app .tbz-agent-sidebar-options-toggle {
  min-height: 44px;
  width: 100%;
  border-radius: 12px;
  color: var(--u-ink-2);
  font-weight: 600;
  font-size: 14px;
}
body.tbz-ui21 .tbz-agent-app .tbz-agent-sidebar-options-toggle:hover { background: var(--u-bg); }
body.tbz-ui21 .tbz-agent-app .tbz-agent-settings-btn,
body.tbz-ui21 .tbz-agent-app .tbz-agent-delete-all {
  min-height: 44px;
  border-radius: 12px;
  font-size: 14px;
  color: var(--u-ink-2);
}
body.tbz-ui21 .tbz-agent-app .tbz-agent-settings-btn:hover { background: var(--u-bg); color: var(--u-ink); }
body.tbz-ui21 .tbz-agent-app .tbz-agent-delete-all { color: var(--u-danger); }
body.tbz-ui21 .tbz-agent-app .tbz-agent-delete-all:hover { background: var(--u-danger-50); color: var(--u-danger); }

@media (max-width: 1199.98px) {
  body.tbz-ui21 .tbz-agent-app .tbz-agent-sidebar {
    position: fixed;
    top: 0;
    bottom: 0;
    left: 0;
    z-index: 2100;
    width: min(340px, 88vw);
    max-height: none;
    height: 100%;
    height: 100dvh;
    box-shadow: none;
    visibility: hidden;
    transition: transform .28s ease, visibility 0s linear .28s;
  }
  body.tbz-ui21 .tbz-agent-app .tbz-agent-sidebar.is-open {
    box-shadow: 0 0 0 1px var(--u-line), 0 24px 60px rgba(15, 23, 42, .28);
    visibility: visible;
    transition: transform .28s ease, visibility 0s;
  }
  body.tbz-ui21 .tbz-agent-app .tbz-agent-overlay { z-index: 2090; background: rgba(15, 23, 42, .45); }
  body.tbz-ui21.tbz-u21-tiroir { overflow: hidden; }
  body.tbz-ui21:has(.tbz-agent-sidebar.is-open) { overflow: hidden; }
}

body.tbz-ui21 .tbz-agent-app .tbz-agent-topbar {
  gap: 6px;
  padding: 6px 16px;
  min-height: 56px;
  background: var(--u-bg);
}
body.tbz-ui21 .tbz-agent-app[data-state="chat"] .tbz-agent-topbar {
  background: rgba(243, 245, 249, .96);
  border-bottom: 1px solid var(--u-line);
}
body.tbz-ui21 .tbz-agent-app[data-state="empty"] .tbz-agent-topbar { padding: 6px 16px; min-height: 56px; }
body.tbz-ui21 .tbz-agent-app .tbz-agent-burger,
body.tbz-ui21 .tbz-agent-app .tbz-agent-icon-btn {
  width: 44px;
  height: 44px;
  border-radius: 12px;
  border: 1px solid transparent;
  background: transparent;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: var(--u-ink-3);
}
body.tbz-ui21 .tbz-agent-app .tbz-agent-burger { border-color: var(--u-line); background: var(--u-surface); }
body.tbz-ui21 .tbz-agent-app .tbz-agent-burger:hover,
body.tbz-ui21 .tbz-agent-app .tbz-agent-icon-btn:hover { background: var(--u-line-2); color: var(--u-ink); }
body.tbz-ui21 .tbz-agent-app .tbz-agent-icon-btn.is-danger:hover { background: var(--u-danger-50); color: var(--u-danger); }
body.tbz-ui21 .tbz-agent-app .tbz-agent-conv-title { font-size: 15.5px; color: var(--u-ink); min-height: 32px; display: flex; align-items: center; }
body.tbz-ui21 .tbz-agent-app .tbz-agent-actions { gap: 4px; }
body.tbz-ui21 .tbz-agent-app .tbz-agent-db-status {
  width: 44px;
  height: 44px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}
body.tbz-ui21 .tbz-agent-app .tbz-agent-balance-badge {
  min-height: 44px;
  padding: 0 14px;
  border-radius: var(--u-r-pill);
  background: var(--u-surface);
  border: 1px solid var(--u-line);
  color: var(--u-ink);
  font-weight: 600;
  font-size: 14px;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  box-shadow: var(--u-sh-1);
  font-variant-numeric: tabular-nums;
}
body.tbz-ui21 .tbz-agent-app .tbz-agent-balance-badge i { color: var(--u-teal); }
body.tbz-ui21 .tbz-agent-app .tbz-agent-balance-badge:hover { border-color: var(--u-teal); color: var(--u-teal-dd); }
body.tbz-ui21 .tbz-agent-app .tbz-agent-export-menu {
  border-radius: var(--u-r);
  border: 1px solid var(--u-line);
  box-shadow: var(--u-sh-2);
  padding: 6px;
}
body.tbz-ui21 .tbz-agent-app .tbz-agent-export-item {
  min-height: 44px;
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 0 12px;
  border-radius: var(--u-r-sm);
  color: var(--u-ink-2);
  font-size: 14px;
}
body.tbz-ui21 .tbz-agent-app .tbz-agent-export-item:hover { background: var(--u-bg); color: var(--u-ink); }
@media (min-width: 1200px) {
  body.tbz-ui21 .tbz-agent-app[data-state="empty"]:not([data-tier="anon"]) .tbz-agent-topbar { display: none; }
}

body.tbz-ui21 .tbz-u21-solde {
  display: none;
}

body.tbz-ui21 .tbz-agent-app .tbz-agent-next-races {
  width: calc(100% - 32px);
  max-width: var(--u-col);
  margin: 16px auto 0;
  padding: 14px 16px 16px;
  gap: 10px;
  border-radius: var(--u-r);
  border: 1px solid var(--u-line);
  background: var(--u-surface);
  box-shadow: var(--u-sh-1);
}
body.tbz-ui21 .tbz-agent-app .tbz-agent-next-races-label {
  color: var(--u-ink-2);
  font-size: 13px;
  font-weight: 700;
  letter-spacing: .04em;
  text-transform: uppercase;
}
body.tbz-ui21 .tbz-agent-app .tbz-agent-next-races-label i { color: var(--u-teal); }
body.tbz-ui21 .tbz-agent-app .tbz-agent-next-races-list {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 200px), 1fr));
  gap: 10px;
  overflow: visible;
}
body.tbz-ui21 .tbz-agent-app .tbz-agent-next-race-card {
  display: grid;
  grid-template-columns: auto 1fr auto;
  grid-template-areas: "heure heure compte" "hippo hippo hippo" "code partants partants" "quinte quinte quinte";
  align-items: center;
  gap: 4px 8px;
  min-height: 92px;
  width: auto;
  padding: 12px 14px;
  border-radius: var(--u-r);
  border: 1px solid var(--u-line);
  background: var(--u-surface);
  box-shadow: none;
  text-align: left;
  color: var(--u-ink);
}
body.tbz-ui21 .tbz-agent-app .tbz-agent-next-race-card:not(:has(.tbz-agent-next-race-quinte)) {
  grid-template-areas: "heure heure compte" "hippo hippo hippo" "code partants partants";
}
body.tbz-ui21 .tbz-agent-app .tbz-agent-next-race-card::after,
body.tbz-ui21 .tbz-agent-app .tbz-agent-next-race-card::before { display: none; }
body.tbz-ui21 .tbz-agent-app .tbz-agent-next-race-card:hover {
  border-color: var(--u-teal);
  box-shadow: var(--u-sh-2);
  transform: none;
  padding: 12px 14px;
}
body.tbz-ui21 .tbz-agent-app .tbz-agent-next-race-sep { display: none; }
body.tbz-ui21 .tbz-agent-app .tbz-agent-next-race-time {
  grid-area: heure;
  font-size: 20px;
  font-weight: 700;
  letter-spacing: -.01em;
  color: var(--u-ink);
  font-variant-numeric: tabular-nums;
}
body.tbz-ui21 .tbz-agent-app .tbz-agent-next-race-count {
  grid-area: compte;
  justify-self: end;
  font-size: 12.5px;
  font-weight: 700;
  color: var(--u-teal-dd);
  background: var(--u-teal-50);
  border-radius: var(--u-r-pill);
  padding: 3px 10px;
  white-space: nowrap;
}
body.tbz-ui21 .tbz-agent-app .tbz-agent-next-race-card.is-imminent .tbz-agent-next-race-count { color: #fff; background: #9a4a06; }
body.tbz-ui21 .tbz-agent-app .tbz-agent-next-race-hippo {
  grid-area: hippo;
  max-width: none;
  font-size: 14px;
  font-weight: 600;
  line-height: 1.3;
  color: var(--u-ink-2);
  overflow: visible;
  text-overflow: clip;
  white-space: normal;
  overflow-wrap: break-word;
}
body.tbz-ui21 .tbz-agent-app .tbz-agent-next-race-code {
  grid-area: code;
  justify-self: start;
  font-size: 12.5px;
  font-weight: 700;
  color: var(--u-ink-3);
  background: transparent;
  border: 1px solid var(--u-line);
  border-radius: 8px;
  padding: 1px 7px;
}
body.tbz-ui21 .tbz-agent-app .tbz-agent-next-race-partants { grid-area: partants; font-size: 13px; color: var(--u-mute); }
body.tbz-ui21 .tbz-agent-app .tbz-agent-next-race-quinte {
  grid-area: quinte;
  justify-self: start;
  margin-top: 4px;
  color: var(--u-gold);
  background: var(--u-gold-50);
  border: 1px solid var(--u-gold-line);
}
body.tbz-ui21 .tbz-agent-app .tbz-agent-next-races-msg { color: var(--u-ink-3); font-size: 14px; }
@media (max-width: 1024px) {
  body.tbz-ui21 .tbz-agent-app[data-state="empty"] .tbz-agent-next-races:not([hidden]) { display: flex !important; }
}
@media (max-width: 767.98px) {
  body.tbz-ui21 .tbz-agent-app .tbz-agent-next-races { overflow: hidden; }
  body.tbz-ui21 .tbz-agent-app .tbz-agent-next-races-list {
    display: flex;
    flex-wrap: nowrap;
    align-items: stretch;
    gap: 10px;
    margin: -4px -16px -4px;
    padding: 6px 16px 8px;
    overflow-x: auto;
    scroll-snap-type: x mandatory;
    scroll-padding: 0 16px;
    scrollbar-width: none;
  }
  body.tbz-ui21 .tbz-agent-app .tbz-agent-next-races-list::-webkit-scrollbar { display: none; }
  body.tbz-ui21 .tbz-agent-app .tbz-agent-next-race-card { flex: 0 0 min(90%, 248px); scroll-snap-align: start; }
  body.tbz-ui21 .tbz-agent-app .tbz-agent-next-races-list .tbz-agent-next-race-card:nth-child(n+2) { display: grid; }
  body.tbz-ui21 .tbz-agent-app .tbz-agent-next-races-list::after { content: none; display: none; }
  body.tbz-ui21 .tbz-agent-app .tbz-agent-next-race-partants { display: block; margin-left: 0; }
  body.tbz-ui21 .tbz-agent-app .tbz-agent-next-race-card,
  body.tbz-ui21 .tbz-agent-app .tbz-agent-next-race-card:hover {
    gap: 4px 6px;
    padding: 12px;
  }
}
@media (max-width: 599.98px) {
  body.tbz-ui21 .tbz-agent-app .tbz-agent-next-races { margin: 22px auto 0; }
}
body.tbz-ui21 .tbz-agent-app .tbz-u21-races-cta {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  min-height: 44px;
  margin-top: 8px;
  padding: 0 16px;
  border-radius: var(--u-r-pill);
  border: 1px solid var(--u-teal-100);
  background: var(--u-teal-50);
  color: var(--u-teal-dd);
  font-weight: 600;
  font-size: 14px;
}
body.tbz-ui21 .tbz-agent-app .tbz-u21-races-cta:hover { border-color: var(--u-teal); background: var(--u-surface); }

body.tbz-ui21 .tbz-agent-app .tbz-agent-dbcard {
  width: calc(100% - 32px);
  max-width: var(--u-col);
  margin: 12px auto 0;
  padding: 12px 16px;
  gap: 12px;
  border-radius: var(--u-r);
  border: 1px solid var(--u-teal-100);
  background: var(--u-surface);
  box-shadow: var(--u-sh-1);
}
body.tbz-ui21 .tbz-agent-app .tbz-agent-dbcard-icon { width: 36px; height: 36px; }
body.tbz-ui21 .tbz-agent-app .tbz-agent-dbcard .tbz-agent-dbcard-text,
body.tbz-ui21 .tbz-agent-app .tbz-agent-dbcard-meta,
body.tbz-ui21 .tbz-agent-app .tbz-agent-dbcard-short { display: none; }
body.tbz-ui21 .tbz-agent-app .tbz-agent-dbcard-title { font-size: 15px; color: var(--u-ink); }
body.tbz-ui21 .tbz-agent-app .tbz-agent-dbcard-hint { display: block; color: var(--u-ink-3); font-size: 14px; margin-top: 4px; line-height: 1.5; }
body.tbz-ui21 .tbz-agent-app .tbz-agent-dbcard-pill { color: var(--u-teal-dd); background: var(--u-teal-50); }
body.tbz-ui21 .tbz-agent-app[data-state="chat"] .tbz-agent-dbcard {
  margin: 8px auto 0;
  padding: 8px 14px;
  border-color: var(--u-line);
  box-shadow: none;
}
body.tbz-ui21 .tbz-agent-app[data-state="chat"] .tbz-agent-dbcard-icon,
body.tbz-ui21 .tbz-agent-app[data-state="chat"] .tbz-agent-dbcard-hint { display: none; }
body.tbz-ui21 .tbz-agent-app[data-state="chat"] .tbz-agent-dbcard-head { display: flex; align-items: center; gap: 8px; min-width: 0; margin: 0; }
body.tbz-ui21 .tbz-agent-app[data-state="chat"] .tbz-agent-dbcard-title { font-size: 14px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
body.tbz-ui21 .tbz-agent-app[data-state="chat"] .tbz-agent-dbcard-body { min-width: 0; }

body.tbz-ui21 .tbz-agent-app .tbz-agent-welcome,
body.tbz-ui21 .tbz-agent-app[data-state="empty"] .tbz-agent-welcome {
  max-width: var(--u-col);
  margin: clamp(20px, 5vh, 56px) auto 18px;
  padding: 0 20px;
  text-align: center;
  background: none;
  border-radius: 0;
}
body.tbz-ui21 .tbz-u21-kicker {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin: 0 0 14px;
  padding: 6px 12px;
  border-radius: var(--u-r-pill);
  background: var(--u-surface);
  border: 1px solid var(--u-line);
  box-shadow: var(--u-sh-1);
  font-size: 13px;
  font-weight: 600;
  color: var(--u-teal-dd);
}
body.tbz-ui21 .tbz-u21-kicker-dot {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: #12a079;
  box-shadow: 0 0 0 3px rgba(18, 160, 121, .18);
}
body.tbz-ui21 .tbz-u21-title {
  margin: 0;
  font-size: clamp(26px, 1.2vw + 18px, 34px);
  line-height: 1.18;
  font-weight: 700;
  letter-spacing: -.025em;
  color: var(--u-ink);
  text-wrap: balance;
}
body.tbz-ui21 .tbz-u21-sub {
  margin: 10px auto 0;
  max-width: 36em;
  font-size: 16px;
  line-height: 1.55;
  color: var(--u-ink-3);
  text-wrap: balance;
}
body.tbz-ui21 .tbz-agent-app .tbz-agent-welcome-promo { margin-top: 14px; }
body.tbz-ui21 .tbz-agent-app .tbz-agent-welcome-promo a {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  min-height: 44px;
  padding: 0 16px;
  border-radius: var(--u-r-pill);
  background: var(--u-gold-50);
  border: 1px solid var(--u-gold-line);
  color: var(--u-gold);
  font-size: 14px;
  text-decoration: none;
}
body.tbz-ui21 .tbz-agent-app .tbz-agent-welcome-promo a:hover { border-color: var(--u-gold); }
@media (max-width: 599.98px) {
  body.tbz-ui21 .tbz-agent-app .tbz-agent-welcome,
  body.tbz-ui21 .tbz-agent-app[data-state="empty"] .tbz-agent-welcome { margin: 14px auto 12px; padding: 0 16px; }
  body.tbz-ui21 .tbz-u21-kicker { margin-bottom: 10px; }
  body.tbz-ui21 .tbz-u21-title { font-size: 24px; }
  body.tbz-ui21 .tbz-u21-sub { font-size: 15px; margin-top: 6px; }
}

body.tbz-ui21 .tbz-agent-app .tbz-agent-composer,
body.tbz-ui21 .tbz-agent-app[data-state="empty"] .tbz-agent-composer {
  padding: 8px 0 12px;
  background: transparent;
  border: 0;
  box-shadow: none;
}
body.tbz-ui21 .tbz-agent-app .tbz-agent-composer::before { display: none; }
body.tbz-ui21 .tbz-agent-app .tbz-agent-composer-inner {
  max-width: calc(var(--u-col) + 32px);
  margin: 0 auto;
  padding: 0 16px;
}
body.tbz-ui21 .tbz-agent-app .tbz-agent-input-wrap {
  display: flex;
  align-items: flex-end;
  gap: 8px;
  min-height: 60px;
  padding: 7px 8px 7px 18px;
  border-radius: var(--u-r-lg);
  border: 1px solid var(--u-line-3);
  background: var(--u-surface);
  box-shadow: var(--u-sh-2);
}
body.tbz-ui21 .tbz-agent-app .tbz-agent-input-wrap:focus-within {
  border-color: var(--u-teal);
  box-shadow: 0 0 0 1px var(--u-teal), 0 0 0 5px rgba(10, 124, 145, .14), var(--u-sh-2);
}
body.tbz-ui21 .tbz-agent-app .tbz-agent-input-wrap textarea {
  flex: 1 1 auto;
  min-width: 0;
  font-size: 16px;
  line-height: 1.5;
  padding: 10px 0;
  color: var(--u-ink);
  background: transparent;
}
body.tbz-ui21 .tbz-agent-app .tbz-agent-input-wrap textarea::placeholder { color: #5b6b80; opacity: 1; }
body.tbz-ui21 .tbz-agent-app .tbz-agent-send,
body.tbz-ui21 .tbz-agent-app .tbz-agent-stop {
  width: 44px;
  height: 44px;
  min-width: 44px;
  border-radius: 50%;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 auto;
  font-size: 16px;
  box-shadow: none;
  border: 0;
}
body.tbz-ui21 .tbz-agent-app .tbz-agent-send { background: var(--u-teal); color: #fff; }
body.tbz-ui21 .tbz-agent-app .tbz-agent-send:hover:not(:disabled) { background: var(--u-teal-dd); transform: none; }
body.tbz-ui21 .tbz-agent-app .tbz-agent-send:disabled { background: #d3dbe5; color: #46566b; cursor: not-allowed; opacity: 1; }
body.tbz-ui21 .tbz-agent-app .tbz-agent-stop { background: var(--u-danger); color: #fff; }
body.tbz-ui21 .tbz-agent-app .tbz-agent-stop:hover { background: #991b1b; }

body.tbz-ui21 .tbz-agent-app .tbz-agent-modes {
  display: flex;
  width: fit-content;
  max-width: 100%;
  margin: 0 auto 10px;
  padding: 4px;
  gap: 4px;
  background: #e2e8f0;
  border: 0;
  border-radius: var(--u-r-pill);
  box-shadow: none;
}
body.tbz-ui21 .tbz-agent-app .tbz-agent-mode {
  flex: 0 1 auto;
  min-height: 44px;
  min-width: 0;
  padding: 0 16px;
  border-radius: var(--u-r-pill);
  border: 0;
  background: transparent;
  color: var(--u-ink-2);
  font-size: 14px;
  font-weight: 600;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  box-shadow: none;
}
body.tbz-ui21 .tbz-agent-app .tbz-agent-mode:hover { color: var(--u-ink); background: rgba(255, 255, 255, .7); }
body.tbz-ui21 .tbz-agent-app .tbz-agent-mode.is-active {
  background: var(--u-surface);
  color: var(--u-teal-dd);
  box-shadow: var(--u-sh-1);
}
body.tbz-ui21 .tbz-agent-app .tbz-agent-mode.is-active i { color: var(--u-teal); }
body.tbz-ui21 .tbz-agent-app .tbz-agent-mode-sub { display: none; }
body.tbz-ui21 .tbz-agent-app .tbz-agent-mode-name { font-size: 14px; }
body.tbz-ui21 .tbz-agent-app .tbz-agent-mode.is-locked { color: var(--u-ink-3); }
body.tbz-ui21 .tbz-agent-app .tbz-agent-mode.is-locked .fa-lock { opacity: 1; }
body.tbz-ui21 .tbz-agent-app .tbz-u21-mode-aide {
  margin: -2px auto 10px;
  max-width: 100%;
  text-align: center;
  font-size: 13px;
  line-height: 1.45;
  color: var(--u-ink-3);
  min-height: 19px;
}
body.tbz-ui21 .tbz-agent-app .tbz-u21-mode-aide a { color: var(--u-teal-d); font-weight: 600; }
body.tbz-ui21 .tbz-agent-app .tbz-agent-composer-foot {
  justify-content: center;
  margin-top: 8px;
  font-size: 12.5px;
  color: var(--u-mute);
  gap: 8px;
}
body.tbz-ui21 .tbz-agent-app .tbz-agent-composer-hint,
body.tbz-ui21 .tbz-agent-app .tbz-agent-composer-hint a { color: var(--u-mute); }
body.tbz-ui21 .tbz-agent-app .tbz-agent-composer-hint a:hover { color: var(--u-teal-d); }
body.tbz-ui21 .tbz-agent-app .tbz-agent-composer-hint kbd {
  border: 1px solid var(--u-line-3);
  border-bottom-width: 2px;
  border-radius: 6px;
  background: var(--u-surface);
  color: var(--u-ink-2);
  font-size: 11.5px;
  padding: 0 5px;
}
body.tbz-ui21 .tbz-agent-app .tbz-agent-composer-ai-disclaimer {
  margin: 4px 0 0;
  text-align: center;
  font-size: 12.5px;
  color: var(--u-mute);
}
body.tbz-ui21 .tbz-agent-app .tbz-agent-composer-ai-disclaimer a { color: var(--u-teal-d); text-decoration: underline; text-underline-offset: 2px; }
body.tbz-ui21 .tbz-agent-app .tbz-agent-char-count { color: var(--u-ink-3); font-size: 12.5px; }
body.tbz-ui21 .tbz-agent-app .tbz-agent-expert-auto-chip {
  border-radius: var(--u-r-pill);
  background: var(--u-teal-50);
  border: 1px solid var(--u-teal-100);
  color: var(--u-ink-2);
  font-size: 13px;
}
body.tbz-ui21 .tbz-agent-app .tbz-agent-expert-auto-disable { min-height: 36px; color: var(--u-teal-dd); font-weight: 600; }
@media (max-width: 599.98px) {
  body.tbz-ui21 .tbz-agent-app .tbz-agent-composer-inner { padding: 0 12px; }
  body.tbz-ui21 .tbz-agent-app .tbz-agent-modes { width: 100%; }
  body.tbz-ui21 .tbz-agent-app .tbz-agent-mode { flex: 1 1 0; padding: 0 8px; }
  body.tbz-ui21 .tbz-agent-app .tbz-agent-composer-hint .tbz-u21-raccourcis { display: none; }
}

body.tbz-ui21 .tbz-agent-app .tbz-agent-discover,
body.tbz-ui21 .tbz-agent-app[data-state="empty"] .tbz-agent-discover {
  width: 100%;
  max-width: var(--u-wide) !important;
  margin: 28px auto 0;
  padding: 0 16px 32px;
  display: flex;
  flex-direction: column;
  gap: 28px;
  container-type: inline-size;
  container-name: u21-cartes;
}
body.tbz-ui21 .tbz-agent-app .tbz-agent-discover-group { margin: 0; padding: 0; background: none; border: 0; }
body.tbz-ui21 .tbz-agent-app .tbz-agent-discover-group-title {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  gap: 8px;
  width: auto;
  margin: 0 0 12px;
  padding: 0;
  background: none;
  border: 0;
  box-shadow: none;
  font-size: 13px;
  font-weight: 700;
  letter-spacing: .05em;
  text-transform: uppercase;
  color: var(--u-ink-2);
}
body.tbz-ui21 .tbz-agent-app .tbz-agent-discover-group-title-icon {
  width: 28px;
  height: 28px;
  border-radius: 8px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: var(--u-teal-50);
  color: var(--u-teal-d);
  font-size: 13px;
}
body.tbz-ui21 .tbz-agent-app .tbz-agent-discover-group[data-accent="amber"] .tbz-agent-discover-group-title-icon { background: var(--u-gold-50); color: var(--u-gold); }
body.tbz-ui21 .tbz-agent-app .tbz-agent-discover-group[data-accent="indigo"] .tbz-agent-discover-group-title-icon { background: #eef0fc; color: #3f46a8; }
body.tbz-ui21 .tbz-agent-app .tbz-agent-discover-group[data-accent="violet"] .tbz-agent-discover-group-title-icon { background: #f2ecfd; color: #5b2a9e; }
body.tbz-ui21 .tbz-agent-app .tbz-agent-discover-group-chips {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) !important;
  gap: 10px !important;
}
@container u21-cartes (min-width: 520px) {
  body.tbz-ui21 .tbz-agent-app .tbz-agent-discover-group-chips { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
  body.tbz-ui21 .tbz-agent-app .tbz-agent-discover-group-chips > :last-child:nth-child(odd) { grid-column: 1 / -1; }
}
@container u21-cartes (min-width: 760px) {
  body.tbz-ui21 .tbz-agent-app .tbz-agent-discover-group-chips[data-n="3"] { grid-template-columns: repeat(3, minmax(0, 1fr)) !important; }
  body.tbz-ui21 .tbz-agent-app .tbz-agent-discover-group-chips[data-n="3"] > :last-child:nth-child(odd) { grid-column: auto; }
}
@container u21-cartes (min-width: 980px) {
  body.tbz-ui21 .tbz-agent-app .tbz-agent-discover-group-chips[data-n="4"] { grid-template-columns: repeat(4, minmax(0, 1fr)) !important; }
}
body.tbz-ui21 .tbz-agent-app .tbz-agent-discover-card,
body.tbz-ui21 .tbz-agent-app[data-state="empty"] .tbz-agent-discover-card {
  display: flex;
  align-items: center;
  gap: 12px;
  min-height: 68px;
  width: 100%;
  padding: 12px 14px;
  border-radius: var(--u-r);
  border: 1px solid var(--u-line);
  background: var(--u-surface);
  box-shadow: var(--u-sh-1);
  text-align: left;
  animation: none;
  backdrop-filter: none;
  -webkit-backdrop-filter: none;
}
body.tbz-ui21 .tbz-agent-app .tbz-agent-discover-card:hover {
  border-color: var(--u-teal);
  box-shadow: var(--u-sh-2);
  transform: none;
  background: var(--u-surface);
}
body.tbz-ui21 .tbz-agent-app .tbz-agent-discover-card-arrow { display: none; }
body.tbz-ui21 .tbz-agent-app .tbz-agent-discover-card-icon {
  width: 38px;
  height: 38px;
  flex: 0 0 38px;
  border-radius: 10px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: var(--u-teal-50);
  color: var(--u-teal-d);
  font-size: 15px;
}
body.tbz-ui21 .tbz-agent-app .tbz-agent-discover-card[data-accent="amber"] .tbz-agent-discover-card-icon { background: var(--u-gold-50); color: var(--u-gold); }
body.tbz-ui21 .tbz-agent-app .tbz-agent-discover-card[data-accent="indigo"] .tbz-agent-discover-card-icon { background: #eef0fc; color: #3f46a8; }
body.tbz-ui21 .tbz-agent-app .tbz-agent-discover-card[data-accent="violet"] .tbz-agent-discover-card-icon { background: #f2ecfd; color: #5b2a9e; }
body.tbz-ui21 .tbz-agent-app .tbz-agent-discover-card:hover .tbz-agent-discover-card-icon { background: var(--u-teal); color: #fff; }
body.tbz-ui21 .tbz-agent-app .tbz-agent-discover-card[data-accent="amber"]:hover .tbz-agent-discover-card-icon { background: var(--u-gold); color: #fff; }
body.tbz-ui21 .tbz-agent-app .tbz-agent-discover-card[data-accent="indigo"]:hover .tbz-agent-discover-card-icon { background: #3f46a8; color: #fff; }
body.tbz-ui21 .tbz-agent-app .tbz-agent-discover-card[data-accent="violet"]:hover .tbz-agent-discover-card-icon { background: #5b2a9e; color: #fff; }
body.tbz-ui21 .tbz-agent-app .tbz-agent-discover-card-body { display: flex; flex-direction: column; gap: 2px; min-width: 0; }
body.tbz-ui21 .tbz-agent-app .tbz-agent-discover-card-label {
  font-size: 14.5px;
  font-weight: 600;
  color: var(--u-ink);
  line-height: 1.3;
}
body.tbz-ui21 .tbz-agent-app .tbz-agent-discover-card-subtitle {
  font-size: 13px;
  color: var(--u-mute);
  line-height: 1.35;
}
body.tbz-ui21 .tbz-agent-app .tbz-agent-discover-card:hover .tbz-agent-discover-card-label { color: var(--u-ink); }
body.tbz-ui21 .tbz-agent-app .tbz-agent-discover-card:hover .tbz-agent-discover-card-subtitle { color: var(--u-ink-3); }
body.tbz-ui21 .tbz-agent-app .tbz-agent-welcome-disclaimer {
  max-width: var(--u-col);
  margin: 0 auto;
  padding: 0 16px 28px;
  text-align: center;
  font-size: 12.5px;
  color: var(--u-mute);
}

body.tbz-ui21 .tbz-agent-app .tbz-agent-stream {
  padding: 20px 0 8px;
  scroll-padding-top: 12px;
}
body.tbz-ui21 .tbz-agent-app .tbz-agent-stream > .tbz-agent-msg,
body.tbz-ui21 .tbz-agent-app .tbz-agent-stream > .tbz-agent-error-msg,
body.tbz-ui21 .tbz-agent-app .tbz-agent-stream > .tbz-agent-quota-banner,
body.tbz-ui21 .tbz-agent-app .tbz-agent-stream > div:not(.tbz-agent-msg) {
  max-width: calc(var(--u-col) + 32px);
  margin-left: auto;
  margin-right: auto;
  padding-left: 16px;
  padding-right: 16px;
}
body.tbz-ui21 .tbz-agent-app .tbz-agent-stream > .tbz-agent-msg { margin-bottom: 24px; }
body.tbz-ui21 .tbz-agent-app .tbz-agent-msg-user { justify-content: flex-end; }
body.tbz-ui21 .tbz-agent-app .tbz-agent-msg-user .tbz-agent-bubble {
  max-width: min(85%, 600px);
  background: var(--u-teal-50);
  color: var(--u-ink);
  border: 1px solid var(--u-teal-100);
  border-radius: 18px 18px 6px 18px;
  box-shadow: none;
  font-size: 15.5px;
  line-height: 1.55;
  padding: 11px 16px;
}
body.tbz-ui21 .tbz-agent-app .tbz-agent-msg-asst { gap: 12px; align-items: flex-start; }
body.tbz-ui21 .tbz-agent-app .tbz-agent-msg-asst .tbz-agent-avatar {
  width: 32px;
  height: 32px;
  flex: 0 0 32px;
  border-width: 0;
  box-shadow: none;
  margin-top: 2px;
}
body.tbz-ui21 .tbz-agent-app .tbz-agent-msg-asst .tbz-agent-avatar-pulse { display: none; }
body.tbz-ui21 .tbz-agent-app .tbz-agent-msg-asst .tbz-agent-bubble {
  flex: 1 1 auto;
  min-width: 0;
  max-width: none;
  background: var(--u-surface);
  border: 1px solid var(--u-line);
  border-radius: 6px 18px 18px 18px;
  box-shadow: var(--u-sh-1);
  padding: 16px 20px;
  font-size: 15.5px;
  line-height: 1.65;
  color: var(--u-ink);
}
body.tbz-ui21 .tbz-agent-app .tbz-agent-asst-header { display: none; }
body.tbz-ui21 .tbz-agent-app .tbz-agent-progress-banner {
  border-radius: var(--u-r-sm);
  background: var(--u-bg);
  border: 1px solid var(--u-line);
  color: var(--u-ink-2);
  font-size: 14px;
}
body.tbz-ui21 .tbz-agent-app .tbz-agent-progress-step,
body.tbz-ui21 .tbz-agent-app .tbz-agent-progress-chrono { color: var(--u-ink-3); }
body.tbz-ui21 .tbz-agent-app .tbz-agent-thinking {
  margin: 0 0 12px;
  padding: 0;
  background: transparent;
  border: 0;
  border-radius: 0;
  overflow: visible;
}
body.tbz-ui21 .tbz-agent-app .tbz-agent-thinking-toggle > span { display: inline-flex; align-items: center; gap: 8px; }
body.tbz-ui21 .tbz-agent-app .tbz-agent-thinking-content { font-style: normal; }
body.tbz-ui21 .tbz-agent-app .tbz-agent-thinking-content .tbz-agent-thinking-text { font-style: italic; }
body.tbz-ui21 .tbz-agent-app .tbz-agent-thinking-toggle {
  min-height: 44px;
  width: auto;
  max-width: 100%;
  padding: 0 14px;
  gap: 10px;
  border-radius: var(--u-r-pill);
  border: 1px solid var(--u-line);
  background: var(--u-surface);
  color: var(--u-ink-2);
  font-size: 13.5px;
  font-weight: 600;
  display: inline-flex;
  align-items: center;
}
body.tbz-ui21 .tbz-agent-app .tbz-agent-thinking-toggle i { color: var(--u-teal-d); margin-right: 0 !important; }
body.tbz-ui21 .tbz-agent-app .tbz-agent-thinking-toggle:hover { border-color: var(--u-teal); color: var(--u-ink); }
body.tbz-ui21 .tbz-agent-app .tbz-agent-thinking-content {
  border-left: 3px solid var(--u-teal-100);
  color: var(--u-ink-3);
  font-size: 14px;
  line-height: 1.6;
}
body.tbz-ui21 .tbz-agent-app .tbz-agent-tools-heading { color: var(--u-ink-2); font-size: 13px; font-weight: 700; }
body.tbz-ui21 .tbz-agent-app .tbz-agent-tool-call { color: var(--u-ink-3); font-size: 13.5px; }
body.tbz-ui21 .tbz-agent-app .tbz-agent-tool-call.is-done i { color: var(--u-ok); }
body.tbz-ui21 .tbz-agent-app .tbz-agent-tool-duration { color: var(--u-mute); }
body.tbz-ui21 .tbz-agent-app .tbz-agent-live-chip,
body.tbz-ui21 .tbz-agent-app .tbz-agent-live-tool {
  color: var(--u-ink-2);
  border-color: var(--u-line);
  background: var(--u-bg);
}

body.tbz-ui21 .tbz-agent-app .tbz-agent-bubble-text { color: var(--u-ink); }
body.tbz-ui21 .tbz-agent-app .tbz-agent-bubble-text > :first-child { margin-top: 0; }
body.tbz-ui21 .tbz-agent-app .tbz-agent-bubble-text p { margin: 0 0 12px; }
body.tbz-ui21 .tbz-agent-app .tbz-agent-bubble-text h1,
body.tbz-ui21 .tbz-agent-app .tbz-agent-bubble-text h2 {
  font-size: 18px;
  line-height: 1.35;
  margin: 20px 0 8px;
  color: var(--u-ink);
  letter-spacing: -.01em;
}
body.tbz-ui21 .tbz-agent-app .tbz-agent-bubble-text h3,
body.tbz-ui21 .tbz-agent-app .tbz-agent-bubble-text h4 {
  font-size: 16px;
  line-height: 1.4;
  margin: 16px 0 6px;
  color: var(--u-ink);
}
body.tbz-ui21 .tbz-agent-app .tbz-agent-bubble-text ul,
body.tbz-ui21 .tbz-agent-app .tbz-agent-bubble-text ol { margin: 0 0 12px; padding-left: 22px; }
body.tbz-ui21 .tbz-agent-app .tbz-agent-bubble-text li { margin: 4px 0; }
body.tbz-ui21 .tbz-agent-app .tbz-agent-bubble-text li::marker { color: var(--u-teal-d); }
body.tbz-ui21 .tbz-agent-app .tbz-agent-bubble-text strong { color: var(--u-ink); font-weight: 700; }
body.tbz-ui21 .tbz-agent-app .tbz-agent-bubble-text a {
  color: var(--u-teal-d);
  text-decoration: underline;
  text-decoration-thickness: 1px;
  text-underline-offset: 2px;
}
body.tbz-ui21 .tbz-agent-app .tbz-agent-bubble-text a:hover { color: var(--u-teal-dd); text-decoration-thickness: 2px; }
body.tbz-ui21 .tbz-agent-app .tbz-agent-bubble-text blockquote {
  margin: 0 0 12px;
  padding: 8px 14px;
  border-left: 3px solid var(--u-teal);
  background: var(--u-teal-50);
  border-radius: 0 var(--u-r-sm) var(--u-r-sm) 0;
  color: var(--u-ink-2);
}
body.tbz-ui21 .tbz-agent-app .tbz-agent-bubble-text code {
  font-size: .9em;
  background: var(--u-bg);
  border: 1px solid var(--u-line-2);
  border-radius: 6px;
  padding: 1px 5px;
  color: var(--u-ink-2);
}
body.tbz-ui21 .tbz-agent-app .tbz-agent-bubble-text pre {
  background: #0f1d2e;
  color: #e2e8f0;
  border-radius: var(--u-r-sm);
  padding: 12px 14px;
  overflow-x: auto;
  font-size: 13.5px;
}
body.tbz-ui21 .tbz-agent-app .tbz-agent-bubble-text pre code { background: none; border: 0; color: inherit; padding: 0; }
body.tbz-ui21 .tbz-agent-app .tbz-agent-bubble-text hr { border: 0; border-top: 1px solid var(--u-line); margin: 16px 0; }

body.tbz-ui21 .tbz-agent-app .tbz-agent-table-wrap {
  margin: 4px 0 14px;
  max-width: 100%;
  overflow-x: auto;
  border: 1px solid var(--u-line);
  border-radius: var(--u-r-sm);
  background: var(--u-surface);
  box-shadow: none;
}
body.tbz-ui21 .tbz-agent-app .tbz-agent-table-wrap table {
  width: 100%;
  border-collapse: collapse;
  font-size: 14px;
  line-height: 1.45;
  margin: 0;
  border: 0;
}
body.tbz-ui21 .tbz-agent-app .tbz-agent-table-wrap th {
  background: var(--u-teal-50);
  color: var(--u-ink);
  font-weight: 700;
  font-size: 13px;
  text-align: left;
  padding: 10px 12px;
  border: 0;
  border-bottom: 1px solid var(--u-teal-100);
  white-space: nowrap;
}
body.tbz-ui21 .tbz-agent-app .tbz-agent-table-wrap td {
  padding: 9px 12px;
  border: 0;
  border-bottom: 1px solid var(--u-line-2);
  color: var(--u-ink);
  vertical-align: top;
  background: var(--u-surface);
}
body.tbz-ui21 .tbz-agent-app .tbz-agent-table-wrap tbody tr:last-child td { border-bottom: 0; }
body.tbz-ui21 .tbz-agent-app .tbz-agent-table-wrap tbody tr:nth-child(even) td { background: #f8fafc; }
body.tbz-ui21 .tbz-agent-app .tbz-agent-table-wrap tbody tr:hover td { background: var(--u-teal-50); }
body.tbz-ui21 .tbz-agent-app .tbz-agent-table-wrap td:first-child { font-variant-numeric: tabular-nums; }
@media (max-width: 767.98px) {
  body.tbz-ui21 .tbz-agent-app .tbz-agent-table-wrap.tbz-u21-cartes {
    overflow: visible;
    border: 0;
    background: transparent;
  }
  body.tbz-ui21 .tbz-agent-app .tbz-u21-cartes table,
  body.tbz-ui21 .tbz-agent-app .tbz-u21-cartes tbody { display: block; width: 100%; }
  body.tbz-ui21 .tbz-agent-app .tbz-u21-cartes thead {
    position: absolute;
    width: 1px;
    height: 1px;
    overflow: hidden;
    clip: rect(0 0 0 0);
    clip-path: inset(50%);
    white-space: nowrap;
  }
  body.tbz-ui21 .tbz-agent-app .tbz-u21-cartes tbody tr {
    display: block;
    margin: 0 0 10px;
    padding: 4px 14px;
    border: 1px solid var(--u-line);
    border-radius: var(--u-r);
    background: var(--u-surface);
    box-shadow: var(--u-sh-1);
  }
  body.tbz-ui21 .tbz-agent-app .tbz-u21-cartes tbody tr:nth-child(even) td,
  body.tbz-ui21 .tbz-agent-app .tbz-u21-cartes tbody tr:hover td { background: transparent; }
  body.tbz-ui21 .tbz-agent-app .tbz-u21-cartes td {
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    gap: 12px;
    padding: 8px 0;
    border-bottom: 1px solid var(--u-line-2);
    background: transparent;
    text-align: right;
    overflow-wrap: anywhere;
  }
  body.tbz-ui21 .tbz-agent-app .tbz-u21-cartes td:last-child { border-bottom: 0; }
  body.tbz-ui21 .tbz-agent-app .tbz-u21-cartes td::before {
    content: attr(data-label);
    flex: 0 0 auto;
    max-width: 45%;
    text-align: left;
    color: var(--u-ink-3);
    font-size: 13px;
    font-weight: 600;
  }
  body.tbz-ui21 .tbz-agent-app .tbz-u21-cartes td[data-label=""]::before { display: none; }
  body.tbz-ui21 .tbz-agent-app .tbz-u21-partants tbody tr { display: grid; grid-template-columns: auto minmax(0, 1fr); column-gap: 10px; }
  body.tbz-ui21 .tbz-agent-app .tbz-u21-partants td { grid-column: 1 / -1; }
  body.tbz-ui21 .tbz-agent-app .tbz-u21-partants td:nth-child(1),
  body.tbz-ui21 .tbz-agent-app .tbz-u21-partants td:nth-child(2) {
    grid-column: auto;
    border-bottom: 1px solid var(--u-line-2);
    padding: 10px 0;
    text-align: left;
    font-weight: 700;
    font-size: 15px;
  }
  body.tbz-ui21 .tbz-agent-app .tbz-u21-partants td:nth-child(1)::before,
  body.tbz-ui21 .tbz-agent-app .tbz-u21-partants td:nth-child(2)::before { display: none; }
  body.tbz-ui21 .tbz-agent-app .tbz-u21-partants td:nth-child(1) {
    justify-content: center;
    min-width: 34px;
    color: var(--u-teal-dd);
  }
  body.tbz-ui21 .tbz-agent-app .tbz-u21-partants td:nth-child(2) { justify-content: flex-start; }
}

body.tbz-ui21 .tbz-agent-app .tbz-agent-sources {
  margin: 14px 0 4px;
  padding: 12px 14px;
  border-radius: var(--u-r);
  border: 1px solid var(--u-line);
  background: var(--u-bg);
}
body.tbz-ui21 .tbz-agent-app .tbz-agent-sources-t { color: var(--u-ink-2); font-size: 13px; font-weight: 700; letter-spacing: .04em; text-transform: uppercase; }
body.tbz-ui21 .tbz-agent-app .tbz-agent-sources-t i { color: var(--u-teal-d); }
body.tbz-ui21 .tbz-agent-app .tbz-agent-source-link {
  min-height: 44px;
  border-radius: var(--u-r-sm);
  color: var(--u-ink);
}
body.tbz-ui21 .tbz-agent-app .tbz-agent-source-link:hover { background: var(--u-surface); }
body.tbz-ui21 .tbz-agent-app .tbz-agent-source-site { color: var(--u-teal-dd); }
body.tbz-ui21 .tbz-agent-app .tbz-agent-source-title { color: var(--u-ink); }
body.tbz-ui21 .tbz-agent-app .tbz-agent-source-meta { color: var(--u-mute); font-size: 12.5px; }
body.tbz-ui21 .tbz-agent-app .tbz-agent-sources-more {
  min-height: 44px;
  padding: 0 14px;
  border-radius: var(--u-r-pill);
  color: var(--u-teal-dd);
  font-weight: 600;
}

body.tbz-ui21 .tbz-agent-app .tbz-u21-pied {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 8px 12px;
  margin-top: 14px;
  padding-top: 12px;
  border-top: 1px solid var(--u-line-2);
}
body.tbz-ui21 .tbz-agent-app .tbz-u21-pied-actions,
body.tbz-ui21 .tbz-agent-app .tbz-u21-pied-meta {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 6px;
  min-width: 0;
}
body.tbz-ui21 .tbz-agent-app .tbz-u21-pied .tbz-agent-quick-relaunch { display: contents; margin: 0; }
body.tbz-ui21 .tbz-agent-app .tbz-u21-pied .tbz-agent-quick-relaunch-btn,
body.tbz-ui21 .tbz-agent-app .tbz-u21-pied .tbz-agent-copy-btn,
body.tbz-ui21 .tbz-agent-app .tbz-u21-pied .tbz-agent-followprono-btn {
  min-height: 44px;
  margin: 0;
  padding: 0 14px;
  gap: 8px;
  border-radius: var(--u-r-pill);
  border: 1px solid var(--u-line);
  background: var(--u-surface);
  color: var(--u-ink-2);
  font-size: 13.5px;
  font-weight: 600;
  display: inline-flex;
  align-items: center;
  box-shadow: none;
}
body.tbz-ui21 .tbz-agent-app .tbz-u21-pied .tbz-agent-quick-relaunch-btn i,
body.tbz-ui21 .tbz-agent-app .tbz-u21-pied .tbz-agent-copy-btn i { color: var(--u-teal-d); }
body.tbz-ui21 .tbz-agent-app .tbz-u21-pied .tbz-agent-quick-relaunch-btn:hover,
body.tbz-ui21 .tbz-agent-app .tbz-u21-pied .tbz-agent-copy-btn:hover,
body.tbz-ui21 .tbz-agent-app .tbz-u21-pied .tbz-agent-followprono-btn:hover {
  border-color: var(--u-teal);
  color: var(--u-ink);
  background: var(--u-surface);
}
body.tbz-ui21 .tbz-agent-app .tbz-u21-pied .tbz-agent-feedback-quick { display: inline-flex; gap: 2px; margin: 0; }
body.tbz-ui21 .tbz-agent-app .tbz-u21-pied .tbz-agent-feedback-quick-btn {
  width: 44px;
  height: 44px;
  border-radius: 50%;
  border: 0;
  background: transparent;
  color: var(--u-ink-3);
  display: inline-flex;
  align-items: center;
  justify-content: center;
}
body.tbz-ui21 .tbz-agent-app .tbz-u21-pied .tbz-agent-feedback-quick-btn:hover { background: var(--u-line-2); color: var(--u-ink); }
body.tbz-ui21 .tbz-agent-app .tbz-u21-pied .tbz-agent-feedback-quick-btn.is-voted { background: var(--u-teal-50); color: var(--u-teal-dd); }
body.tbz-ui21 .tbz-agent-app .tbz-u21-pied .tbz-agent-cost-badge {
  min-height: 44px;
  margin: 0;
  padding: 0 12px;
  border-radius: var(--u-r-pill);
  border: 1px solid transparent;
  background: transparent;
  color: var(--u-ink-3);
  font-size: 13px;
  font-weight: 500;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  font-variant-numeric: tabular-nums;
  box-shadow: none;
}
body.tbz-ui21 .tbz-agent-app .tbz-u21-pied .tbz-agent-cost-badge i { color: var(--u-teal-d); }
body.tbz-ui21 .tbz-agent-app .tbz-u21-pied .tbz-agent-cost-badge small { color: var(--u-ink-3); opacity: 1 !important; }
body.tbz-ui21 .tbz-agent-app .tbz-u21-pied .tbz-agent-cost-badge[role="button"] { cursor: pointer; border-color: var(--u-line); }
body.tbz-ui21 .tbz-agent-app .tbz-u21-pied .tbz-agent-cost-badge[role="button"]:hover { border-color: var(--u-teal); color: var(--u-ink); }
body.tbz-ui21 .tbz-agent-app .tbz-u21-pied .tbz-agent-cost-badge[role="button"]::after {
  content: "";
  width: 7px;
  height: 7px;
  margin-left: 2px;
  border-right: 2px solid currentColor;
  border-bottom: 2px solid currentColor;
  transform: rotate(45deg) translateY(-2px);
}
body.tbz-ui21 .tbz-agent-app .tbz-u21-pied .tbz-agent-cost-badge.is-open::after { transform: rotate(-135deg) translateY(-1px); }
body.tbz-ui21 .tbz-agent-app .tbz-u21-pied .tbz-agent-expert-badge {
  min-height: 32px;
  margin: 0;
  padding: 0 10px;
  border-radius: var(--u-r-pill);
  background: #f2ecfd;
  color: #5b2a9e;
  border: 1px solid #e2d6fb;
  font-size: 12.5px;
  font-weight: 600;
  display: inline-flex;
  align-items: center;
  gap: 6px;
}
body.tbz-ui21 .tbz-agent-app .tbz-agent-cost-detail {
  margin-top: 8px;
  border-radius: var(--u-r-sm);
  border: 1px solid var(--u-line);
  background: var(--u-bg);
  color: var(--u-ink-2);
  font-size: 13px;
}
body.tbz-ui21 .tbz-agent-app .tbz-agent-cost-detail-row span { color: var(--u-ink-3); }
body.tbz-ui21 .tbz-agent-app .tbz-agent-cost-detail-foot { color: var(--u-ink-3); }

body.tbz-ui21 .tbz-agent-app .tbz-agent-suggestions {
  max-width: calc(var(--u-col) + 32px);
  margin: 0 auto 8px;
  padding: 0 16px 0 60px;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: flex-start;
  gap: 8px;
}
body.tbz-ui21 .tbz-agent-app .tbz-agent-suggestions::before {
  content: "Pour aller plus loin\00a0:";
  flex: 0 0 100%;
  color: var(--u-ink-3);
  font-size: 12.5px;
  font-weight: 700;
  letter-spacing: .03em;
}
body.tbz-ui21 .tbz-agent-app .tbz-agent-suggestion-chip {
  min-height: 44px;
  padding: 0 16px;
  border-radius: var(--u-r-pill);
  border: 1px solid var(--u-teal-100);
  background: var(--u-surface);
  color: var(--u-teal-dd);
  font-size: 14px;
  font-weight: 600;
  white-space: normal;
  text-align: left;
  line-height: 1.3;
}
body.tbz-ui21 .tbz-agent-app .tbz-agent-suggestion-chip:hover { border-color: var(--u-teal); background: var(--u-teal-50); color: var(--u-teal-dd); }
@media (max-height: 800px) {
  body.tbz-ui21 .tbz-agent-app .tbz-agent-suggestions { flex-wrap: wrap !important; overflow-x: visible !important; }
  body.tbz-ui21 .tbz-agent-app .tbz-agent-suggestions .tbz-agent-suggestion-chip:nth-child(n+3) { display: inline-flex !important; }
}

body.tbz-ui21 .tbz-agent-app .tbz-agent-error-msg,
body.tbz-ui21 .tbz-agent-app .tbz-agent-quota-banner {
  border-radius: var(--u-r);
}
body.tbz-ui21 .tbz-agent-app .tbz-agent-long-conv-banner {
  max-width: calc(var(--u-col) + 32px);
  margin: 0 auto 8px;
  border-radius: var(--u-r);
}
body.tbz-ui21 .tbz-agent-app .tbz-agent-long-conv-keep,
body.tbz-ui21 .tbz-agent-app .tbz-agent-long-conv-newbtn { min-height: 44px; border-radius: var(--u-r-pill); }

body.tbz-ui21 .tbz-agent-app[data-state="chat"] .tbz-agent-composer {
  padding: 14px 0 10px;
  background: linear-gradient(to bottom, rgba(243, 245, 249, 0), var(--u-bg) 18px);
}
body.tbz-ui21 .tbz-agent-app[data-state="chat"] .tbz-agent-modes { margin-bottom: 8px; }
body.tbz-ui21 .tbz-agent-app[data-state="chat"] .tbz-u21-mode-aide,
body.tbz-ui21 .tbz-agent-app[data-state="chat"] .tbz-agent-composer-hint { display: none; }
body.tbz-ui21 .tbz-agent-app[data-state="chat"] .tbz-agent-composer-foot { margin-top: 0; }

@media (max-width: 599.98px) {
  body.tbz-ui21 .tbz-agent-app .tbz-agent-topbar { padding: 6px 10px; }
  body.tbz-ui21 .tbz-agent-app .tbz-agent-next-races,
  body.tbz-ui21 .tbz-agent-app .tbz-agent-dbcard { width: calc(100% - 24px); }
  body.tbz-ui21 .tbz-agent-app .tbz-agent-dbcard-icon { display: none; }
  body.tbz-ui21 .tbz-agent-app .tbz-agent-discover { padding: 0 12px 24px; margin-top: 22px; gap: 22px; }
  body.tbz-ui21 .tbz-agent-app .tbz-agent-stream { padding-top: 12px; }
  body.tbz-ui21 .tbz-agent-app .tbz-agent-stream > .tbz-agent-msg,
  body.tbz-ui21 .tbz-agent-app .tbz-agent-stream > .tbz-agent-error-msg,
  body.tbz-ui21 .tbz-agent-app .tbz-agent-stream > .tbz-agent-quota-banner,
  body.tbz-ui21 .tbz-agent-app .tbz-agent-stream > div:not(.tbz-agent-msg) { padding-left: 12px; padding-right: 12px; }
  body.tbz-ui21 .tbz-agent-app .tbz-agent-msg-asst .tbz-agent-avatar { display: none; }
  body.tbz-ui21 .tbz-agent-app .tbz-agent-msg-asst .tbz-agent-bubble { padding: 14px 14px; border-radius: var(--u-r); }
  body.tbz-ui21 .tbz-agent-app .tbz-agent-msg-user .tbz-agent-bubble { max-width: 90%; }
  body.tbz-ui21 .tbz-agent-app .tbz-agent-suggestions { padding: 0 12px; }
  body.tbz-ui21 .tbz-agent-app .tbz-agent-suggestions::before { display: none; }
  body.tbz-ui21 .tbz-agent-app .tbz-u21-pied { justify-content: flex-start; }
  body.tbz-ui21 .tbz-agent-app .tbz-u21-pied-actions { width: 100%; }
  body.tbz-ui21 .tbz-agent-app .tbz-u21-pied .tbz-agent-quick-relaunch-btn,
  body.tbz-ui21 .tbz-agent-app .tbz-u21-pied .tbz-agent-copy-btn { padding: 0 12px; }
  body.tbz-ui21 .tbz-agent-app[data-state="chat"] .tbz-agent-composer { padding: 10px 0 8px; }
  body.tbz-ui21 .tbz-agent-app[data-state="chat"] .tbz-agent-balance-badge { display: none; }
  body.tbz-ui21 .tbz-agent-app[data-state="chat"] .tbz-agent-input-wrap { min-height: 54px; padding: 4px 5px 4px 14px; }
  body.tbz-ui21 .tbz-agent-app[data-state="chat"] .tbz-agent-input-wrap textarea { padding: 9px 0; }
  body.tbz-ui21 .tbz-agent-app[data-state="chat"] .tbz-agent-composer-ai-disclaimer { font-size: 12px; margin-top: 2px; }
}

body.tbz-ui21 .tbz-agent-modal-backdrop { background: rgba(15, 23, 42, .5); }
body.tbz-ui21 .tbz-agent-modal-content {
  border-radius: var(--u-r-lg);
  border: 1px solid var(--u-line);
  box-shadow: 0 30px 80px -20px rgba(15, 23, 42, .45);
  color: var(--u-ink);
}
body.tbz-ui21 .tbz-agent-modal-content h2 { color: var(--u-ink); letter-spacing: -.01em; }
body.tbz-ui21 .tbz-agent-modal-lead { color: var(--u-ink-3); }
body.tbz-ui21 .tbz-agent-modal-close {
  z-index: 5;
  width: 44px;
  height: 44px;
  top: 10px;
  right: 10px;
  border-radius: 50%;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: var(--u-ink-3);
}
body.tbz-ui21 .tbz-agent-modal-close:hover { background: var(--u-line-2); color: var(--u-ink); }
body.tbz-ui21 .tbz-agent-modal .tbz-agent-btn {
  min-height: 44px;
  padding: 0 18px;
  border-radius: var(--u-r-pill);
  font-weight: 600;
  font-size: 14.5px;
}
body.tbz-ui21 .tbz-agent-modal .tbz-agent-btn-primary { background: var(--u-teal); border-color: var(--u-teal); color: #fff; }
body.tbz-ui21 .tbz-agent-modal .tbz-agent-btn-primary:hover { background: var(--u-teal-dd); border-color: var(--u-teal-dd); color: #fff; filter: none; }
body.tbz-ui21 .tbz-agent-modal .tbz-agent-btn-ghost { background: var(--u-surface); border: 1px solid var(--u-line); color: var(--u-ink-2); }
body.tbz-ui21 .tbz-agent-modal .tbz-agent-btn-ghost:hover { border-color: var(--u-teal); color: var(--u-ink); background: var(--u-surface); }
body.tbz-ui21 .tbz-agent-modal .tbz-agent-btn-danger { background: var(--u-danger); border-color: var(--u-danger); color: #fff; }
body.tbz-ui21 .tbz-agent-modal .tbz-agent-btn-danger:hover { background: #991b1b; border-color: #991b1b; color: #fff; }
body.tbz-ui21 #tbzAgentConsentModal .tbz-agent-consent-opt {
  border-radius: var(--u-r);
  border: 1px solid var(--u-line);
  min-height: 44px;
}
body.tbz-ui21 #tbzAgentConsentModal .tbz-agent-consent-opt.is-selected,
body.tbz-ui21 #tbzAgentConsentModal .tbz-agent-consent-opt:has(input:checked) { border-color: var(--u-teal); background: var(--u-teal-50); }
body.tbz-ui21 #tbzAgentConsentModal input[type="radio"] { width: 20px; height: 20px; accent-color: var(--u-teal); }
body.tbz-ui21 #tbzAgentConsentModal .tbz-agent-consent-foot a { color: var(--u-teal-d); }
body.tbz-ui21 #tbzAgentConsentModal .tbz-agent-consent-tag { background: var(--u-teal-50); color: var(--u-teal-dd); }

body.tbz-ui21 .tbz-agent-welcome-modal-hero {
  background: linear-gradient(135deg, #054b59 0%, #075d6e 55%, #0a7c91 100%);
  color: #fff;
}
body.tbz-ui21 .tbz-agent-welcome-modal-hero h2 { justify-content: center; text-align: center; }
body.tbz-ui21 .tbz-agent-welcome-modal-trial { background: rgba(4, 47, 56, .42); border-color: rgba(255, 255, 255, .3); }
body.tbz-ui21 #tbzAgentMethodsModal input:not([type="checkbox"]):not([type="radio"]):not([type="hidden"]),
body.tbz-ui21 #tbzAgentMethodsModal textarea,
body.tbz-ui21 #tbzAgentMethodsModal select,
body.tbz-ui21 .tbz-agent-clarify-question-custom-input { min-height: 44px; }
body.tbz-ui21 #tbzAgentMethodsModal ::placeholder,
body.tbz-ui21 #tbzAgentClarifyModal ::placeholder { color: var(--u-mute); opacity: 1; }
body.tbz-ui21 .tbz-agent-clarify-option-chip { min-height: 44px; }
body.tbz-ui21 .tbz-agent-clarify-skip-today { min-height: 44px; display: flex; align-items: center; gap: 10px; }
body.tbz-ui21 .tbz-agent-welcome-modal-hero h2,
body.tbz-ui21 .tbz-agent-welcome-modal-tagline,
body.tbz-ui21 .tbz-agent-welcome-modal-tagline strong,
body.tbz-ui21 .tbz-agent-welcome-modal-trial,
body.tbz-ui21 .tbz-agent-welcome-modal-trial strong { color: #fff; }
body.tbz-ui21 .tbz-agent-welcome-modal-content .tbz-agent-modal-close { color: #fff; background: rgba(255, 255, 255, .14); }
body.tbz-ui21 .tbz-agent-welcome-modal-content .tbz-agent-modal-close:hover { background: rgba(255, 255, 255, .26); color: #fff; }
body.tbz-ui21 .tbz-agent-welcome-modal-col-badge { background: #7a3f05; color: #fff; }
body.tbz-ui21 .tbz-agent-welcome-modal-col ul,
body.tbz-ui21 .tbz-agent-welcome-modal-col li { color: var(--u-ink-2); }
body.tbz-ui21 .tbz-agent-welcome-modal-col li i { color: var(--u-ok); }
body.tbz-ui21 .tbz-agent-welcome-modal-foot { color: var(--u-ink-3); }
body.tbz-ui21 .tbz-agent-welcome-modal-foot-link { color: var(--u-teal-d); font-weight: 600; min-height: 44px; display: inline-flex; align-items: center; }
body.tbz-ui21 .tbz-agent-welcome-modal-actions .tbz-agent-btn { min-height: 48px; }

body.tbz-ui21 .tbz-chat-footer {
  background: var(--u-surface);
  border-top: 1px solid var(--u-line);
  padding: 20px max(16px, calc((100% - var(--u-wide)) / 2)) 24px;
}
body.tbz-ui21 .tbz-chat-footer::before { display: none; }
body.tbz-ui21 .tbz-chat-footer-disclaimer { color: var(--u-ink-3); font-size: 13px; max-width: none; }
body.tbz-ui21 .tbz-chat-footer-disclaimer strong { color: var(--u-ink-2); }
body.tbz-ui21 .tbz-chat-footer-disclaimer a { color: var(--u-teal-d); text-decoration: underline; text-underline-offset: 2px; }
body.tbz-ui21 .tbz-chat-footer-links { gap: 0 4px; font-size: 13px; }
body.tbz-ui21 .tbz-chat-footer-links a {
  min-height: 44px;
  display: inline-flex;
  align-items: center;
  padding: 0 10px;
  border-radius: var(--u-r-pill);
  color: var(--u-ink-3);
}
body.tbz-ui21 .tbz-chat-footer-links a:hover { color: var(--u-teal-dd); background: var(--u-bg); }
body.tbz-ui21 .tbz-chat-footer-copy { color: var(--u-mute); font-size: 12.5px; }

@media (prefers-reduced-motion: reduce) {
  body.tbz-ui21 *,
  body.tbz-ui21 *::before,
  body.tbz-ui21 *::after {
    animation-duration: .01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: .01ms !important;
    scroll-behavior: auto !important;
  }
}

body.tbz-ui21 .tbz-agent-app[data-state="chat"] .tbz-agent-discover,
body.tbz-ui21 .tbz-agent-app[data-state="chat"] .tbz-agent-welcome,
body.tbz-ui21 .tbz-agent-app[data-state="chat"] .tbz-agent-welcome-disclaimer,
body.tbz-ui21 .tbz-agent-app[data-state="chat"] .tbz-agent-next-races,
body.tbz-ui21 .tbz-agent-app[data-state="chat"] #tbzAgentFollowReminder { display: none !important; }
body.tbz-ui21 .tbz-agent-app[data-state="empty"] .tbz-agent-stream,
body.tbz-ui21 .tbz-agent-app[data-state="empty"] .tbz-agent-suggestions { display: none !important; }
body.tbz-ui21 .tbz-agent-app #tbzAgentDisclaimer { display: none; }
body.tbz-ui21 .tbz-agent-app[data-state="empty"] .tbz-u21-jeu { display: none; }
body.tbz-ui21 .tbz-agent-app .tbz-agent-newconv {
  white-space: nowrap;
  padding: 0 14px;
  gap: 8px;
  font-size: 14px;
}
body.tbz-ui21 .tbz-agent-app .tbz-agent-newconv .tbz-agent-sidebar-label { overflow: hidden; text-overflow: ellipsis; }

body.tbz-ui21 .tbz-chat-logo { min-height: 44px; display: inline-flex; align-items: center; }
body.tbz-ui21 .tbz-agent-app .tbz-agent-composer-hint .tbz-agent-help-link { display: none; }
body.tbz-ui21 .tbz-agent-app .tbz-u21-liens { white-space: nowrap; }
body.tbz-ui21 .tbz-agent-app[data-state="chat"] .tbz-u21-aide { display: none; }
body.tbz-ui21 .tbz-agent-app .tbz-agent-composer-ai-disclaimer a,
body.tbz-ui21 #tbzAgentConsentModal .tbz-agent-consent-foot a,
body.tbz-ui21 .tbz-chat-footer-disclaimer a { position: relative; white-space: nowrap; }
body.tbz-ui21 .tbz-agent-app .tbz-agent-composer-ai-disclaimer a::after,
body.tbz-ui21 #tbzAgentConsentModal .tbz-agent-consent-foot a::after,
body.tbz-ui21 .tbz-chat-footer-disclaimer a::after {
  content: "";
  position: absolute;
  left: -4px;
  right: -4px;
  top: 50%;
  height: 44px;
  margin-top: -22px;
}
body.tbz-ui21 .tbz-agent-app .tbz-agent-input-wrap { position: relative; z-index: 2; }
body.tbz-ui21 .tbz-agent-app .tbz-agent-expert-auto-disable { min-height: 44px; }
@media (max-width: 599.98px) {
  body.tbz-ui21 .tbz-agent-app .tbz-agent-composer-hint { display: none; }
  body.tbz-ui21 .tbz-agent-app .tbz-u21-ia { display: block; }
}
body.tbz-ui21 .tbz-agent-app .tbz-agent-conv-title:not([contenteditable="true"]) {
  display: block;
  min-width: 0;
  overflow: visible;
  text-overflow: clip;
  white-space: normal;
  overflow-wrap: anywhere;
  line-height: 1.3;
  padding: 6px 0;
}
@media (max-width: 479.98px) {
  body.tbz-ui21 .tbz-agent-app .tbz-agent-conv-title:not([contenteditable="true"]) { font-size: 14px; line-height: 1.25; }
}
@media (max-width: 359.98px) {
  body.tbz-ui21 .tbz-agent-app[data-state="chat"] .tbz-agent-topbar { flex-wrap: wrap; row-gap: 0; }
  body.tbz-ui21 .tbz-agent-app[data-state="chat"] .tbz-agent-conv-title-wrap { order: 3; flex: 1 0 100%; min-width: 0; }
  body.tbz-ui21 .tbz-agent-app[data-state="chat"] .tbz-agent-actions { margin-left: auto; }
}
@media (max-width: 599.98px) {
  body.tbz-ui21 .tbz-agent-app .tbz-agent-suggestions {
    flex-wrap: nowrap !important;
    overflow-x: auto !important;
    scroll-snap-type: x proximity;
    scrollbar-width: none;
    padding: 4px 12px 6px;
    margin-bottom: 2px;
  }
  body.tbz-ui21 .tbz-agent-app .tbz-agent-suggestions::-webkit-scrollbar { display: none; }
  body.tbz-ui21 .tbz-agent-app .tbz-agent-suggestions .tbz-agent-suggestion-chip { flex: 0 0 auto; white-space: nowrap; scroll-snap-align: start; display: inline-flex !important; align-items: center; }
}
@media (max-width: 400px) {
  body.tbz-ui21 .tbz-agent-app[data-state="chat"] .tbz-agent-db-status { display: none; }
}
body.tbz-ui21 .tbz-agent-toast {
  max-width: calc(100vw - 32px);
  padding: 6px 6px 6px 18px;
  border-radius: var(--u-r);
  background: var(--u-ink);
  font-size: 14px;
  box-shadow: var(--u-sh-2);
  z-index: 2200;
}
body.tbz-ui21 .tbz-agent-toast > span { min-width: 0; line-height: 1.35; overflow-wrap: anywhere; }
body.tbz-ui21 .tbz-agent-toast-undo {
  flex: 0 0 auto;
  min-height: 44px;
  padding: 0 16px;
  border-radius: var(--u-r-pill);
  color: #a5e3ee;
  font-size: 14px;
}
body.tbz-ui21 .tbz-agent-toast-undo:hover { color: #fff; }
body.tbz-ui21 .tbz-agent-toast-undo:focus-visible { outline-color: #a5e3ee !important; }
body.tbz-ui21 .tbz-agent-app .tbz-agent-stream > div.tbz-agent-error-msg:not(.tbz-agent-msg),
body.tbz-ui21 .tbz-agent-app .tbz-agent-stream > div.tbz-agent-quota-banner:not(.tbz-agent-msg) {
  width: calc(100% - 32px);
  max-width: var(--u-col);
  margin: 0 auto 16px;
  padding: 14px 16px;
}
body.tbz-ui21 .tbz-agent-app .tbz-agent-error-cta,
body.tbz-ui21 .tbz-agent-app .tbz-agent-error-retry {
  min-height: 44px;
  padding: 0 16px;
  font-size: 14px;
}
body.tbz-ui21 .tbz-agent-app .tbz-agent-burger { flex: 0 0 44px; width: 44px; min-width: 44px; height: 44px; }
@media (max-width: 599.98px) {
  body.tbz-ui21 .tbz-agent-app .tbz-agent-stream > div.tbz-agent-error-msg:not(.tbz-agent-msg),
  body.tbz-ui21 .tbz-agent-app .tbz-agent-stream > div.tbz-agent-quota-banner:not(.tbz-agent-msg) {
    width: calc(100% - 24px);
    padding: 12px 14px;
  }
}
body.tbz-ui21 .tbz-agent-feedback-modal-close { flex: 0 0 44px; width: 44px; min-width: 44px; height: 44px; display: inline-flex; align-items: center; justify-content: center; border-radius: 50%; }
body.tbz-ui21 .tbz-agent-followprono-add-manual { min-height: 44px; }
body.tbz-ui21 .tbz-agent-followprono-hint { color: var(--u-ink-3); }
body.tbz-ui21 .tbz-agent-followprono-card-check { min-width: 44px; min-height: 44px; display: inline-flex; align-items: center; justify-content: center; }
body.tbz-ui21 .tbz-agent-followprono-card-num,
body.tbz-ui21 .tbz-agent-followprono-card-pari { min-height: 44px; }
body.tbz-ui21 .tbz-agent-followprono-card-remove { width: 44px; height: 44px; display: inline-flex; align-items: center; justify-content: center; }
body.tbz-ui21 .tbz-agent-feedback-modal-cats label { min-height: 44px; display: inline-flex; align-items: center; }
body.tbz-ui21 .tbz-agent-feedback-modal-cancel,
body.tbz-ui21 .tbz-agent-feedback-modal-submit { min-height: 44px; }
body.tbz-ui21 .tbz-agent-followprono-toast-success { background: var(--u-ok); }
body.tbz-ui21 .tbz-agent-conv-countdown,
body.tbz-ui21 .tbz-agent-app .tbz-agent-limit-hint { color: var(--u-ink-3); }
body.tbz-ui21 .tbz-agent-app .tbz-agent-bubble .tbz-agent-limit-btn {
  min-height: 44px;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 0 18px;
  border: 0;
  border-radius: var(--u-r-pill);
  background: var(--u-teal);
  color: #fff;
  font-size: 15px;
  font-weight: 600;
  cursor: pointer;
}
body.tbz-ui21 .tbz-agent-app .tbz-agent-bubble .tbz-agent-limit-btn:hover { background: var(--u-teal-dd); color: #fff; }
@media (max-height: 520px) {
  html body.tbz-ui21 .tbz-agent-shell .tbz-agent-app[data-state="chat"] { min-height: 0; }
  body.tbz-ui21 .tbz-agent-app[data-state="chat"] .tbz-agent-topbar { min-height: 48px; padding-top: 2px; padding-bottom: 2px; }
  body.tbz-ui21 .tbz-agent-app[data-state="chat"] .tbz-agent-suggestions { display: none !important; }
  body.tbz-ui21 .tbz-agent-app[data-state="chat"] .tbz-agent-composer { padding: 4px 0 2px; }
  body.tbz-ui21 .tbz-agent-app[data-state="chat"] .tbz-agent-modes { margin-bottom: 4px; padding: 2px; }
  body.tbz-ui21 .tbz-agent-app[data-state="chat"] .tbz-agent-input-wrap { min-height: 48px; padding-top: 2px; padding-bottom: 2px; }
  body.tbz-ui21 .tbz-agent-app[data-state="chat"] .tbz-agent-stream { padding-top: 8px; }
}
