@font-face {
  font-family: "Cal Sans";
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("/widget/assets/cal-sans-latin-400-normal.woff2") format("woff2");
}

/* Dynamic Brain Wiki */
.brain-wiki-layout,
.public-brain-wiki-layout {
  display: grid;
  grid-template-columns: minmax(240px, 280px) minmax(0, 1fr);
  gap: clamp(24px, 4vw, 56px);
  align-items: start;
}

.brain-wiki-sidebar,
.public-brain-wiki-sidebar {
  position: sticky;
  top: 20px;
  min-width: 0;
}

.brain-wiki-page-list,
.public-brain-wiki-page-list {
  display: grid;
  gap: 10px;
  min-width: 0;
}

.brain-wiki-search-label,
.public-brain-wiki-page-list > label {
  font-size: .82rem;
  font-weight: 750;
}

.brain-wiki-page-list input,
.public-brain-wiki-page-list input {
  width: 100%;
  min-height: 44px;
}

.brain-wiki-shell .app-section-nav__link { min-height: 44px; }

.brain-wiki-page-list nav,
.public-brain-wiki-page-list nav,
.brain-wiki-nav-group {
  display: grid;
  gap: 4px;
}

.brain-wiki-nav-group + .brain-wiki-nav-group { margin-top: 14px; }
.brain-wiki-nav-group h2 {
  margin: 0 0 4px;
  color: var(--muted, #607068);
  font-size: .76rem;
  letter-spacing: .08em;
  text-transform: uppercase;
}

.brain-wiki-nav-link,
.public-brain-wiki-page-list nav a {
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 2px;
  min-width: 0;
  min-height: 44px;
  padding: 9px 11px;
  border-radius: 9px;
  color: inherit;
  font-weight: 650;
  text-decoration: none;
  overflow-wrap: anywhere;
}

.brain-wiki-nav-link:hover,
.brain-wiki-nav-link:focus-visible,
.brain-wiki-nav-link.active,
.public-brain-wiki-page-list nav a:hover,
.public-brain-wiki-page-list nav a:focus-visible,
.public-brain-wiki-page-list nav a.active { background: #eef5f1; color: #174c38; }
.brain-wiki-nav-link small { color: #8a5b15; font-size: .72rem; }

.brain-wiki-main,
.public-brain-wiki-index,
.public-brain-wiki-article { min-width: 0; }
.brain-wiki-section-title { margin: 0; font-size: clamp(1.7rem, 3vw, 2.25rem); font-weight: 800; line-height: 1.05; }
.brain-wiki-build-state {
  display: flex;
  justify-content: space-between;
  gap: 20px;
  padding: 16px 18px;
  border: 1px solid #dce7e1;
  border-radius: 12px;
  background: #f8fbf9;
}
.brain-wiki-build-state p { margin: 4px 0 0; color: var(--muted, #607068); }
.brain-wiki-index-section { margin-top: 30px; }
.brain-wiki-public-controls { display: flex; justify-content: space-between; gap: 24px; margin-top: 22px; padding: 16px 18px; border: 1px solid #dfe7e3; border-radius: 12px; }
.brain-wiki-public-controls h2 { margin: 0; font-size: 1rem; }
.brain-wiki-public-controls p { margin: 4px 0 0; }
.brain-wiki-public-controls form { display: flex; flex-wrap: wrap; gap: 12px; align-items: end; }
.app-main .brain-wiki-build-state .btn,
.app-main .brain-wiki-public-controls .btn,
.app-main .brain-wiki-page-actions .btn,
.app-main .brain-wiki-editor-form .btn,
.app-main .brain-wiki-history-item .btn,
.app-main .brain-wiki-review-actions .btn { min-height: 44px; display: inline-flex; align-items: center; justify-content: center; }
.brain-wiki-public-controls fieldset { display: flex; flex-wrap: wrap; gap: 12px; margin: 0; padding: 0; border: 0; }
.brain-wiki-public-controls legend { width: 100%; font-size: .78rem; font-weight: 750; }
.brain-wiki-public-controls label { min-height: 44px; display: inline-flex; align-items: center; gap: 5px; }
.brain-wiki-index-section > h2,
.public-brain-wiki-index h2 { margin-bottom: 10px; font-size: 1.15rem; }
.brain-wiki-rows,
.public-brain-wiki-rows { border-top: 1px solid #dfe7e3; }
.brain-wiki-row,
.public-brain-wiki-rows > a {
  display: flex;
  justify-content: space-between;
  gap: 20px;
  min-width: 0;
  padding: 15px 2px;
  border-bottom: 1px solid #dfe7e3;
  color: inherit;
  text-decoration: none;
}
.brain-wiki-row:hover strong,
.brain-wiki-row:focus-visible strong,
.public-brain-wiki-rows > a:hover strong,
.public-brain-wiki-rows > a:focus-visible strong { color: #176244; }
.brain-wiki-row-copy,
.public-brain-wiki-rows > a > span:first-child { display: grid; gap: 4px; min-width: 0; }
.brain-wiki-row-copy > span,
.public-brain-wiki-rows > a > span:first-child > span { color: var(--muted, #607068); overflow-wrap: anywhere; }
.brain-wiki-row-meta { display: grid; gap: 4px; flex: 0 0 135px; color: var(--muted, #607068); font-size: .78rem; text-align: right; }
.brain-wiki-technical { margin-top: 32px; }
.brain-wiki-technical summary,
.brain-wiki-supporting summary,
.brain-wiki-mobile-pages summary,
.public-brain-wiki-mobile-pages summary { min-height: 44px; cursor: pointer; font-weight: 750; }
.brain-wiki-technical dl { display: grid; gap: 8px; }
.brain-wiki-technical dl > div { display: grid; grid-template-columns: 120px minmax(0, 1fr); gap: 12px; }
.brain-wiki-technical dd { margin: 0; overflow-wrap: anywhere; }

.brain-wiki-mobile-pages,
.public-brain-wiki-mobile-pages { display: none; }
.brain-wiki-breadcrumb { display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 26px; color: var(--muted, #607068); font-size: .85rem; }
.brain-wiki-article { max-width: 78ch; }
.brain-wiki-article-header { display: flex; align-items: flex-start; justify-content: space-between; gap: 24px; margin-bottom: 28px; }
.brain-wiki-article-header h1 { margin: 4px 0 8px; overflow-wrap: anywhere; }
.brain-wiki-page-meta { display: flex; flex-wrap: wrap; gap: 10px; color: var(--muted, #607068); font-size: .84rem; }
.brain-wiki-status { padding: 2px 8px; border-radius: 999px; background: #e8f4ed; color: #176244; font-weight: 750; }
.brain-wiki-status.warning { background: #fff3dc; color: #7d5012; }
.brain-wiki-page-actions { flex: 0 0 auto; }
.brain-wiki-document { font-size: 1.02rem; line-height: 1.75; overflow-wrap: anywhere; }
.brain-wiki-document > :first-child { margin-top: 0; }
.brain-wiki-document pre { max-width: 100%; overflow-x: auto; }
.brain-wiki-document img { max-width: 100%; height: auto; }
.brain-wiki-limitations,
.public-brain-wiki-note { margin-top: 28px; }
.brain-wiki-supporting { margin-top: 28px; border-top: 1px solid #dfe7e3; border-bottom: 1px solid #dfe7e3; padding: 10px 0; }
.brain-wiki-supporting > div { padding: 8px 0 12px; }
.brain-wiki-supporting h2 { margin-top: 20px; font-size: 1rem; }
.brain-wiki-supporting small { display: block; color: var(--muted, #607068); }
.brain-wiki-pagination { display: flex; flex-wrap: wrap; align-items: center; gap: 10px; margin-top: 14px; }
.brain-wiki-pagination .btn { min-height: 44px; display: inline-flex; align-items: center; }
.brain-wiki-pagination span { color: var(--muted, #607068); font-size: .9rem; }
.public-brain-wiki-details { margin-top: 28px; padding-top: 24px; border-top: 1px solid #dfe7e3; }
.public-brain-wiki-details ul { padding-left: 1.25rem; }
@media (max-width: 640px) { .brain-wiki-pagination .btn { flex: 1 1 44%; justify-content: center; } }
.brain-wiki-related,
.public-brain-wiki-related,
.public-brain-wiki-links { margin-top: 32px; }

.public-brain-wiki { width: min(1180px, calc(100% - 40px)); margin: 0 auto 72px; }
.public-brain-wiki-article { max-width: 78ch; }
.public-brain-wiki-note { padding: 18px 20px; border: 1px solid #ead7b0; border-radius: 12px; background: #fffaf0; }
.public-brain-wiki-note h2 { margin-top: 0; font-size: 1rem; }
.brain-wiki-editor-grid,
.brain-wiki-comparison {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: clamp(24px, 4vw, 48px);
  align-items: start;
}
.brain-wiki-editor-preview,
.brain-wiki-editor-form,
.brain-wiki-comparison > section { min-width: 0; }
.brain-wiki-editor-form { display: grid; gap: 12px; }
.brain-wiki-editor-form textarea { width: 100%; min-height: 44px; resize: vertical; font-family: ui-monospace, SFMono-Regular, Consolas, monospace; line-height: 1.55; }
.brain-wiki-editor-form label,
.brain-wiki-reject-form label { font-weight: 750; }
.brain-wiki-history-list { display: grid; gap: 16px; }
.brain-wiki-history-item header { display: flex; justify-content: space-between; gap: 20px; align-items: flex-start; }
.brain-wiki-history-item h2 { margin: 0; font-size: 1.05rem; }
.brain-wiki-history-item details { margin-top: 12px; }
.brain-wiki-history-item details > summary { min-height: 44px; cursor: pointer; font-weight: 750; }
.brain-wiki-change-meta { display: grid; gap: 8px; margin-bottom: 28px; }
.brain-wiki-change-meta > div { display: grid; grid-template-columns: 100px minmax(0, 1fr); gap: 12px; }
.brain-wiki-change-meta dt { font-weight: 750; }
.brain-wiki-change-meta dd { margin: 0; overflow-wrap: anywhere; }
.brain-wiki-comparison > section { padding: 20px; border: 1px solid #dfe7e3; border-radius: 12px; }
.brain-wiki-comparison h2 { margin-top: 0; font-size: 1.05rem; }
.brain-wiki-review-actions { display: flex; flex-wrap: wrap; gap: 18px; align-items: flex-end; }
.brain-wiki-reject-form { display: grid; grid-template-columns: minmax(220px, 420px) auto; gap: 8px 12px; align-items: end; }
.brain-wiki-reject-form label { grid-column: 1 / -1; }
.brain-wiki-reject-form textarea { min-height: 44px; }

@media (max-width: 1100px) {
  .brain-wiki-layout { grid-template-columns: minmax(0, 1fr); gap: 20px; }
  .brain-wiki-sidebar { display: none; }
  .brain-wiki-mobile-pages { display: block; margin-bottom: 20px; }
  .brain-wiki-mobile-pages[open] { padding-bottom: 12px; border-bottom: 1px solid #dfe7e3; }
}

@media (max-width: 760px) {
  .brain-wiki-layout,
  .public-brain-wiki-layout { grid-template-columns: minmax(0, 1fr); gap: 20px; }
  .brain-wiki-sidebar,
  .public-brain-wiki-sidebar { display: none; }
  .brain-wiki-mobile-pages,
  .public-brain-wiki-mobile-pages { display: block; margin-bottom: 20px; }
  .brain-wiki-mobile-pages[open],
  .public-brain-wiki-mobile-pages[open] { padding-bottom: 12px; border-bottom: 1px solid #dfe7e3; }
  .brain-wiki-build-state,
  .brain-wiki-public-controls,
  .brain-wiki-article-header,
  .brain-wiki-row,
  .public-brain-wiki-rows > a { flex-direction: column; }
  .brain-wiki-build-state .actions,
  .brain-wiki-public-controls form,
  .brain-wiki-page-actions { width: 100%; }
  .brain-wiki-build-state .btn,
  .brain-wiki-page-actions .btn { width: 100%; min-height: 44px; justify-content: center; }
  .brain-wiki-row-meta { flex: auto; text-align: left; }
  .public-brain-wiki { width: min(100% - 28px, 1180px); }
  .brain-wiki-editor-grid,
  .brain-wiki-comparison { grid-template-columns: minmax(0, 1fr); }
  .brain-wiki-editor-preview { order: 2; }
  .brain-wiki-history-item header { flex-direction: column; }
  .brain-wiki-history-item .btn,
  .brain-wiki-review-actions,
  .brain-wiki-review-actions form,
  .brain-wiki-review-actions .btn { width: 100%; }
  .brain-wiki-reject-form { grid-template-columns: minmax(0, 1fr); }
  .brain-wiki-reject-form label { grid-column: auto; }
}

@font-face {
  font-family: "Open Sans";
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("/widget/assets/open-sans-latin-400-normal.woff2") format("woff2");
}

@font-face {
  font-family: "Open Sans";
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url("/widget/assets/open-sans-latin-700-normal.woff2") format("woff2");
}

@font-face {
  font-family: "Open Sans";
  font-style: normal;
  font-weight: 800;
  font-display: swap;
  src: url("/widget/assets/open-sans-latin-800-normal.woff2") format("woff2");
}

* { box-sizing: border-box; }
body { margin: 0; background: #f6f7f9; color: #172033; font: 15px/1.5 system-ui, -apple-system, Segoe UI, sans-serif; }
a { color: #0e756b; text-decoration: none; }
button, input, textarea, select { font: inherit; }
.public-page { background: #fbfaf7; color: #172033; font-family: "Open Sans", system-ui, sans-serif; }
.public-header {
  position: relative;
  z-index: 50;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: clamp(24px, 5vw, 64px);
  min-height: 96px;
  padding: 10px clamp(24px, 5vw, 60px);
  border-bottom: 1px solid rgba(255,255,255,.14);
  background: #020202;
  color: #fff;
}

/* Property Assistant */
.property-assistant-body {
  background: #fbf9f3;
}

.property-assistant-page {
  width: min(1180px, calc(100% - 40px));
  margin: 0 auto;
  padding: clamp(21px, 3vw, 34px) 0 clamp(64px, 8vw, 96px);
}

.property-assistant-hero {
  max-width: 1020px;
  margin-bottom: 26px;
}

.property-assistant-hero-copy {
  max-width: 1020px;
}

.property-assistant-hero h1 {
  max-width: 1020px;
  margin: 0 0 14px;
  color: #000;
  font-family: "Cal Sans", "Arial Black", system-ui, sans-serif;
  font-size: clamp(40px, 5vw, 58px);
  font-weight: 400;
  line-height: 1.04;
  letter-spacing: .01em;
}

.property-assistant-summary {
  max-width: 900px;
  margin: 0;
  color: #3d504c;
  font-size: clamp(16px, 1.5vw, 18px);
  line-height: 1.55;
}

.property-assistant-privacy {
  max-width: 900px;
  margin: 9px 0 0;
  color: #5c6966;
  font-size: 14px;
  line-height: 1.45;
}

.property-assistant-layout {
  display: block;
}

.property-assistant-frame-shell {
  height: clamp(650px, 78dvh, 780px);
  min-height: 620px;
  overflow: hidden;
  border: 1px solid #d8d2c4;
  border-radius: 14px;
  background: #fff;
  box-shadow: 0 16px 42px rgba(17, 24, 39, .08);
}

.property-assistant-frame-shell iframe {
  display: block;
  width: 100%;
  height: 100%;
  min-height: 100%;
  border: 0;
}

.property-settings-fields,
.property-readiness {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
}

.property-defaults-option {
  align-items: flex-start;
  margin-top: 18px;
  padding: 16px;
  border: 1px solid rgba(17, 24, 39, .12);
  border-radius: 14px;
  background: #fbfaf5;
}

.property-readiness {
  margin-top: 24px;
  padding-top: 22px;
  border-top: 1px solid rgba(17, 24, 39, .12);
}

.property-readiness div {
  display: grid;
  gap: 3px;
}

.property-readiness span {
  color: #667085;
  font-size: .82rem;
}

.property-readiness-gaps,
.property-record-review {
  margin-top: 22px;
}

.property-settings-card {
  grid-template-columns: minmax(0, 1fr);
  min-width: 0;
}

.property-settings-card > * {
  min-width: 0;
}

.property-record-table-wrap {
  max-width: 100%;
  overflow-x: auto;
}

.property-record-table {
  width: 100%;
  min-width: 820px;
  border-collapse: collapse;
}

.property-record-table th,
.property-record-table td {
  padding: 10px 12px;
  border-bottom: 1px solid rgba(17, 24, 39, .1);
  text-align: left;
  vertical-align: top;
}

.property-record-table th {
  color: #667085;
  font-size: .78rem;
  text-transform: uppercase;
  letter-spacing: 0;
}

.property-record-table small {
  display: block;
  margin-top: 3px;
  color: #667085;
}

@media (max-width: 900px) {
  .property-settings-fields,
  .property-readiness {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 700px) {
  .property-assistant-page {
    width: min(100% - 24px, 1180px);
    padding: 12px 0 58px;
  }

  .property-assistant-hero {
    margin-bottom: 16px;
  }

  .property-assistant-hero h1 {
    margin-bottom: 10px;
    font-size: clamp(31px, 9vw, 38px);
    line-height: 1.02;
  }

  .property-assistant-summary {
    font-size: 15.5px;
    line-height: 1.5;
  }

  .property-assistant-frame-shell {
    height: min(560px, calc(100dvh - 96px));
    min-height: min(520px, calc(100dvh - 96px));
    border-radius: 12px;
  }

  .property-settings-fields,
  .property-readiness {
    grid-template-columns: 1fr;
  }

}
.public-header .brand {
  width: auto;
  padding: 0;
  border-radius: 0;
  background: transparent;
  color: #fff;
  box-shadow: none;
}
.public-header .brand-logo {
  width: auto;
  max-width: 112px;
  height: min(76px, 8vw);
  min-height: 60px;
  object-fit: contain;
  filter: saturate(.94);
}
.public-nav { display: flex; flex-wrap: wrap; align-items: center; justify-content: flex-end; gap: clamp(20px, 3vw, 36px); font-size: 14px; font-weight: 700; letter-spacing: .08em; line-height: 1.1; text-transform: uppercase; }
.public-nav a { position: relative; color: #f8fafc; }
.public-nav a:not(.public-nav-account)::after { content: ""; position: absolute; right: 0; bottom: -8px; left: 0; height: 2px; background: #dbd66d; transform: scaleX(0); transform-origin: left; transition: transform .15s ease; }
.public-nav a:hover,
.public-nav a:focus-visible { color: #dbd66d; }
.public-nav a:hover::after,
.public-nav a:focus-visible::after,
.public-nav a[aria-current="page"]::after { transform: scaleX(1); }
.public-nav a:focus-visible,
.public-nav-toggle:focus-visible { outline: 3px solid #dbd66d; outline-offset: 4px; }
.public-nav-account { min-height: 42px; display: inline-flex; align-items: center; padding: 10px 15px; border: 1px solid #dbd66d; border-radius: 4px; }
.public-nav-account:hover,
.public-nav-account:focus-visible { background: #dbd66d; color: #000 !important; }
.public-nav-toggle { display: none; }
.client-hero { background: #111827; color: #fff; }
.client-hero-inner { width: min(100% - 36px, 1120px); margin: 0 auto; padding: clamp(54px, 8vw, 96px) 0; }
.client-hero h1 { max-width: 880px; margin: 0 0 18px; font-size: clamp(38px, 6vw, 72px); line-height: 1.02; letter-spacing: 0; }
.client-hero p { max-width: 720px; margin: 0 0 26px; color: #e5e7eb; font-size: clamp(18px, 2.4vw, 24px); line-height: 1.45; }
.client-page-section { padding: clamp(42px, 7vw, 72px) clamp(18px, 4vw, 48px); }
.client-page-grid { width: min(100%, 1120px); display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: clamp(28px, 6vw, 64px); margin: 0 auto; }
.client-page-grid h2 { margin: 0 0 14px; font-size: clamp(26px, 3.5vw, 40px); line-height: 1.12; letter-spacing: 0; }
.client-page-grid p { margin: 0 0 14px; color: #344054; font-size: 18px; line-height: 1.65; }
.client-page-band { background: #fff; border-top: 1px solid #e5e1d7; border-bottom: 1px solid #e5e1d7; }
.client-outcomes { display: grid; gap: 12px; margin: 0; padding: 0; list-style: none; }
.client-outcomes li { padding: 13px 15px; border-left: 4px solid #0e756b; background: #eef7f5; color: #172033; font-weight: 750; }
.client-cta { padding: 28px; border: 1px solid #e5e1d7; border-radius: 8px; background: #fbfaf7; }
.public-footer { display: flex; justify-content: flex-start; gap: 14px; padding: 24px clamp(30px, 5vw, 60px); background: #000; color: rgba(255,255,255,.72); }
.client-page-control { display: flex; justify-content: space-between; align-items: flex-start; gap: 18px; }
.client-page-control p { margin: 4px 0; }
.client-page-control .actions { flex: 0 0 auto; }
.client-directory-hero .client-hero-inner { padding-bottom: clamp(44px, 6vw, 72px); }
.client-directory-section { display: grid; gap: 24px; }
.client-directory-toolbar { width: min(100%, 1120px); display: flex; justify-content: space-between; align-items: end; gap: 18px; margin: 0 auto; }
.client-directory-form { display: grid; grid-template-columns: minmax(220px, 420px) minmax(160px, 220px) auto; gap: 12px; align-items: end; width: min(100%, 760px); }
.client-directory-form label { display: grid; gap: 6px; color: #344054; font-size: 13px; font-weight: 800; }
.client-directory-form input, .client-directory-form select { width: 100%; min-height: 44px; padding: 9px 11px; border: 1px solid #cfd4dc; border-radius: 6px; background: #fff; color: #172033; }
.client-directory-count { margin: 0 0 8px; color: #475467; font-weight: 800; white-space: nowrap; }
.client-directory-results { width: min(100%, 1120px); display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 18px; margin: 0 auto; }
.client-directory-card { display: grid; gap: 18px; align-content: space-between; min-height: 330px; padding: 22px; border: 1px solid #e5e1d7; border-radius: 8px; background: #fff; }
.client-directory-card h2 { margin: 0 0 10px; color: #111827; font-size: 24px; line-height: 1.14; letter-spacing: 0; }
.client-directory-card h2 a { color: inherit; }
.client-directory-card p { margin: 0; color: #344054; font-size: 16px; line-height: 1.55; }
.client-directory-meta { display: grid; gap: 10px; margin: 0; }
.client-directory-meta div { display: grid; gap: 2px; }
.client-directory-meta dt { color: #667085; font-size: 12px; font-weight: 850; text-transform: uppercase; }
.client-directory-meta dd { margin: 0; overflow-wrap: anywhere; color: #172033; font-weight: 750; }
.client-directory-empty { grid-column: 1 / -1; padding: 34px; border: 1px solid #e5e1d7; border-radius: 8px; background: #fff; }
.client-directory-empty h2 { margin: 0 0 8px; font-size: 26px; line-height: 1.16; letter-spacing: 0; }
.client-directory-empty p { margin: 0; color: #344054; font-size: 17px; }
.client-directory-pagination.pagination-links { width: min(100%, 1120px); margin: 20px auto 0; color: #344054; }
[data-client-directory][data-loading="true"] .client-directory-results { opacity: .55; }
.public-brain-profile-hero .public-brain-profile-meta {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
  margin-top: 12px;
  font-weight: 800;
}
.public-brain-profile {
  width: min(100% - 36px, 980px);
  display: grid;
  gap: 18px;
  margin: 0 auto;
  padding: 0 0 clamp(44px, 7vw, 72px);
}
.public-brain-profile-overview {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
}
.public-brain-profile-overview > div {
  display: grid;
  gap: 2px;
  padding: 16px 18px;
  border: 1px solid #e5e1d7;
  border-radius: 8px;
  background: #fff;
}
.public-brain-profile-overview strong {
  color: #111827;
  font-size: 25px;
  line-height: 1.1;
}
.public-brain-profile-overview span,
.public-brain-profile-topic-heading > span {
  color: #667085;
  font-size: 13px;
  font-weight: 800;
}
.public-brain-profile-intro {
  margin: 0;
  color: #475467;
  font-size: 15px;
  line-height: 1.55;
}
.public-brain-profile-topic {
  display: grid;
  gap: 18px;
}
.public-brain-profile-topic-heading {
  display: flex;
  align-items: start;
  justify-content: space-between;
  gap: 18px;
}
.public-brain-profile-topic-heading > span {
  flex: 0 0 auto;
  padding-top: 7px;
}
.public-brain-profile-topic h2 {
  margin: 0;
  font-size: clamp(24px, 3vw, 34px);
  line-height: 1.15;
}
.public-brain-profile-topic p {
  margin: 0;
  color: #344054;
  font-size: 16px;
  line-height: 1.65;
}
.public-brain-profile-block {
  display: grid;
  gap: 10px;
}
.public-brain-profile-block h3 {
  margin: 0;
  font-size: 17px;
  line-height: 1.2;
}
.public-brain-profile-coverage {
  padding: 14px;
  border: 1px solid #e7d89c;
  border-radius: 8px;
  background: #fffaf0;
}
.public-brain-profile-coverage .simple-list {
  margin: 0;
}
.public-brain-profile-evidence {
  overflow: hidden;
  border: 1px solid #d9ddd9;
  border-radius: 8px;
  background: #fbfaf7;
}
.public-brain-profile-evidence summary {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  min-height: 48px;
  padding: 11px 14px;
  color: #172033;
  cursor: pointer;
  font-weight: 850;
}
.public-brain-profile-evidence summary::marker {
  color: #0e756b;
}
.public-brain-profile-evidence summary span:last-child {
  color: #667085;
  font-size: 13px;
}
.public-brain-profile-evidence[open] summary {
  border-bottom: 1px solid #d9ddd9;
  background: #f3f1eb;
}
.public-brain-profile-evidence summary:hover,
.public-brain-profile-evidence summary:focus-visible {
  background: #eef7f5;
}
.public-brain-profile-evidence-body {
  max-height: 32rem;
  overflow: auto;
  padding: 14px 18px 18px;
}
.public-brain-profile-evidence-body > p {
  margin-bottom: 12px;
  color: #667085;
  font-size: 13px;
}
.public-brain-profile-evidence-body .simple-list {
  margin: 0;
}
.public-brain-profile-answers {
  display: grid;
  gap: 12px;
}
.public-brain-profile-answer {
  display: grid;
  gap: 6px;
  padding: 14px;
  border: 1px solid #e5e1d7;
  border-radius: 8px;
  background: #fbfaf7;
}
.public-brain-profile-answer h4 {
  margin: 0;
  color: #111827;
  font-size: 16px;
  line-height: 1.3;
}
.public-brain-profile-actions {
  margin: 18px 0 0;
}
.public-brain-profile-actions a {
  display: inline-flex;
  align-items: center;
  min-height: 42px;
  padding: 9px 14px;
  border-radius: 6px;
  background: #0e756b;
  color: #fff;
  font-weight: 850;
}
.public-brain-profile-actions a:hover,
.public-brain-profile-actions a:focus-visible {
  background: #064f4a;
  color: #fff;
}
.public-brain-profile-link-list {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin: 0;
  padding: 0;
  list-style: none;
}
.public-brain-profile-link-list a {
  display: inline-flex;
  align-items: center;
  min-height: 38px;
  padding: 8px 12px;
  border: 1px solid #0e756b;
  border-radius: 6px;
  background: #fff;
  color: #0e756b;
  font-weight: 850;
}
.public-brain-profile-link-list a:hover,
.public-brain-profile-link-list a:focus-visible {
  background: #eef7f5;
  color: #064f4a;
}
@media (max-width: 640px) {
  .public-brain-profile-overview {
    grid-template-columns: 1fr;
  }
  .public-brain-profile-overview > div {
    grid-template-columns: auto 1fr;
    align-items: baseline;
    column-gap: 10px;
    padding: 13px 15px;
  }
  .public-brain-profile-topic-heading {
    display: grid;
    gap: 4px;
  }
  .public-brain-profile-topic-heading > span {
    padding-top: 0;
  }
  .public-brain-profile-evidence-body {
    max-height: 24rem;
    padding: 13px 15px 16px;
  }
}

.call-for-me-demo-wrap {
  display: grid;
  place-items: start center;
  min-height: calc(100vh - 190px);
  padding: 28px 20px 56px;
  background: #f7f8f7;
}

.call-for-me-demo-shell {
  padding: 30px;
  border: 1px solid #e2e5e3;
  border-radius: 16px;
  background: #fff;
  box-shadow: 0 18px 55px rgb(20 35 32 / 8%);
}

.call-for-me-paid-wrap {
  gap: 18px;
}

.call-for-me-paid-shell {
  display: grid;
  gap: 26px;
}

.call-for-me-paid-hero,
.call-for-me-paid-section-heading {
  display: grid;
  gap: 7px;
}

.call-for-me-paid-hero h1,
.call-for-me-paid-hero p,
.call-for-me-paid-section-heading h2,
.call-for-me-paid-section-heading p,
.call-for-me-paid-account p,
.call-for-me-paid-fineprint {
  margin: 0;
}

.call-for-me-paid-hero h1 {
  font-size: clamp(34px, 7vw, 52px);
  line-height: 1;
  letter-spacing: -.035em;
}

.call-for-me-paid-hero > p:last-child,
.call-for-me-paid-section-heading p,
.call-for-me-paid-fineprint,
.call-for-me-paid-account p {
  color: #667085;
  line-height: 1.55;
}

.call-for-me-paid-kicker {
  color: #0e756b;
  font-size: 12px;
  font-weight: 850;
  letter-spacing: .09em;
  text-transform: uppercase;
}

.call-for-me-paid-section-heading h2 {
  font-size: 20px;
}

.call-for-me-package-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
  margin-top: 15px;
}

.call-for-me-package-grid form {
  margin: 0;
}

.call-for-me-package-grid button {
  display: grid;
  place-items: center;
  gap: 3px;
  width: 100%;
  min-height: 82px;
  padding: 14px 10px;
  border: 1px solid #d5dad8;
  border-radius: 10px;
  background: #fff;
  color: #14211f;
  cursor: pointer;
}

.call-for-me-package-grid button:hover,
.call-for-me-package-grid button:focus-visible {
  border-color: #0e756b;
  background: #eef8f6;
}

.call-for-me-package-grid strong {
  font-size: 22px;
}

.call-for-me-package-grid span {
  color: #667085;
  font-size: 13px;
  font-weight: 700;
}

.call-for-me-paid-fineprint {
  margin-top: 13px;
  font-size: 13px;
}

.call-for-me-paid-notice {
  margin: 0;
  padding: 11px 13px;
  border-left: 3px solid #0e756b;
  background: #edf8f6;
  color: #155e55;
  font-weight: 700;
}

.call-for-me-recovery {
  padding-top: 18px;
  border-top: 1px solid #e2e5e3;
}

.call-for-me-recovery summary {
  color: #344054;
  font-weight: 750;
  cursor: pointer;
}

.call-for-me-recovery form {
  display: grid;
  gap: 7px;
  margin-top: 14px;
}

.call-for-me-recovery form > div {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 8px;
}

.call-for-me-recovery input,
.call-for-me-recovery button {
  min-height: 44px;
}

.call-for-me-entry-status {
  margin: 0;
  color: #475467;
  font-weight: 700;
}

.call-for-me-paid-account,
.call-for-me-topup {
  justify-self: center;
  width: min(100%, 700px);
  padding: 16px 18px;
  border: 1px solid #e2e5e3;
  border-radius: 12px;
  background: #fff;
}

.call-for-me-paid-account {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  align-items: center;
  gap: 18px;
}

.call-for-me-paid-account > div {
  display: grid;
  gap: 2px;
}

.call-for-me-paid-account span {
  color: #667085;
  font-size: 11px;
  font-weight: 800;
  letter-spacing: .04em;
  text-transform: uppercase;
}

.call-for-me-paid-account strong {
  color: #0e756b;
  font-size: 25px;
}

.call-for-me-paid-account form {
  margin: 0;
}

.call-for-me-paid-account button {
  padding: 0;
  border: 0;
  background: transparent;
  color: #667085;
  font: inherit;
  font-size: 12px;
  font-weight: 700;
  text-decoration: underline;
  cursor: pointer;
}

.call-for-me-topup {
  display: grid;
  gap: 4px;
}

.call-for-me-demo-admin {
  display: grid;
  gap: 22px;
  width: min(100%, 900px);
  margin-top: 44px;
  padding-top: 34px;
  border-top: 1px solid #dde2e6;
}

.call-for-me-demo-admin > header,
.call-for-me-demo-admin > header > div {
  display: grid;
  gap: 7px;
}

.call-for-me-demo-admin h2,
.call-for-me-demo-admin h3,
.call-for-me-demo-admin p {
  margin: 0;
}

.call-for-me-demo-admin h2 {
  font-size: 23px;
}

.call-for-me-demo-admin > header p,
.call-for-me-demo-empty {
  color: var(--app-muted, #667085);
}

.call-for-me-demo-notice {
  padding: 10px 12px;
  border-left: 3px solid var(--brand-teal, #0e756b);
  background: #f0f9f7;
  color: #155e55 !important;
}

.call-for-me-demo-create {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: end;
  gap: 12px;
}

.call-for-me-demo-create .field,
.call-for-me-demo-item-main,
.call-for-me-demo-item-main > div {
  display: grid;
  gap: 8px;
}

.call-for-me-demo-create label {
  font-size: 14px;
  font-weight: 750;
}

.call-for-me-demo-create input {
  min-height: 44px;
}

.call-for-me-demo-list {
  display: grid;
  gap: 12px;
}

.call-for-me-demo-item {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 20px;
  padding: 18px;
  border: 1px solid #e0e4e8;
  border-radius: 10px;
  background: #fff;
}

.call-for-me-demo-item-main > div {
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
}

.call-for-me-demo-item h3 {
  font-size: 16px;
}

.call-for-me-demo-title-link {
  color: inherit;
  text-decoration-color: transparent;
  text-underline-offset: 3px;
}

.call-for-me-demo-title-link:hover,
.call-for-me-demo-title-link:focus-visible {
  color: var(--app-link, #0e756b);
  text-decoration-color: currentColor;
}

.call-for-me-demo-item dl {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 12px;
  margin: 0;
}

.call-for-me-demo-item dl div {
  display: grid;
  gap: 2px;
}

.call-for-me-demo-item dt {
  color: #667085;
  font-size: 11px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: .04em;
}

.call-for-me-demo-item dd {
  margin: 0;
  font-size: 13px;
}

.call-for-me-demo-status {
  padding: 4px 8px;
  border-radius: 999px;
  background: #ecfdf3;
  color: #067647;
  font-size: 11px;
  font-weight: 750;
}

.call-for-me-demo-status--revoked,
.call-for-me-demo-status--expired,
.call-for-me-demo-status--call-limit-reached {
  background: #f2f4f7;
  color: #475467;
}

.call-for-me-demo-actions {
  display: flex;
  align-items: center;
  gap: 8px;
}

.call-for-me-demo-actions form {
  margin: 0;
}

@media (max-width: 640px) {
  .call-for-me-demo-wrap {
    padding: 14px 12px 32px;
  }

  .call-for-me-demo-shell {
    padding: 22px 16px;
    border-radius: 12px;
  }

  .call-for-me-package-grid {
    grid-template-columns: 1fr;
  }

  .call-for-me-package-grid button {
    grid-template-columns: auto auto;
    min-height: 56px;
  }

  .call-for-me-recovery form > div,
  .call-for-me-paid-account {
    grid-template-columns: 1fr;
  }

  .call-for-me-recovery button {
    width: 100%;
  }

  .call-for-me-demo-create,
  .call-for-me-demo-item {
    grid-template-columns: 1fr;
  }

  .call-for-me-demo-create .btn {
    width: 100%;
  }

  .call-for-me-demo-item dl {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
.shell { max-width: 1180px; margin: 0 auto; padding: 24px; }
.topbar { background: #fff; color: #111827; border-bottom: 1px solid #e5e7eb; }
.topbar .shell { display: flex; align-items: center; gap: 18px; padding-top: 12px; padding-bottom: 12px; }
.brand { color: #111827; display: inline-flex; align-items: center; flex: 0 0 auto; min-width: 0; }
.brand-logo { display: block; width: clamp(156px, 16vw, 210px); height: auto; }
.app-title { color: #667085; font-size: 12px; font-weight: 800; letter-spacing: .08em; line-height: 1.2; text-transform: uppercase; white-space: nowrap; }
.nav-menu { margin-left: auto; position: relative; }
.nav-toggle { appearance: none; display: none; background: transparent; color: inherit; }
.nav { display: flex; flex-wrap: wrap; gap: 16px; margin-left: auto; align-items: center; }
.nav a, .nav button { color: #475467; background: none; border: 0; border-radius: 6px; padding: 2px 0; cursor: pointer; font-size: 14px; font-weight: 650; }
.nav a:hover, .nav button:hover { color: #111827; }
.nav form { margin: 0; }
.current-org { max-width: 220px; color: #111827; font-size: 14px; font-weight: 800; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.nav-switcher select { width: auto; min-width: 150px; max-width: 220px; padding: 6px 28px 6px 9px; font-size: 14px; font-weight: 650; }
.app-topbar { position: sticky; top: 0; z-index: 40; }
.app-topbar-inner { max-width: none; display: grid; grid-template-columns: auto minmax(220px, 360px) auto auto; gap: 14px; align-items: center; padding: 10px 22px; }
.app-topbar .brand-logo { width: 152px; }
.org-switcher { display: flex; align-items: center; gap: 10px; min-width: 0; }
.org-switcher select {
  min-width: 0;
  min-height: 42px;
  height: auto;
  padding: 8px 36px 8px 11px;
  line-height: 1.25;
  font-weight: 750;
}

/* Training redesign and simplified app flow. */
:root {
  --sidebar-width: 240px;
}

@media (min-width: 901px) {
  body.has-app-sidebar {
    background: var(--warm-bg);
  }

  .app-topbar {
    margin-left: var(--sidebar-width);
    width: calc(100% - var(--sidebar-width));
    border-bottom: 2px solid var(--brand-yellow);
  }

  .app-topbar-inner {
    grid-template-columns: minmax(260px, 420px) minmax(0, 1fr) auto;
    min-height: 86px;
    padding: 16px 28px;
  }

  .app-mobile-brand,
  .app-nav-toggle {
    display: none;
  }

  .org-switcher,
  .org-context {
    grid-column: 1;
  }

  .account-menu {
    grid-column: 3;
  }

  .app-frame-with-sidebar,
  .app-frame-with-sidebar.sidebar-collapsed,
  html.sidebar-collapsed .app-frame-with-sidebar {
    display: block;
    padding-left: var(--sidebar-width);
  }

  .app-sidebar {
    position: fixed;
    inset: 0 auto 0 0;
    z-index: 60;
    width: var(--sidebar-width);
    height: 100vh;
    padding: 26px 10px 18px;
    background: #000;
    border-right: 0;
    border-bottom: 0;
    overflow-y: auto;
  }

  .app-sidebar-logo {
    display: grid;
    justify-items: center;
    margin: 0 10px 54px;
    padding: 0;
    background: transparent;
    border-radius: 0;
  }

  .app-sidebar-logo img {
    width: min(190px, 86%);
    height: auto;
    display: block;
  }

  .app-sidebar a:not(.app-sidebar-logo) {
    min-height: 48px;
    margin: 8px 0;
    padding: 11px 16px;
    border-left: 0;
    border-radius: 4px;
    color: #f4f1df;
    font-size: 17px;
    font-weight: 900;
  }

  .app-sidebar a.active:not(.app-sidebar-logo),
  .app-sidebar a:not(.app-sidebar-logo):hover {
    background: var(--brand-yellow);
    color: #000;
  }

  .app-main {
    max-width: none;
    padding: 0;
  }

  .app-main > .notice,
  .app-main > .errors {
    margin: 18px 32px;
  }

  .app-footer-with-sidebar {
    margin-left: var(--sidebar-width);
  }
}

.training-page-shell {
  min-height: calc(100vh - 86px);
  padding-bottom: 46px;
  background: var(--warm-bg);
}

.training-hero {
  width: 100%;
  margin: 0;
  border-bottom: 3px solid #000;
  background: #fff;
}

.training-hero img {
  width: 100%;
  max-height: 390px;
  object-fit: cover;
  object-position: center;
}

.training-intro {
  display: grid;
  justify-items: center;
  padding: 48px 24px 38px;
  text-align: center;
}

.training-intro h1 {
  position: absolute;
  width: 1px;
  height: 1px;
  overflow: hidden;
  clip: rect(0 0 0 0);
  white-space: nowrap;
}

.training-intro p {
  max-width: 980px;
  margin: 0;
  color: #000;
  font-size: 32px;
  font-weight: 900;
  line-height: 1.28;
}

.training-library-card {
  width: min(100% - 48px, 1320px);
  margin: 0 auto;
  overflow: hidden;
  border: 1px solid #e0ddd3;
  border-radius: 8px;
  background: #fff;
}

.training-library-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  min-height: 96px;
  padding: 24px 28px;
  background: var(--brand-yellow);
}

.training-library-header.secondary {
  min-height: 64px;
  background: #eeeadd;
}

.training-library-header h2 {
  margin: 0;
  color: #000;
  font-size: 26px;
  font-weight: 950;
  line-height: 1.15;
}

.training-library-header h2 span {
  margin-left: 6px;
  font-size: 18px;
  font-weight: 750;
  text-transform: none;
}

.training-add-button {
  display: inline-grid;
  place-items: center;
  width: 48px;
  height: 48px;
  flex: 0 0 auto;
  border: 2px solid #000;
  border-radius: 4px;
  background: #fff;
  color: #000;
  cursor: pointer;
  font-size: 34px;
  font-weight: 900;
  line-height: 1;
}

.training-add-button:hover,
.training-add-button:focus-visible {
  background: #000;
  color: #fff;
}

.training-library-header-actions {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: flex-end;
  gap: 12px;
}

.training-admin-demo-panel {
  display: grid;
  gap: 10px;
  min-width: min(100%, 560px);
  padding: 12px 14px;
  border: 1px solid rgba(0, 0, 0, .18);
  border-radius: 8px;
  background: rgba(255, 255, 255, .74);
}

.training-admin-demo-panel strong,
.source-admin-mock-panel strong {
  color: #111;
  font-size: 13px;
  font-weight: 900;
  letter-spacing: .06em;
  text-transform: uppercase;
}

.training-admin-demo-panel > div:first-child {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
}

.training-admin-demo-link {
  color: #0e756b;
  font-size: 13px;
  font-weight: 800;
}

.training-admin-demo-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.training-admin-demo-actions .btn {
  min-height: 40px;
}

.source-admin-mock-panel {
  display: grid;
  gap: 10px;
  padding: 14px;
  border: 1px solid #d8ddd2;
  border-radius: 8px;
  background: #fbfaf5;
}

.source-admin-mock-settings {
  display: grid;
  gap: 10px;
}

.training-library-table {
  display: grid;
  padding: 0 26px;
}

.training-library-head,
.training-library-row {
  display: grid;
  grid-template-columns: minmax(280px, 1.1fr) minmax(180px, .55fr) minmax(150px, auto);
  gap: 20px;
  align-items: center;
}

.training-library-head {
  min-height: 56px;
  color: #767676;
  font-size: 18px;
  font-weight: 850;
}

.training-library-head span:last-child {
  text-align: right;
}

.training-library-row {
  min-height: 84px;
  padding: 12px 0;
  border-top: 1px solid #ece8df;
}

.training-source-name {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: 18px;
  align-items: center;
  min-width: 0;
}

.training-source-name strong {
  display: block;
  overflow: hidden;
  color: #000;
  font-size: 21px;
  font-weight: 950;
  line-height: 1.2;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.training-source-icon {
  display: grid;
  place-items: center;
  width: 34px;
  height: 34px;
  color: #000;
}

.training-source-icon svg,
.training-icon-action svg {
  width: 24px;
  height: 24px;
  fill: none;
  stroke: currentColor;
  stroke-linecap: round;
  stroke-linejoin: round;
  stroke-width: 1.8;
}

.training-source-updated {
  color: #111;
  font-size: 20px;
}

.training-source-actions {
  display: flex;
  justify-content: flex-end;
  gap: 18px;
}

.training-source-actions form {
  margin: 0;
}

.training-icon-action {
  display: inline-grid;
  place-items: center;
  width: 36px;
  height: 36px;
  border: 0;
  border-radius: 6px;
  background: transparent;
  color: var(--brand-teal);
  cursor: pointer;
  font-weight: 900;
}

.training-icon-action:hover,
.training-icon-action:focus-visible {
  background: #e8f4f2;
  color: #064f4a;
}

.training-library-empty {
  display: grid;
  gap: 6px;
  padding: 34px 0 38px;
  border-top: 1px solid #ece8df;
}

.training-library-empty h3,
.training-library-empty p {
  margin: 0;
}

.training-continue {
  width: min(100% - 48px, 1320px);
  display: flex;
  justify-content: flex-end;
  margin: 56px auto 0;
}

.training-continue-button {
  min-width: min(420px, 100%);
  min-height: 82px;
  border: 5px solid #07574f;
  border-radius: 8px;
  background: var(--brand-teal);
  color: #fff;
  font-size: 27px;
  font-weight: 950;
}

.training-continue-button:hover {
  background: #0b6b63;
  color: #fff;
}

.home-orientation-steps {
  grid-template-columns: minmax(0, 1fr);
  max-width: 560px;
}

.tools-testing-cta {
  margin-top: 26px;
}

@media (max-width: 900px) {
  .public-header, .public-nav, .public-footer, .client-page-control { display: grid; }
  .client-page-grid { grid-template-columns: 1fr; }
  .client-directory-toolbar, .client-directory-form { grid-template-columns: 1fr; display: grid; align-items: stretch; }
  .client-directory-count { white-space: normal; }
  .client-directory-results { grid-template-columns: 1fr; }
  .client-cta { padding: 20px; }
  .app-topbar-inner {
    grid-template-columns: auto minmax(0, 1fr) auto;
    align-items: center;
  }

  .app-nav-toggle {
    display: inline-grid;
    grid-column: 1;
    grid-row: 1;
  }

  .app-mobile-brand {
    display: inline-flex;
    grid-column: 2;
    grid-row: 1;
    width: max-content;
    max-width: 100%;
  }

  .account-menu {
    grid-column: 3;
    grid-row: 1;
  }

  .org-switcher,
  .org-context {
    grid-column: 1 / -1;
    grid-row: 2;
  }

  .app-sidebar {
    position: fixed;
    inset: 0 auto 0 0;
    z-index: 80;
    display: block;
    width: min(82vw, 310px);
    height: 100vh;
    padding: 22px 12px;
    overflow-y: auto;
    border-bottom: 0;
    transform: translateX(-104%);
    transition: transform .2s ease;
  }

  body.mobile-nav-open .app-sidebar {
    transform: translateX(0);
  }

  .app-sidebar-logo {
    display: block;
    margin: 0 8px 28px;
  }

  .app-sidebar-logo img {
    width: 176px;
    max-width: 90%;
  }

  .app-sidebar a:not(.app-sidebar-logo) {
    justify-content: flex-start;
    margin: 7px 0;
    padding: 12px 14px;
    font-size: 17px;
    text-align: left;
  }

  .training-page-shell {
    min-height: auto;
  }

  .training-hero,
  html.sidebar-collapsed .training-hero {
    width: 100%;
    margin: 0;
  }

  .training-hero img {
    min-height: 190px;
  }

  .training-intro {
    padding: 30px 16px 28px;
  }

  .training-intro p {
    font-size: 24px;
  }

  .training-library-card,
  .training-continue {
    width: calc(100% - 28px);
  }

  .training-library-header {
    min-height: 72px;
    padding: 18px;
  }

  .training-library-header h2 {
    font-size: 20px;
  }

  .training-library-header h2 span {
    display: block;
    margin: 4px 0 0;
    font-size: 15px;
  }

  .training-library-table {
    padding: 0 16px 8px;
  }

  .training-library-head {
    display: none;
  }

  .training-library-row {
    grid-template-columns: 1fr;
    gap: 12px;
    align-items: start;
    min-height: 0;
    padding: 18px 0;
  }

  .training-source-name strong {
    white-space: normal;
    overflow-wrap: anywhere;
    font-size: 18px;
  }

  .training-source-updated {
    padding-left: 52px;
    font-size: 15px;
  }

  .training-source-actions {
    justify-content: flex-start;
    padding-left: 48px;
  }

  .training-icon-action {
    width: 44px;
    height: 44px;
  }

  .training-continue {
    justify-content: stretch;
    margin-top: 34px;
  }

  .training-continue-button {
    width: 100%;
    min-width: 0;
    min-height: 64px;
    font-size: 21px;
  }
}

.assistant-home-layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 320px;
  gap: 20px;
}

.assistant-home-main,
.assistant-home-side {
  display: grid;
  gap: 16px;
  align-content: start;
}

.assistant-first-header {
  margin-bottom: 0;
}

.assistant-stepper,
.suggested-question-row,
.assistant-feedback-actions,
.compact-radio-grid {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}

.assistant-stepper span {
  border: 1px solid var(--line);
  border-radius: 999px;
  padding: 8px 12px;
  color: var(--muted);
  background: var(--panel);
}

.assistant-stepper span.active {
  color: var(--ink);
  border-color: var(--brand);
  background: rgba(250, 204, 21, 0.16);
}

.question-chip {
  border: 1px solid var(--line);
  border-radius: 999px;
  background: #fff;
  color: var(--ink);
  padding: 8px 12px;
  cursor: pointer;
}

.question-chip:hover,
.question-chip:focus {
  border-color: var(--brand);
}

.assistant-live-preview {
  display: grid;
  gap: 14px;
}

.assistant-inline-feedback {
  margin-top: 12px;
  display: grid;
  gap: 10px;
}

.feedback-correction-panel {
  border: 1px solid var(--line);
  border-radius: 8px;
  padding: 14px;
  background: rgba(17, 24, 39, 0.03);
}

.compact-radio-grid {
  border: 0;
  padding: 0;
  margin: 0 0 10px;
}

.compact-radio-grid legend {
  width: 100%;
  font-weight: 700;
  margin-bottom: 4px;
}

.question-review-list {
  display: grid;
  gap: 14px;
}

.question-review-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 16px;
  align-items: start;
}

.question-review-row h2 {
  font-size: 20px;
  margin: 10px 0 8px;
}

.question-review-row > .usage-improve-drawer {
  grid-column: 2;
  grid-row: 1;
  justify-self: end;
}

.question-conversation-details {
  grid-column: 1 / -1;
}

.install-steps-list {
  display: grid;
  gap: 8px;
  margin: 0;
  padding-left: 22px;
}

.compact-source-list {
  display: grid;
  gap: 10px;
}

.source-row {
  display: flex;
  justify-content: space-between;
  gap: 14px;
  align-items: center;
  border: 1px solid var(--line);
  border-radius: 8px;
  padding: 12px;
}

@media (max-width: 900px) {
  .members-management-grid {
    grid-template-columns: 1fr;
  }

  .member-role-form {
    grid-template-columns: 1fr;
  }

  .member-actions .member-role-form > .btn { grid-column: 1; }

  .assistant-home-layout,
  .question-review-row {
    grid-template-columns: 1fr;
  }

  .question-review-row > .usage-improve-drawer {
    grid-column: 1;
    grid-row: auto;
    justify-self: start;
  }
}
.org-switcher a { white-space: nowrap; color: #475467; font-weight: 750; }
.org-context { min-width: 0; display: flex; align-items: center; min-height: 38px; padding: 8px 11px; border: 1px solid #d1d5db; border-radius: 6px; background: #fff; color: #111827; font-weight: 800; }
.org-context span { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.account-menu { position: relative; justify-self: end; }
.account-menu summary { display: inline-flex; align-items: center; min-height: 38px; max-width: 220px; padding: 7px 11px; border: 1px solid #d1d5db; border-radius: 6px; background: #fff; cursor: pointer; font-weight: 750; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.account-menu-label { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.account-menu-initial { display: none; }
.account-menu-panel { position: absolute; right: 0; top: calc(100% + 8px); z-index: 50; min-width: 190px; display: grid; gap: 4px; padding: 8px; border: 1px solid #e5e7eb; border-radius: 8px; background: #fff; box-shadow: 0 18px 42px rgba(17, 24, 39, .13); }
.account-menu-panel a, .account-menu-panel button { width: 100%; display: block; padding: 8px 9px; border: 0; border-radius: 6px; background: transparent; color: #344054; text-align: left; cursor: pointer; font-weight: 700; }
.account-menu-panel a:hover, .account-menu-panel button:hover { background: #f8fafc; color: #111827; }
.app-frame { display: grid; grid-template-columns: minmax(0, 1fr); min-height: calc(100vh - 64px); }
.app-frame-with-sidebar { grid-template-columns: 220px minmax(0, 1fr); }
.app-sidebar { position: sticky; top: 59px; align-self: start; height: calc(100vh - 59px); display: grid; align-content: start; gap: 6px; padding: 20px 14px; border-right: 1px solid #e5e7eb; background: #fff; }
.app-sidebar a { display: flex; align-items: center; min-height: 40px; padding: 9px 11px; border-radius: 6px; color: #475467; font-weight: 800; }
.app-sidebar a.active, .app-sidebar a:hover { background: #f1f5f9; color: #111827; }
.app-main { min-width: 0; width: 100%; max-width: 1160px; padding: 26px 30px 42px; }
.app-frame-standalone .app-main { max-width: none; }
.page-header { display: flex; align-items: flex-start; justify-content: space-between; gap: 18px; margin: 0 0 20px; }
.compact-header h1 { margin: 0 0 6px; font-size: 30px; line-height: 1.15; letter-spacing: 0; }
.compact-header p { max-width: 680px; margin: 0; font-size: 16px; }
.next-step-card { display: flex; align-items: center; justify-content: space-between; gap: 18px; margin-bottom: 18px; padding: 22px; border: 1px solid #d7dde7; border-radius: 8px; background: #fff; box-shadow: 0 18px 42px rgba(17, 24, 39, .06); }
.next-step-card h2 { margin: 0 0 6px; font-size: 26px; line-height: 1.16; }
.next-step-card p { margin: 0; color: #344054; }
.home-next-action { white-space: nowrap; }
.home-next-actions { display: flex; flex-wrap: wrap; gap: 10px; align-items: center; justify-content: flex-end; }
.status-row { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 12px; margin-bottom: 18px; }
.status-tile { display: grid; gap: 2px; padding: 16px; border: 1px solid #e5e7eb; border-radius: 8px; background: #fff; }
.status-tile strong { font-size: 28px; line-height: 1; }
.status-tile span { color: #667085; font-weight: 700; }
.primary-cards { margin-bottom: 18px; }
.action-card { min-height: 150px; align-content: space-between; }
.action-card h2, .tool-card h2, .setup-section h2 { margin: 0 0 6px; font-size: 21px; line-height: 1.2; }
.activity-list, .compact-list, .source-card-list { display: grid; gap: 12px; }
.activity-item, .compact-row { display: flex; align-items: center; justify-content: space-between; gap: 14px; padding: 12px 14px; border-top: 1px solid #e5e7eb; }
.activity-item:first-child, .compact-row:first-child { border-top: 0; }
.activity-item p, .compact-row p { margin: 2px 0 0; }
.readiness-strip { display: flex; align-items: center; gap: 12px; margin-bottom: 18px; padding: 14px 16px; border: 1px solid #e5e7eb; border-radius: 8px; background: #fff; }
.readiness-strip p { margin: 0; color: #344054; font-weight: 650; }
.readiness-strip.ready, .readiness-strip.live { border-color: #bbf7d0; background: #f0fdf4; }
.readiness-strip.blocked { border-color: #fed7aa; background: #fff7ed; }
.readiness-strip.adding, .readiness-strip.testing { border-color: #ebe3a4; background: #fffbea; }
.add-knowledge-panel, .setup-section { margin-bottom: 18px; }
.mini-form { display: grid; gap: 10px; align-content: start; padding: 14px; border: 1px solid #e5e7eb; border-radius: 8px; background: #f8fafc; }
.mini-form h3, .source-card h3, .test-result h3, .compact-row h3 { margin: 0; font-size: 16px; line-height: 1.25; }
.checkbox-row { display: flex; grid-template-columns: none; align-items: center; gap: 8px; font-weight: 650; }
.checkbox-row input { width: auto; }
.paste-knowledge { margin-top: 14px; }
.paste-knowledge summary { cursor: pointer; font-weight: 800; color: #111827; }
.paste-knowledge form { margin-top: 14px; }
.knowledge-flow { display: grid; gap: 14px; }
.knowledge-flow summary { display: inline-grid; gap: 2px; justify-self: start; min-width: 220px; min-height: 46px; padding: 10px 14px; border: 1px solid #111827; border-radius: 6px; background: #111827; color: #fff; cursor: pointer; font-weight: 800; list-style: none; }
.knowledge-flow summary::-webkit-details-marker { display: none; }
.knowledge-flow summary small { color: rgba(255, 255, 255, .78); font-size: 13px; font-weight: 650; }
.knowledge-flow-body { display: grid; gap: 16px; margin-top: 16px; }
.knowledge-type-tabs { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 10px; }
.knowledge-type { display: grid; gap: 4px; min-height: 96px; padding: 12px; border: 1px solid #e5e7eb; border-radius: 8px; background: #fff; color: #172033; text-align: left; cursor: pointer; }
.knowledge-type strong { font-size: 15px; }
.knowledge-type span { color: #667085; font-size: 13px; line-height: 1.35; }
.knowledge-type.active { border-color: #0e756b; background: #e8f4f2; box-shadow: inset 0 0 0 1px #0e756b; }
.knowledge-entry-form { display: grid; gap: 12px; max-width: 760px; padding: 16px; border: 1px solid #e5e7eb; border-radius: 8px; background: #f8fafc; }
.knowledge-entry-form h3 { margin: 0; font-size: 18px; line-height: 1.2; }
.knowledge-entry-form p { margin: 0; }
.source-card { display: grid; gap: 12px; padding: 16px; border: 1px solid #e5e7eb; border-radius: 8px; background: #fff; }
.source-card-status { display: flex; flex-wrap: wrap; gap: 8px; }
.source-limit-line { display: flex; flex-wrap: wrap; justify-content: space-between; gap: 10px; padding: 12px 0 0; border-top: 1px solid #e5e7eb; color: #475467; font-weight: 800; }
.source-row { align-items: start; }
.source-row-main { display: grid; grid-template-columns: auto minmax(0, 1fr); gap: 12px; align-items: start; }
.source-check { display: flex; align-items: center; gap: 8px; }
.source-check input { width: auto; }
.source-type-icon { display: grid; place-items: center; min-width: 34px; height: 34px; border: 1px solid #c8ddd9; border-radius: 6px; background: #e8f4f2; color: #0e756b; font-size: 12px; font-weight: 900; }
.source-row-title { display: grid; gap: 2px; min-width: 0; color: #111827; }
.source-row-title strong { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.topic-chip-row { display: flex; flex-wrap: wrap; gap: 7px; }
.topic-chip-row span { display: inline-flex; align-items: center; min-height: 28px; padding: 4px 9px; border: 1px solid #c8ddd9; border-radius: 999px; background: #f5fbf9; color: #0e756b; font-size: 12px; font-weight: 800; }
.source-select-all { justify-self: end; }
.test-form { display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: end; gap: 12px; margin-bottom: 18px; }
.test-results { display: grid; gap: 14px; }
.test-result { display: grid; gap: 10px; padding: 16px; border: 1px solid #e5e7eb; border-radius: 8px; background: #f8fafc; }
.test-result p { margin: 0; }
.empty-state { display: grid; gap: 8px; justify-items: start; padding: 18px; border: 1px dashed #cbd5e1; border-radius: 8px; background: #f8fafc; }
.empty-state h3 { margin: 0; }
.tool-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; }
.tool-card { min-height: 210px; align-content: space-between; }
.tool-card-header { display: flex; align-items: start; justify-content: space-between; gap: 12px; }
.tool-card-header h2 a { color: inherit; text-decoration: none; }
.tool-card-header h2 a:hover { color: var(--brand-teal); text-decoration: underline; text-underline-offset: 3px; }
.tool-card-actions { display: flex; flex-wrap: wrap; gap: 10px; }
.assistant-status-line { margin: 0 0 8px; }
.assistant-dashboard-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 16px; margin: 0 0 18px; }
.assistant-dashboard-grid-compact { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.assistant-metric { min-height: 112px; }
.assistant-metric-link { color: inherit; text-decoration: none; transition: border-color .16s ease, box-shadow .16s ease, transform .16s ease; }
.assistant-metric-link:hover { border-color: var(--brand-teal); box-shadow: 0 14px 28px rgba(10, 20, 20, .08); transform: translateY(-1px); }
.assistant-metric-link:hover span { color: var(--brand-teal); text-decoration: underline; text-underline-offset: 3px; }
.assistant-metric strong { display: block; color: var(--ink); font-size: 30px; line-height: 1.1; }
.assistant-metric strong.metric-text { font-size: 22px; line-height: 1.18; }
.assistant-metric span { display: block; margin-top: 8px; color: #475467; font-weight: 800; }
.page-action-nav { display: flex; flex-wrap: wrap; gap: 10px; margin: -10px auto 18px; }
.page-action-nav .btn { min-height: 40px; }
.brain-subpage-nav { margin: 0 0 18px; }
.section-footer-actions { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 16px; padding-top: 14px; border-top: 1px solid var(--warm-line); }
.uses-brain { display: inline-flex; justify-self: start; border: 1px solid #dbe3ef; border-radius: 999px; padding: 5px 9px; background: #f8fafc; color: #344054; font-size: 13px; font-weight: 800; }
.tool-setup { display: grid; gap: 18px; }
.tool-simple-panel { display: grid; gap: 16px; }
.tool-simple-panel h2 { margin-bottom: 0; }
.tool-simple-panel > .btn { justify-self: start; }
.handoff-option,
.lead-mode-panel { display: grid; gap: 14px; padding: 14px; border: 1px solid #e5e7eb; border-radius: 8px; background: #f8fafc; }
.handoff-option h3,
.lead-mode-panel h3 { margin: 0 0 3px; font-size: 16px; line-height: 1.25; }
.handoff-option p,
.lead-mode-panel p { margin: 0; }
.lead-choice-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
.lead-choice-card { display: grid; grid-template-columns: auto minmax(0, 1fr); gap: 10px; align-items: start; min-height: 92px; padding: 12px; border: 1px solid #dbe3ef; border-radius: 8px; background: #fff; cursor: pointer; }
.lead-choice-card:has(input:checked) { border-color: var(--brand-teal); box-shadow: inset 4px 0 0 var(--brand-teal); }
.lead-choice-card input { width: auto; margin-top: 3px; }
.lead-choice-card strong { display: block; margin-bottom: 3px; }
.lead-settings { display: grid; gap: 12px; padding-top: 2px; }
.lead-settings[hidden] { display: none; }
.lead-extra-options summary { cursor: pointer; color: #667085; font-weight: 850; }
.lead-extra-options summary:hover { color: var(--brand-teal); }
.advanced-tool-options { margin-top: 4px; }
.advanced-tool-options summary { cursor: pointer; color: #667085; font-weight: 850; }
.advanced-tool-options summary:hover { color: var(--brand-teal); }
.widget-key-panel,
.install-option {
    border-color: rgba(14, 117, 107, .35);
    box-shadow: inset 4px 0 0 var(--brand-teal);
}
.install-options { display: grid; gap: 12px; margin-top: 8px; }
.install-options h3 { margin-bottom: 0; }
.install-option { padding: 14px 16px; border: 1px solid rgba(14, 117, 107, .35); border-radius: 8px; background: #fff; }
.install-option summary { cursor: pointer; color: var(--ink); font-weight: 850; }
.install-option summary:hover { color: var(--brand-teal); }
.install-option[open] { background: #f6fbfa; }
.inline-panel { margin-top: 14px; padding-top: 14px; border-top: 1px solid rgba(14, 117, 107, .2); display: grid; gap: 8px; }
.inline-panel h4 { margin: 0; font-size: .98rem; }
.install-steps { margin-top: 6px; }
.install-steps summary { color: #667085; font-size: 14px; }
.install-steps ol { margin: 10px 0 0 20px; padding: 0; color: #344054; font-weight: 650; }
.install-steps li + li { margin-top: 6px; }
.launch-readiness { display: grid; gap: 8px; padding: 12px 14px; border: 1px solid #f2d9a0; border-radius: 8px; background: #fffaf0; }
.launch-readiness h3 { margin-bottom: 0; }
.launch-recommendations { display: grid; gap: 8px; padding: 12px 14px; border: 1px solid #dbe3ef; border-radius: 8px; background: #f8fafc; }
.launch-recommendations h3 { margin-bottom: 0; }
.copy-field-row {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: 12px;
    align-items: end;
}
.copy-field-row input[readonly] {
    font-family: ui-monospace, SFMono-Regular, Consolas, "Liberation Mono", monospace;
    letter-spacing: 0;
}
.advanced-tool-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; padding-top: 14px; }
.advanced-tool-grid .field-stack:has(textarea) { grid-column: 1 / -1; }
.color-control-label input[type="color"] { width: 64px; height: 44px; padding: 3px; }
.field-stack { display: grid; gap: 6px; align-content: start; min-width: 0; }
.field-label-row { display: inline-flex; align-items: center; gap: 6px; justify-self: start; font-weight: 650; }
.field-label-row label { display: inline; gap: 0; font-weight: 650; }
.label-with-tooltip { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 8px; align-items: center; }
.wordpress-directory-link { display: inline-block; margin-top: 8px; }
.member-invite-modal { width: min(100%, 520px); }
.field-note { color: #667085; font-size: 13px; font-weight: 650; line-height: 1.35; }
.tool-next-step { display: grid; align-content: center; justify-items: start; gap: 10px; padding: 4px 0; }
.tool-next-step:has(> [hidden]:only-child) { display: none; }
.tool-next-step h3 { margin: 0; font-size: 20px; }
.try-it-stack { display: grid; gap: 14px; max-width: 760px; margin-top: 14px; }
.try-it-stack .tool-next-step { align-content: start; padding: 0; }
.training-helper { margin: 8px 14px 0; }
.field-group { display: grid; gap: 8px; margin: 0; padding: 12px; border: 1px solid #e5e7eb; border-radius: 8px; }
.field-group legend { padding: 0 5px; font-weight: 800; }
.field-group .checkbox-row .field-note { margin-left: auto; }
.lead-field-row { width: 100%; }
.info-tooltip {
  position: relative;
  display: inline-grid;
  place-items: center;
  width: 18px;
  height: 18px;
  margin-left: 0;
  border: 1px solid rgba(14, 117, 107, .32);
  border-radius: 50%;
  background: #f5fbf9;
  color: var(--brand-teal);
  cursor: help;
  font-size: 12px;
  font-weight: 900;
  line-height: 1;
  vertical-align: middle;
}
.info-tooltip span[role="tooltip"] {
  position: absolute;
  left: calc(100% + 8px);
  top: 50%;
  z-index: 120;
  display: none;
  width: 220px;
  padding: 8px 10px;
  border: 1px solid rgba(16, 33, 45, .14);
  border-radius: 6px;
  background: #10212d;
  color: #fbfaf6;
  font-size: 12px;
  font-weight: 650;
  line-height: 1.35;
  transform: translateY(-50%);
  box-shadow: 0 12px 28px rgba(16, 33, 45, .18);
}

.advanced-tool-grid .field-stack:nth-child(even) .info-tooltip span[role="tooltip"] {
  right: calc(100% + 8px);
  left: auto;
}
.info-tooltip:hover span[role="tooltip"],
.info-tooltip:focus span[role="tooltip"],
.info-tooltip:focus-visible span[role="tooltip"] {
  display: block;
}
.launch-grid { align-items: start; margin: 14px 0; }
.widget-preview { overflow: hidden; border: 1px solid #d1d5db; border-radius: 8px; background: #fff; }
.preview-header { padding: 12px 14px; color: #fff; font-weight: 800; }
.preview-body { padding: 18px 14px; color: #344054; }
.widget-preview form { padding: 0 14px 14px; }
.source-text-preview { max-height: 520px; overflow: auto; white-space: pre-wrap; word-break: break-word; margin: 0; padding: 12px; border-radius: 8px; background: #f8fafc; color: #172033; font: 13px/1.5 ui-monospace, SFMono-Regular, Consolas, monospace; }
.source-rich-preview { max-height: 520px; overflow: auto; margin: 0; padding: 16px; border-radius: 8px; background: #f8fafc; color: #172033; font-size: 15px; line-height: 1.55; }
.source-rich-preview > *:first-child { margin-top: 0; }
.source-rich-preview > *:last-child { margin-bottom: 0; }
.source-rich-preview h3, .source-rich-preview h4 { color: #111827; letter-spacing: 0; }
.source-rich-preview h3 { margin: 0 0 12px; font-size: 20px; line-height: 1.2; }
.source-rich-preview h4 { margin: 22px 0 8px; font-size: 16px; line-height: 1.25; }
.source-rich-preview p { margin: 0 0 14px; }
.source-rich-preview ul { display: grid; gap: 6px; margin: 0 0 14px; padding-left: 22px; }
.source-rich-preview-table { max-width: 100%; overflow-x: auto; margin: 0 0 14px; }
.source-rich-preview table { width: 100%; border-collapse: collapse; background: #fff; }
.source-rich-preview td { padding: 8px 10px; border: 1px solid #dbe3ea; vertical-align: top; }
.source-edit-form { display: grid; gap: 12px; }
.source-name-row { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 10px; align-items: end; }
.source-name-row label { margin: 0; min-width: 0; }
.source-edit-form textarea { min-height: 420px; font: 13px/1.5 ui-monospace, SFMono-Regular, Consolas, monospace; background: #f8fafc; }
.form-actions { display: flex; justify-content: flex-end; gap: 10px; }
.source-detail-button { display: block; width: 100%; margin: 6px 0 0; padding: 9px 10px; border: 1px solid var(--warm-line); border-radius: 6px; background: #fff; color: var(--brand-teal); text-align: left; font: inherit; font-weight: 800; cursor: pointer; }
.source-detail-button:hover { border-color: var(--brand-teal); background: #f6fbfa; }
.flowbar { background: #fff; border-bottom: 1px solid #e5e7eb; }
.flow { display: flex; flex-wrap: wrap; gap: 14px; align-items: center; padding-top: 10px; padding-bottom: 10px; }
.flow a { font-weight: 700; color: #111827; }
.flow span { margin-left: auto; color: #667085; font-size: 13px; }
.grid { display: grid; gap: 18px; }
.grid.two { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.grid.three { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.grid.six { grid-template-columns: repeat(6, minmax(0, 1fr)); }
.panel, .card { background: #fff; border: 1px solid #e5e7eb; border-radius: 8px; padding: 18px; }
.card { display: grid; gap: 10px; }
.summary-grid { margin-bottom: 18px; }
.metric h2 { margin: 0; font-size: 28px; }
.queue-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; }
.queue-grid > div { display: grid; align-content: start; gap: 8px; }
.queue-grid h3 { margin: 0; font-size: 15px; }
.page-actions { margin-bottom: 16px; }
.detail-list { display: grid; grid-template-columns: 150px 1fr; gap: 8px 14px; margin: 0; }
.detail-list dt { color: #667085; font-weight: 700; }
.detail-list dd { margin: 0; }
.simple-detail-list { grid-template-columns: minmax(140px, 190px) 1fr; max-width: 620px; }
.source-summary-panel, .source-about-panel { margin-bottom: 18px; }
.source-about-summary summary { cursor: pointer; }
.settings-tabs { display: flex; flex-wrap: wrap; gap: 10px; margin: -4px 0 18px; }
.settings-tabs a { display: inline-flex; min-height: 38px; align-items: center; border: 1px solid #d1d5db; border-radius: 6px; padding: 7px 11px; color: #344054; background: #fff; font-weight: 750; }
.settings-tabs a.active { border-color: #111827; background: #111827; color: #fff; }
.settings-panel { max-width: 680px; }
.organization-switch-layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(320px, 1fr);
  gap: 22px;
  align-items: stretch;
}

.organization-create-panel,
.organization-switch-panel {
  display: grid;
  align-content: start;
  gap: 18px;
  min-width: 0;
}

.organization-create-panel h2,
.organization-switch-panel h2 {
  margin: 0;
}

.organization-create-panel .auth-form,
.organization-switch-form {
  display: grid;
  gap: 18px;
}

.organization-switch-form select {
  width: 100%;
  min-height: 48px;
  padding: 10px 44px 10px 14px;
  border: 1px solid var(--brand-teal);
  border-radius: 8px;
  background-color: #fff;
  color: #172033;
  font: inherit;
  font-weight: 750;
}

.organization-switch-form .btn {
  justify-self: start;
}
.settings-grid { align-items: start; }
.quiet-panel { background: #f8fafc; }
.members-management-grid { display: grid; grid-template-columns: minmax(0, 1.15fr) minmax(320px, .85fr); gap: 16px; align-items: stretch; margin-bottom: 16px; }
.members-invite-panel, .members-role-panel { display: grid; align-content: start; gap: 12px; }
.members-invite-panel h2, .members-role-panel h2, .members-table-panel h2 { margin: 0; }
.members-table-panel { padding: 0; overflow: hidden; }
.members-table-heading { display: flex; align-items: flex-start; justify-content: space-between; gap: 16px; padding: 18px 20px; border-bottom: 1px solid var(--warm-line); background: #fbfaf6; }
.members-table-heading h2 span { color: #667085; font-size: 16px; font-weight: 750; }
.members-table-heading p { margin: 4px 0 0; }
.members-table-panel .responsive-table { width: 100%; border-collapse: collapse; }
.members-table-panel .responsive-table th { padding: 12px 20px; background: #f7f3e8; color: #344054; text-align: left; font-size: 12px; letter-spacing: .04em; text-transform: uppercase; }
.members-table-panel .responsive-table td { padding: 14px 20px; border-top: 1px solid var(--warm-line); vertical-align: middle; }
.member-actions { display: flex; flex-wrap: wrap; gap: 8px; align-items: center; margin: 0; }
.member-role-form { display: grid; grid-template-columns: minmax(130px, 180px) auto; gap: 8px; align-items: center; margin: 0; }
.member-role-form .member-section-access { grid-column: 1 / -1; }
.member-role-form > .btn { grid-column: 2; }
.member-remove-form { margin: 0; }
.member-role-text { color: #344054; font-weight: 750; }
.role-guide { display: grid; grid-template-columns: auto 1fr; gap: 8px 12px; margin: 0; }
.role-guide dt { font-weight: 800; color: #172033; }
.role-guide dd { margin: 0; color: #475467; }
.final-owner-note { max-width: 220px; }
.stacked-item { display: grid; gap: 6px; padding: 10px 0; border-bottom: 1px solid #e5e7eb; }
.stacked-item:last-child { border-bottom: 0; }
.note-form { display: grid; gap: 10px; margin-bottom: 16px; }
.source-name { overflow-wrap: anywhere; }
.source-preview { margin-top: 6px; color: #475467; }
.source-preview summary { cursor: pointer; font-weight: 700; color: #0e756b; }
.source-preview div { margin-top: 6px; white-space: pre-wrap; }
.muted { color: #667085; }
.eyebrow { margin: 0 0 8px; color: #475467; font-size: 12px; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
.field-hint { font-weight: 400; }
.status { display: inline-flex; align-items: center; border-radius: 999px; padding: 4px 9px; background: #eef2ff; color: #3730a3; font-size: 12px; font-weight: 700; text-transform: uppercase; }
.status.published, .ok { background: #dcfce7; color: #166534; }
.status.paused, .status.failed, .bad { background: #fee2e2; color: #991b1b; }
.status.excluded { background: #f3f4f6; color: #374151; }
.status.testing { background: #fef3c7; color: #92400e; }
.status.processing, .status.uploaded { background: #fef3c7; color: #92400e; }
.actions { display: flex; flex-wrap: wrap; gap: 10px; align-items: center; margin-bottom: 12px; }
.actions:last-child { margin-bottom: 0; }
.btn { border: 1px solid #111827; background: #111827; color: #fff; border-radius: 6px; padding: 9px 12px; cursor: pointer; display: inline-flex; align-items: center; justify-content: center; min-height: 40px; margin-bottom: 8px; overflow-wrap: normal; word-break: normal; }
.btn.secondary { background: #fff; color: #111827; border-color: #d1d5db; }
.btn.danger { background: #991b1b; border-color: #991b1b; }
.btn:disabled { opacity: .55; cursor: not-allowed; }
.btn.is-loading, button.is-loading { display: inline-flex; align-items: center; justify-content: center; gap: 8px; }
.loading-spinner { width: 1em; height: 1em; flex: 0 0 auto; border: 2px solid currentColor; border-right-color: transparent; border-radius: 999px; animation: spin .65s linear infinite; }
.submit-pending button:not(.is-loading) { cursor: not-allowed; }
.submit-pending a.btn.is-disabled { opacity: .55; cursor: not-allowed; pointer-events: none; }
@keyframes spin { to { transform: rotate(360deg); } }
label { display: grid; gap: 6px; font-weight: 650; }
input, textarea, select { width: 100%; border: 1px solid #cbd5e1; border-radius: 6px; padding: 10px 11px; background: #fff; color: #111827; font-weight: 400; }
fieldset.member-section-access { display: flex; flex-wrap: wrap; gap: 6px 16px; min-width: 0; margin: 0; padding: 0; border: 0; }
fieldset.member-section-access > legend { width: 100%; margin-bottom: 2px; font-weight: 700; }
fieldset.member-section-access > p { flex: 1 0 100%; margin: 0 0 2px; }
fieldset.member-section-access > label { display: inline-flex; align-items: center; gap: 6px; min-height: 36px; white-space: nowrap; }
fieldset.member-section-access input[type="checkbox"] { flex: 0 0 auto; width: 18px; height: 18px; margin: 0; padding: 0; }
.advanced-tool-grid .color-control-label input[type="color"] { width: 64px; height: 44px; padding: 3px; }
input::placeholder, textarea::placeholder { color: #667085; font-weight: 400; opacity: 1; }
input:focus, textarea:focus, select:focus, button:focus-visible, a:focus-visible { outline: 3px solid rgba(29, 78, 216, .24); outline-offset: 2px; }
input[aria-invalid="true"] { border-color: #b42318; }
textarea { min-height: 110px; resize: vertical; }
table { width: 100%; border-collapse: collapse; background: #fff; }
th, td { text-align: left; padding: 11px; border-bottom: 1px solid #e5e7eb; vertical-align: top; }
th { color: #475467; font-size: 13px; }
.notice { margin-bottom: 16px; padding: 12px 14px; border-radius: 8px; background: #ecfdf5; color: #166534; }
.errors { margin-bottom: 16px; padding: 12px 14px; border-radius: 8px; background: #fef2f2; color: #991b1b; }
.chat { display: grid; gap: 12px; }
.bubble { max-width: 760px; padding: 12px 14px; border-radius: 8px; background: #eef2ff; }
.bubble.user { margin-left: auto; background: #111827; color: #fff; }
.refs { margin-top: 8px; color: #475467; font-size: 13px; }
.checklist { list-style: none; padding: 0; margin: 0; display: grid; gap: 8px; }
.checklist li { display: flex; gap: 8px; align-items: center; }
.package-feature-list { margin: 0; padding-left: 20px; display: grid; gap: 8px; }
.package-feature-list li { padding-left: 2px; }
.auth { max-width: 500px; margin: 56px auto 28px; }
.auth.panel { padding: 34px 38px 30px; }
.auth-card { box-shadow: 0 18px 48px rgba(17, 24, 39, .08); }
.auth-card h1 { margin: 6px 0 8px; font-size: 28px; line-height: 1.16; letter-spacing: 0; }
.auth-card > .muted { margin: 0 0 24px; }
.auth-eyebrow { color: #475467; font-size: 12px; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
.auth-form { gap: 16px; }
.field { display: grid; gap: 7px; }
.field label, .label-row label { font-weight: 700; }
.label-row { display: flex; align-items: baseline; justify-content: space-between; gap: 12px; }
.label-row a, .auth-switch a { font-weight: 700; }
.password-input { display: grid; grid-template-columns: 1fr auto; align-items: stretch; }
.password-input input { border-top-right-radius: 0; border-bottom-right-radius: 0; }
.password-toggle { border: 1px solid #cbd5e1; border-left: 0; border-radius: 0 6px 6px 0; padding: 0 12px; background: #fff; color: #111827; cursor: pointer; font-weight: 700; min-width: 64px; }
.password-toggle:hover { background: #f8fafc; }
.password-rules { color: #475467; font-size: 13px; }
.field-error { color: #b42318; font-size: 13px; font-weight: 700; }
.error-summary { display: grid; gap: 7px; margin: 0 0 18px; padding: 12px 14px; border: 1px solid #fecdca; border-radius: 8px; background: #fffbfa; color: #912018; }
.error-summary ul { margin: 0; padding-left: 18px; }
.auth-submit { width: 100%; margin-top: 2px; }
.auth-switch { margin: 18px 0 0; text-align: center; }
.auth-social-button { width: 100%; gap: 10px; margin: 12px 0 10px; }
.auth-social-mark { display: inline-grid; place-items: center; width: 22px; height: 22px; border-radius: 50%; background: #fff; color: #111827; border: 1px solid #d1d5db; font-weight: 800; }
.auth-divider { display: grid; grid-template-columns: 1fr auto 1fr; align-items: center; gap: 12px; margin: 12px 0 18px; color: #667085; font-size: 13px; }
.auth-divider::before, .auth-divider::after { content: ""; height: 1px; background: #e5e7eb; }
.provider-list { list-style: none; padding: 0; margin: 0 0 16px; display: grid; gap: 10px; }
.provider-list li { display: grid; gap: 2px; padding: 12px; border: 1px solid #e5e7eb; border-radius: 6px; background: #fff; }
.app-footer { padding: 24px 0 36px; text-align: center; }
.launch-hero { display: grid; grid-template-columns: minmax(0, 1.3fr) minmax(320px, .7fr); gap: 34px; align-items: center; margin: 36px 0 34px; }
.hero-story { padding: 20px 0 26px; }
.launch-hero h1 { margin: 0; max-width: 760px; font-size: 62px; line-height: 1; letter-spacing: 0; }
.hero-copy { max-width: 640px; margin: 18px 0 0; color: #344054; font-size: 21px; line-height: 1.42; }
.current-state { display: inline-flex; margin: 26px 0 0; padding: 9px 12px; border-left: 3px solid #172033; background: #fff; color: #172033; font-weight: 750; box-shadow: 0 14px 34px rgba(17, 24, 39, .05); }
.readiness-card, .next-panel, .readiness-panel, .post-launch-note, .launch-progress { background: #fff; border: 1px solid #e2e8f0; border-radius: 8px; }
.readiness-card { display: grid; align-content: start; gap: 10px; padding: 22px; border-left: 6px solid #475467; }
.readiness-card h2 { margin: 0; font-size: 28px; line-height: 1.1; }
.readiness-card p { margin: 0; }
.readiness-card.readiness-ready { border-left-color: #15803d; background: #f7fef9; }
.readiness-card.readiness-testing { border-left-color: #0e756b; background: #f5fbf9; }
.readiness-card.readiness-blocked { border-left-color: #b42318; background: #fffbfa; }
.readiness-card.readiness-not-ready { border-left-color: #d97706; background: #fffaf0; }
.section-heading { display: flex; flex-wrap: wrap; align-items: end; justify-content: space-between; gap: 16px; margin-bottom: 18px; }
.section-heading h2 { margin: 0; font-size: 24px; line-height: 1.18; }
.section-heading .btn { flex: 0 0 auto; white-space: nowrap; }
.section-heading.compact { display: block; margin-bottom: 12px; }
.launch-progress { padding: 24px 0 28px; margin-bottom: 20px; border-width: 1px 0; border-radius: 0; background: transparent; }
.progress-list { list-style: none; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 0; margin: 0; padding: 0; }
.progress-step { position: relative; }
.progress-step::before { content: ""; position: absolute; top: 20px; left: 40px; right: 0; height: 1px; background: #d7dde7; }
.progress-step:last-child::before { display: none; }
.progress-step a { min-height: 118px; display: grid; grid-template-rows: auto 1fr auto; gap: 10px; padding: 0 22px 0 0; color: #172033; }
.progress-step a:hover strong { color: #0e756b; }
.step-number { position: relative; z-index: 1; display: grid; place-items: center; width: 40px; height: 40px; border: 1px solid #cbd5e1; border-radius: 999px; background: #fff; color: #334155; font-weight: 800; }
.progress-step strong { display: block; line-height: 1.22; }
.progress-step small { display: block; max-width: 190px; margin-top: 5px; color: #667085; line-height: 1.35; }
.step-state { justify-self: start; border-radius: 999px; padding: 3px 8px; background: #f1f5f9; color: #475467; font-size: 12px; font-weight: 800; text-transform: uppercase; }
.progress-step.complete::before { background: #8bd4a0; }
.progress-step.complete .step-number, .progress-step.complete .step-state { border-color: #b7e4c3; background: #eaf8ee; color: #166534; }
.progress-step.current .step-number { border-color: #172033; background: #172033; color: #fff; box-shadow: 0 0 0 5px rgba(23, 32, 51, .08); }
.progress-step.current .step-state { background: #fff3bf; color: #7a5b00; }
.progress-step.blocked .step-number, .progress-step.blocked .step-state { border-color: #fed7aa; background: #fff7ed; color: #9a3412; }
.progress-step.next { opacity: .72; }
.next-panel, .readiness-panel, .post-launch-note { padding: 24px; }
.next-panel { box-shadow: 0 22px 54px rgba(17, 24, 39, .09); }
.next-panel h2 { margin: 0 0 10px; font-size: 32px; line-height: 1.1; }
.next-panel p { margin: 0 0 16px; color: #344054; }
.reason-line { display: grid; gap: 4px; margin: 20px 0; padding-top: 16px; border-top: 1px solid #e2e8f0; color: #344054; }
.reason-line strong { color: #172033; }
.readiness-panel { margin-bottom: 18px; box-shadow: 0 18px 42px rgba(17, 24, 39, .04); }
.readiness-header { display: flex; align-items: start; justify-content: space-between; gap: 18px; }
.readiness-header h2 { margin: 0; font-size: 26px; line-height: 1.15; }
.readiness-meta { display: grid; justify-items: end; gap: 7px; color: #667085; font-size: 13px; white-space: nowrap; }
.readiness-sentence { max-width: 760px; margin: 16px 0 18px; color: #344054; font-size: 17px; }
.readiness-status.ready { background: #dcfce7; color: #166534; }
.readiness-status.testing { background: #fff3bf; color: #7a5b00; }
.readiness-status.blocked { background: #ffedd5; color: #9a3412; }
.readiness-status.not-ready { background: #fef3c7; color: #92400e; }
.readiness-checks { list-style: none; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); column-gap: 22px; margin: 0; padding: 0; }
.readiness-checks li { display: grid; grid-template-columns: 22px minmax(0, 1fr) auto; gap: 10px; align-items: center; padding: 12px 0; border-top: 1px solid #e2e8f0; }
.check-label { font-weight: 750; }
.check-status { color: #475467; font-weight: 750; }
.check-icon { position: relative; width: 18px; height: 18px; border: 2px solid #94a3b8; border-radius: 999px; }
.check-icon::after { position: absolute; inset: -4px; display: grid; place-items: center; font-size: 12px; font-weight: 900; line-height: 1; }
.readiness-checks li.done .check-icon { border-color: #15803d; background: #dcfce7; }
.readiness-checks li.done .check-icon::after { content: "v"; color: #166534; }
.readiness-checks li.blocked .check-icon { border-color: #d97706; background: #ffedd5; }
.readiness-checks li.blocked .check-icon::after { content: "!"; color: #9a3412; }
.readiness-checks li.review .check-icon { border-color: #0e756b; background: #e8f4f2; }
.readiness-checks li.review .check-icon::after { content: "!"; color: #0e756b; }
.readiness-checks li.needed .check-icon { border-color: #d97706; background: #fef3c7; }
.readiness-checks li.needed .check-icon::after { content: "!"; color: #92400e; }
.detail-link { display: inline-flex; margin-top: 12px; font-weight: 750; }
.post-launch-note { margin-top: 18px; box-shadow: none; background: #f8fafc; }
.post-launch-note h2 { margin: 0 0 6px; font-size: 20px; }
.post-launch-note p { margin: 0 0 12px; }
.usage-metrics { display: grid; grid-template-columns: repeat(2, minmax(0, 150px)); gap: 18px; margin: 10px 0 16px; }
.usage-metrics dt { color: #667085; font-size: 13px; font-weight: 800; }
.usage-metrics dd { margin: 2px 0 0; font-size: 26px; font-weight: 850; }
.confirm-open { overflow: hidden; }
.confirm-layer[hidden] { display: none; }
.confirm-layer { position: fixed; inset: 0; z-index: 80; display: grid; place-items: center; padding: 18px; background: rgba(17, 24, 39, .34); }
.confirm-dialog { width: min(100%, 380px); max-height: calc(100vh - 36px); overflow: auto; display: grid; gap: 12px; padding: 20px; border: 1px solid #e5e7eb; border-radius: 8px; background: #fff; box-shadow: 0 24px 64px rgba(17, 24, 39, .22); }
.confirm-dialog.has-confirm-details { width: min(100%, 620px); padding: 24px; }
.confirm-dialog h2 { margin: 0; font-size: 20px; line-height: 1.25; }
.confirm-dialog p { margin: 0; }
.confirm-details[hidden] { display: none; }
.confirm-details { min-width: 0; }
.confirm-check-row { align-items: flex-start; padding: 10px 0 2px; }
.confirm-check-row span { line-height: 1.35; }
.confirm-actions { justify-content: flex-end; margin-top: 4px; }
.source-modal-open { overflow: hidden; }
.source-modal-layer[hidden] { display: none; }
.source-modal-layer { position: fixed; inset: 0; z-index: 90; display: grid; place-items: center; padding: 18px; background: rgba(0, 0, 0, .46); }
.source-modal { width: min(100%, 760px); max-height: min(860px, calc(100vh - 36px)); overflow: auto; display: grid; gap: 18px; padding: 22px; border: 1px solid #e5e7eb; border-radius: 8px; background: #fff; box-shadow: 0 28px 80px rgba(0, 0, 0, .26); }
.source-modal:focus { outline: none; }
.source-modal-screen { display: grid; gap: 16px; }
.source-modal-screen[hidden] { display: none; }
.source-modal-header { display: grid; grid-template-columns: auto minmax(0, 1fr) auto; gap: 12px; align-items: start; }
.source-modal-header h2 { grid-column: 2; margin: 0; font-size: 24px; line-height: 1.18; color: #000; }
.source-modal-header h2:first-child { grid-column: 1 / 3; }
.icon-btn { display: inline-grid; place-items: center; width: 34px; height: 34px; border: 1px solid #d8d2c4; border-radius: 6px; background: #fff; color: #111827; cursor: pointer; font-weight: 900; }
.crawl-modal-copy { display: grid; gap: 8px; }
.crawl-modal-copy p { margin: 0; }
.source-branch-form { display: grid; gap: 12px; }
.source-branch-form .field-help { margin: -6px 0 0; color: #667085; font-size: 13px; line-height: 1.4; }
.crawl-advanced-settings {
  border: 1px solid #d8d2c4;
  border-radius: 8px;
  background: #fbfaf6;
}
.crawl-advanced-settings summary {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 12px;
  align-items: center;
  padding: 12px;
  cursor: pointer;
  color: #111827;
  font-weight: 900;
}
.crawl-advanced-settings summary::marker { color: #0e756b; }
.crawl-advanced-settings summary small {
  color: #667085;
  font-size: 13px;
  font-weight: 750;
  line-height: 1.3;
  text-align: right;
}
.crawl-advanced-body {
  display: grid;
  gap: 12px;
  padding: 0 12px 12px;
  border-top: 1px solid #e5dfd2;
}
.crawl-advanced-body label:first-child { padding-top: 12px; }
.crawl-advanced-body textarea {
  min-height: 96px;
  resize: vertical;
}
.crawl-cleanup-option {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: 10px;
  align-items: start;
  padding: 12px;
  border: 1px solid #d8d2c4;
  border-radius: 8px;
  background: #fbfaf6;
  cursor: pointer;
}
.crawl-cleanup-option input {
  width: 18px;
  height: 18px;
  margin: 2px 0 0;
}
.crawl-cleanup-option span { display: grid; gap: 3px; }
.crawl-cleanup-option strong { color: #111827; font-size: 14px; line-height: 1.25; }
.crawl-cleanup-option small { color: #667085; font-size: 13px; font-weight: 550; line-height: 1.35; }
.maintenance-action-list { display: grid; gap: 12px; }
.maintenance-action-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 16px;
  align-items: center;
  padding: 14px;
  border: 1px solid #e5dfd2;
  border-radius: 8px;
  background: #fbfaf6;
}
.maintenance-action-row p { margin: 4px 0 0; }
.maintenance-action-row form { margin: 0; }
.maintenance-action-row .btn { margin-bottom: 0; white-space: nowrap; }
.maintenance-operation-status {
  margin: 8px 0 0;
  font-size: 13px;
  text-align: right;
}
@media (max-width: 560px) {
  .maintenance-action-row { grid-template-columns: 1fr; align-items: stretch; }
  .maintenance-action-row .btn { width: 100%; }
  .maintenance-operation-status { text-align: left; }
}
.source-upload-form[hidden] { display: none; }
.mobile-upload-copy { display: none; }
.source-pill-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; }
.source-pill-grid button { min-height: 42px; border: 1px solid #d8d2c4; border-radius: 999px; background: #fff; color: #111827; cursor: pointer; font-weight: 850; }
.source-pill-grid button:hover { border-color: #0e756b; background: #e8f4f2; color: #0e756b; }
.source-modal-footer { display: flex; justify-content: flex-end; padding-top: 10px; border-top: 1px solid #e5e7eb; color: #475467; font-weight: 850; }
.source-rules { display: grid; gap: 4px; padding: 10px 12px; border: 1px solid #e5e7eb; border-radius: 8px; background: #f8fafc; }
.source-rules p { margin: 0; color: #475467; font-size: 13px; }
.training-header { align-items: flex-start; }
.brain-banner {
  width: calc(100vw - var(--sidebar-width));
  margin: -30px 0 24px -32px;
  overflow: hidden;
  background: var(--brand-yellow);
}
.brain-banner img {
  display: block;
  width: 100%;
  height: auto;
}
html.sidebar-collapsed .brain-banner {
  width: calc(100vw - var(--sidebar-collapsed-width));
}
.training-counts { margin: 12px 0 0; color: var(--brand-teal); font-weight: 850; }
.first-win-panel { display: grid; gap: 18px; margin-bottom: 18px; padding: 20px; border: 1px solid var(--warm-line); border-radius: 8px; background: #fff; box-shadow: 0 16px 40px rgba(17, 24, 39, .05); }
.first-win-panel h2 { margin: 3px 0 8px; font-size: 26px; line-height: 1.14; color: var(--ink); }
.first-win-panel p { max-width: 760px; margin: 0; color: #344054; font-weight: 700; }
.first-win-steps { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; }
.first-win-step { display: grid; grid-template-columns: auto minmax(0, 1fr); gap: 10px; align-items: start; min-height: 148px; padding: 14px; border: 1px solid var(--warm-line); border-radius: 8px; background: #fbfaf6; }
.first-win-step.active { border-color: var(--brand-teal); background: #f2fbf9; box-shadow: inset 0 0 0 1px rgba(14, 117, 107, .12); }
.first-win-step.done { background: #fff; }
.first-win-step .btn { grid-column: 1 / -1; align-self: end; width: 100%; }
.first-win-step strong { display: block; margin-bottom: 4px; color: var(--ink); font-size: 17px; line-height: 1.2; }
.first-win-step span:not(.step-number) { display: block; color: #667085; font-size: 14px; line-height: 1.35; }
.step-number { display: grid; place-items: center; width: 28px; height: 28px; border-radius: 999px; background: var(--ink); color: #fff; font-weight: 900; }
.first-win-step.done .step-number { background: var(--brand-teal); }
.home-path-panel .first-win-step, .home-shortcut-card { color: inherit; text-decoration: none; }
.home-path-panel .first-win-step:hover, .home-shortcut-card:hover { border-color: var(--brand-teal); background: #f5fbf9; }
.home-orientation-steps { grid-template-columns: repeat(auto-fit, minmax(190px, 1fr)); }
.momentum-panel { display: grid; gap: 14px; margin-bottom: 18px; border-left: 6px solid var(--brand-yellow); background: linear-gradient(135deg, #fff 0%, #fffdf3 100%); }
.momentum-summary { display: flex; align-items: center; justify-content: space-between; gap: 18px; }
.momentum-summary h2 { margin: 3px 0 6px; color: var(--ink); font-size: 24px; line-height: 1.16; }
.momentum-summary p { margin: 0; }
.momentum-meter { display: grid; flex: 0 0 auto; place-items: center; width: 86px; height: 86px; border-radius: 999px; background: conic-gradient(var(--brand-teal) var(--momentum), #e7ebef 0); box-shadow: inset 0 0 0 9px #fff, 0 12px 24px rgba(14, 117, 107, .12); color: var(--ink); font-weight: 900; }
.momentum-meter span { display: grid; place-items: center; width: 60px; height: 60px; border-radius: inherit; background: #fff; }
.momentum-track { height: 9px; overflow: hidden; border-radius: 999px; background: #e7ebef; }
.momentum-track span { display: block; width: var(--momentum); height: 100%; border-radius: inherit; background: linear-gradient(90deg, var(--brand-teal), #d9b423); }
.momentum-items { display: grid; grid-template-columns: repeat(auto-fit, minmax(190px, 1fr)); gap: 10px; }
.momentum-item { display: grid; grid-template-columns: auto minmax(0, 1fr); gap: 9px; align-items: start; min-height: 78px; padding: 11px; border: 1px solid var(--warm-line); border-radius: 8px; background: rgba(255, 255, 255, .84); }
.momentum-item > span { display: grid; place-items: center; width: 24px; height: 24px; border-radius: 999px; background: #f1f5f9; color: #667085; font-weight: 900; }
.momentum-item.done { border-color: #c8ddd9; background: #f6fbf9; }
.momentum-item.done > span { background: var(--brand-teal); color: #fff; }
.momentum-item strong { display: block; color: var(--ink); font-size: 14px; line-height: 1.25; }
.momentum-item small { display: block; margin-top: 3px; color: #667085; font-size: 12px; line-height: 1.3; font-weight: 700; }
.momentum-items.compact { grid-template-columns: repeat(auto-fit, minmax(150px, 1fr)); }
.momentum-items.compact .momentum-item { min-height: 46px; align-items: center; }
.home-service-card { display: grid; align-content: start; gap: 8px; }
.home-service-card h3 { margin: 0; }
.home-status-row { margin-bottom: 0; }
.activity-list { display: grid; gap: 0; }
.activity-row { display: flex; justify-content: space-between; gap: 18px; padding: 14px 0; border-top: 1px solid var(--warm-line); }
.activity-row:first-child { border-top: 0; }
.activity-row p { margin: 4px 0 0; }
.activity-row-link { color: inherit; text-decoration: none; border-radius: 8px; transition: background .16s ease, box-shadow .16s ease; }
.activity-row-link:hover { background: #fbfaf2; }
.activity-row-link:hover strong { color: var(--brand-teal); text-decoration: underline; text-underline-offset: 3px; }
.activity-row-link:focus-visible { outline: 0; box-shadow: 0 0 0 3px rgba(0, 126, 112, .18); }
.activity-item-link { color: inherit; text-decoration: none; border-radius: 8px; }
.activity-item-link:hover { background: #fbfaf2; }
.activity-item-link:hover p:first-child { color: var(--brand-teal); text-decoration: underline; text-underline-offset: 3px; }
.activity-item-link:focus-visible { outline: 0; box-shadow: 0 0 0 3px rgba(0, 126, 112, .18); }
.trace-summary-panel { margin-bottom: 18px; }
.run-trace-index-scroll { overflow-x: auto; overscroll-behavior-x: contain; }
.run-trace-index-table { min-width: 1220px; table-layout: fixed; }
.run-trace-index-table th:nth-child(1) { width: 118px; }
.run-trace-index-table th:nth-child(2) { width: 84px; }
.run-trace-index-table th:nth-child(3),
.run-trace-index-table th:nth-child(4) { width: 210px; }
.run-trace-index-table th:nth-child(5),
.run-trace-index-table th:nth-child(6),
.run-trace-index-table th:nth-child(7) { width: 72px; }
.run-trace-index-table th:nth-child(8),
.run-trace-index-table th:nth-child(9),
.run-trace-index-table th:nth-child(10),
.run-trace-index-table th:nth-child(11),
.run-trace-index-table th:nth-child(12) { width: 90px; }
.run-trace-index-table th:nth-child(13) { width: 120px; }
.run-trace-index-table td { word-break: normal; overflow-wrap: normal; }
.run-trace-time-link { color: var(--ink); font-weight: 800; text-decoration: none; }
.run-trace-time-link:hover { color: var(--brand-teal); text-decoration: underline; text-underline-offset: 3px; }
.run-trace-time-link:focus-visible { outline: 0; box-shadow: 0 0 0 3px rgba(0, 126, 112, .18); border-radius: 6px; }
.run-trace-preview { display: -webkit-box; overflow: hidden; color: #344054; line-height: 1.45; -webkit-box-orient: vertical; -webkit-line-clamp: 3; }
.run-trace-tools-count { color: var(--ink); font-weight: 800; }
.run-trace-tools-summary { margin-top: 3px; line-height: 1.35; }
.performance-summary-panel { margin-bottom: 18px; }
.performance-bars { display: grid; gap: 14px; }
.performance-row { display: grid; gap: 8px; }
.performance-row-label { display: flex; align-items: center; justify-content: space-between; gap: 12px; }
.performance-row-label strong { color: var(--ink); }
.performance-row-label span { color: #475467; font-weight: 800; }
.performance-bar { overflow: hidden; height: 12px; border-radius: 999px; background: #e7ecef; }
.performance-bar span { display: block; height: 100%; min-width: 0; border-radius: 999px; background: linear-gradient(90deg, var(--brand-teal), #49a39a); }
.trace-timeline { display: grid; gap: 0; }
.trace-step { position: relative; display: grid; grid-template-columns: 28px minmax(0, 1fr); gap: 14px; padding: 0 0 22px; }
.trace-step::before { content: ""; position: absolute; left: 10px; top: 22px; bottom: 0; width: 2px; background: var(--warm-line); }
.trace-step:last-child { padding-bottom: 0; }
.trace-step:last-child::before { display: none; }
.trace-step-marker { position: relative; z-index: 1; width: 22px; height: 22px; border: 4px solid #d7dde7; border-radius: 999px; background: #fff; }
.trace-step-complete .trace-step-marker { border-color: #15803d; }
.trace-step-warning .trace-step-marker, .trace-step-needs_approval .trace-step-marker { border-color: #d97706; }
.trace-step-failed .trace-step-marker { border-color: var(--danger); }
.trace-step-skipped .trace-step-marker { border-color: #98a2b3; }
.trace-step-header { display: flex; align-items: start; justify-content: space-between; gap: 12px; margin-bottom: 8px; }
.trace-step-header h2 { margin: 0; font-size: 22px; line-height: 1.18; color: var(--ink); }
.trace-step-header p, .trace-step-body p { margin: 0; }
.trace-step-body { display: grid; gap: 12px; min-width: 0; padding: 16px; border: 1px solid var(--warm-line); border-radius: 8px; background: #fff; }
.trace-detail-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; margin: 0; }
.trace-detail-grid div, .trace-detail-grid p { min-width: 0; margin: 0; }
.trace-detail-grid dt { color: #667085; font-size: 12px; font-weight: 900; text-transform: uppercase; }
.trace-detail-grid dd { margin: 4px 0 0; overflow-wrap: anywhere; color: #344054; font-weight: 700; }
.trace-payload { border-top: 1px solid var(--warm-line); padding-top: 10px; }
.trace-payload summary { cursor: pointer; color: var(--brand-teal); font-weight: 900; }
.trace-payload pre { max-height: 360px; overflow: auto; margin: 10px 0 0; padding: 12px; border-radius: 8px; background: #111827; color: #f8fafc; white-space: pre-wrap; word-break: break-word; }
.trace-approval-note { display: grid; gap: 3px; padding: 12px; border: 1px solid #f2c66d; border-radius: 8px; background: #fffbeb; }
.tool-approval-actions { align-items: stretch; }
.tool-approval-actions form { display: grid; gap: 8px; min-width: min(100%, 220px); }
.tool-approval-actions input { min-height: 40px; }
.sr-only { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; border: 0; }
.tester-trace-preview-panel { margin-top: 18px; border-left: 5px solid var(--brand-teal); }
.home-shortcuts { margin-top: 18px; }
.home-shortcut-card { min-height: 132px; }
.home-tools-section { display: grid; gap: 12px; margin-top: 20px; }
.home-tool-grid { display: grid; gap: 12px; }
.home-tool-card { display: grid; gap: 0; overflow: hidden; border: 1px solid #d8d2c4; border-left: 6px solid var(--brand-teal); border-radius: 8px; background: #fff; box-shadow: 0 16px 34px rgba(16, 24, 40, .10); }
.home-tool-header { display: flex; align-items: flex-start; justify-content: space-between; gap: 14px; padding: 18px; border-bottom: 1px solid var(--warm-line); background: #fff; }
.home-tool-card h3 { margin: 0 0 5px; color: var(--ink); font-size: 21px; line-height: 1.2; }
.home-tool-card h3 a { color: inherit; text-decoration: none; }
.home-tool-card h3 a:hover { color: var(--brand-teal); text-decoration: underline; text-underline-offset: 3px; }
.home-tool-card p { margin: 0; color: #475467; font-weight: 700; }
.home-tool-status { display: inline-flex; min-height: 28px; align-items: center; padding: 4px 9px; border: 1px solid #c8ddd9; border-radius: 999px; background: #e8f4f2; color: var(--brand-teal); font-size: 12px; font-weight: 900; text-transform: uppercase; }
.home-tool-stats { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; padding: 14px 18px; border-bottom: 1px solid var(--warm-line); background: #f7fbfa; }
.home-tool-stats span { display: grid; gap: 3px; min-height: 62px; padding: 10px 12px; border: 1px solid #d6e6e2; border-radius: 8px; background: #fff; color: #475467; font-size: 13px; font-weight: 800; }
.home-tool-stats strong { color: var(--ink); font-size: 22px; line-height: 1; }
.home-tool-actions { display: flex; flex-wrap: wrap; gap: 10px; padding: 14px 18px 16px; background: #fff; }
.home-tool-actions a { display: inline-flex; min-height: 36px; align-items: center; justify-content: center; padding: 7px 10px; border: 1px solid var(--brand-teal); border-radius: 4px; color: var(--brand-teal); font-weight: 850; text-decoration: none; }
.home-tool-actions a:hover { background: #f5fbf9; }
.text-link { color: var(--brand-teal); font-weight: 850; }
.advanced-review-link { justify-self: start; color: #667085; font-weight: 800; text-decoration: none; }
.advanced-review-link:hover { color: var(--brand-teal); text-decoration: underline; }
.brain-status-summary { display: flex; align-items: center; justify-content: space-between; gap: 16px; margin-bottom: 18px; padding: 16px 18px; border: 1px solid var(--warm-line); border-left: 5px solid var(--brand-teal); border-radius: 8px; background: #fff; }
.brain-status-summary h2 { margin: 8px 0 0; font-size: 22px; line-height: 1.18; color: var(--ink); }
.brain-status-summary p { margin: 8px 0 0; color: #344054; font-weight: 700; }
.brain-status-summary.ready { border-left-color: #15803d; }
.brain-status-summary.blocked { border-left-color: #d97706; background: #fffaf0; }
.brain-status-summary.not-ready, .brain-status-summary.adding, .brain-status-summary.testing { border-left-color: var(--brand-yellow); }
.brain-review-notice { display: flex; align-items: center; justify-content: space-between; gap: 14px; margin-bottom: 18px; padding: 11px 14px; border: 1px solid var(--warm-line); border-left: 4px solid var(--brand-yellow); border-radius: 8px; background: #fffdf3; color: var(--ink); text-decoration: none; font-weight: 850; }
.brain-review-notice strong { color: var(--brand-teal); white-space: nowrap; }
.brain-review-notice:hover { border-color: var(--brand-teal); background: #f5fbf9; }
.brain-review-notice.blocked { border-left-color: #d97706; background: #fff8ed; }
.brain-review-notice.ready { border-left-color: #15803d; background: #f0fdf4; }
.training-material-section { display: grid; gap: 16px; }
.training-material-list { gap: 0; border-top: 1px solid var(--warm-line); }
.training-tool-prompt { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; padding-top: 2px; color: #475467; font-weight: 750; }
.training-tool-prompt a { color: var(--brand-teal); font-weight: 850; }
.training-material-row { position: relative; display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 12px; align-items: center; padding: 13px 0; border-bottom: 1px solid var(--warm-line); }
.training-material-row-excluded { background: #fbfbfa; }
.training-material-link { grid-template-columns: minmax(0, 1fr); margin: 0 -10px; padding: 13px 10px; border-radius: 8px; color: inherit; text-decoration: none; }
.training-material-link.training-material-row-excluded { grid-template-columns: minmax(0, 1fr); }
.training-material-link:hover { background: #f5fbf9; }
.training-material-link:focus-visible { outline-color: rgba(14, 117, 107, .28); }
.training-material-title-link { color: inherit; text-decoration: none; }
.training-material-title-link:hover { color: var(--brand-teal); text-decoration: underline; text-underline-offset: 3px; }
.material-main { display: grid; gap: 2px; min-width: 0; }
.material-title-line { display: flex; min-width: 0; flex-wrap: wrap; align-items: center; gap: 6px 12px; }
.material-main strong { overflow: hidden; color: var(--ink); text-overflow: ellipsis; white-space: nowrap; }
.source-row-separator { flex: 0 0 auto; width: 1px; height: 18px; background: #d5ddd9; }
.source-row-url-link { display: inline-flex; min-width: 0; max-width: min(100%, 620px); align-items: center; gap: 7px; overflow: hidden; padding: 3px 9px; border: 1px solid #a9d8d2; border-radius: 999px; background: #f3fbf9; color: #0b6f68; font-size: 13px; font-weight: 400; line-height: 1.35; text-decoration: none; white-space: nowrap; box-shadow: inset 0 0 0 1px rgba(255, 255, 255, .75); }
.source-row-url-link:hover { border-color: #55aaa0; background: #e7f6f3; color: #064f4a; text-decoration: none; }
.source-row-url-link:focus-visible { outline: 3px solid rgba(14, 117, 107, .22); outline-offset: 2px; }
.source-row-url-text { min-width: 0; overflow: hidden; text-overflow: ellipsis; }
.source-row-url-icon { flex: 0 0 auto; font-size: 12px; line-height: 1; }
.material-warning { justify-self: start; margin-top: 4px; color: #9a3412; font-size: 13px; font-weight: 800; }
.excluded-material-section { margin-top: 18px; padding-top: 18px; border-top: 1px solid var(--warm-line); }
.source-external-link { color: var(--brand-teal); font-weight: 850; }
.callout { display: grid; gap: 6px; margin-top: 14px; padding: 12px 14px; border: 1px solid var(--warm-line); border-radius: 8px; background: #fbfaf6; }
.callout p { margin: 0; color: #344054; font-weight: 700; }
.callout.warning { border-color: #f1b55f; background: #fff8ed; }
.callout.warning strong { color: #9a3412; }
.row-menu { position: relative; justify-self: end; }
.row-menu summary { display: inline-flex; min-height: 34px; align-items: center; padding: 6px 9px; border: 1px solid #d8d2c4; border-radius: 6px; background: #fff; color: var(--brand-teal); cursor: pointer; font-weight: 800; list-style: none; }
.row-menu summary::-webkit-details-marker { display: none; }
.row-menu-panel { position: absolute; right: 0; top: calc(100% + 8px); z-index: 25; min-width: 180px; display: grid; gap: 4px; padding: 8px; border: 1px solid var(--warm-line); border-radius: 8px; background: #fff; box-shadow: 0 18px 42px rgba(0, 0, 0, .16); }
.row-menu-panel a, .row-menu-panel button { width: 100%; display: block; padding: 8px 9px; border: 0; border-radius: 6px; background: transparent; color: #344054; text-align: left; cursor: pointer; font-weight: 750; }
.row-menu-panel a:hover, .row-menu-panel button:hover { background: #f5fbf9; color: var(--brand-teal); }
.advanced-training-controls { margin-top: 2px; padding-top: 12px; border-top: 1px solid var(--warm-line); }
.advanced-training-controls summary { cursor: pointer; color: var(--brand-teal); font-weight: 850; }
.advanced-training-body { display: grid; gap: 12px; margin-top: 12px; padding: 13px; border: 1px solid var(--warm-line); border-radius: 8px; background: #fbfaf6; }
.advanced-source-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px 14px; }
.answer-result-card { display: grid; gap: 12px; padding: 16px; border: 1px solid var(--warm-line); border-left: 4px solid var(--brand-yellow); border-radius: 8px; background: #fff; }
.chat-test-form { grid-template-columns: minmax(0, 1fr) auto; align-items: end; }
.chat-test-form textarea { min-height: 86px; border-radius: 8px; resize: vertical; }
.chat-test-form .btn { min-width: 94px; }
.answer-body { max-width: 860px; color: #172033; font-size: 16px; line-height: 1.55; white-space: pre-wrap; }
.source-summary { display: grid; gap: 8px; }
.source-summary summary { justify-self: start; cursor: pointer; color: var(--brand-teal); font-weight: 850; }
.source-summary summary span { margin-left: 4px; color: #667085; font-weight: 750; }
.source-summary h3 { margin: 8px 0 4px; font-size: 16px; }
.source-summary p { margin: 4px 0; }
.improve-drawer { position: relative; }
.improve-drawer > summary { list-style: none; }
.improve-drawer > summary::-webkit-details-marker { display: none; }
.improve-form { position: fixed; inset: 0 0 0 auto; z-index: 80; width: min(100%, 460px); overflow: auto; display: grid; align-content: start; gap: 16px; padding: 24px; border-left: 1px solid var(--warm-line); background: #fff; box-shadow: -22px 0 60px rgba(0, 0, 0, .18); }
.improve-form-header { display: flex; align-items: flex-start; justify-content: space-between; gap: 16px; }
.improve-form h2 { margin: 0; font-size: 24px; line-height: 1.18; }
.improve-form fieldset { display: grid; gap: 9px; margin: 0; padding: 0; border: 0; }
.improve-form legend { margin-bottom: 3px; font-weight: 850; }
.improve-form fieldset label { display: flex; grid-template-columns: none; align-items: flex-start; gap: 8px; color: #344054; font-weight: 700; }
.improve-form input[type="radio"] { width: auto; margin-top: 4px; }
.answer-checks-section details > summary { cursor: pointer; color: var(--ink); font-weight: 850; }
.practice-questions-section details > summary { cursor: pointer; color: var(--ink); font-weight: 850; }
.answer-check-groups { display: grid; gap: 18px; margin-top: 16px; }
.answer-check-groups h3 { margin: 0 0 8px; font-size: 17px; }
.answer-check-row { display: grid; grid-template-columns: minmax(0, 1fr) auto auto; gap: 12px; align-items: center; padding: 11px 0; border-top: 1px solid var(--warm-line); }
.answer-check-row:first-of-type { border-top: 0; }
.answer-check-row p { margin: 2px 0 0; }
.issue-review-panel, .practice-review-panel { margin-top: 18px; }
.practice-review-panel[hidden] { display: none; }
.practice-review-cards { display: grid; gap: 14px; }
.practice-review-card { display: grid; gap: 12px; }
.practice-review-card[hidden], .practice-review-complete[hidden] { display: none; }
.practice-review-complete { display: grid; gap: 12px; }
.practice-review-complete h2 { margin: 0; }
.ready-tools-panel { display: flex; align-items: center; justify-content: space-between; gap: 14px; padding: 14px; border: 1px solid var(--warm-line); border-radius: 8px; background: #f7fbf8; }
.ready-tools-panel h3 { margin: 0; color: var(--ink); }
.passing-practice-questions { margin-top: 16px; padding-top: 12px; border-top: 1px solid var(--warm-line); }
.passing-practice-questions summary { cursor: pointer; color: #667085; font-weight: 850; }
.launch-action-list li { grid-template-columns: auto minmax(0, 1fr) auto; }
.launch-action-list a { font-weight: 850; white-space: nowrap; }
.completed-recommendations { margin-top: 12px; }
.completed-recommendations summary,
.completed-recommendations-only summary { cursor: pointer; color: var(--ink); font-weight: 850; }
.completed-recommendations-only { padding: 13px 14px; border: 1px solid var(--warm-line); border-radius: 8px; background: #f8fafc; }
.completed-recommendations-only summary { display: flex; align-items: center; justify-content: space-between; gap: 12px; }
.completed-recommendations-only p { margin: 10px 0; }
.source-option-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(170px, 1fr)); gap: 10px; }
.source-option-grid button { display: grid; align-content: start; gap: 6px; min-height: 116px; padding: 14px; border: 1px solid #d8d2c4; border-radius: 8px; background: #fff; color: #172033; text-align: left; cursor: pointer; }
.source-option-grid button:hover { border-color: var(--brand-teal); background: #f5fbf9; }
.source-option-grid strong { font-size: 16px; }
.source-option-grid span { color: #667085; font-size: 13px; line-height: 1.35; }
.source-option-grid button[data-upload-drop-zone] { border-style: dashed; }
.source-option-grid button[data-upload-drop-zone].is-dragging { border-color: #0e756b; background: #e8f4f2; }
.source-option-grid button small { color: #667085; font-weight: 700; }
.source-upload-status { display: inline-flex; align-items: center; gap: 8px; margin: 0; color: #0e756b; font-weight: 800; }
.source-upload-status[hidden] { display: none; }
.compact-upload-zone { padding: 14px; }
.signup-icon { display: grid; place-items: center; width: 100px; height: 100px; margin: 0 auto 20px; }
.signup-icon svg { display: block; width: 100px; height: 100px; }
.widget-body { background: #fff; margin: 0; min-height: 100vh; }
.widget-shell { display: grid; grid-template-rows: auto 1fr auto; min-height: 100vh; }
.widget-header { padding: 14px 16px; color: #fff; font-weight: 700; }
.widget-messages { padding: 14px; display: grid; gap: 10px; align-content: start; overflow: auto; }
.widget-input { border-top: 1px solid #e5e7eb; padding: 12px; display: grid; gap: 8px; }
.widget-input-row { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 8px; align-items: center; }
.widget-ai-disclosure,
.assistant-ai-disclosure {
  position: relative;
  display: inline-flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 4px 6px;
  color: #667085;
  font-size: 11px;
  line-height: 1.35;
}

.widget-ai-disclosure {
  grid-column: 1 / -1;
  padding-top: 2px;
}

.assistant-ai-disclosure {
  justify-self: start;
}

.widget-input .widget-ai-disclosure-info,
.assistant-preview-footer .assistant-ai-disclosure-info {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 12px;
  width: 12px;
  height: 12px;
  min-width: 12px;
  min-height: 12px;
  padding: 0;
  border: 1px solid #98a2b3;
  border-radius: 999px;
  background: #fff;
  color: #667085;
  cursor: help;
  font-size: 8px;
  font-weight: 700;
  line-height: 1;
  box-shadow: none;
  appearance: none;
  -webkit-appearance: none;
  vertical-align: middle;
}

.widget-input .widget-ai-disclosure-info:hover,
.widget-input .widget-ai-disclosure-info:focus-visible,
.assistant-preview-footer .assistant-ai-disclosure-info:hover,
.assistant-preview-footer .assistant-ai-disclosure-info:focus-visible {
  border-color: #667085;
  background: #fff;
  color: #667085;
}

.widget-ai-disclosure-tooltip-wrap,
.assistant-ai-disclosure-tooltip-wrap {
  position: relative;
  display: inline-flex;
}

.widget-ai-disclosure-tooltip,
.assistant-ai-disclosure-tooltip {
  position: absolute;
  right: 0;
  bottom: calc(100% + 8px);
  z-index: 10;
  width: min(280px, calc(100vw - 48px));
  max-width: calc(100vw - 48px);
  padding: 9px 10px;
  border: 1px solid #d8d2c4;
  border-radius: 6px;
  box-sizing: border-box;
  background: #fff;
  color: #172033;
  box-shadow: 0 12px 28px rgba(15, 23, 42, .16);
  font-size: 12px;
  font-weight: 650;
  line-height: 1.35;
  overflow-wrap: anywhere;
  text-align: left;
  opacity: 0;
  pointer-events: none;
  transition: opacity .12s ease;
}

.widget-ai-disclosure-tooltip-wrap:hover .widget-ai-disclosure-tooltip,
.widget-ai-disclosure-tooltip-wrap:focus-within .widget-ai-disclosure-tooltip,
.assistant-ai-disclosure-tooltip-wrap:hover .assistant-ai-disclosure-tooltip,
.assistant-ai-disclosure-tooltip-wrap:focus-within .assistant-ai-disclosure-tooltip {
  opacity: 1;
}
.widget-feedback { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 10px; color: #475467; font-size: 13px; }
.widget-feedback-prompt { width: 100%; font-weight: 600; }
.widget-feedback button { border: 1px solid #d0d5dd; background: #fff; border-radius: 6px; padding: 5px 8px; cursor: pointer; }
.widget-feedback button:hover { background: #f2f4f7; }
@media (max-width: 900px) {
  .shell { padding-left: 22px; padding-right: 22px; }
  .grid.two, .grid.three, .grid.six, .queue-grid, .status-row, .tool-grid, .test-form { grid-template-columns: 1fr; }
  .trace-detail-grid { grid-template-columns: 1fr; }
  .first-win-steps { grid-template-columns: 1fr; }
  .first-win-step { min-height: 0; }
  .home-next-actions, .activity-row { display: grid; justify-content: stretch; }
  .knowledge-type-tabs { grid-template-columns: 1fr; }
  .knowledge-type { min-height: auto; }
  .source-pill-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .source-option-grid, .advanced-source-grid, .advanced-tool-grid, .answer-check-row, .copy-field-row, .handoff-option, .lead-choice-grid { grid-template-columns: 1fr; }
  .copy-field-row .btn { width: 100%; }
  .desktop-upload-copy { display: none; }
  .mobile-upload-copy { display: block; }
  .brain-status-summary, .training-material-row { display: grid; }
  .chat-test-form .btn { width: 100%; }
  .brain-status-summary .actions { justify-content: start; }
  .material-main strong { display: -webkit-box; white-space: normal; -webkit-line-clamp: 2; -webkit-box-orient: vertical; }
  .source-row-separator { display: none; }
  .source-row-url-link { max-width: 100%; }
  .row-menu { justify-self: start; }
  .row-menu-panel { left: 0; right: auto; }
  .improve-form { left: 0; width: 100%; border-left: 0; }
  .source-modal { padding: 18px; }
  .source-modal-header h2 { font-size: 20px; }
  .source-row-title strong { white-space: normal; }
  .source-select-all { justify-self: start; }
  .app-topbar-inner { grid-template-columns: minmax(0, 1fr) auto; gap: 8px 12px; padding: 10px 14px; }
  .app-topbar .brand { grid-column: 1; grid-row: 1; }
  .app-topbar .brand-logo { width: min(164px, 52vw); }
  .org-switcher { grid-column: 1 / -1; grid-row: 2; }
  .account-menu { grid-column: 2; grid-row: 1; }
  .account-menu summary { max-width: 42vw; }
  .app-frame { grid-template-columns: 1fr; }
  .app-sidebar { position: static; height: auto; grid-template-columns: repeat(3, minmax(0, 1fr)); padding: 8px; border-right: 0; border-bottom: 1px solid #e5e7eb; }
  .app-sidebar a { justify-content: center; min-height: 38px; padding: 7px 6px; font-size: 14px; }
  .app-main { padding: 20px 16px 34px; }
  .page-header, .next-step-card, .activity-item, .compact-row { display: grid; }
  .assistant-dashboard-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .next-step-card .btn, .page-header .btn { justify-self: start; }
  .launch-hero, .progress-list, .readiness-checks, .status-summary { grid-template-columns: 1fr; }
  .launch-hero { gap: 16px; margin: 16px 0 26px; }
  .hero-story { padding: 10px 0 12px; }
  .launch-hero h1 { font-size: 38px; line-height: 1.04; }
  .hero-copy { margin-top: 14px; font-size: 17px; }
  .current-state { margin-top: 16px; }
  .next-panel { padding: 20px; }
  .next-panel h2 { font-size: 29px; }
  .reason-line { margin: 16px 0; padding-top: 14px; }
  .progress-step::before { display: none; }
  .progress-step a { min-height: auto; grid-template-columns: 40px minmax(0, 1fr); grid-template-rows: auto auto; padding: 0 0 16px; }
  .progress-step .step-copy { grid-column: 2; }
  .step-state { grid-column: 2; }
  .readiness-header { display: grid; }
  .readiness-meta { justify-items: start; white-space: normal; }
  .readiness-checks li { grid-template-columns: 22px minmax(0, 1fr); }
  .check-status { grid-column: 2; }
  .usage-metrics { grid-template-columns: 1fr; }
  .topbar .shell { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 6px 14px; padding-top: 12px; padding-bottom: 12px; }
  .brand { grid-column: 1; grid-row: 1; align-self: end; }
  .brand-logo { width: min(190px, 70vw); }
  .app-title { grid-column: 1; grid-row: 2; align-self: start; white-space: normal; }
  .nav-menu { grid-column: 2; grid-row: 1 / span 2; align-self: start; justify-self: end; margin-left: 0; }
  .nav-toggle { display: grid; gap: 5px; align-content: center; justify-items: stretch; width: 44px; height: 44px; padding: 10px; border: 1px solid #cbd5e1; border-radius: 6px; cursor: pointer; }
  .nav-toggle span { display: block; width: 100%; height: 2px; border-radius: 999px; background: #111827; }
  .nav-menu .nav { display: none; position: absolute; top: calc(100% + 8px); right: 0; z-index: 20; min-width: 190px; gap: 12px; margin-left: 0; padding: 12px; background: #fff; border: 1px solid #e5e7eb; border-radius: 8px; box-shadow: 0 12px 28px rgba(17,24,39,.12); }
  .nav-menu.nav-open .nav { display: grid; }
  .nav a, .nav button { font-size: 16px; }
  .current-org { max-width: 100%; font-size: 16px; white-space: normal; }
  .nav-switcher select { width: 100%; max-width: none; }
  .detail-list { grid-template-columns: 1fr; }
  .role-guide { grid-template-columns: 1fr; }
  .responsive-table, .responsive-table thead, .responsive-table tbody, .responsive-table tr, .responsive-table th, .responsive-table td { display: block; }
  .responsive-table thead { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
  .responsive-table tr { display: grid; gap: 9px; padding: 12px 0; border-bottom: 1px solid #e5e7eb; }
  .responsive-table td { display: grid; grid-template-columns: minmax(84px, .36fr) minmax(0, 1fr); gap: 12px; padding: 0; border-bottom: 0; overflow-wrap: anywhere; }
  .responsive-table td::before { content: attr(data-label); color: #475467; font-size: 13px; font-weight: 800; }
  .responsive-table td.actions,
  .responsive-table td.member-actions { display: grid; grid-template-columns: minmax(84px, .36fr) minmax(0, 1fr); align-items: start; }
  .responsive-table td.actions > *,
  .responsive-table td.member-actions > * { grid-column: 2; }
  .responsive-table td.actions::before,
  .responsive-table td.member-actions::before { grid-column: 1; grid-row: 1 / span 10; }
  .responsive-table td.actions form,
  .responsive-table td.member-actions form { display: grid; gap: 8px; width: 100%; }
  .responsive-table td.actions .btn, .responsive-table td.actions select,
  .responsive-table td.member-actions .btn, .responsive-table td.member-actions select { width: 100%; }
  .auth { margin-top: 32px; }
  .auth.panel { padding: 26px 22px 24px; }
  .auth-card h1 { font-size: 24px; }
  .label-row { align-items: flex-start; flex-direction: column; gap: 6px; }
}

@media (max-width: 640px) {
  .assistant-dashboard-grid { grid-template-columns: 1fr; }
  .momentum-summary { display: grid; }
  .momentum-meter { justify-self: start; }
}

/* Bombyx Labs app design-system alignment. Keep this shared layer last so older
   page-specific rules inherit the current app tokens without broad markup churn. */
:root {
  --ink: #111827;
  --app-ink: #172033;
  --muted: #667085;
  --soft-muted: #475467;
  --border: #e5e7eb;
  --field-border: #cbd5e1;
  --surface: #fff;
  --app-bg: #f6f7f9;
  --brand-yellow: #dbd66d;
  --brand-teal: #0e756b;
  --danger: #991b1b;
}

body { background: var(--app-bg); color: var(--app-ink); letter-spacing: 0; }
a { color: var(--brand-teal); }
.topbar { border-top: 3px solid var(--ink); border-bottom-color: var(--border); box-shadow: 0 1px 0 rgba(17, 24, 39, .02); }
.app-topbar { top: 0; }
.brand, .current-org { color: var(--ink); }
.nav a, .nav button, .org-switcher a { color: var(--soft-muted); }
.nav a:hover, .nav button:hover { color: var(--ink); }
.app-sidebar { top: 62px; height: calc(100vh - 62px); border-right-color: var(--border); }
.app-sidebar a { color: var(--soft-muted); }
.app-sidebar a.active, .app-sidebar a:hover { background: #f1f5f9; color: var(--ink); }
.compact-header h1, .section-heading h1 { margin: 0 0 6px; font-size: 30px; line-height: 1.15; letter-spacing: 0; }
.panel, .card, .status-tile, .source-card, .test-result, .mini-form { overflow-wrap: anywhere; }
.grid.four { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.table-scroll { width: 100%; overflow-x: auto; }
.table-scroll table { min-width: 720px; }
.stacked-panel { margin-top: 18px; }
.action-row { display: flex; flex-wrap: wrap; gap: 8px; align-items: center; }
.mini-card { border: 1px solid var(--border); border-radius: 8px; padding: 12px; margin-bottom: 12px; }
.feedback-form { margin-top: 10px; }
.uses-brain { border-color: #cfe0dc; background: #f5fbf9; color: var(--brand-teal); }
.source-preview summary { color: var(--brand-teal); }
.readiness-strip.adding, .readiness-strip.testing { border-color: #ebe3a4; background: #fffbea; }
.status { background: #f2f6f5; color: var(--brand-teal); }
.status.testing, .status.processing, .status.uploaded { background: #fef3c7; color: #7a5b00; }
.status.paused, .status.failed, .bad { background: #fee2e2; color: var(--danger); }
.status.excluded { background: #f3f4f6; color: #374151; }
.btn { font-weight: 750; line-height: 1.2; transition: background-color .16s ease, border-color .16s ease, color .16s ease, box-shadow .16s ease; }
.btn:hover { background: #000; border-color: #000; }
.btn.secondary:hover { background: #f8fafc; border-color: #9ca3af; color: var(--ink); }
.btn.danger { background: var(--danger); border-color: var(--danger); }
input:focus, textarea:focus, select:focus, button:focus-visible, a:focus-visible { outline-color: rgba(14, 117, 107, .22); }
.auth-card { position: relative; overflow: hidden; }
.auth-card::before { content: ""; position: absolute; inset: 0 0 auto; height: 5px; background: linear-gradient(90deg, var(--ink) 0 66%, var(--brand-yellow) 66% 84%, var(--brand-teal) 84% 100%); }
.readiness-card.readiness-testing { border-left-color: var(--brand-teal); background: #f5fbf9; }
.progress-step a:hover strong { color: var(--brand-teal); }
.progress-step.current .step-state, .readiness-status.testing { background: #fff3bf; color: #7a5b00; }
.readiness-checks li.review .check-icon { border-color: var(--brand-teal); background: #e8f4f2; }
.readiness-checks li.review .check-icon::after, .readiness-checks li.needed .check-icon::after { content: "!"; }
.bubble { background: #f2f6f5; }
.widget-body { --widget-accent: var(--brand-yellow); background: var(--app-bg); margin: 0; min-height: 100vh; }
.widget-shell { display: grid; grid-template-rows: auto 1fr auto; min-height: 100vh; border: 1px solid #d7dde7; background: var(--surface); }
.widget-header { border-top: 4px solid var(--widget-accent); padding: 14px 16px; background: var(--ink); color: #fff; font-weight: 800; }
.widget-input { border-top-color: var(--border); background: #fafafa; }
.preview-header { border-top: 4px solid var(--widget-accent); background: var(--ink); }

@media (max-width: 900px) {
  .grid.four { grid-template-columns: 1fr; }
  .app-sidebar { display: flex; gap: 6px; overflow-x: auto; padding: 8px; border-right: 0; border-bottom: 1px solid var(--border); }
  .app-sidebar a { flex: 1 0 max-content; min-width: 86px; }
  .table-scroll table { min-width: 640px; }
}

/* Brand and mobile correction pass. This makes the app visibly Bombyx while
   keeping work surfaces compact and operational instead of marketing-heavy. */
:root {
  --ink: #000;
  --ink-soft: #1a1a1a;
  --warm-bg: #fbf9f3;
  --warm-panel: #f3f1eb;
  --warm-line: #eae7de;
  --app-bg: #fbf9f3;
  --app-ink: #172033;
  --app-ink-strong: #111827;
  --muted: #626767;
  --soft-muted: #576666;
  --brand-yellow: #dbd66d;
  --brand-gold: #cca054;
  --brand-gold-hover: #b48c49;
  --brand-teal: #0e756b;
  --sidebar-width: 216px;
  --sidebar-collapsed-width: 68px;
}

body { background: var(--warm-bg); color: var(--app-ink); }
body.has-app-sidebar {
  background: linear-gradient(90deg, var(--ink) 0 var(--sidebar-width), var(--warm-bg) var(--sidebar-width) 100%);
}
html.sidebar-collapsed body.has-app-sidebar {
  background: linear-gradient(90deg, var(--ink) 0 var(--sidebar-collapsed-width), var(--warm-bg) var(--sidebar-collapsed-width) 100%);
}
a { color: var(--brand-teal); font-weight: 700; }
.topbar {
  background: var(--ink);
  color: #fff;
  border-top: 0;
  border-bottom: 4px solid var(--brand-yellow);
  box-shadow: none;
}
.topbar .nav a,
.topbar .nav button {
  color: #fff;
  font-weight: 800;
}
.topbar .nav a:hover,
.topbar .nav button:hover {
  color: var(--brand-yellow);
}
.app-topbar { top: 0; }
.app-topbar-inner {
  min-height: 70px;
  grid-template-columns: auto minmax(240px, 390px) minmax(0, 1fr) auto;
  gap: 16px;
  padding: 12px 22px;
}
.brand {
  padding: 5px 8px;
  border-radius: 4px;
  background: #fff;
  color: var(--ink);
  box-shadow: 0 1px 0 rgba(255, 255, 255, .14);
}
.brand.guest-brand {
  padding: 0;
  background: transparent;
  box-shadow: none;
}
.app-topbar .brand-logo { width: 144px; }
.app-topbar .guest-brand .brand-logo {
  width: 150px;
}
.org-switcher {
  min-width: 0;
  padding: 7px;
  border: 1px solid rgba(255, 255, 255, .16);
  border-radius: 8px;
  background: rgba(255, 255, 255, .07);
}
.org-switcher select,
.org-context,
.account-menu summary {
  border-color: rgba(255, 255, 255, .22);
  background: #121212;
  color: #fff;
}
.org-switcher select { min-height: 42px; }
.org-switcher a { color: var(--brand-yellow); }
.org-context { color: #fff; }
.app-topbar .nav-menu { grid-column: 4; }
.account-menu { grid-column: 4; }
.account-menu summary { max-width: 230px; }
.account-menu-panel {
  border-color: var(--warm-line);
  background: #fff;
  box-shadow: 0 18px 42px rgba(0, 0, 0, .24);
}
.app-frame {
  grid-template-columns: minmax(0, 1fr);
  min-height: calc(100vh - 74px);
  background: var(--warm-bg);
}
.app-frame-with-sidebar {
  grid-template-columns: var(--sidebar-width) minmax(0, 1fr);
  transition: grid-template-columns .24s ease;
}
.app-frame-with-sidebar.sidebar-collapsed,
html.sidebar-collapsed .app-frame-with-sidebar {
  grid-template-columns: var(--sidebar-collapsed-width) minmax(0, 1fr);
}
.app-sidebar {
  top: 74px;
  height: calc(100vh - 74px);
  min-width: 0;
  padding: 14px 10px;
  border-right: 0;
  background: var(--ink);
  transition: padding .24s ease;
}
.sidebar-toggle {
  justify-self: end;
  display: inline-grid;
  place-items: center;
  width: 32px;
  height: 32px;
  margin: 0 0 6px;
  border: 1px solid rgba(255, 255, 255, .22);
  border-radius: 999px;
  background: rgba(255, 255, 255, .08);
  color: #fff;
  cursor: pointer;
  font-size: 22px;
  line-height: 1;
  transition: background .18s ease, color .18s ease, transform .24s ease;
}
.sidebar-toggle:hover {
  background: var(--brand-yellow);
  color: var(--ink);
}
.app-sidebar a {
  gap: 10px;
  min-width: 0;
  min-height: 42px;
  border-left: 3px solid transparent;
  border-radius: 4px;
  color: #e8e6dc;
  overflow: hidden;
  transition: background .18s ease, color .18s ease, padding .24s ease;
}
.sidebar-icon {
  display: none;
  flex: 0 0 30px;
  place-items: center;
  width: 30px;
  height: 30px;
  border-radius: 8px;
  background: rgba(255, 255, 255, .08);
  color: #fff;
  font-size: 13px;
  font-weight: 900;
}
.sidebar-label {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  transition: opacity .16s ease;
}
.app-sidebar a.active,
.app-sidebar a:hover {
  background: var(--brand-yellow);
  color: var(--ink-soft);
  border-left-color: #fff;
}
html.sidebar-collapsed .app-sidebar {
  padding-inline: 9px;
}
html.sidebar-collapsed .sidebar-toggle {
  justify-self: center;
  transform: rotate(0deg);
}
html.sidebar-collapsed .app-sidebar a {
  justify-content: center;
  gap: 0;
  padding: 8px 5px;
  border-left-color: transparent;
}
html.sidebar-collapsed .sidebar-icon {
  display: grid;
}
html.sidebar-collapsed .sidebar-label {
  width: 0;
  opacity: 0;
}
html.sidebar-collapsed .app-sidebar a.active .sidebar-icon,
html.sidebar-collapsed .app-sidebar a:hover .sidebar-icon {
  background: var(--brand-yellow);
  color: var(--ink);
}
.app-main {
  max-width: 1200px;
  padding: 30px 32px 44px;
}
.compact-header h1,
.section-heading h1,
.page-header h1 {
  color: var(--ink);
}
.compact-header p,
.page-header p,
.next-step-card p,
.card p,
.panel p {
  color: #3f4f4f;
}
.eyebrow,
.auth-eyebrow {
  color: var(--brand-teal);
}
.panel,
.card,
.status-tile,
.source-card,
.test-result,
.mini-form,
.knowledge-entry-form,
.widget-preview,
.next-panel,
.readiness-panel {
  border-color: var(--warm-line);
  background: #fff;
}
.panel,
.card,
.status-tile,
.source-card,
.test-result {
  box-shadow: 0 1px 0 rgba(0, 0, 0, .03);
}
.next-step-card {
  border-color: var(--warm-line);
  border-left: 6px solid var(--brand-yellow);
  background: #fff;
  box-shadow: 0 18px 42px rgba(0, 0, 0, .06);
}
.next-step-card h2 { color: var(--ink); }
.next-step-why {
  margin: 0 0 5px;
  color: var(--brand-teal);
  font-weight: 850;
}
.status-tile {
  border-top: 3px solid var(--brand-yellow);
}
.status-tile strong { color: var(--ink); }
.status-tile span,
.muted {
  color: var(--muted);
}
.uses-brain,
.status {
  border: 1px solid #c8ddd9;
  background: #e8f4f2;
  color: var(--brand-teal);
}
.status.published,
.ok {
  border-color: #b7e4c3;
  background: #eaf8ee;
  color: #166534;
}
.status.testing,
.status.processing,
.status.uploaded,
.progress-step.current .step-state,
.readiness-status.testing {
  border-color: #e7dfa0;
  background: #fff7cf;
  color: #6f5500;
}
.btn {
  border-color: var(--ink);
  border-radius: 4px;
  background: var(--ink);
  color: #fff;
  font-weight: 800;
}
.btn:hover {
  background: var(--ink-soft);
  border-color: var(--ink-soft);
}
.btn.secondary {
  border-color: var(--brand-teal);
  background: #fff;
  color: var(--brand-teal);
}
.btn.secondary:hover {
  border-color: var(--brand-teal);
  background: #eef7f5;
  color: var(--brand-teal);
}
.assistant-status-indicator {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 40px;
  margin-bottom: 8px;
  gap: 8px;
  padding: 10px 14px;
  border: 2px solid #88cf99;
  border-radius: 999px;
  background: #dff5e6;
  color: #166534;
  cursor: default;
  font-weight: 850;
  line-height: 1.2;
  text-transform: none;
  user-select: text;
}
.assistant-status-indicator > span {
  width: 10px;
  height: 10px;
  border-radius: 999px;
  background: currentColor;
  box-shadow: 0 0 0 3px rgba(22, 101, 52, .12);
}
.assistant-status-indicator.paused {
  border-color: #e7dfa0;
  background: #fff8d7;
  color: #7a5b00;
}
.assistant-status-indicator.paused > span {
  box-shadow: 0 0 0 3px rgba(122, 91, 0, .12);
}
input,
textarea,
select {
  border-color: #d8d2c4;
  background: #fff;
}
input:focus,
textarea:focus,
select:focus,
button:focus-visible,
a:focus-visible {
  outline-color: rgba(14, 117, 107, .26);
}
th,
td {
  border-bottom-color: var(--warm-line);
}
th { color: var(--soft-muted); }
.notice {
  border: 1px solid #c8ddd9;
  background: #e8f4f2;
  color: var(--brand-teal);
  transition: opacity .3s ease;
}
.notice.is-hiding {
  opacity: 0;
}
.errors {
  border: 1px solid #f2c7c7;
}
.app-flash-stack {
  position: fixed;
  right: 24px;
  bottom: 24px;
  z-index: 1400;
  display: grid;
  width: min(420px, calc(100vw - 32px));
  gap: 10px;
  pointer-events: none;
}
.app-flash-stack > :where(.notice, .errors) {
  margin: 0;
  box-shadow: 0 18px 45px rgba(17, 24, 39, .16);
  pointer-events: auto;
}
.auth-card {
  border-color: var(--warm-line);
  background: #fff;
}
.app-frame-standalone {
  background:
    linear-gradient(180deg, rgba(0, 0, 0, .03), rgba(0, 0, 0, 0) 160px),
    var(--warm-bg);
}
.app-frame-standalone .app-main {
  display: grid;
  align-content: start;
  padding-top: clamp(48px, 9vh, 94px);
}
.auth {
  width: min(100%, 520px);
  margin-top: 0;
}
.app-frame-standalone .auth {
  justify-self: center;
}
.auth.panel {
  padding: 34px 38px 30px;
  border-radius: 6px;
}
.auth-card {
  box-shadow: 0 22px 54px rgba(0, 0, 0, .07);
}
.auth-card h1 {
  color: #08152c;
  font-size: clamp(28px, 3vw, 34px);
  line-height: 1.08;
}
.auth-card > .muted {
  max-width: 420px;
  color: #46505f;
  font-size: 16px;
}
.auth-card-trial {
  max-width: 560px;
}
.auth-access-granted {
  display: inline-grid;
  gap: 3px;
  width: fit-content;
  margin-bottom: 10px;
  padding: 9px 12px;
  border: 1px solid #c8ddd9;
  border-radius: 7px;
  background: #f2fbf9;
  color: #0e756b;
  font-size: 12px;
  font-weight: 900;
  line-height: 1.2;
  text-transform: uppercase;
}
.auth-access-granted strong {
  color: #08152c;
  font-size: 13px;
  text-transform: none;
}
.auth-eyebrow {
  color: var(--brand-teal);
}
.auth-trial-summary {
  display: grid;
  gap: 8px;
  margin: -10px 0 24px;
  padding: 12px 0;
  border-top: 1px solid var(--warm-line);
  border-bottom: 1px solid var(--warm-line);
}
.auth-trial-summary span {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: 8px;
  align-items: start;
  color: #172033;
  font-weight: 800;
  line-height: 1.3;
}
.auth-trial-summary span::before {
  content: "";
  width: 8px;
  height: 8px;
  margin-top: .42em;
  background: var(--brand-yellow);
  border: 1px solid #b7b14d;
  border-radius: 2px;
}
.auth-submit {
  margin: 2px 0 4px;
}
.auth-form + .auth-switch {
  margin-top: 22px;
}
.auth-card::before {
  height: 6px;
  background: linear-gradient(90deg, var(--brand-yellow) 0 52%, var(--brand-teal) 52% 76%, var(--ink) 76% 100%);
}
.waitlist-main {
  max-width: none;
  min-height: calc(100vh - 176px);
  padding: clamp(34px, 6vw, 72px) clamp(18px, 4vw, 42px) 54px;
  background:
    radial-gradient(circle at 50% 0, rgba(219, 214, 109, .18), transparent 260px),
    #fbfaf7;
}
.waitlist-shell {
  width: min(100%, 820px);
  margin: 0 auto;
}
.waitlist-card {
  position: relative;
  overflow: hidden;
  display: grid;
  gap: 22px;
  padding: clamp(32px, 5vw, 52px);
  border: 1px solid #e5e1d7;
  border-radius: 8px;
  background: #fff;
  box-shadow: 0 24px 70px rgba(8, 21, 44, .09);
}
.waitlist-card::before {
  content: "";
  position: absolute;
  inset: 0 0 auto;
  height: 7px;
  background: linear-gradient(90deg, var(--brand-yellow) 0 48%, var(--brand-teal) 48% 76%, #000 76% 100%);
}
.waitlist-eyebrow,
.waitlist-section-label,
.waitlist-next-step span {
  color: var(--brand-teal);
  font-size: 12px;
  font-weight: 900;
  letter-spacing: .08em;
  line-height: 1.2;
  text-transform: uppercase;
}
.waitlist-title {
  max-width: 720px;
  margin: 0;
  color: #08152c;
  font-size: clamp(34px, 5vw, 54px);
  line-height: 1.02;
  letter-spacing: 0;
}
.waitlist-subhead {
  max-width: 690px;
  margin: -8px 0 0;
  color: #344054;
  font-size: clamp(17px, 2vw, 20px);
  line-height: 1.56;
}
.waitlist-divider {
  height: 1px;
  background: #ece7dc;
}
.waitlist-benefits {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px 18px;
  margin: -8px 0 4px;
  padding: 0;
  list-style: none;
}
.waitlist-benefit {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: 10px;
  align-items: start;
  min-width: 0;
  color: #172033;
  font-weight: 800;
  line-height: 1.35;
}
.waitlist-benefit::before {
  content: "";
  width: 9px;
  height: 9px;
  margin-top: .42em;
  border-radius: 2px;
  background: var(--brand-yellow);
  box-shadow: 0 0 0 1px rgba(0, 0, 0, .16);
}
.waitlist-form {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
}
.waitlist-form-wide,
.waitlist-fieldset {
  grid-column: 1 / -1;
}
.waitlist-fieldset {
  display: grid;
  gap: 10px;
  min-width: 0;
  margin: 0;
  padding: 0;
  border: 0;
}
.waitlist-fieldset legend {
  margin: 0 0 10px;
  padding: 0;
  color: #172033;
  font-weight: 800;
}
.waitlist-fieldset legend span {
  color: #667085;
  font-weight: 700;
}
.waitlist-checkbox-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
}
.waitlist-checkbox {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: 10px;
  align-items: center;
  min-height: 58px;
  padding: 13px 14px;
  border: 1px solid #d8d2c4;
  border-radius: 8px;
  background: #fbfaf7;
  color: #172033;
  cursor: pointer;
  font-weight: 750;
  line-height: 1.3;
}
.waitlist-checkbox:has(input:checked) {
  border-color: var(--brand-teal);
  background: #f2fbf9;
  box-shadow: inset 4px 0 0 var(--brand-teal);
}
.waitlist-checkbox input {
  width: 18px;
  height: 18px;
  margin: 0;
  accent-color: var(--brand-teal);
}
.waitlist-checkbox span {
  align-self: center;
}
.waitlist-submit {
  width: 100%;
  min-height: 52px;
  margin-top: 2px;
  border-color: #000;
  background: #000;
  color: #fff;
  font-size: 16px;
}
.waitlist-submit:hover {
  border-color: #1a1a1a;
  background: #1a1a1a;
  color: #fff;
}
.waitlist-privacy,
.waitlist-invited,
.waitlist-small-note {
  margin: 0;
  text-align: center;
}
.waitlist-privacy {
  color: #667085;
  font-size: 13px;
}
.waitlist-invited {
  color: #344054;
  font-weight: 800;
}
.waitlist-small-note {
  max-width: 520px;
  justify-self: center;
  color: #667085;
  font-size: 13px;
}
.waitlist-honeypot {
  position: absolute;
  left: -10000px;
  width: 1px;
  height: 1px;
  overflow: hidden;
}
.waitlist-success {
  display: grid;
  gap: 18px;
}
.waitlist-next-step {
  display: grid;
  gap: 7px;
  margin-top: 4px;
  padding: 16px 18px;
  border: 1px solid #c8ddd9;
  border-left: 5px solid var(--brand-teal);
  border-radius: 8px;
  background: #f2fbf9;
}
.waitlist-next-step p {
  margin: 0;
  color: #172033;
  font-weight: 750;
}
.invite-main {
  max-width: none;
  min-height: calc(100vh - 176px);
  padding: clamp(42px, 8vw, 92px) clamp(18px, 4vw, 42px) 54px;
  background:
    radial-gradient(circle at 50% 0, rgba(14, 117, 107, .11), transparent 280px),
    #fbfaf7;
}
.invite-shell {
  width: min(100%, 560px);
  margin: 0 auto;
}
.invite-card {
  position: relative;
  overflow: hidden;
  display: grid;
  gap: 20px;
  padding: clamp(30px, 5vw, 44px);
  border: 1px solid #e5e1d7;
  border-radius: 8px;
  background: #fff;
  box-shadow: 0 24px 70px rgba(8, 21, 44, .09);
}
.invite-accent {
  position: absolute;
  inset: 0 0 auto;
  display: grid;
  grid-template-columns: 52fr 24fr 24fr;
  height: 7px;
}
.invite-accent span:nth-child(1) {
  background: var(--brand-yellow);
}
.invite-accent span:nth-child(2) {
  background: var(--brand-teal);
}
.invite-accent span:nth-child(3) {
  background: #000;
}
.invite-eyebrow {
  color: var(--brand-teal);
  font-size: 12px;
  font-weight: 900;
  letter-spacing: .08em;
  line-height: 1.2;
  text-transform: uppercase;
}
.invite-card h1 {
  margin: 0;
  color: #08152c;
  font-size: clamp(32px, 5vw, 46px);
  line-height: 1.04;
}
.invite-subhead {
  margin: -8px 0 0;
  color: #344054;
  font-size: 18px;
  line-height: 1.55;
}
.invite-code-form {
  display: grid;
  gap: 11px;
  padding-top: 4px;
}
.invite-code-form label {
  color: #172033;
  font-weight: 850;
}
.invite-code-form input {
  min-height: 58px;
  border: 1px solid #d8d2c4;
  border-radius: 8px;
  color: #08152c;
  font-size: 22px;
  font-weight: 850;
  letter-spacing: .04em;
  text-transform: uppercase;
}
.invite-submit {
  min-height: 52px;
  margin-top: 6px;
  border-color: #000;
  background: #000;
  color: #fff;
  font-size: 16px;
}
.invite-help {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 6px;
  color: #667085;
  font-weight: 750;
  text-align: center;
}
.access-code-token {
  display: inline-block;
  margin: 6px 0;
  padding: 7px 9px;
  border: 1px solid #d8d2c4;
  border-radius: 6px;
  background: #fbfaf7;
  color: #08152c;
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", monospace;
  font-size: 14px;
  font-weight: 850;
  letter-spacing: .06em;
}
.admin-collapsible-panel {
  padding: 0;
  overflow: hidden;
}
.app-main .admin-collapsible-panel {
  padding: 0;
}
.admin-collapsible-summary {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  min-height: 64px;
  padding: 14px 20px;
  cursor: pointer;
  list-style: none;
}
.admin-collapsible-summary::-webkit-details-marker {
  display: none;
}
.admin-collapsible-summary h2,
.admin-collapsible-summary p {
  margin: 0;
}
.admin-collapsible-summary h2 {
  color: #111827;
}
.admin-collapsible-panel:not([open]) .admin-collapsible-summary-copy {
  display: none;
}
.admin-collapsible-action {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 auto;
  min-height: 34px;
  padding: 7px 10px;
  border: 1px solid #c8ddd9;
  border-radius: 999px;
  background: #f2fbf9;
  color: #0e756b;
  font-size: 13px;
  font-weight: 850;
  white-space: nowrap;
}
.admin-collapsible-panel[open] .admin-collapsible-action {
  background: #fff;
}
.admin-collapsible-action-close {
  display: none;
}
.admin-collapsible-panel[open] .admin-collapsible-action-open {
  display: none;
}
.admin-collapsible-panel[open] .admin-collapsible-action-close {
  display: inline-flex;
  align-items: center;
  gap: 6px;
}
.access-code-create-panel .access-code-form {
  padding: 0 20px 20px;
}
.copy-field {
  width: min(100%, 320px);
  min-height: 38px;
  font-size: 13px;
}
.table-scroll .access-code-table {
  min-width: 620px;
}
.access-code-table .access-code-row > td {
  vertical-align: middle;
  padding-top: 16px;
  padding-bottom: 16px;
}
.access-code-primary-cell > strong,
.access-code-primary-link {
  display: block;
  max-width: 420px;
  color: #111827;
  font-size: 16px;
  font-weight: 900;
  line-height: 1.25;
}
.access-code-primary-link {
  color: #07574f;
  text-decoration: underline;
  text-underline-offset: 3px;
}
.access-code-status-text,
.access-code-organization-count {
  color: #172033;
  font-weight: 850;
}
.access-code-status-note {
  margin-top: 3px;
}
.access-code-signup-link,
.access-code-workshop-link {
  display: grid;
  gap: 4px;
  width: min(100%, 360px);
  padding: 10px 12px;
  border: 1px solid #c8ddd9;
  border-radius: 8px;
  background: #f2fbf9;
  color: #0e756b;
  text-decoration: none;
}
.access-code-signup-link:hover,
.access-code-signup-link:focus-visible,
.access-code-workshop-link:hover,
.access-code-workshop-link:focus-visible {
  border-color: #0e756b;
  background: #e8f4f2;
}
.access-code-signup-link strong,
.access-code-workshop-link strong {
  color: #07574f;
  font-size: 14px;
  line-height: 1.2;
}
.access-code-signup-link span,
.access-code-workshop-link span {
  min-width: 0;
  overflow: hidden;
  color: #344054;
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", monospace;
  font-size: 12px;
  line-height: 1.35;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.access-code-redemptions {
  margin-top: 8px;
  color: #46505f;
  font-size: 13px;
}
.access-code-workshop-toggle {
  align-items: flex-start;
  max-width: 560px;
  padding: 12px 14px;
  border: 1px solid #e5e1d7;
  border-radius: 8px;
  background: #fbfaf7;
}
.access-code-workshop-toggle small {
  display: block;
  margin-top: 3px;
  color: #667085;
  font-size: 13px;
  font-weight: 650;
  line-height: 1.45;
}
.access-code-workshop-organizations {
  display: grid;
  gap: 8px;
  margin-top: 12px;
  min-width: 260px;
}
.access-code-workshop-organizations .admin-inline-form {
  align-items: center;
  display: grid;
  gap: 8px;
  grid-template-columns: minmax(0, 1fr) auto;
}
.access-code-workshop-organizations select {
  min-width: 0;
}
.access-code-workshop-list {
  display: grid;
  gap: 6px;
}
.access-code-workshop-item {
  align-items: center;
  display: flex;
  gap: 8px;
  justify-content: space-between;
  min-height: 34px;
  padding: 6px 8px;
  border: 1px solid #e5e1d7;
  border-radius: 7px;
  background: #fbfaf7;
  color: #172033;
  font-size: 13px;
  font-weight: 750;
}
.access-code-action-group {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}
.access-code-action-group form,
.access-code-action-group .btn {
  flex: 1 1 150px;
  margin: 0;
}
.access-code-dialog {
  position: fixed;
  inset: 0;
  width: min(92vw, 760px);
  max-height: min(82vh, 760px);
  margin: auto;
  padding: 0;
  border: 1px solid #d8d2c4;
  border-radius: 8px;
  background: #fff;
  color: #172033;
  box-shadow: 0 24px 72px rgba(17, 24, 39, .26);
  overflow: hidden;
}
.access-code-dialog[open] {
  display: grid;
  grid-template-rows: auto minmax(0, 1fr);
}
.access-code-dialog::backdrop {
  background: rgba(17, 24, 39, .34);
}
.access-code-dialog-header {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 18px;
  position: relative;
  padding: 22px 68px 22px 24px;
  border-bottom: 1px solid #e5e1d7;
}
.access-code-dialog-close-form {
  position: absolute;
  top: 16px;
  right: 16px;
  margin: 0;
}
.access-code-dialog .access-code-dialog-close {
  width: 36px;
  height: 36px;
  border-color: #d8d2c4;
  border-radius: 999px;
  background: #fff;
  color: #111827;
  font-size: 22px;
  line-height: 1;
}
.access-code-dialog .access-code-dialog-close:hover,
.access-code-dialog .access-code-dialog-close:focus-visible {
  border-color: #0e756b;
  background: #e8f4f2;
  color: #07574f;
}
.access-code-dialog-header h2,
.access-code-dialog-section h3 {
  margin: 0;
  color: #111827;
  letter-spacing: 0;
}
.access-code-dialog-header h2 {
  font-size: 24px;
  line-height: 1.15;
}
.access-code-dialog-grid {
  display: grid;
  gap: 18px;
  padding: 22px 24px 24px;
  overflow: auto;
}
.access-code-dialog-section {
  display: grid;
  gap: 10px;
  min-width: 0;
}
.access-code-dialog-section h3 {
  font-size: 15px;
  font-weight: 900;
}
.access-code-dialog .access-code-signup-link,
.access-code-dialog .access-code-workshop-link {
  width: 100%;
}
.link-button {
  border: 0;
  background: transparent;
  color: #0e756b;
  cursor: pointer;
  font: inherit;
  font-weight: 850;
  padding: 0;
}
.link-button:hover,
.link-button:focus-visible {
  text-decoration: underline;
  text-underline-offset: 3px;
}
.workshop-directory-main {
  background:
    radial-gradient(circle at 18% 0, rgba(219, 214, 109, .16), transparent 320px),
    var(--warm-bg);
}
.workshop-directory-header .actions {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 10px;
}
.workshop-directory-header .actions form {
  margin: 0;
}
.workshop-code-panel {
  max-width: 720px;
}
.workshop-code-form {
  max-width: 520px;
}
.workshop-code-form input {
  min-height: 56px;
  color: #08152c;
  font-size: 22px;
  font-weight: 850;
  letter-spacing: .04em;
  text-transform: uppercase;
}
.workshop-directory-panel {
  display: grid;
  gap: 18px;
}
.workshop-directory-title-row {
  align-items: end;
}
.workshop-directory-note {
  margin: 0;
  padding: 12px 14px;
  border: 1px solid #e5e1d7;
  border-radius: 8px;
  background: #fbfaf7;
  color: #475467;
  font-weight: 750;
}
.workshop-directory-empty {
  display: grid;
  gap: 6px;
  padding: 24px;
  border: 1px dashed #d8d2c4;
  border-radius: 8px;
  background: #fbfaf7;
}
.workshop-directory-empty h3,
.workshop-directory-empty p {
  margin: 0;
}
.workshop-directory-empty h3 {
  color: #111827;
  font-size: 22px;
  line-height: 1.18;
}
.workshop-directory-empty p {
  color: #475467;
  font-size: 16px;
}
.workshop-directory-table-wrap table {
  min-width: 780px;
}
.workshop-directory-table td:first-child strong {
  display: block;
  color: #111827;
  font-size: clamp(19px, 2.2vw, 26px);
  line-height: 1.15;
}
.workshop-directory-table td {
  font-size: 16px;
}
.workshop-directory-link {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: 12px;
  width: min(100%, 620px);
  min-height: 46px;
  padding: 9px 10px 9px 13px;
  border: 1px solid #c8ddd9;
  border-radius: 8px;
  background: #f2fbf9;
  color: #0e756b;
  text-decoration: none;
}
.workshop-directory-link:hover,
.workshop-directory-link:focus-visible {
  border-color: #0e756b;
  background: #e8f4f2;
}
.workshop-directory-link-url {
  min-width: 0;
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", monospace;
  font-size: 13px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.workshop-directory-link-action {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 30px;
  padding: 6px 9px;
  border-radius: 999px;
  background: #fff;
  color: #07574f;
  font-size: 12px;
  font-weight: 850;
  white-space: nowrap;
}
.flowbar {
  border-bottom-color: var(--warm-line);
  background: #fff;
}
.widget-body {
  background: var(--warm-bg);
}
.widget-shell {
  border-color: var(--warm-line);
  background: #fff;
}
.widget-header,
.preview-header {
  border-top: 4px solid var(--widget-accent);
  background: var(--ink);
  color: #fff;
}
.widget-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  padding: 12px 14px;
  font-weight: 800;
}
.widget-header-title {
  min-width: 0;
  overflow-wrap: anywhere;
}
.widget-header-actions {
  display: inline-flex;
  flex: 0 0 auto;
  align-items: center;
  gap: 8px;
}
.widget-header-button {
  min-height: 30px;
  border: 1px solid currentColor;
  border-radius: 999px;
  background: transparent;
  color: inherit;
  padding: 5px 9px;
  font-size: 12px;
  font-weight: 750;
  line-height: 1;
  white-space: nowrap;
  cursor: pointer;
}
.widget-header-button:hover,
.widget-header-button:focus-visible {
  background: rgba(255, 255, 255, .12);
  outline: none;
}
.widget-input {
  border-top-color: var(--warm-line);
  background: var(--warm-panel);
}
.bubble {
  background: #e8f4f2;
}
.bubble.user {
  background: var(--ink);
  color: #fff;
}
.widget-working-bubble {
  background: #f5f8f7;
}
.widget-working-row {
  display: flex;
  align-items: center;
  gap: 10px;
}
.widget-working-indicator {
  display: inline-flex;
  flex: 0 0 auto;
  gap: 3px;
  align-items: center;
  color: var(--widget-accent);
}
.widget-working-dot {
  width: 6px;
  height: 6px;
  border-radius: 999px;
  background: currentColor;
  opacity: .35;
  animation: widget-working-pulse 1.2s ease-in-out infinite;
}
.widget-working-dot:nth-child(2) {
  animation-delay: .15s;
}
.widget-working-dot:nth-child(3) {
  animation-delay: .3s;
}
.widget-working-copy {
  display: grid;
  gap: 3px;
  min-width: 0;
}
.widget-working-status {
  color: #172033;
  font-size: 14px;
  font-weight: 800;
  line-height: 1.35;
}
.widget-working-subline {
  color: #526071;
  font-size: 13px;
  line-height: 1.45;
}
@keyframes widget-working-pulse {
  0%, 100% { opacity: .35; }
  50% { opacity: 1; }
}
@media (prefers-reduced-motion: reduce) {
  .widget-working-dot {
    animation: none;
    opacity: .7;
  }
}

/* Organization opportunity review */
.connector-capability-editor {
  margin: 14px 0;
  padding: 12px 14px;
  border: 1px solid var(--border);
  border-radius: 6px;
}

.connector-capability-editor summary {
  cursor: pointer;
  font-weight: 750;
}

.connector-capability-editor[open] summary {
  margin-bottom: 14px;
}

.opportunity-filter-tabs {
  display: flex;
  gap: 24px;
  margin-bottom: 14px;
  border-bottom: 1px solid #dfe3e8;
  overflow-x: auto;
  scrollbar-width: thin;
}

.opportunity-filter-tabs a {
  display: inline-flex;
  min-height: 44px;
  align-items: center;
  gap: 7px;
  padding: 7px 1px 10px;
  border: 0;
  border-bottom: 3px solid transparent;
  border-radius: 0;
  background: transparent;
  color: #667085;
  font-weight: 750;
  text-decoration: none;
  white-space: nowrap;
}

.opportunity-filter-tabs a:hover,
.opportunity-filter-tabs a:focus-visible {
  color: #111827;
}

.opportunity-filter-tabs a.active {
  border-bottom-color: #111827;
  color: #111827;
}

.opportunity-tab-count {
  min-width: 16px;
  color: #7a838f;
  font-size: 13px;
  font-weight: 650;
  text-align: center;
}

.opportunity-row-meta,
.opportunity-row-foot {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 5px 0;
}

.opportunity-row-meta {
  color: #667085;
  font-size: 12px;
  font-weight: 700;
  text-transform: uppercase;
}

.opportunity-row-meta span + span::before {
  content: "/";
  margin: 0 8px;
  color: #a4aab3;
}

.opportunity-empty {
  padding: 48px 24px;
  text-align: center;
}

.opportunity-empty h2 {
  margin: 0 0 6px;
  font-size: 20px;
}

.opportunity-empty p {
  margin: 0;
}

.opportunity-empty-kicker {
  color: #667085;
  font-size: 12px;
  font-weight: 800;
  text-transform: uppercase;
}

.opportunity-workspace {
  min-width: 0;
  container-type: inline-size;
}

.opportunity-workspace-status {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

.opportunity-workspace-error {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  margin-bottom: 12px;
}

.opportunity-workspace-error[hidden] {
  display: none;
}

.opportunity-workbench {
  display: grid;
  grid-template-columns: minmax(300px, 340px) minmax(0, 1fr);
  min-height: 620px;
  overflow: clip;
  border: 1px solid #dfe3e8;
  border-radius: 8px;
  background: #fff;
}

.opportunity-queue-panel {
  min-width: 0;
  overflow: hidden;
  border-right: 1px solid #dfe3e8;
  background: #fbfcfc;
}

.opportunity-queue-heading {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 12px;
  padding: 16px 18px 13px;
  border-bottom: 1px solid #e5e7eb;
}

.opportunity-queue-heading h2 {
  margin: 0;
  font-size: 16px;
  line-height: 1.3;
}

.opportunity-queue {
  max-height: calc(100vh - 300px);
  min-height: 420px;
  overflow-y: auto;
  overscroll-behavior: contain;
  scrollbar-width: thin;
}

.opportunity-queue-row {
  display: block;
  padding: 16px 18px 15px;
  border-bottom: 1px solid #e5e7eb;
  box-shadow: inset 3px 0 transparent;
  color: #172033;
  text-decoration: none;
}

.opportunity-queue-row:hover,
.opportunity-queue-row:focus-visible {
  background: #f7faf9;
}

.opportunity-queue-row.active {
  box-shadow: inset 3px 0 #0e756b;
  background: #f0f7f6;
}

.opportunity-queue-row h3 {
  margin: 7px 0 5px;
  color: #111827;
  font-size: 15px;
  line-height: 1.35;
  overflow-wrap: anywhere;
}

.opportunity-queue-row p {
  display: -webkit-box;
  margin: 0;
  overflow: hidden;
  color: #576666;
  font-size: 13px;
  line-height: 1.45;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 1;
}

.opportunity-queue-row .opportunity-queue-source {
  color: #28323d;
  line-height: 1.42;
  -webkit-line-clamp: 2;
}

.opportunity-queue-row .opportunity-queue-reply {
  margin-top: 7px;
  color: #77808a;
}

.opportunity-queue-row .opportunity-queue-reply strong {
  color: #57616b;
  font-weight: 700;
}

.opportunity-row-foot {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 6px 12px;
  margin-top: 10px;
}

.opportunity-state {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  color: #667085;
  font-size: 12px;
  font-weight: 750;
}

.opportunity-state > span {
  width: 7px;
  height: 7px;
  flex: 0 0 7px;
  border-radius: 50%;
  background: currentColor;
}

.opportunity-state-ready,
.opportunity-state-approved {
  color: #0b6b62;
}

.opportunity-state-working,
.opportunity-state-complete {
  color: #326a4a;
}

.opportunity-state-waiting {
  color: #8c651b;
}

.opportunity-state-blocked {
  color: #a02b2b;
}

.opportunity-queue-panel .pagination-links {
  margin: 0;
  padding: 10px 12px;
  border-top: 1px solid #e5e7eb;
}

.opportunity-review-pane {
  min-width: 0;
  background: #fff;
}

.opportunity-workspace.is-caught-up .opportunity-workbench {
  grid-template-columns: 1fr;
  min-height: 400px;
}

.opportunity-workspace.is-caught-up .opportunity-queue-panel {
  display: none;
}

.opportunity-caught-up {
  min-height: 398px;
  max-width: 600px;
  margin: 0 auto;
  padding-inline: 32px;
}

.opportunity-caught-up-icon {
  display: inline-grid;
  margin-bottom: 13px;
  color: #0e756b;
}

.opportunity-caught-up h2 {
  margin-top: 5px;
  color: #111827;
  font-size: 26px;
}

.opportunity-caught-up .muted {
  max-width: 520px;
  margin-inline: auto;
}

.opportunity-caught-up .btn {
  margin-top: 20px;
}

.opportunity-detail {
  padding: 28px 32px 8px;
  scroll-margin-top: 18px;
}

.opportunity-detail-header {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 20px;
  padding-bottom: 23px;
  border-bottom: 1px solid #e5e7eb;
}

.opportunity-detail-heading-copy {
  min-width: 0;
}

.opportunity-detail-heading-copy h2 {
  margin: 8px 0 5px;
  color: #111827;
  font-size: 27px;
  line-height: 1.2;
  overflow-wrap: anywhere;
}

.opportunity-detail-heading-copy p {
  margin: 0;
  color: #576666;
}

.opportunity-detail-tools {
  display: flex;
  flex: 0 0 auto;
  align-items: center;
  gap: 9px;
}

.opportunity-step-controls {
  display: flex;
  gap: 6px;
}

.icon-button.disabled {
  opacity: .4;
  pointer-events: none;
}

.opportunity-detail-empty {
  min-height: 240px;
  display: grid;
  align-content: center;
}

.opportunity-review-target {
  margin-top: 24px;
  padding: 22px 24px;
  border: 1px solid #e8e5dc;
  border-radius: 8px;
  background: #faf9f5;
}

.opportunity-focus-label {
  margin: 0 0 12px;
  color: #69727c;
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .02em;
  text-transform: uppercase;
}

.opportunity-target-parent {
  margin: -3px 0 11px;
  color: #6b7280;
  font-size: 13px;
  font-weight: 650;
}

.opportunity-review-target blockquote {
  margin: 0;
  color: #141a22;
  font-size: 18px;
  line-height: 1.55;
  white-space: pre-wrap;
  overflow-wrap: anywhere;
}

.opportunity-target-author {
  margin: 0 0 9px;
  color: #4d5965;
  font-size: 13px;
  font-weight: 750;
}

.opportunity-target-author span {
  margin-left: 5px;
  color: #7a838d;
  font-weight: 500;
}

.opportunity-target-missing {
  margin: 0 0 8px;
  color: #4d5965;
  font-size: 16px;
}

.opportunity-review-reply {
  padding-bottom: 20px;
  border-bottom: 0;
}

.opportunity-review-reply .opportunity-section-heading {
  margin-bottom: 12px;
}

.opportunity-review-reply .opportunity-draft-copy {
  padding: 22px 24px;
  border-color: #dfe6e4;
  border-radius: 8px;
  background: #f4f8f7;
  font-size: 17px;
  line-height: 1.6;
}

.opportunity-review-actions {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 0 0 25px;
  border-bottom: 1px solid #e5e7eb;
}

.opportunity-review-actions[hidden] {
  display: none;
}

.opportunity-review-actions form {
  margin: 0;
}

.opportunity-review-actions .opportunity-text-button {
  min-height: 40px;
  padding: 0 10px;
}

.opportunity-review-details {
  border-bottom: 0;
}

.opportunity-review-details > summary {
  display: flex;
  min-height: 52px;
  align-items: center;
  justify-content: space-between;
  color: #5d6670;
  font-size: 14px;
  font-weight: 750;
  cursor: pointer;
  list-style: none;
}

.opportunity-review-details > summary::-webkit-details-marker {
  display: none;
}

.opportunity-review-details > summary::after {
  content: "+";
  color: #77808a;
  font-size: 20px;
  font-weight: 400;
}

.opportunity-review-details[open] > summary::after {
  content: "−";
}

.opportunity-review-details-content {
  border-top: 1px solid #e5e7eb;
}

.opportunity-review-details-content .opportunity-content-section:last-child {
  border-bottom: 0;
}

.opportunity-form-errors {
  color: #a61b1b;
  font-size: 13px;
  font-weight: 700;
}

.opportunity-workspace.is-loading .opportunity-workbench {
  opacity: .62;
  transition: opacity 120ms ease;
}

.opportunity-decision {
  display: grid;
  grid-template-columns: 40px minmax(0, 1fr);
  gap: 15px;
  margin-top: 24px;
  padding: 20px 22px;
  border-left: 4px solid #9aa1aa;
  border-radius: 4px;
  background: #f6f7f8;
}

.opportunity-decision-ready {
  border-left-color: #0e756b;
  background: #eff8f6;
}

.opportunity-decision-approved,
.opportunity-decision-complete {
  border-left-color: #3f7757;
  background: #f1f7f3;
}

.opportunity-decision-waiting {
  border-left-color: #b0822d;
  background: #fbf8ef;
}

.opportunity-decision-blocked {
  border-left-color: #ae3434;
  background: #fcf3f3;
}

.opportunity-decision-icon {
  display: grid;
  width: 36px;
  height: 36px;
  place-items: center;
  color: #4b5563;
}

.opportunity-decision-ready .opportunity-decision-icon {
  color: #0e756b;
}

.opportunity-decision-approved .opportunity-decision-icon,
.opportunity-decision-complete .opportunity-decision-icon {
  color: #3f7757;
}

.opportunity-decision-waiting .opportunity-decision-icon {
  color: #8c651b;
}

.opportunity-decision-blocked .opportunity-decision-icon {
  color: #a02b2b;
}

.opportunity-decision-content {
  min-width: 0;
}

.opportunity-decision-kicker {
  margin: 0 0 3px;
  color: #667085;
  font-size: 12px;
  font-weight: 800;
  text-transform: uppercase;
}

.opportunity-decision h3 {
  margin: 0;
  color: #111827;
  font-size: 22px;
  line-height: 1.25;
}

.opportunity-decision-content > p:not(.opportunity-decision-kicker) {
  max-width: 760px;
  margin: 8px 0 0;
  color: #4f5c68;
}

.opportunity-decision-content > form {
  margin-top: 16px;
}

.opportunity-scope-note {
  font-size: 13px;
}

.opportunity-close-action {
  display: flex;
  align-items: center;
  gap: 12px;
  margin-top: 18px;
  padding-top: 15px;
  border-top: 1px solid rgba(17, 24, 39, .1);
  color: #667085;
  font-size: 12px;
}

.opportunity-close-action form {
  flex: 0 0 auto;
}

.opportunity-text-button {
  display: inline-flex;
  min-height: 36px;
  align-items: center;
  gap: 7px;
  padding: 0;
  border: 0;
  background: transparent;
  color: #57616f;
  font: inherit;
  font-size: 13px;
  font-weight: 750;
  cursor: pointer;
}

.opportunity-text-button:hover,
.opportunity-text-button:focus-visible {
  color: #8d2929;
  text-decoration: underline;
  text-underline-offset: 3px;
}

.opportunity-content-section {
  padding: 27px 0;
  border-bottom: 1px solid #e5e7eb;
}

.opportunity-content-section:last-child {
  border-bottom: 0;
}

.opportunity-content-section > h3,
.opportunity-section-heading h3 {
  margin: 0;
  color: #111827;
  font-size: 20px;
  line-height: 1.3;
}

.opportunity-section-heading {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  margin-bottom: 15px;
}

.opportunity-section-heading p {
  margin: 3px 0 0;
  color: #667085;
  font-size: 13px;
}

.icon-button {
  display: inline-grid;
  width: 40px;
  height: 40px;
  flex: 0 0 40px;
  place-items: center;
  border: 1px solid #d6dbe3;
  border-radius: 6px;
  background: #fff;
  color: #172033;
  cursor: pointer;
}

.icon-button:hover,
.icon-button:focus-visible {
  border-color: #0e756b;
  color: #0e756b;
}

.opportunity-draft-copy {
  padding: 18px 19px;
  border: 1px solid #e7e5dd;
  border-radius: 4px;
  background: #fbfaf6;
  color: #172033;
  line-height: 1.6;
  white-space: pre-wrap;
  overflow-wrap: anywhere;
}

.opportunity-draft-form textarea {
  width: 100%;
  resize: vertical;
}

.opportunity-blockers {
  max-width: 760px;
  margin-top: 14px;
  color: #303845;
}

.opportunity-blockers ul {
  margin: 8px 0 0;
  padding-left: 20px;
}

.opportunity-facts {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 18px;
  margin: 20px 0 0;
}

.opportunity-facts div {
  min-width: 0;
}

.opportunity-facts dt {
  color: #667085;
  font-size: 12px;
  font-weight: 750;
  text-transform: uppercase;
}

.opportunity-facts dd {
  margin: 3px 0 0;
  color: #172033;
  overflow-wrap: anywhere;
}

.opportunity-rationale {
  max-width: 780px;
  margin: 9px 0 0;
  color: #4f5c68;
}

.opportunity-disclosure,
.opportunity-section-empty {
  margin: 12px 0 0;
  color: #667085;
  font-size: 13px;
}

.opportunity-evidence {
  margin-top: 22px;
  padding-top: 20px;
  border-top: 1px solid #e5e7eb;
}

.opportunity-evidence h4 {
  margin: 0;
  color: #111827;
  font-size: 14px;
}

.opportunity-evidence ul {
  margin: 9px 0 0;
  padding-left: 20px;
  color: #4f5c68;
}

.opportunity-history details {
  padding: 14px 0;
  border-bottom: 1px solid #e5e7eb;
}

.opportunity-history details:last-child {
  border-bottom: 0;
}

.opportunity-history summary {
  cursor: pointer;
  font-weight: 750;
}

.opportunity-history .opportunity-draft-copy {
  margin-top: 12px;
}

@container (max-width: 1000px) {
  .opportunity-workbench {
    grid-template-columns: 1fr;
    min-height: 0;
    overflow: visible;
  }

  .opportunity-queue-panel {
    border-right: 0;
    border-bottom: 1px solid #dfe3e8;
  }

  .opportunity-queue {
    min-height: 0;
    max-height: 260px;
  }

  .opportunity-workspace.is-review-mode .opportunity-queue {
    max-height: none;
  }

  .opportunity-workspace.is-review-mode .opportunity-queue-row:not(.active) {
    display: none;
  }
}

@media (max-width: 1220px) {
  .opportunity-workbench {
    grid-template-columns: 1fr;
    min-height: 0;
    overflow: visible;
  }

  .opportunity-queue-panel {
    border-right: 0;
    border-bottom: 1px solid #dfe3e8;
  }

  .opportunity-queue {
    min-height: 0;
    max-height: 260px;
  }

  .opportunity-workspace.is-review-mode .opportunity-queue {
    max-height: none;
  }

  .opportunity-workspace.is-review-mode .opportunity-queue-row:not(.active) {
    display: none;
  }
}

@media (max-width: 600px) {
  .opportunity-filter-tabs {
    gap: 20px;
  }

  .opportunity-workbench {
    margin-inline: -2px;
    overflow: visible;
  }

  .opportunity-workspace.is-review-mode .opportunity-workbench {
    display: block;
  }

  .opportunity-workspace.is-review-mode .opportunity-queue-panel {
    display: none;
  }

  .opportunity-facts {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .opportunity-filter-tabs a {
    min-width: max-content;
  }

  .opportunity-queue {
    max-height: 220px;
  }

  .opportunity-queue-row {
    padding: 13px 14px;
  }

  .opportunity-detail-header {
    display: grid;
  }

  .opportunity-detail {
    padding: 21px 18px 28px;
  }

  .opportunity-detail-heading-copy h2 {
    font-size: 23px;
  }

  .opportunity-review-target {
    margin-top: 18px;
    padding: 18px;
  }

  .opportunity-review-target blockquote {
    font-size: 16px;
  }

  .opportunity-review-reply {
    padding-top: 22px;
  }

  .opportunity-review-reply .opportunity-draft-copy {
    padding: 18px;
    font-size: 16px;
  }

  .opportunity-review-actions {
    display: grid;
    grid-template-columns: 1fr auto;
  }

  .opportunity-review-actions form:first-child,
  .opportunity-review-actions .btn.primary {
    width: 100%;
  }

  .opportunity-review-actions form:last-child {
    grid-column: 1 / -1;
  }

  .opportunity-detail-tools {
    width: 100%;
    flex-wrap: wrap;
    justify-content: space-between;
  }

  .opportunity-source-link {
    flex: 0 1 auto;
  }

  .opportunity-decision {
    grid-template-columns: 32px minmax(0, 1fr);
    gap: 11px;
    padding: 18px 16px;
  }

  .opportunity-decision-icon {
    width: 30px;
  }

  .opportunity-decision h3 {
    font-size: 20px;
  }

  .opportunity-decision .btn.primary {
    width: 100%;
  }

  .opportunity-close-action {
    display: block;
  }

  .opportunity-close-action > span {
    display: block;
    margin-top: 3px;
  }
}

.heading-link {
  color: inherit;
  text-decoration: none;
}
.heading-link:hover,
.heading-link:focus {
  color: var(--brand-teal);
  text-decoration: underline;
  text-underline-offset: 3px;
}
.metric-link {
  color: inherit;
  text-decoration: none;
  transition: border-color .16s ease, background .16s ease, box-shadow .16s ease, transform .16s ease;
}
.metric-link:hover {
  border-color: var(--brand-teal);
  background: #f6fbf9;
  box-shadow: 0 12px 26px rgba(14, 117, 107, .08);
  transform: translateY(-1px);
}
.next-step-progress {
  display: grid;
  gap: 7px;
  max-width: 460px;
  margin-top: 14px;
}
.next-step-progress-label {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  color: var(--ink);
  font-size: 13px;
  font-weight: 850;
}
.next-step-progress-track {
  height: 9px;
  overflow: hidden;
  border-radius: 999px;
  background: #e7ebef;
}
.next-step-progress-track span {
  display: block;
  width: var(--next-step-progress);
  height: 100%;
  border-radius: inherit;
  background: linear-gradient(90deg, var(--brand-teal), var(--brand-yellow));
}
.answer-review-header {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 18px;
  align-items: center;
  border-left: 5px solid var(--brand-yellow);
  background: #fff;
}
.answer-review-header h2 {
  margin: 0 0 6px;
  color: var(--ink);
  font-size: 28px;
  line-height: 1.12;
}
.answer-review-header p {
  margin: 0;
}
.answer-review-stats {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  justify-content: flex-end;
}
.answer-review-stats > span {
  min-width: 128px;
  padding: 12px;
  border: 1px solid var(--warm-line);
  border-radius: 8px;
  background: #fbfaf6;
}
.answer-review-stats strong {
  display: block;
  color: var(--ink);
  font-size: 26px;
  line-height: 1;
}
.answer-review-stats span span {
  display: block;
  margin-top: 6px;
  color: #667085;
  font-size: 12px;
  font-weight: 850;
}
.tester-section-header {
  display: flex;
  justify-content: space-between;
  gap: 18px;
  align-items: end;
  margin-bottom: 14px;
}
.tester-section-header h1 {
  margin: 0 0 6px;
  color: var(--ink);
  font-size: 30px;
  line-height: 1.1;
}
.tester-section-header p {
  margin: 0;
}
.assistant-preview-chat {
  overflow: hidden;
  gap: 0;
  padding: 0;
  border-color: #d7dde7;
  background: #f7f7f2;
}
.assistant-preview-topbar {
  display: flex;
  gap: 10px;
  align-items: center;
  padding: 14px 16px;
  border-top: 4px solid var(--brand-yellow);
  background: var(--ink);
  color: #fff;
}
.assistant-preview-topbar span:not(.assistant-avatar) {
  display: block;
  margin-top: 2px;
  color: rgba(255, 255, 255, .72);
  font-size: 12px;
  font-weight: 700;
}
.assistant-preview-thread {
  display: grid;
  gap: 14px;
  padding: 18px;
}
.assistant-message-row {
  display: flex;
  gap: 10px;
  align-items: flex-start;
}
.assistant-message-row.user {
  justify-content: flex-end;
}
.assistant-avatar {
  display: grid;
  flex: 0 0 auto;
  place-items: center;
  width: 34px;
  height: 34px;
  border-radius: 999px;
  background: var(--brand-yellow);
  color: #000;
  font-size: 13px;
  font-weight: 950;
}
.user-avatar {
  width: 38px;
  background: var(--ink);
  color: #fff;
  font-size: 11px;
}
.assistant-preview-chat .bubble {
  width: min(760px, 100%);
  max-width: 76%;
  border: 1px solid #d5dedb;
  border-radius: 8px;
  background: #fff;
  color: var(--app-ink);
}
.assistant-preview-chat .bubble.user {
  max-width: 56%;
  border-color: var(--ink);
  background: var(--ink);
  color: #fff;
}
.assistant-preview-chat .refs {
  display: flex;
  flex-wrap: wrap;
  gap: 4px;
  align-items: center;
  padding-top: 8px;
  border-top: 1px solid var(--warm-line);
}
.assistant-preview-chat .refs a {
  font-weight: 800;
  text-decoration: none;
}
.assistant-preview-chat .refs a:hover {
  text-decoration: underline;
}
.assistant-feedback-form {
  display: grid;
  gap: 10px;
}
.assistant-feedback-actions {
  display: flex;
  gap: 8px;
  margin-top: 10px;
}
.icon-action {
  display: inline-grid;
  place-items: center;
  width: 40px;
  height: 40px;
  border: 1px solid var(--brand-teal);
  border-radius: 8px;
  background: #fff;
  color: var(--brand-teal);
  cursor: pointer;
  font-size: 17px;
  line-height: 1;
}
.icon-action:hover {
  background: #eef8f6;
}
.feedback-correction-panel {
  display: grid;
  gap: 10px;
  padding: 12px;
  border: 1px solid #c8ddd9;
  border-radius: 8px;
  background: #f8fbfa;
}
.feedback-correction-panel[hidden] {
  display: none;
}
.assistant-empty-state {
  display: flex;
  gap: 10px;
  align-items: flex-start;
  max-width: 680px;
}
.assistant-empty-state p {
  margin: 0;
  padding: 12px 14px;
  border: 1px solid #d5dedb;
  border-radius: 8px;
  background: #fff;
}
.assistant-test-form {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 10px;
  padding: 14px 16px;
  border-top: 1px solid var(--warm-line);
  background: #fff;
}
.assistant-test-form input {
  min-height: 44px;
  border-radius: 999px;
}
.assistant-test-form .btn {
  min-width: 78px;
  margin: 0;
  border-radius: 999px;
}

.assistant-public-preview {
  --assistant-accent: #17395f;
  display: flex;
  flex-direction: column;
  min-height: 0;
  overflow: hidden;
  gap: 0;
  padding: 0;
  border: 1px solid #d7dde7;
  border-radius: 8px;
  background: #fff;
  box-shadow: none;
}

.assistant-public-preview .assistant-preview-topbar,
.assistant-public-preview .assistant-preview-footer {
  flex: 0 0 auto;
}

.assistant-public-preview .assistant-preview-topbar {
  min-height: 56px;
  padding: 12px 16px;
  border-top: 4px solid var(--brand-yellow);
  background: var(--assistant-accent);
}

.assistant-public-preview .assistant-preview-topbar .assistant-avatar {
  display: none;
}

.assistant-public-preview .assistant-preview-topbar strong {
  display: block;
  font-weight: 900;
}

.assistant-public-preview .assistant-preview-topbar span:not(.assistant-avatar) {
  color: rgba(255, 255, 255, .76);
}

.assistant-public-preview .assistant-preview-thread {
  flex: 1 1 0;
  min-height: 0;
  max-height: min(620px, calc(100vh - 360px));
  overflow: auto;
  padding: 18px 16px 20px;
  background: #fff;
}

.assistant-public-preview .assistant-message-row {
  display: grid;
  grid-template-columns: 34px minmax(0, 1fr);
  gap: 10px;
  align-items: start;
}

.assistant-public-preview .assistant-message-row.user {
  grid-template-columns: minmax(0, 1fr) 38px;
}

.assistant-public-preview .assistant-message-row.user .bubble {
  justify-self: end;
}

.assistant-public-preview .assistant-message-row.user .user-avatar {
  grid-column: 2;
}

.assistant-public-preview .assistant-avatar {
  background: var(--brand-yellow);
  color: #000;
}

.assistant-public-preview .user-avatar {
  background: var(--assistant-accent);
  color: #fff;
}

.assistant-public-preview .bubble {
  width: auto;
  max-width: min(78%, 720px);
  padding: 14px 16px;
  border: 1px solid #dde3ec;
  border-radius: 10px;
  background: #fff;
  color: #172033;
  box-shadow: none;
}

.assistant-public-preview .bubble.user {
  max-width: min(62%, 560px);
  border-color: color-mix(in srgb, var(--assistant-accent) 22%, transparent);
  border-radius: 10px;
  background: color-mix(in srgb, var(--assistant-accent) 35%, transparent);
  color: #172033;
}

.assistant-public-preview .bubble > strong {
  display: none;
}

.assistant-public-preview .assistant-welcome-bubble {
  display: grid;
  gap: 8px;
}

.assistant-public-preview .assistant-welcome-bubble p {
  margin: 0;
  padding: 0;
  border: 0;
  background: transparent;
}

.assistant-public-preview .assistant-answer-actions {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 16px;
  margin-top: 12px;
}

.assistant-public-preview .assistant-inline-feedback {
  min-width: 72px;
}

.assistant-public-preview .source-summary {
  margin-top: 0;
  margin-left: auto;
  border-top: 0;
  text-align: right;
}

.assistant-public-preview .source-summary summary {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  min-height: 30px;
  color: #001e2b;
  font-size: 12px;
  font-weight: 950;
  letter-spacing: .04em;
  text-transform: uppercase;
}

.assistant-public-preview .assistant-feedback-actions {
  margin-top: 0;
  gap: 14px;
}

.assistant-public-preview .icon-action {
  width: 28px;
  height: 28px;
  padding: 0;
  border: 0;
  border-radius: 6px;
  background: transparent;
  color: #4b5563;
  box-shadow: none;
}

.assistant-public-preview .icon-action svg {
  display: block;
  width: 18px;
  height: 18px;
  margin: auto;
  fill: none;
  stroke: currentColor;
  stroke-linecap: round;
  stroke-linejoin: round;
  stroke-width: 1.8;
}

.assistant-public-preview .icon-action.is-selected svg,
.assistant-public-preview .icon-action[aria-pressed="true"] svg {
  fill: currentColor;
}

.assistant-public-preview .icon-action:hover,
.assistant-public-preview .icon-action:focus-visible {
  background: transparent;
  color: #111827;
}

.assistant-public-preview .assistant-feedback-actions .btn.secondary {
  min-height: 32px;
  padding: 0;
  border: 0;
  background: transparent;
  color: var(--assistant-accent);
  box-shadow: none;
  font-weight: 900;
}

.assistant-public-preview .assistant-feedback-actions .btn.secondary:hover,
.assistant-public-preview .assistant-feedback-actions .btn.secondary:focus-visible {
  text-decoration: underline;
  text-underline-offset: 3px;
}

.assistant-preview-footer {
  display: grid;
  gap: 8px;
  padding: 12px;
  border-top: 1px solid #dbe3ee;
  background: #fbfcfe;
}

.assistant-starter-tray {
  display: grid;
  gap: 8px;
}

.assistant-starter-tray > span {
  color: #667085;
  font-size: 12px;
  font-weight: 850;
}

.assistant-starter-tray > div {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.assistant-starter-tray form {
  margin: 0;
}

.assistant-public-preview .question-chip {
  max-width: min(100%, 360px);
  min-height: 36px;
  border: 1px solid #d9e2ef;
  border-radius: 999px;
  background: #fff;
  color: var(--assistant-accent);
  font-weight: 850;
  line-height: 1.25;
  text-align: left;
  white-space: normal;
}

.assistant-public-preview .question-chip:hover,
.assistant-public-preview .question-chip:focus-visible {
  border-color: var(--assistant-accent);
  background: #f4f8fc;
}

.assistant-public-preview .assistant-test-form {
  position: relative;
  grid-template-columns: minmax(0, 1fr);
  gap: 0;
  padding: 0;
  border-top: 0;
  background: transparent;
}

.assistant-public-preview .assistant-test-form input {
  min-height: 58px;
  border-radius: 8px;
  padding-right: 58px;
  background: #fff;
}

.assistant-public-preview .assistant-send-button {
  position: absolute;
  right: 7px;
  top: 50%;
  transform: translateY(-50%);
  display: grid;
  place-items: center;
  width: 44px;
  min-width: 44px;
  height: 44px;
  min-height: 44px;
  align-self: center;
  padding: 0;
  border-color: var(--assistant-accent);
  border-radius: 999px;
  background: var(--assistant-accent);
  color: #fff;
  font-size: 24px;
  line-height: 1;
}

.assistant-public-preview .assistant-send-button[hidden] {
  display: none;
}

.assistant-preview-meta {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  min-width: 0;
  white-space: nowrap;
}

.assistant-preview-meta .assistant-ai-disclosure {
  flex: 1 1 auto;
  min-width: 0;
  flex-wrap: nowrap;
}

.assistant-powered-link {
  flex: 0 1 auto;
  color: #667085;
  font-size: 11px;
  line-height: 1.35;
  text-decoration: underline;
  text-underline-offset: 2px;
  white-space: nowrap;
}

.visibility-cta-panel {
  gap: 12px;
}

.visibility-cta-panel .btn {
  justify-self: start;
}

@media (max-width: 700px) {
  .assistant-public-preview .assistant-preview-thread {
    min-height: 360px;
    max-height: min(620px, calc(100vh - 260px));
    overflow: auto;
    padding: 14px 12px;
  }

  .assistant-public-preview .bubble,
  .assistant-public-preview .bubble.user {
    max-width: 100%;
  }

  .assistant-public-preview .assistant-message-row,
  .assistant-public-preview .assistant-message-row.user {
    grid-template-columns: 1fr;
  }

  .assistant-public-preview .assistant-message-row > .assistant-avatar,
  .assistant-public-preview .assistant-message-row.user .user-avatar {
    display: none;
  }
}
.app-footer {
  color: var(--muted);
}
.app-footer-with-sidebar {
  max-width: none;
  margin-left: var(--sidebar-width);
  padding-left: 24px;
  padding-right: 24px;
  background: var(--warm-bg);
  transition: margin-left .24s ease;
}
html.sidebar-collapsed .app-footer-with-sidebar {
  margin-left: var(--sidebar-collapsed-width);
}

.admin-header {
  margin-bottom: 18px;
}
.admin-section-nav {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  align-items: center;
  margin: -6px 0 18px;
  padding-top: 14px;
  border-top: 1px solid var(--warm-line);
}
.usage-stats-bar {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  align-items: center;
  margin-bottom: 20px;
}
.usage-stat-badge {
  display: inline-flex;
  flex-wrap: wrap;
  align-items: baseline;
  gap: 6px;
  min-height: 38px;
  padding: 7px 11px;
  border: 1px solid #c8ddd9;
  border-radius: 999px;
  background: #f5fbf9;
  color: var(--brand-teal);
  font-size: 14px;
  font-weight: 850;
}
.usage-stat-badge:hover {
  border-color: var(--brand-teal);
  background: #e8f4f2;
}
.usage-stat-badge strong {
  color: var(--ink);
  font-size: 18px;
  line-height: 1;
}
.usage-stat-badge small {
  flex-basis: 100%;
  color: #667085;
  font-size: 12px;
  font-weight: 750;
  line-height: 1.3;
}
.satisfaction-panel {
  display: grid;
  gap: 12px;
}
.satisfaction-stats {
  margin-bottom: 0;
}
.usage-log-section {
  display: grid;
  gap: 14px;
}
.anchor-target {
  display: block;
  scroll-margin-top: 92px;
}
.usage-log-list {
  display: grid;
  gap: 0;
}
.usage-log-card {
  display: grid;
  gap: 12px;
  padding: 20px 0;
  border: 0;
  border-top: 1px solid var(--warm-line);
  background: transparent;
}
.usage-log-card.needs-review {
  border-top-color: #d9c887;
}
.usage-review-status {
  justify-self: start;
}
.usage-qa-preview {
  display: grid;
  gap: 8px;
}
.usage-question,
.usage-answer-text {
  margin: 0;
  color: var(--ink);
}
.usage-question {
  font-size: 19px;
  line-height: 1.35;
  font-weight: 800;
}
.usage-answer-text {
  color: #243333;
  line-height: 1.58;
}
.usage-question strong,
.usage-answer-text strong {
  margin-right: 6px;
  color: var(--brand-teal);
  font-size: 20px;
  line-height: 1;
}
.usage-card-actions,
.usage-log-footer {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  align-items: center;
}
.usage-log-footer {
  gap: 8px 12px;
}
.usage-plan-chip {
  display: inline-grid;
  gap: 3px;
  align-items: start;
}
.usage-plan-chip .status {
  justify-self: start;
}
.usage-plan-chip small {
  color: #667085;
  font-size: 12px;
  font-weight: 750;
  line-height: 1.3;
}
.usage-conversation-details {
  width: 100%;
}
.usage-conversation-details > summary {
  justify-self: start;
}
.usage-thread {
  display: grid;
  gap: 0;
  margin-top: 12px;
  border: 1px solid var(--warm-line);
  border-radius: 8px;
  background: #fff;
  overflow: hidden;
}
.usage-thread-message {
  display: grid;
  gap: 8px;
  padding: 14px 16px;
  border-top: 1px solid var(--warm-line);
}
.usage-thread-message:first-child {
  border-top: 0;
}
.usage-thread-divider {
  padding: 9px 16px;
  border-top: 1px solid var(--warm-line);
  background: #f5fbf9;
  color: var(--brand-teal);
  font-size: 12px;
  font-weight: 900;
  text-transform: uppercase;
}
.usage-thread-message.visitor {
  background: #fbfaf6;
}
.usage-thread-message.assistant {
  background: #fff;
}
.usage-thread-meta {
  margin: 0;
  color: #667085;
  font-size: 13px;
  font-weight: 850;
}
.usage-thread-body {
  margin: 0;
  color: var(--ink);
  line-height: 1.55;
}
.usage-thread-body strong {
  margin-right: 6px;
  color: var(--brand-teal);
  font-size: 18px;
  line-height: 1;
}
.usage-thread-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px 12px;
  align-items: center;
}
.usage-source-list {
  flex: 1 1 100%;
  display: grid;
  gap: 6px;
}
.usage-source-list p {
  margin: 0;
}
.usage-source-list ul {
  display: grid;
  gap: 4px;
  margin: 0;
  padding-left: 20px;
}
.usage-source-list.compact {
  flex-basis: 100%;
}
.usage-improve-drawer {
  position: relative;
}
.usage-improve-drawer[open] {
  width: min(100%, 620px);
  margin-top: 2px;
  margin-left: 0;
}
.usage-improve-drawer .improve-form {
  margin-top: 10px;
}
.usage-source-link {
  appearance: none;
  display: inline-flex;
  align-items: center;
  min-height: 32px;
  padding: 4px 0;
  border: 0;
  background: transparent;
  color: var(--brand-teal);
  cursor: pointer;
  font: inherit;
  font-weight: 850;
}
.usage-source-link:hover {
  text-decoration: underline;
}
.pagination-links {
  display: flex;
  justify-content: center;
  margin: 20px 0 8px;
}
.pagination-links:empty {
  display: none;
}
.bombyx-pagination {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}
.bombyx-pagination a,
.bombyx-pagination span {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 34px;
  height: 34px;
  padding: 0 10px;
  border: 1px solid #d0d5dd;
  border-radius: 6px;
  background: #fff;
  color: #172033;
  font-size: 14px;
  font-weight: 750;
  line-height: 1;
  text-decoration: none;
}
.bombyx-pagination a:hover {
  border-color: var(--brand-teal);
  background: #f9fafb;
  color: var(--brand-teal);
}
.bombyx-pagination .pagination-page.active {
  border-color: #111827;
  background: #111827;
  color: #fff;
}
.bombyx-pagination .pagination-control {
  min-width: 78px;
}
.bombyx-pagination .pagination-control.disabled {
  color: #667085;
  background: #f5f7fa;
  cursor: not-allowed;
}
.bombyx-pagination .pagination-ellipsis {
  min-width: 24px;
  padding: 0 4px;
  border: 0;
  background: transparent;
  color: #667085;
  font-weight: 750;
}
.pagination-links--compact {
  justify-content: flex-start;
  margin: 2px 0 0;
}
.bombyx-pagination--compact {
  gap: 5px;
}
.bombyx-pagination--compact a,
.bombyx-pagination--compact span {
  min-width: 28px;
  height: 28px;
  padding: 0 8px;
  font-size: 11px;
  font-weight: 850;
}
.bombyx-pagination--compact .pagination-control {
  min-width: 58px;
}
@media (max-width: 560px) {
  .bombyx-pagination {
    width: 100%;
    justify-content: center;
    overflow-x: auto;
  }
  .bombyx-pagination a,
  .bombyx-pagination span {
    flex: 0 0 auto;
  }
}
.sidebar-notification-badge {
  display: inline-grid;
  place-items: center;
  min-width: 22px;
  height: 22px;
  margin-left: auto;
  padding: 0 6px;
  border-radius: 999px;
  background: var(--brand-yellow);
  color: #000;
  font-size: 12px;
  font-weight: 900;
  line-height: 1;
}
.answer-improvement-summary {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
  gap: 12px;
}
.answer-improvement-queue,
.answer-improvement-list {
  display: grid;
  gap: 14px;
}
.answer-improvement-card {
  display: grid;
  gap: 16px;
  padding: var(--app-panel-padding);
  border: 1px solid #e0ddd3;
  border-left: 5px solid var(--brand-yellow);
  border-radius: 8px;
  background: #fff;
  box-shadow: 0 16px 36px rgba(10, 20, 20, 0.06);
}
.answer-improvement-card-header,
.answer-improvement-actions {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 10px;
}
.answer-improvement-card-header {
  justify-content: space-between;
}
.answer-question-row {
  display: flex;
  align-items: start;
  justify-content: space-between;
  gap: 16px;
}
.inline-card-link {
  flex: 0 0 auto;
  color: var(--brand-teal);
  font-weight: 850;
  text-decoration: none;
}
.inline-card-link:hover,
.inline-card-link:focus {
  text-decoration: underline;
}
.answer-improvement-card-body,
.answer-card-fix-panel,
.answer-fix-context,
.answer-fix-panel,
.approved-fix-summary,
.reviewed-improvement-list {
  display: grid;
  gap: 14px;
}
.answer-card-fix-panel {
  padding: 14px;
  border: 1px solid #c8ddd9;
  border-radius: 8px;
  background: #f8fbfa;
}
.answer-card-fix-panel[hidden],
.inline-retest-result[hidden] {
  display: none;
}
.answer-card-fix-panel form {
  display: grid;
  gap: 12px;
}
.answer-card-fix-panel textarea {
  min-height: 150px;
}
.confirm-check-row[hidden] {
  display: none;
}
.inline-retest-result {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
  padding: 14px;
  border: 1px solid #c8ddd9;
  border-radius: 8px;
  background: #f8fbfa;
}
.inline-retest-result > div {
  min-width: 0;
}
.answer-improvement-card h3,
.answer-fix-context h2 {
  margin: 0;
  color: #000;
  line-height: 1.28;
}
.improve-lane-choice {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
  gap: 0.65rem;
  margin-bottom: 1rem;
}
.improve-lane-choice label {
  align-items: flex-start;
  border: 1px solid var(--border);
  border-radius: 8px;
  display: flex;
  gap: 0.6rem;
  padding: 0.75rem;
}
.improve-lane-choice small {
  color: var(--muted);
  display: block;
  font-size: 0.82rem;
  line-height: 1.35;
  margin-top: 0.2rem;
}
.quick-coaching-chips {
  display: flex;
  flex-wrap: wrap;
  gap: 0.45rem;
  margin: 0.65rem 0 1rem;
}
.coaching-feed-header {
  border-top: 1px solid var(--border);
  margin-top: 1.25rem;
  padding-top: 1rem;
}
.assistant-coaching-edit-form {
  gap: 0.7rem;
}
.assistant-coaching-fields {
  display: grid;
  gap: 0.55rem;
  grid-template-columns: repeat(2, minmax(0, 1fr));
}
.assistant-coaching-fields label,
.assistant-coaching-examples label {
  color: var(--muted);
  font-size: 0.78rem;
  font-weight: 700;
}
.assistant-coaching-fields select,
.assistant-coaching-fields input,
.assistant-coaching-examples textarea {
  margin-top: 0.25rem;
  width: 100%;
}
.assistant-coaching-examples {
  border: 1px solid var(--border);
  border-radius: 8px;
  padding: 0.55rem;
}
.assistant-coaching-examples summary {
  cursor: pointer;
  font-weight: 700;
}
.assistant-coaching-retest-result {
  background: #f8fbfa;
  border: 1px solid #d8e8e2;
  border-radius: 8px;
  color: var(--ink);
  font-size: 0.86rem;
  line-height: 1.45;
  margin-top: 0.8rem;
  padding: 0.75rem;
}
.assistant-coaching-retest-result h4 {
  margin: 0 0 0.4rem;
}
.assistant-coaching-retest-result p {
  margin: 0.35rem 0;
}
.assistant-coaching-retest-result pre {
  background: #fff;
  border: 1px solid var(--border);
  border-radius: 6px;
  overflow: auto;
  padding: 0.6rem;
  white-space: pre-wrap;
}
.tester-answer-section {
  display: block;
  margin-top: 30px;
}
.answer-comparison-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}
.answer-comparison-grid.stacked {
  grid-template-columns: 1fr;
}
.answer-comparison-grid > div {
  padding: 14px;
  border: 1px solid #e0ddd3;
  border-radius: 8px;
  background: #fbfaf6;
}
.answer-comparison-grid p {
  margin: 0;
  line-height: 1.55;
}
.answer-preview-toggle { display: block; width: 100%; padding: 0; border: 0; background: transparent; color: inherit; font: inherit; line-height: 1.55; text-align: left; cursor: pointer; }
.answer-preview-toggle:hover .answer-more-indicator,
.answer-preview-toggle:focus-visible .answer-more-indicator { text-decoration: underline; text-underline-offset: 3px; }
.answer-preview-toggle:focus-visible { outline: 0; box-shadow: 0 0 0 3px rgba(0, 126, 112, .18); border-radius: 6px; }
.answer-more-indicator { color: var(--brand-teal); font-weight: 900; white-space: nowrap; }
.answer-more-indicator::before { content: "... "; color: var(--brand-teal); }
.reviewed-improvement-detail { display: grid; gap: 0; padding: 8px 0; border-bottom: 1px solid #ece7dc; }
.reviewed-improvement-detail:last-child { border-bottom: 0; }
.reviewed-improvement-detail summary { display: flex; flex-wrap: wrap; align-items: center; gap: 10px; cursor: pointer; list-style: none; }
.reviewed-improvement-detail summary::-webkit-details-marker { display: none; }
.reviewed-improvement-detail summary::after { content: "View details"; margin-left: auto; color: var(--brand-teal); font-weight: 850; }
.reviewed-improvement-detail[open] summary::after { content: "Hide details"; }
.reviewed-improvement-detail summary:hover span:not(.status) { color: var(--brand-teal); text-decoration: underline; text-underline-offset: 3px; }
.reviewed-improvement-body { display: grid; gap: 12px; width: 100%; padding: 12px 0 4px 42px; }
.answer-comparison-label {
  margin-bottom: 6px !important;
  color: var(--brand-teal);
  font-size: 13px;
  font-weight: 900;
  text-transform: uppercase;
}
.answer-fix-layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(320px, 0.9fr);
  gap: 18px;
  align-items: start;
}
.answer-fix-panel textarea {
  min-height: 150px;
}
.action-explainer {
  padding: 12px 14px;
  border: 1px solid #c8ddd9;
  border-radius: 8px;
  background: #f5fbf9;
}
.retest-result-panel {
  border-left: 5px solid var(--brand-teal);
}
.admin-summary-grid .admin-metric {
  color: inherit;
  text-decoration: none;
}
.admin-metric {
  align-content: start;
  min-height: 126px;
}
.admin-metric h2 {
  overflow-wrap: normal;
  word-break: normal;
}
.admin-overview-grid,
.admin-management-grid {
  align-items: start;
  margin-bottom: 18px;
}
.admin-panel-heading {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 16px;
  margin-bottom: 16px;
}
.admin-panel-heading h2 {
  margin: 0 0 4px;
  font-size: 22px;
  line-height: 1.2;
  color: var(--ink);
}
.admin-panel-heading p {
  margin: 0;
}
.admin-queue-list {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
}
.admin-queue-list > div,
.admin-activity-list {
  display: grid;
  align-content: start;
  gap: 8px;
}
.admin-queue-list h3,
.admin-checklist h3 {
  margin: 0;
  font-size: 15px;
}
.admin-table-panel {
  margin-bottom: 18px;
}
.prompt-active-panel {
  margin-bottom: 18px;
}
.prompt-panel-heading {
  align-items: center;
}
.prompt-edit-panel {
  margin-bottom: 18px;
}
.prompt-edit-panel .admin-form {
  max-width: 920px;
}
.prompt-preview {
  max-height: 420px;
  overflow: auto;
  white-space: pre-wrap;
  overflow-wrap: anywhere;
  padding: 12px;
  border: 1px solid #e5e7eb;
  border-radius: 8px;
  background: #fbfbfb;
  color: #172033;
  font: 13px/1.55 ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
}
.admin-filter-form {
  display: flex;
  align-items: end;
  gap: 10px;
  flex-wrap: wrap;
  margin: 0 0 14px;
}
.admin-filter-form label {
  min-width: min(280px, 100%);
}
.admin-filter-form input {
  min-height: 42px;
}
.admin-column-search {
  display: grid;
  gap: 6px;
  max-width: 180px;
  font-weight: 800;
}
.admin-column-search input {
  min-height: 32px;
  padding: 6px 9px;
  border-radius: 6px;
  font-size: 14px;
  font-weight: 500;
}
.admin-table-panel[data-loading="true"] tbody {
  opacity: .62;
}
.admin-table-panel[data-loading="true"] .bombyx-pagination {
  opacity: .72;
  pointer-events: none;
}
.admin-table-panel[data-loading="error"] .admin-column-search input {
  border-color: #b42318;
}
.admin-live-error {
  margin-top: 10px;
  color: #b42318;
  font-weight: 700;
}
.admin-live-error .text-button {
  border: 0;
  padding: 0;
  background: transparent;
  color: var(--brand-teal);
  cursor: pointer;
  font: inherit;
  font-weight: 800;
  text-decoration: underline;
}
.admin-topbar {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 12px;
  flex-wrap: wrap;
}
.admin-topbar-organized {
  margin-bottom: 14px;
}
.admin-cockpit-summary {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 18px;
  align-items: stretch;
  margin-bottom: 16px;
  border-top: 5px solid var(--brand-yellow);
}
.admin-cockpit-summary-main {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 12px;
}
.admin-cockpit-summary-main > div,
.admin-cockpit-next {
  display: grid;
  align-content: start;
  gap: 7px;
  min-width: 0;
  padding: 12px;
  border: 1px solid var(--warm-line);
  border-radius: 8px;
  background: #fbfaf7;
}
.admin-cockpit-summary-main strong {
  color: var(--ink);
  font-size: clamp(18px, 1.8vw, 26px);
  line-height: 1.12;
}
.admin-cockpit-next {
  min-width: min(260px, 100%);
}
.admin-cockpit-next form {
  margin: 0;
}
.admin-cockpit-tabs {
  position: sticky;
  top: 0;
  z-index: 8;
  margin: 0 0 18px;
  padding: 8px 0;
  background: var(--warm-bg);
}
.admin-tab-panel[hidden] {
  display: none;
}
.admin-billing-cockpit,
.admin-external-billing-panel,
.admin-services-panel {
  display: grid;
  gap: 18px;
  margin-bottom: 18px;
}

.admin-external-billing-panel {
  border-color: color-mix(in srgb, var(--accent) 45%, var(--border));
  box-shadow: 0 14px 34px rgba(23, 32, 51, 0.08);
}

.external-billing-builder {
  display: grid;
  gap: 1rem;
}

.external-billing-builder [hidden] {
  display: none !important;
}

.external-billing-builder .admin-service-fields {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.external-billing-preview {
  padding: 1rem 1.15rem;
  border: 1px solid color-mix(in srgb, var(--accent) 40%, var(--border));
  border-radius: 10px;
  background: color-mix(in srgb, var(--accent) 10%, white);
}

.external-billing-preview p {
  margin: .35rem 0 0;
  color: var(--muted);
}

.external-billing-preview-meta {
  display: grid;
  grid-template-columns: minmax(0, 1.5fr) minmax(150px, .5fr);
  gap: .75rem;
  margin-top: .75rem;
}

.external-billing-preview-meta p {
  display: grid;
  gap: .15rem;
  margin: 0;
  padding: .75rem .85rem;
  border: 1px solid var(--border);
  border-radius: 8px;
  background: #fff;
}

.external-billing-preview-meta strong {
  color: var(--app-ink);
  overflow-wrap: anywhere;
}

.external-billing-preview-items {
  display: grid;
  gap: .55rem;
  margin: .85rem 0;
  padding: 0;
  list-style: none;
}

.external-billing-preview-items li {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: .15rem .75rem;
  padding-top: .55rem;
  border-top: 1px solid var(--border);
}

.external-billing-preview-items small {
  grid-column: 1 / -1;
  color: var(--muted);
}

.external-billing-preview-items .external-billing-discount {
  color: var(--brand-teal);
  font-weight: 750;
}

.external-billing-replace-summary {
  padding: .75rem .85rem;
  border: 1px solid #f0cf9c;
  border-radius: 8px;
  background: #fff8eb;
  color: #6f4108 !important;
}

.confirm-details .external-billing-preview {
  padding: 0;
  border: 0;
  background: transparent;
}

.confirm-details .external-billing-preview-title {
  display: none;
}

.confirm-details .external-billing-preview-meta {
  margin-top: 0;
}

.confirm-details .external-billing-preview-items {
  margin-bottom: .75rem;
}

.external-billing-replace-warning {
  padding: .85rem 1rem;
  border-radius: 8px;
  background: #fff5e8;
  color: #6f4108;
}

.external-billing-invite-list {
  margin-top: 1.5rem;
  padding-top: 1.25rem;
  border-top: 1px solid var(--border);
}

.external-billing-invite-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  padding: .85rem 0;
  border-bottom: 1px solid var(--border);
}

.external-billing-invite-row span,
.external-billing-invite-row small {
  display: block;
  margin-top: .2rem;
  color: var(--muted);
}

.external-billing-invite-row .billing-error {
  color: #9f2f24;
}

@media (max-width: 720px) {
  .external-billing-builder .admin-service-fields {
    grid-template-columns: 1fr;
  }

  .external-billing-invite-row {
    align-items: stretch;
    flex-direction: column;
  }

  .external-billing-preview-meta {
    grid-template-columns: 1fr;
  }

  .confirm-dialog.has-confirm-details {
    padding: 18px;
  }
}
.admin-billing-summary {
  margin-bottom: 0;
}
.admin-billing-mode-card {
  align-content: start;
  gap: 10px;
}
.admin-inline-action {
  margin-top: 4px;
}
.admin-current-charge-breakdown {
  display: grid;
  gap: 10px;
  padding: 14px;
  border: 1px solid var(--warm-line);
  border-radius: 8px;
  background: #fff;
}
.admin-statement-row {
  display: grid;
  grid-template-columns: minmax(180px, 1.7fr) repeat(3, minmax(100px, .7fr));
  gap: 12px;
  align-items: center;
  padding: 10px 0;
  border-top: 1px solid var(--warm-line);
}
.admin-statement-row:first-of-type {
  border-top: 0;
}
.admin-statement-row span {
  min-width: 0;
}
.admin-statement-row strong,
.admin-statement-row small {
  display: block;
}
.admin-statement-row small {
  color: var(--muted);
  font-size: 13px;
  font-weight: 750;
}
.admin-statement-head {
  color: var(--muted);
  font-size: 13px;
  font-weight: 850;
  text-transform: uppercase;
}
.admin-billing-explainer {
  margin-top: 4px;
}
.admin-billing-actions {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
  align-items: start;
}
.admin-billing-actions > details {
  min-width: 0;
}
.admin-billing-actions > details[open] {
  grid-column: 1 / -1;
}
.admin-billing-actions > details > summary {
  min-height: 44px;
  display: flex;
  align-items: center;
}
.admin-billing-workspace {
  align-items: start;
}
.admin-service-list {
  display: grid;
  grid-template-columns: 1fr;
  gap: 14px;
}
.admin-service-card,
.admin-add-service-panel {
  display: grid;
  gap: 14px;
  padding: 16px;
  border: 1px solid var(--warm-line);
  border-radius: 8px;
  background: #fff;
}
.admin-service-card-heading {
  display: flex;
  align-items: start;
  justify-content: space-between;
  gap: 18px;
  padding-bottom: 12px;
  border-bottom: 1px solid var(--warm-line);
}
.admin-service-card-heading h3 {
  margin: 8px 0 4px;
  font-size: 20px;
  line-height: 1.18;
}
.admin-service-price {
  display: grid;
  justify-items: end;
  gap: 4px;
  min-width: 160px;
  margin: 0;
  color: var(--ink);
  font-size: 20px;
  font-weight: 850;
  line-height: 1.18;
  text-align: right;
  white-space: nowrap;
}
.admin-service-price span {
  color: var(--muted);
  font-size: 13px;
  font-weight: 750;
  white-space: normal;
}
.admin-billing-period-card-compact {
  gap: 10px;
}
.admin-billing-period-card-compact .admin-service-card-heading {
  padding-bottom: 10px;
}
.admin-billing-period-card-compact .actions {
  margin-top: -2px;
}
.admin-service-form {
  display: grid;
  gap: 12px;
}
.admin-service-fields {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
  gap: 12px;
}
.admin-service-fields input,
.admin-service-fields select {
  min-width: 0;
}
.admin-service-advanced {
  display: grid;
  gap: 10px;
}
.admin-service-advanced[open] {
  display: grid;
}
.admin-service-edit {
  background: #fbfaf7;
}
.admin-one-time-card {
  border-left: 5px solid var(--brand-teal);
}
.admin-one-time-editor {
  margin-top: 2px;
  background: #fbfaf7;
}
.admin-one-time-editor form {
  padding-top: 12px;
}
.admin-one-time-edit-fields {
  grid-template-columns: minmax(170px, 1fr) minmax(180px, 1.25fr) minmax(130px, .7fr);
}
.admin-one-time-edit-note,
.admin-one-time-lock-note,
.admin-one-time-internal-note {
  font-size: 13px;
}
.admin-one-time-lock-note {
  padding: 10px 12px;
  border: 1px solid var(--warm-line);
  border-radius: 8px;
  background: #fbfaf7;
}
.admin-one-time-remove-form {
  display: flex;
  justify-content: flex-start;
}
.admin-one-time-remove-form .btn.danger {
  background: transparent;
  border-color: #d9a4a4;
  color: var(--danger);
}
.admin-one-time-remove-form .btn.danger:hover,
.admin-one-time-remove-form .btn.danger:focus-visible {
  background: #fff5f5;
  border-color: var(--danger);
  color: var(--danger);
}
.admin-one-time-fields {
  grid-template-columns: minmax(170px, 1.1fr) minmax(150px, .9fr) minmax(130px, .8fr) minmax(230px, 1.2fr) minmax(130px, .7fr);
}
.admin-service-actions,
.admin-service-cancel-form {
  display: flex;
  gap: 10px;
  justify-content: flex-start;
}
.admin-service-cancel-form {
  margin-top: -4px;
}
.admin-add-service-panel {
  background: #fbfaf7;
}
.compact-heading {
  margin-bottom: 0;
  padding-bottom: 10px;
}
.compact-heading h3 {
  margin: 0 0 4px;
  font-size: 19px;
  line-height: 1.2;
}
.admin-package-shortcut {
  max-width: none;
}
.admin-diagnostics-panel {
  margin-top: 18px;
}
.admin-compact-table-scroll {
  overflow-x: visible;
}
.admin-compact-table-scroll .admin-table {
  table-layout: fixed;
}
.admin-compact-table-scroll .admin-table th,
.admin-compact-table-scroll .admin-table td {
  overflow-wrap: anywhere;
}
.admin-sensitive-control {
  display: grid;
  gap: 4px;
  padding: 10px;
  border: 1px solid #fde68a;
  border-radius: 8px;
  background: #fffbeb;
}
.admin-loom-empty {
  margin-top: 14px;
}
.admin-danger-panel {
  max-width: 720px;
}
@media (max-width: 1240px) {
  .admin-management-grid,
  .admin-billing-workspace.grid.two {
    grid-template-columns: 1fr;
  }
}
@media (max-width: 1100px) {
  .admin-cockpit-summary {
    grid-template-columns: 1fr;
  }
  .admin-cockpit-summary-main,
  .admin-billing-actions,
  .admin-billing-workspace.grid.two {
    grid-template-columns: 1fr;
  }
  .admin-cockpit-next {
    min-width: 0;
  }
}
@media (max-width: 900px) {
  .admin-cockpit-tabs {
    position: static;
    overflow-x: auto;
    flex-wrap: nowrap;
    padding-bottom: 10px;
  }
  .admin-cockpit-tabs a {
    flex: 0 0 auto;
    white-space: nowrap;
  }
  .admin-one-time-fields {
    grid-template-columns: 1fr;
  }
  .admin-one-time-edit-fields {
    grid-template-columns: 1fr;
  }
}
@media (max-width: 640px) {
  .admin-cockpit-summary-main {
    grid-template-columns: 1fr;
  }
  .admin-cockpit-summary-main strong {
    font-size: 22px;
  }
}
.admin-details-panel {
  padding: 0;
}
.admin-details-summary {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 14px;
  min-height: 44px;
  padding: 10px 14px;
  cursor: pointer;
  list-style: none;
}
.admin-details-summary::marker {
  content: "";
}
.admin-details-summary::-webkit-details-marker {
  display: none;
}
.admin-details-summary h2 {
  margin: 0;
  font-size: 18px;
  line-height: 1.15;
}
.admin-compact-details .admin-details-summary .muted {
  white-space: nowrap;
}
.admin-details-panel[open] .admin-queue-list {
  padding: 0 14px 14px;
}
.admin-details-panel[open] .admin-activity-list {
  padding: 0 14px 14px;
}
.compact-stacked-item {
  gap: 8px;
}
.admin-text-status {
  color: var(--ink);
  font-size: 13px;
  line-height: 1.25;
  text-transform: uppercase;
}
.admin-text-status.good {
  color: #047857;
}
.admin-text-status.warning {
  color: #92400e;
}
.danger-zone-panel {
  margin-top: 18px;
  border-color: #fecaca;
  background: #fffafa;
}
.admin-table th,
.admin-table td {
  vertical-align: top;
}
.admin-table .actions {
  min-width: 170px;
}
.admin-form,
.admin-inline-form {
  display: grid;
  gap: 12px;
}
.admin-invite-form {
  display: grid;
  grid-template-columns: minmax(220px, 1fr) minmax(160px, .45fr) auto;
  align-items: end;
  gap: 12px;
  margin-bottom: 16px;
  padding: 14px;
  border: 1px solid var(--warm-line);
  border-radius: 8px;
  background: #fbfaf7;
}
.admin-form {
  max-width: 640px;
}
.admin-inline-form label {
  min-width: 190px;
}
.admin-checklist {
  display: grid;
  gap: 10px;
  margin-top: 16px;
  padding-top: 16px;
  border-top: 1px solid var(--warm-line);
}
.account-menu-panel a.admin-menu-link {
  color: var(--brand-teal);
}

@media (max-width: 900px) {
  .shell { padding-left: 16px; padding-right: 16px; }
  .topbar { border-bottom-width: 3px; }
  body.has-app-sidebar,
  html.sidebar-collapsed body.has-app-sidebar {
    background: var(--warm-bg);
  }
  .app-topbar-inner {
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 10px;
    padding: 10px 12px 12px;
  }
  .app-topbar .brand {
    grid-column: 1;
    grid-row: 1;
    width: max-content;
    max-width: 100%;
    padding: 4px 6px;
  }
  .app-topbar .brand.guest-brand {
    padding: 0;
  }
  .app-topbar .brand-logo {
    width: min(136px, 48vw);
  }
  .app-topbar .guest-brand .brand-logo {
    width: min(96px, 34vw);
  }
  .account-menu {
    grid-column: 2;
    grid-row: 1;
  }
  .account-menu summary {
    max-width: 132px;
    min-height: 38px;
    padding: 7px 9px;
    color: #fff;
    font-size: 12px;
  }
  .org-switcher {
    grid-column: 1 / -1;
    grid-row: 2;
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    width: 100%;
    gap: 8px;
    padding: 8px 0 0;
    border-width: 1px 0 0;
    border-radius: 0;
    background: transparent;
  }
  .org-switcher select {
    min-width: 0;
    min-height: 42px;
    height: auto;
    padding: 8px 36px 8px 11px;
    line-height: 1.25;
    font-size: 14px;
  }
  .org-context {
    grid-column: 1 / -1;
    grid-row: 2;
    min-height: 34px;
    padding: 6px 0 0;
    border-width: 1px 0 0;
    border-radius: 0;
    background: transparent;
  }
  .nav-menu {
    grid-column: 2;
    grid-row: 1;
    align-self: center;
  }
  .nav-toggle {
    background: var(--brand-yellow);
    border-color: var(--brand-yellow);
    box-shadow: 0 0 0 1px rgba(255, 255, 255, .18);
  }
  .nav-toggle:hover,
  .nav-toggle[aria-expanded="true"] {
    background: #fff;
    border-color: #fff;
  }
  .nav-toggle span {
    background: var(--ink);
  }
  .topbar .nav-menu .nav a,
  .topbar .nav-menu .nav button {
    color: var(--ink);
  }
  .topbar .nav-menu .nav a:hover,
  .topbar .nav-menu .nav button:hover {
    color: var(--brand-teal);
  }
  .app-frame {
    grid-template-columns: 1fr;
    min-height: auto;
  }
  .app-frame-standalone .app-main {
    padding-top: 42px;
  }
  .app-frame-standalone .waitlist-main {
    padding-top: 28px;
  }
  .app-frame-standalone .invite-main {
    padding-top: 34px;
  }
  .waitlist-card {
    gap: 18px;
    padding: 30px 22px 28px;
  }
  .invite-card {
    padding: 30px 22px 28px;
  }
  .invite-code-form input {
    font-size: 19px;
  }
  .waitlist-title {
    font-size: 34px;
  }
  .waitlist-benefits,
  .waitlist-form,
  .waitlist-checkbox-grid {
    grid-template-columns: 1fr;
  }
  .auth.panel {
    padding: 28px 24px 26px;
  }
  .auth-card h1 {
    font-size: 27px;
  }
  .app-frame-with-sidebar,
  .app-frame-with-sidebar.sidebar-collapsed,
  html.sidebar-collapsed .app-frame-with-sidebar {
    grid-template-columns: 1fr;
  }
  .app-sidebar {
    position: sticky;
    top: 0;
    z-index: 30;
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(72px, 1fr));
    height: auto;
    gap: 4px;
    padding: 6px;
    overflow: visible;
    border-bottom: 3px solid var(--brand-yellow);
    background: var(--ink);
  }
  .sidebar-toggle {
    display: none;
  }
  .app-sidebar a {
    justify-content: center;
    min-width: 0;
    min-height: 38px;
    padding: 8px 4px;
    border-left: 0;
    font-size: 13px;
    line-height: 1.1;
    text-align: center;
  }
  .sidebar-icon,
  html.sidebar-collapsed .sidebar-icon {
    display: none;
  }
  .sidebar-label,
  html.sidebar-collapsed .sidebar-label {
    width: auto;
    opacity: 1;
  }
  .app-sidebar a.active {
    background: var(--brand-yellow);
    color: var(--ink-soft);
  }
  .app-main {
    padding: 18px 14px 34px;
  }
  .app-main.app-main-flush {
    padding: 0;
  }
  .brain-banner,
  html.sidebar-collapsed .brain-banner {
    width: calc(100% + 28px);
    margin: -18px -14px 20px;
  }
  .home-tool-header,
  .home-tool-stats,
  .home-tool-actions {
    display: grid;
  }
  .home-tool-status {
    justify-self: start;
  }
  .usage-card-actions,
  .usage-log-footer {
    display: grid;
  }
  .usage-stat-badge.usage-plan-stat {
    grid-template-columns: 1fr;
  }
  .usage-stat-badge.usage-plan-stat small {
    max-width: none;
  }
  .usage-log-footer a,
  .usage-improve-drawer {
    margin-left: 0;
  }
  .usage-improve-drawer[open] {
    width: 100%;
  }
  .answer-improvement-actions {
    align-items: stretch;
    flex-direction: column;
  }
  .answer-improvement-actions .btn,
  .answer-improvement-actions form {
    width: 100%;
  }
  .answer-question-row {
    display: grid;
    gap: 8px;
  }
  .inline-card-link {
    justify-self: start;
  }
  .answer-fix-layout,
  .answer-comparison-grid,
  .inline-retest-result {
    grid-template-columns: 1fr;
  }
  .app-footer-with-sidebar,
  html.sidebar-collapsed .app-footer-with-sidebar {
    margin-left: 0;
  }
  .compact-header h1,
  .page-header h1 {
    font-size: 25px;
    line-height: 1.12;
  }
  .compact-header p,
  .page-header p {
    font-size: 15px;
  }
  .page-header,
  .next-step-card {
    gap: 12px;
  }
  .next-step-card {
    padding: 17px;
    border-left-width: 5px;
  }
  .next-step-card h2 {
    font-size: 22px;
  }
  .momentum-summary {
    align-items: flex-start;
  }
  .momentum-meter {
    width: 72px;
    height: 72px;
  }
  .momentum-meter span {
    width: 50px;
    height: 50px;
    font-size: 13px;
  }
  .momentum-summary h2 {
    font-size: 20px;
  }
  .status-row {
    gap: 10px;
  }
  .status-tile,
  .panel,
  .card,
  .source-card,
  .test-result,
  .mini-form,
  .knowledge-entry-form {
    padding: 15px;
  }
  .status-tile strong {
    font-size: 24px;
  }
  .actions {
    align-items: stretch;
  }
  .actions .btn {
    min-width: max-content;
  }
  .admin-summary-grid,
  .admin-overview-grid,
  .admin-management-grid,
  .admin-queue-list,
  .admin-invite-form {
    grid-template-columns: 1fr;
  }
  .admin-panel-heading {
    display: grid;
  }
  .admin-panel-heading .actions {
    justify-content: start;
  }
  .admin-service-card-heading {
    display: grid;
  }
  .admin-service-price {
    justify-items: start;
    text-align: left;
  }
  .admin-statement-row {
    grid-template-columns: 1fr;
    gap: 4px;
  }
  .admin-statement-head {
    display: none;
  }
  .admin-service-fields {
    grid-template-columns: 1fr;
  }
  .admin-filter-form {
    display: grid;
  }
  .admin-section-nav {
    display: grid;
  }
  .admin-filter-form label,
  .admin-filter-form .btn,
  .admin-section-nav .btn {
    width: 100%;
  }
  .admin-table .actions {
    min-width: 0;
  }
  .admin-table-panel .table-scroll {
    overflow: visible;
  }
  .admin-table.responsive-table {
    min-width: 0;
  }
  .admin-table.responsive-table,
  .admin-table.responsive-table thead,
  .admin-table.responsive-table tbody,
  .admin-table.responsive-table tr,
  .admin-table.responsive-table th,
  .admin-table.responsive-table td {
    display: block;
  }
  .admin-table.responsive-table thead {
    position: absolute;
    width: 1px;
    height: 1px;
    overflow: hidden;
    clip: rect(0 0 0 0);
    white-space: nowrap;
  }
  .admin-table.responsive-table thead.admin-search-head {
    position: static;
    width: auto;
    height: auto;
    overflow: visible;
    clip: auto;
    white-space: normal;
  }
  .admin-table.responsive-table thead.admin-search-head tr {
    display: block;
    padding: 0 0 12px;
    border: 0;
    background: transparent;
  }
  .admin-table.responsive-table thead.admin-search-head th {
    display: none;
  }
  .admin-table.responsive-table thead.admin-search-head th.admin-search-column {
    display: block;
    padding: 0;
  }
  .admin-table.responsive-table .admin-column-search {
    max-width: 220px;
  }
  .admin-table.responsive-table tbody {
    display: grid;
    gap: 12px;
  }
  .admin-table.responsive-table tr {
    display: grid;
    gap: 10px;
    padding: 14px;
    border: 1px solid var(--warm-line);
    border-radius: 8px;
    background: #fff;
  }
  .admin-table.responsive-table td {
    display: grid;
    grid-template-columns: minmax(92px, .34fr) minmax(0, 1fr);
    gap: 10px;
    padding: 0;
    border-bottom: 0;
    overflow-wrap: anywhere;
  }
  .admin-table.responsive-table td::before {
    content: attr(data-label);
    color: var(--soft-muted);
    font-size: 12px;
    font-weight: 800;
    line-height: 1.35;
  }
  .admin-table.responsive-table td.actions {
    display: grid;
    grid-template-columns: minmax(92px, .34fr) minmax(0, 1fr);
    align-items: start;
  }
  .admin-table.responsive-table td.actions::before {
    grid-column: 1;
    grid-row: 1 / span 10;
  }
  .admin-table.responsive-table td.actions > * {
    grid-column: 2;
  }
  .admin-table.responsive-table td.actions form {
    display: grid;
    gap: 8px;
    width: 100%;
  }
  .admin-table.responsive-table td.actions .btn {
    width: 100%;
    min-width: 0;
  }
  .auth {
    margin-top: 24px;
  }
}

/* Final app-flow overrides for the May 15 Training redesign. */
:root { --sidebar-width: 240px; }

@media (min-width: 901px) {
  body.has-app-sidebar { background: var(--warm-bg); }
  body.has-app-sidebar .app-topbar { margin-left: var(--sidebar-width); width: calc(100% - var(--sidebar-width)); border-bottom: 2px solid var(--brand-yellow); transition: margin-left .24s ease, width .24s ease; }
  html.sidebar-collapsed body.has-app-sidebar .app-topbar { margin-left: var(--sidebar-collapsed-width); width: calc(100% - var(--sidebar-collapsed-width)); }
  body.has-app-sidebar .app-topbar-inner { grid-template-columns: minmax(260px, 420px) minmax(0, 1fr) auto; min-height: 86px; padding: 16px 28px; }
  body.has-app-sidebar .app-mobile-brand, body.has-app-sidebar .app-nav-toggle { display: none; }
  .org-switcher, .org-context { grid-column: 1; }
  .account-menu { grid-column: 3; }
  .app-frame-with-sidebar, .app-frame-with-sidebar.sidebar-collapsed, html.sidebar-collapsed .app-frame-with-sidebar { display: block; padding-left: var(--sidebar-width); transition: padding-left .24s ease; }
  html.sidebar-collapsed .app-frame-with-sidebar { padding-left: var(--sidebar-collapsed-width); }
  .app-sidebar { position: fixed; inset: 0 auto 0 0; z-index: 60; display: block; width: var(--sidebar-width); height: 100vh; padding: 26px 10px 74px; border: 0; background: #000; overflow-x: hidden; overflow-y: auto; transition: width .24s ease, padding .24s ease; }
  .sidebar-toggle { position: absolute; right: 18px; bottom: 18px; z-index: 2; display: grid; place-items: center; width: 34px; height: 34px; margin: 0; padding: 0; border: 0; border-radius: 999px; background: #fff; color: #000; box-shadow: none; font-size: 24px; font-weight: 950; line-height: 1; }
  .sidebar-toggle span { display: flex; align-items: center; justify-content: center; width: 100%; height: 100%; line-height: 1; transform: none; }
  .sidebar-toggle:hover { background: var(--brand-yellow); color: #000; }
  .app-sidebar-logo { display: grid; justify-items: center; margin: 0 10px 24px; padding: 0; background: transparent; border-radius: 0; }
  .app-sidebar .app-sidebar-logo:hover,
  .app-sidebar .app-sidebar-logo:focus,
  .app-sidebar .app-sidebar-logo:focus-visible { background: transparent; color: inherit; border-left-color: transparent; }
  .app-sidebar-logo img { display: block; width: min(132px, 72%); height: auto; }
  .app-sidebar a:not(.app-sidebar-logo) { display: flex; min-height: 48px; margin: 8px 0; padding: 11px 16px; border-left: 0; border-radius: 4px; color: #f4f1df; font-size: 17px; font-weight: 900; }
  .app-sidebar a.active:not(.app-sidebar-logo), .app-sidebar a:not(.app-sidebar-logo):hover { background: var(--brand-yellow); color: #000; }
  .sidebar-separator { height: 1px; margin: 18px 12px 10px; background: rgba(244, 241, 223, .28); }
  html.sidebar-collapsed .app-sidebar { width: var(--sidebar-collapsed-width); padding: 22px 8px 74px; }
  html.sidebar-collapsed .sidebar-toggle { right: 15px; bottom: 18px; width: 38px; height: 38px; margin: 0; font-size: 24px; }
  html.sidebar-collapsed .app-sidebar-logo { margin: 0 0 16px; }
  html.sidebar-collapsed .app-sidebar-logo img { width: 44px; max-width: 44px; }
  html.sidebar-collapsed .app-sidebar a:not(.app-sidebar-logo) { justify-content: center; min-height: 46px; margin: 8px 0; padding: 8px 5px; font-size: 0; }
  html.sidebar-collapsed .sidebar-separator { margin: 18px 6px 10px; }
  html.sidebar-collapsed .sidebar-icon { display: grid; }
  html.sidebar-collapsed .sidebar-label { width: 0; opacity: 0; }
  .app-main { max-width: none; padding: 32px; }
  .app-main.app-main-flush { padding: 0; }
  .app-main > .notice, .app-main > .errors { margin: 18px 32px; }
  .app-footer-with-sidebar { margin-left: var(--sidebar-width); transition: margin-left .24s ease; }
  html.sidebar-collapsed .app-footer-with-sidebar { margin-left: var(--sidebar-collapsed-width); }
}

@media (min-width: 901px) {
  body:not(.has-app-sidebar) .app-topbar {
    margin-left: 0;
    width: 100%;
    border-bottom-width: 4px;
  }
  body:not(.has-app-sidebar) .app-topbar-inner {
    grid-template-columns: auto minmax(0, 1fr) auto;
    min-height: 104px;
    padding: 12px clamp(24px, 4vw, 58px);
  }
  body:not(.has-app-sidebar) .app-topbar .guest-brand {
    grid-column: 1;
    justify-self: start;
    width: auto;
  }
  body:not(.has-app-sidebar) .app-topbar .guest-brand .brand-logo {
    width: auto;
    height: 82px;
    max-width: 82px;
    object-fit: contain;
  }
  body:not(.has-app-sidebar) .app-topbar .nav-menu {
    grid-column: 3;
    justify-self: end;
  }
  body:not(.has-app-sidebar) .app-frame-standalone .app-main {
    padding-top: clamp(48px, 7vh, 76px);
  }
}

.training-page-shell, .home-page-shell, .app-page-shell { min-height: calc(100vh - 86px); padding-bottom: 46px; background: var(--warm-bg); }
.home-page-content, .app-page-content {
  width: min(calc(100% - (var(--app-shell-gutter) * 2)), var(--app-shell-max));
  margin: 0 auto 0 var(--app-shell-gutter);
  padding-top: 30px;
  font-family: var(--app-font-family);
  font-size: var(--app-body-size);
  line-height: var(--app-body-line-height);
}
.training-hero, html.sidebar-collapsed .training-hero { width: 100%; margin: 0; border-bottom: 3px solid #000; background: #fff; }
.app-image-banner, html.sidebar-collapsed .app-image-banner { width: 100%; margin: 0; border-bottom: 3px solid #000; background: var(--brand-yellow); }
.training-hero img { display: block; width: 100%; max-height: 390px; object-fit: cover; object-position: center; }
.app-image-banner img { display: block; width: 100%; max-height: 240px; object-fit: cover; object-position: center; }
.training-intro { display: grid; justify-items: center; padding: 48px 24px 38px; text-align: center; }
.training-intro h1 { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
.training-intro p { max-width: 980px; margin: 0; color: #000; font-size: 32px; font-weight: 900; line-height: 1.28; }
.training-library-card { width: min(100% - 48px, 1320px); margin: 0 auto; overflow: hidden; border: 1px solid #e0ddd3; border-radius: 8px; background: #fff; }
.training-library-header { display: flex; align-items: center; justify-content: space-between; gap: 18px; min-height: 96px; padding: 24px 28px; background: var(--brand-yellow); }
.training-library-header.secondary { min-height: 64px; background: #eeeadd; }
.training-library-header h2 { margin: 0; color: #000; font-size: 26px; font-weight: 950; line-height: 1.15; }
.training-library-header h2 span { margin-left: 6px; font-size: 18px; font-weight: 750; text-transform: none; }
.training-add-button { display: inline-grid; place-items: center; width: 48px; height: 48px; flex: 0 0 auto; border: 2px solid #000; border-radius: 4px; background: #fff; color: #000; cursor: pointer; font-size: 34px; font-weight: 900; line-height: 1; }
.training-add-button:hover, .training-add-button:focus-visible { background: #000; color: #fff; }
.training-library-table { display: grid; padding: 0 26px; }
.training-library-head, .training-library-row { display: grid; grid-template-columns: minmax(280px, 1.1fr) minmax(180px, .55fr) minmax(150px, auto); gap: 20px; align-items: center; }
.training-library-head { min-height: 56px; color: #767676; font-size: 18px; font-weight: 850; }
.training-library-head span:last-child { text-align: right; }
.training-library-row { min-height: 84px; padding: 12px 0; border-top: 1px solid #ece8df; }
.training-source-name { display: grid; grid-template-columns: auto minmax(0, 1fr); gap: 18px; align-items: center; min-width: 0; }
.training-source-name strong { display: block; overflow: hidden; color: #000; font-size: 21px; font-weight: 950; line-height: 1.2; text-overflow: ellipsis; white-space: nowrap; }
.training-source-icon { display: grid; place-items: center; width: 34px; height: 34px; color: #000; }
.training-source-icon svg, .training-icon-action svg { width: 24px; height: 24px; fill: none; stroke: currentColor; stroke-linecap: round; stroke-linejoin: round; stroke-width: 1.8; }
.training-source-updated { color: #111; font-size: 20px; }
.training-source-actions { display: flex; justify-content: flex-end; gap: 18px; }
.training-source-actions form { margin: 0; }
.training-icon-action { display: inline-grid; place-items: center; width: 36px; height: 36px; border: 0; border-radius: 6px; background: transparent; color: var(--brand-teal); cursor: pointer; font-weight: 900; }
.training-icon-action:hover, .training-icon-action:focus-visible { background: #e8f4f2; color: #064f4a; }
.training-library-empty { display: grid; gap: 6px; padding: 34px 0 38px; border-top: 1px solid #ece8df; }
.training-library-empty h3, .training-library-empty p { margin: 0; }
.answer-fixes-section { margin-top: 28px; }
.approved-fixes-table .training-library-head,
.approved-fixes-table .training-library-row { grid-template-columns: minmax(280px, 1fr) minmax(150px, .45fr) minmax(250px, auto); }
.approved-fix-meta { display: block; margin-top: 3px; color: #667085; font-size: 13px; font-weight: 800; }
.approved-fix-meta.retired { color: #7a4a0b; }
.approved-answer-preview { display: block; margin-top: 8px; color: #344054; font-size: 15px; font-weight: 650; line-height: 1.4; }
.approved-faq-detail-shell { width: min(100% - 48px, 980px); margin: 0 auto; padding: 28px 0 46px; }
.source-detail-header { display: flex; justify-content: space-between; gap: 18px; align-items: flex-start; margin-bottom: 18px; }
.source-detail-header h1 { margin: 0 0 8px; font-size: 32px; line-height: 1.15; }
.source-detail-card { margin-bottom: 18px; padding: 18px; border: 1px solid #e5e7eb; border-radius: 8px; background: #fff; }
.source-detail-card h2 { margin-top: 0; }
.source-detail-meta { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 14px; }
.source-detail-meta span { display: block; margin-bottom: 4px; color: #667085; font-weight: 700; }
.approved-answer-readonly { white-space: pre-wrap; padding: 12px; border: 1px solid #e5e7eb; border-radius: 8px; background: #f8fafc; }
.inline-action-form { margin-top: 10px; display: flex; justify-content: flex-end; }
.approved-faq-subpage-nav { margin: 0 0 18px; }
.approved-answer-edit-note { margin: 0; }
.source-review-link { justify-self: start; margin-top: 2px; }
.training-continue { width: min(100% - 48px, 1320px); display: flex; justify-content: flex-end; margin: 56px auto 0; }
.training-continue-button { min-width: min(420px, 100%); min-height: 82px; border: 5px solid #07574f; border-radius: 8px; background: var(--brand-teal); color: #fff; font-size: 27px; font-weight: 950; }
.training-continue-button:hover { background: #0b6b63; color: #fff; }
.home-orientation-steps { grid-template-columns: minmax(0, 1fr); max-width: 560px; }
.home-orientation-steps .first-win-step { min-height: 0; }
.tools-testing-cta { margin-top: 26px; }

@media (max-width: 900px) {
  .app-topbar-inner { grid-template-columns: auto minmax(0, 1fr) auto; align-items: center; }
  .app-nav-toggle { display: inline-grid; grid-column: 1; grid-row: 1; }
  .app-mobile-brand { display: inline-flex; grid-column: 2; grid-row: 1; width: max-content; max-width: 100%; }
  .account-menu { grid-column: 3; grid-row: 1; }
  .org-switcher, .org-context { grid-column: 1 / -1; grid-row: 2; }
  .app-sidebar { position: fixed; inset: 0 auto 0 0; z-index: 80; display: block; width: min(82vw, 310px); height: 100vh; padding: 22px 12px; overflow-x: hidden; overflow-y: auto; border-bottom: 0; transform: translateX(-104%); transition: transform .2s ease; }
  body.mobile-nav-open .app-sidebar { transform: translateX(0); }
  .app-sidebar-logo { display: grid; justify-items: center; margin: 0 8px 28px; }
  .app-sidebar-logo img { width: 148px; max-width: 82%; }
  .app-sidebar a:not(.app-sidebar-logo) { justify-content: flex-start; margin: 7px 0; padding: 12px 14px; font-size: 17px; text-align: left; }
  .training-page-shell { min-height: auto; }
  .training-hero, html.sidebar-collapsed .training-hero { width: 100%; margin: 0; }
  .training-hero img { min-height: 190px; }
  .training-intro { padding: 30px 16px 28px; }
  .training-intro p { font-size: 24px; }
  .training-library-card, .training-continue { width: calc(100% - 28px); }
  .training-library-header { min-height: 72px; padding: 18px; }
  .training-library-header h2 { font-size: 20px; }
  .training-library-header h2 span { display: block; margin: 4px 0 0; font-size: 15px; }
  .training-library-table { padding: 0 16px 8px; }
  .training-library-head { display: none; }
  .training-library-row { grid-template-columns: 1fr; gap: 12px; align-items: start; min-height: 0; padding: 18px 0; }
  .training-source-name strong { white-space: normal; overflow-wrap: anywhere; font-size: 18px; }
  .training-source-updated { padding-left: 52px; font-size: 15px; }
  .training-source-actions { justify-content: flex-start; padding-left: 48px; }
  .approved-fixes-table .training-library-row { grid-template-columns: 1fr; }
  .approved-answer-preview { padding-left: 52px; }
  .source-detail-header { display: grid; }
  .source-detail-meta { grid-template-columns: 1fr; }
  .approved-faq-detail-shell { width: calc(100% - 28px); }
  .training-icon-action { width: 44px; height: 44px; }
  .training-continue { justify-content: stretch; margin-top: 34px; }
  .training-continue-button { width: 100%; min-width: 0; min-height: 64px; font-size: 21px; }
  .app-topbar .app-nav-toggle { position: relative; z-index: 2; display: inline-grid; grid-column: 1; grid-row: 1; border-color: #3a3a3a; background: #111; color: #fff; }
  .app-topbar .app-nav-toggle span { background: #fff; }
  .app-topbar .app-mobile-brand { grid-column: 2; grid-row: 1; justify-self: start; }
  .app-topbar .account-menu { grid-column: 3; grid-row: 1; justify-self: end; }
  .app-topbar .org-switcher, .app-topbar .org-context { grid-column: 1 / -1; grid-row: 2; }
}

/* Training app typography polish: keep the redesigned layout, but use a quieter product UI scale. */
@media (min-width: 901px) {
  .app-sidebar a:not(.app-sidebar-logo) {
    font-size: 15px;
    font-weight: 700;
    letter-spacing: 0;
  }

  .app-topbar .org-switcher select,
  .app-topbar .org-context,
  .app-topbar .account-menu summary {
    font-size: 15px;
    font-weight: 650;
  }
}

.training-intro {
  padding: 38px 24px 30px;
}

.training-intro p {
  max-width: 880px;
  font-size: 22px;
  font-weight: 650;
  line-height: 1.42;
}

.training-library-header {
  min-height: 76px;
  padding: 20px 28px;
}

.training-library-header h2 {
  font-size: 22px;
  font-weight: 800;
  line-height: 1.2;
}

.training-library-header h2 span {
  font-size: 16px;
  font-weight: 550;
}

.training-add-button {
  width: 44px;
  height: 44px;
  font-size: 28px;
  font-weight: 750;
}

.training-library-head {
  min-height: 52px;
  font-size: 15px;
  font-weight: 700;
}

.training-library-row {
  min-height: 76px;
  padding: 10px 0;
}

.training-source-name {
  gap: 14px;
}

.training-source-name strong {
  font-size: 17px;
  font-weight: 700;
  line-height: 1.28;
}

.training-source-title-link {
  display: block;
  color: var(--brand-teal);
  text-decoration: none;
  text-underline-offset: 3px;
}

.training-source-title-link:hover,
.training-source-title-link:focus-visible {
  color: #064f4a;
  text-underline-offset: 3px;
}

.training-source-title-link strong {
  color: inherit;
}

.training-source-updated {
  font-size: 16px;
  line-height: 1.35;
}

.training-source-icon {
  width: 30px;
  height: 30px;
}

.training-source-icon svg,
.training-icon-action svg {
  width: 21px;
  height: 21px;
}

.training-icon-action {
  width: 34px;
  height: 34px;
}

.training-continue {
  margin-top: 42px;
}

.training-continue-button {
  min-width: min(360px, 100%);
  min-height: 64px;
  border-width: 3px;
  font-size: 20px;
  font-weight: 750;
}

@media (max-width: 900px) {
  .app-sidebar a:not(.app-sidebar-logo) {
    font-size: 15px;
    font-weight: 700;
  }

  .training-intro {
    padding: 28px 18px 26px;
  }

  .training-intro p {
    font-size: 20px;
    font-weight: 650;
    line-height: 1.38;
  }

  .training-library-header {
    min-height: 68px;
    padding: 16px 18px;
  }

  .training-library-header h2 {
    font-size: 18px;
    font-weight: 800;
  }

  .training-library-header h2 span {
    font-size: 14px;
  }

  .training-source-name strong {
    font-size: 16px;
    font-weight: 700;
  }

  .training-source-updated {
    font-size: 14px;
  }

  .training-continue-button {
    min-height: 56px;
    font-size: 18px;
  }
}

/* Browser-review polish for the authenticated app. */
.training-hero img {
  max-height: 240px;
  object-fit: cover;
  object-position: center;
}

.training-intro {
  padding: 28px 24px 24px;
}

.training-intro p {
  max-width: 920px;
  font-size: 22px;
  font-weight: 750;
  line-height: 1.38;
}

.training-library-header {
  min-height: 78px;
}

.training-add-button {
  width: auto;
  min-width: 0;
  height: 48px;
  display: inline-flex;
  align-items: center;
  gap: 9px;
  padding: 0 14px;
  font-size: 16px;
  line-height: 1;
  white-space: nowrap;
}

.training-add-button span:first-child {
  font-size: 28px;
  line-height: .8;
}

.training-library-head,
.training-library-row {
  grid-template-columns: minmax(280px, 1fr) minmax(150px, .45fr) minmax(250px, auto);
}

.approved-fixes-table .training-library-head,
.approved-fixes-table .training-library-row {
  grid-template-columns: minmax(280px, 1fr) minmax(150px, .45fr) minmax(250px, auto);
}

.training-source-title-link {
  min-height: 34px;
  display: inline-grid;
  grid-template-columns: minmax(0, auto) auto;
  align-items: center;
  column-gap: 4px;
  max-width: 100%;
  color: var(--brand-teal);
  text-decoration: underline;
  text-decoration-thickness: 1px;
  text-underline-offset: 2px;
  text-decoration-skip-ink: auto;
  transition: color .16s ease, text-decoration-color .16s ease;
}

.training-source-title-link:hover,
.training-source-title-link:focus-visible {
  color: #064f4a;
  text-decoration: underline;
  text-decoration-thickness: 1px;
  text-underline-offset: 2px;
}

.source-title-chevron {
  flex: 0 0 auto;
  color: currentColor;
  font-weight: 800;
  line-height: 1;
}

.training-source-actions {
  gap: 8px;
}

.training-icon-action {
  width: auto;
  min-width: 44px;
  min-height: 40px;
  gap: 6px;
  padding: 8px 10px;
  border: 1px solid transparent;
  border-radius: 6px;
  color: var(--brand-teal);
  font-size: 13px;
  font-weight: 850;
}

.training-icon-action span {
  display: inline;
}

.training-icon-action:hover,
.training-icon-action:focus-visible {
  border-color: #c8ddd9;
}

.tool-card-active {
  border-left: 5px solid var(--brand-teal);
  box-shadow: 0 14px 34px rgba(16, 24, 40, .08);
}

.tool-card-soon {
  background: #fbfaf6;
  border-style: dashed;
  color: #5f6674;
}

.tool-card-soon h2,
.tool-card-soon p {
  color: #5f6674;
}

.tool-card-soon .status {
  background: #fff8d6;
}

.lead-choice-card input[type="radio"],
.checkbox-row input[type="checkbox"] {
  width: 19px;
  height: 19px;
  min-width: 19px;
  accent-color: var(--brand-teal);
}

.lead-choice-card input[type="radio"] {
  margin-top: 2px;
}

.checkbox-row {
  min-height: 36px;
}

@media (max-width: 900px) {
  .training-hero img {
    max-height: 170px;
    min-height: 0;
  }

  .training-intro {
    padding: 22px 16px 20px;
  }

  .training-intro p {
    font-size: 18px;
    font-weight: 750;
  }

  .training-add-button {
    min-height: 44px;
    white-space: normal;
  }

  .training-library-row {
    grid-template-columns: 1fr;
  }

  .training-source-actions {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(112px, 1fr));
    padding-left: 0;
  }

  .training-icon-action {
    justify-content: center;
  }
}

/* App-wide Training system alignment.
   The Training tab now leads the authenticated app: black chrome, warm canvas,
   yellow section emphasis, white work panels, strong rectangular controls,
   teal utility actions, and compact scan-friendly typography. */
:root {
  --app-shell-max: 1320px;
  --app-shell-wide: 1440px;
  --app-shell-detail: 1180px;
  --app-shell-narrow: 760px;
  --app-shell-gutter: clamp(16px, 3vw, 32px);
  --app-card-padding: 22px;
  --app-panel-padding: var(--app-card-padding);
  --app-section-gap: 18px;
  --app-font-family: system-ui, -apple-system, Segoe UI, sans-serif;
  --app-body-size: 15px;
  --app-body-line-height: 1.5;
  --app-page-heading-size: 30px;
  --app-page-heading-line-height: 1.15;
  --app-panel-heading-size: 22px;
  --app-panel-heading-line-height: 1.2;
  --app-label-size: 14px;
  --app-label-line-height: 1.25;
  --app-caption-size: 13px;
  --app-profile-reserved-width: 190px;
}

.app-main:not(.app-main-flush) {
  display: block;
  position: relative;
}

.app-page-utility {
  position: absolute;
  top: 20px;
  left: 32px;
  z-index: 30;
  display: flex;
  width: min(calc(100% - 64px), var(--app-shell-max));
  align-items: center;
  justify-content: flex-end;
  gap: 10px;
  pointer-events: none;
}

.app-page-utility > * {
  pointer-events: auto;
}

.app-page-utility .app-nav-toggle {
  display: none;
}

.has-app-sidebar .app-main:not(.app-main-flush) > .notice {
  margin-right: 170px;
}

.app-page-shell {
  width: 100%;
  min-width: 0;
}

.app-page-container {
  display: grid;
  width: min(100%, var(--app-shell-max));
  margin-inline: 0 auto;
  gap: var(--app-section-gap);
  min-width: 0;
}

.app-page-container-wide {
  width: min(100%, var(--app-shell-wide));
}

.app-page-container-detail {
  width: min(100%, var(--app-shell-detail));
}

.app-page-container-narrow {
  width: min(100%, var(--app-shell-narrow));
}

.app-page-container > :where(
  .page-header,
  .app-page-header,
  .compact-header,
  .section-heading,
  .settings-tabs,
  .app-section-nav,
  .app-image-banner,
  .home-brain-hero-image,
  .panel,
  .card,
  .grid,
  .tool-grid,
  .summary-grid,
  .mvp-grid,
  .assistant-dashboard-grid,
  .assistant-dashboard-status-grid,
  .assistant-home-dashboard-grid,
  .assistant-settings-stack,
  .training-page-top,
  .training-library-card,
  .training-continue,
  .brain-scan-simple,
  .public-web-research-panel,
  .edit-responses-shell,
  .voicecodex-shell,
  .usage-stats-bar,
  .usage-log-section,
  .next-step-card,
  .first-win-panel,
  .table-scroll
) {
  width: 100%;
  max-width: none;
  min-width: 0;
  margin-left: 0;
  margin-right: 0;
}

.app-page-container > :where(.page-header, .app-page-header, .compact-header, .section-heading, .settings-tabs, .app-section-nav) {
  margin-bottom: 0;
}

@media (min-width: 901px) {
  body.has-app-sidebar .app-main:not(.app-main-flush) > :where(.page-header, .compact-header, .section-heading):first-child,
  body.has-app-sidebar .app-page-container > :where(.page-header, .app-page-header, .compact-header, .section-heading):first-child,
  body.has-app-sidebar .app-page-container > * > :where(.page-header, .app-page-header, .compact-header, .section-heading):first-child,
  body.has-app-sidebar .app-page-container > * > :where(.page-header, .compact-header, .section-heading):first-child {
    padding-right: var(--app-profile-reserved-width);
  }

  body.has-app-sidebar .app-main:not(.app-main-flush) > :where(.page-header, .compact-header, .section-heading):first-child > :first-child,
  body.has-app-sidebar .app-page-container > :where(.page-header, .compact-header, .section-heading):first-child > :first-child,
  body.has-app-sidebar .app-page-container > * > :where(.page-header, .compact-header, .section-heading):first-child > :first-child {
    max-width: calc(100% - var(--app-profile-reserved-width));
  }
}

.app-page-container {
  font-family: var(--app-font-family);
  font-size: var(--app-body-size);
  line-height: var(--app-body-line-height);
}

.app-page-container :where(.page-header h1, .app-page-header h1, .compact-header h1, .section-heading h1) {
  font-size: var(--app-page-heading-size);
  line-height: var(--app-page-heading-line-height);
  letter-spacing: 0;
}

.app-page-container :where(.panel h2, .card h2) {
  font-size: var(--app-panel-heading-size);
  line-height: var(--app-panel-heading-line-height);
  letter-spacing: 0;
}

.app-page-container :where(.page-header p, .app-page-header p, .compact-header p, .section-heading p, .panel p, .card p, .muted) {
  font-size: var(--app-body-size);
  line-height: var(--app-body-line-height);
}

.app-page-container :where(.field-stack > span:first-child, .field-group > legend, label, .eyebrow) {
  line-height: var(--app-label-line-height);
}

.app-page-container > :where(.panel, .card, .grid, .tool-grid, .summary-grid, .mvp-grid, .assistant-dashboard-grid, .assistant-dashboard-status-grid, .assistant-home-dashboard-grid, .usage-log-section, .first-win-panel, .table-scroll) + :where(.panel, .card, .grid, .tool-grid, .summary-grid, .mvp-grid, .assistant-dashboard-grid, .assistant-dashboard-status-grid, .assistant-home-dashboard-grid, .usage-log-section, .first-win-panel, .table-scroll) {
  margin-top: 0;
}

.app-page-container :where(.grid, .summary-grid) > * {
  min-width: 0;
}

.app-page-container-narrow .settings-panel {
  max-width: none;
}

.brain-page-shell .training-page-top,
.brain-page-shell .brain-scan-simple,
.brain-page-shell .public-web-research-panel,
.brain-page-shell .training-library-card,
.brain-page-shell .training-continue {
  width: 100%;
  margin-inline: 0;
}

.assistant-training-page-shell .edit-responses-shell,
.assistant-settings-stack,
.app-page-container > .assistant-settings-stack,
.app-page-container > .voicecodex-shell {
  width: 100%;
}

.app-page-container .settings-panel form > .btn,
.app-page-container .auth-form > .auth-submit {
  justify-self: start;
  width: auto;
}

.app-main:not(.app-main-flush) > :where(
  h1,
  .muted,
  .page-header,
  .app-page-header,
  .compact-header,
  .panel,
  .grid,
  .tool-grid,
  .assistant-dashboard-grid,
  .page-action-nav,
  .app-section-nav,
  .usage-stats-bar,
  .usage-log-section,
  .next-step-card,
  .first-win-panel,
  .table-scroll,
  .settings-tabs
) {
  width: min(100%, var(--app-shell-max));
  margin-left: 0;
  margin-right: auto;
}

.app-main:not(.app-main-flush) > .assistant-conversation-lead {
  width: min(100%, 1180px);
}

.app-main:not(.app-main-flush) > :where(.panel, .grid, .tool-grid, .assistant-dashboard-grid, .usage-log-section, .first-win-panel, .table-scroll) + :where(.panel, .grid, .tool-grid, .assistant-dashboard-grid, .usage-log-section, .first-win-panel, .table-scroll) {
  margin-top: var(--app-section-gap);
}

.app-main:not(.app-main-flush) > h1:first-child {
  margin-top: 0;
  margin-bottom: 6px;
  color: #000;
  font-size: clamp(28px, 3vw, 36px);
  font-weight: 850;
  line-height: 1.12;
  letter-spacing: 0;
}

.app-main:not(.app-main-flush) > h1:first-child + .muted {
  margin-top: 0;
  margin-bottom: 22px;
  max-width: 820px;
  color: #3f4f4f;
  font-size: 17px;
  font-weight: 650;
  line-height: 1.45;
}

.page-header {
  align-items: center;
  gap: 18px;
  margin-bottom: 22px;
  padding-bottom: 18px;
  border-bottom: 3px solid #000;
}

.app-page-header {
  display: grid;
  gap: 18px;
  margin: 0 0 22px;
  padding-bottom: 18px;
  border-bottom: 3px solid #000;
}

.app-page-header__back {
  display: flex;
  align-items: center;
  justify-content: flex-start;
}

.app-page-header__main {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 18px;
  min-width: 0;
}

.app-page-header__copy {
  min-width: 0;
  max-width: none;
}

.app-page-header h1 {
  margin: 0;
  color: #000;
  font-size: var(--app-page-heading-size);
  font-weight: 850;
  line-height: var(--app-page-heading-line-height);
  letter-spacing: 0;
  overflow-wrap: anywhere;
}

.app-page-header .muted {
  max-width: none;
  margin: 8px 0 0;
  color: #3f4f4f;
  font-size: var(--app-body-size);
  font-weight: 650;
  line-height: var(--app-body-line-height);
}

.app-page-header__actions {
  display: flex;
  flex: 0 0 auto;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 9px;
}

.app-section-nav {
  display: flex;
  flex-wrap: wrap;
  gap: 8px 10px;
  margin: 6px 0 0;
  padding: 0;
  border-bottom: 0;
}

.app-section-nav__link {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  min-height: 42px;
  border: 1px solid #d8d2c4;
  border-radius: 4px;
  padding: 9px 16px;
  background: #fff;
  color: #000;
  font-size: 15px;
  font-weight: 800;
  line-height: 1.1;
  text-decoration: none;
}

.app-section-nav__link.active {
  border-color: #000;
  background: var(--brand-yellow);
  color: #000;
}

.app-section-nav__link:hover,
.app-section-nav__link:focus-visible {
  border-color: #000;
  outline: 2px solid rgba(14, 117, 107, .22);
  outline-offset: 2px;
}

.app-section-nav__link.is-disabled,
.app-section-nav__link[aria-disabled="true"] {
  cursor: not-allowed;
  opacity: .6;
}

.app-section-nav__link .tab-note {
  font-size: 11px;
  font-weight: 750;
  text-transform: uppercase;
  white-space: nowrap;
}

.page-header > div {
  min-width: 0;
}

.page-header h1 {
  margin: 0;
  color: #000;
  font-size: clamp(28px, 3vw, 36px);
  font-weight: 850;
  line-height: 1.12;
  letter-spacing: 0;
  overflow-wrap: anywhere;
}

.page-header .muted {
  max-width: 820px;
  margin-top: 8px;
  color: #3f4f4f;
  font-size: 17px;
  font-weight: 650;
  line-height: 1.45;
}

.page-header .actions {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 9px;
}

.page-header-with-back {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: start;
  gap: 12px 18px;
}

.page-header-with-back > .page-back-actions {
  grid-column: 1 / -1;
  justify-content: flex-start;
  margin: 0;
}

.page-header-with-back > .actions:not(.page-back-actions) {
  justify-self: end;
  margin: 0;
}

.page-back-link {
  gap: 7px;
  margin: 0;
  white-space: nowrap;
}

.source-detail-actions {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 9px;
  margin: -8px 0 18px;
}

.source-detail-actions form {
  margin: 0;
}

.source-back-link {
  display: inline-flex;
  align-items: center;
  gap: 7px;
}

.brain-library-row:target {
  outline: 3px solid rgba(14, 117, 107, .35);
  outline-offset: 3px;
  scroll-margin-top: 24px;
}

.source-detail-notice {
  margin: -8px 0 18px;
}

.eyebrow,
.auth-eyebrow {
  margin: 0 0 7px;
  color: var(--brand-teal);
  font-size: 12px;
  font-weight: 850;
  letter-spacing: .08em;
  line-height: 1.2;
  text-transform: uppercase;
}

.app-main :where(.panel, .card, .status-tile, .source-card, .test-result, .mini-form, .knowledge-entry-form, .widget-preview, .next-panel, .readiness-panel, .next-step-card, .first-win-panel, .usage-log-card, .usage-stat-badge, .lead-choice-card, .empty-state) {
  border: 1px solid #e0ddd3;
  border-radius: 8px;
  background: #fff;
  box-shadow: none;
}

.app-main :where(.panel, .card, .status-tile, .source-card, .test-result, .mini-form, .knowledge-entry-form, .widget-preview, .next-panel, .readiness-panel) {
  padding: var(--app-panel-padding);
}

.app-main :where(.panel, .card, .status-tile, .source-card, .test-result, .mini-form, .knowledge-entry-form, .widget-preview, .next-panel, .readiness-panel, .next-step-card, .first-win-panel) :where(h2, h3) {
  color: #000;
  letter-spacing: 0;
}

.app-main :where(.panel, .card, .status-tile, .source-card, .test-result, .mini-form, .knowledge-entry-form, .widget-preview, .next-panel, .readiness-panel) > h2:first-child,
.admin-panel-heading h2,
.section-heading h2,
.tool-card-header h2 {
  margin-top: 0;
  font-size: clamp(20px, 2vw, 25px);
  font-weight: 850;
  line-height: 1.18;
}

.admin-panel-heading,
.section-heading.compact,
.tool-card-header {
  align-items: start;
  gap: 16px;
  margin-bottom: 16px;
  padding-bottom: 14px;
  border-bottom: 1px solid #ece8df;
}

.setup-section > .eyebrow:first-child,
.assistant-dashboard-next > .eyebrow:first-child,
.tool-simple-panel > .eyebrow:first-child {
  display: inline-flex;
  justify-self: start;
  width: auto;
  min-height: 24px;
  align-items: center;
  padding: 3px 8px;
  border-radius: 4px;
  background: var(--brand-yellow);
  color: #000;
}

.metric,
.assistant-metric,
.admin-metric,
.status-tile {
  border-top: 5px solid var(--brand-yellow);
}

.metric h2,
.assistant-metric strong,
.admin-metric h2,
.usage-stat-badge strong {
  color: #000;
  font-weight: 850;
  letter-spacing: 0;
}

.metric .muted,
.admin-metric .muted,
.usage-stat-badge span,
.app-main th {
  overflow-wrap: normal;
  word-break: normal;
}

.admin-summary-grid {
  grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
}

.usage-stats-bar {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
  gap: 12px;
  margin-bottom: 18px;
}

.usage-stat-badge {
  min-height: 82px;
  align-items: center;
  border-top: 5px solid var(--brand-yellow);
}

.usage-stat-badge.usage-plan-stat {
  display: grid;
  grid-template-columns: auto minmax(170px, 1fr);
  gap: 10px 18px;
  align-items: center;
  border-radius: 8px;
}

.usage-stat-main {
  display: grid;
  gap: 3px;
}

.usage-stat-badge.usage-plan-stat strong {
  font-size: 22px;
  line-height: 1.05;
}

.usage-stat-badge.usage-plan-stat small {
  flex-basis: auto;
  justify-self: start;
  max-width: 250px;
}

.usage-log-card {
  padding: var(--app-panel-padding);
}

.billing-summary-grid {
  gap: 12px;
}

.app-main .billing-summary-grid .admin-metric,
.app-main .billing-service-grid .card {
  min-height: 0;
  padding: 16px;
}

.billing-summary-grid .admin-metric {
  align-content: start;
  gap: 8px;
}

.billing-trial-note {
  color: #c91818;
  font-size: 14px;
  font-weight: 850;
}

.billing-discount-note {
  color: var(--brand-teal);
  font-size: 14px;
  font-weight: 850;
}

.billing-summary-grid .admin-metric h2 {
  font-size: 24px;
}

.metric-value-link {
  color: inherit;
  text-decoration: none;
}

.metric-value-link:hover {
  color: var(--brand-teal);
  text-decoration: underline;
  text-decoration-thickness: 2px;
  text-underline-offset: 3px;
}

.billing-overview-panel {
  display: grid;
  gap: 18px;
  border-top: 4px solid var(--brand-yellow);
}

.billing-overview-heading,
.billing-next-bill-header {
  display: flex;
  justify-content: space-between;
  gap: 24px;
  align-items: start;
}

.billing-overview-heading > div,
.billing-next-bill-header > div {
  display: grid;
  gap: 5px;
  min-width: 0;
}

.billing-overview-heading h2,
.billing-overview-heading p,
.billing-next-bill-header h2,
.billing-next-bill-header p,
.billing-section-heading h2,
.billing-section-heading p,
.billing-savings-note,
.billing-owner-note {
  margin: 0;
}

.billing-overview-heading h2,
.billing-next-bill-header h2 {
  font-size: 28px;
  line-height: 1.15;
}

.billing-overview-heading p,
.billing-next-bill-header p,
.billing-section-heading p {
  color: var(--muted);
}

.billing-section-heading > div {
  display: grid;
  gap: 4px;
  min-width: 0;
}

.billing-section-heading p {
  font-size: 14px;
}

.billing-state-label,
.billing-setup-fact > span {
  color: var(--muted);
  font-size: 13px;
  font-weight: 850;
}

.billing-state-label {
  text-transform: uppercase;
}

.billing-overview-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 8px 20px;
  padding-top: 14px;
  border-top: 1px solid var(--warm-line);
  color: var(--muted);
  font-size: 14px;
  font-weight: 750;
}

.billing-overview-meta a {
  color: var(--brand-teal);
}

.billing-next-bill {
  display: grid;
  grid-template-columns: minmax(190px, .36fr) minmax(0, 1fr);
  border: 1px solid var(--warm-line);
  border-radius: 8px;
  overflow: hidden;
  background: #fff;
}

.billing-next-bill-total {
  display: grid;
  align-content: start;
  gap: 7px;
  padding: 20px;
  border-right: 1px solid var(--warm-line);
  background: #fbfaf6;
}

.billing-next-bill-total > span {
  color: var(--muted);
  font-size: 13px;
  font-weight: 850;
}

.billing-next-bill-total > strong {
  color: var(--ink);
  font-size: clamp(30px, 3vw, 38px);
  font-weight: 950;
  line-height: 1;
}

.billing-next-bill-total > small {
  color: #344054;
  font-size: 13px;
  font-weight: 750;
}

.billing-next-bill-items {
  display: grid;
  align-content: start;
  min-width: 0;
}

.billing-next-bill-item {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 18px;
  align-items: start;
  min-width: 0;
  padding-block: 15px;
  padding-inline: 18px;
  border-bottom: 1px solid var(--warm-line);
}

.billing-next-bill-item > div {
  display: grid;
  gap: 3px;
  min-width: 0;
  overflow-wrap: anywhere;
}

.billing-next-bill-item strong {
  color: var(--ink);
}

.billing-next-bill-item > div > span {
  color: var(--muted);
  font-size: 13px;
  font-weight: 700;
}

.billing-next-bill-item > div > a {
  justify-self: start;
  color: var(--brand-teal);
  font-size: 13px;
  font-weight: 850;
  text-decoration: underline;
  text-underline-offset: 2px;
}

.billing-next-bill-recurring {
  grid-column: 2;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: 4px 18px;
  margin: 0;
  padding: 14px 18px;
  background: #f5fbf9;
  color: #344054;
  font-size: 14px;
}

.billing-next-bill-recurring strong {
  color: var(--ink);
}

.billing-later-charge {
  grid-column: 1 / -1;
  display: grid;
  border-top: 1px solid var(--warm-line);
  background: #fffdf2;
}

.billing-later-charge-heading {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 18px;
  padding-block: 15px;
  padding-inline: 18px;
  border-bottom: 1px solid var(--warm-line);
}

.billing-later-charge-heading > div {
  display: grid;
  gap: 3px;
}

.billing-later-charge-heading > div > span {
  color: var(--muted);
  font-size: 13px;
  font-weight: 700;
}

.billing-later-charge > .billing-next-bill-item:last-child {
  border-bottom: 0;
}

.billing-setup-summary {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  border-top: 1px solid var(--warm-line);
  border-bottom: 1px solid var(--warm-line);
}

.billing-setup-summary.is-two-column {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.billing-setup-fact {
  display: grid;
  gap: 4px;
  min-width: 0;
  padding: 16px;
  border-right: 1px solid var(--warm-line);
}

.billing-setup-fact:first-child {
  padding-left: 0;
}

.billing-setup-fact:last-child {
  padding-right: 0;
  border-right: 0;
}

.billing-setup-fact strong {
  color: var(--ink);
  font-size: 22px;
  line-height: 1.15;
}

.billing-setup-fact small {
  color: var(--muted);
  font-size: 13px;
  font-weight: 700;
  line-height: 1.35;
}

.billing-setup-form {
  display: grid;
  grid-template-columns: minmax(240px, 1fr) auto;
  gap: 10px 14px;
  align-items: end;
  padding: 18px;
  border: 1px solid #d6e9e4;
  border-radius: 8px;
  background: #f5fbf9;
}

.billing-setup-intro {
  grid-column: 1 / -1;
  display: grid;
  gap: 3px;
}

.billing-setup-intro > strong {
  color: var(--ink);
  font-size: 17px;
  line-height: 1.25;
}

.billing-setup-intro > span {
  color: #344054;
  font-size: 14px;
}

.billing-setup-form label {
  display: grid;
  gap: 6px;
  color: var(--ink);
  font-size: 13px;
  font-weight: 850;
}

.billing-setup-form input {
  width: 100%;
}

.billing-setup-form .btn {
  min-height: 43px;
  white-space: nowrap;
}

.billing-secure-note {
  grid-column: 1 / -1;
  color: var(--muted);
  font-size: 13px;
  font-weight: 700;
}

.billing-owner-note {
  padding: 12px 14px;
  border-left: 3px solid var(--brand-yellow);
  background: #fbfaf6;
  color: var(--muted);
  font-weight: 750;
}

.billing-section-heading {
  display: flex;
  justify-content: space-between;
  gap: 20px;
  align-items: baseline;
}

.billing-section-heading > strong {
  color: var(--ink);
  font-size: 18px;
  white-space: nowrap;
}

.billing-services-panel,
.billing-history-panel {
  display: grid;
  gap: 14px;
}

.billing-secondary-panel {
  border-color: #ece9e0;
  background: #fdfcf9;
}

.billing-secondary-panel .billing-section-heading {
  align-items: center;
}

.billing-secondary-panel .billing-section-heading h2 {
  color: #344054;
  font-size: 19px;
  font-weight: 750;
  line-height: 1.25;
}

.billing-secondary-panel .billing-section-heading p {
  font-size: 13px;
  font-weight: 500;
}

.billing-secondary-panel .billing-section-heading > strong {
  color: #344054;
  font-size: 15px;
  font-weight: 750;
}

.billing-service-list {
  display: grid;
  border-top: 1px solid var(--warm-line);
}

.billing-service-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 20px;
  align-items: center;
  padding: 14px 0;
  border-bottom: 1px solid var(--warm-line);
}

.billing-service-row:last-child {
  border-bottom: 0;
  padding-bottom: 0;
}

.billing-service-row > div {
  display: grid;
  gap: 3px;
  min-width: 0;
}

.billing-service-row > div > strong,
.billing-service-row > strong {
  color: var(--ink);
}

.billing-secondary-panel .billing-service-row > div > strong {
  font-weight: 650;
}

.billing-secondary-panel .billing-service-row > strong {
  color: #344054;
  font-weight: 700;
}

.billing-service-row span,
.billing-savings-note {
  color: var(--muted);
  font-size: 13px;
  font-weight: 700;
}

.billing-savings-note {
  padding-top: 12px;
  border-top: 1px solid var(--warm-line);
}

.billing-plan-panel {
  padding: 0;
  overflow: hidden;
}

.billing-status-panel {
  display: grid;
  gap: 16px;
  overflow-wrap: normal;
}

.billing-status-board {
  display: grid;
  grid-template-columns: minmax(0, 1.15fr) minmax(260px, .85fr);
  border: 1px solid var(--warm-line);
  border-radius: 8px;
  overflow: hidden;
  background: #fff;
}

.billing-status-tile {
  display: grid;
  align-content: start;
  gap: 8px;
  min-width: 0;
  padding: 18px;
  border-right: 1px solid var(--warm-line);
  border-bottom: 1px solid var(--warm-line);
}

.billing-status-total {
  gap: 10px;
  border-bottom: 0;
  background: #fbfaf6;
}

.billing-status-board.has-conversations .billing-status-total {
  grid-row: span 2;
}

.billing-status-total p,
.billing-status-tile p {
  margin: 0;
}

.billing-status-total .billing-discount-note {
  padding-top: 2px;
}

.billing-total-value {
  color: var(--ink);
  font-size: clamp(28px, 3vw, 36px);
  font-weight: 950;
  line-height: 1;
}

.billing-status-subline {
  color: #344054;
  font-weight: 750;
}

.billing-section-label {
  color: var(--muted);
  font-size: 13px;
  font-weight: 850;
}

.billing-status-tile > strong:not(.billing-total-value) {
  color: var(--ink);
  font-size: 18px;
  line-height: 1.2;
}

.billing-payment-action {
  display: grid;
  gap: 14px;
  align-content: start;
  border-right: 0;
  border-bottom: 0;
  background: #fffdf2;
}

.billing-status-board.has-conversations .billing-payment-action {
  border-bottom: 1px solid var(--warm-line);
}

.billing-payment-action > div {
  display: grid;
  gap: 6px;
  min-width: 0;
}

.billing-payment-action strong {
  color: var(--ink);
  font-size: 18px;
  line-height: 1.2;
}

.billing-payment-action .btn {
  justify-self: start;
  margin-top: 2px;
  white-space: nowrap;
}

.billing-conversations-tile {
  border-right: 0;
  border-bottom: 0;
}

.billing-ready-panel {
  display: grid;
  gap: 16px;
}

.billing-ready-layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(280px, 360px);
  gap: 18px;
  align-items: start;
  padding: 16px;
  border: 1px solid var(--warm-line);
  border-radius: 8px;
  background: #fbfaf6;
}

.billing-ready-facts {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}

.billing-ready-facts > div,
.billing-start-form {
  display: grid;
  gap: 6px;
  min-width: 0;
}

.billing-ready-facts strong {
  color: var(--ink);
  font-size: 18px;
  line-height: 1.2;
}

.billing-start-form {
  padding: 14px;
  border: 1px solid var(--warm-line);
  border-radius: 8px;
  background: #fff;
}

.billing-start-form label {
  display: grid;
  gap: 6px;
  color: var(--ink);
  font-weight: 850;
}

.billing-start-form input {
  width: 100%;
}

.billing-start-form .btn {
  justify-content: center;
  width: 100%;
}

.billing-setup-link {
  color: var(--brand-teal);
  font-weight: 850;
  text-decoration: underline;
  text-underline-offset: 3px;
}

.billing-contact-row {
  display: grid;
  gap: 8px;
  padding-bottom: 10px;
  border-bottom: 1px solid var(--warm-line);
}

.billing-email-field {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 38px;
  align-items: stretch;
  border: 1px solid var(--warm-line);
  border-radius: 6px;
  background: #fff;
  overflow: hidden;
}

.billing-email-field input {
  min-width: 0;
  border: 0;
  border-radius: 0;
  background: #fff;
  color: var(--ink);
  font-weight: 800;
  box-shadow: none;
}

.billing-email-field input[readonly] {
  background: #fbfaf6;
}

.billing-email-field input:focus {
  outline: 2px solid rgba(14, 117, 107, .18);
  outline-offset: -2px;
}

.billing-email-edit-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 38px;
  min-height: 38px;
  border: 0;
  border-left: 1px solid var(--warm-line);
  background: #fbfaf6;
  color: var(--brand-teal);
  cursor: pointer;
}

.billing-email-edit-button:hover,
.billing-email-edit-button:focus-visible {
  background: #f3f1eb;
}

.billing-email-edit-button[hidden] {
  display: none !important;
}

.billing-email-edit-button svg {
  width: 17px;
  height: 17px;
  fill: none;
  stroke: currentColor;
  stroke-width: 2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.billing-contact-row.is-editing .billing-email-field {
  border-color: rgba(14, 117, 107, .45);
}

.billing-contact-row.is-editing .billing-email-field input {
  background: #fff;
}

.billing-email-edit-actions {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 8px;
}

.billing-email-edit-actions[hidden],
.billing-email-edit-note[hidden] {
  display: none !important;
}

.billing-start-readonly {
  align-content: center;
}

.billing-service-grid {
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
  gap: 12px;
}

.billing-service-badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 74px;
  min-height: 30px;
  padding: 5px 10px;
  justify-self: start;
  border-radius: 4px;
  font-size: 12px;
  font-weight: 900;
  letter-spacing: .02em;
}

.billing-service-badge.is-active {
  border: 1px solid #b8e0ca;
  background: #ecfdf3;
  color: #027a48;
}

.billing-service-badge.is-muted {
  border: 1px solid #d1d5db;
  background: #f2f4f7;
  color: #475467;
}

.service-card-pricing {
  display: grid;
  gap: 3px;
  margin-top: auto;
  padding-top: 10px;
  border-top: 1px solid var(--warm-line);
}

.service-card-pricing strong {
  color: #000;
  font-size: 18px;
  line-height: 1.2;
}

.service-card-entitlements {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  margin: 0;
}

.service-card-entitlements span {
  display: inline-flex;
  align-items: center;
  min-height: 28px;
  padding: 4px 8px;
  border: 1px solid var(--warm-line);
  border-radius: 999px;
  background: #fbfaf6;
  color: var(--ink);
  font-size: 13px;
  font-weight: 750;
}

.billing-included-list {
  display: grid;
  border: 1px solid var(--warm-line);
  border-radius: 8px;
  overflow: hidden;
  background: #fff;
}

.billing-included-row {
  display: grid;
  grid-template-columns: 84px minmax(260px, 1fr) minmax(260px, .9fr);
  gap: 16px;
  align-items: center;
  padding: 16px;
  border-bottom: 1px solid var(--warm-line);
}

.billing-included-row:last-child {
  border-bottom: 0;
}

.billing-included-row h3,
.billing-included-row p {
  margin: 0;
}

.billing-included-row > div {
  display: grid;
  gap: 4px;
  min-width: 0;
}

.conversation-note {
  display: grid;
  gap: 8px;
  margin: 16px 0 0;
  padding: 16px 0 0;
  border-top: 1px solid var(--warm-line);
  background: transparent;
}

.conversation-note h3,
.billing-contact-panel h3 {
  margin: 0;
  font-size: 18px;
  line-height: 1.2;
}

.conversation-note p,
.billing-contact-panel p {
  max-width: 880px;
  margin: 0;
}

.package-grid {
  gap: 12px;
  align-items: stretch;
}

.package-grid.grid.three {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.app-main .package-card {
  display: grid;
  grid-template-rows: auto auto auto 1fr auto;
  align-content: start;
  gap: 12px;
  min-height: 0;
  padding: 18px;
  overflow-wrap: normal;
}

.package-card > .eyebrow {
  margin-bottom: 0;
}

.package-card h3 {
  margin: 0;
  min-height: 34px;
  font-size: 22px;
  line-height: 1.15;
  white-space: nowrap;
  overflow-wrap: normal;
}

.package-card > p:not(.eyebrow) {
  min-height: 58px;
  margin: 0;
  overflow-wrap: normal;
}

.package-feature-list {
  display: grid;
  align-self: start;
  gap: 8px;
  margin: 0;
  padding-left: 18px;
}

.package-feature-list li {
  overflow-wrap: normal;
  word-break: normal;
}

.package-card > form,
.package-card > .btn,
.package-card > .package-current-state {
  align-self: end;
  justify-self: start;
  width: 100%;
  margin-top: auto;
}

.app-main .package-card > .btn,
.app-main .package-card > .package-current-state,
.app-main .package-card button.btn {
  justify-content: center;
  min-height: 50px;
  width: 100%;
}

.package-current-state {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 8px 12px;
  border: 1px solid #c8ddd9;
  border-radius: 4px;
  background: #f5fbf9;
  color: var(--brand-teal);
  font-weight: 900;
}

.billing-config-note {
  margin: -4px 0 14px;
  color: #667085;
  font-weight: 650;
}

.billing-contact-panel {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  margin-top: 16px;
  padding: 16px;
  border: 1px solid var(--warm-line);
  border-radius: 8px;
  background: #f8fafc;
}

.billing-contact-panel > div {
  display: grid;
  gap: 6px;
}

.billing-contact-panel .btn {
  flex: 0 0 auto;
  white-space: nowrap;
}

.billing-payment-card {
  padding: 0;
}

.billing-payment-card button {
  display: grid;
  justify-items: start;
  gap: 8px;
  width: 100%;
  height: 100%;
  min-height: 100%;
  padding: 18px;
  border: 0;
  background: transparent;
  color: inherit;
  text-align: left;
  cursor: pointer;
}

.billing-payment-card button strong {
  color: var(--ink);
  font-size: 24px;
  line-height: 1.15;
}

.billing-payment-card-action {
  display: inline-flex;
  align-items: center;
  min-height: 34px;
  margin-top: 4px;
  padding: 6px 10px;
  border: 1px solid #d1d5db;
  border-radius: 4px;
  background: #fff;
  color: #111827;
  font-weight: 800;
}

.metric-label-with-help {
  display: flex;
  align-items: start;
  gap: 8px;
}

.inline-help {
  position: relative;
}

.inline-help summary {
  display: inline-grid;
  place-items: center;
  width: 24px;
  height: 24px;
  border: 1px solid var(--brand-teal);
  border-radius: 999px;
  color: var(--brand-teal);
  cursor: pointer;
  font-weight: 900;
  list-style: none;
}

.inline-help summary::-webkit-details-marker {
  display: none;
}

.inline-help div {
  position: absolute;
  z-index: 5;
  top: calc(100% + 8px);
  left: 0;
  width: min(320px, 70vw);
  padding: 12px;
  border: 1px solid var(--warm-line);
  border-radius: 8px;
  background: #fff;
  box-shadow: 0 18px 36px rgba(0, 0, 0, .12);
  color: var(--app-ink);
  font-size: 14px;
  line-height: 1.45;
}

.billing-statement {
  display: grid;
  border: 1px solid var(--warm-line);
  border-radius: 8px;
  overflow: hidden;
  background: #fff;
}

.billing-statement-current {
  overflow-wrap: normal;
  word-break: normal;
}

.billing-statement-row {
  display: grid;
  grid-template-columns: minmax(88px, .32fr) minmax(320px, 1.4fr) minmax(270px, .95fr) minmax(118px, .45fr);
  gap: 18px;
  align-items: center;
  padding: 18px 16px;
  border-bottom: 1px solid var(--warm-line);
}

.billing-statement-current .billing-statement-row {
  grid-template-columns: minmax(0, 1fr) minmax(178px, .32fr) minmax(118px, .22fr);
  gap: 24px;
}

.billing-statement-invoices .billing-statement-row {
  grid-template-columns: minmax(260px, 1.15fr) minmax(110px, .35fr) minmax(150px, .48fr) minmax(180px, .58fr);
}

.billing-statement-history .billing-statement-row {
  grid-template-columns: minmax(260px, 1fr) minmax(140px, .35fr) minmax(190px, .46fr);
}

.billing-statement-current .billing-statement-head {
  padding-top: 14px;
  padding-bottom: 14px;
  background: #fbfaf6;
}

.billing-statement-row:last-child {
  border-bottom: 0;
}

.billing-statement-row div {
  display: grid;
  gap: 4px;
}

.billing-statement-history .billing-statement-row > [data-label="Item"] {
  min-width: 0;
  overflow-wrap: anywhere;
}

.billing-statement-row div > span,
.billing-statement-head {
  color: var(--muted);
  font-size: 13px;
  font-weight: 850;
}

.billing-statement-row > span,
.billing-statement-row > strong {
  min-width: 0;
}

.billing-statement-invoices .billing-statement-row > [data-label="Item"] {
  min-width: 0;
}

.billing-statement-invoices .billing-statement-row > [data-label="Status"],
.billing-statement-invoices .billing-statement-row > [data-label="Invoice"] {
  line-height: 1.35;
}

.billing-charge-service {
  min-width: 0;
}

.billing-charge-service strong {
  color: var(--ink);
  font-size: 16px;
  line-height: 1.25;
}

.billing-charge-service p,
.billing-charge-service span,
.billing-statement-current .muted {
  overflow-wrap: normal;
  word-break: normal;
}

.billing-amount {
  min-width: 0;
  align-content: start;
  gap: 6px;
}

.billing-amount strong {
  color: var(--ink);
  font-size: 15px;
  line-height: 1.25;
}

.billing-amount-note {
  color: var(--muted);
  font-size: 13px;
  font-weight: 700;
  line-height: 1.3;
}

.billing-amount-note-stack {
  display: grid;
  gap: 2px;
}

.billing-amount-note strong {
  color: var(--brand-teal);
  font-weight: 850;
  font-size: inherit;
}

.billing-status-cell {
  align-items: center;
  display: flex;
  min-width: 0;
}

.billing-charge-status {
  justify-content: flex-start;
}

.billing-status-pill {
  background: #f7f5eb;
  border: 1px solid var(--warm-line);
  border-radius: 999px;
  color: var(--ink);
  display: inline-flex;
  font-size: 13px;
  font-weight: 800;
  line-height: 1.1;
  padding: 6px 10px;
  white-space: nowrap;
}

.billing-status-pill.is-paid,
.billing-status-pill.is-comped {
  border-color: #b8e0ca;
  background: #ecfdf3;
  color: #027a48;
}

.billing-status-pill.is-due-now,
.billing-status-pill.is-past-due {
  border-color: #f4c7c3;
  background: #fff1f0;
  color: #b42318;
}

.billing-status-pill.is-invoice-sent {
  border-color: #bdd7ef;
  background: #eff8ff;
  color: #175cd3;
}

.billing-status-pill.is-voided,
.billing-status-pill.is-failed {
  border-color: #d1d5db;
  background: #f2f4f7;
  color: #475467;
}

.billing-history-amount,
.billing-history-status {
  display: grid;
  gap: 5px;
  align-content: start;
}

.billing-history-amount > strong {
  color: var(--ink);
}

.billing-history-panel .billing-statement-row > [data-label="Item"] > strong {
  color: #344054;
  font-weight: 650;
}

.billing-history-panel .billing-statement-row div > span,
.billing-history-panel .billing-statement-head {
  font-weight: 600;
}

.billing-history-panel .billing-history-amount > strong {
  color: #344054;
  font-weight: 700;
}

.billing-history-panel .billing-status-pill {
  padding: 5px 9px;
  font-size: 12px;
  font-weight: 700;
}

.billing-history-amount > span {
  color: var(--muted);
  font-size: 13px;
  font-weight: 750;
}

.billing-history-status {
  justify-items: start;
}

.billing-history-links {
  display: flex;
  flex-wrap: wrap;
  gap: 4px 12px;
  font-size: 13px;
  font-weight: 800;
}

.billing-history-links a {
  color: var(--brand-teal);
}

.billing-statement-row p {
  margin: 0;
}

.billing-statement-total {
  background: #fbfaf6;
}

.billing-empty-state {
  background: #fbfaf6;
  border-color: var(--warm-line);
}

.billing-plan-details {
  border: 1px solid var(--warm-line);
  border-radius: 8px;
  background: #fff;
  overflow: hidden;
}

.billing-plan-details > summary {
  display: flex;
  justify-content: space-between;
  gap: 16px;
  align-items: center;
  padding: 16px;
  cursor: pointer;
  list-style: none;
}

.billing-plan-details > summary::-webkit-details-marker {
  display: none;
}

.billing-plan-details > summary > span:first-child {
  display: grid;
  gap: 4px;
}

.billing-plan-details > summary strong {
  color: var(--ink);
  font-size: 17px;
}

.billing-plan-details > summary small {
  color: var(--muted);
  font-size: 13px;
  font-weight: 750;
}

.billing-plan-details-action {
  display: inline-flex;
  align-items: center;
  min-height: 34px;
  padding: 6px 10px;
  border: 1px solid #d1d5db;
  border-radius: 4px;
  color: var(--ink);
  font-size: 13px;
  font-weight: 850;
  white-space: nowrap;
}

.billing-plan-details[open] > summary {
  border-bottom: 1px solid var(--warm-line);
}

.billing-plan-details .package-grid,
.billing-plan-details .conversation-note {
  margin: 16px;
}

@media (max-width: 1240px) {
  .billing-statement-current .billing-statement-head {
    display: none;
  }

  .billing-statement-current .billing-charge-row {
    grid-template-columns: minmax(0, 1fr) auto;
    grid-template-areas:
      "service status"
      "amount amount";
    gap: 14px 18px;
    align-items: start;
    padding: 18px;
  }

  .billing-statement-current .billing-charge-service {
    grid-area: service;
  }

  .billing-statement-current .billing-charge-amount {
    grid-area: amount;
    padding-top: 13px;
    border-top: 1px solid var(--warm-line);
  }

  .billing-statement-current .billing-charge-status {
    grid-area: status;
    justify-content: flex-end;
  }

  .billing-statement-current .billing-statement-row > [data-label]::before {
    content: none;
  }
}

@media (max-width: 1180px) and (min-width: 701px) {
  .package-grid.grid.three {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 900px) {
  .billing-next-bill {
    grid-template-columns: minmax(170px, .4fr) minmax(0, 1fr);
  }

  .billing-setup-summary,
  .billing-setup-summary.is-two-column {
    grid-template-columns: 1fr;
  }

  .billing-setup-fact,
  .billing-setup-fact:first-child,
  .billing-setup-fact:last-child {
    padding: 13px 0;
    border-right: 0;
    border-bottom: 1px solid var(--warm-line);
  }

  .billing-setup-fact:last-child {
    border-bottom: 0;
  }

  .billing-status-board {
    grid-template-columns: 1fr;
  }

  .billing-status-tile,
  .billing-status-tile:nth-child(2n),
  .billing-status-tile:nth-last-child(-n + 2) {
    border-right: 0;
    border-bottom: 1px solid var(--warm-line);
  }

  .billing-status-tile:last-child {
    border-bottom: 0;
  }

  .billing-included-row {
    grid-template-columns: 1fr;
    gap: 10px;
    align-items: start;
  }

  .billing-ready-layout,
  .billing-ready-facts {
    grid-template-columns: 1fr;
  }

  .billing-statement-row {
    grid-template-columns: 1fr;
    gap: 10px;
    align-items: stretch;
    padding: 16px;
  }

  .billing-statement-invoices .billing-statement-row {
    grid-template-columns: 1fr;
  }

  .billing-statement-history .billing-statement-row {
    grid-template-columns: 1fr;
  }

  .billing-statement-current .billing-statement-row {
    grid-template-columns: 1fr;
  }

  .billing-statement-head {
    display: none;
  }

  .billing-statement-row > :not([data-label="Item"]):not([data-label="Service"]) {
    display: grid;
    grid-template-columns: minmax(110px, .42fr) minmax(0, 1fr);
    gap: 12px;
    align-items: baseline;
  }

  .billing-status-cell {
    align-items: center;
  }

  .billing-statement-row > [data-label]::before {
    content: attr(data-label);
    color: var(--muted);
    font-size: 13px;
    font-weight: 850;
  }

  .billing-statement-history .billing-history-amount,
  .billing-statement-history .billing-history-status {
    grid-template-columns: minmax(110px, .42fr) minmax(0, 1fr);
    align-items: start;
  }

  .billing-statement-history .billing-history-amount::before,
  .billing-statement-history .billing-history-status::before {
    grid-row: 1 / span 2;
  }

  .billing-statement-history .billing-history-amount > strong,
  .billing-statement-history .billing-history-amount > span,
  .billing-statement-history .billing-history-status > .billing-status-pill,
  .billing-statement-history .billing-history-status > .billing-history-links {
    grid-column: 2;
  }

  .billing-statement-row > [data-label="Item"]::before,
  .billing-statement-row > [data-label="Service"]::before {
    margin-bottom: 2px;
  }

  .billing-statement-current .billing-charge-row {
    grid-template-columns: minmax(0, 1fr) auto;
    grid-template-areas:
      "service status"
      "amount amount";
  }

  .billing-statement-current .billing-statement-row > :not([data-label="Item"]):not([data-label="Service"]) {
    display: grid;
    grid-template-columns: 1fr;
    gap: 6px;
  }

  .billing-statement-current .billing-charge-status {
    justify-items: end;
  }

  .billing-statement-current .billing-charge-status .billing-status-pill {
    justify-self: end;
  }

  .billing-statement-current .billing-statement-row > [data-label]::before {
    content: none;
  }
}

@media (max-width: 700px) {
  .billing-overview-heading,
  .billing-next-bill-header,
  .billing-section-heading {
    display: grid;
    gap: 10px;
  }

  .billing-overview-heading .btn,
  .billing-overview-heading form,
  .billing-next-bill-header .btn,
  .billing-next-bill-header form {
    width: 100%;
  }

  .billing-next-bill {
    grid-template-columns: 1fr;
  }

  .billing-next-bill-total {
    border-right: 0;
    border-bottom: 1px solid var(--warm-line);
  }

  .billing-next-bill-recurring,
  .billing-later-charge {
    grid-column: 1;
  }

  .billing-setup-form {
    grid-template-columns: 1fr;
  }

  .billing-setup-form .btn {
    width: 100%;
  }

  .billing-secure-note {
    grid-column: auto;
  }

  .package-grid.grid.three {
    grid-template-columns: 1fr;
  }

  .billing-contact-panel {
    display: grid;
    align-items: stretch;
  }

  .billing-contact-panel .btn {
    justify-content: center;
    width: 100%;
  }

  .billing-payment-action {
    grid-template-columns: 1fr;
    align-items: stretch;
  }

  .billing-payment-action .btn,
  .billing-plan-details-action {
    justify-content: center;
    width: 100%;
  }

  .billing-status-tile {
    padding: 16px;
  }

  .billing-total-value {
    font-size: 28px;
  }

  .billing-plan-details > summary {
    display: grid;
  }
}

@media (max-width: 520px) {
  .billing-page .app-page-header h1 {
    font-size: 24px;
    overflow-wrap: break-word;
    word-break: normal;
  }

  .billing-overview-heading h2 {
    font-size: 24px;
  }

  .billing-next-bill-header h2 {
    font-size: 24px;
  }

  .billing-next-bill-total,
  .billing-next-bill-item,
  .billing-next-bill-recurring,
  .billing-later-charge-heading {
    padding: 14px;
  }

  .billing-next-bill-item,
  .billing-later-charge-heading {
    gap: 12px;
  }

  .billing-statement-history .billing-history-amount,
  .billing-statement-history .billing-history-status {
    grid-template-columns: 1fr;
    gap: 5px;
  }

  .billing-statement-history .billing-history-amount::before,
  .billing-statement-history .billing-history-status::before,
  .billing-statement-history .billing-history-amount > strong,
  .billing-statement-history .billing-history-amount > span,
  .billing-statement-history .billing-history-status > .billing-status-pill,
  .billing-statement-history .billing-history-status > .billing-history-links {
    grid-column: 1;
    grid-row: auto;
  }

  .billing-service-row {
    grid-template-columns: 1fr;
    gap: 6px;
  }

  .billing-statement-current .billing-charge-row {
    grid-template-columns: 1fr;
    grid-template-areas:
      "service"
      "amount"
      "status";
  }

  .billing-statement-current .billing-charge-status {
    justify-content: flex-start;
    justify-items: start;
  }

  .billing-statement-current .billing-charge-status .billing-status-pill {
    justify-self: start;
  }
}

.compact-details-panel {
  padding: 10px;
  border: 1px solid var(--warm-line);
  border-radius: 8px;
  background: #fff;
}

.compact-details-panel summary {
  cursor: pointer;
  font-weight: 800;
}

.compact-details-panel[open] {
  display: grid;
  gap: 8px;
}

.usage-log-card.needs-review {
  border-left: 5px solid var(--brand-yellow);
}

.table-scroll {
  border: 1px solid #e0ddd3;
  border-radius: 8px;
  background: #fff;
}

.app-main table {
  width: 100%;
  border-collapse: separate;
  border-spacing: 0;
}

.table-panel {
  max-width: 100%;
  overflow-x: auto;
  overscroll-behavior-x: contain;
}

.app-main th {
  background: #fbfaf6;
  color: #626767;
  font-size: 14px;
  font-weight: 850;
}

.app-main th,
.app-main td {
  padding: 13px 14px;
  border-bottom: 1px solid #ece8df;
}

.app-main tr:last-child td {
  border-bottom: 0;
}

.admin-table-panel {
  overflow: hidden;
}

.admin-table-panel .table-scroll {
  border: 0;
  border-top: 1px solid #ece8df;
  border-radius: 0;
}

.app-main .btn,
.confirm-dialog .btn,
.source-modal .btn,
.app-main button.btn,
.app-main a.btn {
  min-height: 42px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  padding: 9px 14px;
  border: 2px solid #000;
  border-radius: 4px;
  background: #000;
  color: #fff;
  font-size: 15px;
  font-weight: 850;
  line-height: 1.1;
  text-align: center;
}

.app-main .btn.secondary,
.confirm-dialog .btn.secondary,
.source-modal .btn.secondary,
.app-main button.btn.secondary,
.app-main a.btn.secondary {
  border-color: var(--brand-teal);
  background: #fff;
  color: var(--brand-teal);
}

.app-main .btn.secondary:hover,
.confirm-dialog .btn.secondary:hover,
.source-modal .btn.secondary:hover,
.app-main button.btn.secondary:hover,
.app-main a.btn.secondary:hover {
  background: #e8f4f2;
}

.app-main .assistant-public-preview {
  overflow: hidden;
  padding: 0;
}

.app-main .assistant-public-preview .assistant-send-button {
  display: grid;
  place-items: center;
  width: 44px;
  min-width: 44px;
  height: 44px;
  min-height: 44px;
  padding: 0;
  border-color: var(--assistant-accent);
  border-radius: 999px;
  background: var(--assistant-accent);
  color: #fff;
}

.app-main .assistant-public-preview .assistant-send-button[hidden] {
  display: none;
}

.app-main .assistant-public-preview .assistant-send-button:hover,
.app-main .assistant-public-preview .assistant-send-button:focus-visible {
  border-color: var(--assistant-accent);
  background: var(--assistant-accent);
  color: #fff;
}

.app-main :where(label, legend) {
  color: #000;
  font-weight: 800;
}

.app-main :where(input, textarea, select) {
  min-height: 42px;
  border: 1px solid #d8d2c4;
  border-radius: 6px;
  background: #fff;
  color: #111;
  font-size: 15px;
  font-weight: 600;
}

.app-main textarea {
  line-height: 1.45;
}

.field-note,
.app-main small,
.app-main .muted {
  color: #626767;
}

/* Assistant preview fixes: keep the admin preview feeling like the public chat. */
.app-main .assistant-public-preview .assistant-inline-feedback {
  display: grid;
  gap: 6px;
  min-width: 0;
}

.app-main .assistant-public-preview .icon-action {
  min-width: 28px;
  transition: background .15s ease, color .15s ease, transform .15s ease;
}

.app-main .assistant-public-preview .icon-action.is-selected,
.app-main .assistant-public-preview .icon-action[aria-pressed="true"] {
  background: #f3f4f6;
  color: #111827;
}

.app-main .assistant-public-preview .icon-action.is-loading {
  outline: 2px solid #f5c84b;
  outline-offset: 2px;
}

.app-main .assistant-public-preview .assistant-feedback-saved {
  margin: -2px 0 0;
  color: #667085;
  font-size: 12px;
  font-weight: 800;
}

.app-main .assistant-public-preview .feedback-correction-panel {
  width: min(360px, calc(100vw - 64px));
  margin-top: 8px;
  padding: 12px;
  border: 1px solid #d9e2ef;
  border-radius: 10px;
  background: #fff;
  box-shadow: 0 10px 30px rgba(15, 23, 42, .12);
}

.app-main .assistant-public-preview .feedback-correction-panel label {
  display: grid;
  gap: 8px;
  color: #172033;
  font-size: 13px;
  font-weight: 850;
}

.app-main .assistant-public-preview .feedback-correction-panel textarea {
  width: 100%;
  min-height: 84px;
  resize: vertical;
  border-color: #cbd5e1;
  font-size: 14px;
  font-weight: 500;
}

.app-main .assistant-public-preview .feedback-correction-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  align-items: center;
}

.app-main .assistant-public-preview .feedback-correction-actions .btn {
  min-height: 36px;
  padding: 7px 10px;
  font-size: 13px;
}

.app-main .assistant-public-preview .feedback-correction-panel .field-note {
  margin: 0;
  color: #667085;
  font-size: 12px;
  font-weight: 650;
}

.assistant-workbench {
  display: grid;
  gap: 30px;
}

.assistant-workbench .assistant-first-header {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: end;
  gap: 24px;
  margin-bottom: 14px;
  padding: 0 0 24px;
  border-bottom: 3px solid #111;
}

.assistant-workbench .assistant-first-header .eyebrow {
  margin-bottom: 4px;
  color: #394b4d;
  font-size: 17px;
  font-weight: 950;
  letter-spacing: .08em;
}

.assistant-workbench .assistant-first-header h1 {
  font-size: 38px;
}

.assistant-workbench .assistant-first-header .muted {
  max-width: 650px;
  color: #5f6769;
  font-size: 19px;
  font-weight: 850;
  line-height: 1.42;
}

.assistant-workbench .assistant-install-button {
  min-height: 58px;
  padding: 16px 26px;
  border-color: var(--brand-teal);
  border-radius: 8px;
  background: var(--brand-teal);
  color: #fff;
  font-size: 16px;
  white-space: nowrap;
}

.brain-scan-panel {
  position: relative;
  display: grid;
  gap: 18px;
  padding: 24px;
  border: 1px solid #d7ddcf;
  border-radius: 12px;
  background:
    radial-gradient(circle at 92% 0, rgba(255, 209, 102, .24), transparent 31%),
    linear-gradient(180deg, #fffdf4 0%, #ffffff 84%);
  box-shadow: 0 18px 42px rgba(16, 24, 40, .09);
  color: #141414;
}

.brain-scan-panel-training {
  border-color: #cddfd9;
}

.brain-scan-panel h2 {
  margin: 0;
  font-size: 28px;
  line-height: 1.1;
}

.brain-scan-panel h3 {
  margin: 0 0 8px;
  font-size: 13px;
  letter-spacing: .08em;
  text-transform: uppercase;
}

.brain-scan-panel-header {
  display: flex;
  align-items: start;
  justify-content: space-between;
  gap: 16px;
}

.brain-scan-panel-heading {
  display: grid;
  gap: 8px;
  max-width: 720px;
}

.brain-scan-panel-topline {
  display: grid;
  justify-items: end;
  gap: 12px;
}

.brain-scan-eyebrow {
  margin: 0;
  color: #0e756b;
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .16em;
  text-transform: uppercase;
}

.brain-scan-motion-toggle,
.brain-scan-technical-details summary {
  min-height: 40px;
  padding: 9px 14px;
  border: 1px solid #cddbd5;
  border-radius: 8px;
  background: #fff;
  color: #17352f;
  font-weight: 800;
  cursor: pointer;
}

.brain-scan-motion-toggle:hover,
.brain-scan-technical-details summary:hover {
  border-color: #0e756b;
}

.brain-scan-header-counts {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
  min-width: 200px;
}

.brain-scan-header-count {
  display: grid;
  gap: 3px;
  padding: 10px 12px;
  border: 1px solid #dce7e2;
  border-radius: 8px;
  background: rgba(255, 255, 255, .92);
  text-align: center;
}

.brain-scan-header-count strong {
  color: #17395f;
  font-size: 22px;
  line-height: 1;
}

.brain-scan-header-count span {
  color: #50606d;
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .02em;
  text-transform: uppercase;
}

.brain-scan-live-grid {
  display: grid;
  grid-template-columns: minmax(240px, .86fr) minmax(0, 1fr);
  gap: 20px;
  align-items: stretch;
}

.brain-scan-visual {
  position: relative;
  min-height: 220px;
  overflow: hidden;
  border: 1px solid #d8e7de;
  border-radius: 12px;
  background:
    linear-gradient(135deg, rgba(14, 117, 107, .12), rgba(255, 209, 102, .18)),
    #fbfff9;
}

.brain-scan-core {
  position: absolute;
  top: 50%;
  left: 50%;
  display: grid;
  place-items: center;
  width: 112px;
  height: 112px;
  border: 2px solid #111;
  border-radius: 999px;
  background: #ffd166;
  color: #111;
  font-weight: 900;
  transform: translate(-50%, -50%);
  box-shadow: 0 16px 34px rgba(16, 24, 40, .18);
  animation: brainScanPulse 2600ms ease-in-out infinite;
}

.brain-scan-beam {
  position: absolute;
  inset: 22px 18%;
  border-radius: 999px;
  background: linear-gradient(90deg, transparent, rgba(14, 117, 107, .2), transparent);
  transform: rotate(-18deg);
  animation: brainScanBeam 3200ms ease-in-out infinite;
}

.brain-scan-node {
  position: absolute;
  width: 44px;
  height: 32px;
  border: 1px solid #17352f;
  border-radius: 7px;
  background: #fff;
  box-shadow: 0 8px 18px rgba(16, 24, 40, .1);
  animation: brainScanFloat 3600ms ease-in-out infinite;
}

.brain-scan-node::before {
  content: "";
  position: absolute;
  inset: 9px 8px;
  border-top: 2px solid #0e756b;
  border-bottom: 2px solid #ffd166;
}

.brain-scan-node-1 { top: 26px; left: 30px; animation-delay: -400ms; }
.brain-scan-node-2 { top: 32px; right: 34px; animation-delay: -900ms; }
.brain-scan-node-3 { top: 50%; left: 20px; animation-delay: -1500ms; }
.brain-scan-node-4 { right: 24px; bottom: 48px; animation-delay: -2100ms; }
.brain-scan-node-5 { bottom: 28px; left: 68px; animation-delay: -2700ms; }
.brain-scan-node-6 { top: 50%; right: 18px; animation-delay: -3200ms; }

.brain-scan-stage-copy {
  display: grid;
  align-content: center;
  gap: 16px;
  min-width: 0;
  padding: 18px;
  border: 1px solid #e2e8e2;
  border-radius: 12px;
  background: rgba(255, 255, 255, .82);
}

.brain-scan-phase strong {
  display: block;
  margin: 0;
  color: #121212;
  font-size: 20px;
}

.brain-scan-phase p,
.brain-scan-progress-label {
  margin: 5px 0 0;
  color: #4f5b54;
}

.brain-scan-progress {
  display: grid;
  gap: 8px;
}

.brain-scan-progress-track {
  width: 100%;
  height: 10px;
  overflow: hidden;
  border-radius: 999px;
  background: #d7ece7;
}

.brain-scan-progress-track span {
  display: block;
  width: 0;
  height: 100%;
  border-radius: inherit;
  background: linear-gradient(90deg, #111 0%, #0e756b 58%, #ffd166 100%);
  transition: width .35s ease;
}

.brain-scan-counts {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
  color: #17352f;
}

.brain-scan-counts.brain-scan-stats {
  grid-template-columns: repeat(5, minmax(0, 1fr));
}

.brain-scan-count-block {
  display: grid;
  gap: 4px;
  min-width: 0;
  padding: 11px 12px;
  border: 1px solid #dce7e2;
  border-radius: 8px;
  background: #fff;
  text-align: center;
}

.brain-scan-count-block span,
.brain-scan-stats span {
  color: #50606d;
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .02em;
  text-transform: uppercase;
}

.brain-scan-counts strong {
  font-size: 28px;
  line-height: 1;
}

.brain-scan-latest-strip {
  display: grid;
  gap: 8px;
}

.brain-scan-latest-strip[hidden] {
  display: none;
}

.brain-scan-latest-strip ul {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.brain-scan-latest-strip li {
  display: grid;
  gap: 2px;
  max-width: 280px;
  padding: 10px 12px;
  border: 1px solid #cfe3db;
  border-radius: 8px;
  background: #fff;
  transition: transform .25s ease, border-color .25s ease;
}

.brain-scan-latest-strip li.is-new {
  border-color: #0e756b;
  transform: translateY(-2px);
}

.brain-scan-latest-placeholder {
  grid-auto-flow: column;
  align-items: center;
  justify-content: start;
  max-width: none;
  min-width: 180px;
}

.brain-scan-latest-dot {
  width: 10px;
  height: 10px;
  border-radius: 999px;
  background: #0e756b;
  animation: brainScanLatestDot 1300ms ease-in-out infinite;
}

.brain-scan-latest-strip strong,
.brain-scan-recent-pages a,
.brain-scan-recent-page-title {
  color: #0e756b;
  font-weight: 800;
  overflow-wrap: anywhere;
}

.brain-scan-latest-strip span,
.brain-scan-recent-pages span {
  color: #667085;
  font-size: 12px;
}

.brain-scan-story-carousel {
  display: grid;
  gap: 12px;
  position: relative;
}

.brain-scan-story-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
}

.brain-scan-story-controls {
  display: inline-flex;
  align-items: center;
  gap: 8px;
}

.brain-scan-story-button {
  min-height: 36px;
  padding: 7px 12px;
  border: 1px solid #cddbd5;
  border-radius: 8px;
  background: #fff;
  color: #17352f;
  font-weight: 800;
  cursor: pointer;
}

.brain-scan-story-button:hover,
.brain-scan-story-button:focus-visible {
  border-color: #0e756b;
}

.brain-scan-story-slides {
  min-height: 124px;
}

.brain-scan-story-carousel article {
  display: none;
  padding: 16px 18px;
  border: 1px solid #cfe3db;
  border-left: 5px solid #ffd166;
  border-radius: 8px;
  background: linear-gradient(135deg, rgba(14, 117, 107, .07), rgba(255, 209, 102, .12));
}

.brain-scan-story-carousel article.is-active {
  display: block;
  animation: brainScanStoryIn .35s ease;
}

.brain-scan-story-controls span {
  min-width: 44px;
  color: #50606d;
  font-size: 13px;
  font-weight: 800;
  text-align: center;
}

.brain-scan-story-carousel strong,
.brain-scan-complete-summary h3,
.brain-scan-recovery strong {
  color: #111;
  font-size: 17px;
}

.brain-scan-story-carousel p,
.brain-scan-complete-summary p,
.brain-scan-recovery p {
  margin: 5px 0 0;
  color: #4f5b54;
}

.brain-scan-complete-summary,
.brain-scan-recovery {
  display: grid;
  gap: 14px;
  padding: 18px;
  border: 1px solid #cfe3db;
  border-radius: 10px;
  background: #f4fbf5;
}

.brain-scan-complete-summary[hidden],
.brain-scan-recovery[hidden] {
  display: none;
}

.brain-scan-ready-cards {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
}

.brain-scan-ready-cards article {
  padding: 14px;
  border: 1px solid #cfe3db;
  border-radius: 8px;
  background: linear-gradient(180deg, #ffffff 0%, #f9fffb 100%);
  box-shadow: 0 10px 24px rgba(16, 24, 40, .06);
}

.brain-scan-recovery {
  border-color: #efd6a9;
  background: #fff8e8;
}

.brain-scan-stats {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 12px;
}

.brain-scan-stats article {
  display: grid;
  gap: 6px;
  padding: 14px 16px;
  border: 1px solid #dde7f1;
  border-radius: 8px;
  background: rgba(255, 255, 255, .92);
}

.brain-scan-stats strong {
  color: #17395f;
  font-size: 24px;
  line-height: 1;
}

.brain-scan-explanation {
  padding: 16px 18px;
  border: 1px solid #d9e3de;
  border-radius: 10px;
  background: rgba(255, 255, 255, .92);
}

.brain-scan-explanation p {
  margin: 0;
  color: #415058;
}

.brain-scan-power-cards {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 12px;
}

.brain-scan-power-cards article {
  display: grid;
  gap: 8px;
  padding: 14px;
  border: 1px solid #d9e6e1;
  border-radius: 8px;
  background: #fff;
}

.brain-scan-power-cards p {
  margin: 0;
  color: #4f5b54;
  font-size: 14px;
}

.brain-scan-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 20px;
}

.brain-scan-steps,
.brain-scan-recent-pages {
  display: grid;
  gap: 8px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.brain-scan-steps li,
.brain-scan-recent-pages li {
  display: grid;
  gap: 3px;
  padding: 10px 12px;
  border: 1px solid #d9e6e1;
  border-radius: 8px;
  background: #fff;
  font-size: 14px;
}

.brain-scan-steps li {
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
}

.brain-scan-steps li[data-step-status="done"] {
  border-color: #b8dfcf;
  background: #f1fcf6;
}

.brain-scan-steps li[data-step-status="active"] {
  border-color: #cde0f7;
  background: #f3f8ff;
}

.brain-scan-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}

.brain-scan-poll-warning {
  margin: 0;
  font-size: 13px;
}

.brain-scan-panel[data-brain-scan-phase-key="completed_success"] .brain-scan-progress {
  opacity: .42;
}

.brain-scan-panel[data-brain-scan-phase-key="completed_success"] .brain-scan-story-carousel {
  opacity: .72;
}

.brain-scan-panel[data-brain-scan-status="completed"] .brain-scan-core,
.brain-scan-panel[data-brain-scan-status="completed"] .brain-scan-node {
  animation-duration: 7000ms;
}

.brain-scan-panel[data-brain-scan-status="failed"] .brain-scan-visual {
  background: linear-gradient(135deg, rgba(239, 214, 169, .26), rgba(255, 255, 255, .9));
}

.brain-scan-panel[data-brain-scan-status="failed"] .brain-scan-core {
  background: #fff8e8;
}

.brain-scan-panel[data-motion-paused="true"] *,
.brain-scan-panel[data-brain-scan-status="failed"] .brain-scan-core,
.brain-scan-panel[data-brain-scan-status="failed"] .brain-scan-node,
.brain-scan-panel[data-brain-scan-status="failed"] .brain-scan-beam {
  animation-play-state: paused !important;
  transition-duration: 0s !important;
}

@keyframes brainScanPulse {
  0%, 100% { transform: translate(-50%, -50%) scale(1); }
  50% { transform: translate(-50%, -50%) scale(1.04); }
}

@keyframes brainScanBeam {
  0%, 100% { opacity: .25; transform: translateX(-18px) rotate(-18deg); }
  50% { opacity: .75; transform: translateX(18px) rotate(-18deg); }
}

@keyframes brainScanFloat {
  0%, 100% { transform: translateY(0); }
  50% { transform: translateY(-7px); }
}

@keyframes brainScanStoryIn {
  from { opacity: .6; transform: translateY(4px); }
  to { opacity: 1; transform: translateY(0); }
}

@keyframes brainScanLatestDot {
  0%, 100% { transform: scale(.8); opacity: .45; }
  50% { transform: scale(1.15); opacity: 1; }
}

.assistant-two-column {
  display: grid;
  grid-template-columns: minmax(0, .95fr) minmax(0, 1fr);
  gap: clamp(24px, 4vw, 48px);
  align-items: start;
  min-width: 0;
}

.assistant-chat-column {
  min-width: 0;
}

@media (min-width: 901px) {
  .assistant-chat-column {
    position: sticky;
    top: 110px;
  }
}

@media (max-width: 900px) {
  .brain-scan-panel-header {
    display: grid;
  }

  .brain-scan-live-grid,
  .brain-scan-grid,
  .brain-scan-ready-cards,
  .brain-scan-power-cards {
    grid-template-columns: 1fr;
  }

  .brain-scan-panel-topline,
  .brain-scan-story-header {
    justify-items: start;
  }

  .brain-scan-header-counts,
  .brain-scan-counts,
  .brain-scan-counts.brain-scan-stats {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .brain-scan-stats {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .training-library-header {
    display: grid;
    align-items: stretch;
  }

  .training-library-header-actions,
  .training-admin-demo-actions {
    justify-content: stretch;
  }

  .training-admin-demo-actions .btn,
  .training-add-button {
    width: 100%;
  }
}

@media (max-width: 640px) {
  .brain-scan-panel {
    padding: 20px 16px;
  }

  .brain-scan-panel h2 {
    font-size: 24px;
  }

  .brain-scan-visual {
    min-height: 160px;
  }

  .brain-scan-core {
    width: 86px;
    height: 86px;
  }

  .brain-scan-node {
    width: 36px;
    height: 28px;
  }

  .brain-scan-latest-strip ul {
    display: grid;
  }

  .brain-scan-latest-strip li {
    max-width: none;
  }

  .brain-scan-header-counts,
  .brain-scan-counts,
  .brain-scan-counts.brain-scan-stats,
  .brain-scan-stats,
  .brain-scan-power-cards {
    grid-template-columns: 1fr;
  }

  .brain-scan-story-controls {
    width: 100%;
    justify-content: space-between;
  }
}

@media (prefers-reduced-motion: reduce) {
  .brain-scan-panel *,
  .brain-scan-panel *::before,
  .brain-scan-panel *::after {
    animation-duration: .01ms !important;
    animation-iteration-count: 1 !important;
    scroll-behavior: auto !important;
    transition-duration: 0s !important;
  }
}

.brain-scan-simple {
  --scan-teal: #0d746c;
  --scan-yellow: #e8c83d;
  --scan-ink: #111111;
  --scan-muted: #58615e;
  display: grid;
  gap: 0;
  padding: 0;
  overflow: hidden;
  border: 1px solid #d7ded7;
  border-radius: 8px;
  background:
    radial-gradient(circle at 50% 8%, rgba(255, 241, 187, .36), transparent 32%),
    linear-gradient(180deg, #fffdf6 0%, #ffffff 100%);
  box-shadow: none;
  color: var(--scan-ink);
}

.brain-scan-simple.brain-scan-complete {
  border-color: #bedbd2;
  background:
    radial-gradient(circle at 50% 20%, rgba(14, 117, 107, .09), transparent 42%),
    linear-gradient(180deg, #fbfffb 0%, #ffffff 100%);
}

.brain-scan-simple.brain-scan-recovery {
  border-color: #ecd7cf;
  background:
    radial-gradient(circle at 50% 20%, rgba(236, 173, 141, .13), transparent 42%),
    linear-gradient(180deg, #fff8f5 0%, #ffffff 100%);
}

.brain-scan-simple-main {
  display: grid;
  justify-items: center;
  gap: 24px;
  padding: clamp(28px, 5vw, 58px) clamp(18px, 5vw, 70px) 28px;
  text-align: center;
}

.brain-scan-simple-copy {
  display: grid;
  justify-items: center;
  gap: 9px;
  max-width: 620px;
}

.brain-scan-simple .brain-scan-eyebrow {
  color: var(--scan-teal);
  font-size: 12px;
  font-weight: 950;
  letter-spacing: .14em;
  text-transform: uppercase;
}

.brain-scan-simple h2 {
  margin: 0;
  color: var(--scan-ink);
  font-size: clamp(25px, 3vw, 34px);
  font-weight: 950;
  line-height: 1.12;
}

.brain-scan-simple p {
  margin: 0;
  color: var(--scan-muted);
  font-size: 16px;
  font-weight: 750;
  line-height: 1.48;
}

.brain-scan-simple .brain-scan-note {
  color: var(--scan-muted);
  font-size: 15px;
}

.brain-scan-path {
  position: relative;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  align-items: start;
  width: min(760px, 100%);
  gap: clamp(18px, 5vw, 56px);
  padding: 12px 0 4px;
}

.brain-scan-path-line {
  position: absolute;
  z-index: 0;
  top: 64px;
  left: 16%;
  right: 16%;
  height: 2px;
  overflow: hidden;
  background: repeating-linear-gradient(90deg, rgba(13, 116, 108, .34) 0 5px, transparent 5px 10px);
}

.brain-scan-path-glow {
  position: absolute;
  inset: -5px auto -5px -18%;
  width: 20%;
  border-radius: 999px;
  background: linear-gradient(90deg, transparent, rgba(232, 200, 61, .95), transparent);
  animation: brainScanPathGlow 2500ms ease-in-out infinite;
}

.brain-scan-path-node {
  position: relative;
  z-index: 1;
  display: grid;
  justify-items: center;
  gap: 12px;
  color: var(--scan-ink);
  font-size: 14px;
  font-weight: 900;
}

.brain-scan-path-icon {
  position: relative;
  display: grid;
  place-items: center;
  width: clamp(78px, 11vw, 106px);
  height: clamp(78px, 11vw, 106px);
}

.brain-scan-path-icon svg {
  width: 100%;
  height: 100%;
  overflow: visible;
}

.brain-scan-path-icon rect,
.brain-scan-path-icon path {
  fill: #f8fbf8;
  stroke: #7f9290;
  stroke-width: 2.2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.brain-scan-path-icon path {
  fill: none;
}

.brain-scan-path-brain .brain-scan-path-icon {
  border-radius: 999px;
  background: #fff4c6;
}

.brain-scan-path-brain .brain-scan-path-icon svg {
  width: 76%;
  height: 76%;
}

.brain-scan-path-brain .brain-scan-path-icon path {
  stroke: var(--scan-ink);
}

.brain-scan-path-answer .brain-scan-path-icon path {
  stroke: var(--scan-teal);
}

.brain-scan-path-pages {
  animation: brainScanPageNudge 3200ms ease-in-out infinite;
}

.brain-scan-path-answer {
  animation: brainScanAnswerAppear 3200ms ease-in-out infinite;
}

.brain-scan-check {
  position: absolute;
  right: 18%;
  top: 58%;
  display: none;
  place-items: center;
  width: 25px;
  height: 25px;
  border-radius: 999px;
  background: var(--scan-teal);
  color: #fff;
  font-size: 15px;
  font-weight: 950;
  line-height: 1;
}

.brain-scan-complete .brain-scan-check {
  display: grid;
}

.brain-scan-complete .brain-scan-path-glow,
.brain-scan-recovery .brain-scan-path-glow {
  display: none;
}

.brain-scan-complete .brain-scan-path-line {
  background: repeating-linear-gradient(90deg, rgba(13, 116, 108, .38) 0 5px, transparent 5px 10px);
}

.brain-scan-recovery .brain-scan-path-line {
  background: repeating-linear-gradient(90deg, rgba(125, 130, 130, .35) 0 5px, transparent 5px 10px);
}

.brain-scan-recovery .brain-scan-path {
  opacity: .62;
}

.brain-scan-running-region {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: end;
  gap: 12px 18px;
  width: min(880px, 100%);
  margin-top: 2px;
  text-align: left;
}

.brain-scan-running-region[hidden],
.brain-scan-actions[hidden],
.brain-scan-note[hidden],
.brain-scan-latest-one[hidden],
.brain-scan-helper[hidden] {
  display: none;
}

.brain-scan-status-line {
  grid-column: 1 / -1;
  color: var(--scan-ink) !important;
  font-size: 17px !important;
  font-weight: 850 !important;
}

.brain-scan-progress-simple {
  height: 11px;
  overflow: hidden;
  border-radius: 999px;
  background: #eeeae3;
}

.brain-scan-progress-simple span {
  display: block;
  width: 0;
  height: 100%;
  border-radius: inherit;
  background: var(--scan-yellow);
  transition: width .35s ease;
}

.brain-scan-latest-one {
  grid-column: 1;
  color: var(--scan-teal) !important;
  font-size: 14px !important;
  font-weight: 850 !important;
}

.brain-scan-latest-one strong {
  color: var(--scan-teal);
}

.brain-scan-helper {
  grid-column: 1;
  color: #7a817e !important;
  font-size: 13px !important;
}

.brain-scan-simple .brain-scan-motion-toggle {
  grid-column: 2;
  grid-row: 2 / span 3;
  align-self: end;
  min-height: 42px;
  padding: 9px 15px;
  border: 1px solid #d6d9d6;
  border-radius: 6px;
  background: #fff;
  color: var(--scan-ink);
  font-size: 14px;
  font-weight: 900;
}

.brain-scan-simple .brain-scan-motion-toggle::before {
  content: "||";
  margin-right: 8px;
  letter-spacing: 1px;
}

.brain-scan-simple .brain-scan-motion-toggle[aria-pressed="true"]::before {
  content: ">";
}

.brain-scan-simple .brain-scan-actions {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 22px;
  margin-top: 6px;
}

.brain-scan-simple .brain-scan-actions [data-brain-cta-secondary-slot] {
  order: 1;
}

.brain-scan-simple .brain-scan-actions [data-brain-cta-primary-slot] {
  order: 2;
}

.brain-scan-simple .brain-scan-actions [data-brain-cta-tertiary-slot] {
  order: 3;
}

.brain-scan-simple .brain-scan-actions[hidden] {
  display: none;
}

.brain-scan-simple .brain-scan-actions .btn {
  min-width: 178px;
  min-height: 54px;
  justify-content: center;
  border-radius: 6px;
  background: #080808;
  color: #fff;
  font-size: 16px;
}

.brain-scan-simple .brain-scan-actions .btn.secondary {
  border-color: #171717;
  background: #fff;
  color: #111;
}

.brain-scan-simple .brain-scan-actions form {
  margin: 0;
}

.brain-scan-simple .brain-scan-actions > span {
  display: inline-flex;
}

.brain-scan-tertiary-actions {
  flex-basis: 100%;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 14px;
  margin-top: -4px;
}

.brain-scan-tertiary-actions[hidden] {
  display: none;
}

.brain-scan-tertiary-link {
  color: #0e756b;
  font-size: 14px;
  font-weight: 850;
  text-decoration: none;
}

.brain-scan-tertiary-link:hover,
.brain-scan-tertiary-link:focus-visible {
  text-decoration: underline;
  text-underline-offset: 3px;
}

.brain-scan-details {
  border-top: 1px solid #e0e2de;
  background: rgba(255, 255, 255, .76);
}

.brain-scan-dismiss-form,
.brain-overview-dismiss-form {
  position: absolute;
  top: 14px;
  right: 14px;
  z-index: 3;
  margin: 0;
}

.brain-scan-dismiss-button {
  display: inline-grid;
  place-items: center;
  width: 36px;
  height: 36px;
  border: 1px solid rgba(23, 32, 51, .18);
  border-radius: 999px;
  background: rgba(255, 255, 255, .88);
  color: #172033;
  font-size: 16px;
  font-weight: 950;
  line-height: 1;
  cursor: pointer;
  box-shadow: 0 8px 18px rgba(23, 32, 51, .08);
}

.brain-scan-dismiss-button:hover,
.brain-scan-dismiss-button:focus-visible {
  border-color: #172033;
  background: #fff;
  outline: 2px solid rgba(14, 117, 107, .2);
  outline-offset: 2px;
}

.brain-scan-dismiss-button.is-loading {
  gap: 0;
}

.brain-scan-dismiss-button.is-loading span:not(.loading-spinner) {
  display: none;
}

.brain-scan-dismiss-button.is-loading .loading-spinner {
  width: 16px;
  height: 16px;
}

.brain-scan-details summary {
  display: flex;
  align-items: center;
  justify-content: space-between;
  min-height: 52px;
  padding: 0 26px;
  color: var(--scan-ink);
  font-size: 14px;
  font-weight: 950;
  cursor: pointer;
}

.brain-scan-details summary::after {
  content: "⌄";
  color: #111;
  font-size: 22px;
  line-height: 1;
}

.brain-scan-details[open] summary::after {
  transform: rotate(180deg);
}

.brain-scan-details-body {
  display: grid;
  gap: 16px;
  padding: 0 26px 22px;
  text-align: left;
}

.brain-scan-detail-list {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(140px, 1fr));
  gap: 10px 18px;
  margin: 0;
}

.brain-scan-detail-list div {
  display: grid;
  gap: 3px;
}

.brain-scan-detail-list dt {
  color: #5f6765;
  font-size: 12px;
  font-weight: 900;
}

.brain-scan-detail-list dd {
  margin: 0;
  color: #111;
  font-size: 15px;
  font-weight: 850;
}

.brain-scan-admin-only {
  display: grid;
  gap: 8px;
}

.brain-scan-admin-only strong {
  font-size: 13px;
}

.brain-scan-admin-only ul {
  display: grid;
  gap: 6px;
  margin: 0;
  padding: 0;
  list-style: none;
  color: #5b6260;
  font-size: 13px;
}

.brain-scan-simple[data-motion-paused="true"] *,
.brain-scan-simple[data-brain-scan-status="completed"] *,
.brain-scan-simple[data-brain-scan-status="failed"] *,
.brain-scan-simple.brain-scan-recovery * {
  animation-play-state: paused !important;
}

.brain-scan-counts,
.brain-scan-stats,
.brain-scan-story-carousel,
.brain-scan-ready-cards,
.brain-scan-power-cards {
  display: none;
}

.admin-demo-menu {
  position: relative;
}

.admin-demo-menu summary {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  min-height: 42px;
  padding: 9px 14px;
  border: 1px solid #d9ded9;
  border-radius: 6px;
  background: #fff;
  color: #111;
  font-size: 14px;
  font-weight: 900;
  cursor: pointer;
  list-style: none;
}

.admin-demo-menu summary::-webkit-details-marker {
  display: none;
}

.admin-demo-menu summary::after {
  content: "⌄";
  font-size: 16px;
}

.admin-demo-menu[open] summary::after {
  transform: rotate(180deg);
}

.admin-demo-menu .training-admin-demo-actions {
  position: absolute;
  z-index: 20;
  right: 0;
  top: calc(100% + 8px);
  display: grid;
  gap: 8px;
  min-width: 220px;
  padding: 12px;
  border: 1px solid #d9ded9;
  border-radius: 8px;
  background: #fff;
  box-shadow: 0 16px 34px rgba(16, 24, 40, .12);
}

.admin-demo-menu .training-admin-demo-actions .btn {
  width: 100%;
  justify-content: center;
}

.admin-demo-menu .training-admin-demo-actions p {
  margin: 2px 0 0;
  color: #626b68;
  font-size: 12px;
  font-weight: 800;
}

.training-page-shell {
  display: grid;
  gap: 18px;
  min-height: calc(100vh - 86px);
  padding: 24px clamp(16px, 3vw, 34px) 46px;
  background: var(--warm-bg);
}

.training-page-top:not(.app-page-header),
.brain-page-shell .brain-scan-simple,
.brain-page-shell .public-web-research-panel,
.training-library-card,
.training-continue {
  width: min(100%, 1160px);
  margin-inline: auto;
}

.training-page-top:not(.app-page-header) {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  margin-top: 0;
  padding: 0;
  border: 0;
  background: transparent;
}

.training-page-top:not(.app-page-header) h1 {
  margin: 0;
  color: #111;
  font-size: clamp(30px, 4vw, 42px);
  font-weight: 950;
  line-height: 1.1;
}

.training-page-top:not(.app-page-header) .training-library-header-actions {
  justify-content: end;
}

.brain-page-shell .brain-scan-simple {
  margin-top: 0;
}

.public-web-research-panel {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  margin-top: 0;
  border: 1px solid #d8d2c4;
  border-radius: 8px;
  background: #fff;
}

.public-web-research-panel.is-complete {
  border-color: #b7d4c9;
  background: #f5fbf9;
}

.public-web-research-panel.is-failed {
  border-color: #e0b4a7;
  background: #fff8f5;
}

.public-web-research-eyebrow {
  margin: 0 0 4px;
  color: #5b6474;
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .04em;
  text-transform: uppercase;
}

.public-web-research-panel h2 {
  margin: 0;
  font-size: 20px;
}

.public-web-research-actions {
  display: flex;
  align-items: center;
  gap: 10px;
  flex-shrink: 0;
}

.public-web-research-spinner {
  width: 16px;
  height: 16px;
  border: 2px solid #d8d2c4;
  border-top-color: var(--brand-teal);
  border-radius: 999px;
  animation: spin 800ms linear infinite;
}

.public-web-citation-list {
  display: grid;
  gap: 8px;
  margin: 10px 0 0;
  padding-left: 22px;
}

.public-web-citation-list li {
  padding-left: 4px;
}

.public-web-citation-list span {
  display: block;
  color: #5b6474;
  font-size: 13px;
}

.training-library-card {
  margin-top: 0;
  overflow: hidden;
  border: 1px solid #e1ded7;
  border-radius: 8px;
  background: #fff;
}

.training-library-card .training-library-header {
  min-height: 66px;
  padding: 18px 24px;
  border-bottom: 1px solid #ece8dc;
  background: #fff;
}

.training-library-card .training-library-header h2 {
  font-size: 18px;
}

@keyframes brainScanPathGlow {
  from { transform: translateX(0); opacity: .25; }
  50% { opacity: 1; }
  to { transform: translateX(620%); opacity: .25; }
}

@keyframes brainScanPageNudge {
  0%, 100% { transform: translateX(0); }
  45% { transform: translateX(5px); }
}

@keyframes brainScanAnswerAppear {
  0%, 42% { opacity: .72; transform: translateY(2px); }
  70%, 100% { opacity: 1; transform: translateY(0); }
}

@media (max-width: 900px) {
  .training-page-top:not(.app-page-header) {
    display: grid;
    align-items: stretch;
  }

  .training-page-top:not(.app-page-header) .training-library-header-actions {
    justify-content: stretch;
  }

  .brain-scan-simple-main {
    padding: 28px 18px 20px;
  }

  .brain-scan-path {
    gap: 10px;
  }

  .brain-scan-path-line {
    top: 50px;
    left: 18%;
    right: 18%;
  }

  .brain-scan-running-region {
    grid-template-columns: 1fr;
    text-align: left;
  }

  .brain-scan-simple .brain-scan-motion-toggle {
    grid-column: 1;
    grid-row: auto;
    justify-self: end;
  }

  .admin-demo-menu .training-admin-demo-actions {
    right: auto;
    left: 0;
  }
}

@media (max-width: 640px) {
  .brain-scan-path {
    grid-template-columns: 1fr;
    gap: 18px;
    width: min(260px, 100%);
  }

  .brain-scan-path-line {
    top: 50px;
    bottom: 50px;
    left: 50%;
    right: auto;
    width: 2px;
    height: auto;
    background: repeating-linear-gradient(180deg, rgba(13, 116, 108, .32) 0 5px, transparent 5px 10px);
  }

  .brain-scan-path-glow {
    inset: -18% -5px auto -5px;
    width: auto;
    height: 18%;
    background: linear-gradient(180deg, transparent, rgba(232, 200, 61, .95), transparent);
    animation-name: brainScanPathGlowMobile;
  }

  .brain-scan-simple .brain-scan-actions {
    gap: 10px;
    width: 100%;
  }

  .brain-scan-simple .brain-scan-actions .btn {
    width: min(260px, 100%);
  }

  .brain-scan-details summary {
    padding-inline: 18px;
  }

  .brain-scan-details-body {
    padding-inline: 18px;
  }
}

@keyframes brainScanPathGlowMobile {
  from { transform: translateY(0); opacity: .25; }
  50% { opacity: 1; }
  to { transform: translateY(620%); opacity: .25; }
}

.assistant-workbench .assistant-public-preview {
  display: flex;
  flex-direction: column;
  height: 730px;
  min-height: 640px;
  max-height: calc(100vh - 220px);
  padding: 0;
  border-color: #d8d5c8;
  border-radius: 6px;
}

.assistant-workbench .assistant-public-preview .assistant-preview-topbar {
  min-height: 54px;
  border-top-color: var(--brand-yellow);
  background: var(--brand-teal);
}

.assistant-workbench .assistant-public-preview .assistant-preview-thread {
  min-height: 0;
  max-height: none;
  padding: 6px 16px 24px;
  border-left: 1px solid #ececec;
  border-right: 1px solid #ececec;
}

.assistant-workbench .assistant-public-preview .assistant-message-row {
  margin: 16px 0;
}

.assistant-workbench .assistant-public-preview .assistant-message-row.assistant {
  align-items: end;
}

.assistant-workbench .assistant-public-preview .assistant-message-row.user {
  grid-template-columns: minmax(0, 1fr);
}

.assistant-workbench .assistant-public-preview .assistant-message-row.user .bubble {
  max-width: min(54%, 310px);
  border: 0;
  border-radius: 10px;
  background: #cfe4e2;
  color: #172033;
}

.assistant-workbench .assistant-public-preview .assistant-avatar {
  align-self: end;
  width: 38px;
  height: 38px;
  font-size: 15px;
}

.assistant-workbench .assistant-public-preview .bubble {
  max-width: min(82%, 420px);
  padding: 18px 20px;
  border-radius: 8px;
  font-size: 18px;
  line-height: 1.42;
}

.assistant-workbench .assistant-public-preview .bubble:has(.source-summary[open]) {
  width: min(100%, 560px);
  max-width: 100%;
}

.assistant-workbench .assistant-public-preview .assistant-answer-actions {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  align-items: start;
  margin-top: 18px;
}

.assistant-workbench .assistant-public-preview .source-summary {
  min-width: 0;
  max-width: 100%;
  justify-self: end;
  text-align: left;
}

.assistant-workbench .assistant-public-preview .source-summary summary {
  min-height: 28px;
  font-size: 15px;
  letter-spacing: 0;
}

.assistant-workbench .assistant-public-preview .source-summary[open] {
  grid-column: 1 / -1;
  justify-self: stretch;
  width: 100%;
  margin-top: 6px;
  padding: 10px 12px;
  border: 1px solid #d9e1ea;
  border-radius: 6px;
  background: #f8fafc;
  text-align: left;
}

.assistant-workbench .assistant-public-preview .source-summary[open] summary {
  margin-bottom: 8px;
}

.assistant-workbench .assistant-public-preview .assistant-source-list {
  display: grid;
  gap: 4px;
  margin: 0;
  padding-left: 18px;
  color: #475467;
  font-size: 13px;
  line-height: 1.35;
  list-style: disc;
}

.assistant-workbench .assistant-public-preview .assistant-source-list li {
  min-width: 0;
  padding-left: 2px;
}

.assistant-workbench .assistant-public-preview .assistant-source-list .usage-source-link {
  max-width: 100%;
  min-height: 28px;
  padding: 0;
  text-align: left;
  color: var(--brand-teal);
  font-size: inherit;
  font-weight: 500;
  line-height: inherit;
}

.assistant-workbench .assistant-public-preview .source-summary p {
  margin: 8px 0 0;
  overflow-wrap: anywhere;
  color: #172033;
  font-size: 14px;
  line-height: 1.35;
}

.assistant-workbench .assistant-public-preview .source-summary p:first-of-type {
  margin-top: 0;
}

.assistant-workbench .assistant-public-preview .assistant-feedback-actions {
  gap: 16px;
}

.assistant-workbench .assistant-public-preview .icon-action {
  width: 30px;
  height: 30px;
  font-size: 22px;
}

.assistant-workbench .assistant-preview-footer {
  position: relative;
  bottom: auto;
  padding: 18px 14px 12px;
  background: #f7f9fb;
}

.assistant-workbench .assistant-starter-tray {
  display: none;
}

.assistant-workbench .assistant-public-preview .assistant-test-form {
  grid-template-columns: minmax(0, 1fr) 54px;
  gap: 10px;
}

.assistant-workbench .assistant-public-preview .assistant-test-form input {
  min-height: 64px;
  padding-inline: 14px;
  border-radius: 8px;
  font-size: 18px;
}

.assistant-workbench .assistant-public-preview .assistant-send-button {
  width: 54px;
  min-width: 54px;
  height: 54px;
  min-height: 54px;
  background: var(--brand-teal);
}

.assistant-corrections-feed {
  min-width: 0;
  overflow: hidden;
  border: 1px solid #e2dfcf;
  border-radius: 6px;
  background: #fbf9df;
}

.copy-status {
  align-self: center;
  grid-column: 1 / -1;
  min-height: 18px;
  color: var(--brand-teal);
  font-size: 13px;
  font-weight: 850;
}

.metric-value {
  display: block;
  margin: 0;
  color: var(--ink);
  font-size: 28px;
  font-weight: 900;
  line-height: 1.08;
}

.assistant-corrections-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  min-height: 58px;
  padding: 12px 20px;
  background: var(--brand-yellow);
}

.assistant-corrections-header h2 {
  margin: 0;
  font-size: 24px;
  line-height: 1.15;
}

.assistant-corrections-header span {
  display: grid;
  place-items: center;
  min-width: 22px;
  height: 22px;
  padding: 0 6px;
  border-radius: 999px;
  background: #000;
  color: #fff;
  font-size: 13px;
  font-weight: 950;
}

.assistant-correction-list {
  display: grid;
}

.assistant-correction-card {
  display: grid;
  gap: 16px;
  padding: 24px 20px 20px;
  border-bottom: 1px solid #dfdbc4;
  background: transparent;
}

.assistant-correction-card.is-resolved {
  background: #fff;
}

.assistant-correction-card:nth-child(-n+2).is-pending {
  background: #fbf9df;
}

.assistant-correction-card h3 {
  margin: 0;
  color: #111;
  font-size: 24px;
  line-height: 1.18;
}

.assistant-correction-lines {
  display: grid;
  gap: 10px;
}

.correction-line {
  display: grid;
  grid-template-columns: 18px minmax(0, 1fr);
  gap: 10px;
  margin: 0;
  padding: 9px 11px;
  border-radius: 4px;
  color: #6f7175;
  font-size: 17px;
  line-height: 1.28;
  overflow-wrap: anywhere;
}

.correction-line.bad {
  background: #ffe2e2;
}

.correction-line.suggested {
  background: rgba(255, 255, 255, .36);
}

.correction-line.good {
  color: #111;
}

.correction-line span {
  display: grid;
  place-items: center;
  width: 16px;
  height: 16px;
  margin-top: 2px;
  border-radius: 999px;
  color: #fff;
  font-size: 12px;
  font-weight: 950;
  line-height: 1;
}

.correction-line.bad span {
  background: #ff2525;
}

.correction-line.good span {
  background: #31b45b;
}

.correction-line.suggested span {
  background: #91969d;
}

.assistant-correction-form {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 58px;
  gap: 10px;
  align-items: center;
}

.assistant-correction-form[hidden] {
  display: none;
}

.assistant-correction-form label {
  min-width: 0;
}

.assistant-correction-form textarea {
  width: 100%;
  min-height: 64px;
  max-height: 180px;
  padding: 18px 20px;
  resize: vertical;
  border-radius: 8px;
  color: #111;
  font-size: 16px;
  font-weight: 650;
}

.assistant-correction-submit {
  display: grid;
  place-items: center;
  width: 58px;
  height: 58px;
  border: 0;
  border-radius: 999px;
  background: var(--brand-teal);
  color: #fff;
  font-size: 29px;
  font-weight: 950;
}

.assistant-correction-submit:disabled {
  opacity: .55;
}

.assistant-correction-meta {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  min-height: 26px;
  color: #9a998f;
  font-size: 11px;
  font-weight: 750;
}

.assistant-correction-actions {
  display: inline-flex;
  align-items: center;
  gap: 20px;
}

.assistant-correction-actions[hidden] {
  display: none;
}

.assistant-correction-actions form {
  margin: 0;
}

.assistant-correction-actions button {
  display: grid;
  place-items: center;
  width: 24px;
  height: 24px;
  padding: 0;
  border: 0;
  background: transparent;
  color: var(--brand-teal);
  cursor: pointer;
  font-size: 15px;
  line-height: 1;
}

.assistant-correction-actions button:hover,
.assistant-correction-actions button:focus-visible {
  color: #083f3b;
}

.assistant-correction-empty {
  padding: 28px 20px;
  background: #fff;
}

.assistant-correction-empty h3 {
  margin-top: 0;
}

.assistant-view-more {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  width: 100%;
  min-height: 72px;
  border: 0;
  background: #fff;
  color: #6d6f73;
  font-size: 16px;
  font-weight: 850;
  cursor: pointer;
}

.assistant-view-more[hidden] {
  display: none;
}

.assistant-corrections-feed:not(.show-all) .assistant-correction-card:nth-of-type(n+5) {
  display: none;
}

.assistant-view-more.is-expanded span {
  transform: rotate(180deg);
}

@media (max-width: 900px) {
  .assistant-workbench .assistant-first-header,
  .assistant-two-column {
    grid-template-columns: 1fr;
  }

  .assistant-workbench .assistant-install-button {
    justify-self: start;
  }

  .assistant-workbench .assistant-public-preview {
    min-height: 620px;
  }

  .assistant-workbench .assistant-public-preview .assistant-message-row.user .bubble,
  .assistant-workbench .assistant-public-preview .bubble {
    max-width: 100%;
  }

  .assistant-two-column {
    gap: 24px;
  }

  .app-sidebar a:not(.app-sidebar-logo) {
    position: relative;
    display: flex;
    justify-content: center;
    padding-inline: 44px;
    text-align: center;
  }

  .app-sidebar .sidebar-label,
  html.sidebar-collapsed .app-sidebar .sidebar-label {
    flex: 0 1 auto;
    width: auto;
    opacity: 1;
  }

  .app-sidebar .sidebar-notification-badge {
    position: absolute;
    top: 50%;
    right: 12px;
    margin-left: 0;
    transform: translateY(-50%);
  }
}

.settings-tabs {
  gap: 8px;
  margin-bottom: 18px;
  padding-bottom: 14px;
  border-bottom: 1px solid #ece8df;
}

.settings-tabs a {
  min-height: 42px;
  border-color: #d8d2c4;
  border-radius: 4px;
  color: #000;
  font-weight: 800;
}

.settings-tabs a.active {
  border-color: #000;
  background: var(--brand-yellow);
  color: #000;
}

.settings-tabs [aria-disabled="true"],
.settings-tabs .is-disabled {
  column-gap: 8px;
  cursor: not-allowed;
  opacity: .6;
}

.settings-tabs .is-disabled .tab-note,
.settings-tabs [aria-disabled="true"] .tab-note {
  display: inline-block;
  font-size: 11px;
  font-weight: 700;
  text-transform: uppercase;
  white-space: nowrap;
}

.tool-card-active {
  border-left-color: var(--brand-yellow);
}

.tool-card-soon {
  background: #fbfaf6;
}

.activity-item,
.activity-row,
.compact-row {
  border-top-color: #ece8df;
}

/* Authenticated app sidebar redesign. */
.app-sidebar .sidebar-link,
.app-sidebar .sidebar-group-toggle {
  display: flex;
  align-items: center;
  gap: 12px;
  width: 100%;
  min-width: 0;
  min-height: 48px;
  margin: 8px 0;
  padding: 11px 16px;
  border: 0;
  border-radius: 4px;
  background: transparent;
  color: #f4f1df;
  cursor: pointer;
  font: inherit;
  font-size: 15px;
  font-weight: 700;
  letter-spacing: 0;
  text-align: left;
  text-decoration: none;
}

.app-sidebar .sidebar-link.active,
.app-sidebar .sidebar-link:hover,
.app-sidebar .sidebar-link:focus-visible,
.app-sidebar .sidebar-group-toggle.active,
.app-sidebar .sidebar-group-toggle:hover,
.app-sidebar .sidebar-group-toggle:focus-visible {
  background: var(--brand-yellow);
  color: #000;
  outline: 0;
}

.app-sidebar .sidebar-icon {
  display: inline-grid;
  place-items: center;
  flex: 0 0 24px;
  width: 24px;
  height: 24px;
  color: currentColor;
}

.app-sidebar .sidebar-icon svg {
  width: 22px;
  height: 22px;
  fill: none;
  stroke: currentColor;
  stroke-linecap: round;
  stroke-linejoin: round;
  stroke-width: 1.8;
}

.app-sidebar .sidebar-label {
  min-width: 0;
  flex: 1 1 auto;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  text-align: left;
}

.sidebar-group {
  display: grid;
}

.sidebar-group-chevron {
  display: inline-block;
  flex: 0 0 auto;
  width: 9px;
  height: 9px;
  border-right: 2px solid currentColor;
  border-bottom: 2px solid currentColor;
  transform: rotate(45deg) translateY(-2px);
  transition: transform .16s ease;
}

.sidebar-group-toggle[aria-expanded="true"] .sidebar-group-chevron {
  transform: rotate(225deg) translateY(-1px);
}

.sidebar-submenu {
  display: grid;
  gap: 4px;
  margin: 0 0 8px 30px;
  padding: 3px 0 3px 15px;
  border-left: 2px solid var(--brand-yellow);
}

.sidebar-submenu[hidden] {
  display: none;
}

.app-sidebar .sidebar-submenu-link {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  min-height: 34px;
  margin: 0;
  padding: 7px 8px;
  border: 0;
  border-radius: 3px;
  background: transparent;
  color: #f4f1df;
  font: inherit;
  font-size: 14px;
  font-weight: 700;
  line-height: 1.25;
  text-align: left;
  text-decoration: none;
}

.app-sidebar .sidebar-submenu-link .sidebar-notification-badge {
  margin-left: auto;
}

.app-sidebar .sidebar-submenu-link:hover,
.app-sidebar .sidebar-submenu-link:focus-visible {
  background: rgba(255, 221, 0, .12);
  color: var(--brand-yellow);
  outline: 0;
}

.app-sidebar .sidebar-submenu-link.active {
  background: transparent;
  color: var(--brand-yellow);
}

.app-sidebar .sidebar-submenu .sidebar-submenu-link.active,
.app-sidebar .sidebar-submenu .sidebar-submenu-link.active:hover,
.app-sidebar .sidebar-submenu .sidebar-submenu-link.active:focus-visible {
  background: transparent;
  color: var(--brand-yellow);
}

.ai-system-map-page .app-page-container {
  --ai-map-green: #2ea86f;
  --ai-map-green-soft: #d7f1e2;
  --ai-map-amber: #f5b91f;
  --ai-map-red: #f45d5d;
  --ai-map-gray: #a5abb3;
  --ai-map-ink: #111827;
}

.ai-map-shell {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 340px;
  gap: 18px;
  align-items: stretch;
  min-width: 0;
}

.ai-map-workspace,
.ai-map-inspector {
  min-width: 0;
  border: 1px solid #e0ddd3;
  border-radius: 8px;
  background: #fff;
  box-shadow: 0 14px 30px rgba(17, 24, 39, .04);
}

.ai-map-workspace {
  overflow: hidden;
}

.ai-map-toolbar {
  display: flex;
  align-items: center;
  gap: 12px;
  min-height: 76px;
  padding: 16px 18px;
  border-bottom: 1px solid #e8e4dc;
  background: #fff;
}

.ai-map-toolbar-spacer {
  flex: 1 1 auto;
}

.ai-map-select,
.ai-map-segmented,
.ai-map-zoom {
  display: inline-flex;
  align-items: center;
  min-height: 46px;
  border: 1px solid #dedbd3;
  border-radius: 6px;
  background: #fff;
}

.ai-map-select {
  gap: 10px;
  padding: 0 12px;
}

.ai-map-select select {
  min-width: 210px;
  border: 0;
  background: transparent;
  color: #111827;
  font: inherit;
  font-weight: 800;
  outline: 0;
}

.ai-map-control-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 20px;
  height: 20px;
  color: currentColor;
}

.ai-map-control-icon svg,
.ai-map-node-icon svg {
  width: 100%;
  height: 100%;
  fill: none;
  stroke: currentColor;
  stroke-width: 2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.ai-map-segmented {
  overflow: hidden;
  padding: 3px;
}

.ai-map-segmented button,
.ai-map-zoom button,
.ai-map-zoom output {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 38px;
  border: 0;
  background: transparent;
  color: #111827;
  font: inherit;
  font-weight: 850;
}

.ai-map-segmented button {
  min-width: 58px;
  border-radius: 4px;
}

.ai-map-segmented button.active {
  background: var(--brand-yellow);
  box-shadow: inset 0 0 0 1px rgba(0, 0, 0, .08);
}

.ai-map-icon-button,
.ai-map-refresh-button {
  min-height: 46px;
  gap: 8px;
}

.ai-map-refresh-button {
  width: 52px;
  padding-inline: 0;
}

.ai-map-zoom {
  overflow: hidden;
}

.ai-map-zoom button {
  width: 48px;
  border-right: 1px solid #dedbd3;
  font-size: 22px;
}

.ai-map-zoom button:last-child {
  border-right: 0;
  border-left: 1px solid #dedbd3;
}

.ai-map-zoom output {
  width: 68px;
  font-size: 14px;
}

.ai-map-canvas {
  position: relative;
  min-height: 650px;
  overflow: hidden;
  background-color: #fffdf8;
  background-image: radial-gradient(#e7e2d8 1px, transparent 1px);
  background-size: 22px 22px;
}

.ai-map-plane {
  position: relative;
  width: 1040px;
  height: 690px;
  transform-origin: 0 0;
  transition: transform .16s ease;
}

.ai-map-edges {
  position: absolute;
  inset: 0;
  width: 1040px;
  height: 690px;
  overflow: visible;
}

.ai-map-edge {
  fill: none;
  stroke-linecap: round;
  stroke-linejoin: round;
  opacity: .96;
}

.ai-map-edge.is-healthy,
#ai-map-arrow-healthy path {
  stroke: var(--ai-map-green);
  fill: var(--ai-map-green);
}

.ai-map-edge.is-fallback,
#ai-map-arrow-fallback path {
  stroke: var(--ai-map-gray);
  fill: var(--ai-map-gray);
}

.ai-map-edge.is-warning,
#ai-map-arrow-warning path {
  stroke: var(--ai-map-amber);
  fill: var(--ai-map-amber);
  stroke-dasharray: 2 9;
}

.ai-map-edge.is-degraded,
#ai-map-arrow-degraded path,
.ai-map-edge.is-failing,
#ai-map-arrow-failing path {
  stroke: var(--ai-map-red);
  fill: var(--ai-map-red);
  stroke-dasharray: 2 8;
}

.ai-map-edge.is-idle,
#ai-map-arrow-idle path {
  stroke: #d4d0c7;
  fill: #d4d0c7;
}

.ai-map-edge-label {
  fill: var(--ai-map-green);
  font-size: 14px;
  font-weight: 850;
  paint-order: stroke;
  stroke: #fffdf8;
  stroke-width: 5px;
  text-anchor: middle;
}

.ai-map-edge-label.is-warning {
  fill: var(--ai-map-amber);
}

.ai-map-edge-label.is-degraded,
.ai-map-edge-label.is-failing {
  fill: var(--ai-map-red);
}

.ai-map-edge-label.is-fallback,
.ai-map-edge-label.is-idle {
  fill: #6b7280;
}

.ai-map-nodes {
  position: absolute;
  inset: 0;
}

.ai-map-node {
  position: absolute;
  display: grid;
  grid-template-columns: 42px minmax(0, 1fr) 10px;
  align-items: center;
  gap: 12px;
  width: 174px;
  min-height: 78px;
  padding: 14px 12px;
  border: 1px solid #e1ded6;
  border-radius: 8px;
  background: #fff;
  color: #111827;
  box-shadow: 0 10px 24px rgba(17, 24, 39, .07);
  text-align: left;
  transition: border-color .16s ease, box-shadow .16s ease, transform .16s ease;
}

.ai-map-node:hover,
.ai-map-node:focus-visible {
  border-color: #cdbb69;
  box-shadow: 0 12px 28px rgba(17, 24, 39, .12);
  outline: 0;
  transform: translateY(-1px);
}

.ai-map-node[aria-pressed="true"] {
  border-color: var(--brand-yellow);
  box-shadow: 0 0 0 3px rgba(219, 214, 109, .32), 0 14px 30px rgba(17, 24, 39, .09);
}

.ai-map-node-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 42px;
  height: 42px;
  border-radius: 999px;
  background: #f5d783;
  color: #172033;
}

.ai-map-node-copy {
  display: grid;
  gap: 2px;
  min-width: 0;
}

.ai-map-node-copy strong {
  color: #111827;
  font-size: 14px;
  font-weight: 900;
  line-height: 1.15;
}

.ai-map-node-copy span {
  color: #263238;
  font-size: 13px;
  font-weight: 700;
  line-height: 1.2;
}

.ai-map-node-dot {
  align-self: start;
  width: 10px;
  height: 10px;
  border-radius: 999px;
  background: var(--ai-map-green);
}

.ai-map-node.is-warning .ai-map-node-dot {
  background: var(--ai-map-amber);
}

.ai-map-node.is-degraded .ai-map-node-dot,
.ai-map-node.is-failing .ai-map-node-dot {
  background: var(--ai-map-red);
}

.ai-map-node.is-idle .ai-map-node-dot {
  background: #d4d0c7;
}

.ai-map-empty {
  position: absolute;
  top: 92px;
  left: 50%;
  z-index: 4;
  max-width: 420px;
  margin: 0;
  padding: 12px 16px;
  border: 1px solid #e0ddd3;
  border-radius: 6px;
  background: #fff;
  color: #3f4f4f;
  font-weight: 750;
  transform: translateX(-50%);
}

.ai-map-legend {
  position: absolute;
  left: 18px;
  bottom: 18px;
  z-index: 3;
  display: flex;
  flex-wrap: wrap;
  gap: 18px;
  align-items: center;
  padding: 11px 14px;
  border: 1px solid #e0ddd3;
  border-radius: 8px;
  background: #fff;
  box-shadow: 0 8px 20px rgba(17, 24, 39, .06);
}

.ai-map-legend-item {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  color: #3f4f4f;
  font-size: 13px;
  font-weight: 800;
}

.ai-map-legend-line {
  width: 28px;
  height: 3px;
  border-radius: 999px;
  background: var(--ai-map-green);
}

.ai-map-legend-item.is-fallback .ai-map-legend-line {
  background: var(--ai-map-gray);
}

.ai-map-legend-item.is-warning .ai-map-legend-line {
  background: var(--ai-map-amber);
}

.ai-map-legend-item.is-degraded .ai-map-legend-line {
  background: transparent;
  border-top: 4px dotted var(--ai-map-red);
}

.ai-map-minimap {
  position: absolute;
  right: 24px;
  bottom: 24px;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 170px;
  height: 92px;
  border: 1px solid #e0ddd3;
  border-radius: 8px;
  background: rgba(255, 255, 255, .8);
}

.ai-map-minimap-card {
  position: relative;
  width: 122px;
  height: 58px;
  border: 2px solid var(--brand-yellow);
  border-radius: 4px;
  background: rgba(219, 214, 109, .08);
}

.ai-map-minimap-card span {
  position: absolute;
  width: 18px;
  height: 18px;
  border-radius: 4px;
  background: #d4d0c7;
  opacity: .65;
}

.ai-map-minimap-card span:nth-child(1) { left: 8px; top: 21px; }
.ai-map-minimap-card span:nth-child(2) { left: 42px; top: 13px; }
.ai-map-minimap-card span:nth-child(3) { left: 68px; top: 34px; }
.ai-map-minimap-card span:nth-child(4) { right: 14px; top: 18px; }
.ai-map-minimap-card span:nth-child(5) { right: -44px; top: 18px; }

.ai-map-inspector {
  position: relative;
  display: grid;
  align-content: start;
  gap: 18px;
  padding: 24px;
}

.ai-map-inspector-close {
  position: absolute;
  top: 18px;
  right: 18px;
  border: 0;
  background: transparent;
  color: #111827;
  font-size: 24px;
  line-height: 1;
}

.ai-map-inspector-reset {
  justify-self: end;
  min-height: 34px;
  padding: 6px 10px;
  border: 1px solid #d9d6cc;
  border-radius: 6px;
  background: #fff;
  color: var(--brand-teal);
  font-size: 12px;
  font-weight: 900;
}

.ai-map-inspector-reset:hover,
.ai-map-inspector-reset:focus-visible {
  border-color: var(--brand-teal);
  text-decoration: underline;
  text-underline-offset: 3px;
}

.ai-map-inspector-heading {
  display: grid;
  grid-template-columns: 48px minmax(0, 1fr);
  align-items: center;
  gap: 14px;
  padding-right: 28px;
}

.ai-map-inspector h2,
.ai-map-inspector h3 {
  margin: 0;
  color: #111827;
  letter-spacing: 0;
}

.ai-map-inspector h2 {
  font-size: 20px;
  font-weight: 900;
}

.ai-map-inspector h3 {
  font-size: 14px;
  font-weight: 900;
}

.ai-map-status-row {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  align-items: center;
  margin-top: 10px;
}

.ai-map-status-pill {
  display: inline-flex;
  align-items: center;
  min-height: 28px;
  padding: 4px 12px;
  border-radius: 8px;
  background: var(--ai-map-green-soft);
  color: #17724d;
  font-size: 13px;
  font-weight: 900;
}

.ai-map-status-pill.is-warning {
  background: #fff2bd;
  color: #926300;
}

.ai-map-status-pill.is-degraded,
.ai-map-status-pill.is-failing {
  background: #ffe0e0;
  color: #a51f1f;
}

.ai-map-status-pill.is-idle,
.ai-map-status-pill.is-fallback {
  background: #edf0f2;
  color: #4b5563;
}

.ai-map-status-link {
  text-decoration: none;
}

.ai-map-status-link:hover,
.ai-map-status-link:focus-visible {
  text-decoration: underline;
  text-underline-offset: 3px;
}

.ai-map-inspector-description {
  margin: 0;
  padding-bottom: 18px;
  border-bottom: 1px solid #ece8df;
  color: #3f4f4f;
  font-weight: 650;
}

.ai-map-inspector-stats {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px 24px;
  padding-bottom: 18px;
  border-bottom: 1px solid #ece8df;
}

.ai-map-inspector-stats div,
.ai-map-provider-row,
.ai-map-recent-row {
  min-width: 0;
}

.ai-map-inspector-stats span {
  display: block;
  margin-bottom: 3px;
  font-size: 13px;
  font-weight: 850;
}

.ai-map-inspector-stats strong {
  display: block;
  color: #000;
  font-size: 26px;
  font-weight: 900;
  line-height: 1.1;
}

.ai-map-inspector-section {
  display: grid;
  gap: 10px;
  padding-bottom: 18px;
  border-bottom: 1px solid #ece8df;
}

.ai-map-provider-bar {
  display: flex;
  overflow: hidden;
  height: 11px;
  border-radius: 999px;
  background: #e5e7eb;
}

.ai-map-provider-bar span {
  min-width: 3px;
  background: var(--ai-map-green);
}

.ai-map-provider-bar .is-provider-gemini,
.ai-map-provider-bar .is-provider-anthropic {
  background: var(--ai-map-amber);
}

.ai-map-provider-bar .is-provider-unknown {
  background: var(--ai-map-gray);
}

.ai-map-provider-list,
.ai-map-recent-list {
  display: grid;
  gap: 9px;
}

.ai-map-provider-row,
.ai-map-recent-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 8px;
  align-items: center;
  color: #3f4f4f;
  font-size: 13px;
  font-weight: 750;
}

.ai-map-provider-row strong {
  color: #111827;
}

.ai-map-recent-row {
  grid-template-columns: minmax(0, 1fr) auto auto;
}

.ai-map-recent-row span:nth-child(2)::before {
  content: "";
  display: inline-block;
  width: 9px;
  height: 9px;
  margin-right: 8px;
  border-radius: 999px;
  background: var(--ai-map-green);
}

.ai-map-recent-row.is-fallback span:nth-child(2)::before,
.ai-map-recent-row.is-idle span:nth-child(2)::before {
  background: var(--ai-map-amber);
}

.ai-map-recent-row.is-failure span:nth-child(2)::before {
  background: var(--ai-map-red);
}

.ai-map-recent-row strong {
  color: #111827;
  font-weight: 900;
}

.ai-map-inspector-actions {
  margin-top: 2px;
}

.admin-filter-strip {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  align-items: center;
  margin: 0 0 18px;
  padding: 10px 12px;
  border: 1px solid #e6e2d8;
  border-radius: 8px;
  background: #fffdf7;
  color: #3f4f4f;
  font-size: 13px;
  font-weight: 800;
}

.admin-filter-strip strong,
.admin-filter-strip code {
  display: inline-flex;
  align-items: center;
  min-height: 26px;
  padding: 3px 8px;
  border-radius: 999px;
  background: #f2f4f7;
  color: #111827;
  font-size: 12px;
  font-weight: 900;
}

.admin-filter-strip a {
  margin-left: auto;
  color: var(--brand-teal);
  font-weight: 900;
}

.ai-map-noscript {
  margin: 16px;
}

@media (max-width: 1240px) {
  .ai-map-shell {
    grid-template-columns: 1fr;
  }

  .ai-map-inspector {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .ai-map-inspector-heading,
  .ai-map-inspector-description,
  .ai-map-inspector-stats,
  .ai-map-inspector-actions {
    grid-column: 1 / -1;
  }
}

@media (max-width: 900px) {
  .ai-map-toolbar {
    align-items: stretch;
    flex-wrap: wrap;
  }

  .ai-map-select,
  .ai-map-segmented,
  .ai-map-icon-button,
  .ai-map-zoom,
  .ai-map-refresh-button {
    width: 100%;
  }

  .ai-map-select select {
    min-width: 0;
    width: 100%;
  }

  .ai-map-segmented button,
  .ai-map-zoom button,
  .ai-map-zoom output {
    flex: 1 1 0;
  }

  .ai-map-canvas {
    min-height: 560px;
    overflow: auto;
  }

  .ai-map-plane {
    transform: scale(.74);
  }

  .ai-map-legend {
    position: sticky;
    left: 12px;
    bottom: 12px;
    width: max-content;
    max-width: calc(100vw - 52px);
  }

  .ai-map-minimap {
    display: none;
  }

  .ai-map-inspector {
    grid-template-columns: 1fr;
  }

  .ai-map-inspector-stats {
    grid-template-columns: 1fr;
  }
}

.sidebar-submenu-placeholder {
  width: 100%;
  cursor: not-allowed;
  opacity: .62;
}

.sidebar-submenu-placeholder span {
  color: rgba(244, 241, 223, .72);
  font-size: 11px;
  font-weight: 650;
  text-transform: uppercase;
}

.app-sidebar .sidebar-notification-badge {
  display: inline-grid;
  place-items: center;
  min-width: 22px;
  height: 22px;
  padding: 0 7px;
  border-radius: 999px;
  background: var(--brand-yellow);
  color: #000;
  font-size: 12px;
  font-weight: 900;
  line-height: 1;
}

.app-sidebar .sidebar-link.active .sidebar-notification-badge,
.app-sidebar .sidebar-link:hover .sidebar-notification-badge,
.app-sidebar .sidebar-group-toggle.active .sidebar-notification-badge,
.app-sidebar .sidebar-submenu-link.active .sidebar-notification-badge {
  background: #000;
  color: var(--brand-yellow);
}

.app-sidebar .sidebar-submenu-link.active .sidebar-notification-badge {
  border-color: #fff;
  background: #1587ff;
  color: #fff;
}

html.sidebar-collapsed .app-sidebar .sidebar-link,
html.sidebar-collapsed .app-sidebar .sidebar-group-toggle {
  justify-content: center;
  gap: 0;
  min-height: 46px;
  padding: 8px 5px;
  font-size: 0;
}

html.sidebar-collapsed .app-sidebar .sidebar-icon {
  flex-basis: 28px;
  width: 28px;
  height: 28px;
}

html.sidebar-collapsed .app-sidebar .sidebar-label,
html.sidebar-collapsed .app-sidebar .sidebar-group-chevron,
html.sidebar-collapsed .app-sidebar .sidebar-submenu,
html.sidebar-collapsed .app-sidebar .sidebar-notification-badge {
  display: none;
}

html.sidebar-collapsed .app-sidebar .sidebar-icon svg {
  width: 24px;
  height: 24px;
}

@media (max-width: 900px) {
  .app-sidebar a.sidebar-link,
  .app-sidebar button.sidebar-group-toggle {
    align-self: stretch;
    justify-content: flex-start;
    margin: 7px 0;
    padding: 12px 14px;
    font-size: 17px;
    text-align: left;
  }

  .app-sidebar .sidebar-submenu {
    margin-left: 26px;
    padding-left: 14px;
  }

  .app-sidebar a.sidebar-submenu-link {
    justify-content: flex-start;
    padding: 10px 12px;
    margin-left: 0;
    font-size: 15px;
    text-align: left;
  }

  .app-sidebar .sidebar-label,
  html.sidebar-collapsed .app-sidebar .sidebar-label {
    display: inline;
    flex: 1 1 auto;
    width: auto;
    opacity: 1;
  }

  html.sidebar-collapsed .app-sidebar .sidebar-link,
  html.sidebar-collapsed .app-sidebar .sidebar-group-toggle {
    justify-content: flex-start;
    gap: 12px;
    min-height: 48px;
    padding: 12px 14px;
    font-size: 17px;
  }

  html.sidebar-collapsed .app-sidebar .sidebar-icon {
    flex: 0 0 24px;
    width: 24px;
    height: 24px;
  }

  html.sidebar-collapsed .app-sidebar .sidebar-group-chevron {
    display: inline-block;
  }

  html.sidebar-collapsed .app-sidebar .sidebar-submenu:not([hidden]) {
    display: grid;
  }

  html.sidebar-collapsed .app-sidebar .sidebar-notification-badge {
    display: inline-grid;
  }
}

.bubble {
  border: 1px solid #e0ddd3;
  background: #fff;
  color: #000;
}

.bubble.user {
  border-color: #000;
  background: #000;
  color: #fff;
}

.lead-choice-card:has(input:checked),
.first-win-step.active {
  border-color: var(--brand-teal);
  background: #f5fbf9;
  box-shadow: inset 5px 0 0 var(--brand-teal);
}

.empty-state {
  border-style: dashed;
  background: #fbfaf6;
}

.confirm-layer,
.source-modal-layer {
  background: rgba(0, 0, 0, .54);
}

.confirm-dialog,
.source-modal {
  border: 1px solid #000;
  border-top: 8px solid var(--brand-yellow);
  border-radius: 8px;
  background: #fff;
  box-shadow: 0 28px 80px rgba(0, 0, 0, .28);
}

.confirm-dialog h2,
.source-modal-header h2 {
  color: #000;
  font-size: clamp(20px, 2.4vw, 26px);
  font-weight: 850;
  letter-spacing: 0;
}

.source-modal-header {
  align-items: center;
  padding-bottom: 14px;
  border-bottom: 3px solid #000;
}

.icon-btn {
  border: 1px solid #000;
  border-radius: 4px;
  background: #fff;
  color: #000;
  font-weight: 900;
}

.icon-btn:hover,
.icon-btn:focus-visible {
  background: #000;
  color: #fff;
}

.source-option-grid button {
  border-color: #d8d2c4;
  border-radius: 8px;
  background: #fff;
  color: #000;
}

.source-option-grid button:hover,
.source-option-grid button:focus-visible {
  border-color: var(--brand-teal);
  background: #f5fbf9;
}

.account-menu-panel,
.row-menu-panel {
  border-color: #e0ddd3;
  border-radius: 8px;
}

@media (max-width: 900px) {
  .app-main:not(.app-main-flush) {
    padding: 24px 16px 38px;
  }

  .has-app-sidebar .app-main:not(.app-main-flush) > .notice {
    margin-right: 0;
  }

  .page-header {
    display: grid;
    gap: 14px;
  }

  .app-page-header {
    gap: 14px;
    padding-bottom: 16px;
  }

  .app-page-header__main {
    display: grid;
    gap: 12px;
    padding-right: 0;
  }

  .app-page-header__copy,
  body.has-app-sidebar .app-page-container > :where(.app-page-header):first-child .app-page-header__copy,
  body.has-app-sidebar .app-page-container > * > :where(.app-page-header):first-child .app-page-header__copy {
    max-width: none;
  }

  .app-page-header__actions {
    justify-content: stretch;
  }

  .app-section-nav {
    gap: 8px;
  }

  .app-section-nav__link {
    flex: 1 1 140px;
    padding-inline: 12px;
  }

  .page-header .actions {
    justify-content: stretch;
  }

  .source-detail-actions {
    display: grid;
    gap: 8px;
  }

  .source-detail-actions .btn,
  .source-detail-actions form,
  .source-detail-actions form .btn,
  .source-detail-actions form button {
    width: 100%;
  }

  .page-header .actions .btn,
  .app-page-header__actions .btn,
  .app-page-header__actions form,
  .app-page-header__actions form .btn,
  .app-page-header__actions form button,
  .page-header form,
  .page-header form .btn,
  .page-header form button {
    width: 100%;
  }

  .app-main:not(.app-main-flush) > h1:first-child {
    font-size: 28px;
  }

  .app-main:not(.app-main-flush) > h1:first-child + .muted,
  .page-header .muted,
  .app-page-header .muted {
    font-size: 16px;
  }

  .app-main :where(.panel, .card, .status-tile, .source-card, .test-result, .mini-form, .knowledge-entry-form, .widget-preview, .next-panel, .readiness-panel) {
    padding: 18px;
  }

  .admin-panel-heading,
  .section-heading.compact,
  .tool-card-header {
    display: grid;
  }
}

.assistant-test-form {
  grid-template-columns: minmax(0, 1fr) auto auto;
  align-items: end;
}

.assistant-public-preview .assistant-test-form {
  grid-template-columns: minmax(0, 1fr) auto 44px;
}

.assistant-workbench .assistant-public-preview .assistant-test-form {
  grid-template-columns: minmax(0, 1fr) auto 54px;
}

.dictation-control {
  display: inline-flex;
  align-items: center;
  align-self: end;
  gap: 6px;
}

.dictation-button,
.dictation-accept,
.dictation-cancel {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 36px;
  min-width: 36px;
  height: 36px;
  border: 1px solid #cbd5e1;
  border-radius: 999px;
  background: #fff;
  color: var(--brand-teal);
  cursor: pointer;
  padding: 0;
}

.dictation-button svg,
.dictation-accept svg,
.dictation-cancel svg {
  width: 18px;
  height: 18px;
  fill: none;
  stroke: currentColor;
  stroke-linecap: round;
  stroke-linejoin: round;
  stroke-width: 2.4;
}

.dictation-recorder {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  min-height: 36px;
  padding: 3px 5px 3px 9px;
  border: 1px solid color-mix(in srgb, var(--brand-teal) 28%, #cbd5e1);
  border-radius: 999px;
  background: color-mix(in srgb, #fff 92%, var(--brand-teal) 8%);
}

.dictation-recorder[hidden] {
  display: none;
}

.dictation-bars {
  display: inline-flex;
  align-items: center;
  gap: 3px;
  height: 22px;
  color: var(--brand-teal);
}

.dictation-bars span {
  width: 4px;
  height: 14px;
  border-radius: 999px;
  background: currentColor;
  transform-origin: center;
  animation: bombyx-dictation-pulse .9s ease-in-out infinite;
}

.dictation-bars span:nth-child(2) { animation-delay: .08s; }
.dictation-bars span:nth-child(3) { animation-delay: .16s; }
.dictation-bars span:nth-child(4) { animation-delay: .24s; }
.dictation-bars span:nth-child(5) { animation-delay: .32s; }

@keyframes bombyx-dictation-pulse {
  0%, 100% { transform: scaleY(.45); opacity: .5; }
  50% { transform: scaleY(1.15); opacity: 1; }
}

.dictation-timer {
  min-width: 34px;
  color: #475569;
  font-size: 12px;
  font-weight: 800;
}

.dictation-accept {
  border-color: var(--brand-teal);
  background: var(--brand-teal);
  color: #fff;
}

.dictation-cancel {
  border-color: #d92d20;
  color: #d92d20;
}

.dictation-status {
  max-width: 160px;
  color: #64748b;
  font-size: 11px;
  line-height: 1.25;
}

.assistant-workbench .assistant-public-preview .assistant-test-form,
.app-main .assistant-public-preview .assistant-test-form {
  position: relative;
  grid-template-columns: minmax(0, 1fr);
  gap: 0;
}

.assistant-workbench .assistant-public-preview .assistant-test-form input,
.app-main .assistant-public-preview .assistant-test-form input {
  padding-right: 58px;
}

.assistant-workbench .assistant-public-preview .assistant-send-button,
.app-main .assistant-public-preview .assistant-send-button {
  position: absolute;
  right: 7px;
  top: 50%;
  transform: translateY(-50%);
  width: 44px;
  min-width: 44px;
  height: 44px;
  min-height: 44px;
}

.assistant-workbench .assistant-public-preview .assistant-send-button[hidden],
.app-main .assistant-public-preview .assistant-send-button[hidden] {
  display: none;
}

.assistant-public-preview .assistant-preview-meta {
  gap: 4px;
  font-size: 10px;
  line-height: 1.25;
}

.assistant-public-preview .assistant-preview-meta .assistant-ai-disclosure {
  flex: 1 1 auto;
  overflow: visible;
}

.assistant-public-preview .assistant-preview-meta .assistant-powered-link {
  flex: 0 0 auto;
  font-size: 10px;
}

@media (max-width: 620px) {
  .assistant-test-form {
    grid-template-columns: minmax(0, 1fr) auto;
  }

  .dictation-control {
    grid-column: 1 / -1;
    justify-content: flex-end;
  }
}

@media (prefers-reduced-motion: reduce) {
  .dictation-bars span {
    animation: none;
    opacity: .75;
  }
}

.voicecodex-shell {
  display: flex;
  flex-direction: column;
  gap: 18px;
  max-width: 1180px;
  margin: 0 auto;
}

.voicecodex-shell [hidden] {
  display: none !important;
}

.voicecodex-header {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 16px;
  padding: 18px;
  border: 1px solid rgba(24, 34, 48, .1);
  border-radius: 8px;
  background: #fff;
}

.voicecodex-header h1 {
  margin: 0;
  font-size: clamp(2rem, 4vw, 2.8rem);
}

.voicecodex-pair-actions {
  display: grid;
  justify-items: end;
  gap: 8px;
  max-width: 320px;
  text-align: right;
}

.voicecodex-download-button {
  text-decoration: none;
}

.voicecodex-status-row,
.voicecodex-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.voicecodex-status-chip {
  display: inline-flex;
  align-items: center;
  min-height: 36px;
  padding: 7px 12px;
  border: 1px solid rgba(24, 34, 48, .12);
  border-radius: 999px;
  background: #f8fafc;
  color: #172033;
  font-size: .9rem;
  font-weight: 700;
}

.voicecodex-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(320px, .72fr);
  gap: 16px;
}

.voicecodex-panel {
  border: 1px solid rgba(24, 34, 48, .12);
  border-radius: 8px;
  background: #fff;
  padding: 18px;
  box-shadow: 0 10px 26px rgba(15, 23, 42, .06);
  min-width: 0;
}

.voicecodex-header > *,
.voicecodex-panel > *,
.voicecodex-task-list article > *,
.voicecodex-log-item > * {
  min-width: 0;
}

.voicecodex-hero-panel {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  min-height: 240px;
  background: #111827;
  color: #fff;
}

.voicecodex-orb {
  width: min(52vw, 190px);
  aspect-ratio: 1;
  border: 2px solid rgba(255, 255, 255, .36);
  border-radius: 50%;
  background: #facc15;
  color: #111827;
  font-size: 1.15rem;
  font-weight: 900;
  cursor: pointer;
  box-shadow: 0 22px 55px rgba(250, 204, 21, .35);
}

.voicecodex-orb.is-live {
  background: #34d399;
  box-shadow: 0 0 0 12px rgba(52, 211, 153, .18), 0 22px 55px rgba(52, 211, 153, .35);
}

.voicecodex-warning {
  margin: 12px 0 0;
  color: #fde68a;
  text-align: center;
}

.voicecodex-demo-banner {
  margin: 0;
  padding: 12px 14px;
  border: 1px solid rgba(180, 83, 9, .28);
  border-radius: 8px;
  background: #fffbeb;
  color: #854d0e;
  font-weight: 700;
}

.voicecodex-episode p,
.voicecodex-task-card p {
  font-size: 1.05rem;
  line-height: 1.55;
}

.voicecodex-markdown {
  white-space: pre-wrap;
  color: #475569;
  font-size: .9rem;
  overflow-wrap: anywhere;
}

.voicecodex-details {
  margin-top: 12px;
}

.voicecodex-details summary {
  cursor: pointer;
  color: #0f766e;
  font-weight: 850;
}

.voicecodex-details .voicecodex-markdown {
  margin-top: 10px;
}

.voicecodex-task-id {
  font-weight: 900;
  color: #475569;
  overflow-wrap: anywhere;
}

.voicecodex-log,
.voicecodex-task-list {
  display: grid;
  gap: 10px;
  max-height: 340px;
  overflow: auto;
}

.voicecodex-log-item,
.voicecodex-task-list article {
  display: grid;
  gap: 3px;
  padding: 10px 12px;
  border: 1px solid rgba(24, 34, 48, .1);
  border-radius: 8px;
  background: #f8fafc;
  overflow-wrap: anywhere;
}

.voicecodex-status-chip,
.voicecodex-episode p,
.voicecodex-task-card p,
.voicecodex-task-card h2,
.voicecodex-task-list strong {
  overflow-wrap: anywhere;
}

.voicecodex-audio-sink {
  display: none;
}

.voicecodex-manual-form {
  display: grid;
  position: static;
  inset: auto;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 10px;
  padding: 10px;
  border: 1px solid rgba(24, 34, 48, .14);
  border-radius: 8px;
  background: rgba(255, 255, 255, .96);
  box-shadow: 0 16px 40px rgba(15, 23, 42, .12);
}

.voicecodex-manual-form input {
  min-height: 48px;
  border: 1px solid rgba(24, 34, 48, .16);
  border-radius: 8px;
  padding: 0 14px;
  font-size: 1rem;
}

@media (max-width: 860px) {
  .voicecodex-header,
  .voicecodex-grid {
    display: flex;
    flex-direction: column;
  }

  .voicecodex-pair-actions {
    justify-items: start;
    max-width: none;
    text-align: left;
  }

  .voicecodex-hero-panel {
    min-height: 250px;
  }
}

@media (max-width: 560px) {
  .voicecodex-shell {
    gap: 14px;
  }

  .voicecodex-header h1 {
    font-size: 2rem;
  }

  .voicecodex-panel {
    padding: 14px;
  }

  .voicecodex-manual-form {
    left: 10px;
    right: 10px;
    grid-template-columns: 1fr;
  }
}
.edit-responses-shell {
  display: grid;
  grid-template-columns: minmax(280px, 360px) minmax(0, 1fr);
  min-height: calc(100vh - 130px);
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #f8faf9;
  overflow: hidden;
}

.edit-responses-inbox {
  display: grid;
  align-content: start;
  gap: 16px;
  padding: 18px;
  border-right: 1px solid var(--line);
  background: #fff;
}

.edit-test-chat-button,
.edit-response-composer .btn {
  width: 100%;
}

.edit-response-search {
  width: 100%;
  min-height: 42px;
  border: 1px solid var(--line);
  border-radius: 8px;
  padding: 9px 12px;
  background: #fbfbf8;
}

.edit-responses-title-block h1 {
  margin: 0;
  font-size: 22px;
}

.edit-responses-title-block p,
.edit-response-empty,
.edit-response-header p {
  margin: 4px 0 0;
  color: #667085;
  font-size: 13px;
  line-height: 1.35;
}

.edit-response-list-section,
.edit-response-list {
  display: grid;
  gap: 8px;
}

.edit-response-list-section h2 {
  margin: 4px 0 0;
  color: #4b5563;
  font-size: 12px;
  letter-spacing: 0;
  text-transform: uppercase;
}

.edit-response-item {
  display: grid;
  gap: 4px;
  min-width: 0;
  padding: 11px 12px;
  border: 1px solid #ece5ad;
  border-radius: 8px;
  background: #fffdf0;
  color: #111827;
  text-decoration: none;
}

.edit-response-item.resolved {
  border-color: #e5e7eb;
  background: #fff;
}

.edit-response-item.active {
  border-color: #d8b300;
  box-shadow: inset 3px 0 0 #f5c84b;
}

.edit-response-item span {
  overflow-wrap: anywhere;
  font-weight: 850;
  line-height: 1.25;
}

.edit-response-item small {
  color: #667085;
}

.edit-response-detail {
  position: relative;
  display: grid;
  grid-template-rows: auto auto minmax(0, 1fr) auto;
  min-width: 0;
  background: #fbfbf8;
}

.edit-response-actionbar {
  position: sticky;
  top: 0;
  z-index: 2;
  display: flex;
  justify-content: flex-end;
  gap: 10px;
  padding: 12px 16px;
  border-bottom: 1px solid var(--line);
  background: rgba(255, 255, 255, .94);
  backdrop-filter: blur(8px);
}

.edit-response-actionbar form,
.edit-response-proposal-actions form {
  margin: 0;
}

.edit-response-header {
  padding: 18px 22px 8px;
}

.edit-response-header h2 {
  margin: 0;
  max-width: 780px;
  font-size: 22px;
  overflow-wrap: anywhere;
}

.edit-response-header a {
  display: inline-flex;
  margin-top: 8px;
  color: #0f766e;
  font-weight: 850;
  text-decoration: none;
}

.edit-response-thread {
  display: grid;
  align-content: start;
  gap: 14px;
  min-height: 360px;
  padding: 12px 22px 22px;
  overflow: auto;
}

.edit-response-bubble-row {
  display: flex;
  justify-content: flex-start;
}

.edit-response-bubble-row.user {
  justify-content: flex-end;
}

.edit-response-bubble {
  width: min(720px, 82%);
  padding: 13px 15px;
  border: 1px solid #e5e7eb;
  border-radius: 8px;
  background: #fff;
  box-shadow: 0 8px 22px rgba(15, 23, 42, .05);
}

.edit-response-bubble-row.user .edit-response-bubble {
  width: min(560px, 72%);
  border-color: #d8e6df;
  background: #f0faf6;
}

.edit-response-bubble strong {
  display: block;
  margin-bottom: 5px;
  font-size: 12px;
  color: #475467;
}

.edit-response-bubble p,
.edit-response-proposal-card p,
.edit-response-success-card p {
  margin: 0;
  white-space: pre-wrap;
  overflow-wrap: anywhere;
}

.edit-response-bubble.loading {
  border-color: #eadc8d;
  background: #fff8d7;
}

.edit-response-proposal-card,
.edit-response-success-card,
.edit-response-no-selection {
  display: grid;
  gap: 12px;
  width: min(760px, 100%);
  padding: 18px;
  border: 1px solid #d8e6df;
  border-radius: 8px;
  background: #fff;
  box-shadow: 0 12px 28px rgba(15, 23, 42, .07);
}

.edit-response-proposal-card ul {
  margin: 0;
  padding-left: 20px;
}

.edit-response-proposal-card li {
  margin: 6px 0;
  overflow-wrap: anywhere;
}

.edit-response-proposal-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}

.edit-response-success-card {
  border-color: #b7dfc6;
  background: #effbf4;
}

.edit-response-success-card h3 {
  margin: 0;
}

.edit-response-success-card.muted-card {
  border-color: #e5e7eb;
  background: #fff;
}

.edit-response-composer {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 10px;
  padding: 14px 16px;
  border-top: 1px solid var(--line);
  background: #fff;
}

.edit-response-composer > input[type="hidden"],
.edit-response-composer > .sr-only,
.edit-response-composer > .dictation-control {
  display: none !important;
}

.edit-response-composer .edit-composer-plus {
  grid-column: 1;
}

.edit-response-composer textarea {
  grid-column: 2;
}

.edit-response-composer .edit-composer-send {
  grid-column: 3;
}

.edit-response-composer textarea {
  width: 100%;
  min-height: 52px;
  max-height: 150px;
  resize: vertical;
  border-radius: 8px;
}

.edit-response-no-selection {
  align-self: center;
  justify-self: center;
}

@media (max-width: 900px) {
  .edit-responses-shell {
    grid-template-columns: 1fr;
  }

  .edit-responses-inbox {
    border-right: 0;
    border-bottom: 1px solid var(--line);
  }

  .edit-response-detail {
    min-height: 620px;
  }
}

@media (max-width: 560px) {
  .edit-responses-shell {
    min-height: auto;
    border-radius: 0;
    border-inline: 0;
  }

  .edit-response-actionbar,
  .edit-response-proposal-actions {
    flex-direction: column;
    align-items: stretch;
  }

  .edit-response-actionbar .btn,
  .edit-response-proposal-actions .btn {
    width: 100%;
  }

  .edit-response-composer {
    grid-template-columns: 1fr;
  }

  .edit-response-header,
  .edit-response-thread {
    padding-inline: 14px;
  }

  .edit-response-bubble,
  .edit-response-bubble-row.user .edit-response-bubble {
    width: 100%;
  }
}

.edit-responses-main {
  max-width: none;
  padding: 0;
  background: #f7f6f0;
}

.edit-responses-main .edit-responses-shell {
  --edit-yellow: #ead94d;
  --edit-yellow-strong: #dfc922;
  --edit-yellow-soft: #fffbe1;
  --edit-bg: #f7f6f0;
  --edit-panel: #fffefa;
  --edit-line: #dedbd1;
  --edit-muted: #666b73;
  --edit-blue: #dbeafe;
  display: grid;
  grid-template-columns: minmax(278px, 360px) minmax(0, 1fr);
  min-height: calc(100vh - 92px);
  height: calc(100vh - 92px);
  border: 0;
  border-radius: 0;
  background: var(--edit-bg);
  overflow: hidden;
}

.edit-responses-main .edit-responses-inbox {
  display: grid;
  align-content: start;
  gap: 14px;
  padding: 18px 16px;
  border-right: 1px solid var(--edit-line);
  background: #fffdf7;
  overflow-y: auto;
}

.edit-test-chat-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  width: 100%;
  min-height: 42px;
  border: 0;
  border-radius: 6px;
  background: var(--edit-yellow);
  color: #171717;
  font-size: 14px;
  font-weight: 850;
  cursor: pointer;
  box-shadow: inset 0 -1px 0 rgba(0, 0, 0, .08);
}

.edit-response-search-wrap {
  position: relative;
}

.edit-responses-main .edit-response-search {
  width: 100%;
  min-height: 38px;
  border: 1px solid var(--edit-line);
  border-radius: 6px;
  padding: 8px 12px 8px 34px;
  background: #fff;
  color: #1f2937;
  font-size: 12px;
}

.edit-response-search-wrap .edit-icon {
  position: absolute;
  left: 11px;
  top: 50%;
  color: #9aa1aa;
  transform: translateY(-50%);
}

.edit-responses-main .edit-responses-title-block h1 {
  margin: 4px 0 0;
  color: #0f1115;
  font-size: 22px;
  font-weight: 900;
  line-height: 1.1;
}

.edit-responses-main .edit-responses-title-block p {
  max-width: 285px;
  margin: 7px 0 0;
  color: #4f5662;
  font-size: 12px;
  line-height: 1.35;
}

.edit-responses-main .edit-response-list-section {
  display: grid;
  gap: 8px;
}

.edit-responses-main .edit-response-list-section h2 {
  margin: 10px 0 1px;
  color: #5b6470;
  font-size: 11px;
  font-weight: 850;
  letter-spacing: .02em;
  text-transform: uppercase;
}

.edit-responses-main .edit-response-list {
  display: grid;
  gap: 9px;
}

.edit-responses-main .edit-response-item {
  display: grid;
  grid-template-columns: 24px minmax(0, 1fr) 14px;
  align-items: center;
  gap: 9px;
  min-width: 0;
  min-height: 52px;
  padding: 8px 10px;
  border: 1px solid #ead36b;
  border-radius: 6px;
  background: var(--edit-yellow-soft);
  color: #121418;
  text-decoration: none;
  box-shadow: 0 1px 0 rgba(15, 23, 42, .03);
}

.edit-responses-main .edit-response-item.active {
  border-color: #d4b900;
  background: #fff7c8;
  box-shadow: inset 3px 0 0 var(--edit-yellow-strong), 0 1px 0 rgba(15, 23, 42, .03);
}

.edit-responses-main .edit-response-item.is-loading,
.edit-responses-main .edit-response-detail.is-loading {
  cursor: progress;
  opacity: .72;
}

.edit-responses-main .edit-response-item.resolved {
  border-color: #d9dbdf;
  background: #fff;
  color: #5c6672;
}

.edit-review-card-copy {
  display: grid;
  gap: 2px;
  min-width: 0;
}

.edit-review-card-copy strong {
  color: inherit;
  font-size: 12px;
  font-weight: 900;
  line-height: 1.2;
  overflow-wrap: anywhere;
}

.edit-review-card-copy small {
  color: #69717c;
  font-size: 10px;
  line-height: 1.2;
  overflow-wrap: anywhere;
}

.edit-review-status-icon,
.edit-success-icon {
  display: inline-grid;
  place-items: center;
  width: 22px;
  height: 22px;
  border: 1px solid #e0cd65;
  border-radius: 50%;
  background: #fff8cf;
  color: #665900;
}

.edit-response-item.resolved .edit-review-status-icon,
.edit-success-icon {
  border-color: #a9d8b5;
  background: #e8f7eb;
  color: #26813d;
}

.edit-review-status-icon::before {
  content: "";
  display: block;
  width: 10px;
  height: 10px;
  border: 2px solid currentColor;
  border-radius: 50%;
}

.edit-review-status-icon[data-icon="pencil"]::before {
  width: 11px;
  height: 11px;
  border: 0;
  border-radius: 0;
  background: currentColor;
  clip-path: polygon(78% 0, 100% 22%, 36% 86%, 10% 92%, 16% 66%);
}

.edit-response-item.resolved .edit-review-status-icon::before {
  width: 11px;
  height: 6px;
  border: 0;
  border-left: 2px solid currentColor;
  border-bottom: 2px solid currentColor;
  border-radius: 0;
  transform: rotate(-45deg) translateY(-1px);
}

.edit-review-chevron {
  display: inline-grid;
  place-items: center;
  width: 18px;
  height: 18px;
  color: currentColor;
  opacity: .65;
}

.edit-review-chevron svg {
  width: 18px;
  height: 18px;
  fill: none;
  stroke: currentColor;
  stroke-width: 2.2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.edit-response-empty {
  margin: 0;
  padding: 10px 2px;
  color: #78808b;
  font-size: 12px;
}

.edit-responses-main .edit-response-detail {
  display: grid;
  grid-template-rows: auto auto minmax(0, 1fr) auto;
  min-width: 0;
  background:
    radial-gradient(circle at 8% 14%, rgba(255, 255, 255, .78), transparent 30%),
    var(--edit-bg);
  overflow: hidden;
}

.edit-response-actionbar {
  display: flex;
  justify-content: flex-start;
  gap: 9px;
  padding: 18px 28px 4px;
  border: 0;
  background: transparent;
  backdrop-filter: none;
}

.edit-response-actionbar form,
.edit-response-proposal-actions form {
  margin: 0;
}

.edit-action-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 7px;
  min-width: 142px;
  min-height: 34px;
  border: 1px solid var(--edit-line);
  border-radius: 5px;
  padding: 6px 13px;
  color: #20242a;
  font-size: 12px;
  font-weight: 850;
  line-height: 1;
  cursor: pointer;
}

.edit-action-button.primary {
  border-color: #d4c23e;
  background: var(--edit-yellow);
}

.edit-action-button.secondary {
  background: #fff;
}

.edit-action-button:disabled {
  border-color: #d9d5ca;
  background: #f4f1e8;
  color: #a5a095;
  cursor: default;
}

.edit-response-header {
  display: grid;
  gap: 5px;
  max-width: 660px;
  padding: 22px 28px 14px;
}

.edit-response-date {
  margin: 0;
  color: #68707b;
  font-size: 11px;
}

.edit-response-header h2 {
  margin: 0;
  color: #111318;
  font-size: 22px;
  font-weight: 900;
  line-height: 1.15;
  overflow-wrap: anywhere;
}

.edit-response-header p:not(.edit-response-date) {
  margin: 0;
  color: #606875;
  font-size: 12px;
}

.edit-response-header a {
  display: inline-flex;
  width: max-content;
  color: #111318;
  font-size: 12px;
  font-weight: 850;
  text-decoration: none;
}

.edit-response-thread {
  display: grid;
  align-content: start;
  gap: 13px;
  min-height: 0;
  padding: 4px 28px 22px;
  overflow-y: auto;
}

.edit-source-context {
  --edit-source-context-body-size: 14px;
  --edit-source-context-body-line-height: 1.45;
  --edit-source-context-label-size: 12px;
  --edit-source-context-label-line-height: 1.25;
  display: grid;
  gap: 8px;
  width: min(620px, 100%);
  margin-bottom: 4px;
  padding: 12px 14px;
  border: 1px solid #e5dfc4;
  border-radius: 7px;
  background: rgba(255, 255, 255, .74);
}

.edit-source-context-label {
  color: #7a6510;
  font-size: var(--edit-source-context-label-size);
  font-weight: 900;
  line-height: var(--edit-source-context-label-line-height);
  text-transform: uppercase;
}

.edit-source-context p {
  display: grid;
  gap: 2px;
  margin: 0;
  color: #2a2f37;
  font-size: var(--edit-source-context-body-size);
  line-height: var(--edit-source-context-body-line-height);
  overflow-wrap: anywhere;
}

.edit-source-context strong {
  color: #667085;
  font-size: var(--edit-source-context-label-size);
  line-height: var(--edit-source-context-label-line-height);
  text-transform: uppercase;
}

.edit-response-bubble-row {
  display: flex;
  align-items: flex-start;
  justify-content: flex-start;
  gap: 10px;
}

.edit-response-bubble-row.user {
  justify-content: flex-end;
}

.edit-response-avatar {
  flex: 0 0 auto;
  display: inline-grid;
  place-items: center;
  width: 24px;
  height: 24px;
  margin-top: 6px;
  border-radius: 50%;
  background: #14161a;
  color: #fff;
  font-size: 12px;
  font-weight: 900;
}

.edit-response-bubble {
  width: min(520px, 82%);
  padding: 14px 16px;
  border: 0;
  border-radius: 7px;
  background: #fff;
  color: #20242a;
  box-shadow: 0 10px 24px rgba(18, 22, 28, .06);
}

.edit-response-bubble-row.user .edit-response-bubble {
  width: min(500px, 74%);
  background: var(--edit-blue);
}

.edit-response-bubble p,
.edit-response-proposal-card p,
.edit-response-success-card p {
  margin: 0;
  color: inherit;
  font-size: 14px;
  line-height: 1.45;
  white-space: pre-wrap;
  overflow-wrap: anywhere;
}

.edit-response-bubble.loading {
  display: flex;
  align-items: center;
  gap: 13px;
  width: min(470px, 82%);
  background: #fff;
}

.edit-loading-spinner {
  flex: 0 0 auto;
  width: 22px;
  height: 22px;
  border: 3px dotted #111318;
  border-radius: 50%;
  animation: edit-spin 1.1s linear infinite;
}

@keyframes edit-spin {
  to { transform: rotate(360deg); }
}

.edit-response-proposal-card,
.edit-response-success-card,
.edit-response-no-selection {
  display: grid;
  gap: 13px;
  width: min(560px, 100%);
  margin-left: 34px;
  padding: 17px 19px;
  border: 1px solid #d9d3bf;
  border-radius: 7px;
  background: #fff;
  box-shadow: 0 10px 24px rgba(18, 22, 28, .06);
}

.edit-response-proposal-card ul {
  margin: 0;
  padding-left: 22px;
}

.edit-response-proposal-card li {
  margin: 7px 0;
  color: #20242a;
  font-size: 13px;
  line-height: 1.35;
  overflow-wrap: anywhere;
}

.edit-response-proposal-actions {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 140px), 1fr));
  gap: 9px;
  margin-top: 3px;
  min-width: 0;
}

.edit-response-proposal-actions form,
.edit-response-post-add-actions form {
  min-width: 0;
}

.edit-response-proposal-actions .edit-action-button,
.edit-response-post-add-actions .edit-action-button {
  width: 100%;
  min-width: 0;
  white-space: normal;
  overflow-wrap: anywhere;
  text-align: center;
}

.edit-response-success-card {
  grid-template-columns: 34px minmax(0, 1fr);
  align-items: center;
  border-color: #b8ddc0;
  background: #eaf9ee;
  color: #17642a;
}

.edit-response-success-card h3 {
  margin: 0 0 4px;
  color: #17642a;
  font-size: 17px;
}

.edit-response-lesson-link {
  display: inline-flex;
  width: fit-content;
  max-width: 100%;
  margin: 0 0 8px;
  color: #14592b;
  font-size: 13px;
  font-weight: 850;
  overflow-wrap: anywhere;
}

.edit-response-followup {
  display: grid;
  gap: 10px;
  margin-top: 12px;
  min-width: 0;
}

.edit-response-post-add-actions {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 130px), 1fr));
  gap: 9px;
  min-width: 0;
}

.edit-response-success-card.muted-card {
  border-color: #d9dbdf;
  background: #fff;
  color: #4b5563;
}

.edit-response-success-card.muted-card h3 {
  color: #303741;
}

.edit-response-composer {
  display: grid;
  grid-template-columns: 30px minmax(0, 1fr) 34px;
  align-items: end;
  gap: 8px;
  margin: 0 22px 20px;
  padding: 10px;
  border: 1px solid #d8d2bf;
  border-radius: 7px;
  background: rgba(255, 255, 255, .9);
  box-shadow: 0 12px 28px rgba(18, 22, 28, .06);
}

.edit-response-composer textarea {
  width: 100%;
  min-height: 66px;
  max-height: 160px;
  border: 0;
  border-radius: 0;
  padding: 8px 2px;
  background: transparent;
  color: #20242a;
  font-size: 14px;
  line-height: 1.4;
  resize: vertical;
}

.edit-response-composer textarea:focus {
  outline: 0;
}

.edit-composer-plus,
.edit-composer-send {
  display: inline-grid;
  place-items: center;
  border: 0;
  border-radius: 50%;
  cursor: pointer;
}

.edit-composer-plus {
  width: 28px;
  height: 28px;
  background: transparent;
  color: #22272f;
  font-size: 22px;
  line-height: 1;
}

.edit-composer-send {
  width: 32px;
  height: 32px;
  background: var(--edit-yellow);
  color: #171717;
}

.edit-icon {
  position: relative;
  display: inline-block;
  width: 14px;
  height: 14px;
}

.edit-icon-pencil {
  background: currentColor;
  clip-path: polygon(78% 0, 100% 22%, 36% 86%, 10% 92%, 16% 66%);
}

.edit-icon-search {
  border: 2px solid currentColor;
  border-radius: 50%;
}

.edit-icon-search::after {
  content: "";
  position: absolute;
  width: 6px;
  height: 2px;
  background: currentColor;
  transform: translate(9px, 10px) rotate(45deg);
}

.edit-icon-send {
  background: currentColor;
  clip-path: polygon(0 7%, 100% 50%, 0 93%, 18% 56%, 57% 50%, 18% 44%);
}

.edit-responses-main .edit-responses-shell {
  height: calc(100svh - 130px);
  max-height: calc(100svh - 130px);
}

.edit-responses-main .edit-response-chat {
  --bombyx-assistant-accent: var(--training-assistant-brand-color, #10212d);
  --bombyx-assistant-accent-text: var(--training-assistant-text-color, #fbfaf6);
  --bombyx-assistant-background: #fbfaf6;
  --bombyx-assistant-text: #123047;
  --bombyx-assistant-radius: 10px;
  grid-template-rows: auto auto minmax(0, 1fr) auto;
  border: 0;
  border-radius: 0;
  background: var(--bombyx-assistant-background);
  color: var(--bombyx-assistant-text);
}

.edit-response-chat .edit-response-header {
  grid-row: 1;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  max-width: none;
  min-height: 60px;
  padding: 12px 16px;
  border-bottom: 3px solid var(--brand-yellow);
  background: var(--bombyx-assistant-accent);
  color: var(--bombyx-assistant-accent-text);
}

.edit-response-header .edit-response-mobile-back {
  display: none;
}

.edit-response-header-copy {
  display: grid;
  gap: 2px;
  min-width: 0;
}

.edit-response-header-copy strong,
.edit-response-header-copy span {
  display: block;
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.edit-response-header-copy strong {
  color: inherit;
  font-size: 13px;
  font-weight: 950;
}

.edit-response-header-copy span {
  color: rgba(251, 250, 246, .72);
  font-size: 11px;
  font-weight: 800;
}

.edit-response-header-actions,
.edit-response-header-actions form {
  display: flex;
  align-items: center;
  gap: 8px;
  margin: 0;
}

.edit-response-chat .bombyx-assistant__icon-button {
  display: inline-grid;
  place-items: center;
  width: 38px;
  height: 38px;
  border: 0;
  border-radius: 50%;
  background: rgba(255, 255, 255, .12);
  color: var(--bombyx-assistant-accent-text);
  font-size: 18px;
  font-weight: 900;
  line-height: 1;
  text-decoration: none;
  cursor: pointer;
}

.edit-response-chat .bombyx-assistant__icon-button:hover,
.edit-response-chat .bombyx-assistant__icon-button:focus-visible {
  background: rgba(255, 221, 0, .18);
  outline: 2px solid rgba(255, 221, 0, .45);
  outline-offset: 2px;
}

.edit-response-chat .edit-response-actionbar {
  grid-row: 2;
  justify-content: flex-start;
  gap: 9px;
  padding: 10px 16px;
  border-bottom: 1px solid rgba(18, 48, 71, .12);
  background: #fffdf0;
}

.edit-response-chat .edit-response-actionbar[hidden] {
  display: none;
}

.edit-response-chat .edit-action-button {
  min-height: 34px;
  border-radius: 7px;
  box-shadow: none;
}

.edit-response-chat .edit-response-thread {
  grid-row: 3;
  display: grid;
  align-content: start;
  gap: 12px;
  min-height: 0;
  min-width: 0;
  padding: 16px 16px 18px;
  overflow-y: auto;
  overflow-x: hidden;
  background: var(--bombyx-assistant-background);
}

.edit-response-review-card,
.edit-source-context {
  display: grid;
  gap: 7px;
  width: min(100%, 720px);
  box-sizing: border-box;
  margin: 0;
  padding: 14px 16px;
  border: 1px solid rgba(18, 48, 71, .13);
  border-radius: 10px;
  background: rgba(255, 255, 255, .94);
  color: var(--bombyx-assistant-text);
  overflow-wrap: anywhere;
  box-shadow: none;
}

.edit-response-review-card h2 {
  margin: 0;
  color: var(--bombyx-assistant-text);
  font-size: 21px;
  font-weight: 950;
  line-height: 1.12;
  overflow-wrap: anywhere;
}

.edit-response-review-card p {
  margin: 0;
  color: rgba(18, 48, 71, .78);
  font-size: 12px;
  line-height: 1.35;
}

.edit-response-chat .edit-source-context-label {
  color: #6a6411;
}

.edit-response-chat .edit-response-bubble-row {
  display: grid;
  grid-template-columns: 28px minmax(0, 1fr);
  gap: 10px;
  align-items: start;
  justify-content: stretch;
}

.edit-response-chat .edit-response-bubble-row.user {
  grid-template-columns: minmax(0, 1fr);
}

.edit-response-chat .edit-response-avatar {
  width: 24px;
  height: 24px;
  margin-top: 2px;
  background: #20364b;
  color: #fff;
  font-size: 12px;
}

.edit-response-chat .edit-response-bubble {
  width: auto;
  max-width: min(82%, 720px);
  padding: 13px 15px;
  border: 1px solid rgba(18, 48, 71, .12);
  border-radius: 10px;
  background: rgba(255, 255, 255, .96);
  color: var(--bombyx-assistant-text);
  box-shadow: none;
}

.edit-response-chat .edit-response-bubble-row.user .edit-response-bubble,
.edit-response-chat .bombyx-assistant__bubble--user {
  justify-self: end;
  max-width: min(68%, 560px);
  border-color: rgba(103, 132, 83, .25);
  background: rgba(184, 204, 145, .72);
}

.edit-response-chat .edit-response-bubble.loading {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  width: auto;
}

.edit-response-chat .edit-loading-spinner {
  width: 20px;
  height: 20px;
  border-color: #20364b;
}

.edit-response-chat .edit-response-proposal-card,
.edit-response-chat .edit-response-success-card {
  width: min(100%, 640px);
  margin-left: 34px;
  border-radius: 10px;
  box-shadow: none;
}

.edit-response-chat .edit-response-composer {
  grid-row: 4;
  display: grid;
  grid-template-columns: 1fr;
  gap: 8px;
  margin: 0;
  padding: 10px 12px 8px;
  border: 0;
  border-top: 1px solid rgba(18, 48, 71, .12);
  border-radius: 0;
  background: var(--bombyx-assistant-background);
  box-shadow: none;
}

.edit-response-chat .edit-response-input-row {
  display: grid;
  grid-template-columns: 34px minmax(0, 1fr) 34px 38px;
  grid-template-rows: minmax(78px, auto) 34px;
  gap: 0 8px;
  align-items: end;
  min-height: 112px;
  padding: 12px;
  border: 1px solid rgba(18, 48, 71, .18);
  border-radius: 8px;
  background: rgba(255, 255, 255, .42);
}

.edit-response-chat .edit-response-composer textarea {
  grid-column: 1 / -1;
  grid-row: 1 / 3;
  min-height: 96px;
  max-height: 180px;
  padding: 4px 92px 38px 4px;
  border: 0;
  border-radius: 0;
  background: transparent;
  color: var(--bombyx-assistant-text);
  resize: none;
}

.edit-response-chat .edit-response-attachment-tray,
.edit-response-chat .bombyx-assistant__bubble-attachments {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.edit-response-chat .edit-response-attachment-tray {
  min-height: 0;
}

.edit-response-chat .edit-response-attachment-tray[hidden] {
  display: none;
}

.edit-response-chat .bombyx-assistant__attachment-preview {
  position: relative;
  flex: 0 0 auto;
  width: 58px;
  height: 58px;
  overflow: hidden;
  border: 1px solid rgba(18, 48, 71, .18);
  border-radius: 8px;
  background: rgba(255, 255, 255, .62);
}

.edit-response-chat .bombyx-assistant__attachment-preview--bubble {
  width: 64px;
  height: 64px;
  margin-top: 8px;
}

.edit-response-chat .bombyx-assistant__attachment-preview-image {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.edit-response-chat .bombyx-assistant__attachment-preview-remove {
  position: absolute;
  top: 3px;
  right: 3px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 20px;
  height: 20px;
  border: 0;
  border-radius: 50%;
  background: rgba(15, 23, 42, .78);
  color: #fff;
  cursor: pointer;
  font: 700 14px/1 system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

.edit-response-chat .bombyx-assistant__attachment-preview-spinner {
  position: absolute;
  inset: 0;
  display: none;
  align-items: center;
  justify-content: center;
  background: rgba(15, 23, 42, .34);
}

.edit-response-chat .bombyx-assistant__attachment-preview-spinner::after {
  content: "";
  width: 20px;
  height: 20px;
  border: 2px solid rgba(255, 255, 255, .55);
  border-top-color: #fff;
  border-radius: 50%;
  animation: bombyx-assistant-attachment-spin .8s linear infinite;
}

.edit-response-chat .bombyx-assistant__attachment-preview-status {
  position: absolute;
  left: -9999px;
  width: 1px;
  height: 1px;
  overflow: hidden;
}

.edit-response-chat .bombyx-assistant__attachment-preview[data-status="sending"] .bombyx-assistant__attachment-preview-spinner {
  display: flex;
}

.edit-response-chat .bombyx-assistant__attachment-preview--bubble .bombyx-assistant__attachment-preview-remove {
  display: none;
}

.edit-response-chat .bombyx-assistant__attachment-error {
  color: #b42318;
  font-size: 12px;
  line-height: 1.35;
}

@keyframes bombyx-assistant-attachment-spin {
  to {
    transform: rotate(360deg);
  }
}

.edit-response-chat .edit-composer-plus,
.edit-response-chat .edit-composer-send,
.edit-response-chat .dictation-control {
  position: relative;
  z-index: 1;
  grid-row: 2;
}

.edit-response-chat .edit-composer-plus {
  grid-column: 1;
  justify-self: start;
  background: transparent;
  color: var(--bombyx-assistant-text);
}

.edit-response-chat .edit-composer-send {
  grid-column: 4;
  justify-self: end;
  width: 34px;
  height: 34px;
  background: #d5d943;
  color: #10212d;
}

.edit-response-chat .dictation-control {
  grid-column: 3;
  justify-self: end;
  display: inline-grid;
  place-items: center;
  width: 34px;
  min-width: 34px;
  height: 34px;
  margin: 0;
}

.edit-response-chat .dictation-button,
.edit-response-chat .dictation-accept,
.edit-response-chat .dictation-cancel {
  width: 34px;
  height: 34px;
  border: 0;
  border-radius: 50%;
  background: transparent;
  color: var(--bombyx-assistant-text);
  box-shadow: none;
}

.edit-response-chat .dictation-button:hover,
.edit-response-chat .dictation-button:focus-visible {
  background: rgba(18, 48, 71, .08);
}

.edit-response-chat .dictation-recorder {
  position: absolute;
  right: 0;
  bottom: 0;
  width: max-content;
  max-width: min(280px, calc(100vw - 32px));
  border-color: rgba(18, 48, 71, .16);
  background: rgba(255, 255, 255, .92);
  box-shadow: 0 12px 28px rgba(18, 48, 71, .12);
}

.edit-response-chat .dictation-status {
  position: absolute;
  right: 0;
  bottom: 38px;
  width: max-content;
  max-width: min(260px, calc(100vw - 32px));
  color: rgba(18, 48, 71, .72);
  text-align: right;
}

.edit-response-chat .edit-response-footer-meta {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  color: rgba(18, 48, 71, .62);
  font-size: 11px;
  line-height: 1.2;
}

.edit-response-no-selection {
  align-self: center;
  justify-self: center;
  margin: 0;
}

.edit-response-modal[hidden] {
  display: none;
}

.edit-response-modal {
  position: fixed;
  inset: 0;
  z-index: 1200;
  display: grid;
  place-items: center;
  padding: 20px;
  background: rgba(16, 33, 45, .42);
}

.edit-response-modal__panel {
  width: min(420px, 100%);
  padding: 22px;
  border: 1px solid rgba(16, 33, 45, .12);
  border-radius: 8px;
  background: #fff;
  box-shadow: 0 24px 70px rgba(16, 33, 45, .22);
}

.edit-response-modal__panel h2 {
  margin: 0 0 8px;
  color: #10212d;
  font-size: 20px;
  line-height: 1.2;
}

.edit-response-modal__panel p {
  margin: 0;
  color: rgba(16, 33, 45, .72);
  line-height: 1.45;
}

.edit-response-modal__actions {
  display: flex;
  justify-content: flex-end;
  gap: 10px;
  margin-top: 20px;
}

@media (max-width: 900px) {
  .approved-fixes-table .training-library-head {
    display: none;
  }

  .approved-fixes-table .training-library-row {
    grid-template-columns: minmax(0, 1fr);
  }

  .approved-fixes-table .training-source-name,
  .approved-fixes-table .training-source-updated,
  .approved-fixes-table .training-source-actions {
    min-width: 0;
    width: 100%;
  }

  .edit-responses-main .edit-responses-shell {
    grid-template-columns: 1fr;
    grid-template-rows: minmax(0, 1fr);
    min-height: calc(100svh - 131px);
    height: calc(100svh - 131px);
    overflow: hidden;
  }

  .edit-responses-main .edit-responses-shell[data-has-selected-review="true"] {
    position: fixed;
    inset: 0;
    z-index: 1000;
    height: 100svh;
    max-height: 100svh;
    min-height: 100svh;
    border: 0;
    border-radius: 0;
  }

  .edit-responses-main .edit-responses-shell[data-has-selected-review="true"] .edit-responses-inbox {
    display: none;
  }

  .edit-responses-main .edit-responses-shell[data-has-selected-review="true"] .edit-response-detail {
    min-height: 100svh;
    overflow: hidden;
  }

  .edit-responses-main .edit-responses-shell[data-has-selected-review="false"] .edit-response-detail {
    display: none;
  }

  .edit-responses-main .edit-responses-inbox {
    min-height: 0;
    border-right: 0;
    overflow-y: auto;
  }

  .edit-response-header .edit-response-mobile-back {
    display: inline-grid;
    place-items: center;
    flex: 0 0 38px;
    width: 38px;
    height: 38px;
    border-radius: 50%;
    background: rgba(255, 255, 255, .12);
    color: var(--bombyx-assistant-accent-text);
    font-size: 22px;
    font-weight: 900;
    line-height: 1;
    text-decoration: none;
  }

  .edit-response-header .edit-response-mobile-back:hover,
  .edit-response-header .edit-response-mobile-back:focus-visible {
    background: rgba(255, 221, 0, .18);
    outline: 2px solid rgba(255, 221, 0, .45);
    outline-offset: 2px;
  }

  .edit-response-actionbar {
    padding-top: 20px;
  }
}

@media (max-width: 560px) {
  .edit-responses-main .edit-responses-inbox {
    padding: 14px 12px;
  }

  .edit-response-actionbar {
    display: grid;
    grid-template-columns: 1fr 1fr;
    padding: 16px 12px 8px;
  }

  .edit-action-button {
    min-width: 0;
    width: 100%;
  }

  .edit-response-header,
  .edit-response-thread {
    padding-inline: 12px;
  }

  .edit-response-chat .edit-response-header {
    gap: 10px;
  }

  .edit-response-header-copy {
    flex: 1 1 auto;
  }

  .edit-response-header h2 {
    font-size: 18px;
  }

  .edit-response-bubble,
  .edit-response-bubble-row.user .edit-response-bubble,
  .edit-response-bubble.loading {
    width: calc(100% - 34px);
  }

  .edit-response-proposal-card,
  .edit-response-success-card {
    box-sizing: border-box;
    width: 100%;
    max-width: 100%;
    margin-left: 0;
  }

  .edit-response-chat .edit-response-proposal-card,
  .edit-response-chat .edit-response-success-card {
    width: 100%;
    max-width: 100%;
    margin-left: 0;
  }

  .edit-response-proposal-actions,
  .edit-response-post-add-actions {
    grid-template-columns: 1fr;
  }

  .edit-response-composer {
    margin: 0 12px 16px;
  }
}
/* MVP app navigation and dashboard helpers */
.account-menu-context {
  display: grid;
  gap: 7px;
  padding: 7px 9px 10px;
  border-bottom: 1px solid #eef0f3;
  border-top: 1px solid #eef0f3;
  color: #344054;
}

.account-menu-user,
.account-menu-context span {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.account-menu-user {
  display: block;
  padding: 8px 9px 4px;
  color: #344054;
  font-weight: 800;
}

.account-menu-context span {
  color: #667085;
  font-size: 13px;
  font-weight: 650;
}

.account-organization-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: 8px;
}

.account-menu-panel {
  width: min(86vw, 300px);
}

.account-organization-link {
  overflow: hidden;
  color: #667085;
  font-size: 13px;
  font-weight: 750;
  text-decoration: none;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.account-organization-link:hover,
.account-organization-link:focus-visible {
  color: var(--brand-teal);
  text-decoration: underline;
  text-underline-offset: 3px;
}

.account-org-menu {
  position: relative;
}

.account-org-menu summary {
  display: inline-grid;
  place-items: center;
  width: 34px;
  height: 34px;
  padding: 0;
  border: 1px solid #d8d2c4;
  border-radius: 6px;
  background: #fff;
  color: #344054;
  cursor: pointer;
  list-style: none;
}

.account-org-menu summary::-webkit-details-marker {
  display: none;
}

.account-org-menu summary svg {
  width: 18px;
  height: 18px;
  fill: none;
  stroke: currentColor;
  stroke-linecap: round;
  stroke-linejoin: round;
  stroke-width: 1.9;
}

.account-org-menu summary:hover,
.account-org-menu summary:focus-visible {
  border-color: var(--brand-teal);
  color: var(--brand-teal);
  outline: 0;
}

.account-org-list {
  position: absolute;
  right: 0;
  top: calc(100% + 6px);
  z-index: 60;
  display: grid;
  gap: 3px;
  width: min(78vw, 280px);
  max-height: 320px;
  margin: 0;
  padding: 7px;
  overflow-y: auto;
  border: 1px solid #e0ddd3;
  border-radius: 8px;
  background: #fff;
  box-shadow: 0 18px 42px rgba(17, 24, 39, .13);
}

.account-org-list button.active,
.account-org-list button:disabled {
  background: #f3f1eb;
  color: #111827;
  cursor: default;
}

.mvp-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  align-items: start;
  gap: 18px;
}

.mvp-grid.two {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.home-overview-grid {
  grid-template-columns: minmax(0, 1fr);
}

.home-brain-hero-image {
  display: grid;
  justify-items: center;
  margin-top: -4px;
}

.home-brain-hero-image img {
  display: block;
  width: 100%;
  aspect-ratio: 1400 / 525;
  height: auto;
  object-fit: contain;
}

.mvp-card {
  display: grid;
  gap: 14px;
  min-width: 0;
}

.mvp-card-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  margin-bottom: 0;
}

.mvp-card-header h2,
.mvp-card-header h3 {
  margin: 0;
}

.mvp-stat-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
  gap: 12px;
  margin-bottom: 0;
}

.mvp-stat {
  display: grid;
  gap: 6px;
  min-width: 0;
  padding: var(--app-card-padding);
  border: 1px solid #e5e1d7;
  border-radius: 8px;
  background: #fff;
  text-decoration: none;
}

.mvp-stat span {
  color: #667085;
  font-size: 13px;
  font-weight: 750;
}

.mvp-stat strong {
  color: #111827;
  font-size: 22px;
  line-height: 1.1;
  overflow-wrap: anywhere;
}

.mvp-stat-link:hover,
.mvp-stat-link:focus-visible {
  border-color: var(--brand-teal);
  background: #f5fbf9;
  outline: 0;
}

.mvp-card-footer-action {
  justify-self: start;
  margin-top: 2px;
}

.assistant-subnav {
  margin-top: -4px;
  margin-bottom: 14px;
  padding-bottom: 0;
  border-bottom: 0;
}

.conversation-list,
.lead-list {
  display: grid;
  gap: 10px;
}

.conversation-row,
.lead-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: 14px;
  min-height: 68px;
  padding: 14px 18px;
  border-top: 1px solid #ece8df;
}

.conversation-row:first-child,
.lead-row:first-child {
  border-top: 0;
}

.conversation-row > div,
.lead-row > div {
  display: grid;
  min-width: 0;
  gap: 4px;
}

.conversation-row strong,
.lead-row strong {
  overflow-wrap: anywhere;
}

.conversation-row a,
.lead-row a {
  white-space: nowrap;
  font-weight: 800;
}

.conversation-row .conversation-title-link,
.lead-row .conversation-title-link {
  justify-self: start;
  color: var(--brand-teal);
  line-height: 1.25;
  text-decoration: underline;
  text-underline-offset: 3px;
  white-space: normal;
  overflow-wrap: anywhere;
}

.mvp-card h3 {
  margin: 0;
  font-size: 17px;
  line-height: 1.25;
}

.mvp-card .conversation-row,
.mvp-card .lead-row {
  min-height: 58px;
  padding: 12px 14px;
}

.assistant-dashboard-main {
  max-width: none;
}

.assistant-dashboard-status-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 18px;
  margin-bottom: 18px;
}

.assistant-status-card {
  display: grid;
  grid-template-columns: 54px minmax(0, 1fr);
  align-items: center;
  gap: 16px;
  min-width: 0;
  min-height: 96px;
  padding: 18px 20px;
  border: 1px solid #e5e1d7;
  border-radius: 8px;
  background: #fff;
  color: #111827;
  text-decoration: none;
}

.assistant-status-card h2 {
  margin: 0;
  font-size: 18px;
  line-height: 1.25;
  overflow-wrap: anywhere;
}

.assistant-status-card p {
  margin: 4px 0 0;
  color: #667085;
  font-weight: 650;
  overflow-wrap: anywhere;
}

.assistant-status-link {
  transition: border-color .16s ease, box-shadow .16s ease, transform .16s ease;
}

.assistant-status-link:hover,
.assistant-status-link:focus-visible {
  border-color: var(--brand-teal);
  box-shadow: 0 14px 28px rgba(10, 20, 20, .08);
  outline: 0;
  transform: translateY(-1px);
}

.assistant-status-icon {
  display: inline-grid;
  place-items: center;
  width: 48px;
  height: 48px;
  border-radius: 999px;
}

.assistant-status-icon svg {
  width: 25px;
  height: 25px;
  fill: none;
  stroke: currentColor;
  stroke-width: 2.2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.assistant-status-icon-active {
  background: radial-gradient(circle at 30% 28%, #d8f7ef, #008b80);
  color: #fff;
}

.assistant-status-icon-idle {
  background: #f3f1eb;
  color: #475467;
}

.assistant-status-icon-flag {
  background: #fff0a8;
  color: #111827;
}

.assistant-status-icon-usage {
  background: #dbf5ef;
  color: var(--brand-teal);
}

.assistant-status-icon-testing {
  background: #f3f1eb;
  color: var(--brand-teal);
}

.assistant-testing-link-url {
  color: var(--brand-teal);
  overflow-wrap: anywhere;
  text-decoration: underline;
  text-underline-offset: 2px;
}

.assistant-home-dashboard-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  align-items: stretch;
  gap: 18px;
  margin-bottom: 18px;
}

.assistant-dashboard-panel {
  min-width: 0;
  overflow: hidden;
}

.assistant-chart-panel {
  max-height: 350px;
}

.assistant-chart-panel .assistant-panel-heading {
  margin-bottom: 10px;
}

.assistant-panel-heading {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  margin-bottom: 18px;
}

.assistant-panel-heading h2 {
  margin: 0;
  font-size: 22px;
  line-height: 1.2;
}

.assistant-table-wrap {
  width: 100%;
  overflow-x: auto;
}

.assistant-mobile-list {
  display: none;
}

.assistant-dashboard-table {
  width: 100%;
  min-width: 480px;
  table-layout: fixed;
  border-collapse: collapse;
  background: #fff;
}

.assistant-dashboard-table th {
  padding: 0 0 10px;
  border-bottom: 1px solid #e5e1d7;
  color: #667085;
  font-size: 13px;
  text-align: left;
  text-transform: none;
  letter-spacing: 0;
}

.assistant-dashboard-table td {
  min-width: 0;
  padding: 14px 0;
  border-bottom: 1px solid #ece8df;
  color: #172033;
  vertical-align: middle;
  overflow-wrap: anywhere;
}

.assistant-dashboard-table tr:last-child td {
  border-bottom: 0;
}

.assistant-dashboard-table tr[data-assistant-row-link],
.assistant-mobile-row[data-assistant-row-link] {
  cursor: pointer;
}

.assistant-dashboard-table tr[data-assistant-row-link]:hover td,
.assistant-dashboard-table tr[data-assistant-row-link]:focus-visible td,
.assistant-mobile-row[data-assistant-row-link]:hover,
.assistant-mobile-row[data-assistant-row-link]:focus-visible {
  background: #fbfaf2;
}

.assistant-dashboard-table tr[data-assistant-row-link]:focus-visible,
.assistant-mobile-row[data-assistant-row-link]:focus-visible {
  outline: 2px solid rgba(14, 117, 107, .75);
  outline-offset: 2px;
}

.assistant-dashboard-table th + th,
.assistant-dashboard-table td + td {
  padding-left: 18px;
}

.assistant-leads-table th:nth-child(1),
.assistant-leads-table td:nth-child(1) {
  width: 27%;
}

.assistant-leads-table th:nth-child(2),
.assistant-leads-table td:nth-child(2) {
  width: 33%;
}

.assistant-leads-table th:nth-child(3),
.assistant-leads-table td:nth-child(3) {
  width: 32%;
}

.assistant-conversations-table th:nth-child(1),
.assistant-conversations-table td:nth-child(1) {
  width: 48%;
}

.assistant-conversations-table th:nth-child(2),
.assistant-conversations-table td:nth-child(2) {
  width: 27%;
}

.assistant-conversations-table th:nth-child(3),
.assistant-conversations-table td:nth-child(3) {
  width: 15%;
}

.assistant-conversations-panel {
  display: grid;
  gap: 16px;
}

.assistant-conversations-heading {
  margin-bottom: 0;
}

.assistant-conversations-table-shell {
  width: 100%;
  overflow: visible;
}

.assistant-conversations-page-table {
  min-width: 0;
}

.assistant-conversations-page-table th:nth-child(1),
.assistant-conversations-page-table td:nth-child(1) {
  width: 190px;
}

.assistant-conversations-page-table th:nth-child(2),
.assistant-conversations-page-table td:nth-child(2) {
  width: 30%;
}

.assistant-conversations-page-table th:nth-child(3),
.assistant-conversations-page-table td:nth-child(3) {
  width: 154px;
}

.assistant-conversations-page-table th:nth-child(5),
.assistant-conversations-page-table td:nth-child(5) {
  width: 56px;
}

.assistant-conversations-page-table .assistant-conversation-date-cell {
  white-space: nowrap;
}

.assistant-conversations-page-table .assistant-conversation-title-cell,
.assistant-conversations-page-table td[data-label="Lessons Learned"] {
  vertical-align: top;
}

.assistant-conversation-origin {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  color: #475467;
  font-weight: 850;
}

.assistant-conversation-origin-icon {
  display: inline-grid;
  place-items: center;
  width: 34px;
  height: 34px;
  border: 1px solid #d8d2c4;
  border-radius: 999px;
  background: #fff;
  color: #475467;
}

.assistant-conversation-origin-icon svg {
  width: 18px;
  height: 18px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.9;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.assistant-conversation-origin-website .assistant-conversation-origin-icon {
  color: var(--brand-teal);
  border-color: #c8ddd9;
  background: #eef8f6;
}

.assistant-conversation-origin-training .assistant-conversation-origin-icon {
  color: #7a5b00;
  border-color: #e7d76a;
  background: #fff8bf;
}

.assistant-conversation-origin-text {
  line-height: 1.25;
  overflow-wrap: anywhere;
}

.assistant-conversation-title-link {
  display: -webkit-box;
  overflow: hidden;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  overflow-wrap: anywhere;
}

.assistant-conversation-tablet-date {
  display: none;
  margin-top: 5px;
  color: #667085;
  font-size: 13px;
  font-weight: 750;
  line-height: 1.3;
}

.assistant-conversation-lessons {
  display: grid;
  gap: 8px;
  min-width: 0;
}

.assistant-conversation-lessons p {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  align-items: start;
  gap: 8px;
  margin: 0;
  min-width: 0;
}

.assistant-lesson-pill {
  align-self: start;
  text-transform: none;
}

.assistant-lesson-text {
  display: -webkit-box;
  overflow: hidden;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  color: #344054;
  font-size: 14px;
  font-weight: 650;
  line-height: 1.35;
  overflow-wrap: anywhere;
}

.assistant-lessons-more,
.assistant-no-lessons {
  color: #667085;
  font-size: 13px;
  font-weight: 750;
}

.assistant-mobile-conversation-cards {
  display: none;
}

.assistant-conversation-list-card {
  align-items: stretch;
}

.assistant-mobile-conversation-origin,
.assistant-mobile-conversation-date {
  color: #667085;
  font-size: 13px;
  font-weight: 800;
  line-height: 1.35;
}

.assistant-mobile-conversation-origin {
  display: inline-flex;
  align-items: center;
  gap: 8px;
}

.assistant-mobile-conversation-date {
  display: block;
}

.assistant-mobile-view-link {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 44px;
  width: fit-content;
  padding: 0 14px;
  border: 1px solid #d8d2c4;
  border-radius: 6px;
  color: var(--brand-teal);
  font-weight: 850;
  text-decoration: none;
}

.assistant-mobile-view-link:hover,
.assistant-mobile-view-link:focus-visible {
  background: #eef8f6;
  outline: 2px solid rgba(14, 117, 107, .75);
  outline-offset: 2px;
}

.assistant-conversations-empty {
  display: grid;
  gap: 4px;
  margin: 0;
  text-align: left;
}

.assistant-conversations-empty p {
  margin: 0;
}

.assistant-row-action {
  width: 48px;
  text-align: right;
}

.assistant-row-action a {
  display: inline-grid;
  place-items: center;
  width: 34px;
  height: 34px;
  border-radius: 999px;
  color: #475467;
  font-size: 28px;
  line-height: 1;
  text-decoration: none;
}

.assistant-row-action a:hover,
.assistant-row-action a:focus-visible {
  background: #f3f1eb;
  color: var(--brand-teal);
  outline: 0;
}

.assistant-row-domain {
  display: block;
  margin-bottom: 3px;
  color: #667085;
  font-size: 13px;
  font-weight: 650;
}

.assistant-question-link {
  color: #111827;
  font-weight: 800;
  line-height: 1.3;
  text-decoration: none;
}

.assistant-question-link:hover,
.assistant-question-link:focus-visible {
  color: var(--brand-teal);
  text-decoration: underline;
  text-underline-offset: 3px;
  outline: 0;
}

.assistant-trend-chart {
  display: grid;
  grid-template-columns: 34px minmax(0, 1fr);
  gap: 8px;
  min-width: 0;
  height: 250px;
  min-height: 0;
}

.assistant-trend-chart svg {
  grid-column: 2;
  width: 100%;
  height: 220px;
  max-width: 100%;
  min-height: 0;
}

.assistant-chart-y-axis {
  grid-column: 1;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  height: 220px;
  min-height: 0;
  padding: 4px 0 24px;
  color: #667085;
  font-size: 12px;
  font-weight: 750;
  line-height: 1;
  text-align: right;
}

.assistant-chart-grid path {
  fill: none;
  stroke: #ece8df;
  stroke-width: 1;
}

.assistant-trend-chart polygon {
  fill: rgba(14, 117, 107, .12);
}

.assistant-trend-chart polyline {
  fill: none;
  stroke: var(--brand-teal);
  stroke-width: 2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.assistant-trend-chart circle {
  fill: var(--brand-teal);
  stroke: #fff;
  stroke-width: 3;
}

.assistant-chart-axis {
  grid-column: 2;
  display: grid;
  grid-template-columns: repeat(7, minmax(0, 1fr));
  gap: 4px;
  color: #667085;
  font-size: 12px;
  font-weight: 700;
  text-align: center;
}

.assistant-conversation-detail,
.assistant-conversation-transcript {
  width: 100%;
  margin-left: 0;
  margin-right: 0;
}

.assistant-conversation-lead {
  width: 100%;
  margin-left: 0;
  margin-right: 0;
}

.assistant-conversation-detail {
  display: grid;
  gap: 12px;
}

.assistant-conversation-back {
  justify-self: start;
  display: inline-flex;
  align-items: center;
  min-height: 44px;
  color: #667085;
  font-size: 15px;
  font-weight: 850;
  text-decoration: none;
}

.assistant-conversation-back:hover,
.assistant-conversation-back:focus-visible {
  color: var(--brand-teal);
  text-decoration: underline;
  text-underline-offset: 4px;
}

.assistant-conversation-back:focus-visible {
  border-radius: 6px;
  outline: 2px solid rgba(14, 117, 107, .9);
  outline-offset: 4px;
}

.assistant-conversation-header {
  display: grid;
  gap: 14px;
  padding-bottom: 18px;
  border-bottom: 3px solid #111827;
}

.assistant-conversation-header h1 {
  margin: 0;
  color: #000;
  font-size: clamp(32px, 4vw, 44px);
  font-weight: 900;
  line-height: 1.05;
  letter-spacing: 0;
}

.assistant-conversation-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 10px 24px;
  margin: 0;
  color: #667085;
  font-size: 16px;
  font-weight: 650;
  line-height: 1.35;
}

.assistant-conversation-meta div,
.assistant-conversation-meta dd {
  margin: 0;
  min-width: 0;
}

.assistant-conversation-origin {
  color: inherit;
  font-weight: inherit;
  overflow-wrap: anywhere;
}

.assistant-conversation-transcript {
  margin-top: 18px;
  padding: 16px;
  border: 1px solid #e5e1d7;
  border-radius: 8px;
  background: color-mix(in srgb, #fbf9f3 82%, #f8fafc);
}

.assistant-transcript-list {
  display: grid;
  gap: 10px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.assistant-transcript-message {
  display: grid;
  min-width: 0;
}

.assistant-transcript-message.visitor {
  justify-items: end;
}

.assistant-transcript-message.assistant {
  grid-template-columns: 34px minmax(0, 1fr);
  align-items: end;
  justify-content: start;
  column-gap: 10px;
}

.assistant-transcript-cluster {
  display: grid;
  gap: 7px;
  width: fit-content;
  max-width: min(88%, 640px);
  min-width: 0;
}

.assistant-transcript-message.visitor .assistant-transcript-cluster {
  width: fit-content;
  max-width: min(88%, 520px);
}

.assistant-transcript-avatar {
  display: inline-grid;
  place-items: center;
  width: 30px;
  height: 30px;
  border-radius: 999px;
  background: var(--assistant-avatar-color, var(--brand-teal));
  color: #fff;
  font-size: 13px;
  font-weight: 900;
  line-height: 1;
  overflow: hidden;
  flex: 0 0 auto;
}

.assistant-transcript-avatar-image {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.assistant-transcript-meta {
  margin: 0;
  color: #667085;
  font-size: 13px;
  font-weight: 800;
  line-height: 1.3;
}

.assistant-transcript-message.visitor .assistant-transcript-meta {
  text-align: right;
}

.assistant-transcript-bubble {
  margin: 0;
  padding: 10px 12px;
  border: 1px solid #e5e7eb;
  border-radius: 12px;
  background: #fff;
  color: #172033;
  font-size: 15px;
  line-height: 1.45;
  overflow-wrap: anywhere;
  white-space: pre-wrap;
}

.assistant-transcript-bubble p {
  margin: 0;
}

.assistant-transcript-bubble--assistant {
  border-color: color-mix(in srgb, var(--assistant-accent, var(--brand-teal)) 24%, #e5e7eb);
  background: #fffdf4;
}

.assistant-transcript-bubble--visitor {
  border-color: color-mix(in srgb, var(--assistant-accent, var(--brand-teal)) 22%, transparent);
  background: color-mix(in srgb, var(--assistant-accent, var(--brand-teal)) 16%, #fff);
  color: #172033;
}

.assistant-transcript-feedback {
  display: grid;
  gap: 8px;
  margin: 2px 0 0;
  padding: 12px 14px;
  border: 1px solid #e7d76a;
  border-radius: 8px;
  background: #fff8bf;
  color: #172033;
  font-size: 14px;
  line-height: 1.45;
}

.assistant-transcript-feedback-heading {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  font-weight: 800;
}

.assistant-transcript-feedback-icon {
  display: inline-grid;
  place-items: center;
  width: 24px;
  height: 24px;
  border-radius: 999px;
  background: #111827;
  color: #fff;
  font-size: 13px;
}

.assistant-transcript-feedback p {
  margin: 0;
}

.assistant-transcript-feedback a {
  width: fit-content;
  color: #0e756b;
  font-weight: 800;
  text-decoration: underline;
  text-underline-offset: 3px;
}

.assistant-conversation-empty {
  margin: 0;
}

.assistant-settings-header {
  padding-bottom: 20px;
  border-bottom: 3px solid #111827;
}

.assistant-settings-stack {
  display: grid;
  gap: 18px;
  width: min(100%, 1120px);
}

.assistant-settings-card {
  display: grid;
  gap: 18px;
  padding: 30px 34px;
}

.assistant-settings-card-heading {
  display: grid;
  gap: 5px;
}

.assistant-settings-card-heading h2 {
  margin: 0;
  color: #111827;
  font-size: var(--app-panel-heading-size);
  line-height: 1.2;
}

.assistant-settings-card-heading p {
  margin: 0;
}

.assistant-settings-form {
  display: grid;
  gap: 18px;
}

#visual-settings .assistant-settings-card-heading h2 {
  font-size: var(--app-panel-heading-size);
  line-height: var(--app-panel-heading-line-height);
}

#visual-settings .assistant-settings-card-heading p {
  color: #626767;
  font-size: var(--app-body-size);
}

.assistant-visual-settings-section {
  min-width: 0;
}

.assistant-visual-settings-form {
  display: grid;
  grid-template-columns: minmax(0, 58fr) minmax(320px, 42fr);
  gap: clamp(36px, 5vw, 62px);
  align-items: start;
}

.assistant-visual-settings-card {
  min-width: 0;
}

.assistant-visual-settings-fields {
  display: grid;
  gap: 22px;
  min-width: 0;
}

#visual-settings .field-stack {
  gap: 10px;
}

#visual-settings .field-stack > span:first-child,
#visual-settings .field-group > legend {
  color: #000;
  font-size: var(--app-label-size);
  font-weight: 900;
  line-height: var(--app-label-line-height);
  text-transform: none;
}

#visual-settings .field-stack input:not([type="color"]) {
  min-height: 46px;
  border-color: #d8d2c4;
  border-radius: 6px;
  color: #111827;
  font-size: 15px;
  font-weight: 650;
}

#visual-settings .field-stack input:not([type="color"]):focus,
#visual-settings .assistant-avatar-option:focus-within,
#visual-settings .assistant-avatar-dropzone:focus-within {
  border-color: #111827;
  box-shadow: 0 0 0 3px rgba(14, 117, 107, .14);
  outline: none;
}

.assistant-field-error {
  color: #b42318;
  font-size: 13px;
  font-weight: 800;
}

.assistant-settings-status {
  margin: 0;
  padding: 10px 12px;
  border-radius: 8px;
  font-weight: 800;
}

.assistant-settings-status.success {
  border: 1px solid #b9d7cf;
  background: #eef8f6;
  color: #0e756b;
}

.assistant-settings-status.error {
  border: 1px solid #f1b7b0;
  background: #fff4f2;
  color: #b42318;
}

.assistant-settings-status.warning {
  border: 1px solid #f1b55f;
  background: #fff8ed;
  color: #7d5012;
}

.assistant-guidance-style-meta {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  flex-wrap: wrap;
  color: var(--app-muted);
  font-size: 13px;
  margin-top: 8px;
}

.app-main .assistant-style-guide-help {
  color: var(--app-muted);
  font-size: var(--app-body-size);
  font-weight: 400;
  line-height: var(--app-body-line-height);
}

.assistant-settings-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  column-gap: 52px;
  row-gap: 26px;
  align-items: start;
}

.assistant-settings-full {
  grid-column: 1 / -1;
}

.assistant-settings-grid textarea {
  min-height: 58px;
}

.assistant-presence-focuses {
  display: grid;
  gap: 10px;
  margin: 0;
  padding: 0;
  border: 0;
}

.assistant-presence-focuses > legend,
.assistant-presence-review > summary {
  color: #111827;
  font-weight: 800;
}

.assistant-presence-focuses > .muted,
.assistant-presence-review > .muted {
  margin: 0;
}

.assistant-presence-focus-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px 16px;
}

.assistant-presence-check,
.assistant-presence-message {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  margin: 0;
  cursor: pointer;
}

.assistant-presence-check input,
.assistant-presence-message input {
  flex: 0 0 auto;
  width: 18px;
  height: 18px;
  margin: 2px 0 0;
}

.assistant-presence-check {
  align-items: center;
  min-height: 28px;
}

.assistant-presence-check input {
  margin: 0;
}

.assistant-presence-guidance {
  max-width: 720px;
}

.assistant-presence-review {
  display: grid;
  gap: 14px;
  padding-top: 8px;
  border-top: 1px solid var(--app-border);
}

.assistant-presence-review > summary {
  cursor: pointer;
}

.assistant-presence-message-form,
.assistant-presence-refresh-form {
  display: grid;
  justify-items: start;
  gap: 14px;
}

.assistant-presence-message-list {
  display: grid;
  gap: 0;
  width: 100%;
  max-height: 420px;
  overflow: auto;
  border: 1px solid var(--app-border);
  border-radius: 8px;
}

.assistant-presence-message {
  padding: 12px;
  border-bottom: 1px solid var(--app-border);
  font-weight: 400;
  line-height: 1.45;
}

.assistant-presence-message:last-child {
  border-bottom: 0;
}

.assistant-presence-message small {
  display: block;
  margin-top: 4px;
  color: var(--app-muted);
  font-size: 12px;
}

@media (max-width: 767px) {
  .assistant-presence-focus-grid {
    grid-template-columns: 1fr;
  }
}

.assistant-style-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  column-gap: 46px;
  row-gap: 24px;
  align-items: start;
}

.assistant-style-column {
  display: grid;
  gap: 24px;
  min-width: 0;
}

.assistant-style-column textarea {
  min-height: 58px;
}

.assistant-color-row {
  display: grid;
  grid-template-columns: 64px minmax(0, 240px);
  gap: 12px;
  align-items: center;
}

.assistant-color-row input[type="color"] {
  width: 64px;
  height: 46px;
  padding: 5px;
  border-color: #d8d2c4;
  border-radius: 6px;
}

.assistant-settings-avatar-field {
  gap: 10px;
  padding: 0;
  border: 0;
  background: transparent;
}

.assistant-avatar-options {
  display: grid;
  gap: 14px;
}

.assistant-avatar-option {
  position: relative;
  display: flex;
  align-items: center;
  gap: 12px;
  min-height: 42px;
  padding: 4px 0;
  border: 1px solid transparent;
  border-radius: 8px;
  background: transparent;
  color: #111827;
  font-weight: 700;
  cursor: pointer;
}

.assistant-avatar-option:not(.assistant-avatar-option--upload) {
  width: fit-content;
  max-width: 100%;
  white-space: nowrap;
}

.assistant-avatar-option input {
  margin: 0;
  accent-color: #111827;
}

.assistant-avatar-option--upload {
  align-items: flex-start;
  padding-top: 4px;
  width: 100%;
}

.assistant-avatar-option__control {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  min-height: 40px;
}

.assistant-avatar-option__body {
  display: grid;
  gap: 8px;
  min-width: 0;
  width: 100%;
}

.assistant-avatar-option__helper,
.assistant-avatar-upload-status {
  color: #667085;
  font-size: 13px;
  font-weight: 650;
  line-height: 1.35;
}

.assistant-avatar-upload-input {
  position: absolute;
  width: 1px;
  height: 1px;
  overflow: hidden;
  clip: rect(0 0 0 0);
  clip-path: inset(50%);
  white-space: nowrap;
}

.assistant-avatar-option__image,
.assistant-avatar-preview__avatar {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  border-radius: 999px;
  background: #f7e6b6;
  box-shadow: inset 0 0 0 1px rgba(15, 23, 42, .08);
}

.assistant-avatar-option__image {
  width: 34px;
  height: 34px;
  flex: 0 0 34px;
}

.assistant-avatar-option__image--none {
  border: 1px dashed #c6cbd3;
  background: #fff;
  box-shadow: none;
}

.assistant-avatar-option__image--custom {
  background: #eef2f7;
}

.assistant-avatar-option__placeholder {
  color: #667085;
  font-size: 20px;
  font-weight: 850;
  line-height: 1;
}

.assistant-avatar-option__image img,
.assistant-avatar-preview__avatar img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: inherit;
}

.assistant-avatar-dropzone {
  display: grid;
  place-items: center;
  gap: 10px;
  min-height: 142px;
  width: min(100%, 520px);
  border: 2px dashed #e0ded8;
  border-radius: 8px;
  background: #fdfdfb;
  color: #30343b;
  font-size: 15px;
  font-weight: 750;
  text-align: center;
}

.assistant-avatar-dropzone.is-dragging {
  border-color: #0e756b;
  background: #eef8f6;
}

.assistant-avatar-dropzone__icon {
  display: grid;
  place-items: center;
  width: 70px;
  height: 48px;
  color: #dedede;
}

.assistant-avatar-dropzone__icon svg {
  width: 70px;
  height: 48px;
  fill: currentColor;
}

.assistant-avatar-browse {
  min-height: 0;
  padding: 0;
  border: 0;
  background: transparent;
  color: #1673d1;
  cursor: pointer;
  font: inherit;
  text-decoration: underline;
  text-underline-offset: 3px;
}

.assistant-visual-preview-column {
  display: grid;
  gap: 12px;
  min-width: 0;
  align-self: start;
}

.assistant-visual-preview-column h3 {
  margin: 0;
  color: #000;
  font-size: var(--app-label-size);
  font-weight: 900;
  line-height: var(--app-label-line-height);
}

.assistant-visual-preview {
  display: grid;
  justify-items: end;
  gap: 18px;
  --assistant-preview-accent: #0e756b;
  --assistant-preview-accent-text: #fff;
}

.assistant-visual-preview__panel {
  width: min(100%, 360px);
  min-height: 500px;
  overflow: hidden;
  border: 1px solid #d8d2c4;
  border-radius: 8px;
  background: #fff;
  box-shadow: 0 18px 36px rgba(15, 23, 42, .08);
}

.assistant-visual-preview__header {
  display: flex;
  flex: 0 0 auto;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  min-height: 58px;
  padding: 15px 16px;
  background: var(--assistant-preview-accent);
  color: var(--assistant-preview-accent-text);
  font-weight: 700;
}

.assistant-visual-preview__title {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  color: inherit;
  font-size: 15px;
  font-weight: 750;
  line-height: 1.15;
}

.assistant-visual-preview__window-controls {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  flex: 0 0 auto;
}

.assistant-visual-preview__icon-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 38px;
  height: 38px;
  min-width: 38px;
  min-height: 38px;
  padding: 0;
  border: 0;
  border-radius: 999px;
  background: color-mix(in srgb, var(--assistant-preview-accent-text) 16%, transparent);
  color: var(--assistant-preview-accent-text);
  opacity: 1;
  cursor: default;
}

.assistant-visual-preview__icon-button svg {
  width: 18px;
  height: 18px;
  fill: none;
  stroke: currentColor;
  stroke-linecap: round;
  stroke-linejoin: round;
  stroke-width: 2;
}

.assistant-visual-preview__messages {
  min-height: 246px;
  padding: 18px 16px;
  border-bottom: 1px solid #e5e7eb;
}

.assistant-visual-preview__message {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 10px;
  align-items: start;
}

.assistant-visual-preview__message.has-avatar {
  grid-template-columns: 34px minmax(0, 1fr);
}

.assistant-visual-preview__message p {
  margin: 0;
  padding: 14px 16px;
  border: 1px solid #e5e7eb;
  border-radius: 14px;
  color: #172033;
  font-size: 13px;
  line-height: 1.42;
  overflow-wrap: anywhere;
}

.assistant-visual-preview__avatar {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  width: 34px;
  height: 34px;
  flex: 0 0 34px;
  border-radius: 999px;
  background: #f7e6b6;
}

.assistant-visual-preview__avatar[hidden] {
  display: none;
}

.assistant-visual-preview__avatar img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: inherit;
}

.assistant-visual-preview__composer {
  display: grid;
  gap: 30px;
  margin: 18px 16px;
  min-height: 102px;
  padding: 16px;
  border: 2px solid #111827;
  border-radius: 12px;
  color: #667085;
  font-size: 14px;
  box-shadow: 0 0 0 3px rgba(17, 24, 39, .08);
}

.assistant-visual-preview__composer-actions {
  display: flex;
  align-items: center;
  justify-content: space-between;
  color: #4b5563;
  font-size: 32px;
  font-weight: 800;
}

.assistant-visual-preview__mic-icon {
  display: inline-grid;
  width: 30px;
  height: 30px;
  place-items: center;
}

.assistant-visual-preview__mic-icon svg {
  width: 28px;
  height: 28px;
  fill: none;
  stroke: currentColor;
  stroke-linecap: round;
  stroke-linejoin: round;
  stroke-width: 2.25;
}

.assistant-visual-preview__disclaimer {
  margin: -8px 18px 14px;
  color: #667085;
  font-size: 12px;
  font-weight: 700;
}

.assistant-visual-preview__launcher {
  display: inline-flex;
  align-items: center;
  justify-self: end;
  max-width: min(100%, 280px);
  min-height: 50px;
  gap: 9px;
  padding: 8px 18px 8px 10px;
  border: 2px solid #1673d1;
  border-radius: 999px;
  background: var(--assistant-preview-accent);
  color: var(--assistant-preview-accent-text);
  cursor: default;
  font: 900 15px/1.2 system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  overflow-wrap: anywhere;
  text-align: left;
  box-shadow: 0 12px 24px rgba(15, 23, 42, .14);
}

.assistant-visual-preview__launcher-avatar {
  width: 34px;
  height: 34px;
  flex-basis: 34px;
}

.assistant-visual-settings-actions {
  padding-top: 8px;
}

@media (max-width: 980px) {
  .assistant-visual-settings-form {
    grid-template-columns: 1fr;
    gap: 26px;
  }

  .assistant-visual-preview {
    justify-items: stretch;
    width: min(100%, 360px);
  }

  .assistant-visual-preview__panel {
    width: 100%;
  }

  .assistant-visual-preview__launcher {
    justify-self: end;
  }
}

.assistant-avatar-preview {
  display: grid;
  gap: 14px;
  max-width: 460px;
  padding: 16px;
  border: 1px solid #e5e7eb;
  border-radius: 8px;
  background: #f8fafc;
}

.assistant-avatar-preview__launcher {
  justify-self: start;
  display: inline-flex;
  align-items: center;
  gap: 9px;
  min-height: 46px;
  border: 0;
  border-radius: 999px;
  padding: 7px 16px 7px 9px;
  background: #17395f;
  color: #ffffff;
  font: 700 14px/1.2 system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  box-shadow: 0 10px 24px rgba(15, 23, 42, .18);
}

.assistant-avatar-preview__launcher .assistant-avatar-preview__avatar {
  width: 32px;
  height: 32px;
}

.assistant-avatar-preview__thread {
  display: grid;
  gap: 10px;
  padding: 14px;
  border: 1px solid #e5e7eb;
  border-radius: 8px;
  background: #ffffff;
}

.assistant-avatar-preview__message {
  display: flex;
  align-items: flex-start;
  gap: 9px;
}

.assistant-avatar-preview__message--user {
  justify-content: flex-end;
}

.assistant-avatar-preview__message .assistant-avatar-preview__avatar {
  width: 30px;
  height: 30px;
  flex: 0 0 30px;
}

.assistant-avatar-preview__bubble {
  max-width: 82%;
  padding: 9px 11px;
  border: 1px solid #e5e7eb;
  border-radius: 12px;
  background: #ffffff;
  color: #172033;
  font-size: 14px;
  line-height: 1.4;
}

.assistant-avatar-preview__bubble--user {
  background: #eef2f7;
}

.assistant-settings-option-group {
  gap: 14px;
  padding: 0;
  border: 0;
  background: transparent;
}

.assistant-settings-option-group legend {
  display: block;
  width: 100%;
  margin: 0 0 4px;
  padding: 0;
  text-indent: 0;
}

.assistant-option-card,
.assistant-speed-option {
  min-width: 0;
  cursor: pointer;
}

.assistant-check-option {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: 11px;
  align-items: center;
  min-height: 26px;
  color: #111827;
  font-size: 15px;
  font-weight: 750;
}

.assistant-check-option input {
  width: 20px;
  height: 20px;
  min-height: 0;
  padding: 0;
  margin: 0;
  accent-color: #111827;
  cursor: pointer;
}

.assistant-check-option input:disabled {
  opacity: 1;
  cursor: default;
}

[data-lead-fields-group][hidden] {
  display: none !important;
}

.assistant-speed-group {
  position: relative;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 0;
  margin-top: 8px;
  padding: 36px 0 0;
  border: 0;
  background: transparent;
}

.assistant-speed-group legend {
  position: absolute;
  top: 0;
  left: 0;
  padding: 0;
  font-weight: 850;
}

.assistant-speed-track {
  position: absolute;
  top: 52px;
  left: 14px;
  right: 14px;
  height: 3px;
  background: #111827;
  border-radius: 999px;
}

.assistant-speed-option {
  position: relative;
  display: grid;
  justify-items: center;
  gap: 12px;
  padding-top: 7px;
  color: #111827;
  text-align: center;
}

.assistant-speed-option:first-of-type {
  justify-items: start;
  text-align: left;
}

.assistant-speed-option:last-of-type {
  justify-items: end;
  text-align: right;
}

.assistant-speed-option input {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 34px;
  margin: 0;
  opacity: 0;
  cursor: pointer;
}

.assistant-speed-dot {
  display: block;
  width: 29px;
  height: 29px;
  border: 3px solid #111827;
  border-radius: 999px;
  background: #fff;
  box-shadow: 0 0 0 4px #fff;
  z-index: 1;
}

.assistant-speed-option:has(input:checked) .assistant-speed-dot {
  border-color: #111827;
  background: #111827;
  box-shadow: inset 0 0 0 5px #fff, 0 0 0 4px #fff;
}

.assistant-speed-option > span:not(.assistant-speed-dot) {
  display: grid;
  gap: 9px;
  max-width: 184px;
}

.assistant-speed-option strong {
  color: #111827;
}

.assistant-speed-option small {
  color: #344054;
  font-size: 14px;
  line-height: 1.45;
}

.assistant-settings-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  align-items: center;
  justify-content: flex-start;
}

.assistant-settings-actions .btn {
  margin-bottom: 0;
}

.assistant-hosted-status {
  display: inline-flex;
  width: fit-content;
  align-items: center;
  gap: 9px;
  padding: 8px 11px;
  border: 1px solid #d8d2c4;
  border-radius: 999px;
  background: #fbf9f3;
  color: #111827;
  font-size: 14px;
}

.assistant-hosted-dot {
  width: 9px;
  height: 9px;
  border-radius: 999px;
  background: #9ca3af;
}

.assistant-hosted-status[data-status="on"] .assistant-hosted-dot {
  background: #0e756b;
}

.assistant-hosted-copy {
  max-width: 760px;
}

.assistant-hosted-copy label {
  color: #111827;
  font-size: 13px;
  font-weight: 850;
  text-transform: uppercase;
}

.assistant-hosted-copy__hint {
  margin: 0;
  color: #667085;
  font-size: 14px;
}

.hosted-assistant-page {
  display: grid;
  gap: clamp(22px, 4vw, 44px);
  width: min(100% - 32px, 1180px);
  margin: 0 auto;
  padding: clamp(34px, 6vw, 72px) 0;
}

.hosted-assistant-body .public-header {
  min-width: 0;
}

.hosted-assistant-body .public-header .brand {
  padding: 0;
  background: transparent;
  box-shadow: none;
}

.hosted-assistant-copy {
  display: grid;
  gap: 13px;
  justify-self: center;
  width: min(100%, 820px);
  max-width: 820px;
}

.hosted-assistant-copy h1 {
  margin: 0;
  color: #000;
  font-size: clamp(38px, 6vw, 68px);
  line-height: 1.02;
  letter-spacing: 0;
}

.hosted-assistant-copy p:not(.eyebrow) {
  margin: 0;
  color: #344054;
  font-size: clamp(17px, 2vw, 20px);
  line-height: 1.5;
}

.hosted-assistant-room {
  display: grid;
  grid-template-columns: minmax(0, min(100%, 860px));
  justify-content: center;
  gap: 20px;
  align-items: stretch;
}

.hosted-assistant-frame-shell {
  justify-self: center;
  width: min(100%, 860px);
  min-width: 0;
  min-height: 620px;
  overflow: hidden;
  border: 1px solid #d8d2c4;
  border-radius: 8px;
  background: #fff;
}

.hosted-assistant-frame-shell iframe {
  display: block;
  width: 100%;
  height: 100%;
  min-height: 620px;
  border: 0;
}

.hosted-assistant-note,
.hosted-assistant-bombyx {
  border: 1px solid #e1dccf;
  border-radius: 8px;
  background: #fff;
  color: #111827;
}

.hosted-assistant-note {
  align-self: start;
  justify-self: center;
  display: grid;
  gap: 10px;
  width: min(100%, 860px);
  padding: 18px;
}

.hosted-assistant-note strong,
.hosted-assistant-bombyx h2 {
  color: #111827;
}

.hosted-assistant-note p,
.hosted-assistant-bombyx p {
  margin: 0;
  color: #576666;
  line-height: 1.55;
}

.hosted-assistant-bombyx {
  display: flex;
  gap: 18px;
  align-items: center;
  justify-content: space-between;
  padding: 22px;
}

.hosted-assistant-bombyx h2 {
  margin: 0 0 6px;
  font-size: 24px;
  letter-spacing: 0;
}

@media (max-width: 820px) {
  .hosted-assistant-body .public-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    min-height: 76px;
    padding: 8px 18px;
    overflow-x: clip;
  }

  .hosted-assistant-page {
    width: min(100% - 24px, 1180px);
    padding-top: 28px;
  }

  .hosted-assistant-room {
    grid-template-columns: 1fr;
  }

  .hosted-assistant-frame-shell,
  .hosted-assistant-frame-shell iframe {
    min-height: min(78dvh, 680px);
  }

  .hosted-assistant-bombyx {
    display: grid;
    align-items: start;
  }

  .hosted-assistant-bombyx .btn {
    width: 100%;
  }
}

@media (max-width: 760px) {
  .page-header-with-back {
    grid-template-columns: 1fr;
  }

  .page-header-with-back > .actions:not(.page-back-actions) {
    justify-self: start;
  }

  .admin-collapsible-summary {
    display: grid;
    justify-items: start;
  }

  .access-code-create-panel .access-code-form {
    padding: 0 15px 15px;
  }

  .access-code-workshop-link,
  .access-code-signup-link,
  .workshop-directory-link {
    width: 100%;
  }

  .workshop-directory-link {
    grid-template-columns: 1fr;
    justify-items: start;
  }

  .workshop-directory-link-url {
    max-width: 100%;
  }

  .access-code-action-group {
    width: 100%;
  }
}

@media (max-width: 480px) {
  .hosted-assistant-page {
    width: min(100% - 18px, 1180px);
  }

  .hosted-assistant-copy h1 {
    font-size: 36px;
  }

  .hosted-assistant-frame-shell,
  .hosted-assistant-frame-shell iframe {
    min-height: 74dvh;
  }
}

.assistant-settings-readonly-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}

.assistant-settings-readonly-grid > div {
  display: grid;
  gap: 5px;
  min-width: 0;
  padding: 14px;
  border: 1px solid #e5e1d7;
  border-radius: 8px;
  background: #fbfaf6;
}

.assistant-settings-readonly-grid strong {
  overflow-wrap: anywhere;
}

.assistant-install-status-list {
  display: grid;
  grid-template-columns: minmax(160px, 1fr) minmax(160px, 1fr) minmax(160px, 1fr);
  gap: 14px;
  align-items: stretch;
  padding: 0;
}

.assistant-install-step {
  position: relative;
  display: grid;
  grid-template-columns: 52px minmax(0, 1fr);
  align-items: center;
  align-content: center;
  justify-items: start;
  gap: 14px;
  min-width: 0;
  min-height: 104px;
  padding: 16px;
  border: 1px solid #e5e1d7;
  border-radius: 8px;
  background: #f3f4f6;
  color: #6b7280;
  text-align: left;
}

.assistant-install-step:not(:last-child)::after {
  display: none;
}

.assistant-install-step.complete {
  background: #fff;
  color: #111827;
}

.assistant-install-icon {
  position: relative;
  display: grid;
  place-items: center;
  width: 50px;
  height: 50px;
  border: 2px solid currentColor;
  border-radius: 8px;
  background: #fff;
  color: currentColor;
  z-index: 1;
}

.assistant-install-icon::before,
.assistant-install-icon::after {
  content: "";
  position: absolute;
}

.assistant-install-icon-settings::before {
  width: 27px;
  height: 21px;
  background:
    linear-gradient(currentColor, currentColor) 0 3px / 27px 3px no-repeat,
    linear-gradient(currentColor, currentColor) 0 10px / 27px 3px no-repeat,
    linear-gradient(currentColor, currentColor) 0 17px / 27px 3px no-repeat;
}

.assistant-install-icon-settings::after {
  width: 26px;
  height: 19px;
  background:
    radial-gradient(circle at 8px 4px, #fff 0 3px, currentColor 3px 5px, transparent 5px),
    radial-gradient(circle at 19px 11px, #fff 0 3px, currentColor 3px 5px, transparent 5px),
    radial-gradient(circle at 12px 18px, #fff 0 3px, currentColor 3px 5px, transparent 5px);
}

.assistant-install-icon-website::before {
  width: 31px;
  height: 31px;
  border: 3px solid currentColor;
  border-radius: 999px;
}

.assistant-install-icon-website::after {
  width: 31px;
  height: 31px;
  background:
    linear-gradient(currentColor, currentColor) 0 14px / 31px 3px no-repeat,
    linear-gradient(currentColor, currentColor) 14px 0 / 3px 31px no-repeat;
  border-radius: 999px;
  box-shadow:
    inset 8px 0 0 -6px currentColor,
    inset -8px 0 0 -6px currentColor;
}

.assistant-install-icon-active::before {
  width: 29px;
  height: 34px;
  border: 4px solid currentColor;
  border-radius: 4px;
}

.assistant-install-icon-active::after {
  width: 12px;
  height: 22px;
  border-right: 4px solid currentColor;
  border-bottom: 4px solid currentColor;
  transform: rotate(35deg) translate(2px, -2px);
}

.assistant-install-step strong,
.assistant-install-step p {
  overflow-wrap: anywhere;
}

.assistant-install-step p {
  display: block;
  margin: 4px 0 0;
  color: #667085;
  font-size: 14px;
  font-weight: 650;
  line-height: 1.4;
}

.assistant-install-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  column-gap: 80px;
  row-gap: 18px;
}

.assistant-copy-block {
  display: grid;
  gap: 10px;
  min-width: 0;
  padding: 0;
  border: 0;
  background: transparent;
}

.assistant-copy-block h3,
.assistant-wordpress-panel h3 {
  margin: 0;
  font-size: 18px;
  line-height: 1.25;
}

.assistant-copy-block p {
  margin: 0;
}

.assistant-copy-block textarea,
.assistant-copy-block input,
.assistant-widget-key-inline input {
  font-family: ui-monospace, SFMono-Regular, Consolas, monospace;
  font-size: 13px;
  overflow-wrap: anywhere;
  max-width: 100%;
}

.assistant-copy-block textarea {
  resize: vertical;
}

.assistant-copy-block .btn {
  justify-self: start;
}

.app-main .assistant-copy-block button.btn.secondary,
.app-main .assistant-wordpress-panel a.btn.secondary {
  justify-self: start;
  border-color: #9ca3af;
  background: #fff;
  color: #111827;
}

.app-main .assistant-copy-block button.btn.secondary:hover,
.app-main .assistant-wordpress-panel a.btn.secondary:hover,
.app-main .assistant-copy-block button.btn.secondary:focus,
.app-main .assistant-wordpress-panel a.btn.secondary:focus {
  border-color: #111827;
  background: #f9fafb;
  color: #111827;
}

.assistant-wordpress-panel {
  display: grid;
  gap: 16px;
  padding-top: 16px;
  border-top: 1px solid #dbe3ef;
}

.assistant-wordpress-panel > div {
  display: grid;
  gap: 12px;
}

.assistant-widget-key-inline {
  display: grid;
  gap: 9px;
  max-width: 620px;
  padding-top: 4px;
}

.assistant-widget-key-inline label {
  color: #111827;
  font-weight: 850;
}

.assistant-wordpress-panel .btn {
  flex: 0 0 auto;
  margin-bottom: 0;
}

.assistant-wordpress-status {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  align-items: center;
  padding: 12px 14px;
  border: 1px solid #e5e1d7;
  border-radius: 8px;
  background: #fbfaf6;
}

.assistant-wordpress-status strong {
  overflow-wrap: anywhere;
}

@media (max-width: 1180px) {
  .assistant-dashboard-status-grid,
  .assistant-home-dashboard-grid {
    grid-template-columns: 1fr;
  }

  .assistant-status-card {
    min-height: 88px;
  }

  .assistant-install-grid {
    grid-template-columns: 1fr;
  }

  .assistant-speed-group {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

@media (max-width: 980px) {
  .assistant-conversations-page-table th:nth-child(2),
  .assistant-conversations-page-table td:nth-child(2) {
    width: 34%;
  }

  .assistant-conversations-page-table th:nth-child(3),
  .assistant-conversations-page-table td:nth-child(3) {
    display: none;
  }

  .assistant-conversation-tablet-date {
    display: block;
  }
}

@media (max-width: 700px) {
  .assistant-dashboard-main {
    min-width: 0;
  }

  .assistant-subnav {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px;
  }

  .assistant-subnav a {
    justify-content: center;
    min-width: 0;
    padding-inline: 8px;
    text-align: center;
  }

  .assistant-dashboard-status-grid {
    gap: 12px;
  }

  .assistant-status-card {
    grid-template-columns: 44px minmax(0, 1fr) auto;
    gap: 12px;
    padding: 16px;
  }

  .assistant-status-link::after {
    content: "\203A";
    align-self: center;
    color: #344054;
    font-size: 34px;
    font-weight: 400;
    line-height: 1;
  }

  .assistant-status-icon {
    width: 42px;
    height: 42px;
  }

  .assistant-dashboard-panel {
    padding: 16px;
  }

  .assistant-table-wrap {
    display: none;
  }

  .assistant-conversations-table-shell {
    display: none;
  }

  .assistant-mobile-list {
    display: grid;
    gap: 10px;
  }

  .assistant-mobile-row {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr) auto;
    align-items: center;
    gap: 12px;
    min-width: 0;
    padding: 12px 0;
    border-bottom: 1px solid #ece8df;
  }

  .assistant-mobile-row:last-child {
    border-bottom: 0;
    padding-bottom: 0;
  }

  .assistant-mobile-row:first-child {
    padding-top: 0;
  }

  .assistant-conversation-card {
    grid-template-columns: minmax(0, 1fr) auto;
  }

  .assistant-conversation-list-card {
    grid-template-columns: 1fr;
    gap: 10px;
    padding: 14px 0;
  }

  .assistant-conversation-list-card .assistant-conversation-title-link {
    -webkit-line-clamp: 3;
  }

  .assistant-mobile-avatar {
    display: inline-grid;
    place-items: center;
    width: 38px;
    height: 38px;
    border-radius: 999px;
    background: #f3f1eb;
    color: #111827;
    font-size: 14px;
    font-weight: 900;
  }

  .assistant-mobile-row-body {
    display: grid;
    min-width: 0;
    gap: 3px;
    color: #172033;
  }

  .assistant-mobile-row-body strong,
  .assistant-mobile-row-body span,
  .assistant-mobile-row-body time,
  .assistant-mobile-meta {
    min-width: 0;
    overflow-wrap: anywhere;
  }

  .assistant-mobile-row-body strong {
    font-size: 15px;
    line-height: 1.25;
  }

  .assistant-mobile-row-body > span,
  .assistant-mobile-row-body time,
  .assistant-mobile-meta {
    color: #667085;
    font-size: 13px;
    font-weight: 700;
    line-height: 1.35;
  }

  .assistant-mobile-meta {
    display: flex;
    flex-wrap: wrap;
    gap: 4px 10px;
  }

  .assistant-mobile-row-action {
    display: flex;
    justify-content: flex-end;
    min-width: 44px;
  }

  .assistant-mobile-row-action a {
    display: inline-grid;
    place-items: center;
    width: 44px;
    height: 44px;
    border-radius: 999px;
    color: #475467;
    font-size: 30px;
    line-height: 1;
    text-decoration: none;
  }

  .assistant-mobile-row-action a:hover,
  .assistant-mobile-row-action a:focus-visible {
    background: #f3f1eb;
    color: var(--brand-teal);
    outline: 0;
  }

  .assistant-mobile-row-muted {
    align-self: center;
    color: #667085;
    font-size: 12px;
    font-weight: 750;
    text-align: right;
  }

  .assistant-conversation-card .assistant-row-domain {
    margin-bottom: 0;
  }

  .assistant-conversation-card .assistant-question-link {
    display: -webkit-box;
    overflow: hidden;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    overflow-wrap: anywhere;
  }

  .assistant-trend-chart {
    width: 100%;
    height: 210px;
    min-height: 0;
    overflow: hidden;
  }

  .assistant-conversation-meta {
    display: grid;
    gap: 8px;
  }

  .assistant-conversation-origin {
    display: block;
    margin-left: 0;
    margin-top: 2px;
  }

  .assistant-transcript-cluster,
  .assistant-transcript-message.visitor .assistant-transcript-cluster {
    max-width: min(100%, 92vw);
  }

  .assistant-transcript-message.visitor .assistant-transcript-cluster {
    max-width: min(100%, 86vw);
  }

  .assistant-trend-chart svg {
    display: block;
    height: 176px;
    min-height: 0;
  }

  .assistant-chart-axis {
    font-size: 11px;
  }

  .assistant-settings-header {
    padding-bottom: 16px;
  }

  .assistant-settings-card {
    padding: 16px;
  }

  .assistant-settings-grid,
  .assistant-style-grid,
  .assistant-settings-readonly-grid {
    grid-template-columns: 1fr;
  }

  .assistant-visual-settings-form {
    grid-template-columns: 1fr;
    gap: 26px;
  }

  #visual-settings .assistant-settings-card-heading p,
  .assistant-avatar-option__helper,
  .assistant-avatar-upload-status {
    font-size: var(--app-body-size);
  }

  #visual-settings .field-stack > span:first-child,
  #visual-settings .field-group > legend {
    font-size: var(--app-label-size);
  }

  #visual-settings .field-stack input:not([type="color"]) {
    font-size: 15px;
  }

  .assistant-color-row {
    grid-template-columns: 64px minmax(0, 1fr);
  }

  .assistant-color-row input[type="color"] {
    width: 64px;
  }

  .assistant-avatar-dropzone {
    min-height: 118px;
    font-size: 16px;
  }

  .assistant-visual-preview {
    justify-items: stretch;
    width: min(100%, 360px);
  }

  .assistant-visual-preview__panel {
    width: 100%;
    min-height: 470px;
  }

  .assistant-visual-preview__header {
    min-height: 58px;
    padding: 14px;
  }

  .assistant-visual-preview__icon-button {
    width: 36px;
    height: 36px;
    min-width: 36px;
    min-height: 36px;
  }

  .assistant-visual-preview__messages {
    min-height: 220px;
    padding: 14px;
  }

  .assistant-visual-preview__composer {
    min-height: 92px;
    margin: 14px;
  }

  .assistant-visual-preview__disclaimer {
    margin-left: 14px;
    margin-right: 14px;
  }

  .assistant-visual-preview__launcher {
    justify-self: end;
    max-width: 100%;
  }

  .assistant-settings-full {
    grid-column: auto;
  }

  .assistant-settings-actions,
  .assistant-settings-actions form,
  .assistant-settings-actions .btn,
  .assistant-copy-block .btn,
  .assistant-wordpress-panel .btn {
    width: 100%;
  }

  .assistant-speed-group {
    grid-template-columns: 1fr;
    gap: 12px;
    padding-top: 28px;
  }

  .assistant-speed-track {
    display: none;
  }

  .assistant-speed-option {
    grid-template-columns: auto minmax(0, 1fr);
    justify-items: start;
    gap: 12px;
    padding: 0;
    text-align: left;
  }

  .assistant-speed-option input {
    width: 100%;
  }

  .assistant-speed-option > span:not(.assistant-speed-dot) {
    max-width: none;
  }

  .assistant-speed-dot {
    width: 23px;
    height: 23px;
    border-width: 2px;
  }

  .assistant-wordpress-panel {
    display: grid;
  }

  .assistant-install-status-list {
    grid-template-columns: 1fr;
    gap: 18px;
    padding: 0;
  }

  .assistant-install-step {
    grid-template-columns: 54px minmax(0, 1fr);
    justify-items: start;
    text-align: left;
  }

  .assistant-install-step:not(:last-child)::after {
    display: none;
  }

  .assistant-install-icon {
    width: 54px;
    height: 54px;
  }

  .assistant-copy-block {
    padding: 0;
  }
}

/* Assistant Training response-review workspace */
.assistant-training-main.edit-responses-main {
  width: 100%;
  max-width: none;
  min-height: calc(100svh - 74px);
  margin: 0;
  padding: 32px;
  background: #fbfaf6;
}

.assistant-training-main .assistant-training-header {
  margin-bottom: 20px;
}

.assistant-training-main .assistant-training-header h1 {
  margin: 0;
  color: #10212d;
  font-size: var(--app-page-heading-size);
  line-height: var(--app-page-heading-line-height);
  letter-spacing: 0;
}

.assistant-training-main.edit-responses-main .edit-responses-shell {
  --review-yellow: #ffe11f;
  --review-yellow-soft: #fff7c5;
  --review-line: #ddd8ca;
  --review-ink: #10212d;
  --review-muted: #536273;
  --review-canvas: #fbfaf6;
  display: grid;
  grid-template-columns: minmax(420px, 3fr) minmax(320px, 2fr);
  grid-template-rows: max(620px, calc(100svh - 260px)) auto;
  width: 100%;
  min-height: 620px;
  height: auto;
  max-height: none;
  border: 1px solid var(--review-line);
  border-radius: 0;
  background: var(--review-canvas);
  overflow: visible;
}

.assistant-training-main.edit-responses-main .edit-responses-inbox {
  gap: 16px;
  padding: 24px 20px 22px 24px;
  border-right: 1px solid var(--review-line);
  background: #fbfaf6;
  min-height: 0;
  overflow: auto;
}

.assistant-training-main .edit-responses-title-block h1 {
  margin: 0;
  color: var(--review-ink);
  font-size: 24px;
  font-weight: 950;
  line-height: 1.08;
  letter-spacing: 0;
}

.assistant-training-main .edit-responses-title-block p {
  max-width: none;
  margin: 7px 0 0;
  color: #40515f;
  font-size: 13px;
  line-height: 1.35;
}

.assistant-training-main .edit-responses-heading-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: flex-start;
  gap: 16px;
}

.assistant-training-main .edit-response-tools {
  display: none;
  align-items: center;
}

.assistant-training-main .edit-response-tools form,
.assistant-training-main .edit-test-chat-form {
  margin: 0;
}

.assistant-training-main .edit-test-chat-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  min-width: 0;
  min-height: 34px;
  padding: 6px 11px;
  border: 1px solid #cfd5dc;
  border-radius: 6px;
  background: #fff;
  color: var(--review-ink);
  font-size: 12px;
  font-weight: 850;
  line-height: 1.1;
  box-shadow: none;
  white-space: nowrap;
}

.assistant-training-main .edit-test-chat-button:hover,
.assistant-training-main .edit-test-chat-button:focus-visible {
  border-color: #10212d;
  background: #fffbea;
  outline: 2px solid rgba(14, 117, 107, .22);
  outline-offset: 2px;
}

.assistant-training-main .edit-response-search-wrap {
  min-width: 0;
}

.assistant-training-main .edit-response-search-form {
  min-width: 0;
}

.assistant-training-main.edit-responses-main .edit-response-search {
  min-height: 46px;
  border-color: #cfd5dc;
  border-radius: 6px;
  padding-left: 38px;
  background: #fff;
  color: var(--review-ink);
  font-size: 13px;
}

.assistant-training-main .edit-response-search-wrap .edit-icon {
  left: 13px;
  color: #6b7886;
}

.assistant-training-main.edit-responses-main .edit-response-list-section {
  gap: 10px;
}

.assistant-training-main.edit-responses-main .edit-response-list-section h2 {
  display: flex;
  align-items: center;
  gap: 6px;
  margin: 8px 0 0;
  color: #46515f;
  font-size: 12px;
  font-weight: 950;
  letter-spacing: .02em;
}

.assistant-training-main .edit-section-icon {
  position: relative;
  display: inline-grid;
  place-items: center;
  width: 18px;
  height: 18px;
  flex: 0 0 auto;
  color: currentColor;
}

.assistant-training-main .edit-section-icon-flag::before {
  content: "";
  width: 11px;
  height: 12px;
  border-left: 2px solid currentColor;
  border-radius: 1px;
  background:
    linear-gradient(currentColor 0 0) 2px 1px / 9px 2px no-repeat,
    linear-gradient(135deg, currentColor 0 50%, transparent 51%) 2px 3px / 9px 7px no-repeat;
}

.assistant-training-main .edit-section-icon-check {
  border: 2px solid currentColor;
  border-radius: 999px;
}

.assistant-training-main .edit-section-icon-check::before {
  content: "";
  width: 8px;
  height: 4px;
  border-left: 2px solid currentColor;
  border-bottom: 2px solid currentColor;
  transform: rotate(-45deg) translate(1px, -1px);
}

.assistant-training-main.edit-responses-main .edit-response-list {
  gap: 12px;
}

.assistant-training-main.edit-responses-main .edit-response-item {
  grid-template-columns: 32px minmax(0, 1fr) 18px;
  gap: 12px;
  min-height: 66px;
  padding: 12px 12px;
  border-color: #dbd66d;
  border-radius: 6px;
  background: #f7f4af;
  color: #101828;
  box-shadow: none;
}

.assistant-training-main.edit-responses-main .edit-response-item[hidden] {
  display: none !important;
}

.assistant-training-main.edit-responses-main .edit-response-item.active {
  border-color: #dbd66d;
  background: #f7f4af;
  box-shadow: none;
}

.assistant-training-main.edit-responses-main .edit-response-item.resolved {
  border-color: #d9dde4;
  background: #fff;
}

.assistant-training-main .edit-review-card-copy {
  gap: 4px;
}

.assistant-training-main .edit-review-card-copy strong {
  color: #111827;
  font-size: 13px;
  line-height: 1.18;
}

.assistant-training-main .edit-review-card-copy small {
  color: #445464;
  font-size: 11px;
  font-weight: 750;
  line-height: 1.2;
}

.assistant-training-main .edit-review-status-icon,
.assistant-training-main .edit-success-icon {
  width: 24px;
  height: 24px;
  border-color: #dbd66d;
  background: #dbd66d;
  color: #6d5c00;
}

.assistant-training-main .edit-response-item.resolved .edit-review-status-icon {
  border-color: #bfe8c8;
  background: #ddf7e2;
  color: #1d9a55;
}

.assistant-training-main .edit-response-resolved-row .edit-review-status-icon {
  border-color: #bfe8c8;
  background: #ddf7e2;
  color: #1d9a55;
}

.assistant-training-main .edit-review-status-icon::before {
  width: 10px;
  height: 10px;
}

.assistant-training-main .edit-review-status-icon-flagged::before {
  width: 11px;
  height: 12px;
  border-left: 2px solid currentColor;
  border-radius: 1px;
  background:
    linear-gradient(currentColor 0 0) 2px 1px / 9px 2px no-repeat,
    linear-gradient(135deg, currentColor 0 50%, transparent 51%) 2px 3px / 9px 7px no-repeat;
}

.assistant-training-main .edit-response-item.resolved .edit-review-status-icon::before {
  width: 11px;
  height: 6px;
  border: 0;
  border-left: 2px solid currentColor;
  border-bottom: 2px solid currentColor;
  border-radius: 0;
  transform: rotate(-45deg) translate(1px, -1px);
}

.assistant-training-main .edit-response-resolved-row .edit-review-status-icon::before {
  width: 11px;
  height: 6px;
  border: 0;
  border-left: 2px solid currentColor;
  border-bottom: 2px solid currentColor;
  border-radius: 0;
  transform: rotate(-45deg) translate(1px, -1px);
}

.assistant-training-main .edit-review-chevron {
  display: inline-grid;
  place-items: center;
  width: 18px;
  height: 18px;
  color: #778391;
}

.assistant-training-main .edit-review-chevron svg {
  width: 18px;
  height: 18px;
  fill: none;
  stroke: currentColor;
  stroke-width: 2.4;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.assistant-training-main.edit-responses-main .edit-response-chat {
  grid-template-rows: auto auto minmax(0, 1fr) auto;
  border: 0;
  border-radius: 0;
  background: #fbfaf6;
  color: var(--review-ink);
}

.assistant-training-main .edit-response-chat .edit-response-header {
  min-height: 72px;
  padding: 17px 20px;
  border-bottom: 1px solid color-mix(in srgb, var(--bombyx-assistant-accent) 82%, #000);
  background: var(--bombyx-assistant-accent);
  color: var(--bombyx-assistant-accent-text);
}

.assistant-training-main .edit-response-header-copy {
  gap: 7px;
}

.assistant-training-main .edit-response-header-copy strong {
  color: var(--bombyx-assistant-accent-text);
  font-size: 15px;
  font-weight: 950;
  line-height: 1.15;
}

.assistant-training-main .edit-response-header-copy span {
  color: color-mix(in srgb, var(--bombyx-assistant-accent-text) 84%, transparent);
  font-size: 12px;
  font-weight: 750;
}

.assistant-training-main .edit-response-header-copy .edit-response-header-meta {
  color: color-mix(in srgb, var(--bombyx-assistant-accent-text) 84%, transparent);
  font-size: 12px;
  font-weight: 750;
}

.assistant-training-main .edit-response-header-copy a.edit-response-header-meta {
  text-decoration: underline;
  text-decoration-thickness: 1px;
  text-underline-offset: 2px;
}

.assistant-training-main .edit-response-header-copy a.edit-response-header-meta:hover,
.assistant-training-main .edit-response-header-copy a.edit-response-header-meta:focus-visible {
  color: #10212d;
}

.assistant-training-main .edit-response-header-actions {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 10px;
  flex: 0 0 auto;
  position: relative;
}

.assistant-training-main .edit-response-header-actions form {
  margin: 0;
}

.assistant-training-main .edit-response-icon-button {
  display: inline-grid;
  place-items: center;
  width: 20px;
  height: 20px;
  padding: 0;
  border: 0;
  border-radius: 999px;
  background: transparent;
  color: color-mix(in srgb, var(--bombyx-assistant-accent-text) 88%, transparent);
  cursor: pointer;
  transition: background .15s ease, color .15s ease, transform .15s ease;
}

.assistant-training-main .edit-response-icon-button:hover,
.assistant-training-main .edit-response-icon-button:focus-visible {
  background: color-mix(in srgb, var(--bombyx-assistant-accent-text) 14%, transparent);
  color: var(--bombyx-assistant-accent-text);
  outline: 2px solid color-mix(in srgb, var(--bombyx-assistant-accent-text) 36%, transparent);
  outline-offset: 2px;
  transform: translateY(-1px);
}

.assistant-training-main .edit-response-icon-button svg {
  width: 20px;
  height: 20px;
  fill: none;
  stroke: currentColor;
  stroke-linecap: round;
  stroke-linejoin: round;
  stroke-width: 2;
}

.assistant-training-main .edit-response-resolve-menu {
  position: relative;
}

.assistant-training-main .edit-response-resolve-menu > summary {
  list-style: none;
  cursor: pointer;
}

.assistant-training-main .edit-response-resolve-menu > summary::-webkit-details-marker {
  display: none;
}

.assistant-training-main .edit-response-resolve-dialog {
  position: absolute;
  top: calc(100% + 8px);
  right: 0;
  z-index: 12;
  display: grid;
  gap: 10px;
  width: min(280px, calc(100vw - 32px));
  padding: 12px;
  border: 1px solid #c9bd54;
  border-radius: 8px;
  background: #fffdf0;
  box-shadow: 0 16px 36px rgba(16, 33, 45, .16);
}

.assistant-training-main .edit-response-resolve-dialog p {
  margin: 0;
  color: var(--review-ink);
  font-size: 12px;
  font-weight: 750;
  line-height: 1.35;
}

.assistant-training-main .edit-response-resolve-actions,
.assistant-training-main .edit-response-resolve-actions form {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 8px;
  margin: 0;
}

.assistant-training-main .edit-response-chat .edit-response-actionbar {
  grid-row: 2;
  padding: 10px 20px;
  border-bottom: 1px solid #e3dfd3;
  background: #fffdf0;
}

.assistant-training-main .edit-response-chat .edit-response-thread {
  padding: 22px 20px 24px;
  background: #fbfaf6;
}

.assistant-training-main .edit-response-chat .edit-response-bubble {
  max-width: min(76%, 720px);
  border-color: #d9dde4;
  border-radius: 8px;
  background: #fff;
  box-shadow: none;
}

.assistant-training-main .edit-response-chat .edit-response-bubble-row:not(.user) .edit-response-bubble {
  width: min(100%, 640px);
  max-width: 100%;
}

.assistant-training-main .edit-response-chat .edit-response-avatar {
  background: var(--bombyx-assistant-accent);
}

.assistant-training-main .edit-response-chat .edit-response-bubble-row.user .edit-response-bubble,
.assistant-training-main .edit-response-chat .bombyx-assistant__bubble--user {
  max-width: min(68%, 560px);
  border-color: color-mix(in srgb, var(--bombyx-assistant-accent) 30%, #d9dde4);
  background: color-mix(in srgb, var(--bombyx-assistant-accent) 10%, #fff);
}

.assistant-training-main .edit-response-chat .edit-response-proposal-card,
.assistant-training-main .edit-response-chat .edit-response-success-card {
  justify-self: stretch;
  box-sizing: border-box;
  width: min(calc(100% - 34px), 640px);
  max-width: 640px;
  min-width: 0;
  border-color: #d9d3bf;
  border-radius: 8px;
  background: #fff;
  box-shadow: none;
  overflow-wrap: anywhere;
}

.assistant-training-main .edit-response-chat .edit-response-proposal-sections {
  display: grid;
  gap: 12px;
  min-width: 0;
}

.assistant-training-main .edit-response-chat .edit-response-proposal-section {
  display: grid;
  gap: 5px;
  min-width: 0;
}

.assistant-training-main .edit-response-chat .edit-response-proposal-section h4 {
  margin: 0;
  color: #14212f;
  font-size: 13px;
  font-weight: 950;
  line-height: 1.25;
}

.assistant-training-main .edit-response-chat .edit-response-proposal-section p {
  margin: 0;
  color: #46515f;
  font-size: 12px;
  line-height: 1.35;
}

.assistant-training-main .edit-response-progress-line {
  display: inline-flex;
  align-items: center;
  gap: 9px;
}

.assistant-training-main .edit-response-progress-line .edit-loading-spinner {
  width: 18px;
  height: 18px;
  border-width: 2px;
}

.assistant-training-main .edit-response-new-answer {
  display: grid;
  gap: 6px;
  margin-top: 4px;
}

.assistant-training-main .edit-response-new-answer strong {
  display: block;
  color: #17642a;
  font-size: 13px;
  font-weight: 950;
}

.assistant-training-main .edit-response-new-answer blockquote {
  margin: 0;
  padding: 10px 12px;
  border-left: 4px solid #74b983;
  border-radius: 4px;
  background: #f8fff9;
  color: #14592b;
  font-size: 14px;
  line-height: 1.45;
  white-space: pre-wrap;
  overflow-wrap: anywhere;
}

.assistant-training-main .edit-response-resolved-panel {
  grid-column: 1 / -1;
  display: grid;
  gap: 10px;
  margin: 18px 0 0;
  padding: 18px 20px;
  border-top: 1px solid var(--review-line);
  background: #fbfaf6;
}

.assistant-training-main .edit-response-resolved-panel h2 {
  margin: 0;
}

.assistant-training-main .edit-response-resolved-table {
  display: grid;
  gap: 0;
  width: 100%;
  min-width: 0;
  overflow: hidden;
  border: 1px solid #d9dde4;
  border-radius: 8px;
  background: #fff;
}

.assistant-training-main .edit-response-resolved-table.is-empty {
  border: 0;
  border-radius: 0;
  background: transparent;
  overflow: visible;
}

.assistant-training-main .edit-response-resolved-table.is-empty > .edit-response-empty {
  padding: 0 2px;
  color: #78808b;
  font-size: 12px;
  line-height: 1.35;
}

.assistant-training-main .edit-response-resolved-head,
.assistant-training-main .edit-response-resolved-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(170px, auto) 122px;
  gap: 14px;
  align-items: start;
}

.assistant-training-main .edit-response-resolved-head {
  padding: 10px 16px;
  border-bottom: 1px solid #e5e7eb;
  background: #f4f6f8;
  color: #46515f;
  font-size: 11px;
  font-weight: 950;
  letter-spacing: .02em;
  text-transform: uppercase;
}

.assistant-training-main .edit-response-resolved-row {
  padding: 12px 16px;
  color: #14212f;
}

.assistant-training-main .edit-response-resolved-row + .edit-response-resolved-row {
  border-top: 1px solid #edf0f3;
}

.assistant-training-main .edit-response-resolved-row.active {
  background: #fffbe3;
}

.assistant-training-main .edit-response-resolved-row[hidden] {
  display: none !important;
}

.assistant-training-main .edit-response-resolved-lesson {
  min-width: 0;
}

.assistant-training-main .edit-response-resolved-lesson summary {
  display: grid;
  grid-template-columns: 24px minmax(0, 1fr) auto;
  gap: 10px;
  align-items: center;
  min-width: 0;
  cursor: pointer;
  list-style: none;
}

.assistant-training-main .edit-response-resolved-lesson summary::-webkit-details-marker {
  display: none;
}

.assistant-training-main .edit-response-resolved-summary {
  min-width: 0;
  overflow-wrap: anywhere;
  color: #111827;
  font-size: 13px;
  font-weight: 900;
  line-height: 1.25;
}

.assistant-training-main .edit-response-resolved-toggle {
  color: #516071;
  font-size: 11px;
  font-weight: 850;
  white-space: nowrap;
}

.assistant-training-main .edit-response-resolved-lesson[open] .edit-response-resolved-toggle {
  color: transparent;
  font-size: 0;
}

.assistant-training-main .edit-response-resolved-lesson[open] .edit-response-resolved-toggle::after {
  content: "Hide details";
  color: #516071;
  font-size: 11px;
}

.assistant-training-main .edit-response-resolved-details {
  display: grid;
  gap: 10px;
  margin: 10px 0 0 34px;
  color: #2f3b48;
  font-size: 13px;
  line-height: 1.4;
}

.assistant-training-main .edit-response-resolved-details p {
  margin: 0;
}

.assistant-training-main .edit-response-resolved-lessons {
  display: grid;
  gap: 7px;
}

.assistant-training-main .edit-response-resolved-lessons h4 {
  margin: 0;
  color: #14212f;
  font-size: 12px;
  font-weight: 950;
}

.assistant-training-main .edit-response-resolved-lessons ul {
  margin: 0;
  padding-left: 18px;
}

.assistant-training-main .edit-response-resolved-lessons li {
  margin: 4px 0;
  overflow-wrap: anywhere;
}

.assistant-training-main .edit-response-resolved-row time {
  color: #445464;
  font-size: 12px;
  font-weight: 750;
  line-height: 1.35;
}

.assistant-training-main .edit-response-resolved-training-link {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 32px;
  padding: 6px 10px;
  border: 1px solid #cfd5dc;
  border-radius: 6px;
  color: #14212f;
  font-size: 12px;
  font-weight: 900;
  text-decoration: none;
}

.assistant-training-main .edit-response-resolved-training-link:hover,
.assistant-training-main .edit-response-resolved-training-link:focus-visible {
  border-color: #d5be19;
  background: #fff7c7;
}

.assistant-training-main .edit-response-chat .edit-response-composer {
  gap: 10px;
  padding: 12px 14px 10px;
  border-top: 1px solid #e3dfd3;
  background: #fbfaf6;
}

.assistant-training-main .edit-response-chat .edit-response-input-row {
  grid-template-columns: 56px minmax(0, 1fr) 56px;
  grid-template-rows: minmax(52px, auto) 56px;
  min-height: 76px;
  padding: 8px 10px 8px 12px;
  border-color: #cfd5dc;
  border-radius: 7px;
  background: #fff;
}

.assistant-training-main .edit-response-chat .edit-response-composer textarea {
  align-self: start;
  min-height: 46px;
  padding: 7px 60px 12px 4px;
  color: var(--review-ink);
  font-size: 14px;
  line-height: 1.45;
}

.assistant-training-main .edit-response-chat .edit-composer-plus,
.assistant-training-main .edit-response-chat .edit-composer-send,
.assistant-training-main .edit-response-chat .dictation-control {
  width: 56px;
  min-width: 56px;
  height: 56px;
}

.assistant-training-main .edit-response-chat .edit-composer-plus {
  margin: 0;
  color: var(--review-ink);
  font-size: 28px;
}

.assistant-training-main .edit-response-chat .edit-composer-plus:hover,
.assistant-training-main .edit-response-chat .edit-composer-plus:focus-visible,
.assistant-training-main .edit-response-chat .dictation-button:hover,
.assistant-training-main .edit-response-chat .dictation-button:focus-visible {
  background: rgba(16, 33, 45, .08);
}

.assistant-training-main .edit-response-chat .edit-composer-send {
  grid-column: 3;
  margin: 0;
  background: transparent;
  color: #4b5563;
  transition: opacity .15s ease, visibility .15s ease, transform .15s ease;
}

.assistant-training-main .edit-response-chat .edit-composer-send:disabled {
  visibility: hidden;
  opacity: 0;
  transform: scale(.9);
  pointer-events: none;
}

.assistant-training-main .edit-response-chat .dictation-button,
.assistant-training-main .edit-response-chat .dictation-accept,
.assistant-training-main .edit-response-chat .dictation-cancel {
  width: 56px;
  min-width: 56px;
  height: 56px;
  color: var(--review-ink);
}

.assistant-training-main .edit-response-chat .dictation-control {
  grid-column: 3;
  margin: 0;
  transition: transform .15s ease;
}

.assistant-training-main .edit-response-chat .dictation-control.bombyx-assistant__dictation--with-submit {
  transform: translateX(-56px);
}

.assistant-training-main .edit-response-chat .edit-response-composer.is-working .edit-response-input-row {
  background: #f8fafc;
}

.assistant-training-main .edit-response-chat .edit-response-composer.is-working textarea::placeholder {
  color: #667085;
}

.assistant-training-main .edit-response-chat .dictation-recorder {
  min-height: 56px;
}

.assistant-training-main .edit-response-chat .edit-response-footer-meta {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  color: #6b7886;
}

@media (min-width: 901px) {
  .assistant-training-main.edit-responses-main {
    padding-top: 30px;
  }

  .assistant-training-main.edit-responses-main .edit-responses-shell {
    min-height: 620px;
    height: auto;
    max-height: none;
  }
}

@media (max-width: 1100px) {
  .assistant-training-main.edit-responses-main {
    padding-inline: 24px;
  }

  .assistant-training-main.edit-responses-main .edit-responses-shell {
    grid-template-columns: minmax(360px, 3fr) minmax(300px, 2fr);
  }
}

@media (max-width: 900px) {
  .assistant-training-main.edit-responses-main {
    max-width: none;
    min-height: auto;
    padding: 16px 16px 28px;
  }

  .assistant-training-main .assistant-training-header {
    margin-bottom: 14px;
  }

  .assistant-training-main .assistant-training-header h1 {
    font-size: 27px;
  }

  .assistant-training-main.edit-responses-main .edit-responses-shell,
  .assistant-training-main.edit-responses-main .edit-responses-shell[data-has-selected-review="true"],
  .assistant-training-main.edit-responses-main .edit-responses-shell[data-explicit-review="false"] {
    position: static;
    inset: auto;
    z-index: auto;
    display: grid;
    grid-template-columns: 1fr;
    grid-template-rows: auto;
    width: 100%;
    height: auto;
    max-height: none;
    min-height: 0;
    border: 0;
    overflow: visible;
  }

  .assistant-training-main.edit-responses-main .edit-responses-shell[data-explicit-review="false"] .edit-responses-inbox {
    display: grid;
  }

  .assistant-training-main.edit-responses-main .edit-responses-shell[data-explicit-review="false"] .edit-response-detail {
    display: none;
  }

  .assistant-training-main.edit-responses-main .edit-responses-inbox {
    padding: 18px 16px;
    border-right: 0;
    background: transparent;
    overflow: visible;
  }

  .assistant-training-main.edit-responses-main .edit-response-item {
    min-height: 68px;
  }

  .assistant-training-main .edit-response-resolved-head {
    display: none;
  }

  .assistant-training-main .edit-response-resolved-row {
    grid-template-columns: 1fr;
    gap: 9px;
  }

  .assistant-training-main .edit-response-resolved-training-link {
    justify-self: start;
  }

  .assistant-training-main.edit-responses-main .edit-responses-shell[data-explicit-review="true"] {
    position: fixed;
    inset: 0;
    z-index: 1000;
    height: 100svh;
    max-height: 100svh;
    min-height: 100svh;
    background: #fbfaf6;
    overflow: hidden;
  }

  .assistant-training-main.edit-responses-main .edit-responses-shell[data-explicit-review="true"] .edit-responses-inbox {
    display: none;
  }

  .assistant-training-main.edit-responses-main .edit-responses-shell[data-explicit-review="true"] .edit-response-detail {
    display: grid;
    min-height: 100svh;
    height: 100svh;
    overflow: hidden;
  }

  .assistant-training-main.edit-responses-main .edit-responses-shell[data-explicit-review="true"] .edit-response-resolved-panel {
    display: none;
  }

  .assistant-training-main .edit-response-header .edit-response-mobile-back {
    display: inline-grid;
    place-items: center;
    flex: 0 0 44px;
    width: 44px;
    height: 44px;
    border-radius: 50%;
    background: rgba(16, 33, 45, .08);
    color: var(--review-ink);
    font-size: 22px;
  }

  .assistant-training-main .edit-response-chat .edit-response-header {
    min-height: 66px;
    padding: 10px 14px;
  }

  .assistant-training-main .edit-response-header-actions {
    margin-left: auto;
  }

  .assistant-training-main .edit-response-chat .edit-response-actionbar {
    padding-inline: 14px;
  }

  .assistant-training-main .edit-response-chat .edit-response-thread {
    padding: 20px 16px;
  }

  .assistant-training-main .edit-response-chat .edit-response-bubble,
  .assistant-training-main .edit-response-chat .edit-response-bubble-row.user .edit-response-bubble,
  .assistant-training-main .edit-response-chat .bombyx-assistant__bubble--user {
    max-width: min(100%, 520px);
  }

  .assistant-training-main .edit-response-chat .edit-response-composer {
    padding-bottom: calc(8px + env(safe-area-inset-bottom, 0px));
  }
}

@media (max-width: 560px) {
  .assistant-training-main.edit-responses-main {
    padding: 14px 12px 24px;
  }

  .assistant-training-main .assistant-training-header {
    margin-bottom: 12px;
  }

  .assistant-training-main .edit-response-tools {
    display: none;
  }

  .assistant-training-main .edit-responses-heading-row {
    align-items: flex-start;
    gap: 10px;
  }

  .assistant-training-main .edit-test-chat-button {
    max-width: 132px;
    white-space: normal;
  }

  .assistant-training-main .edit-responses-title-block h1 {
    font-size: 23px;
  }

  .assistant-training-main .edit-response-chat .edit-response-header {
    gap: 9px;
  }

  .assistant-training-main .edit-response-header-copy strong {
    font-size: 14px;
  }

  .assistant-training-main .edit-response-chat .edit-response-thread {
    padding-inline: 16px;
  }

  .assistant-training-main .edit-response-chat .edit-response-bubble-row {
    grid-template-columns: 28px minmax(0, 1fr);
  }

  .assistant-training-main .edit-response-chat .edit-response-bubble-row.user {
    grid-template-columns: minmax(0, 1fr);
  }

  .assistant-training-main .edit-response-chat .edit-response-composer {
    margin: 0;
  }
}

.simple-empty {
  margin: 0;
  color: #667085;
  font-weight: 650;
}

.settings-summary-list {
  display: grid;
  gap: 10px;
  margin: 0;
}

.settings-summary-list > div {
  display: grid;
  grid-template-columns: minmax(96px, .32fr) minmax(0, 1fr);
  gap: 14px;
  align-items: baseline;
}

.settings-summary-list dt {
  color: #667085;
  font-size: 13px;
  font-weight: 750;
}

.settings-summary-list dd {
  min-width: 0;
  margin: 0;
  color: #344054;
  font-weight: 650;
  overflow-wrap: anywhere;
}

.settings-summary-list dd a,
.assistant-status-line a,
.status-link {
  color: var(--brand-teal);
  font-weight: 800;
  text-decoration: underline;
  text-underline-offset: 3px;
}

.organization-onboarding-page {
  display: grid;
  gap: 18px;
}

.organization-onboarding-header {
  gap: 0;
  padding-bottom: 14px;
}

.organization-onboarding-header .app-page-header__main {
  display: grid;
  gap: 0;
  align-self: start;
  align-content: start;
  height: max-content;
  min-height: 0;
  font-size: 0;
  line-height: 0;
}

.organization-onboarding-header .app-page-header__copy {
  font-size: var(--app-body-size);
  line-height: var(--app-body-line-height);
}

.organization-onboarding-header .page-header-actions,
.organization-onboarding-actions,
.organization-website-change-actions,
.button-row {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  align-items: center;
}

.organization-onboarding-header .page-header-actions {
  justify-content: flex-end;
}

.organization-setup-path {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  align-items: start;
  gap: 12px;
  padding: 12px 18px;
}

.organization-setup-step {
  min-width: 0;
  display: grid;
  align-content: start;
  gap: 7px;
  padding: 12px;
  border: 1px solid #e5e7eb;
  border-radius: 8px;
  background: #fbfaf6;
}

.organization-setup-step span {
  display: inline-grid;
  place-items: center;
  width: 28px;
  height: 28px;
  border-radius: 999px;
  background: #e5e7eb;
  color: #172033;
  font-size: 13px;
  font-weight: 900;
}

.organization-setup-step strong {
  color: #111827;
  font-size: 15px;
}

.organization-setup-step p {
  margin: 0;
  color: #667085;
  font-size: 13px;
  overflow-wrap: anywhere;
}

.organization-setup-step.is-complete span {
  background: #0e756b;
  color: #fff;
}

.organization-setup-step.is-active {
  border-color: #111827;
  background: #fff;
}

.organization-setup-step.is-active span {
  background: #111827;
  color: #fff;
}

.organization-onboarding-recovery,
.organization-onboarding-next {
  display: grid;
  gap: 16px;
}

.organization-onboarding-recovery h2,
.organization-onboarding-next h2 {
  margin: 0 0 6px;
}

.organization-onboarding-url-form {
  max-width: 620px;
}

.organization-website-helper {
  display: block;
  margin-top: 6px;
  font-size: 13px;
}

.organization-website-helper[hidden] {
  display: none;
}

.organization-website-change-modal {
  width: min(100%, 620px);
}

.organization-website-change-copy,
.organization-identity-confirmation-field {
  display: grid;
  gap: 12px;
}

.organization-website-change-list {
  margin: 0;
}

.organization-website-change-list dd {
  overflow-wrap: anywhere;
}

.organization-identity-confirmation-field[hidden] {
  display: none;
}

.organization-website-change-actions {
  justify-content: flex-end;
  padding-top: 4px;
}

.home-continue-setup-card {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 16px;
  align-items: center;
  margin-bottom: 18px;
  border-color: #d7ded7;
  background: #fffdf6;
}

.home-continue-setup-card h2 {
  margin: 0 0 6px;
}

.assistant-status-line {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 10px;
  margin: 0;
}

.brain-library-head,
.brain-library-row {
  column-gap: 16px;
  grid-template-columns: minmax(280px, 1fr) minmax(150px, .34fr) minmax(125px, .28fr) minmax(156px, auto);
}

.brain-library-head span:last-child {
  text-align: left;
}

.brain-library-row .training-source-actions {
  flex-wrap: nowrap;
  justify-content: flex-start;
  gap: 8px;
}

.brain-library-row .training-icon-action {
  position: relative;
  width: 36px;
  min-width: 36px;
  min-height: 36px;
  grid-auto-flow: row;
  gap: 0;
  padding: 0;
}

.brain-library-row .training-icon-action span {
  position: absolute;
  width: 1px;
  height: 1px;
  overflow: hidden;
  clip: rect(0 0 0 0);
  white-space: nowrap;
}

.brain-library-row .training-icon-action.is-loading svg {
  animation: sourceRefreshSpin .85s linear infinite;
}

.source-refresh-message {
  max-width: 620px;
  margin: 6px 0 0;
  color: var(--brand-teal);
  font-size: 13px !important;
  font-weight: 800;
  line-height: 1.35 !important;
  opacity: 1;
  transition: opacity .5s ease;
}

.source-refresh-message[data-type="error"] {
  color: #b42318;
}

.source-refresh-message[hidden] {
  display: none;
}

.source-refresh-message.is-fading {
  opacity: 0;
}

@keyframes sourceRefreshSpin {
  to {
    transform: rotate(360deg);
  }
}

.source-url-link {
  display: flex;
  align-items: center;
  gap: 4px;
  justify-self: start;
  width: fit-content;
  max-width: 100%;
  margin-top: 4px;
  color: #0645ad;
  font-size: 13px;
  font-weight: 400;
  line-height: 1.3;
  text-decoration: none;
  transition: color .16s ease, text-decoration-color .16s ease;
}

.source-url-link span {
  min-width: 0;
  overflow-wrap: anywhere;
  text-decoration: underline;
  text-underline-offset: 2px;
}

.source-url-link:hover,
.source-url-link:focus-visible {
  color: #063f9d;
}

.source-url-link:hover span,
.source-url-link:focus-visible span {
  text-decoration-thickness: 1px;
}

.source-url-link:hover .source-url-external-icon,
.source-url-link:focus-visible .source-url-external-icon {
  color: #063f9d;
}

.source-url-link:visited {
  color: #551a8b;
}

.source-url-external-icon {
  flex: 0 0 auto;
  width: 13px;
  height: 13px;
  fill: none;
  stroke: currentColor;
  stroke-linecap: round;
  stroke-linejoin: round;
  stroke-width: 2;
}

.training-library-header > div {
  display: grid;
  gap: 6px;
}

.training-library-header p {
  max-width: 780px;
  margin: 0;
  color: #475467;
  font-size: 14px;
  font-weight: 650;
  line-height: 1.45;
}

.brain-page-shell .training-library-card .training-library-header {
  min-height: 82px;
}

.brain-page-shell .training-library-card .training-library-header h2 {
  margin: 0;
  color: #111827;
  font-size: 23px;
  font-weight: 850;
  line-height: 1.2;
}

.brain-page-shell .training-library-card .training-library-header h2 span {
  margin-left: 6px;
  color: #475467;
  font-size: 17px;
  font-weight: 650;
}

.training-row-empty {
  padding: 16px 24px;
  border-top: 1px solid #ece8df;
}

.lessons-learned-list .conversation-row {
  padding: 16px 24px;
}

.lessons-learned-list .lesson-row {
  align-items: center;
  gap: 16px;
}

.lesson-row-main {
  gap: 5px;
}

.lesson-row-title {
  display: block;
}

.lesson-row-title strong {
  color: #172033;
  font-size: 14.5px;
  font-weight: 700;
  line-height: 1.28;
}

.lesson-row-summary,
.lesson-row-detail,
.lesson-row-meta {
  margin: 0;
  color: #475467;
  font-size: 14px;
  font-weight: 650;
  line-height: 1.45;
  overflow-wrap: anywhere;
}

.lesson-row-summary {
  color: #172033;
}

.lesson-row-summary > span,
.lesson-row-detail > span {
  display: inline-block;
  margin-right: 6px;
  color: #111827;
  font-weight: 900;
}

.lesson-row-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 4px 12px;
  color: #667085;
  font-size: 13px;
  font-weight: 500;
}

.lesson-row-meta a,
.lesson-row-actions a {
  color: var(--brand-teal);
  text-decoration: underline;
  text-underline-offset: 3px;
}

.lesson-row-actions {
  display: flex;
  align-items: center;
  justify-content: flex-end;
}

.lesson-row-actions a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 34px;
  padding: 4px 0;
  font-weight: 850;
}

.brain-lesson-back-row {
  margin: -6px 0 18px;
}

.brain-lesson-summary-card h2 {
  margin: 0 0 16px;
  color: #111827;
  font-size: 24px;
  font-weight: 850;
  line-height: 1.2;
}

.brain-lesson-detail-text {
  max-width: 760px;
  margin: 0;
  color: #172033;
  font-size: 15px;
  line-height: 1.55;
  white-space: pre-wrap;
}

.brain-lesson-source-title {
  margin: 8px 0 0;
  font-size: 13px;
  font-weight: 600;
  line-height: 1.35;
}

.brain-review-card {
  display: grid;
  gap: 18px;
  overflow: visible;
  border: 0;
  background: transparent;
}

.brain-review-card > .training-library-header {
  min-height: 0;
  padding: 0;
  background: transparent;
}

.brain-review-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
}

.brain-artifact-coverage {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
  margin: 0;
}

.brain-artifact-coverage > div {
  min-width: 0;
  padding: 12px;
  border: 1px solid #e5e7eb;
  border-radius: 8px;
  background: #fff;
}

.brain-artifact-coverage dt {
  color: #667085;
  font-size: 12px;
  font-weight: 750;
}

.brain-artifact-coverage dd {
  margin: 4px 0 0;
  overflow-wrap: anywhere;
  color: #111827;
  font-size: 18px;
  font-weight: 850;
}

@media (max-width: 900px) {
  .brain-artifact-coverage {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

.brain-review-group {
  display: grid;
  gap: 14px;
  min-width: 0;
  padding: 18px;
  border: 1px solid #e5e7eb;
  border-radius: 8px;
  background: #fff;
}

.brain-review-group-header {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
}

.brain-review-group h3 {
  margin: 0;
  color: #111827;
  font-size: 19px;
  line-height: 1.2;
}

.brain-review-group p {
  margin: 0;
  color: #344054;
  font-weight: 650;
  line-height: 1.45;
}

.brain-topic-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  color: #475467;
  font-size: 12px;
  font-weight: 750;
}

.brain-topic-meta span {
  padding: 4px 8px;
  border-radius: 999px;
  background: #f2f4f7;
}

.brain-topic-issues {
  margin: 0;
}

.brain-topic-issues .brain-review-points {
  margin-top: 8px;
}

.brain-review-status {
  flex: 0 0 auto;
  padding: 4px 9px;
  border-radius: 999px;
  background: #f2f4f7;
  color: #344054;
  font-size: 12px;
  font-weight: 850;
}

.brain-review-status-looks-good {
  background: #ecfdf3;
  color: #027a48;
}

.brain-review-status-needs-review {
  background: #fff8e6;
  color: #8a5a00;
}

.brain-review-status-missing-info {
  background: #fef3f2;
  color: #b42318;
}

.brain-review-status-not-applicable,
.brain-review-status-compiling {
  background: #f2f4f7;
  color: #475467;
}

.brain-review-points {
  display: grid;
  gap: 8px;
  margin: 0;
  padding-left: 20px;
  color: #475467;
  font-weight: 650;
}

.brain-review-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  align-items: flex-start;
}

.brain-review-action {
  position: relative;
}

.brain-review-action > summary,
.brain-review-details > summary {
  cursor: pointer;
  list-style: none;
}

.brain-review-action > summary::-webkit-details-marker,
.brain-review-details > summary::-webkit-details-marker,
.brain-operations-card > summary::-webkit-details-marker {
  display: none;
}

.brain-review-action[open] {
  flex-basis: 100%;
}

.brain-review-action form {
  display: grid;
  gap: 10px;
  margin-top: 8px;
  padding: 12px;
  border: 1px solid #e5e7eb;
  border-radius: 8px;
  background: #f9fafb;
}

.brain-review-action textarea,
.brain-review-action select {
  width: 100%;
  min-width: 0;
}

.brain-review-details {
  display: grid;
  gap: 10px;
  padding-top: 4px;
}

.brain-review-details > summary {
  justify-self: start;
  color: var(--brand-teal);
  font-weight: 850;
}

.brain-review-detail-row {
  display: grid;
  gap: 6px;
  padding: 10px 0;
  border-top: 1px solid #ece8df;
}

.brain-review-detail-row blockquote {
  margin: 0;
  padding-left: 12px;
  border-left: 3px solid #dbd66d;
  color: #344054;
  font-weight: 650;
}

.brain-review-detail-row .muted {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.brain-operations-card {
  padding: 0;
}

.brain-operations-card > summary {
  cursor: pointer;
  list-style: none;
}

.brain-operations-card > .mvp-stat-grid {
  padding: 0 18px 18px;
}

.brain-page-shell .training-page-top:not(.app-page-header) {
  padding-bottom: 0;
  border-bottom: 0;
}

.brain-overview-hero {
  display: grid;
  position: relative;
  justify-items: center;
  padding-top: 0;
}

.brain-overview-hero img {
  display: block;
  width: 100%;
  aspect-ratio: 1400 / 525;
  height: auto;
  object-fit: contain;
}

.brain-summary-cta {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  align-items: center;
  gap: 16px;
  min-height: 78px;
  padding: 14px 18px;
  border: 1px solid #d5d056;
  border-radius: 8px;
  background: var(--brand-yellow);
  color: #111827;
}

.brain-summary-icon,
.brain-overview-stat-icon {
  display: grid;
  place-items: center;
  color: var(--brand-teal);
}

.brain-summary-icon {
  width: 42px;
  height: 42px;
  color: #172033;
  border: 1.5px solid currentColor;
  border-radius: 6px;
  background: rgba(255, 255, 255, .22);
}

.brain-summary-icon svg,
.brain-overview-stat-icon svg {
  display: block;
  width: 100%;
  height: 100%;
}

.brain-summary-icon svg {
  width: 26px;
  height: 26px;
}

.brain-summary-icon svg path,
.brain-overview-stat-icon svg path,
.brain-overview-stat-icon svg circle {
  fill: none;
  stroke: currentColor;
  stroke-width: 1.8;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.brain-summary-cta h2 {
  margin: 0 0 2px;
  color: #000;
  font-size: 20px;
  line-height: 1.15;
}

.brain-summary-cta p {
  margin: 0;
  color: #172033;
  font-size: 14px;
  font-weight: 700;
  line-height: 1.3;
}

.brain-summary-button {
  justify-self: end;
  min-width: 62px;
  min-height: 34px;
  padding: 7px 12px;
  border: 1.5px solid #111827;
  border-radius: 0;
  background: #fff;
  color: #111827;
}

.brain-summary-button:hover,
.brain-summary-button:focus-visible {
  border-color: #111827;
  background: #111827;
  color: #fff;
}

.public-brain-links-panel {
  display: grid;
  gap: 14px;
  margin: 16px 0 18px;
  padding: 16px;
  border: 1px solid #d8e4df;
  border-radius: 8px;
  background: #f5fbf9;
}

.public-brain-links-panel h3 {
  margin: 0 0 4px;
  color: #111827;
  font-size: 18px;
  line-height: 1.2;
}

.public-brain-title-link {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  color: inherit;
  text-decoration: none;
}

.public-brain-title-link:hover,
.public-brain-title-link:focus-visible {
  color: #0e756b;
  text-decoration: underline;
  text-underline-offset: 3px;
}

.public-brain-new-tab-icon {
  display: inline-grid;
  place-items: center;
  flex: 0 0 auto;
  width: 15px;
  height: 15px;
  font-size: 13px;
  font-weight: 900;
  line-height: 1;
}

.public-brain-links-panel p {
  margin: 0;
}

.public-brain-detail-form {
  display: grid;
  gap: 10px;
}

.public-brain-detail-group.assistant-speed-group {
  margin: 0;
  padding-top: 34px;
}

.public-brain-detail-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 10px 14px;
  align-items: center;
}

.public-brain-detail-status {
  flex: 1 1 280px;
}

.public-brain-link-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 10px;
  align-items: end;
}

.public-brain-link-grid label {
  display: grid;
  gap: 6px;
  min-width: 0;
  color: #111827;
  font-size: 13px;
  font-weight: 850;
}

.public-brain-link-grid input[readonly] {
  width: 100%;
  min-height: 40px;
  padding: 8px 10px;
  border: 1px solid #cfd4dc;
  border-radius: 6px;
  background: #fff;
  color: #172033;
  overflow: hidden;
  text-overflow: ellipsis;
}

.public-brain-links-panel .copy-status {
  min-height: 18px;
  color: #0e756b;
  font-size: 13px;
  font-weight: 800;
}

.brain-overview-stats {
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 12px;
}

.brain-overview-stat {
  grid-template-columns: auto minmax(0, 1fr);
  grid-template-rows: auto auto;
  align-items: center;
  gap: 3px 16px;
  min-height: 94px;
  padding: 20px 26px;
  border-color: #e0ddd3;
  box-shadow: 0 1px 0 rgba(17, 24, 39, .02);
}

.brain-overview-stat-icon {
  grid-row: 1 / 3;
  width: 48px;
  height: 48px;
}

.brain-overview-stat span:not(.brain-overview-stat-icon) {
  align-self: end;
  color: #667085;
  font-size: 13px;
  font-weight: 850;
  line-height: 1.2;
}

.brain-overview-stat strong {
  align-self: start;
  color: #111827;
  font-size: 20px;
  font-weight: 900;
  line-height: 1.15;
}

.brain-overview-stat-link {
  color: inherit;
  text-decoration: none;
}

.brain-overview-stat-link:hover,
.brain-overview-stat-link:focus-visible {
  border-color: var(--brand-teal);
  background: #f5fbf9;
  outline: 0;
}

.brain-subnav {
  justify-self: start;
  width: auto;
  margin: -2px 0 2px;
  padding: 0;
  border: 0;
  gap: 8px;
}

.brain-subnav a {
  min-height: 34px;
  align-items: center;
  border: 1px solid #d8d2c4;
  border-radius: 999px;
  background: #fff;
  color: #475467;
  font-size: 13px;
}

.brain-subnav a:hover,
.brain-subnav a:focus-visible {
  border-color: var(--brand-teal);
  background: #f5fbf9;
  color: var(--brand-teal);
}

@media (max-width: 1180px) {
  .brain-overview-stats {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .brain-library-head {
    display: none;
  }

  .brain-library-row {
    grid-template-columns: 1fr;
    gap: 12px;
    align-items: start;
    min-height: 0;
    padding: 18px 0;
  }

  .brain-library-row .training-source-actions {
    padding-left: 44px;
  }

  .brain-library-row .training-source-updated {
    padding-left: 44px;
  }
}

@media (max-width: 900px) {
  .app-page-container .settings-panel form > .btn,
  .app-page-container .auth-form > .auth-submit {
    justify-self: stretch;
    width: 100%;
  }

  .app-page-utility {
    position: relative;
    top: auto;
    left: auto;
    width: 100%;
    margin-bottom: 18px;
    justify-content: space-between;
  }

  .app-page-utility .app-nav-toggle {
    display: inline-grid;
    border-color: #3a3a3a;
    background: #111;
    color: #fff;
  }

  .app-page-utility .app-nav-toggle span {
    background: #fff;
  }

  .mvp-grid,
  .mvp-grid.two,
  .organization-switch-layout,
  .mvp-stat-grid,
  .brain-review-grid {
    grid-template-columns: 1fr;
  }

  .organization-switch-form .btn {
    justify-self: stretch;
    width: 100%;
  }

  .brain-overview-hero {
    gap: 8px;
    padding-top: 8px;
  }

  .brain-summary-cta {
    grid-template-columns: auto minmax(0, 1fr);
    gap: 12px;
    padding: 14px 16px;
  }

  .brain-summary-button {
    grid-column: 2;
    justify-self: start;
  }

  .public-brain-link-grid {
    grid-template-columns: 1fr;
  }

  .public-brain-link-grid .btn {
    width: 100%;
  }

  .lessons-learned-list .conversation-row {
    grid-template-columns: 1fr;
    gap: 10px;
    padding-left: 18px;
    padding-right: 18px;
  }

  .lesson-row-actions {
    justify-content: flex-start;
  }

  .lesson-row-meta a,
  .lesson-row-actions a {
    white-space: normal;
  }

  .mvp-card-header,
  .conversation-row,
  .lead-row {
    align-items: flex-start;
  }

  .settings-summary-list > div {
    grid-template-columns: 1fr;
    gap: 3px;
  }

  .organization-setup-path {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .organization-onboarding-header .page-header-actions,
  .organization-onboarding-actions,
  .organization-website-change-actions,
  .button-row {
    align-items: stretch;
  }

  .organization-onboarding-header .page-header-actions .btn,
  .organization-onboarding-actions .btn,
  .organization-website-change-actions .btn,
  .button-row .btn {
    flex: 1 1 180px;
    justify-content: center;
  }

  .home-continue-setup-card {
    grid-template-columns: 1fr;
  }

  .home-continue-setup-card .btn {
    justify-content: center;
  }
}

@media (max-width: 560px) {
  .organization-setup-path {
    grid-template-columns: 1fr;
  }

  .organization-website-change-modal {
    padding: 18px;
  }

  .brain-overview-hero h2 {
    font-size: 34px;
  }

  .brain-overview-hero p {
    font-size: 20px;
  }

  .brain-summary-cta {
    grid-template-columns: 1fr;
    justify-items: start;
    min-height: 0;
    padding: 14px;
  }

  .brain-summary-icon {
    width: 38px;
    height: 38px;
  }

  .brain-summary-icon svg {
    width: 24px;
    height: 24px;
  }

  .brain-summary-cta h2 {
    font-size: 18px;
  }

  .brain-summary-cta p {
    font-size: 13px;
  }

  .brain-summary-button {
    grid-column: auto;
    width: 100%;
  }

  .brain-overview-stat {
    min-height: 82px;
    padding: 16px;
  }

  .brain-overview-stat-icon {
    width: 40px;
    height: 40px;
  }

  .brain-subnav {
    width: 100%;
  }

  .mvp-card-header,
  .conversation-row,
  .lead-row {
    display: grid;
    grid-template-columns: 1fr;
  }

  .conversation-row a,
  .lead-row a {
    justify-self: start;
  }

  .account-menu-panel {
    width: min(88vw, 330px);
  }
}

/* Final authenticated-app typography guard. Keep this after page-specific app rules. */
body.has-app-sidebar :where(.app-page-container, .home-page-content, .app-page-content) :where(.page-header h1, .app-page-header h1, .compact-header h1, .section-heading h1) {
  font-size: var(--app-page-heading-size);
  line-height: var(--app-page-heading-line-height);
  letter-spacing: 0;
}

body.has-app-sidebar :where(.app-page-container, .home-page-content, .app-page-content) :where(.panel > h2, .card > h2, .assistant-settings-card-heading h2) {
  font-size: var(--app-panel-heading-size);
  line-height: var(--app-panel-heading-line-height);
  letter-spacing: 0;
}

body.has-app-sidebar :where(.app-page-container, .home-page-content, .app-page-content) :where(.page-header p, .app-page-header p, .compact-header p, .section-heading p, .panel > p, .card > p, .assistant-settings-card-heading p) {
  font-size: var(--app-body-size);
  line-height: var(--app-body-line-height);
}

body.has-app-sidebar :where(.app-page-container, .home-page-content, .app-page-content) :where(.field-stack > span:first-child, .field-group > legend) {
  font-size: var(--app-label-size);
  line-height: var(--app-label-line-height);
}
/* Workshop Decks */
.workshop-admin-grid {
    display: grid;
    grid-template-columns: minmax(0, 1.25fr) minmax(280px, .75fr);
    gap: 18px;
    margin-bottom: 18px;
}

.workshop-admin-panel .admin-panel-heading {
    align-items: flex-start;
}

.workshop-admin-meta {
    display: grid;
    gap: 12px;
    margin: 0;
}

.workshop-admin-meta div {
    display: grid;
    gap: 4px;
}

.workshop-admin-meta dt,
.workshop-admin-notes h3 {
    color: #111827;
    font-size: 13px;
    font-weight: 750;
    margin: 0;
}

.workshop-admin-meta dd {
    margin: 0;
    min-width: 0;
    overflow-wrap: anywhere;
}

.workshop-admin-meta a {
    color: #0e756b;
    font-weight: 650;
}

.workshop-admin-notes {
    border-top: 1px solid #e5e7eb;
    margin-top: 16px;
    padding-top: 14px;
}

.workshop-admin-notes p {
    margin: 6px 0 0;
}

.workshop-presenter-body {
    background: #fbf9f3;
    color: #000;
    margin: 0;
}

.workshop-presenter {
    min-height: 100svh;
    padding: clamp(14px, 3vw, 34px);
}

.workshop-presenter-slide {
    background: #fff;
    border: 1px solid #eae7de;
    border-radius: 8px;
    display: grid;
    grid-template-rows: auto 1fr;
    min-height: calc(100svh - clamp(28px, 6vw, 68px));
    overflow: hidden;
    position: relative;
}

.workshop-presenter-body--browser-fullscreen {
    overflow: hidden;
}

.workshop-presenter-slide:fullscreen,
.workshop-presenter-slide--browser-fullscreen {
    border: 0;
    border-radius: 0;
    height: 100svh;
    inset: 0;
    margin: 0;
    max-height: 100svh;
    min-height: 100svh;
    position: fixed;
    width: 100vw;
    z-index: 1000;
}

.workshop-presenter-slide::before {
    background: #dbd66d;
    content: "";
    height: 8px;
    left: 0;
    position: absolute;
    right: 0;
    top: 0;
}

.workshop-presenter-slide--cover {
    background: #000;
    color: #fff;
}

.workshop-presenter-slide--cover::before {
    height: 12px;
}

.workshop-presenter-brand {
    align-items: center;
    color: inherit;
    display: flex;
    font-size: 13px;
    font-weight: 700;
    justify-content: space-between;
    letter-spacing: 0;
    padding: clamp(24px, 4vw, 42px) clamp(22px, 5vw, 64px) 0;
}

.workshop-presenter-mark {
    align-items: center;
    display: inline-flex;
}

.workshop-presenter-mark img {
    display: block;
    height: clamp(46px, 6vw, 78px);
    object-fit: contain;
    width: auto;
}

.workshop-presenter-content {
    align-self: center;
    display: grid;
    gap: clamp(18px, 3vw, 30px);
    max-width: 1120px;
    padding: clamp(28px, 5vw, 72px) clamp(22px, 6vw, 86px);
}

.workshop-presenter-eyebrow {
    color: #0e756b;
    font-size: clamp(13px, 1.4vw, 16px);
    font-weight: 800;
    margin: 0;
    text-transform: uppercase;
}

.workshop-presenter-slide--cover .workshop-presenter-eyebrow {
    color: #dbd66d;
}

.workshop-presenter h1 {
    font-family: "Cal Sans", system-ui, sans-serif;
    font-size: clamp(38px, 7.5vw, 96px);
    letter-spacing: 0;
    line-height: .96;
    margin: 0;
    max-width: 980px;
}

.workshop-presenter-markdown {
    color: inherit;
    display: grid;
    font-size: clamp(18px, 2vw, 28px);
    gap: 12px;
    line-height: 1.28;
    max-width: 920px;
}

.workshop-presenter-markdown h2,
.workshop-presenter-markdown h3,
.workshop-presenter-markdown p,
.workshop-presenter-markdown ul {
    margin: 0;
}

.workshop-presenter-markdown ul {
    display: grid;
    gap: 10px;
    padding-left: 1.15em;
}

.workshop-action-block {
    align-items: stretch;
    display: grid;
    gap: 16px;
    grid-template-columns: minmax(0, 1fr) auto;
    max-width: 980px;
}

.workshop-action-url {
    background: #fbf9f3;
    border: 1px solid #eae7de;
    border-radius: 8px;
    display: grid;
    gap: 6px;
    padding: 18px;
}

.workshop-action-url span,
.workshop-action-url small {
    color: #626767;
    font-size: 14px;
    font-weight: 700;
}

.workshop-action-url strong {
    color: #000;
    font-size: clamp(16px, 2vw, 24px);
    overflow-wrap: anywhere;
}

.workshop-presenter-cta {
    align-items: center;
    background: #111827;
    border: 1px solid #111827;
    border-radius: 4px;
    color: #fff;
    display: inline-flex;
    font-weight: 800;
    justify-content: center;
    min-height: 54px;
    padding: 14px 22px;
    text-decoration: none;
}

.workshop-presenter-cta--yellow {
    background: #dbd66d;
    border-color: #dbd66d;
    color: #000;
    justify-self: start;
}

.workshop-process-grid,
.workshop-prompt-grid,
.workshop-checklist-grid {
    display: grid;
    gap: 14px;
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.workshop-process-card,
.workshop-prompt-card,
.workshop-check-item {
    background: #fbf9f3;
    border: 1px solid #eae7de;
    border-radius: 8px;
    min-width: 0;
    padding: clamp(16px, 2vw, 24px);
}

.workshop-process-card span,
.workshop-check-item span {
    background: #dbd66d;
    border-radius: 999px;
    color: #000;
    display: inline-grid;
    font-weight: 900;
    height: 28px;
    margin-bottom: 14px;
    place-items: center;
    width: 28px;
}

.workshop-check-item span::before {
    content: "";
    background: #000;
    border-radius: 999px;
    display: block;
    height: 8px;
    width: 8px;
}

.workshop-process-card p,
.workshop-check-item p,
.workshop-prompt-card {
    font-size: clamp(16px, 1.8vw, 23px);
    font-weight: 750;
    line-height: 1.22;
    margin: 0;
}

.workshop-presenter-slide-actions {
    inset: auto clamp(14px, 2vw, 24px) clamp(14px, 2vw, 24px);
    pointer-events: none;
    position: absolute;
    z-index: 2;
}

.workshop-presenter-edge-link,
.workshop-presenter-fullscreen {
    background: rgba(251, 249, 243, .86);
    border: 1px solid rgba(234, 231, 222, .92);
    border-radius: 6px;
    color: #111827;
    font: inherit;
    font-size: 12px;
    font-weight: 800;
    line-height: 1;
    min-height: 30px;
    padding: 8px 10px;
    pointer-events: auto;
    text-decoration: none;
}

.workshop-presenter-edge-link {
    position: absolute;
    bottom: 0;
}

.workshop-presenter-edge-link--previous {
    left: 0;
}

.workshop-presenter-edge-link--next {
    right: 0;
}

.workshop-presenter-fullscreen {
    cursor: pointer;
    left: 50%;
    position: absolute;
    transform: translateX(-50%);
}

.workshop-presenter a:focus-visible,
.workshop-presenter-fullscreen:focus-visible {
    outline: 3px solid #0e756b;
    outline-offset: 3px;
}

@media (max-width: 900px) {
    .workshop-admin-grid,
    .workshop-action-block,
    .workshop-process-grid,
    .workshop-prompt-grid,
    .workshop-checklist-grid {
        grid-template-columns: 1fr;
    }

    .workshop-presenter-content {
        align-self: start;
        padding-bottom: 76px;
    }
}

@media (max-width: 520px) {
    .workshop-presenter {
        padding: 10px;
    }

    .workshop-presenter-brand {
        align-items: flex-start;
        flex-direction: column;
        gap: 6px;
    }

    .workshop-presenter h1 {
        font-size: clamp(34px, 15vw, 58px);
    }

    .workshop-presenter-mark img {
        height: 46px;
    }

    .workshop-presenter-edge-link,
    .workshop-presenter-fullscreen {
        font-size: 11px;
        min-height: 28px;
        padding: 7px 9px;
    }
}

/* Client Loom public pages. Keep this layer scoped to the Laravel-owned public
   layout so Loom pages align with the live marketing header without affecting
   authenticated app screens. */
.public-page .public-header {
  min-height: 96px;
}

.public-page .public-header .brand {
  padding: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}

.public-page main {
  background: #fbfaf7;
}

.public-page .page-header.public-hero {
  display: block;
  width: min(100% - 36px, 1120px);
  margin: 0 auto;
  padding: clamp(34px, 6vw, 58px) 0 clamp(26px, 5vw, 42px);
  border-bottom: 3px solid #000;
}

.public-page .page-header.public-hero > div {
  max-width: 920px;
}

.public-page .page-header.public-hero .eyebrow {
  margin: 0 0 8px;
  color: #3f4f4f;
  font-size: 14px;
  font-weight: 900;
  letter-spacing: .14em;
  line-height: 1.15;
  text-transform: uppercase;
}

.public-page .page-header.public-hero h1 {
  margin: 0;
  color: #000;
  font-size: clamp(30px, 4vw, 48px);
  font-weight: 900;
  line-height: 1.06;
  letter-spacing: 0;
}

.public-page .page-header.public-hero .muted {
  max-width: 820px;
  margin: 12px 0 0;
  color: #344054;
  font-size: clamp(16px, 1.7vw, 19px);
  font-weight: 650;
  line-height: 1.5;
}

.public-page .public-card-grid,
.public-page main > .panel,
.public-page main > .grid:not(.public-card-grid) {
  width: min(100% - 36px, 1120px);
  margin-right: auto;
  margin-left: auto;
}

.public-page .public-card-grid,
.public-page main > .panel {
  margin-top: 24px;
  margin-bottom: clamp(44px, 7vw, 72px);
}

.public-page main > .panel + .panel {
  margin-top: 18px;
}

.public-page .public-brain-profile {
  width: min(100% - 36px, 1120px);
  padding-top: 24px;
}

.public-page .public-brain-profile-topic {
  padding: clamp(22px, 3vw, 28px);
}

@media (max-width: 900px) {
  .public-page .public-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    min-height: 76px;
    padding: 8px 16px;
  }

  .public-page .public-header .brand {
    width: auto;
  }

  .public-page .public-header .brand-logo {
    width: auto;
    max-width: 82px;
    height: 58px;
    min-height: 0;
  }

  .public-nav-toggle {
    display: inline-grid;
    align-content: center;
    gap: 5px;
    width: 46px;
    height: 46px;
    flex: 0 0 46px;
    padding: 10px;
    border: 1px solid rgba(219, 214, 109, .72);
    border-radius: 4px;
    background: transparent;
    color: #fff;
    cursor: pointer;
  }

  .public-nav-toggle > span {
    display: block;
    width: 100%;
    height: 2px;
    border-radius: 999px;
    background: #dbd66d;
    transition: transform .16s ease, opacity .16s ease;
  }

  .public-nav-open .public-nav-toggle > span:nth-child(1) {
    transform: translateY(7px) rotate(45deg);
  }

  .public-nav-open .public-nav-toggle > span:nth-child(2) {
    opacity: 0;
  }

  .public-nav-open .public-nav-toggle > span:nth-child(3) {
    transform: translateY(-7px) rotate(-45deg);
  }

  .public-page .public-nav {
    position: absolute;
    top: 100%;
    right: 0;
    left: 0;
    z-index: 55;
    display: grid;
    justify-content: stretch;
    gap: 0;
    max-height: calc(100dvh - 76px);
    overflow-y: auto;
    overscroll-behavior: contain;
    padding: 8px max(16px, env(safe-area-inset-right)) calc(16px + env(safe-area-inset-bottom)) max(16px, env(safe-area-inset-left));
    border-top: 1px solid rgba(255, 255, 255, .12);
    background: #020202;
    box-shadow: 0 18px 36px rgba(0, 0, 0, .24);
  }

  .js .public-page .public-nav {
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transform: translateY(-8px);
  }

  .js .public-page .public-nav-open .public-nav {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
    transform: translateY(0);
  }

  .public-page .public-nav a {
    display: flex;
    align-items: center;
    min-height: 48px;
    padding: 12px 4px;
    border-bottom: 1px solid rgba(255, 255, 255, .1);
  }

  .public-page .public-nav a:not(.public-nav-account)::after {
    display: none;
  }

  .public-page .public-nav a[aria-current="page"] {
    color: #dbd66d;
  }

  .public-page .public-nav-account {
    justify-content: center;
    margin-top: 10px;
    padding: 12px 16px;
    border: 0;
    background: #dbd66d;
    color: #000;
  }

  html:not(.js) .public-nav-toggle {
    display: none;
  }

  html:not(.js) .public-page .public-header {
    flex-wrap: wrap;
  }

  html:not(.js) .public-page .public-nav {
    position: static;
    width: 100%;
    box-shadow: none;
  }
}

@media (max-width: 560px) {
  .public-page .page-header.public-hero,
  .public-page .public-card-grid,
  .public-page main > .panel,
  .public-page main > .grid:not(.public-card-grid),
  .public-page .public-brain-profile {
    width: min(100% - 28px, 1120px);
  }

  .public-page .page-header.public-hero {
    padding-top: 28px;
  }
}

.lead-scorecard-page {
  background: #fbf9f3;
  color: #111827;
}

.scorecard-shell {
  width: min(100% - 36px, 1160px);
  margin: 0 auto;
}

.scorecard-hero {
  background: #050505;
  color: #fff;
  padding: clamp(52px, 8vw, 94px) 0 clamp(36px, 6vw, 72px);
}

.scorecard-hero .scorecard-shell,
.scorecard-report-grid,
.scorecard-intro-grid,
.scorecard-report-layout {
  display: grid;
  gap: clamp(24px, 4vw, 48px);
}

.scorecard-hero .scorecard-shell {
  grid-template-columns: minmax(0, 1.1fr) minmax(280px, 0.65fr);
  align-items: end;
}

.scorecard-eyebrow {
  margin: 0 0 12px;
  color: #dbd66d;
  font-size: 13px;
  font-weight: 800;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.scorecard-hero h1,
.scorecard-report-hero h1 {
  max-width: 840px;
  margin: 0;
  font-size: clamp(42px, 8vw, 84px);
  font-weight: 900;
  line-height: 0.98;
  letter-spacing: 0;
}

.scorecard-report-hero h1 {
  max-width: 680px;
  font-size: clamp(38px, 6vw, 64px);
}

.scorecard-hero__copy > p:not(.scorecard-eyebrow):not(.scorecard-trust-note),
.scorecard-report-hero p {
  max-width: 720px;
  margin: 18px 0 0;
  color: rgba(255, 255, 255, 0.78);
  font-size: clamp(17px, 2vw, 21px);
  line-height: 1.45;
}

.scorecard-report-hero .scorecard-business-name {
  margin-top: 12px;
  color: #dbd66d;
  font-size: 15px;
  font-weight: 850;
}

.scorecard-primary-link,
.scorecard-submit,
.scorecard-submit:visited {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 46px;
  padding: 0 22px;
  border: 1px solid #dbd66d;
  border-radius: 4px;
  background: #dbd66d;
  color: #111;
  font-weight: 850;
  text-decoration: none;
  cursor: pointer;
}

.scorecard-primary-link {
  margin-top: 28px;
}

.scorecard-submit:disabled {
  opacity: 0.68;
  cursor: wait;
}

.scorecard-trust-note {
  margin-top: 16px;
  color: rgba(255, 255, 255, 0.62);
  font-size: 14px;
}

.scorecard-hero__panel,
.scorecard-audit-bridge,
.scorecard-score-card,
.scorecard-report-panel,
.scorecard-revenue-card,
.scorecard-audit-card {
  border: 1px solid #eae7de;
  border-radius: 8px;
  background: #fff;
}

.scorecard-hero__panel {
  display: grid;
  gap: 12px;
  padding: 22px;
  border-color: rgba(219, 214, 109, 0.28);
  background: rgba(255, 255, 255, 0.08);
}

.scorecard-hero__panel span {
  display: block;
  padding: 14px 0;
  border-bottom: 1px solid rgba(255, 255, 255, 0.14);
  color: #fff;
  font-weight: 800;
}

.scorecard-hero__panel span:last-child {
  border-bottom: 0;
}

.scorecard-intro-band,
.scorecard-form-section,
.scorecard-report-section {
  padding: clamp(42px, 7vw, 78px) 0;
}

.scorecard-intro-grid {
  grid-template-columns: minmax(0, 1fr) minmax(280px, 0.55fr);
  align-items: stretch;
}

.scorecard-intro-grid h2,
.scorecard-form-heading h2,
.scorecard-report-panel h2,
.scorecard-audit-card h2 {
  margin: 0;
  color: #000;
  font-size: clamp(28px, 4vw, 46px);
  line-height: 1.05;
  letter-spacing: 0;
}

.scorecard-intro-grid p,
.scorecard-form-heading p,
.scorecard-audit-bridge span,
.scorecard-report-panel p,
.scorecard-audit-card p,
.scorecard-revenue-card p,
.scorecard-revenue-card small {
  color: #576666;
  line-height: 1.55;
}

.scorecard-audit-bridge {
  display: grid;
  align-content: center;
  gap: 10px;
  padding: 24px;
}

.scorecard-audit-bridge strong {
  color: #000;
  font-size: 22px;
}

.scorecard-form-heading {
  max-width: 760px;
  margin-bottom: 24px;
}

.scorecard-error-summary {
  margin-bottom: 20px;
  padding: 16px 18px;
  border: 1px solid #9f1d1d;
  border-radius: 8px;
  background: #fff5f5;
  color: #7f1d1d;
}

.scorecard-form {
  display: grid;
  gap: 22px;
}

.scorecard-progress {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}

.scorecard-progress span {
  padding: 9px 12px;
  border: 1px solid #d7d3c7;
  border-radius: 999px;
  background: #fff;
  color: #576666;
  font-size: 13px;
  font-weight: 800;
}

.scorecard-progress .is-active {
  border-color: #dbd66d;
  background: #dbd66d;
  color: #111;
}

.scorecard-step {
  min-width: 0;
  margin: 0;
  padding: clamp(20px, 3vw, 30px);
  border: 1px solid #eae7de;
  border-radius: 8px;
  background: #fff;
}

.scorecard-step legend {
  padding: 0 8px;
  color: #000;
  font-size: 22px;
  font-weight: 900;
}

.scorecard-field {
  margin-top: 24px;
}

.scorecard-field:first-of-type {
  margin-top: 8px;
}

.scorecard-label,
.scorecard-contact-grid label {
  display: block;
  margin-bottom: 10px;
  color: #000;
  font-size: 15px;
  font-weight: 850;
}

.scorecard-label > span {
  display: inline-flex;
  align-items: center;
  min-height: 24px;
  margin-right: 8px;
  padding: 2px 8px;
  border-radius: 999px;
  background: #111827;
  color: #fee32e;
  font-size: 12px;
  font-weight: 900;
}

.scorecard-choice-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
}

.scorecard-choice-grid.single {
  grid-template-columns: minmax(0, 1fr);
}

.scorecard-choice-grid.multi,
.scorecard-choice-grid.compact {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.scorecard-choice {
  display: flex;
  gap: 10px;
  align-items: flex-start;
  min-height: 52px;
  padding: 13px 14px;
  border: 1px solid #d7d3c7;
  border-radius: 8px;
  background: #fbf9f3;
  color: #172033;
  font-weight: 720;
  line-height: 1.3;
}

.scorecard-choice input {
  width: 18px;
  height: 18px;
  margin-top: 1px;
  accent-color: #0e756b;
}

.scorecard-choice:has(input:checked) {
  border-color: #0e756b;
  background: #edf8f6;
}

.scorecard-contact-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
}

.scorecard-contact-grid label span {
  color: #667085;
  font-weight: 650;
}

.scorecard-contact-grid input {
  display: block;
  width: 100%;
  min-height: 46px;
  margin-top: 8px;
  padding: 0 12px;
  border: 1px solid #d7d3c7;
  border-radius: 6px;
  background: #fff;
  color: #111827;
  font: inherit;
}

.scorecard-choice input:focus-visible,
.scorecard-contact-grid input:focus-visible,
.scorecard-submit:focus-visible,
.scorecard-primary-link:focus-visible,
.scorecard-secondary-link:focus-visible {
  outline: 3px solid rgba(14, 117, 107, 0.32);
  outline-offset: 2px;
}

.scorecard-field-error {
  display: block;
  margin-top: 8px;
  color: #9f1d1d;
  font-size: 13px;
  font-weight: 800;
}

.scorecard-consent {
  margin: 22px 0 0;
  color: #576666;
  font-size: 14px;
  line-height: 1.45;
}

.scorecard-submit-row {
  display: flex;
  flex-wrap: wrap;
  gap: 18px;
  align-items: center;
}

.scorecard-loading {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  color: #576666;
  font-size: 14px;
  font-weight: 800;
}

.scorecard-loading span {
  padding: 8px 10px;
  border: 1px solid #eae7de;
  border-radius: 999px;
  background: #fff;
}

.scorecard-honeypot {
  position: absolute;
  left: -10000px;
  width: 1px;
  height: 1px;
  opacity: 0;
}

.scorecard-report-hero {
  background: #050505;
  color: #fff;
  padding: clamp(44px, 7vw, 82px) 0;
}

.scorecard-report-grid {
  grid-template-columns: minmax(0, 1fr) minmax(260px, 360px);
  align-items: center;
}

.scorecard-fallback-note {
  color: #dbd66d !important;
  font-size: 15px !important;
}

.scorecard-score-card {
  padding: 24px;
  border-color: rgba(219, 214, 109, 0.34);
  background: #111;
  color: #fff;
}

.scorecard-score-card .scorecard-score {
  font-size: 84px;
  font-weight: 950;
  line-height: 1;
}

.scorecard-score-card strong {
  display: block;
  margin-top: 14px;
  color: #dbd66d;
  font-size: 22px;
}

.scorecard-score-card p {
  color: rgba(255, 255, 255, 0.72);
  font-size: 15px;
}

.scorecard-report-layout {
  grid-template-columns: minmax(0, 1fr) minmax(280px, 380px);
  align-items: start;
}

.scorecard-report-main,
.scorecard-report-aside,
.scorecard-report-continuation,
.scorecard-report-details {
  display: grid;
  gap: 20px;
}

.scorecard-report-continuation,
.scorecard-report-details {
  grid-column: 1 / -1;
}

.scorecard-report-panel,
.scorecard-revenue-card,
.scorecard-audit-card {
  padding: clamp(20px, 3vw, 28px);
}

.scorecard-report-panel h2,
.scorecard-audit-card h2 {
  font-size: clamp(24px, 3vw, 32px);
}

.scorecard-section-kicker,
.scorecard-priority-move span {
  margin: 0 0 8px;
  color: #0e756b !important;
  font-size: 12px;
  font-weight: 900;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.scorecard-priority-move {
  margin-top: 18px;
  padding: 16px 18px;
  border-left: 5px solid #0e756b;
  border-radius: 8px;
  background: #f2fbf9;
}

.scorecard-priority-move p {
  margin: 0;
  color: #172033;
  font-weight: 760;
}

.scorecard-bars {
  display: grid;
  gap: 16px;
  margin-top: 20px;
}

.scorecard-bar-row > div:first-child {
  display: flex;
  justify-content: space-between;
  gap: 16px;
  margin-bottom: 8px;
  font-weight: 850;
}

.scorecard-bar-row span {
  color: #576666;
}

.scorecard-bar-track {
  height: 10px;
  overflow: hidden;
  border-radius: 999px;
  background: #f3f1eb;
}

.scorecard-bar-track span {
  display: block;
  height: 100%;
  border-radius: inherit;
  background: #0e756b;
}

.scorecard-leak-list {
  display: grid;
  gap: 14px;
  margin-top: 20px;
}

.scorecard-leak-list article {
  padding: 18px;
  border: 1px solid #eae7de;
  border-radius: 8px;
  background: #fbf9f3;
}

.scorecard-leak-list h3 {
  margin: 0 0 8px;
  color: #000;
  font-size: 20px;
}

.scorecard-leak-list strong {
  display: block;
  margin-top: 12px;
  color: #0e756b;
}

.scorecard-next-steps {
  display: grid;
  gap: 10px;
  margin: 18px 0 0;
  padding-left: 22px;
  color: #172033;
  line-height: 1.55;
}

.scorecard-revenue-card {
  border-color: #dbd66d;
  background: #111;
  color: #fff;
}

.scorecard-revenue-card span {
  color: #dbd66d;
  font-size: 13px;
  font-weight: 850;
  text-transform: uppercase;
}

.scorecard-revenue-card strong {
  display: block;
  margin: 10px 0;
  font-size: clamp(28px, 4vw, 38px);
  line-height: 1.05;
}

.scorecard-revenue-card p,
.scorecard-revenue-card small {
  color: rgba(255, 255, 255, 0.76);
}

.scorecard-audit-card {
  background: #fbf9f3;
}

.scorecard-audit-card .scorecard-submit {
  width: 100%;
  margin-top: 8px;
}

.scorecard-detail-panel {
  padding: 0;
  overflow: hidden;
}

.scorecard-detail-panel summary {
  min-height: 56px;
  padding: 18px 22px;
  color: #000;
  font-size: 18px;
  font-weight: 900;
  cursor: pointer;
}

.scorecard-detail-panel summary:focus-visible {
  outline: 3px solid rgba(14, 117, 107, 0.32);
  outline-offset: -3px;
}

.scorecard-detail-panel .scorecard-bars,
.scorecard-answer-list {
  margin: 0;
  padding: 0 22px 22px;
}

.scorecard-secondary-link {
  display: inline-flex;
  margin-top: 14px;
  color: #0e756b;
  font-weight: 850;
}

.scorecard-answer-card dl,
.scorecard-answer-list {
  display: grid;
  gap: 12px;
  margin: 18px 0 0;
}

.scorecard-answer-card div,
.scorecard-answer-list div {
  display: grid;
  gap: 2px;
}

.scorecard-answer-card dt,
.scorecard-answer-list dt {
  color: #576666;
  font-size: 12px;
  font-weight: 850;
  text-transform: uppercase;
}

.scorecard-answer-card dd,
.scorecard-answer-list dd {
  margin: 0;
  color: #172033;
  font-weight: 760;
}

.scorecard-detail-panel .scorecard-answer-list {
  margin: 0;
  padding: 0 22px 22px;
}

@media (max-width: 900px) {
  .scorecard-hero .scorecard-shell,
  .scorecard-report-grid,
  .scorecard-intro-grid,
  .scorecard-report-layout {
    grid-template-columns: 1fr;
  }

  .scorecard-choice-grid,
  .scorecard-choice-grid.multi,
  .scorecard-choice-grid.compact,
  .scorecard-contact-grid {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 560px) {
  .scorecard-shell {
    width: min(100% - 28px, 1160px);
  }

  .scorecard-hero h1,
  .scorecard-report-hero h1 {
    font-size: 42px;
  }

  .scorecard-step,
  .scorecard-report-panel,
  .scorecard-revenue-card,
  .scorecard-audit-card {
    padding: 18px;
  }

  .scorecard-submit-row,
  .scorecard-submit,
  .scorecard-primary-link {
    width: 100%;
  }
}

/* Final mobile account guard: later app rules must not re-expand this control. */
@media (max-width: 600px) {
  .account-menu > summary {
    width: 44px;
    min-width: 44px;
    max-width: 44px;
    height: 44px;
    min-height: 44px;
    padding: 0;
    justify-content: center;
  }

  .account-menu-label {
    display: none;
  }

  .account-menu-initial {
    display: block;
    font-size: 15px;
    font-weight: 800;
  }
}

/* Property source lifecycle and shared metadata */
.training-source-status {
  display: grid;
  min-width: 0;
  gap: 4px;
}

.training-source-status small {
  color: #667085;
  font-size: 12px;
  font-weight: 650;
  line-height: 1.35;
  overflow-wrap: anywhere;
}

.source-metadata-fields {
  display: grid;
  min-width: 0;
  gap: 14px;
  margin: 18px 0;
  padding: 18px;
  border: 1px solid #e1ded4;
  border-radius: 10px;
  background: #fbfaf6;
}

.source-metadata-fields legend {
  padding: 0 6px;
  color: #172033;
  font-weight: 850;
}

.source-metadata-fields .field-help {
  margin: 0;
  color: #667085;
  font-size: 13px;
  line-height: 1.45;
}

.source-metadata-date-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
}

.source-lifecycle-list {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 8px;
  margin: 18px 0 0;
  padding: 0;
  list-style: none;
}

.source-lifecycle-list li {
  display: grid;
  min-width: 0;
  gap: 3px;
  padding: 10px 12px;
  border: 1px solid #dfe4e2;
  border-radius: 8px;
  background: #fff;
}

.source-lifecycle-list li[data-state="complete"] {
  border-color: #9fd2c5;
  background: #f1faf7;
}

.source-lifecycle-list li[data-state="review"],
.source-lifecycle-list li[data-state="warning"] {
  border-color: #e4c66e;
  background: #fff9e9;
}

.source-lifecycle-list li[data-state="blocked"],
.source-lifecycle-list li[data-state="failed"] {
  border-color: #e9b8b2;
  background: #fff4f2;
}

.source-lifecycle-list strong,
.source-lifecycle-list span {
  overflow-wrap: anywhere;
}

.source-lifecycle-list strong {
  color: #172033;
  font-size: 12px;
  line-height: 1.35;
}

.source-lifecycle-list span {
  color: #667085;
  font-size: 11px;
  font-weight: 750;
}

.source-diagnostic-value,
.source-detail-page-shell .source-external-link,
.source-detail-page-shell h1,
.source-detail-page-shell .conversation-row strong {
  overflow-wrap: anywhere;
  word-break: break-word;
}

.source-diagnostic-list {
  max-width: none;
}

.source-assessment-summary {
  display: grid;
  gap: 10px;
  margin-top: 16px;
  padding: 14px;
  border: 1px solid #e1ded4;
  border-radius: 8px;
  background: #fff;
}

.source-assessment-summary p {
  margin: 0;
  overflow-wrap: anywhere;
}

@media (max-width: 1180px) {
  .brain-library-row .training-source-status {
    padding-left: 44px;
  }

  .source-lifecycle-list {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 700px) {
  .source-metadata-date-grid,
  .source-lifecycle-list {
    grid-template-columns: 1fr;
  }

  .source-metadata-fields {
    padding: 14px;
  }
}
/* Bombyx-controlled Codex Operations */
.codex-operations-onboarding,
.codex-operations-brief,
.codex-judgment-inbox,
.codex-division-card,
.codex-work-board,
.codex-operations-footer-grid,
.codex-project-detail-grid {
  margin-top: 18px;
}

.codex-operations-onboarding {
  border-color: #b9d7d2;
  background: linear-gradient(145deg, #f4fbf9 0%, #fff 70%);
}

.codex-operations-steps {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 10px;
  margin: 18px 0 0;
  padding: 0;
  list-style: none;
}

.codex-operations-steps li {
  display: grid;
  grid-template-columns: 30px minmax(0, 1fr);
  gap: 10px;
  min-width: 0;
  padding: 12px;
  border: 1px solid var(--border);
  border-radius: 10px;
  background: #fff;
}

.codex-operations-steps li.is-complete {
  border-color: #a7d3c9;
  background: #f2faf7;
}

.codex-operations-steps p,
.codex-operations-stat-grid p,
.codex-project-summary-grid p {
  margin: 4px 0 0;
  color: var(--soft-muted);
  font-size: 13px;
}

.codex-step-number {
  display: grid;
  place-items: center;
  width: 30px;
  height: 30px;
  border-radius: 50%;
  background: #edf2f1;
  color: #344054;
  font-weight: 850;
}

.is-complete .codex-step-number {
  background: var(--brand-teal);
  color: #fff;
}

.codex-operations-stat-grid,
.codex-project-summary-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 14px;
  margin-top: 18px;
}

.codex-operations-stat-grid .panel,
.codex-project-summary-grid .panel {
  display: grid;
  gap: 3px;
  padding: 18px;
}

.codex-operations-stat-grid strong,
.codex-project-summary-grid strong {
  color: #172033;
  font-size: clamp(24px, 3vw, 34px);
  line-height: 1;
}

.codex-operations-summary {
  max-width: 900px;
  color: #172033;
  font-size: 17px;
  line-height: 1.65;
}

.codex-brief-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 14px;
  margin-top: 18px;
}

.codex-brief-grid > div {
  min-width: 0;
  padding: 14px;
  border-radius: 10px;
  background: #f8faf9;
}

.codex-brief-grid ul {
  margin: 10px 0 0;
  padding-left: 18px;
}

.codex-operations-empty {
  padding: 18px;
  border: 1px dashed #cbd5d1;
  border-radius: 10px;
  background: #fafcfb;
}

.codex-operations-empty.success {
  border-color: #a7d3c9;
  background: #f2faf7;
}

.codex-operations-empty p {
  margin: 5px 0 0;
  color: var(--soft-muted);
}

.codex-judgment-card {
  padding: 18px 0;
  border-top: 1px solid var(--border);
}

.codex-judgment-card:first-of-type {
  margin-top: 14px;
}

.codex-judgment-card h3 {
  margin: 7px 0 0;
}

.codex-protected-action {
  margin: 14px 0;
  border: 1px solid #ebc88d;
  border-radius: 10px;
  background: #fffaf0;
}

.codex-protected-action summary {
  padding: 12px 14px;
  cursor: pointer;
  font-weight: 800;
}

.codex-protected-action > div {
  padding: 0 14px 14px;
}

.codex-judgment-options {
  margin-block: 12px;
}

.codex-judgment-actions,
.codex-project-row-actions,
.codex-session-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  align-items: center;
}

.codex-projects-section {
  margin-top: 24px;
}

.codex-division-card + .codex-division-card {
  margin-top: 14px;
}

.codex-project-list {
  display: grid;
  gap: 10px;
}

.codex-project-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto auto;
  gap: 18px;
  align-items: center;
  padding: 14px;
  border: 1px solid var(--border);
  border-radius: 10px;
  background: #fff;
}

.codex-project-row > a {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: 5px 10px;
  align-items: center;
  color: inherit;
  text-decoration: none;
}

.codex-project-row > a .muted {
  grid-column: 1 / -1;
}

.codex-project-metrics {
  display: flex;
  gap: 14px;
  color: var(--soft-muted);
  font-size: 13px;
  white-space: nowrap;
}

.codex-project-state {
  display: inline-flex;
  align-items: center;
  width: fit-content;
  min-height: 26px;
  padding: 4px 9px;
  border: 1px solid #cbd5e1;
  border-radius: 999px;
  background: #f8fafc;
  color: #475569;
  font-size: 12px;
  font-weight: 850;
}

.codex-project-state.active { border-color: #87c8b9; background: #effaf6; color: #0b685e; }
.codex-project-state.paused { border-color: #e8b0a8; background: #fff4f2; color: #9f2f24; }
.codex-project-state.offline { border-color: #cbd5e1; background: #f1f5f9; color: #475569; }
.codex-project-state.needs-you { border-color: #eac27d; background: #fff8e8; color: #81520c; }
.codex-project-state.dormant { border-color: #d9dde5; background: #f8fafc; color: #64748b; }

.codex-project-top-grid,
.codex-project-management-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
  margin-top: 18px;
}

.codex-work-lanes {
  display: grid;
  grid-template-columns: repeat(5, minmax(220px, 1fr));
  gap: 12px;
  overflow-x: auto;
  padding-bottom: 8px;
  scroll-padding-inline: 8px;
  scrollbar-gutter: stable;
}

.codex-work-lanes:focus-visible {
  outline: 3px solid rgba(14, 117, 107, 0.28);
  outline-offset: 4px;
}

.codex-work-lane {
  min-width: 220px;
  padding: 10px;
  border-radius: 10px;
  background: #f6f8f7;
}

.codex-lane-heading {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 10px;
}

.codex-lane-heading h3 {
  margin: 0;
  font-size: 15px;
}

.codex-lane-heading span {
  display: grid;
  place-items: center;
  min-width: 24px;
  height: 24px;
  border-radius: 50%;
  background: #e5ebe8;
  font-size: 12px;
  font-weight: 800;
}

.codex-work-card,
.codex-run-row,
.codex-session-row {
  padding: 12px;
  border: 1px solid var(--border);
  border-radius: 9px;
  background: #fff;
}

.codex-work-card + .codex-work-card,
.codex-run-row + .codex-run-row,
.codex-session-row + .codex-session-row {
  margin-top: 9px;
}

.codex-work-card {
  display: grid;
  gap: 7px;
}

.codex-work-card p,
.codex-run-row p,
.codex-session-row p {
  margin: 0;
}

.codex-work-state {
  color: var(--soft-muted);
  font-size: 11px;
  font-weight: 800;
  letter-spacing: .04em;
  text-transform: uppercase;
}

.codex-lane-empty {
  margin: 0;
  padding: 20px 8px;
  color: var(--soft-muted);
  text-align: center;
}

.codex-session-row {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  align-items: center;
}

.codex-online-dot {
  color: var(--soft-muted);
  font-size: 12px;
}

.codex-online-dot::before {
  content: '';
  display: inline-block;
  width: 8px;
  height: 8px;
  margin-right: 6px;
  border-radius: 50%;
  background: #94a3b8;
}

.codex-online-dot.online::before { background: #169b7b; }
.codex-adopt-form { margin-top: 14px; }

.codex-work-evidence {
  padding-top: 8px;
  border-top: 1px solid var(--border);
}

.codex-work-evidence summary {
  cursor: pointer;
  color: #0b685e;
  font-size: 12px;
  font-weight: 850;
}

.codex-work-evidence ul {
  margin: 8px 0 0;
  padding-left: 18px;
  color: #475569;
  font-size: 12px;
  overflow-wrap: anywhere;
}

.codex-work-handoff {
  display: grid;
  gap: 7px;
}

.codex-thread-id {
  width: min(100%, 280px);
  min-width: 0;
  padding: 8px 9px;
  border: 1px solid var(--border);
  border-radius: 7px;
  background: #f8fafc;
  color: #334155;
  font: 700 12px/1.35 ui-monospace, SFMono-Regular, Consolas, monospace;
  text-overflow: ellipsis;
}

.codex-session-actions .codex-thread-id {
  flex: 1 1 190px;
}

.codex-standing-policy {
  display: grid;
  gap: 12px;
  margin: 0;
  padding: 16px;
  border: 1px solid #dfc27b;
  border-radius: 10px;
  background: #fffaf0;
}

.codex-standing-policy legend {
  padding: 0 6px;
  color: #63450e;
  font-weight: 850;
}

.codex-standing-action {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: 10px;
  align-items: start;
}

.codex-standing-action input {
  margin-top: 4px;
}

.codex-standing-action small {
  display: block;
  margin-top: 4px;
  color: #685d47;
  line-height: 1.45;
}

.codex-model-policy {
  display: grid;
  gap: 12px;
  padding: 16px;
  border: 1px solid var(--border);
  border-radius: 10px;
  background: #f8faf9;
}

.codex-role-profile-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}

.codex-run-row {
  display: grid;
  gap: 5px;
}

@media (max-width: 1100px) {
  .codex-operations-steps { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .codex-brief-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .codex-project-row { grid-template-columns: minmax(0, 1fr) auto; }
  .codex-project-row-actions { grid-column: 1 / -1; }
}

@media (max-width: 760px) {
  .codex-operations-steps,
  .codex-operations-stat-grid,
  .codex-project-summary-grid,
  .codex-brief-grid,
  .codex-project-top-grid,
  .codex-project-management-grid,
  .codex-role-profile-grid { grid-template-columns: 1fr; }
  .codex-project-row { grid-template-columns: 1fr; }
  .codex-project-row-actions { grid-column: auto; }
  .codex-project-metrics { flex-wrap: wrap; white-space: normal; }
  .codex-judgment-actions .btn,
  .codex-project-row-actions .btn,
  .codex-work-handoff .btn,
  .codex-work-handoff a { width: 100%; justify-content: center; }
  .codex-session-row { align-items: stretch; flex-direction: column; }
  .codex-session-actions { align-items: stretch; flex-direction: column; }
  .codex-session-actions .codex-thread-id { flex: none; width: 100%; }
}

/* Call for me */
.call-for-me-page .app-page-container {
  width: 100%;
}

.call-for-me-shell {
  width: min(100%, 700px);
  padding-block: 28px 44px;
}

.call-for-me-history-shortcut {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  width: min(100%, 700px);
  padding: 18px;
  border: 1px solid var(--app-border, #e5e7eb);
  border-radius: 8px;
  background: #fff;
}

.call-for-me-history-shortcut > div {
  display: grid;
  gap: 4px;
}

.call-for-me-history-shortcut h2,
.call-for-me-history-shortcut p {
  margin: 0;
}

.call-for-me-history-shortcut h2 {
  color: var(--app-ink-strong, #111827);
  font-size: 17px;
  line-height: 1.3;
}

.call-for-me-history-shortcut p {
  color: var(--app-muted, #667085);
  font-size: 13px;
}

.call-for-me-history-shortcut .btn {
  flex: none;
}

.call-for-me-state {
  display: grid;
  gap: 20px;
}

.call-for-me-state h1 {
  margin: 0;
  color: var(--app-ink-strong, #111827);
  font-size: 30px;
  line-height: 1.15;
}

.call-for-me-heading {
  display: grid;
  gap: 8px;
}

.call-for-me-heading p,
.call-for-me-state > p {
  margin: 0;
  color: var(--app-muted, #667085);
}

.call-for-me-connection {
  display: grid;
  grid-template-columns: 14px minmax(0, 1fr);
  align-items: center;
  gap: 12px;
  padding: 16px;
  border: 1px solid color-mix(in srgb, var(--brand-teal, #0e756b) 30%, #d9dedc);
  border-radius: 10px;
  background: #f3faf8;
  color: var(--app-ink-strong, #111827);
}

.call-for-me-connection-dot {
  width: 12px;
  height: 12px;
  border-radius: 50%;
  background: var(--brand-teal, #0e756b);
  box-shadow: 0 0 0 0 color-mix(in srgb, var(--brand-teal, #0e756b) 28%, transparent);
  animation: call-for-me-connection-pulse 1.5s ease-out infinite;
}

.call-for-me-connection strong,
.call-for-me-connection p {
  margin: 0;
}

.call-for-me-connection strong {
  display: block;
  font-size: 16px;
  line-height: 1.35;
}

.call-for-me-connection p,
.call-for-me-connection-help {
  margin-top: 2px;
  color: var(--app-muted, #667085);
  font-size: 13px;
  line-height: 1.45;
}

@keyframes call-for-me-connection-pulse {
  70% { box-shadow: 0 0 0 8px transparent; }
  100% { box-shadow: 0 0 0 0 transparent; }
}

@media (prefers-reduced-motion: reduce) {
  .call-for-me-connection-dot { animation: none; }
}

.call-for-me-form {
  display: grid;
  gap: 20px;
}

.call-for-me-form .field,
.call-for-me-guidance-form {
  display: grid;
  gap: 6px;
  margin: 0;
}

.call-for-me-form .field > label,
.call-for-me-guidance-form > label {
  display: flex;
  align-items: baseline;
  gap: 4px;
  color: var(--app-ink-strong, #111827);
  font-size: 14px;
  font-weight: 750;
}

.call-for-me-form .field > label span {
  color: var(--app-muted, #667085);
  font-weight: 500;
}

.call-for-me-form > :is(.call-for-me-demo-terms, .call-for-me-simulation-toggle) {
  display: grid;
  grid-template-columns: 18px minmax(0, 1fr);
  align-items: start;
  gap: 10px;
  width: 100%;
  margin: 0;
  padding: 12px;
  border: 1px solid #d9dedc;
  border-radius: 8px;
  background: #fbfcfc;
  color: var(--app-ink, #172033);
  font-size: 13px;
  font-weight: 400;
  line-height: 1.4;
  cursor: pointer;
}

.app-main .call-for-me-form > :is(.call-for-me-demo-terms, .call-for-me-simulation-toggle) > input[type="checkbox"],
.call-for-me-form > :is(.call-for-me-demo-terms, .call-for-me-simulation-toggle) > input[type="checkbox"] {
  appearance: auto;
  grid-column: 1;
  width: 18px;
  min-width: 18px;
  height: 18px;
  min-height: 18px;
  margin: 1px 0 0;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  accent-color: var(--brand-teal, #0e756b);
}

.call-for-me-form > :is(.call-for-me-demo-terms, .call-for-me-simulation-toggle) > span {
  display: grid;
  grid-column: 2;
  gap: 2px;
  min-width: 0;
}

.call-for-me-form > :is(.call-for-me-demo-terms, .call-for-me-simulation-toggle) strong {
  color: var(--app-ink-strong, #111827);
  font-weight: 750;
}

.call-for-me-form > :is(.call-for-me-demo-terms, .call-for-me-simulation-toggle) small {
  color: var(--app-muted, #667085);
  font-size: 12px;
  font-weight: 400;
  line-height: 1.45;
}

.call-for-me-phone-row {
  display: grid;
  grid-template-columns: minmax(150px, .8fr) minmax(0, 1.45fr);
  gap: 10px;
}

.call-for-me-phone-row select,
.call-for-me-phone-row input,
.call-for-me-form > .field > input {
  width: 100%;
  min-width: 0;
  min-height: 48px;
  border: 1px solid #cfd5dc;
  border-radius: 7px;
  background: #fff;
  color: var(--app-ink, #172033);
  font: inherit;
}

.call-for-me-phone-row select:focus-visible,
.call-for-me-phone-row input:focus-visible,
.call-for-me-form > .field > input:focus-visible {
  border-color: var(--brand-teal, #0e756b);
  outline: 3px solid color-mix(in srgb, var(--brand-teal, #0e756b) 24%, transparent);
  outline-offset: 1px;
}

.call-for-me-field-help,
.call-for-me-composer-help,
.call-for-me-privacy {
  margin: 0;
  color: var(--app-muted, #667085);
  font-size: 12.5px;
  line-height: 1.45;
}

.call-for-me-composer {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto auto;
  align-items: end;
  gap: 4px;
  min-width: 0;
  padding: 8px;
  border: 1px solid #cfd5dc;
  border-radius: 10px;
  background: #fff;
  transition: border-color .15s ease, box-shadow .15s ease;
}

.call-for-me-composer:focus-within {
  border-color: var(--brand-teal, #0e756b);
  box-shadow: 0 0 0 3px color-mix(in srgb, var(--brand-teal, #0e756b) 18%, transparent);
}

.call-for-me-composer textarea {
  grid-column: 1 / -1;
  width: 100%;
  min-width: 0;
  min-height: 58px;
  max-height: 220px;
  padding: 8px 8px 4px;
  border: 0;
  border-radius: 0;
  background: transparent;
  color: var(--app-ink, #172033);
  font: inherit;
  line-height: 1.5;
  resize: none;
  box-shadow: none;
}

.call-for-me-composer textarea:focus {
  outline: 0;
  box-shadow: none;
}

.call-for-me-composer .dictation-control {
  grid-column: 2;
  grid-row: 2;
  align-self: end;
  justify-self: end;
  min-width: 46px;
}

.call-for-me-composer .dictation-control[data-dictation-state="starting"],
.call-for-me-composer .dictation-control[data-dictation-state="recording"],
.call-for-me-composer .dictation-control[data-dictation-state="transcribing"],
.call-for-me-composer .dictation-control[data-dictation-state="retry"] {
  grid-column: 1 / 3;
  justify-self: stretch;
}

.call-for-me-composer .dictation-button,
.call-for-me-composer .dictation-accept,
.call-for-me-composer .dictation-cancel {
  width: 46px;
  min-width: 46px;
  height: 46px;
  border: 0;
  background: transparent;
  color: #4b5563;
}

.call-for-me-composer .dictation-button:hover,
.call-for-me-composer .dictation-button:focus-visible,
.call-for-me-composer .dictation-accept:hover,
.call-for-me-composer .dictation-accept:focus-visible,
.call-for-me-composer .dictation-cancel:hover,
.call-for-me-composer .dictation-cancel:focus-visible {
  background: #f3f4f6;
}

.call-for-me-composer .dictation-recorder {
  width: 100%;
  min-width: 0;
  min-height: 46px;
}

.call-for-me-composer .dictation-status {
  max-width: 240px;
  font-size: 12px;
}

button.call-for-me-send {
  grid-column: 3;
  grid-row: 2;
  min-width: 76px;
  min-height: 44px;
  margin: 1px;
  padding: 0 16px;
  border: 1px solid var(--app-ink-strong, #111827);
  border-radius: 7px;
  background: var(--app-ink-strong, #111827);
  color: #fff;
  font: inherit;
  font-size: 13px;
  font-weight: 750;
  cursor: pointer;
}

button.call-for-me-send:hover,
button.call-for-me-send:focus-visible {
  background: #000;
}

button.call-for-me-send:focus-visible {
  outline: 3px solid color-mix(in srgb, var(--brand-teal, #0e756b) 28%, transparent);
  outline-offset: 2px;
}

button.call-for-me-send:disabled {
  opacity: .42;
  cursor: not-allowed;
}

.call-for-me-resume,
.call-for-me-new {
  width: fit-content;
  min-width: 132px;
}

button.call-for-me-resume,
button.call-for-me-new {
  min-height: 44px;
}

.call-for-me-active {
  gap: 20px;
}

.call-for-me-active .call-for-me-guidance-form {
  position: sticky;
  bottom: 0;
  z-index: 2;
  padding: 10px 0 6px;
  background: var(--app-bg, #f6f7f9);
}

.call-for-me-transcript {
  display: grid;
  gap: 12px;
  min-height: 330px;
  padding: 16px;
  border: 1px solid var(--app-border, #e5e7eb);
  border-radius: 8px;
  background: #fbfcfc;
}

.call-for-me-transcript-header,
.call-for-me-active-actions,
.call-for-me-ended-actions {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
}

.call-for-me-transcript-header h2,
.call-for-me-transcript-header p,
.call-for-me-transcript-message p {
  margin: 0;
}

.call-for-me-transcript-header h2 {
  color: var(--app-ink-strong, #111827);
  font-size: 17px;
  line-height: 1.25;
}

.call-for-me-transcript-header p,
.call-for-me-transcript-empty {
  color: var(--app-muted, #667085);
  font-size: 12.5px;
  line-height: 1.45;
}

.call-for-me-transcript-list {
  display: grid;
  align-content: start;
  gap: 12px;
  min-height: 224px;
  max-height: min(52vh, 560px);
  margin: 0;
  padding: 2px 4px 2px 0;
  overflow-y: auto;
  list-style: none;
  scroll-behavior: smooth;
}

@media (prefers-reduced-motion: reduce) {
  .call-for-me-transcript-list {
    scroll-behavior: auto;
  }
}

.call-for-me-transcript-message {
  display: grid;
  gap: 4px;
  width: min(86%, 510px);
  padding: 10px 12px;
  border: 1px solid #dfe5e4;
  border-radius: 10px;
  background: #fff;
  color: var(--app-ink, #172033);
  overflow-wrap: anywhere;
}

.call-for-me-transcript-message--assistant {
  justify-self: start;
  border-color: color-mix(in srgb, var(--brand-teal, #0e756b) 32%, #dfe5e4);
  background: #f3faf8;
}

.call-for-me-transcript-message--recipient {
  justify-self: end;
  background: #fff;
}

.call-for-me-transcript-message--guidance,
.call-for-me-transcript-message--status {
  justify-self: center;
  width: min(94%, 560px);
  border-style: dashed;
  border-radius: 7px;
  background: #f7f7f4;
  color: #4b5563;
  font-size: 13px;
}

.call-for-me-transcript-message--partial {
  opacity: .68;
}

.call-for-me-transcript-message-meta {
  display: flex;
  align-items: baseline;
  gap: 8px;
  color: var(--app-muted, #667085);
  font-size: 11px;
}

.call-for-me-transcript-message-meta strong {
  color: var(--app-ink-strong, #111827);
}

.call-for-me-transcript-message-meta span {
  font-style: italic;
}

.call-for-me-transcript-empty {
  margin: 0;
}

.call-for-me-follow {
  min-height: 36px;
  padding: 0 10px;
  border: 1px solid var(--brand-teal, #0e756b);
  border-radius: 6px;
  background: #fff;
  color: var(--brand-teal, #0e756b);
  font: inherit;
  font-size: 12px;
  font-weight: 750;
  cursor: pointer;
}

.call-for-me-simulation-prompt {
  display: grid;
  gap: 7px;
}

.call-for-me-simulation-prompt > div {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 8px;
}

.call-for-me-simulation-prompt input {
  min-width: 0;
  min-height: 44px;
  padding: 0 12px;
  border: 1px solid #cfd5dc;
  border-radius: 6px;
  color: var(--app-ink, #172033);
  font: inherit;
}

.call-for-me-active-actions,
.call-for-me-ended-actions {
  flex-wrap: wrap;
}

.call-for-me-active-actions a {
  color: var(--brand-teal, #0e756b);
  font-size: 13px;
  font-weight: 700;
}

.call-for-me-ended-actions {
  justify-content: flex-start;
}

.call-for-me-history-explainer {
  display: grid;
  gap: 12px;
  padding: 30px;
}

.call-for-me-history-explainer h1,
.call-for-me-history-explainer h2,
.call-for-me-history-explainer p {
  margin: 0;
}

.call-for-me-history-explainer h1 {
  color: var(--app-ink-strong, #111827);
  font-size: 30px;
  line-height: 1.15;
}

.call-for-me-history-explainer h2 {
  margin-top: 12px;
  color: var(--app-ink-strong, #111827);
  font-size: 17px;
}

.call-for-me-history-explainer p {
  color: var(--app-muted, #667085);
}

.call-for-me-history-list {
  display: grid;
  gap: 8px;
}

.call-for-me-history-page,
.call-for-me-history-detail {
  display: grid;
  gap: 22px;
}

.call-for-me-history-heading {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 18px;
}

.call-for-me-history-heading > div {
  display: grid;
  gap: 6px;
}

.call-for-me-history-heading h1,
.call-for-me-history-heading p {
  margin: 0;
}

.call-for-me-history-heading h1 {
  color: var(--app-ink-strong, #111827);
  font-size: 30px;
  line-height: 1.15;
}

.call-for-me-history-heading p {
  max-width: 620px;
  color: var(--app-muted, #667085);
}

.call-for-me-history-back {
  width: fit-content;
  color: var(--brand-teal, #0e756b);
  font-size: 13px;
  font-weight: 700;
}

.call-for-me-history-item {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding: 16px;
  border: 1px solid var(--app-border, #e5e7eb);
  border-radius: 8px;
  background: #fff;
}

.call-for-me-history-item h2,
.call-for-me-history-meta {
  margin: 0;
}

.call-for-me-history-item h2 {
  font-size: 16px;
}

.call-for-me-history-item h2 a {
  color: var(--app-ink-strong, #111827);
}

.call-for-me-history-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 5px 12px;
  margin-top: 6px;
  color: var(--app-muted, #667085);
  font-size: 13px;
}

.call-for-me-history-meta div {
  display: inline-flex;
  gap: 4px;
}

.call-for-me-history-meta dt {
  font-weight: 700;
}

.call-for-me-history-meta dd {
  margin: 0;
}

.call-for-me-history-detail-meta {
  gap: 10px 18px;
  padding: 14px 16px;
  border: 1px solid var(--app-border, #e5e7eb);
  border-radius: 8px;
  background: #fff;
}

.call-for-me-history-detail-actions {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 10px;
}

.call-for-me-history-detail-actions form {
  margin: 0;
}

.call-for-me-last-guidance,
.call-for-me-error {
  margin: 0;
  line-height: 1.5;
}

.call-for-me-last-guidance {
  padding: 11px 13px;
  border-left: 3px solid var(--brand-teal, #0e756b);
  background: #f8faf9;
  overflow-wrap: anywhere;
  color: var(--app-ink, #172033);
  font-size: 13px;
}

.call-for-me-end {
  justify-self: start;
  min-height: 44px;
  padding: 0;
  border: 0;
  background: transparent;
  color: #991b1b;
  font: inherit;
  font-weight: 700;
  text-decoration: underline;
  text-underline-offset: 3px;
  cursor: pointer;
}

.call-for-me-end:hover,
.call-for-me-end:focus-visible {
  color: #7f1d1d;
}

.call-for-me-error {
  color: #991b1b;
  font-weight: 650;
}

@media (max-width: 640px) {
  .call-for-me-shell {
    padding-block: 18px 32px;
  }

  .call-for-me-resume,
  .call-for-me-new {
    width: 100%;
  }

  .call-for-me-phone-row {
    grid-template-columns: 1fr;
  }

  .call-for-me-phone-row select,
  .call-for-me-phone-row input,
  .call-for-me-composer textarea {
    font-size: 16px;
  }

  .call-for-me-composer {
    padding: 7px;
  }

  button.call-for-me-send {
    min-width: 72px;
    padding-inline: 14px;
  }

  .call-for-me-transcript {
    min-height: 300px;
    padding: 12px;
  }

  .call-for-me-transcript-list {
    max-height: 48vh;
  }

  .call-for-me-transcript-message {
    width: min(92%, 510px);
  }

  .call-for-me-transcript-message--guidance,
  .call-for-me-transcript-message--status {
    width: 100%;
  }

  .call-for-me-simulation-prompt > div {
    grid-template-columns: 1fr;
  }

  .call-for-me-simulation-prompt button {
    width: 100%;
  }

  .call-for-me-history-item {
    align-items: stretch;
    flex-direction: column;
  }

  .call-for-me-history-heading {
    align-items: stretch;
    flex-direction: column;
  }

  .call-for-me-history-heading > .btn,
  .call-for-me-history-shortcut,
  .call-for-me-history-shortcut .btn,
  .call-for-me-history-detail-actions,
  .call-for-me-history-detail-actions .btn,
  .call-for-me-history-detail-actions form {
    width: 100%;
  }

  .call-for-me-history-shortcut {
    align-items: stretch;
    flex-direction: column;
  }

  .call-for-me-history-item .btn {
    width: 100%;
  }
}

.call-for-me-demo-shell {
  display: grid;
  gap: 26px;
  justify-self: center;
  width: min(100%, 700px);
  padding: 30px;
}

.call-for-me-demo-wrap {
  grid-template-columns: minmax(0, 1fr);
}

.call-for-me-demo-paid-cta {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: 18px;
  padding-top: 22px;
  border-top: 1px solid #e2e5e3;
}

.call-for-me-demo-paid-cta > div {
  display: grid;
  gap: 4px;
}

.call-for-me-demo-paid-cta h2,
.call-for-me-demo-paid-cta p {
  margin: 0;
}

.call-for-me-demo-paid-cta h2 {
  color: var(--app-ink-strong, #111827);
  font-size: 17px;
}

.call-for-me-demo-paid-cta p {
  color: var(--app-muted, #667085);
  font-size: 14px;
  line-height: 1.5;
}

.call-for-me-demo-paid-link {
  min-height: 44px;
  margin: 0;
  white-space: nowrap;
}

@media (max-width: 640px) {
  .call-for-me-demo-shell {
    padding: 22px 16px;
  }

  .call-for-me-demo-paid-cta {
    grid-template-columns: 1fr;
  }

  .call-for-me-demo-paid-link {
    width: 100%;
  }
}

/* Shared standalone guest-page presentation. Login, password recovery, invite
   signup, and request access use this same centered surface so navigation only
   changes the page content, not its frame, width, spacing, or type system. */
.app-frame-standalone .guest-page-main {
  max-width: none;
  min-height: calc(100vh - 176px);
  padding: clamp(48px, 7vh, 76px) clamp(18px, 4vw, 42px) 54px;
  background:
    radial-gradient(circle at 50% 0, rgba(219, 214, 109, .18), transparent 260px),
    #fbfaf7;
}

.guest-page-shell {
  width: min(100%, 820px);
  margin: 0 auto;
}

.app-main .guest-page-card {
  position: relative;
  overflow: hidden;
  padding: clamp(32px, 5vw, 52px);
  border: 1px solid #e5e1d7;
  border-radius: 8px;
  background: #fff;
  box-shadow: 0 24px 70px rgba(8, 21, 44, .09);
}

.guest-page-card::before {
  content: "";
  position: absolute;
  inset: 0 0 auto;
  height: 7px;
  background: linear-gradient(90deg, var(--brand-yellow) 0 48%, var(--brand-teal) 48% 76%, #000 76% 100%);
}

.guest-page-eyebrow {
  color: var(--brand-teal);
  font-size: 12px;
  font-weight: 900;
  letter-spacing: .08em;
  line-height: 1.2;
  text-transform: uppercase;
}

.guest-page-title,
.app-main .guest-page-title {
  max-width: 720px;
  margin: 0;
  color: #08152c;
  font-size: clamp(34px, 5vw, 54px);
  line-height: 1.02;
  letter-spacing: 0;
}

.guest-page-subhead,
.app-main .guest-page-subhead {
  max-width: 720px;
  margin: 0;
  color: #283c59;
  font-size: 20px;
  line-height: 1.55;
}

.auth-shell .auth {
  width: 100%;
  max-width: none;
  margin: 0;
}

.auth-shell .auth.panel {
  padding: clamp(32px, 5vw, 52px);
}

.auth-shell .guest-page-eyebrow {
  margin-bottom: 14px;
}

.auth-shell .guest-page-title {
  margin-bottom: 12px;
}

.auth-shell .guest-page-subhead {
  margin-bottom: 24px;
}

@media (max-width: 640px) {
  .app-frame-standalone .guest-page-main {
    min-height: calc(100vh - 118px);
    padding: 28px 18px 38px;
  }

  .app-main .guest-page-card,
  .auth-shell .auth.panel {
    padding: 30px 22px 28px;
  }

  .guest-page-title,
  .app-main .guest-page-title {
    font-size: 34px;
  }

  .guest-page-subhead,
  .app-main .guest-page-subhead {
    font-size: 16px;
    line-height: 1.5;
  }
}
