.gptfr-app{--gptfr-radius:12px;--gptfr-gap:14px;max-width:820px;margin:0 auto}
.gptfr-intro{margin:0 0 var(--gptfr-gap)}
.gptfr-title{margin:0 0 .4em;line-height:1.15;text-wrap:balance}
.gptfr-lede{margin:0;opacity:.85}
.gptfr-chat{border:1px solid rgba(128,128,128,.28);border-radius:var(--gptfr-radius);padding:14px;margin:0 0 28px}
.gptfr-log:empty{display:none}
.gptfr-log{display:flex;flex-direction:column;gap:12px;margin-bottom:12px;max-height:52vh;overflow-y:auto}
.gptfr-turn{display:flex;flex-direction:column;gap:3px}
.gptfr-who{font-size:.74rem;letter-spacing:.05em;text-transform:uppercase;opacity:.6}
.gptfr-bubble{white-space:pre-wrap;overflow-wrap:anywhere;padding:10px 13px;border-radius:10px;background:rgba(128,128,128,.1)}
.gptfr-turn--user .gptfr-bubble{background:rgba(13,66,86,.1)}
.gptfr-form{display:flex;flex-direction:column;gap:10px}
.gptfr-input{width:100%;box-sizing:border-box;resize:vertical;min-height:76px;padding:11px 13px;
  border:1px solid rgba(128,128,128,.4);border-radius:10px;font:inherit;background:transparent;color:inherit}
.gptfr-controls{display:flex;flex-wrap:wrap;gap:12px;align-items:center;justify-content:space-between}
.gptfr-consent{display:flex;gap:8px;align-items:flex-start;font-size:.86rem;line-height:1.4;flex:1 1 260px}
.gptfr-send{padding:10px 22px;border:0;border-radius:9px;font:inherit;font-weight:600;cursor:pointer;
  background:#0d4256;color:#fff}
.gptfr-send:disabled{opacity:.5;cursor:not-allowed}
.gptfr-status{margin:0;min-height:1.25em;font-size:.86rem;opacity:.8}
.gptfr-status--error{color:#9e3129;opacity:1;font-weight:500}
.gptfr-noscript{margin:0;font-size:.86rem}
.gptfr-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.gptfr-hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.gptfr-dots{display:inline-flex;gap:4px;align-items:center;height:1.2em}
.gptfr-dots i{width:6px;height:6px;border-radius:50%;background:currentColor;opacity:.35;
  animation:gptfr-blink 1.2s infinite ease-in-out}
.gptfr-dots i:nth-child(2){animation-delay:.18s}
.gptfr-dots i:nth-child(3){animation-delay:.36s}
@keyframes gptfr-blink{0%,80%,100%{opacity:.25}40%{opacity:.9}}
@media (prefers-reduced-motion:reduce){.gptfr-dots i{animation:none;opacity:.5}}
.gptfr-section{margin:0 0 26px}
.gptfr-section h2{margin:0 0 .5em;line-height:1.2}
.gptfr-faq{margin:0 0 26px}
.gptfr-faq-item{margin:0 0 18px}
.gptfr-faq-q{margin:0 0 .35em;font-size:1.05rem;line-height:1.3}
.gptfr-faq-a{margin:0}
.gptfr-faq-a p{margin:0 0 .6em}
.gptfr-disclaimer{margin:26px 0 0;padding-top:14px;border-top:1px solid rgba(128,128,128,.25);
  font-size:.85rem;opacity:.75}
.gptfr-disclaimer p{margin:0}
