:root {
  --ink: #14213a;
  --muted: #65718a;
  --line: #e7ecf4;
  --blue: var(--brand);
  --blue-dark: var(--brand-dark);
  --tint: #f5f9ff;
  --surface: #ffffff;
  --shadow: 0 18px 42px rgba(22, 57, 110, .10);
  --container: 1280px;
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  color: var(--ink);
}

* { box-sizing: border-box; }
[hidden] { display: none !important; }
html, body { min-height: 100%; }
html { background: radial-gradient(clamp(980px,70vw,1500px) clamp(420px,34vw,680px) at 18% -12%,rgba(29,111,224,.14),transparent 60%), radial-gradient(clamp(860px,62vw,1320px) clamp(420px,34vw,680px) at 92% 8%,rgba(29,111,224,.12),transparent 62%), radial-gradient(clamp(720px,52vw,1180px) clamp(360px,28vw,560px) at 56% 10%,rgba(29,111,224,.09),transparent 64%), linear-gradient(180deg,rgba(236,244,255,.90) 0%,rgba(247,251,255,.95) 36%,rgba(255,255,255,.985) 66%,#fff 100%); background-repeat: no-repeat; }
body { margin: 0; background: transparent; }
button, textarea { font: inherit; }
button { cursor: pointer; }
.sr-only { position: absolute; width: 1px; height: 1px; padding: 0; overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; border: 0; }

.conversation-shell { --conversation-stage-h: max(640px, var(--page-hero-min-h)); position: relative; min-height: var(--conversation-stage-h); }
.conversation-mode-toolbar { position: absolute; z-index: 2; bottom: 32px; left: 50%; transform: translateX(-50%); }
.conversation-mode-switch { display: inline-flex; align-items: center; gap: 6px; color: #94a0b3; font-size: 13px; font-weight: var(--fw-500); text-decoration: none; white-space: nowrap; }
.conversation-mode-switch svg { width: 14px; height: 14px; stroke-width: 1.8; }
.conversation-mode-switch:hover { color: var(--muted); text-decoration: underline; text-underline-offset: 4px; }
body.conversation-active .conversation-mode-switch { display: none; }

/* Conversar define tokens propios para el espacio de trabajo. Las migas son
   chrome global, por lo que conservan la paleta canónica del resto del sitio. */
#site-footer .breadcrumbs { --ink: #0b1220; --muted: #475569; }

.conversation-workspace { display: grid; grid-template-columns: minmax(0, 860px); width: min(calc(100% - 32px), 860px); height: var(--conversation-stage-h); margin: 0 auto; transition: width .42s cubic-bezier(.2,.8,.2,1), grid-template-columns .42s cubic-bezier(.2,.8,.2,1); }
.conversation-column { display: flex; flex-direction: column; min-width: 0; min-height: 0; height: 100%; }
.conversation { width: 100%; min-height: 0; flex: 1; padding: 88px 0 0; overflow-y: auto; overscroll-behavior: contain; scroll-behavior: smooth; transition: opacity .28s ease; }
body.conversation-active .conversation { padding: 32px 0 18px; }
.welcome { display: grid; justify-items: center; align-content: center; min-height: calc(var(--conversation-stage-h) - 244px); text-align: center; }
.welcome__eyebrow { margin: 0 0 12px; color: var(--brand); font-size: 12px; font-weight: var(--fw-700); letter-spacing: .08em; }
.welcome h1 { max-width: 16ch; margin: 0; color: #0b1220; font-size: clamp(32px, 3.8vw, 48px); font-weight: 700; line-height: 1.02; letter-spacing: -.03em; text-wrap: balance; }
.welcome__copy { max-width: 560px; margin: 9px 0 0; color: color-mix(in oklch, #475569 88%, #0b1220); font-size: 17px; font-weight: 400; line-height: 1.6; }
#composerWelcomeSlot { width: min(100%, 680px); }
#composerWelcomeSlot .composer-wrap { position: static; width: 100%; margin: 24px auto 0; padding: 0; border: 0; background: transparent; backdrop-filter: none; }
#composerWelcomeSlot .composer-note { display: none; }
#composerConversationSlot { width: min(100%, 680px); margin: 0 auto; }
#composerConversationSlot .composer-wrap { position: static; width: 100%; margin: 0; padding: 22px 0 8px; border-top: 1px solid rgba(20,33,58,.07); background: transparent; backdrop-filter: none; }
#composerConversationSlot .composer-note { margin-bottom: 0; }
.suggestions { display: flex; flex-wrap: wrap; justify-content: center; gap: 9px; margin-top: 22px; }
.suggestions button { padding: 10px 13px; border: 1px solid var(--line); border-radius: 13px; background: rgba(255,255,255,.84); color: #475569; font-size: 13px; font-weight: 400; line-height: 1.5; box-shadow: 0 4px 12px rgba(20,33,58,.03); }
.suggestions button:hover { border-color: #a9c7f2; color: var(--blue-dark); background: #fff; }

.message { display: flex; margin: 16px 0; animation: reveal .22s ease-out; }
.message--user { justify-content: flex-end; }
.message__bubble { max-width: min(78%, 600px); padding: 12px 15px; border-radius: 18px; font-size: 14px; line-height: 1.55; white-space: pre-wrap; overflow-wrap: anywhere; }
.message--assistant .message__bubble { border: 1px solid #e6edf8; border-bottom-left-radius: 5px; background: #fff; color: #40516d; box-shadow: 0 6px 18px rgba(20,33,58,.035); }
.message--user .message__bubble { border-bottom-right-radius: 5px; background: var(--blue); color: #fff; }
.message__bubble p { margin: 0 0 10px; }
.message__bubble p:last-child { margin-bottom: 0; }
.message__bubble a { color: var(--blue-dark); font-weight: 600; text-underline-offset: 2px; }
.message--user .message__bubble a { color: #fff; }
.conversation-notice { max-width: 700px; margin: 16px 0; padding: 11px 14px; border: 1px solid #f3c77d; border-radius: 12px; background: #fff8ea; color: #76531a; font-size: 13px; line-height: 1.5; }
body.conversation-has-plans .conversation-workspace { grid-template-columns: minmax(0, 1fr); width: min(calc(100% - 32px), 900px); }
body.conversation-has-plans .message, body.conversation-has-plans .conversation-notice, body.conversation-has-plans .conversation-contact-capture { max-width: 680px; margin-right: auto; margin-left: auto; }

.conversation-contact-capture { width: min(100%, 680px); margin: 20px 0; padding: 19px; border: 1px solid #dce8f7; border-radius: 18px; background: #fff; box-shadow: 0 10px 28px rgba(20,33,58,.05); animation: reveal .22s ease-out; }
.conversation-contact-capture__head h2 { margin: 0; color: #17233b; font-size: 17px; line-height: 1.3; letter-spacing: -.012em; }
.conversation-contact-capture__head p { margin: 5px 0 0; color: #64748b; font-size: 13px; line-height: 1.5; }
.conversation-contact-form { display: grid; gap: 11px; margin-top: 16px; }
.conversation-contact-form label { display: grid; gap: 5px; color: #3b4b66; font-size: 12px; font-weight: 600; }
.conversation-contact-form label > span { color: #8b97a8; font-weight: 400; }
.conversation-contact-form input:not([type="checkbox"]) { width: 100%; min-width: 0; height: 39px; padding: 0 11px; border: 1px solid #d9e2ef; border-radius: 10px; outline: 0; background: #fff; color: #17233b; font: inherit; font-size: 14px; font-weight: 400; }
.conversation-contact-form input:not([type="checkbox"]):focus { border-color: #8bb6f2; box-shadow: 0 0 0 3px rgba(13,111,255,.08); }
.conversation-contact-form input::placeholder { color: #a2adbc; }
.conversation-contact-form__grid { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
.conversation-contact-form__hint { margin: -4px 0 0; color: #8b97a8; font-size: 11px; line-height: 1.4; }
.conversation-contact-form__consent { grid-template-columns: 15px 1fr; align-items: start; gap: 8px !important; color: #64748b !important; font-size: 11.5px !important; font-weight: 400 !important; line-height: 1.45; }
.conversation-contact-form__consent input { width: 15px; height: 15px; margin: 1px 0 0; accent-color: var(--blue); }
.conversation-contact-form__error { margin: -2px 0 0; color: #b42318; font-size: 12px; line-height: 1.4; }
.conversation-contact-form__submit { justify-self: start; min-height: 38px; padding: 0 14px; border: 0; border-radius: 11px; background: var(--blue); color: #fff; font-size: 13px; font-weight: 650; }
.conversation-contact-form__submit:hover { background: var(--blue-dark); }
.conversation-contact-form__submit:disabled { cursor: wait; background: #9bbbe7; }
.conversation-contact-capture.is-loading { opacity: .72; }

.conversation-profile { --conversation-profile-min-bottom: 82px; --conversation-profile-max-height: min(70svh, 560px, calc(100svh - var(--conversation-profile-bottom, var(--conversation-profile-min-bottom)) - 8px)); position: fixed; z-index: 24; right: 8px; bottom: var(--conversation-profile-bottom, var(--conversation-profile-min-bottom)); width: min(178px, calc(100vw - 16px)); max-height: 46px; margin: 0; overflow: hidden; border: 1px solid rgba(188,210,239,.9); border-radius: 15px; background: #fff; color: #40516d; box-shadow: 0 8px 22px rgba(20,33,58,.075); transition: right .24s cubic-bezier(.2,.8,.2,1), bottom .16s ease, width .24s cubic-bezier(.2,.8,.2,1), max-height .24s cubic-bezier(.2,.8,.2,1), box-shadow .2s ease; }
.conversation-profile[open] { width: min(360px, calc(100vw - 24px)); max-height: var(--conversation-profile-max-height); box-shadow: 0 16px 40px rgba(20,33,58,.12); }
.conversation-profile > summary { display: flex; min-height: 44px; align-items: center; flex-wrap: nowrap; gap: 6px; padding: 0 11px; color: #263650; font-size: 12px; font-weight: 700; list-style: none; cursor: pointer; user-select: none; white-space: nowrap; }
.conversation-profile > summary::-webkit-details-marker { display: none; }
.conversation-profile > summary > span { min-width: 0; white-space: nowrap; }
.conversation-profile > summary small { flex: none; margin-left: auto; color: #8491a5; font-size: 10.5px; font-weight: 500; white-space: nowrap; }
.conversation-profile__icon { width: 15px; height: 15px; flex: none; color: #2678d5; }
.conversation-profile__chevron { width: 15px; height: 15px; flex: none; transition: transform .16s ease; }
.conversation-profile[open] > summary .conversation-profile__chevron { transform: rotate(180deg); }
.conversation-profile__body { max-height: calc(var(--conversation-profile-max-height) - 44px); padding: 15px 16px 14px; overflow-y: auto; overscroll-behavior: contain; border-top: 1px solid #edf2f8; animation: profile-open .18s ease-out; }
.conversation-profile__head { display: flex; align-items: flex-start; justify-content: space-between; gap: 12px; }
.conversation-profile__head p { margin: 0; color: #8a96a8; font-size: 10.5px; }
.conversation-profile__facts { display: grid; gap: 0; margin: 12px 0 0; }
.conversation-profile__facts > div { display: flex; align-items: center; justify-content: space-between; gap: 10px; padding: 9px 0; border-top: 1px solid #edf2f8; }
.conversation-profile__facts dt { margin: 0; color: #7a879a; font-size: 10.5px; line-height: 1.25; }
.conversation-profile__facts dd { margin: 2px 0 0; color: #2f405b; font-size: 12px; font-weight: 650; line-height: 1.35; overflow-wrap: anywhere; }
.conversation-profile__facts > div > span { flex: none; color: #74839a; font-size: 9.5px; font-weight: 650; }
.conversation-profile__order-help { width: 100%; min-height: 34px; margin-top: 8px; border: 1px solid #dbe8f8; border-radius: 10px; background: #f7faff; color: #2864ae; font-size: 11px; font-weight: 700; }
.conversation-profile__order-help:hover { border-color: #9fc1ed; background: #fff; }
.conversation-profile__note { margin: 10px 0 0; color: #8491a5; font-size: 10.5px; line-height: 1.45; }

@media (min-width: 1200px) {
  body.conversation-has-profile .conversation-profile { top: 108px; right: max(12px, calc((100vw - 900px) / 2 - 220px)); bottom: auto; width: 202px; }
  body.conversation-has-profile .conversation-profile[open] { right: max(16px, calc((100vw - 900px) / 2 - 312px)); width: 288px; max-height: calc(100svh - 140px); }
  body.conversation-has-profile .conversation-profile__body { max-height: calc(100svh - 184px); }
}


/* Tarjetas: espejo de .dir-card del Directorio de planes del asesor. En
   escritorio viven en un riel: dos opciones completas y la siguiente asoma. */
.conversation-plans { position: relative; margin: 24px 0 20px; padding-top: 24px; animation: reveal .22s ease-out; }
.conversation-plans::before { position: absolute; top: 0; right: 0; left: 0; height: 1px; background: rgba(20,33,58,.09); content: ""; }
.conversation-plan-rail { display: flex; gap: 18px; min-width: 0; padding: 0 0 12px; overflow-x: auto; overscroll-behavior-x: contain; scroll-snap-type: x proximity; scrollbar-width: none; }
.conversation-plan-rail::-webkit-scrollbar { display: none; }
.conversation-plan-pager { display: none; }
.conversation-plan-card { position: relative; display: flex; flex: 0 0 calc((100% - 18px) / 2.28); flex-direction: column; min-width: 0; padding: 20px 20px 18px; overflow: hidden; border: 1px solid #e8edf3; border-radius: 18px; background: #fff; scroll-snap-align: start; transition: transform .18s cubic-bezier(.2,.9,.2,1), box-shadow .18s; }
.conversation-plans--pair .conversation-plan-rail { justify-content: center; overflow-x: visible; }
.conversation-plans--pair .conversation-plan-card { flex-basis: calc((100% - 18px) / 2); }
.conversation-plans--single .conversation-plan-rail { justify-content: center; overflow: visible; }
.conversation-plans--single .conversation-plan-card { flex-basis: min(100%, 520px); }
.conversation-plan-card:hover { transform: translateY(-3px); box-shadow: 0 18px 40px -16px rgba(15,23,42,.22), 0 4px 12px -6px rgba(15,23,42,.08); }
.conversation-plan-card__top { display: flex; align-items: center; justify-content: space-between; gap: 10px; margin-bottom: 12px; }
.conversation-plan-card__isapre { display: flex; align-items: center; min-width: 0; gap: 9px; color: #0f172a; font-size: 12.5px; font-weight: 600; }
.conversation-plan-card__isapre img { width: auto; max-width: 104px; height: 20px; object-fit: contain; flex: none; }
.conversation-plan-card__nota { display: inline-flex; flex: none; align-items: baseline; gap: 5px; padding: 2px 8px; border: 1px solid color-mix(in srgb, #10b981 26%, transparent); border-radius: 9px; background: color-mix(in srgb, #10b981 12%, #fff); color: #047857; font-size: 13px; font-weight: 700; }
.conversation-plan-card__nota span { font-size: 9px; font-weight: 700; letter-spacing: .05em; text-transform: uppercase; opacity: .8; }
.conversation-plan-card h3 { display: -webkit-box; margin: 0; overflow: hidden; color: #0f172a; font-size: 16px; font-weight: 700; line-height: 1.25; -webkit-box-orient: vertical; -webkit-line-clamp: 2; }
.conversation-plan-card__code { margin: 3px 0 0; color: #94a3b8; font-family: ui-monospace, SFMono-Regular, Menlo, monospace; font-size: 11.5px; }
.conversation-plan-card__metrics { display: grid; grid-template-columns: repeat(3, 1fr); gap: 8px; margin: 16px 0 14px; padding-top: 16px; border-top: 1px solid color-mix(in srgb, #e8edf3 55%, #fff); }
.conversation-plan-metric { display: flex; align-items: center; justify-content: center; min-width: 0; gap: 8px; padding: 8px 9px; border-radius: 11px; background: color-mix(in srgb, #f1f5f9 45%, #fff); text-align: center; }
.conversation-plan-metric svg, .conversation-plan-btn svg, .conversation-compare svg { width: 17px; height: 17px; flex: none; fill: none; stroke: currentColor; stroke-linecap: round; stroke-linejoin: round; stroke-width: 2; }
.conversation-plan-metric { color: #64748b; }.conversation-plan-metric > div { display: flex; flex-direction: column; min-width: 0; align-items: center; }.conversation-plan-metric span { overflow: hidden; max-width: 100%; color: #94a3b8; font-size: 10.5px; font-weight: 500; text-overflow: ellipsis; white-space: nowrap; }.conversation-plan-metric b { overflow: hidden; max-width: 100%; color: #0f172a; font-size: 13px; font-weight: 700; text-overflow: ellipsis; white-space: nowrap; }
.conversation-plan-card__price { display: flex; flex-wrap: wrap; align-items: baseline; gap: 8px; margin-bottom: 4px; }.conversation-plan-card__price strong { color: #0f172a; font-size: 20px; font-weight: 800; letter-spacing: -.3px; }.conversation-plan-card__price span { color: #94a3b8; font-size: 13px; font-weight: 600; }.conversation-plan-card__price small { flex-basis: 100%; margin-top: 1px; color: #94a3b8; font-size: 11px; font-weight: 500; }
.conversation-plan-card__seven { display: flex; align-items: center; min-width: 0; margin: -5px 0 14px; padding: 8px 10px; border: 1px solid transparent; border-radius: 10px; font-size: 11px; line-height: 1.4; white-space: nowrap; }.conversation-plan-card__seven span, .conversation-plan-card__seven strong { overflow: hidden; font-size: inherit; text-overflow: ellipsis; white-space: inherit; }.conversation-plan-card__seven span { font-weight: 650; }.conversation-plan-card__seven strong { font-weight: 800; }.conversation-plan-card__seven--inside { border-color: #bbf7d0; background: #f0fdf4; color: #166534; }.conversation-plan-card__seven--extra { border-color: #fed7aa; background: #fff7ed; color: #9a3412; }
.conversation-plan-card__providers { margin: 0 0 14px; color: #94a3b8; font-size: 12px; }
.conversation-plan-card__provider-match { margin: -5px 0 14px; padding: 8px 10px; border-radius: 10px; background: #eefbf5; color: #166534; font-size: 11px; line-height: 1.4; }
.conversation-plan-card__provider-match--partial { background: #fff8e8; color: #92400e; }
.conversation-plan-card__actions { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; margin-top: auto; }.conversation-plan-btn { display: inline-flex; align-items: center; justify-content: center; height: 38px; gap: 6px; border-radius: 12px; font-size: 12.5px; font-weight: 650; text-decoration: none; white-space: nowrap; }.conversation-plan-btn svg { width: 14px; height: 14px; }.conversation-plan-btn--pdf, .conversation-plan-btn--disabled { border: 1px solid #e2e8f0; background: #fff; color: #334155; }.conversation-plan-btn--pdf:hover { background: #f1f5f9; }.conversation-plan-btn--disabled { opacity: .55; cursor: default; }.conversation-plan-btn--sim { border: 0; background: #0d99ff; color: #fff; }.conversation-plan-btn--sim:hover { opacity: .92; }
.conversation-compare { display: inline-flex; width: 100%; align-items: center; justify-content: center; gap: 7px; min-height: 42px; border: 1px solid #d8e7ff; border-radius: 12px; background: #f5f9ff; color: #1554af; font-size: 13px; font-weight: 700; text-decoration: none; }.conversation-compare:hover { border-color: #8bb6f2; background: #fff; }
.typing { display: inline-flex; gap: 10px; align-items: center; min-width: 58px; padding: 13px 16px; border: 1px solid #e6edf8; border-radius: 18px; border-bottom-left-radius: 5px; background: #fff; }
.typing__dots { display: inline-flex; gap: 5px; align-items: center; }
.typing i { width: 6px; height: 6px; border-radius: 50%; background: #9ab0d3; animation: pulse 1.05s infinite ease-in-out; }
.typing i:nth-child(2) { animation-delay: .15s; }.typing i:nth-child(3) { animation-delay: .3s; }
.typing__label { color: #7183a1; font-size: 12px; font-weight: 500; }

.composer-wrap { width: 100%; }
.composer { position: relative; display: flex; align-items: flex-end; gap: 8px; padding: 8px 8px 8px 11px; border: 1px solid #dce5f2; border-radius: 21px; background: #fff; }
.composer:focus-within { border-color: #8bb6f2; }
.add-attachment, .reset-conversation, .send { display: grid; place-items: center; flex: 0 0 auto; width: 35px; height: 35px; border: 0; border-radius: 12px; }
.add-attachment { margin-bottom: 1px; background: transparent; color: #52627c; font-size: 25px; font-weight: 300; line-height: 1; }
.add-attachment:hover, .add-attachment[aria-expanded="true"] { background: #eef5ff; color: var(--blue); }
.composer textarea { width: 100%; min-width: 0; max-height: 130px; padding: 7px 0; border: 0; outline: 0; resize: none; color: var(--ink); line-height: 1.45; background: transparent; }
.composer textarea::placeholder { color: #9aa6b8; }
.reset-conversation { position: relative; display: none; margin-bottom: 1px; background: transparent; color: #718198; transition: color .16s ease, background .16s ease; }
body.conversation-active .reset-conversation { display: grid; }
.reset-conversation svg { width: 17px; height: 17px; stroke-width: 1.9; }
.reset-conversation:hover { background: #f1f5fa; color: #30425e; }
.reset-conversation.is-confirming { background: #fff2f0; color: #b42318; }
.reset-conversation.is-confirming::before { position: absolute; right: 0; bottom: calc(100% + 9px); width: max-content; max-width: 210px; padding: 7px 9px; border: 1px solid #f0cbc6; border-radius: 9px; background: #fff; color: #8f2d24; box-shadow: 0 8px 20px rgba(20,33,58,.12); content: attr(data-confirm-label); font-size: 10.5px; font-weight: 600; line-height: 1.25; pointer-events: none; }
.reset-conversation:disabled { cursor: wait; opacity: .45; }
.send { background: var(--blue); color: #fff; font-size: 21px; font-weight: 500; transition: background .16s ease, transform .16s ease; }
.send:hover { background: var(--blue-dark); transform: translateY(-1px); }.send:disabled { cursor: wait; background: #9bbbe7; transform: none; }
.composer-note { margin: 8px 8px 0; color: #8692a5; font-size: 11px; text-align: center; }
.attachment-menu { position: absolute; bottom: calc(100% + 8px); left: 11px; width: min(310px, calc(100vw - 24px)); padding: 7px; border: 1px solid var(--line); border-radius: 15px; background: #fff; box-shadow: 0 18px 40px rgba(20,33,58,.15); }
.attachment-menu button { display: grid; grid-template-columns: 24px 1fr; column-gap: 7px; width: 100%; padding: 10px; border: 0; border-radius: 10px; background: transparent; color: #3f4d66; text-align: left; font-size: 13px; font-weight: 600; }
.attachment-menu button:hover { background: #f2f7ff; color: var(--blue-dark); }.attachment-menu__icon { display: grid; place-items: center; width: 24px; height: 24px; color: var(--blue); }.attachment-menu__icon svg { width: 18px; height: 18px; stroke-width: 2; }.attachment-menu small { grid-column: 2; margin-top: -2px; color: #8b97a8; font-size: 11px; font-weight: 400; }
.attachment-preview { display: flex; align-items: center; gap: 8px; max-width: 480px; margin: 0 0 8px 7px; padding: 8px 10px; border: 1px solid #d8e7ff; border-radius: 12px; background: #fff; color: #40516d; font-size: 12px; }
.attachment-preview__icon { color: var(--blue); font-size: 16px; }.attachment-preview__name { overflow: hidden; flex: 1; text-overflow: ellipsis; white-space: nowrap; }.attachment-preview__audio { width: 170px; height: 32px; }.attachment-preview button { width: 24px; height: 24px; border: 0; border-radius: 7px; background: #f1f4f8; color: #536178; font-size: 18px; line-height: 1; }
.voice-recorder { display: flex; align-items: center; gap: 9px; margin: 0 0 8px; padding: 10px 11px; border: 1px solid #f2c8c8; border-radius: 14px; background: #fffafa; color: #27364f; font-size: 12px; }
.voice-recorder__dot { width: 9px; height: 9px; flex: 0 0 auto; border-radius: 50%; background: #e5484d; animation: recording-pulse 1.3s ease-in-out infinite; }
.voice-recorder__status { font-weight: 650; }.voice-recorder__time { margin-right: auto; color: #6f7d92; font-variant-numeric: tabular-nums; }
.voice-recorder button { min-height: 32px; padding: 0 11px; border-radius: 9px; font-size: 12px; font-weight: 650; }
.voice-recorder__cancel { border: 0; background: transparent; color: #6b778c; }.voice-recorder__cancel:hover { background: #f1f4f8; color: #34445d; }
.voice-recorder__stop { display: inline-flex; align-items: center; gap: 7px; border: 0; background: #18263d; color: #fff; }.voice-recorder__stop span { width: 8px; height: 8px; border-radius: 2px; background: currentColor; }.voice-recorder__stop:hover { background: #0e1a2d; }
.voice-recorder button:disabled { cursor: wait; opacity: .55; }
@keyframes reveal { from { opacity: 0; transform: translateY(5px); } to { opacity: 1; transform: none; } } @keyframes pulse { 50% { opacity: .3; transform: translateY(-2px); } }
@keyframes recording-pulse { 50% { opacity: .35; } }
@keyframes profile-open { from { opacity: 0; transform: translateY(-4px); } to { opacity: 1; transform: none; } }
@keyframes profile-updated { 50% { border-color: #75aef0; box-shadow: 0 10px 26px rgba(29,111,224,.14); transform: translateY(-2px); } }
.conversation-profile.is-updated { animation: profile-updated .7s ease-out; }
@media (prefers-reduced-motion: reduce) { .conversation-workspace, .conversation, .conversation-plan-card, .send, .conversation-profile { transition: none; }.message, .conversation-profile, .conversation-profile__body, .conversation-contact-capture, .conversation-plans, .typing i, .voice-recorder__dot { animation: none; }.conversation { scroll-behavior: auto; } }
@media (max-width: 700px) { .conversation-plan-rail { gap: 12px; padding-bottom: 8px; scroll-snap-type: x mandatory; }.conversation-plan-card, .conversation-plans--pair .conversation-plan-card { flex-basis: calc(100% - 48px); }.conversation-plans--pair .conversation-plan-rail { justify-content: flex-start; overflow-x: auto; }.conversation-plans--single .conversation-plan-rail { justify-content: center; overflow: visible; }.conversation-plans--single .conversation-plan-card { flex-basis: min(100%, 520px); }.conversation-plan-pager { display: flex; align-items: center; gap: 8px; margin: -1px 4px 14px; color: #71819a; font-size: 11px; font-weight: 600; line-height: 1.3; }.conversation-plan-pager__position { color: #3d506e; font-variant-numeric: tabular-nums; }.conversation-plan-pager__hint { color: #7a8ba5; font-weight: 500; }.conversation-plan-pager__dots { display: inline-flex; gap: 4px; margin-left: auto; }.conversation-plan-pager__dots i { width: 5px; height: 5px; border-radius: 50%; background: #d1dbe9; transition: width .16s ease, background .16s ease; }.conversation-plan-pager__dots i.is-active { width: 14px; background: #2688ec; } body.conversation-active .conversation-profile { --conversation-profile-min-bottom: 142px; } }
@media (max-width: 600px) { .conversation-mode-switch { font-size: 12px; }.conversation-workspace { width: min(calc(100% - 24px), 800px); }.conversation { padding-top: 64px; }.welcome { min-height: calc(var(--conversation-stage-h) - 204px); }.welcome h1 { font-size: 30px; }.welcome__copy { font-size: 14px; }.suggestions { max-width: 330px; }.message__bubble { max-width: 88%; }.composer-wrap { padding: 11px 0 8px; }.composer textarea { font-size: 16px; }.composer textarea::placeholder { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }.attachment-menu { left: 11px; }.attachment-preview { flex-wrap: wrap; }.attachment-preview__name { min-width: 150px; }.attachment-preview__audio { order: 4; width: 100%; }.voice-recorder { flex-wrap: wrap; }.voice-recorder__time { flex: 1; }.conversation-profile { --conversation-profile-min-bottom: 142px; --conversation-profile-max-height: min(72svh, 540px, calc(100svh - var(--conversation-profile-bottom, var(--conversation-profile-min-bottom)) - 8px)); right: 8px; width: min(184px, calc(100vw - 16px)); }.conversation-profile[open] { width: calc(100vw - 16px); border-radius: 18px; }.conversation-plan-card { padding: 16px 14px; }.conversation-plan-card__metrics { gap: 5px; }.conversation-plan-metric { gap: 5px; padding: 8px 4px; }.conversation-plan-metric svg { display: none; }.conversation-plan-metric span { font-size: 9.5px; }.conversation-plan-metric b { font-size: 12px; }.conversation-plan-card__actions { grid-template-columns: 1fr; }.conversation-contact-capture { padding: 16px; }.conversation-contact-form__grid { grid-template-columns: 1fr; gap: 11px; } }
