.trial-line-button{width:100%;background:#06c755;color:white;border:0;padding:13px 16px;border-radius:11px;font-weight:800;font-size:15px;text-align:center;text-decoration:none;display:block}.trial-entry{font-size:12px;color:#577362;margin:4px 0 10px}.trial-text-input{border:1px solid #bed8ca;border-radius:10px;width:100%;padding:12px;font-size:15px;min-height:80px;resize:vertical}.trial-action{width:100%;border:1px solid #d0e5d8;border-radius:10px;padding:11px 12px;color:#0b7546;background:white;font-weight:750}.trial-action:disabled{opacity:.55}.trial-inline-actions{display:grid;gap:9px;padding-bottom:10px}.trial-back{font-size:12px;margin-bottom:8px;color:#668076}.trial-small{font-size:12px;color:#537565}.consult-controls{padding-bottom:20px}.agent-chat-open .consult{display:flex!important;flex-direction:column;position:fixed;inset:0;margin:0;border:0;border-radius:0;z-index:30}.agent-chat-open .consult-log{overflow-y:auto;flex:1;min-height:0;padding-bottom:20px}.agent-chat-open .consult-controls{background:#fff;border-top:1px solid #e2eee6;flex-shrink:0}.agent-chat-open .consult-head{flex-shrink:0}body.agent-chat-open{overflow:hidden}
/* 2026-11-13: The shared /agent/ stylesheet centers .consult.open with
   left:50% + translateX(-50%).  In the /QA/ trial iframe the consultation
   must instead occupy the entire iframe viewport, without any translation. */
html[data-agent-inner] body.agent-chat-open #consult.consult.open{
  position:fixed!important;
  inset:0 0 auto 0!important;
  left:0!important;
  right:0!important;
  top:0!important;
  bottom:auto!important;
  transform:none!important;
  -webkit-transform:none!important;
  width:100%!important;
  max-width:none!important;
  min-width:0!important;
  margin:0!important;
  height:100dvh!important;
  height:var(--agent-chat-height,100dvh)!important;
  max-height:var(--agent-chat-height,100dvh)!important;
  display:flex!important;
  flex-direction:column!important;
  overflow:hidden!important;
  box-sizing:border-box!important;
  background:#fff;
}
html[data-agent-inner] body.agent-chat-open #consult .consult-head{
  display:flex!important;
  width:100%;min-width:0;align-items:center;justify-content:space-between;
  flex:0 0 auto;
}
html[data-agent-inner] body.agent-chat-open #consult .consult-log{
  width:100%;min-width:0;max-width:100%;
  flex:1 1 auto;min-height:0;
  overflow-y:auto;overflow-x:hidden;
  box-sizing:border-box;
}
html[data-agent-inner] body.agent-chat-open #consult .chatline{
  display:flex;min-width:0;max-width:100%;
}
html[data-agent-inner] body.agent-chat-open #consult .chatmsg{
  min-width:0;max-width:calc(100% - 36px);
  white-space:pre-wrap;overflow-wrap:anywhere;word-break:normal;
}
/* /agent/ hides the direct child controls because its own questions live
   inside the chat log.  Trial questions use #consult-controls directly. */
html[data-agent-inner] body.agent-chat-open #consult > #consult-controls{
  display:flex!important;
  flex-direction:column!important;
  align-items:stretch!important;
  flex-wrap:nowrap!important;
  flex:0 1 auto;
  gap:8px;
  width:100%;min-width:0;
  max-height:min(48dvh,390px)!important;
  overflow-y:auto!important;overflow-x:hidden!important;
  -webkit-overflow-scrolling:touch;
  padding:12px 16px calc(12px + env(safe-area-inset-bottom))!important;
  background:#fff;
  border-top:1px solid #e2eee6;
  box-sizing:border-box;
}
html[data-agent-inner] body.agent-chat-open #consult > #consult-controls:empty{display:none!important;}
html[data-agent-inner] body.agent-chat-open #consult > #consult-controls .quick,
html[data-agent-inner] body.agent-chat-open #consult > #consult-controls .trial-action,
html[data-agent-inner] body.agent-chat-open #consult > #consult-controls .trial-line-button,
html[data-agent-inner] body.agent-chat-open #consult > #consult-controls .trial-text-input{
  width:100%;max-width:100%;flex:0 0 auto;min-width:0;
  box-sizing:border-box;
}
html[data-agent-inner] body.agent-chat-open #consult > #consult-controls .quick{
  border:1px solid #cae5d5;border-radius:10px;
  min-height:42px;text-align:left;white-space:normal;
  font-size:14px;padding:10px 13px;
}
html[data-agent-inner] body.agent-chat-open #consult .sr-status{
  flex:0 0 auto;width:100%;min-width:0;
}
/* SANCHINA QA 2026-11-13: compact, two-channel consultation handoff. */
.trial-extra{background:#edf9f2;border-radius:12px;padding:10px 11px 8px;max-width:100%;}
.trial-extra h3{font-size:13px;font-weight:800;color:#087945;margin:0 0 6px;}
.trial-extra-row{display:flex;gap:6px;align-items:stretch;min-width:0;}
html[data-agent-inner] body.agent-chat-open #consult .trial-extra-row .trial-text-input{min-width:0;flex:1 1 62%;width:auto;max-width:none;min-height:44px;height:48px;padding:9px 10px;resize:none;font-size:13px;border-radius:8px;}
.trial-add-button{flex:0 0 auto;max-width:40%;background:#058747;color:#fff;border:0;border-radius:9px;padding:7px 10px;font-size:12px;font-weight:800;white-space:normal;line-height:1.35;}
.trial-extra-note{font-size:11px;color:#436b54;margin:6px 1px 0;line-height:1.45;}
.trial-handoff{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:8px;width:100%;}
.trial-contact-choice{min-width:0;min-height:54px;padding:6px 5px;border-radius:11px;text-decoration:none;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:2px;font-size:12px;font-weight:800;line-height:1.15;cursor:pointer;}
.trial-contact-choice.is-line{background:#06c755;border:1px solid #06c755;color:white;}
.trial-contact-choice.is-web{background:#fff;color:#08794b;border:1.4px solid #08794b;}
.trial-choice-icon{display:flex;align-items:center;justify-content:center;height:19px;line-height:1;}
.trial-choice-icon svg{height:19px;width:22px;}
.trial-line-mark{position:relative;color:#06c755;background:white;border-radius:11px;padding:1px 5px;height:16px;font-family:Arial,sans-serif;font-size:9px;font-weight:900;}
.trial-contact-note{margin:0;text-align:center;font-size:11px;color:#536960;line-height:1.35;}
html[data-agent-inner] body.agent-chat-open #consult > #consult-controls{gap:8px;max-height:min(55dvh,410px)!important;padding:10px 13px calc(11px + env(safe-area-inset-bottom))!important;}
@media(max-width:360px){.trial-contact-choice{font-size:11px}.trial-add-button{font-size:11px;padding:6px 7px}}

/* 2026-11-13 QA trial: use the existing /agent/ chat interaction layout.
   Options belong in the conversation under each assistant question, NOT in a fixed bottom tray. */
html[data-agent-inner] body.agent-chat-open #consult .consult-log{
  display:flex!important;flex-direction:column!important;align-items:stretch!important;
  gap:16px!important;padding:18px 16px 16px!important;
  min-height:0;overflow-y:auto!important;overscroll-behavior:contain;
}
html[data-agent-inner] body.agent-chat-open #consult #consult-log > #consult-controls{
  display:flex!important;flex:0 0 auto!important;flex-direction:column!important;
  gap:8px!important;align-items:stretch!important;
  width:100%!important;max-height:none!important;overflow:visible!important;
  padding:0 0 8px 36px!important;margin:0!important;
  border:0!important;background:transparent!important;box-sizing:border-box;
}
html[data-agent-inner] body.agent-chat-open #consult #consult-log > #consult-controls .quick{
  display:block!important;width:100%!important;min-height:44px!important;
  padding:10px 13px!important;border:1.5px dashed #c8d8d1!important;
  background:#fbfdfc!important;border-radius:13px!important;
  font-size:14px!important;font-weight:500!important;line-height:1.5!important;
  color:#244536!important;text-align:left!important;white-space:normal!important;
  box-shadow:none!important;flex:0 0 auto!important;
}
html[data-agent-inner] body.agent-chat-open #consult #consult-log > #consult-controls .quick:active{
  background:#eaf8ef!important;border-color:#29a364!important;
}
html[data-agent-inner] body.agent-chat-open #consult #consult-log > #consult-controls .trial-action{
  width:100%;min-height:40px;padding:9px 12px;font-size:12px;
  text-align:left;border:1px dashed #c8d8d1;box-shadow:none;
}
html[data-agent-inner] body.agent-chat-open #consult #consult-log .chatbot{
  width:27px;height:27px;min-width:27px;object-fit:cover;
  border-radius:50%;background:#bd2f2a;margin-top:2px;
}
html[data-agent-inner] body.agent-chat-open #consult #consult-log .chatmsg{
  font-size:14px;line-height:1.78;padding:12px 14px;
  max-width:min(86%,380px);border-radius:13px 13px 13px 3px;
}
html[data-agent-inner] body.agent-chat-open #consult #consult-log .user .chatmsg{
  max-width:min(85%,355px);border-radius:13px 13px 3px 13px;
}
html[data-agent-inner] body.agent-chat-open #consult #consult-log .trial-extra{width:100%;}
html[data-agent-inner] body.agent-chat-open #consult #consult-log .trial-handoff{width:100%;}
html[data-agent-inner] body.agent-chat-open #consult #consult-log .trial-extra-row .trial-text-input{
  width:auto;flex:1 1 62%;max-width:none;min-height:44px;height:48px;
  padding:9px 10px;font-size:13px;resize:none;
}
html[data-agent-inner] body.agent-chat-open #consult #consult-log > #consult-controls .trial-text-input{
  box-sizing:border-box;width:100%;max-width:100%;
}
@media(max-width:365px){
  html[data-agent-inner] body.agent-chat-open #consult .consult-log{padding-left:11px!important;padding-right:11px!important;}
  html[data-agent-inner] body.agent-chat-open #consult #consult-log > #consult-controls{padding-left:34px!important;}
}

/* Structural fix r6: options are *inside* the conversation, never a footer tray.
   Existing /agent/ uses the same pattern. Avoid a second fixed scrolling area. */
html[data-agent-inner] body.agent-chat-open #consult > #consult-controls{display:none!important;}
html[data-agent-inner] body.agent-chat-open #consult #consult-log > #consult-controls{
 position:static!important;inset:auto!important;transform:none!important;
 flex:0 0 auto!important;order:initial!important;max-height:none!important;
 overflow:visible!important;border:0!important;border-top:0!important;
 background:transparent!important;box-shadow:none!important;
 padding:0 0 8px 37px!important;margin:0!important;
 display:flex!important;flex-direction:column!important;gap:8px!important;
}
html[data-agent-inner] body.agent-chat-open #consult #consult-log > #consult-controls > .quick{
 min-height:40px!important;padding:9px 13px!important;border:1px dashed #c5d0ca!important;
 border-radius:9px!important;background:#fafbfa!important;font-size:13px!important;
 font-weight:500!important;box-shadow:none!important;
}
html[data-agent-inner] body.agent-chat-open #consult #consult-log {
 justify-content:flex-start!important;align-content:start!important;
}

/* 2026-11-13 r7: iPhone input-focus zoom / horizontal-width regression.
   iOS Safari automatically zooms text controls rendered below 16px.
   Keep the nested /QA/ conversation, its form, and both contact buttons
   within the current iframe viewport without preventing vertical scrolling. */
html[data-agent-inner],html[data-agent-inner] body{
  width:100%!important;max-width:100%!important;min-width:0!important;
  overflow-x:clip!important;-webkit-text-size-adjust:100%;
}
html[data-agent-inner] .shell,
html[data-agent-inner] .main{
  width:100%!important;max-width:100%!important;min-width:0!important;
  box-sizing:border-box!important;
}
html[data-agent-inner] body.agent-chat-open #consult.consult.open{
  width:100%!important;max-width:100%!important;min-width:0!important;
  left:0!important;right:0!important;transform:none!important;
  overflow:hidden!important;
}
html[data-agent-inner] body.agent-chat-open #consult #consult-log{
  width:100%!important;max-width:100%!important;min-width:0!important;
  overflow-x:clip!important;overflow-y:auto!important;
  -webkit-overflow-scrolling:touch;
}
html[data-agent-inner] body.agent-chat-open #consult #consult-log > *,
html[data-agent-inner] body.agent-chat-open #consult #consult-log .chatline,
html[data-agent-inner] body.agent-chat-open #consult #consult-log > #consult-controls,
html[data-agent-inner] body.agent-chat-open #consult #consult-log .trial-extra,
html[data-agent-inner] body.agent-chat-open #consult #consult-log .trial-extra-row,
html[data-agent-inner] body.agent-chat-open #consult #consult-log .trial-handoff{
  max-width:100%!important;min-width:0!important;box-sizing:border-box!important;
}
html[data-agent-inner] body.agent-chat-open #consult #consult-log .chatmsg{
  max-width:calc(100% - 40px)!important;min-width:0!important;
  overflow-wrap:anywhere!important;word-break:break-word;
}
html[data-agent-inner] body.agent-chat-open #consult #consult-log .trial-extra-row{
  display:flex!important;gap:6px;align-items:stretch;
}
/* Always >=16px on mobile to prevent Safari focus auto-zoom. */
html[data-agent-inner] body.agent-chat-open #consult input,
html[data-agent-inner] body.agent-chat-open #consult textarea,
html[data-agent-inner] body.agent-chat-open #consult select,
html[data-agent-inner] body.agent-chat-open #consult #consult-log .trial-extra-row .trial-text-input{
  font-size:16px!important;
  min-width:0!important;max-width:100%!important;
  box-sizing:border-box!important;
}
html[data-agent-inner] body.agent-chat-open #consult #consult-log .trial-extra-row .trial-text-input{
  flex:1 1 0!important;width:0!important;
}
html[data-agent-inner] body.agent-chat-open #consult .trial-add-button{
  min-width:0!important;flex:0 0 auto!important;max-width:39%!important;
  overflow-wrap:anywhere;
}
html[data-agent-inner] body.agent-chat-open #consult .trial-contact-choice{
  min-width:0!important;max-width:100%!important;overflow:hidden;
  overflow-wrap:anywhere;
}

/* 2026-11-13: compact question composer, like a messaging app. */
html[data-agent-inner] body.agent-chat-open #consult #consult-log .trial-extra-row {
  display:flex!important;align-items:center!important;gap:8px!important;
  width:100%;min-width:0;
}
html[data-agent-inner] body.agent-chat-open #consult #consult-log .trial-extra-row .trial-text-input {
  flex:1 1 0!important;width:0!important;min-width:0!important;
  min-height:46px!important;height:46px!important;max-width:100%!important;
  font-size:16px!important;line-height:1.45!important;
  padding:11px 12px!important;resize:none!important;
  border-radius:12px!important;
}
html[data-agent-inner] body.agent-chat-open #consult #consult-log .trial-extra-row .trial-send-arrow {
  flex:0 0 44px!important;width:44px!important;min-width:44px!important;max-width:44px!important;
  height:44px!important;min-height:44px!important;padding:0!important;
  display:inline-flex!important;align-items:center;justify-content:center;
  border-radius:50%!important;border:0!important;background:#078349!important;color:#fff!important;
  transition:background .15s ease,opacity .15s ease;
  cursor:pointer;
}
html[data-agent-inner] body.agent-chat-open #consult #consult-log .trial-extra-row .trial-send-arrow:disabled {
  background:#e7e9e8!important;color:#909a95!important;cursor:default;
}
html[data-agent-inner] body.agent-chat-open #consult #consult-log .trial-extra-row .trial-send-arrow svg {
  display:block;width:23px;height:23px;flex:none;
}

/* QA trial 2026-11-13: date/time selections & larger animated thinking dots.
   Scope narrowly to QA trial; keep /agent/ and shared header untouched. */
html[data-agent-inner] body.agent-chat-open #consult #consult-log .trial-datetime{
  width:100%;min-width:0;max-width:100%;display:grid;gap:10px;
  padding:12px;border:1px solid #d7e6dd;border-radius:13px;background:#fcfefd;
  box-sizing:border-box;
}
.trial-datetime-help{margin:0;color:#486955;font-size:13px;line-height:1.55;}
.trial-date-choice{display:grid;gap:5px;min-width:0;}
.trial-date-label{font-size:13px;font-weight:700;color:#234c38;}
.trial-date-fields{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);gap:8px;min-width:0;}
html[data-agent-inner] body.agent-chat-open #consult #consult-log .trial-date-fields input{
  box-sizing:border-box;min-width:0;max-width:100%;width:100%;min-height:46px;
  padding:9px 7px;border:1px solid #c9dcd0;border-radius:9px;background:#fff;
  color:#213b2d;font-size:16px!important;line-height:1.3;
  color-scheme:light;
}
.trial-date-confirm{width:100%;min-height:43px;border:0;border-radius:9px;
 background:#08794b;color:#fff;font-size:14px;font-weight:700;cursor:pointer;}
.trial-date-error{font-size:12px;line-height:1.45;color:#b4232e;margin:0;}
.trial-date-error[hidden]{display:none;}
.trial-thinking{display:flex;align-items:center;gap:9px;color:#327852;
 font-size:14px;line-height:1.5;min-height:35px;}
.trial-thinking-dots{display:inline-flex;align-items:center;gap:7px;white-space:nowrap;vertical-align:middle;}
.trial-thinking-dot{display:block;width:10px;height:10px;border-radius:50%;
 background:#138c56;opacity:.4;animation:qa-thinking-bounce 1.05s ease-in-out infinite both;}
.trial-thinking-dot:nth-child(2){animation-delay:.14s;}
.trial-thinking-dot:nth-child(3){animation-delay:.28s;}
@keyframes qa-thinking-bounce{0%,64%,100%{transform:translateY(0) scale(.8);opacity:.32;}
 28%{transform:translateY(-7px) scale(1.18);opacity:1;}}
#consult-status:not(:empty){display:flex;align-items:center;gap:7px;}
@media(prefers-reduced-motion:reduce){.trial-thinking-dot{animation:none;opacity:.85;}}
@media(max-width:365px){.trial-date-fields{gap:5px;}.trial-datetime{padding:9px;}}

/* 2026-11-13 r14: match the visible date/time selector pattern on /contact/.
   Labels and icons stay visible on iOS even when the native picker has no value. */
html[data-agent-inner] body.agent-chat-open #consult #consult-log .trial-date-fields{
 display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:8px;min-width:0;
}
html[data-agent-inner] body.agent-chat-open #consult #consult-log .trial-picker{
 display:flex;position:relative;align-items:center;min-width:0;width:100%;height:54px;
 padding:7px 8px 7px 11px;gap:4px;box-sizing:border-box;border-radius:10px;
 background:#f4f5f6;border:1px solid #e6e8ea;cursor:pointer;overflow:hidden;
}
html[data-agent-inner] body.agent-chat-open #consult #consult-log .trial-picker-value{
 flex:1 1 auto;min-width:0;font-size:16px;line-height:1.25;color:#253a33;
 white-space:nowrap;overflow:hidden;text-overflow:ellipsis;pointer-events:none;
}
html[data-agent-inner] body.agent-chat-open #consult #consult-log .trial-picker-value.is-placeholder{color:#636d70;}
html[data-agent-inner] body.agent-chat-open #consult #consult-log .trial-picker-icon{
 position:relative;z-index:1;flex:none;display:inline-flex;align-items:center;pointer-events:none;color:#737a83;
}
html[data-agent-inner] body.agent-chat-open #consult #consult-log .trial-picker-icon svg{
 display:block;width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;
}
html[data-agent-inner] body.agent-chat-open #consult #consult-log input.trial-date-native{
 position:absolute!important;inset:0!important;display:block!important;z-index:2;
 opacity:0!important;width:100%!important;height:100%!important;min-height:0!important;
 border:0!important;padding:0!important;margin:0!important;cursor:pointer!important;
 -webkit-appearance:none;appearance:none;
}
html[data-agent-inner] body.agent-chat-open #consult #consult-log select.trial-time-select{
 position:absolute!important;inset:0!important;z-index:2;display:block!important;
 width:100%!important;height:100%!important;min-width:0!important;max-width:100%!important;
 padding:0 30px 0 10px!important;border:0!important;margin:0!important;
 font-size:16px!important;line-height:1.25!important;
 color:#636d70!important;background:transparent!important;
 -webkit-appearance:none!important;appearance:none!important;box-shadow:none!important;cursor:pointer;
 text-overflow:ellipsis;
}
html[data-agent-inner] body.agent-chat-open #consult #consult-log .trial-time-picker.has-value select.trial-time-select{color:#253a33!important;}
html[data-agent-inner] body.agent-chat-open #consult #consult-log .trial-picker:focus-within{outline:2px solid #159065;outline-offset:2px;}
@media(max-width:360px){html[data-agent-inner] body.agent-chat-open #consult #consult-log .trial-picker{padding:6px 5px 6px 7px;}.trial-date-fields{gap:6px!important;}}

/* r15: Fix iOS date/time native select & icon overlap. Icon lives at the right edge,
   while the native picker stays clickable across the full control surface. */
html[data-agent-inner] body.agent-chat-open #consult #consult-log .trial-picker{
  position:relative!important;padding-right:38px!important;isolation:isolate;
}
html[data-agent-inner] body.agent-chat-open #consult #consult-log .trial-picker .trial-picker-icon{
  position:absolute!important;right:11px!important;top:50%!important;left:auto!important;
  transform:translateY(-50%)!important;z-index:1!important;pointer-events:none!important;
}
html[data-agent-inner] body.agent-chat-open #consult #consult-log .trial-picker .trial-picker-value{
  width:100%;min-width:0;max-width:100%;padding-right:0;
}
html[data-agent-inner] body.agent-chat-open #consult #consult-log .trial-time-picker select.trial-time-select{
  padding-left:11px!important;padding-right:42px!important;
  -webkit-appearance:none!important;appearance:none!important;
  font-size:16px!important;text-overflow:ellipsis!important;
}
html[data-agent-inner] body.agent-chat-open #consult #consult-log .trial-date-confirm:disabled{
 background:#e5ebe7!important;color:#75857a!important;cursor:not-allowed!important;
}
