/* Clinic demonstrations use one case view: workflow, clinic rule, next action. */
body.clinic-demo-page {
  --demo-text: #242620;
  --demo-muted: #62655d;
  --demo-line: #dedfd8;
  --demo-green: #284333;
  min-height: 100vh;
  background: #f3f2ed !important;
  color: var(--demo-text) !important;
}

body.clinic-demo-page .demo-shell {
  width: min(calc(100% - 56px), 1180px) !important;
  max-width: 1180px !important;
  margin: 0 auto !important;
  padding: 0 0 44px !important;
}
body.clinic-demo-page .demo-intro {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 16px !important;
  margin: 26px 0 16px !important;
}
body.clinic-demo-page .demo-intro h1 {
  max-width: none !important;
  margin: 0 !important;
  color: var(--demo-text) !important;
  font-size: 25px !important;
  font-weight: 550 !important;
  letter-spacing: -.025em !important;
  line-height: 1.25 !important;
}
body.clinic-demo-page .preview-label {
  max-width: none !important;
  margin: 0 !important;
  padding: 5px 8px !important;
  border: 1px solid var(--demo-line) !important;
  border-radius: 3px !important;
  color: var(--demo-muted) !important;
  font-size: 11px !important;
  line-height: 1.3 !important;
  text-align: left !important;
  white-space: nowrap !important;
}
body.clinic-demo-page .demo-workspace {
  display: grid !important;
  grid-template-columns: 220px minmax(0, 1fr) !important;
  align-items: start !important;
  gap: 24px !important;
  border: 0 !important;
  background: transparent !important;
}
body.clinic-demo-page .demo-rail,
body.clinic-demo-page .request-picker {
  display: block !important;
  min-width: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
}
body.clinic-demo-page .request-picker h2 {
  display: block !important;
  margin: 0 0 8px !important;
  color: var(--demo-muted) !important;
  font-size: 11px !important;
  font-weight: 550 !important;
  letter-spacing: .04em !important;
  line-height: 1.3 !important;
  text-transform: uppercase !important;
}
body.clinic-demo-page .handoff-scenarios { display: grid !important; grid-template-columns: minmax(0, 1fr) !important; gap: 0 !important; margin: 0 !important; overflow: visible !important; }
body.clinic-demo-page .scenario-button {
  display: flex !important;
  width: 100% !important;
  min-width: 0 !important;
  min-height: 44px !important;
  align-items: center !important;
  justify-content: flex-start !important;
  padding: 8px 10px !important;
  border: 0 !important;
  border-bottom: 1px solid var(--demo-line) !important;
  border-left: 2px solid transparent !important;
  border-radius: 0 !important;
  background: transparent !important;
  color: #42453f !important;
  font-size: 13px !important;
  font-weight: 450 !important;
  line-height: 1.35 !important;
  text-align: left !important;
}
body.clinic-demo-page .scenario-button::before { display: none !important; }
body.clinic-demo-page .scenario-button:hover { background: #ecece6 !important; color: var(--demo-text) !important; }
body.clinic-demo-page .scenario-button[aria-pressed="true"] {
  border-left-color: var(--demo-green) !important;
  background: #e8ece7 !important;
  color: var(--demo-green) !important;
  box-shadow: none !important;
}
body.clinic-demo-page .clinic-demo-row,
body.clinic-demo-page .clinic-demo-row strong { display: block !important; width: 100% !important; color: inherit !important; font-size: inherit !important; font-weight: inherit !important; line-height: inherit !important; text-align: left !important; overflow-wrap: anywhere !important; }

body.clinic-demo-page .demo-thread {
  min-width: 0 !important;
  margin: 0 !important;
  overflow: hidden !important;
  border: 1px solid var(--demo-line) !important;
  border-radius: 4px !important;
  background: #fff !important;
  color: var(--demo-text) !important;
  box-shadow: none !important;
}
body.clinic-demo-page .thread-head {
  display: block !important;
  min-height: 0 !important;
  padding: 15px 18px 13px !important;
  border-bottom: 1px solid var(--demo-line) !important;
}
body.clinic-demo-page .thread-head > div { display: grid !important; gap: 4px !important; }
body.clinic-demo-page .thread-head h2 {
  margin: 0 !important;
  color: var(--demo-text) !important;
  font-size: 17px !important;
  font-weight: 550 !important;
  letter-spacing: -.015em !important;
  line-height: 1.35 !important;
}
body.clinic-demo-page .clinic-demo-owner {
  margin: 0 !important;
  color: var(--demo-green) !important;
  font-size: 12px !important;
  font-weight: 500 !important;
  line-height: 1.4 !important;
}
body.clinic-demo-page .clinic-demo-work-controls { margin: 0 !important; padding: 17px 18px 18px !important; border: 0 !important; }
body.clinic-demo-page .clinic-demo-workflow-brief { max-width: none !important; margin: 0 !important; }
body.clinic-demo-page .clinic-demo-case-layout {
  display: grid !important;
  grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr) !important;
  align-items: start !important;
  gap: 22px !important;
}
body.clinic-demo-page .clinic-demo-case-conversation,
body.clinic-demo-page .clinic-demo-case-routing { min-width: 0 !important; }
body.clinic-demo-page .clinic-demo-case-message { margin: 0 !important; padding: 0 0 15px 12px !important; border: 0 !important; border-left: 2px solid var(--demo-green) !important; }
body.clinic-demo-page .clinic-demo-case-message > span,
body.clinic-demo-page .clinic-demo-route-response > span,
body.clinic-demo-page .clinic-demo-rule > span,
body.clinic-demo-page .clinic-demo-static-next > span {
  display: block !important;
  margin: 0 0 6px !important;
  color: var(--demo-muted) !important;
  font-size: 11px !important;
  font-weight: 500 !important;
  line-height: 1.35 !important;
}
body.clinic-demo-page .clinic-demo-case-message > p { margin: 0 !important; color: var(--demo-text) !important; font-size: 14px !important; line-height: 1.5 !important; }
body.clinic-demo-page .clinic-demo-source-facts {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 0 !important;
  margin: 12px 0 0 !important;
  border-top: 1px solid var(--demo-line) !important;
}
body.clinic-demo-page .clinic-demo-source-facts > div { display: grid !important; align-content: start !important; gap: 3px !important; padding: 9px 10px 9px 0 !important; border-bottom: 1px solid var(--demo-line) !important; }
body.clinic-demo-page .clinic-demo-source-facts > div + div { padding-left: 10px !important; border-left: 1px solid var(--demo-line) !important; }
body.clinic-demo-page .clinic-demo-source-facts dt { color: var(--demo-muted) !important; font-size: 11px !important; }
body.clinic-demo-page .clinic-demo-source-facts dd { margin: 0 !important; color: var(--demo-text) !important; font-size: 13px !important; line-height: 1.4 !important; }
body.clinic-demo-page .clinic-demo-source-evidence { display: flex !important; flex-wrap: wrap !important; gap: 6px 12px !important; margin: 10px 0 0 !important; }
body.clinic-demo-page .clinic-demo-source-evidence a,
body.clinic-demo-page .clinic-demo-references a { color: var(--demo-green) !important; font-size: 12px !important; text-decoration: underline !important; text-decoration-color: #b3a36f !important; text-underline-offset: 3px !important; }
body.clinic-demo-page .clinic-demo-workflow-trigger { margin: 10px 0 0 !important; color: var(--demo-muted) !important; font-size: 12px !important; line-height: 1.45 !important; }
body.clinic-demo-page .clinic-demo-route-picker { min-width: 0 !important; margin: 0 0 13px !important; padding: 0 !important; border: 0 !important; }
body.clinic-demo-page .clinic-demo-route-picker legend { margin: 0 0 7px !important; padding: 0 !important; color: var(--demo-muted) !important; font-size: 11px !important; font-weight: 500 !important; }
body.clinic-demo-page .clinic-demo-route-picker [role="group"] { display: grid !important; grid-template-columns: minmax(0, 1fr) !important; gap: 5px !important; }
body.clinic-demo-page .clinic-demo-route-picker button {
  display: flex !important;
  min-width: 0 !important;
  min-height: 40px !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 12px !important;
  padding: 8px 10px !important;
  border: 1px solid var(--demo-line) !important;
  border-radius: 3px !important;
  background: #fff !important;
  color: var(--demo-text) !important;
  font-size: 12px !important;
  line-height: 1.35 !important;
  text-align: left !important;
}
body.clinic-demo-page .clinic-demo-route-picker button:hover { border-color: #a8b3a9 !important; background: #f8f9f6 !important; }
body.clinic-demo-page .clinic-demo-route-picker button[aria-pressed="true"] { border-color: #829387 !important; background: #e9eee8 !important; color: var(--demo-green) !important; }
body.clinic-demo-page .clinic-demo-route-result { color: var(--demo-muted) !important; font-size: 11px !important; text-align: right !important; }
body.clinic-demo-page .clinic-demo-route-picker button[aria-pressed="true"] .clinic-demo-route-result { color: var(--demo-green) !important; }
body.clinic-demo-page .clinic-demo-route-outcome { margin: 12px 0 0 !important; padding: 12px 0 0 12px !important; border: 0 !important; border-top: 1px solid var(--demo-line) !important; border-left: 2px solid var(--demo-green) !important; background: transparent !important; }
body.clinic-demo-page .clinic-demo-route-response { margin: 0 0 9px !important; }
body.clinic-demo-page .clinic-demo-route-response p,
body.clinic-demo-page .clinic-demo-route-next p,
body.clinic-demo-page .clinic-demo-static-next p { margin: 0 !important; color: #41443c !important; font-size: 13px !important; line-height: 1.5 !important; }
body.clinic-demo-page .clinic-demo-route-next { margin: 10px 0 !important; }
body.clinic-demo-page .clinic-demo-route-next strong { display: block !important; margin: 0 0 4px !important; color: var(--demo-text) !important; font-size: 11px !important; font-weight: 550 !important; }
body.clinic-demo-page .clinic-demo-route-link { display: inline-flex !important; min-height: 38px !important; align-items: center !important; margin: 0 !important; color: var(--demo-green) !important; font-size: 12px !important; text-decoration: underline !important; text-decoration-color: #b3a36f !important; text-underline-offset: 3px !important; }
body.clinic-demo-page .clinic-demo-route-link.clinic-demo-primary-action { min-height: 38px !important; padding: 0 12px !important; border: 1px solid var(--demo-green) !important; border-radius: 3px !important; background: var(--demo-green) !important; color: #fff !important; text-decoration: none !important; }
body.clinic-demo-page .clinic-demo-route-link.clinic-demo-primary-action:hover { background: #365642 !important; }
body.clinic-demo-page .clinic-demo-static-next { margin-top: 12px !important; padding-top: 12px !important; border-top: 1px solid var(--demo-line) !important; }
body.clinic-demo-page .clinic-demo-static-next nav { display: flex !important; flex-wrap: wrap !important; gap: 8px 14px !important; margin-top: 8px !important; }
body.clinic-demo-page .clinic-demo-route-preview-note { margin: 9px 0 0 !important; padding-top: 8px !important; border-top: 1px solid var(--demo-line) !important; color: var(--demo-muted) !important; font-size: 11px !important; line-height: 1.45 !important; }
body.clinic-demo-page .clinic-demo-match-criteria { margin-top: 13px !important; padding-top: 11px !important; border-top: 1px solid var(--demo-line) !important; }
body.clinic-demo-page .clinic-demo-match-criteria > span { display: block !important; margin-bottom: 6px !important; color: var(--demo-muted) !important; font-size: 11px !important; }
body.clinic-demo-page .clinic-demo-match-criteria ul { display: grid !important; grid-template-columns: repeat(2, minmax(0, 1fr)) !important; gap: 5px !important; margin: 0 !important; padding: 0 !important; list-style: none !important; }
body.clinic-demo-page .clinic-demo-match-criteria li { padding: 6px 7px !important; border: 1px solid var(--demo-line) !important; color: #42453f !important; font-size: 11px !important; line-height: 1.35 !important; }

body.clinic-demo-page .clinic-demo-more { margin-top: 15px !important; border-top: 1px solid var(--demo-line) !important; color: var(--demo-muted) !important; }
body.clinic-demo-page .clinic-demo-more > summary,
body.clinic-demo-page .clinic-demo-chat-options > summary,
body.clinic-demo-page .clinic-demo-voice-options > summary { width: fit-content !important; min-height: 38px !important; padding: 9px 0 !important; color: var(--demo-green) !important; font-size: 12px !important; cursor: pointer !important; }
body.clinic-demo-page .clinic-demo-references { display: grid !important; grid-template-columns: repeat(2, minmax(0, 1fr)) !important; align-items: start !important; gap: 10px !important; margin: 6px 0 0 !important; }
body.clinic-demo-page .clinic-demo-references > details { min-width: 0 !important; padding: 0 0 8px !important; border: 1px solid var(--demo-line) !important; border-radius: 3px !important; background: #fff !important; }
body.clinic-demo-page .clinic-demo-references > details > summary { min-height: 40px !important; padding: 10px !important; color: var(--demo-text) !important; font-size: 12px !important; }
body.clinic-demo-page .clinic-demo-references > details[open] > :not(summary) { margin-inline: 10px !important; }
body.clinic-demo-page .clinic-demo-references dd,
body.clinic-demo-page .clinic-demo-references .clinic-demo-checked { color: var(--demo-muted) !important; font-size: 12px !important; line-height: 1.45 !important; }
body.clinic-demo-page .clinic-demo-references dl { display: grid !important; grid-template-columns: repeat(2, minmax(0, 1fr)) !important; gap: 12px !important; margin: 14px 0 !important; }
body.clinic-demo-page .clinic-demo-references dt { margin-bottom: 3px !important; color: var(--demo-text) !important; font-size: 12px !important; font-weight: 550 !important; }
body.clinic-demo-page .clinic-demo-references dd { margin: 0 !important; overflow-wrap: anywhere !important; }
body.clinic-demo-page .clinic-demo-references nav { display: flex !important; flex-wrap: wrap !important; gap: 8px 14px !important; }
body.clinic-demo-page .clinic-demo-opportunity { grid-column: 1 / -1 !important; }
body.clinic-demo-page .clinic-demo-opportunity > summary { min-height: 40px !important; padding: 10px !important; color: var(--demo-text) !important; font-size: 12px !important; cursor: pointer !important; }
body.clinic-demo-page .clinic-demo-estimate-cases { display: grid !important; grid-template-columns: repeat(2, minmax(0, 1fr)) !important; gap: 7px !important; padding: 0 !important; }
body.clinic-demo-page .clinic-demo-estimate-cases > div { padding: 8px !important; border: 1px solid var(--demo-line) !important; background: #f8f8f5 !important; }
body.clinic-demo-page .clinic-demo-chat-options,
body.clinic-demo-page .clinic-demo-voice-options { margin: 9px 0 0 !important; border-top: 1px solid var(--demo-line) !important; }
body.clinic-demo-page .clinic-demo-chat-options[open] #demo-staff-chat-form { margin-inline: 0 !important; }
body.clinic-demo-page :is(.demo-workspace, .clinic-demo-work-controls, .clinic-demo-more) summary:focus-visible,
body.clinic-demo-page :is(a, button):focus-visible { outline: 2px solid #9c7b36 !important; outline-offset: 2px !important; }

@media (max-width: 760px) {
  body.clinic-demo-page .demo-shell { width: min(calc(100% - 32px), 580px) !important; }
  body.clinic-demo-page .demo-intro { align-items: flex-start !important; flex-direction: column !important; gap: 8px !important; margin: 20px 0 13px !important; }
  body.clinic-demo-page .demo-intro h1 { font-size: 22px !important; }
  body.clinic-demo-page .preview-label { white-space: normal !important; }
  body.clinic-demo-page .demo-workspace { grid-template-columns: minmax(0, 1fr) !important; gap: 11px !important; }
  body.clinic-demo-page .request-picker { padding: 0 !important; }
  body.clinic-demo-page .request-picker h2 { margin-bottom: 4px !important; }
  body.clinic-demo-page .handoff-scenarios { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
  body.clinic-demo-page .scenario-button { min-height: 42px !important; padding-inline: 8px !important; font-size: 12px !important; }
  body.clinic-demo-page .clinic-demo-case-layout { grid-template-columns: minmax(0, 1fr) !important; gap: 14px !important; }
  body.clinic-demo-page .clinic-demo-case-routing { padding-top: 12px !important; border-top: 1px solid var(--demo-line) !important; }
  body.clinic-demo-page .clinic-demo-work-controls { padding: 14px !important; }
  body.clinic-demo-page .clinic-demo-source-facts { grid-template-columns: minmax(0, 1fr) !important; }
  body.clinic-demo-page .clinic-demo-source-facts > div + div { padding-left: 0 !important; border-left: 0 !important; }
  body.clinic-demo-page .clinic-demo-route-picker button { align-items: flex-start !important; flex-direction: column !important; gap: 3px !important; }
  body.clinic-demo-page .clinic-demo-route-result { text-align: left !important; }
  body.clinic-demo-page .clinic-demo-references { grid-template-columns: minmax(0, 1fr) !important; }
  body.clinic-demo-page .clinic-demo-references dl,
  body.clinic-demo-page .clinic-demo-estimate-cases { grid-template-columns: minmax(0, 1fr) !important; }
}
@media (max-width: 390px) {
  body.clinic-demo-page .demo-shell { width: calc(100% - 24px) !important; }
  body.clinic-demo-page .handoff-scenarios { grid-template-columns: minmax(0, 1fr) !important; }
  body.clinic-demo-page .clinic-demo-work-controls { padding: 12px !important; }
}

.clinic-demo-site-picker{display:grid;gap:.4rem;margin:0 0 1rem;min-width:0}.clinic-demo-site-picker select{font:inherit;color:inherit;background:var(--ui-panel,#fff);border:1px solid currentColor;border-radius:.4rem;padding:.65rem;max-width:100%;width:100%}
