/* Visitor studio: water, machined instruments and readable engineering sheets.
   Tokens: tidal #095c59, deep #103d40, mint #73ddc3, paper #f3f7f6,
   ink #203536, brass #f1c46a. Display: Bahnschrift; body: Segoe UI. */
:root[data-demo="true"] {
  --color-primary: #095c59;
  --color-action: #095c59;
  --color-action-strong: #074844;
  --color-secondary: #103d40;
  --color-accent: #095c59;
  --color-header: #fff;
  --color-header-ink: #203536;
  --color-sidebar: #103d40;
  --color-footer: #103d40;
  --color-bg: #f3f7f6;
  --color-card: #fff;
  --color-card-soft: #f1f6f5;
  --color-border: #dce6e3;
  --color-font: #344d4d;
  --color-heading: #163b3d;
  --color-font-muted: #637b79;
  --sidebar-accent: #73ddc3;
  --sidebar-ink: #eef8f5;
  --sidebar-ink-muted: #b0cdca;
  --app-gradient: linear-gradient(#f3f7f6, #f3f7f6);
  --glass-bg: #fff;
  --glass-bg-strong: #fff;
  --glass-border: #dce6e3;
  --glass-shadow: 0 5px 24px #163b3d08;
  --radius-card: 16px;
  --radius-button: 9px;
  --section-gap: 22px;
  --page-padding: 28px;
  --card-padding: 24px;
}
html[data-demo="true"] body {
  background: #f3f7f6;
  font-family: "Segoe UI", Arial, sans-serif;
}
[data-demo] .app-viewport {
  background: #f3f7f6;
}
[data-demo] .app-header {
  background: #fff;
  color: #203536;
  box-shadow: none;
  border-bottom: 1px solid #dce6e3;
  min-height: 70px;
}
[data-demo] .brand-eyebrow {
  color: #52706c;
  font-size: 10px;
  letter-spacing: 0.17em;
}
[data-demo] .app-sidebar {
  background: #103d40;
  box-shadow: none;
  width: 260px;
}
[data-demo] .sidebar-brand {
  padding: 28px 20px;
  border-bottom: 1px solid #ffffff18;
}
[data-demo] .sidebar-brand-copy h1 {
  font-family: Bahnschrift, "Segoe UI", sans-serif;
  font-size: 19px;
  letter-spacing: -0.5px;
}
[data-demo] .sidebar-tool-button {
  padding: 13px 14px;
  border-radius: 9px;
}
[data-demo] .sidebar-tool-button[data-studio] {
  font-size: 13px;
  letter-spacing: 0;
  font-weight: 600;
  background: #ffffff09;
  margin-bottom: 6px;
}
[data-demo] .sidebar-section-heading {
  color: #9bbfbb;
  letter-spacing: 0.15em;
  font-size: 9px;
}
[data-demo] .drawer-dashboard,
[data-demo] #theme-toggle,
[data-demo] #theme-toggle-mobile {
  display: none;
}
[data-demo] .control-bar {
  background: #fff;
  border-bottom: 1px solid #dce6e3;
  box-shadow: none;
}
[data-demo] .spec-chip {
  background: transparent;
  box-shadow: none;
  border: 0;
  border-inline-end: 1px solid #e1e9e7;
  border-radius: 0;
}
[data-demo] .workspace {
  padding: 26px 28px 40px;
}
[data-demo] .workspace > * {
  flex-shrink: 0;
}
:root[data-demo] .spec-chip strong {
  color: #163b3d;
}
:root[data-demo] .spec-chip em {
  color: #637b79;
}
:root[data-demo] .sidebar-brand-copy h1 {
  color: #eef8f5;
  font-size: 19px;
  line-height: 1.25;
}
:root[data-demo] .sidebar-brand {
  padding: 8px 4px 20px;
}
:root[data-demo] .sidebar-brand-mark {
  display: none;
}
:root[data-demo] .sidebar-brand-divider {
  display: none;
}
:root[data-demo] .sidebar-brand .title-row {
  gap: 8px;
}
:root[data-demo] .sidebar-products {
  flex: none;
  min-height: 260px;
}
:root[data-demo] .app-sidebar {
  overflow-y: auto;
}
:root[data-demo] .sidebar-products .product-panel {
  overflow: visible;
}
[data-demo] .workspace-top {
  gap: 22px;
}
[data-demo] .dashboard-rail {
  width: 240px;
  flex-basis: 240px;
}
[data-demo] .selector-form,
[data-demo] .batch-panel,
[data-demo] .dashboard-card,
[data-demo] .results-panel {
  background: #fff;
  backdrop-filter: none;
  box-shadow: 0 4px 22px #103d4005;
  border: 1px solid #dce6e3;
  border-radius: 16px;
}
[data-demo] .card-title h2 {
  font-family: Bahnschrift, "Segoe UI", sans-serif;
  font-size: 21px;
  letter-spacing: -0.45px;
  font-weight: 600;
}
[data-demo] .title-icon {
  background: #e9f3ef;
  color: #095c59;
  border: 0;
}
[data-demo] input,
[data-demo] select,
[data-demo] textarea {
  border: 1px solid #ceddd8;
  background: #fff;
  color: #243e3e;
  border-radius: 8px;
  box-shadow: none;
}
[data-demo] .input-grid input,
[data-demo] .input-grid select {
  min-height: 44px;
}
[data-demo] .input-grid label > span {
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 0.02em;
}
[data-demo] .primary-button {
  background: #095c59;
  color: #fff;
  border: 1px solid #095c59;
  box-shadow: none;
}
[data-demo] .outline-button {
  background: #fff;
  color: #095c59;
  border: 1px solid #cadcd5;
  box-shadow: none;
}
[data-demo] .primary-button:hover {
  background: #074844;
}
[data-demo] .outline-button:hover {
  background: #edf5f1;
}
[data-demo] .results-table thead {
  background: #edf4f1;
}
[data-demo] .results-table th {
  background: #edf4f1;
  text-transform: none;
  letter-spacing: 0.02em;
  font-size: 11px;
}
[data-demo] .results-table td {
  font-variant-numeric: tabular-nums;
}
[data-demo] .table-actions {
  gap: 5px;
  flex-wrap: wrap;
}
[data-demo] .graph-dialog {
  background: #fff;
  border-radius: 18px;
  box-shadow: 0 24px 100px #103d4033;
}
[data-demo] .graph-content {
  background: #f3f7f6;
}
[data-demo] .language-control {
  background: #f4f8f6;
  border: 1px solid #dce6e3;
  border-radius: 9px;
  padding: 4px 9px;
  color: #234442;
}
[data-demo] .language-control select {
  border: 0;
  background: transparent;
  color: #234442;
  font-size: 12px;
  min-width: 95px;
}
.locale-flag {
  width: 25px;
  height: 17px;
  display: block;
  border-radius: 3px;
  box-shadow: 0 0 0 1px #0001;
}
.locale-native {
  display: none !important;
}
.locale-picker {
  position: relative;
  color: #234442;
  font-size: 12px;
}
.locale-picker summary {
  display: flex;
  gap: 14px;
  align-items: center;
  justify-content: space-between;
  background: #f4f8f6;
  border: 1px solid #dce6e3;
  border-radius: 9px;
  padding: 10px 12px;
  cursor: pointer;
  list-style: none;
}
.locale-picker summary::-webkit-details-marker {
  display: none;
}
.locale-current {
  display: flex;
  gap: 9px;
  align-items: center;
}
.locale-options {
  position: absolute;
  inset-inline-end: 0;
  top: calc(100% + 8px);
  width: 210px;
  background: white;
  padding: 7px;
  border: 1px solid #dce6e3;
  box-shadow: 0 12px 40px #103d4026;
  border-radius: 12px;
  z-index: 100;
}
.locale-options button {
  display: flex;
  width: 100%;
  align-items: center;
  gap: 12px;
  text-align: start;
  background: white;
  border: 0;
  padding: 11px;
  border-radius: 7px;
  color: #234442;
  cursor: pointer;
}
.locale-options button small {
  margin-inline-start: auto;
  font:
    9px Consolas,
    monospace;
  color: #66847b;
}
.locale-options button:hover,
.locale-options button[aria-pressed="true"] {
  background: #e9f3ef;
}
:root[data-demo] .product-selected-media {
  max-height: 120px;
}
:root[data-demo] .studio-hero {
  margin-bottom: 0;
}
.demo-visitor {
  background: #edf5ef;
  border: 1px solid #d4e5d9;
  color: #316449;
  font-size: 10px;
  font-weight: 700;
  padding: 8px 12px;
  border-radius: 30px;
  white-space: nowrap;
}
.studio-hero {
  display: grid;
  grid-template-columns: 1.1fr 1fr;
  gap: 32px;
  align-items: center;
  padding: 28px 30px;
  margin-bottom: 24px;
  background: #e6efeb;
  border: 1px solid #d4e3dc;
  border-radius: 18px;
  overflow: hidden;
}
.studio-eyebrow {
  font:
    600 9px "Segoe UI",
    sans-serif;
  letter-spacing: 0.17em;
  color: #52746d;
}
.studio-hero h1 {
  font:
    500 clamp(28px, 2.65vw, 43px)/1.08 Bahnschrift,
    "Segoe UI",
    sans-serif;
  letter-spacing: -1.5px;
  color: #123f3d;
  margin: 14px 0 10px;
  max-width: 420px;
}
.studio-hero p {
  color: #53746a;
  font-size: 15px;
  margin: 0 0 22px;
}
.studio-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  align-items: center;
}
.studio-actions button {
  min-height: 40px;
  padding: 10px 17px;
  border-radius: 8px;
  font-size: 12px;
  font-weight: 600;
  cursor: pointer;
}
.studio-caption {
  display: block;
  font-size: 10px;
  color: #52746d;
  margin-top: 18px;
}
.hero-instrument {
  background: #103d40;
  padding: 18px 22px 14px;
  border-radius: 12px;
  color: #b7d7ce;
  box-shadow: 0 12px 25px #103d4015;
  transform: rotate(-1deg);
}
.hero-instrument > svg {
  width: 100%;
  margin: 14px 0 7px;
  display: block;
}
.instrument-label {
  display: flex;
  justify-content: space-between;
  font:
    9px Consolas,
    monospace;
  letter-spacing: 0.1em;
}
.hero-instrument small {
  display: block;
  font-size: 8px;
  text-align: center;
  margin-top: 12px;
  color: #9fbfb8;
}
.studio-dialog {
  border: 1px solid #d0e0db;
  border-radius: 20px;
  padding: 0;
  width: min(1100px, 94vw);
  max-height: 90vh;
  color: #203d3c;
  background: #fff;
  box-shadow: 0 32px 120px #0b302a40;
}
.studio-dialog::backdrop {
  background: #092e38a6;
  backdrop-filter: blur(5px);
}
.studio-dialog-head {
  position: sticky;
  top: 0;
  z-index: 2;
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 22px 28px;
  background: #fff;
  border-bottom: 1px solid #dce6e3;
}
.studio-dialog-head h2 {
  font:
    500 29px Bahnschrift,
    "Segoe UI",
    sans-serif;
  letter-spacing: -0.7px;
  margin: 8px 0 0;
}
.studio-dialog-head > button,
.quote-line > button {
  border: 1px solid #dce6e3;
  background: #f4f8f6;
  border-radius: 8px;
  min-width: 36px;
  height: 36px;
  cursor: pointer;
  color: #335854;
}
.studio-dialog-body {
  padding: 24px 28px 30px;
}
.studio-intro {
  font-size: 13px;
  line-height: 1.7;
  color: #607975;
  margin: 0 0 22px;
}
.studio-empty {
  text-align: center;
  padding: 45px 16px;
}
.studio-empty p {
  max-width: 500px;
  margin: 16px auto 26px;
  line-height: 1.7;
}
.compare-picks {
  display: flex;
  gap: 12px;
  flex-wrap: wrap;
  margin-bottom: 20px;
}
.compare-picks label {
  background: #eef5f1;
  border: 1px solid #d3e4dc;
  border-radius: 8px;
  padding: 12px;
  font-size: 12px;
  display: flex;
  align-items: center;
  gap: 7px;
}
.compare-picks input {
  accent-color: #095c59;
}
.studio-table-scroll {
  overflow: auto;
  border: 1px solid #dce6e3;
  border-radius: 10px;
}
.studio-table {
  border-collapse: collapse;
  width: 100%;
  font-size: 12px;
  min-width: 560px;
}
.studio-table th,
.studio-table td {
  padding: 14px 18px;
  border-bottom: 1px solid #e3ece8;
  text-align: start;
}
.studio-table thead th {
  background: #103d40;
  color: #fff;
  font-weight: 600;
}
.studio-table tbody th {
  color: #54736b;
  font-weight: 500;
}
.studio-table tbody tr:nth-child(even) {
  background: #f5f9f7;
}
.studio-table td {
  font-weight: 600;
  font-variant-numeric: tabular-nums;
}
.studio-chart {
  margin: 24px 0;
  background: #fff;
  border-radius: 12px;
  overflow: auto;
}
.studio-chart svg {
  width: 100%;
  height: auto;
  min-width: 580px;
}
.standards-note {
  margin-top: 24px;
  border-top: 1px solid #dce6e3;
  padding-top: 18px;
  font-size: 11px;
  line-height: 1.8;
  color: #607975;
}
.standards-note summary {
  cursor: pointer;
  font-weight: 600;
  color: #315b51;
}
.standards-note a {
  color: #095c59;
}
.quote-fields {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 18px;
  margin-bottom: 24px;
}
.quote-fields label,
.quote-line label,
.quote-terms {
  display: flex;
  flex-direction: column;
  gap: 8px;
  font-size: 11px;
  font-weight: 600;
  color: #527069;
}
.studio-dialog input,
.studio-dialog select,
.studio-dialog textarea {
  font:
    14px "Segoe UI",
    sans-serif;
  min-width: 0;
  padding: 11px 12px;
  width: 100%;
  box-sizing: border-box;
}
.studio-dialog input[type="checkbox"] {
  width: auto;
}
.quote-line {
  display: grid;
  grid-template-columns: 2fr 0.6fr 1fr 36px;
  gap: 14px;
  align-items: start;
  padding: 18px 0;
  border-top: 1px solid #dce6e3;
}
.quote-line > button {
  margin-top: 24px;
}
.quote-line small {
  font-size: 10px;
  font-weight: 400;
  color: #69847c;
}
.quote-adjustments {
  margin-top: 22px;
  grid-template-columns: 1fr 1fr;
  width: 60%;
}
.quote-terms textarea {
  resize: vertical;
}
.quote-total {
  display: flex;
  flex-direction: column;
  gap: 12px;
  max-width: 390px;
  margin: 24px 0 24px auto;
  padding: 22px;
  background: #f0f6f3;
  border-radius: 12px;
}
.quote-total > span,
.quote-total > strong {
  display: flex;
  justify-content: space-between;
  gap: 18px;
  font-size: 13px;
  font-variant-numeric: tabular-nums;
}
.quote-total > strong {
  border-top: 1px solid #cbded4;
  padding-top: 15px;
  color: #095c59;
  font-size: 18px;
}
#quote-error {
  color: #a32e25;
  font-size: 12px;
}
button:focus-visible,
a:focus-visible,
input:focus-visible,
select:focus-visible,
summary:focus-visible,
textarea:focus-visible {
  outline: 3px solid #428f83;
  outline-offset: 3px;
}
@media (min-width: 861px) and (max-width: 1250px) {
  [data-demo] .dashboard-rail {
    display: none;
  }
  [data-demo] .app-sidebar {
    width: 235px;
  }
  .studio-hero {
    gap: 20px;
    padding: 24px;
  }
}
@media (max-width: 860px) {
  [data-demo] .app-sidebar {
    width: 100%;
  }
  [data-demo] .workspace {
    padding: 18px 16px 30px;
  }
  .studio-hero {
    padding: 24px;
    gap: 22px;
  }
  .studio-hero h1 {
    font-size: 32px;
  }
  .studio-dialog-body {
    padding: 20px;
  }
  .studio-dialog-head {
    padding: 20px;
  }
  .quote-fields {
    grid-template-columns: 1fr 1fr;
  }
}
@media (max-width: 580px) {
  .studio-hero {
    grid-template-columns: 1fr;
  }
  .hero-instrument {
    display: none;
  }
  .studio-hero h1 {
    font-size: 35px;
  }
  .studio-hero p {
    font-size: 14px;
  }
  [data-demo] .brand-eyebrow {
    display: none;
  }
  [data-demo] .app-header {
    flex-wrap: nowrap;
  }
  .demo-visitor {
    font-size: 9px;
    padding: 7px;
  }
  .quote-fields {
    grid-template-columns: 1fr;
    gap: 14px;
  }
  .quote-line {
    grid-template-columns: 1fr 1fr 36px;
  }
  .quote-line label:first-child {
    grid-column: 1/-1;
  }
  .quote-adjustments {
    width: 100%;
    grid-template-columns: 1fr 1fr;
  }
  .studio-dialog-head h2 {
    font-size: 25px;
  }
  .studio-dialog {
    max-height: 94dvh;
    width: 96vw;
  }
  .studio-dialog-body {
    padding: 18px;
  }
}
@media (prefers-reduced-motion: reduce) {
  *,
  *::before,
  *::after {
    animation: none !important;
    transition: none !important;
    scroll-behavior: auto !important;
  }
}
@media (max-width: 860px) {
  :root[data-demo] .sidebar-products {
    min-height: 0;
    margin-bottom: 0;
  }
  :root[data-demo] .app-sidebar {
    overflow: visible;
    padding: 12px 16px;
  }
  :root[data-demo] .sidebar-brand {
    padding: 0 0 8px;
    margin-bottom: 0;
  }
  :root[data-demo] .sidebar-brand-copy h1 {
    font-size: 17px;
  }
  :root[data-demo] .spec-strip {
    flex-wrap: wrap;
    gap: 4px;
  }
  :root[data-demo] .spec-chip {
    min-width: 0;
    padding: 4px 8px;
  }
  :root[data-demo] .spec-chip strong {
    font-size: 12px;
  }
  :root[data-demo] .spec-chip em {
    font-size: 8px;
  }
}

/* Visitor studio refinement: unified controls, technical chart and duty workspace. */
:root[data-demo] { --font-body: "Segoe UI", Arial, sans-serif; }
[data-demo] .hero-instrument { transform: none; border: 1px solid #286165; box-shadow: 0 16px 32px #153f4012; border-radius: 18px; background: linear-gradient(135deg,#153f46,#10373d); }
[data-demo] .hero-instrument svg { display:block; width:100%; height:auto; overflow:visible; }
[data-demo] .studio-hero { border-radius:24px; background:linear-gradient(115deg,#edf6f3,#e2eef0); border:1px solid #d6e6e5; }
[data-demo] .studio-hero h1 { letter-spacing:-1.25px; }
.ui-icon { width:18px; height:18px; flex-shrink:0; vertical-align:middle; stroke-width:1.75; }
button > .ui-icon { margin-inline-end:7px; }
button[aria-label="Close"] > .ui-icon { margin:0; }
[data-demo] button { transition:background .18s ease, box-shadow .18s ease, border-color .18s ease; }
[data-demo] .primary-button { box-shadow:0 4px 8px #07585418,inset 0 1px 0 #ffffff24; }
[data-demo] .primary-button:hover { background:#074b4a; box-shadow:0 5px 13px #07585425; }
[data-demo] .outline-button:hover, [data-demo] .secondary-button:hover { background:#eff7f6; border-color:#98bbb8; }
[data-demo] .workspace-top { display:block; }
[data-demo] .workspace-dashboard { display:none; }
[data-demo] .workspace-column { min-width:0; }
[data-demo] .selector-form { padding:26px; border:1px solid #dce6ec; border-radius:20px; box-shadow:0 5px 24px #17394906; }
[data-demo] .selector-form .card-title { padding-bottom:20px; margin-bottom:20px; border-bottom:1px solid #eaf0f3; }
[data-demo] .selector-form .title-icon { width:44px; height:44px; background:#edf6f5; border:1px solid #d9e9e7; border-radius:12px; color:#0a6560; }
[data-demo] .input-grid { grid-template-columns:minmax(140px,1.4fr) minmax(95px,.7fr) minmax(140px,1.4fr) minmax(95px,.7fr); gap:18px 16px; }
[data-demo] .input-grid label { font-size:12px; font-weight:600; color:#627984; gap:8px; }
[data-demo] .input-grid input, [data-demo] .input-grid select { height:44px; border:1px solid #d9e3e9; border-radius:10px; background:#fbfcfe; color:#233f4e; padding-inline:13px; box-shadow:0 1px 2px #233f4e03; font-size:14px; }
[data-demo] .input-grid :is([data-field="flow"],[data-field="head"]) input { height:58px; font-size:26px; font-weight:650; color:#095f61; background:#f0f8f7; border-color:#c8e1dd; letter-spacing:-.5px; }
[data-demo] .input-grid :is([data-field="flowUnit"],[data-field="headUnit"]) select { height:58px; background:#f0f8f7; border-color:#c8e1dd; }
.input-section-label { grid-column:1/-1; display:flex; gap:8px; align-items:center; padding:15px 0 2px; color:#274d5b; font-weight:650; font-size:13px; }
.input-section-label small { margin-inline-start:auto; font-size:11px; font-weight:400; color:#8496a1; }
[data-demo] .filter-action-row { margin-top:24px; padding-top:20px; border-top:1px solid #eaf0f3; gap:16px; }
[data-demo] .results-card, [data-demo] .batch-card { border-radius:20px; box-shadow:0 5px 24px #17394906; border-color:#dce6ec; }
[data-demo] .results-table th { background:#f3f7fa; color:#728696; padding-block:15px; letter-spacing:.65px; }
[data-demo] .results-table td { padding-block:16px; }
[data-demo] .results-table tbody tr:hover { background:#f5fafb; }
[data-demo] .product-card { border-radius:13px; gap:12px; padding:10px; }
[data-demo] .product-card .product-media { border-radius:10px; background:#f0f5f8; width:62px; height:66px; }
[data-demo] .product-card .product-media img { object-fit:contain; width:100%; height:100%; }
.guide-tag { display:inline-block; font-size:10px; font-weight:650; color:#397889; background:#edf5f8; padding:4px 7px; border-radius:5px; margin-top:5px; }
[data-demo] .graph-dialog { border:1px solid #d7e3eb; border-radius:22px; box-shadow:0 28px 90px #10283730; }
[data-demo] .graph-header h2 { font-family:"Segoe UI",Arial,sans-serif; font-size:23px; letter-spacing:-.5px; }
[data-demo] .graph-chart-wrap { background:#f7fafc; border:1px solid #e2eaf0; border-radius:15px; padding:14px; }
[data-demo] .graph-data-table th { background:#eef4f9; color:#587183; letter-spacing:.65px; }
[data-demo] .graph-data-table tbody tr:nth-child(even) { background:#f8fbfd; }
.guide-intro { display:grid; grid-template-columns:200px 1fr; gap:26px; align-items:center; margin-bottom:25px; }
.guide-intro img { width:100%; border-radius:18px; }
.guide-intro h3 { font-size:21px; line-height:1.35; color:#1d4554; margin:10px 0; }
.guide-intro p,.guide-formula { color:#758791; font-size:13px; line-height:1.7; }
.guide-form { display:grid; grid-template-columns:repeat(3,1fr); gap:16px; }
.guide-form label { display:flex; flex-direction:column; gap:8px; color:#57717f; font-size:12px; }
.guide-form input { border:1px solid #cfdee6; border-radius:10px; padding:12px; font:600 20px "Segoe UI",sans-serif; width:100%; box-sizing:border-box; }
.guide-form button { grid-column:1/-1; justify-self:start; }
.guide-result { display:flex; gap:40px; flex-wrap:wrap; align-items:center; margin-top:24px; padding:24px; border-radius:15px; background:#edf7f5; }
.guide-result div { display:flex; flex-direction:column; gap:6px; color:#557a7a; font-size:12px; }
.guide-result strong { font-size:32px; font-weight:600; color:#0c6660; }.guide-result strong small { font-size:14px; font-weight:400; }
@media(max-width:700px) {
 [data-demo] .selector-form { padding:18px; }
 [data-demo] .input-grid { grid-template-columns:minmax(0,1.3fr) minmax(0,1fr); gap:14px; }
 [data-demo] .studio-hero { padding:24px; }
 .guide-intro { grid-template-columns:1fr; gap:10px; }.guide-intro img { width:170px; }
 .guide-form { grid-template-columns:1fr; }.guide-result { gap:20px; padding:18px; }
}
@media(prefers-reduced-motion:reduce) { [data-demo] button { transition:none; } }

[data-demo] .graph-header { padding-inline-end:36px; flex-wrap:wrap; gap:14px; }
[data-demo] .graph-summary { display:flex; flex-wrap:wrap; gap:8px; max-width:100%; }
[data-demo] .graph-summary span { white-space:normal; line-height:1.6; border-radius:8px; padding:7px 10px; }
[data-demo] .graph-close-button { inset-inline-end:18px; top:18px; }

[data-demo] .spec-chip-status strong { padding-inline-start:12px; }

/* Restored settings and administration workspace. */
[data-demo] .sidebar-settings-block { display:grid; gap:8px; margin-top:18px; padding-top:18px; border-top:1px solid #ffffff20; }
[data-demo] .sidebar-settings-button { display:flex; align-items:center; gap:10px; width:100%; padding:13px 15px; background:#ffffff0d; border:1px solid #ffffff15; border-radius:12px; color:#e3f0ef; text-align:start; font-weight:600; }
[data-demo] .sidebar-settings-button:hover { background:#ffffff18; }
.demo-settings-entry { display:flex; align-items:center; border:1px solid #d1e3df; cursor:pointer; }
.demo-control-note { display:flex; align-items:center; gap:10px; padding:12px 28px; font-size:12px; color:#547f80; background:#f0f7f6; border-bottom:1px solid #dcebe7; }
.demo-admin-content { padding:26px; }
.control-card-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:14px; }
.control-card { display:flex; flex-direction:column; align-items:start; gap:10px; padding:20px; border:1px solid #dde7ed; border-radius:16px; background:#fff; color:#274956; text-align:start; cursor:pointer; }
.control-card:hover { background:#f2f8f8; border-color:#9fc9c3; box-shadow:0 6px 18px #163d4910; }
.control-card-icon { display:grid; place-items:center; height:38px; width:38px; border-radius:11px; background:#eaf5f2; color:#16796e; }
.control-card strong { font-size:15px; }.control-card small { font-size:12px; font-weight:400; line-height:1.6; color:#7a8c96; }.control-card > .ui-icon { align-self:end; color:#80a9a5; }
.demo-admin-layout { display:grid; grid-template-columns:205px minmax(0,1fr); gap:26px; min-height:360px; }
.demo-admin-nav { display:flex; flex-direction:column; gap:6px; border-inline-end:1px solid #e5edf1; padding-inline-end:18px; }
.demo-admin-nav button { display:flex; align-items:center; text-align:start; padding:12px; border:0; border-radius:9px; color:#667f8c; background:transparent; cursor:pointer; font-size:13px; }
.demo-admin-nav button[aria-current="true"] { color:#096963; background:#e8f4f1; font-weight:650; }
.demo-admin-pane h3 { color:#214a57; font-size:24px; margin:5px 0 16px; letter-spacing:-.5px; }.demo-admin-pane p { color:#70838f; line-height:1.8; font-size:14px; }
.demo-admin-pane > button { margin:12px 8px 0 0; }
.demo-license-card { display:flex; flex-direction:column; gap:12px; padding:25px; border:1px solid #d3e7e2; border-radius:14px; background:#f1f8f5; color:#245f60; }.demo-license-card strong { font-size:22px; }.demo-license-card span { font-size:13px; }
.demo-user-form { display:flex; gap:12px; flex-wrap:wrap; align-items:end; margin:24px 0; }.demo-user-form label { display:flex; flex:1; min-width:125px; flex-direction:column; gap:7px; font-size:12px; color:#55737f; }.demo-user-form input,.demo-user-form select { width:100%; padding:11px; border:1px solid #d6e3e9; border-radius:9px; background:#fafcfd; }
.demo-roster > div { display:flex; align-items:center; justify-content:space-between; gap:12px; padding:14px 0; border-bottom:1px solid #e5edf1; font-size:13px; }.demo-roster span { display:flex; align-items:center; gap:10px; }.demo-roster small { color:#81939d; }
[data-demo] .settings-dialog { border-radius:22px; border:1px solid #d9e6ec; box-shadow:0 30px 100px #12364430; background:#fbfdfe; }
[data-demo] .settings-dialog-header { background:#fff; padding:24px 28px; border-bottom:1px solid #e3edf1; }
[data-demo] .settings-tabs { padding:14px 24px; background:#f0f6f7; gap:8px; border-bottom:1px solid #dce8eb; }
[data-demo] .settings-tab { border-radius:10px; border:1px solid transparent; color:#68818d; padding:12px 16px; }
[data-demo] .settings-tab.is-active { background:#fff; color:#08655f; border-color:#cce2dd; box-shadow:0 2px 7px #164a5010; }
[data-demo] .settings-dialog input:not([type="color"]):not([type="checkbox"]),[data-demo] .settings-dialog select,[data-demo] .settings-dialog textarea { border-radius:9px; border:1px solid #d5e3e9; background:#fff; padding:10px 12px; color:#284957; }
[data-demo] .settings-dialog-footer { background:#fff; border-top:1px solid #e2ebef; padding:18px 24px; }
@media(max-width:700px){.control-card-grid{grid-template-columns:1fr 1fr}.demo-admin-content{padding:16px}.demo-admin-layout{grid-template-columns:1fr;gap:18px}.demo-admin-nav{flex-direction:row;overflow-x:auto;border:0;padding:0 0 8px}.demo-admin-nav button{flex-shrink:0}.demo-admin-pane h3{font-size:21px}.demo-control-note{padding:12px 18px}.control-card{padding:14px}.demo-roster > div{flex-wrap:wrap}}

/* Compact studio and editorial settings editor. */
:root[data-demo] .sidebar-brand { display:flex; align-items:center; gap:12px; padding-bottom:16px; }
:root[data-demo] .sidebar-brand-mark { display:flex; flex:0 0 52px; width:52px; height:52px; padding:3px; border-radius:50%; overflow:hidden; background:#fff; border:1px solid #ffffff50; }
:root[data-demo] .sidebar-brand-mark img { width:100%; height:100%; object-fit:contain; display:block; }
:root[data-demo] .sidebar-brand-copy h1 { font-size:15px; line-height:1.25; }
:root[data-demo] .sidebar-brand .pro-badge { display:none; }
[data-demo] .studio-hero { grid-template-columns:1fr minmax(260px,380px); padding:22px 26px; gap:28px; align-items:center; }
[data-demo] .studio-hero h1 { font-size:30px; margin:10px 0; }
[data-demo] .studio-hero p { font-size:14px; margin:0 0 18px; }
[data-demo] .hero-instrument { width:100%; max-width:380px; justify-self:end; padding:16px 19px; border-radius:14px; }
[data-demo] .hero-instrument svg { max-height:128px; }
[data-demo] .hero-instrument small { font-size:8px; margin-top:9px; }
[data-demo] .instrument-label { font-size:8px; }
[data-demo] .studio-actions button { min-height:36px; padding:9px 13px; font-size:12px; }
[data-demo] .studio-caption { font-size:10px; margin-top:15px; }
[data-demo] .selector-form { padding:18px 22px; border-radius:16px; }
[data-demo] .selector-form .card-title { margin-bottom:15px; padding-bottom:14px; }
[data-demo] .selector-form .card-title h2 { font-size:18px; }
[data-demo] .selector-form .title-icon { width:34px; height:34px; border-radius:10px; }
[data-demo] .input-grid { grid-template-columns:repeat(6,minmax(0,1fr)); gap:12px 14px; }
[data-demo] .input-grid [data-field="flow"], [data-demo] .input-grid [data-field="head"] { grid-column:span 2; }
[data-demo] .input-grid :is([data-field="flow"],[data-field="head"]) input { height:42px; font-size:20px; }
[data-demo] .input-grid :is([data-field="flowUnit"],[data-field="headUnit"]) select { height:42px; }
[data-demo] .input-grid input,[data-demo] .input-grid select { height:36px; font-size:12px; padding-inline:10px; }
[data-demo] .input-grid label { font-size:10px; gap:6px; }
[data-demo] .input-section-label { padding:5px 0 0; font-size:11px; }
[data-demo] .filter-action-row { margin-top:16px; padding-top:14px; }
[data-demo] .filter-action-row button { min-height:34px; padding:8px 12px; font-size:12px; }
[data-demo] .sidebar-tool-button { min-height:39px; padding:9px 12px; border-radius:10px; font-size:12px; }
[data-demo] .sidebar-tool-button[data-studio] { justify-content:flex-start; gap:10px; padding:10px 12px; font-size:12px; }
[data-demo] .sidebar-tool-icon { display:grid;place-items:center;width:30px;height:30px;border-radius:8px;background:#ffffff0b;border:1px solid #ffffff0e; }
[data-demo] .sidebar-tool-main { gap:10px; }
[data-demo] .sidebar-tool-button > .ui-icon { padding:6px; box-sizing:content-box; border:1px solid #ffffff12; border-radius:8px; background:#ffffff08; }
[data-demo] .settings-dialog { display:grid; grid-template-columns:185px minmax(0,1fr); grid-template-rows:auto minmax(0,1fr) auto; width:min(1080px,94vw); height:min(780px,92vh); max-height:92vh; overflow:hidden; }
[data-demo] .settings-dialog-header { grid-column:1/-1; padding:18px 24px; }
[data-demo] .settings-dialog-header h2 { font-size:22px; }
[data-demo] .settings-tabs { grid-column:1; grid-row:2; flex-direction:column; align-items:stretch; padding:20px 12px; overflow-y:auto; border:0; border-inline-end:1px solid #e2eaee; background:#f4f8fa; }
[data-demo] .settings-tab { display:flex;justify-content:flex-start;flex-shrink:0;gap:8px; padding:11px 12px; font-size:12px; text-align:start; }
[data-demo] .settings-body { grid-column:2;grid-row:2; min-height:0; overflow:auto; padding:22px; background:#f8fafc; }
[data-demo] .settings-grid { display:flex; flex-direction:column; gap:16px; }
.settings-editor-section { background:#fff; border:1px solid #e0e8ef; border-radius:14px; overflow:hidden; }
.settings-editor-section > header { display:flex;align-items:center;gap:9px;padding:13px 17px;border-bottom:1px solid #edf1f5;color:#447c80; }
.settings-editor-section h3 { margin:0;font:600 13px "Segoe UI",sans-serif;color:#315563; }
.settings-editor-fields { display:grid;grid-template-columns:1fr 1fr;gap:16px 20px;padding:17px; }
[data-demo] .settings-editor-fields > label { font-size:10px;letter-spacing:.3px;color:#6f8491;gap:7px; }
[data-demo] .settings-dialog .settings-editor-fields input:not([type="color"]):not([type="checkbox"]),[data-demo] .settings-dialog .settings-editor-fields select { padding:8px 10px;height:35px;font-size:12px;border-color:#e0e8ee;background:#fbfcfe; }
[data-demo] .settings-color-field { display:flex;align-items:center;border:1px solid #dee8ee;border-radius:9px;background:#fbfcfe;overflow:hidden;padding:3px;gap:5px; }
[data-demo] .settings-color-field input[type="color"] { width:28px;height:28px;padding:2px;border:0;border-radius:6px;background:transparent;flex-shrink:0; }
[data-demo] .settings-dialog .settings-color-field input[type="text"] { border:0!important;background:transparent!important;box-shadow:none;height:28px!important;min-width:0; }
[data-demo] .settings-dialog-footer { grid-column:1/-1; grid-row:3; padding:13px 20px;gap:10px; }
[data-demo] .settings-dialog-footer button,[data-demo] .settings-dialog-footer .outline-button { font-size:11px;min-height:34px;padding:8px 11px; }
@media(min-width:1500px){[data-demo] .workspace{padding-inline:36px}[data-demo] .workspace > * {width:100%;max-width:1440px;margin-inline:auto;box-sizing:border-box}}
@media(max-width:950px){[data-demo] .input-grid{grid-template-columns:repeat(4,minmax(0,1fr))}[data-demo] .input-grid [data-field="flow"],[data-demo] .input-grid [data-field="head"]{grid-column:auto}[data-demo] .studio-hero{grid-template-columns:1fr 300px;gap:18px}[data-demo] .studio-hero h1{font-size:26px}}
@media(max-width:700px){[data-demo] .studio-hero{grid-template-columns:1fr;padding:20px}[data-demo] .hero-instrument{max-width:320px;justify-self:center}[data-demo] .input-grid{grid-template-columns:minmax(0,1.3fr) minmax(0,1fr)}[data-demo] .selector-form{padding:16px}[data-demo] .settings-dialog{grid-template-columns:1fr;grid-template-rows:auto auto minmax(0,1fr) auto;height:94vh}[data-demo] .settings-tabs{grid-column:1;grid-row:2;flex-direction:row;padding:9px;overflow-x:auto}[data-demo] .settings-body{grid-column:1;grid-row:3;padding:12px}[data-demo] .settings-dialog-footer{grid-row:4;flex-wrap:wrap;padding:10px}[data-demo] .settings-editor-fields{grid-template-columns:1fr;gap:12px;padding:14px}[data-demo] .settings-dialog-header{padding:14px}[data-demo] .settings-dialog-header h2{font-size:18px}}

/* Full-width engineering desk. */
:root[data-demo] .workspace { display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:22px;padding:24px;align-items:start; }
:root[data-demo] .workspace > * { max-width:none;width:auto;margin:0;min-width:0; }
.workspace-primary { display:flex;flex-direction:column;gap:20px;min-width:0; }
.pump-reference { position:sticky;top:0;border:1px solid #dbe7e9;border-radius:18px;background:#fff;overflow:hidden;box-shadow:0 5px 20px #21454b05; }
.pump-reference > header { display:flex;align-items:center;gap:12px;padding:20px;background:#123e44;color:#e9f4f2; }
.pump-reference h2 { font-size:18px;margin:5px 0 0;letter-spacing:-.3px; }.pump-reference .studio-eyebrow{font-size:8px;color:#8cbdb7;}
.reference-icon { display:grid;place-items:center;width:36px;height:36px;border-radius:10px;background:#ffffff10;border:1px solid #ffffff18; }
.reference-tabs { display:flex;padding:10px;gap:5px;background:#f4f8f8;border-bottom:1px solid #e4ecef; }.reference-tabs button{flex:1;border:0;background:transparent;padding:9px;border-radius:8px;color:#6f8991;font-size:11px;cursor:pointer;}.reference-tabs button.is-active{background:#fff;color:#086b63;box-shadow:0 1px 5px #123b4210;font-weight:650;}
.reference-body { padding:18px; }.reference-body label { display:flex;flex-direction:column;gap:7px;margin-bottom:14px;font-size:11px;color:#68828c;font-weight:600; }.reference-body input,.reference-body select{width:100%;min-width:0;box-sizing:border-box;border:1px solid #dbe6eb;border-radius:9px;background:#f9fbfd;color:#234d59;padding:10px;font-size:13px;}.reference-pair{display:grid;grid-template-columns:1fr 1fr;gap:12px;}.reference-swap{display:flex;align-items:center;margin:0 auto 16px;border:0;background:transparent;color:#5f8790;font-size:11px;cursor:pointer;}.reference-answer{display:flex;flex-direction:column;gap:7px;padding:20px;border:1px solid #d6eae4;border-radius:12px;background:#edf7f3;color:#2a7770;overflow-wrap:anywhere;}.reference-answer small{font-size:10px;}.reference-answer strong{font-size:29px;letter-spacing:-.5px;line-height:1.2;}.reference-answer span{font-size:12px;}.reference-note,.pump-reference footer{font-size:11px;line-height:1.7;color:#81959d;}.pump-reference footer{padding:14px 18px;border-top:1px solid #edf1f3;background:#fafcfd;}
.demo-model-link{display:flex;align-items:center;gap:7px;font-size:11px;color:#0b736b;border:0;border-bottom:1px solid #b6d8cf;background:transparent;padding:4px 0;margin-inline-start:10px;cursor:pointer;}.demo-model-link .ui-icon{width:13px;height:13px;}
[data-demo] .status-strip{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;border:1px solid #dce7ec;border-radius:13px;padding:14px 8px;background:#fff;box-shadow:none;}.status-strip .status-key{display:flex;flex-direction:column;align-items:flex-start;gap:8px;padding:0 12px;border-inline-end:1px solid #e9eff2;}.status-strip .status-key:last-child{border:0;}.status-strip .status-key > span:last-child{font-size:10px;line-height:1.6;color:#7a8d98;}
.demo-model-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;}.demo-model-grid article{padding:18px;border:1px solid #dce7eb;border-radius:13px;background:#fbfdfe;}.demo-model-grid h3{font-size:16px;color:#224d58;overflow-wrap:anywhere;}.demo-model-grid p{font-size:12px;line-height:1.7;color:#768c98;}.demo-model-grid button{font-size:11px;}.model-search{display:flex;align-items:center;gap:10px;background:#f3f8fa;border:1px solid #dce8ee;padding:10px 14px;border-radius:10px;margin:18px 0;color:#72929b;}.model-search input{width:100%;border:0;background:transparent;outline:none;font-size:13px;}
@media(max-width:1300px){:root[data-demo] .workspace{grid-template-columns:minmax(0,1fr) 260px;gap:16px;padding:18px}[data-demo] .studio-hero{grid-template-columns:1fr}[data-demo] .hero-instrument{display:none}[data-demo] .input-grid{grid-template-columns:repeat(2,minmax(0,1fr))}[data-demo] .input-grid [data-field="flow"],[data-demo] .input-grid [data-field="head"]{grid-column:auto}.status-strip .status-key{padding:0 8px}[data-demo] .status-strip{grid-template-columns:1fr 1fr;row-gap:15px}}
@media(max-width:1000px){:root[data-demo] .workspace{grid-template-columns:minmax(0,1fr)}.pump-reference{position:static}.reference-body{display:block}.demo-model-grid{grid-template-columns:1fr 1fr}}
@media(max-width:600px){.demo-model-grid{grid-template-columns:1fr}.demo-model-link{margin-inline-start:0}.workspace-primary{gap:15px}}

.pump-reference > header h2 { color:#eff8f6; }

/* Distinct suitability emblems, scoped to the explanatory guide. */
[data-demo] .status-strip { padding:16px 6px; }
[data-demo] .status-strip .status-key { flex-direction:row; align-items:center; gap:12px; padding:0 16px; }
.suitability-emblem { display:grid;place-items:center;flex:0 0 42px;width:42px;height:42px;border-radius:13px;background:var(--emblem-bg);color:var(--emblem-ink);border:1px solid var(--emblem-line);box-shadow:inset 0 1px 0 #ffffffb0; }
.suitability-emblem svg { width:25px;height:25px; }
.status-emblem-suitable { --emblem-bg:#e7f6ee;--emblem-ink:#10825f;--emblem-line:#c4e5d6; }
.status-emblem-near-suitable { --emblem-bg:#edf3ff;--emblem-ink:#3979df;--emblem-line:#d4e1fa; }
.status-emblem-oversized { --emblem-bg:#fff4df;--emblem-ink:#b77c18;--emblem-line:#f0dfb8; }
.status-emblem-undersized { --emblem-bg:#fff0ed;--emblem-ink:#c44d40;--emblem-line:#efd2cc; }
.suitability-copy { display:flex;flex-direction:column;gap:5px;min-width:0; }
[data-demo] .suitability-copy .status-badge { background:transparent;padding:0;border:0;color:var(--emblem-ink);font-size:11px;letter-spacing:.45px;box-shadow:none; }
[data-demo] .suitability-copy .status-badge::before { display:none; }
.suitability-copy > span:last-child { font-size:10px;line-height:1.5;color:#78909c; }
@media(max-width:600px){[data-demo] .status-strip .status-key{gap:9px;padding:0 9px}.suitability-emblem{flex-basis:34px;width:34px;height:34px;border-radius:10px}.suitability-emblem svg{width:21px;height:21px}}
.pump-ai{position:fixed;right:24px;bottom:24px;z-index:150;font-family:inherit;color:#173d42}.ai-launch{display:flex;align-items:center;gap:10px;border:1px solid #c7dfd8;border-radius:50px;padding:8px 18px 8px 8px;background:#fff;box-shadow:0 8px 32px #123b3430;color:#123e3e;cursor:pointer}.ai-launch img,.ai-chat header img{width:42px;height:42px;border-radius:50%;object-fit:contain}.ai-launch b{background:#d9f3e8;padding:4px;border-radius:6px;font-size:11px}.ai-welcome{position:absolute;bottom:72px;right:0;width:255px;background:#fff;border:1px solid #d3e4df;border-radius:16px 16px 4px 16px;padding:16px 32px 16px 16px;box-shadow:0 8px 30px #123b3410;font-size:13px;line-height:1.5}.ai-welcome button{position:absolute;right:8px;top:8px;border:0;background:none;color:#557572}.ai-chat{position:absolute;bottom:74px;right:0;width:400px;height:min(640px,calc(100dvh - 125px));background:#f7faf9;border:1px solid #c9ddd7;border-radius:22px;box-shadow:0 22px 70px #102f3b35;display:flex;flex-direction:column;overflow:hidden}.ai-chat[hidden],.ai-welcome[hidden]{display:none}.ai-chat header{display:flex;align-items:center;gap:10px;background:#123e40;color:white;padding:15px}.ai-chat header div{flex:1}.ai-chat header small{display:block;font-size:10px;color:#bed5cf;margin-top:4px}.ai-chat header button{color:#fff;background:#ffffff12;border:0;border-radius:8px;padding:8px;font-size:19px;cursor:pointer}.ai-conversation{flex:1;min-height:80px;overflow:auto;padding:18px;display:flex;flex-direction:column;gap:12px}.ai-conversation:empty:before{content:'Q / H   ·   Catalogue   ·   Graphs';font-size:13px;color:#63807d;margin:auto}.ai-message{white-space:pre-wrap;font-size:13px;line-height:1.65;padding:13px;border-radius:14px;background:#fff;border:1px solid #e1eae7;overflow-wrap:anywhere}.ai-user{background:#e3f1ed;margin-inline-start:28px}.ai-error{color:#a43d35}.ai-chat form{padding:14px;background:white;border-top:1px solid #dce8e3}.ai-chat textarea{width:100%;box-sizing:border-box;border:1px solid #ccdeda;border-radius:12px;resize:none;padding:11px;font:inherit;font-size:13px}.ai-compose{display:flex;gap:8px;align-items:center;margin-top:10px}.ai-compose select{min-width:0;flex:1;padding:7px;border:1px solid #dce8e3;border-radius:8px;background:#fff;font-size:12px}.ai-compose button{background:#0c605a;color:white;border:0;border-radius:9px;padding:9px 16px;cursor:pointer}.ai-compose button:disabled{opacity:.5}.ai-attach{font-size:23px;padding:0 8px;cursor:pointer}.ai-privacy{display:block;font-size:10px;color:#687f7b;line-height:1.5;margin-top:9px}.ai-model{border:1px solid #cce0d8;background:white;border-radius:12px;padding:12px}.ai-model strong,.ai-model small{display:block;margin-bottom:7px}.ai-model small{font-size:11px;color:#667e79}.ai-model button{margin:3px;border:1px solid #c5ded5;background:#eff7f3;border-radius:7px;padding:7px;font-size:11px;color:#18594b;cursor:pointer}.ai-file{font-size:11px;padding:0 14px;overflow-wrap:anywhere}.ai-file button{background:none;border:0;padding:8px}@media(max-width:600px){.pump-ai{right:14px;bottom:18px}.ai-chat{width:calc(100vw - 28px);height:calc(100dvh - 120px);bottom:68px}.ai-welcome{width:220px}}
/* A calm floating launcher, with room for every footer link. */
.pump-ai { bottom: var(--ai-bottom, 90px); }
.ai-launch { animation: boaz-ai-float 3.8s ease-in-out infinite; }
.ai-launch:hover, .ai-launch:focus-visible, .ai-launch[aria-expanded="true"] { animation-play-state: paused; }
.ai-chat { height: min(640px, calc(100dvh - var(--ai-bottom, 90px) - 94px)); }
@keyframes boaz-ai-float {
  0%, 100% { transform: translateY(0); box-shadow: 0 8px 24px #123b3424; }
  50% { transform: translateY(-7px); box-shadow: 0 16px 34px #123b3436; }
}
.ai-chat header button svg, .ai-welcome button svg { width: 18px; height: 18px; display: block; }
@media (prefers-reduced-motion: reduce) { .ai-launch { animation: none; } }
/* Pinned sidebar administration, with a separate scrolling catalogue/tools area. */
@media(min-width:1101px){
 :root[data-demo] .app-sidebar{overflow:hidden;min-height:0;padding-bottom:12px;}
 .sidebar-scroll-area{flex:1;min-height:0;overflow-y:auto;overflow-x:hidden;scrollbar-width:thin;}
 [data-demo] .app-sidebar>.sidebar-settings-block{flex:none;margin:0;padding:12px 0 0;background:#133e40;}
}
@media(max-width:1100px){.sidebar-scroll-area:empty{display:none;}[data-demo] #app-drawer .sidebar-settings-block{position:sticky;bottom:0;background:#133e40;z-index:2;}}
.ai-chat{width:430px;border-radius:24px;background:#f5faf8;}
.ai-chat header{padding:16px;gap:9px;}
.ai-chat header>div:not(.ai-language){min-width:0;flex:1;}
.ai-chat header .ai-language{position:relative;flex:none;display:flex;align-items:center;gap:5px;background:#ffffff12;border:1px solid #ffffff20;border-radius:9px;padding:8px;}
.ai-language-flag{display:flex;}
.ai-language .locale-flag{width:23px;height:16px;}
.ai-language select{position:absolute;inset:0;opacity:0;width:100%;cursor:pointer;}
.ai-language:focus-within{outline:2px solid #7ee0c7;outline-offset:2px;}
.ai-chat header button{width:32px;height:32px;display:grid;place-items:center;padding:6px;flex:none;}
.ai-chat header .ai-language:after{content:'⌄';font-size:12px;}
.ai-chat .ai-conversation{padding:20px;gap:14px;background:radial-gradient(ellipse at top right,#e7f4ee80,transparent 70%);}
.ai-chat .ai-message{padding:15px 17px;border-radius:17px;box-shadow:0 3px 10px #153d3510;font-size:13px;}
.ai-chat form{padding:13px 16px 12px;}
.ai-chat textarea{border:0;background:#f3f8f6;padding:13px;border-radius:14px;min-height:72px;}
.ai-chat .ai-compose{margin-top:8px;gap:8px;}
.ai-compose .ai-attach,.ai-compose .ai-mic,.ai-compose button[type=submit]{width:38px;height:38px;padding:8px;display:grid;place-items:center;box-sizing:border-box;border-radius:11px;}
.ai-compose .ai-attach,.ai-compose .ai-mic{background:#edf5f1;color:#24665a;border:1px solid #dcebe4;}
.ai-voice-status{flex:1;font-size:10px;color:#547d70;}
.ai-mic.recording{color:#b83232;background:#ffe9e9;}
.ai-audio:empty{display:none;}
.ai-audio{padding:10px 16px;background:#e9f4ee;border-top:1px solid #d6e8de;}
.ai-audio audio{width:100%;height:34px;}
.ai-audio button{font:inherit;font-size:11px;margin:6px 6px 0 0;padding:6px 10px;border:1px solid #c4dace;border-radius:7px;background:white;color:#22594d;}
.ai-privacy{font-size:9px;line-height:1.4;}
@media(max-width:600px){.ai-chat{width:calc(100vw - 28px);}.ai-chat header{padding:12px;gap:7px;}}
.ai-audio small{display:block;color:#52766a;font-size:10px;line-height:1.4;margin-top:6px;}
.pump-reference header .reference-reset{margin-inline-start:auto;display:inline-flex;align-items:center;gap:5px;flex:none;border:1px solid #ffffff30;border-radius:8px;background:#ffffff0d;color:#e0f2ee;padding:7px 8px;font:inherit;font-size:11px;cursor:pointer;}
.pump-reference header .reference-reset:hover{background:#ffffff20;}
.pump-reference .reference-reset svg{width:14px;height:14px;}
.pump-reference .reference-answer[hidden]{display:none;}
.pump-reference header{gap:10px;}
.pump-reference header>div{min-width:0;}
