/* Narrow layouts and structured answers; retain the existing Femida design. */
.ft-messages { grid-template-columns: minmax(0, 1fr); }
.ft-message { min-width: 0; }
.markdown-message { min-width: 0; overflow-wrap: anywhere; }
.markdown-message > :first-child { margin-top: 0; }
.markdown-message > :last-child { margin-bottom: 0; }
.markdown-message p { margin: 0 0 .75em; }
.markdown-message ul, .markdown-message ol {
  margin: .65em 0;
  padding-left: 1.5em;
}
.markdown-message ul { list-style: disc; }
.markdown-message ol { list-style: decimal; }
.markdown-message li { margin: .4em 0; padding-left: .15em; }
.markdown-message li > p { margin: .35em 0; }
.markdown-message li > :first-child { margin-top: 0; }
.markdown-message li > :last-child { margin-bottom: 0; }
.markdown-message h1, .markdown-message h2, .markdown-message h3,
.markdown-message h4, .markdown-message h5, .markdown-message h6 {
  font-family: inherit;
  font-size: 1.1em;
  font-weight: 700;
  line-height: 1.45;
  margin: 1.1em 0 .45em;
}
.markdown-message a { color: var(--ft-blue, #325de5); text-decoration: underline; overflow-wrap: anywhere; }
.markdown-message code { font-family: ui-monospace, monospace; font-size: .9em; }
.markdown-message :not(pre) > code { background: #edf1f7; border-radius: 4px; padding: .1em .3em; }
.markdown-message pre {
  max-width: 100%;
  overflow-x: auto;
  padding: 12px;
  margin: .75em 0;
  border-radius: 8px;
  background: #edf1f7;
  white-space: pre;
  overflow-wrap: normal;
  word-break: normal;
}
.markdown-message blockquote {
  margin: .75em 0;
  border-left: 3px solid #c8d3eb;
  padding-left: 1em;
  color: var(--ft-muted, #697487);
}
.markdown-message .ft-table-scroll, #pricing-matrix .tablewrap {
  max-width: 100%;
  overflow-x: auto;
  overscroll-behavior-x: contain;
}
.markdown-message .ft-table-scroll { margin: .75em 0; }
.markdown-message table { width: 100%; border-collapse: collapse; font-size: .9em; }
.markdown-message th, .markdown-message td {
  min-width: 8rem;
  border: 1px solid var(--ft-line, #e3e8f0);
  padding: .6em .75em;
  text-align: left;
  vertical-align: top;
}
.markdown-message th { background: #edf1f7; font-weight: 700; }
.ft-table-scroll:focus-visible, #pricing-matrix .tablewrap:focus-visible {
  outline: 2px solid var(--ft-blue, #325de5);
  outline-offset: 3px;
}
#pricing-matrix { min-width: 0; }
#pricing-matrix table { min-width: 36rem; width: 100%; }
.ft-footer-links { flex-wrap: wrap; justify-content: center; min-width: 0; }
.ft-footer-links a { display: inline-flex; align-items: center; min-height: 32px; }
.ft-blog .grid { min-width: 0; grid-template-columns: minmax(0, 1fr); }
.ft-blog .grid > * { min-width: 0; overflow-wrap: anywhere; }
.ft-blog .ft-blog-tags { flex-wrap: wrap; min-width: 0; }
@media (min-width: 768px) {
  .ft-blog .grid.md\:grid-cols-2 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .ft-blog .grid.md\:grid-cols-3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}

/* History: preserve the current cabinet typography and responsive layout. */
.ft-history-copy{min-width:0;overflow-wrap:anywhere}.ft-history-preview{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.ft-history-meta{font-variant-numeric:tabular-nums;font-size:12px;color:#475569;margin-top:5px}.ft-history-status{padding:16px;color:#334155;line-height:1.55}.ft-history-status p{margin:0 0 12px}.ft-history-status[role=alert]{background:#fff7ed;color:#7c2d12;border-radius:12px}.ft-history-count{font-size:14px;color:#475569}.ft-history-more{min-height:44px;margin:12px 16px;align-self:flex-start}.ft-history input:focus-visible,.ft-history button:focus-visible{outline:2px solid #215bd7;outline-offset:3px}.ft-history-list>button{min-height:72px}.ft-history-list>button:disabled{opacity:.55;cursor:wait}.ft-history-list>button>svg{flex-shrink:0}.ft-search input{min-width:0;width:100%}.ft-history{min-width:0}.ft-chat-container:has(.ft-history-status){display:flex;flex-direction:column}.ft-chat-container>.ft-history-status{flex-shrink:0}
.ft-history>p,.ft-history .ft-history-list small{color:#475569}.ft-history .ft-search input::placeholder{color:#64748b;opacity:1}

.ft-history .ft-history-list .ft-history-preview{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}

/* Account consent: separate from contract and optional communications. */
.ft-account-consent{box-sizing:border-box;width:min(560px,calc(100vw - 28px));max-height:90dvh;overflow:auto;border:1px solid #c9cfda;border-radius:16px;padding:28px;color:#1d293c;background:#fff;font:16px/1.55 system-ui,sans-serif}
.ft-account-consent::backdrop{background:#16203899}.ft-account-consent h2{font:600 24px/1.3 system-ui;margin:0 0 16px}.ft-account-consent label{display:flex;align-items:flex-start;gap:12px;margin:18px 0}.ft-account-consent input[type=checkbox]{width:20px;height:20px;flex:0 0 20px;margin:3px 0;accent-color:#315d78}.ft-account-consent a{color:#284d8f;text-decoration:underline}.ft-account-consent button{width:100%;margin-top:12px;cursor:pointer;min-height:44px;padding:10px 14px;border-radius:7px;font:inherit}.ft-account-consent .ft-primary{background:#243d58;color:white;border:0}.ft-account-consent button:disabled{opacity:.55;cursor:default}.ft-account-consent .ft-text-button{background:transparent;color:#35445c;border:1px solid #bec8d5}.ft-consent-error{color:#a62424}.ft-consent-launcher{position:fixed;bottom:18px;right:18px;z-index:90;padding:12px 16px;background:#243d58;color:white;border:1px solid #d4d9e0;border-radius:8px;cursor:pointer}.ft-consent-launcher[hidden]{display:none}
