.form-note{margin:0;color:var(--muted);font-size:.74rem}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.confirmation-check{width:58px;height:58px;border-radius:50%;display:grid;place-items:center;background:#e1f1e8;color:var(--green);font-size:2rem;font-weight:800}
.confirmation-title{font-size:clamp(2rem,5vw,3.4rem);margin-bottom:1rem}
.response-preview{background:#f3f7f5;padding:1.1rem 1.25rem;border-radius:12px}
.response-preview ol{margin-bottom:0;padding-left:1.25rem}
.prototype-warning{color:#9b4b0c;font-size:.8rem;font-weight:700;margin-top:1rem}
.chat-launcher{position:fixed;right:1.4rem;bottom:1.4rem;z-index:25;border:0;border-radius:99px;background:var(--orange);color:#fff;padding:.65rem 1rem .65rem .65rem;display:flex;align-items:center;gap:.55rem;font-weight:800;box-shadow:0 12px 36px rgba(5,51,38,.28);cursor:pointer}
.chat-launcher-icon,.chat-avatar{display:grid;place-items:center;width:38px;height:38px;border-radius:50%;background:var(--yellow);color:var(--deep);font-size:.72rem;font-weight:900}
.chat-panel{position:fixed;right:1.4rem;bottom:5.8rem;z-index:24;width:min(390px,calc(100vw - 2rem));height:min(620px,calc(100vh - 8rem));height:min(620px,calc(100dvh - 8rem - env(safe-area-inset-top,0px)));background:#fff;border:1px solid var(--line);border-radius:22px;box-shadow:0 24px 80px rgba(5,51,38,.26);display:flex;flex-direction:column;overflow:hidden;opacity:0;visibility:hidden;transform:translateY(18px) scale(.98);transition:.22s}
.chat-panel.open{opacity:1;visibility:visible;transform:none}
.chat-head{background:var(--deep);color:#fff;padding:1rem;display:flex;align-items:center;justify-content:space-between}
.chat-head>div{display:flex;align-items:center;gap:.75rem}.chat-head b,.chat-head small{display:block}.chat-head small{color:#bfd2c9;font-size:.7rem}.chat-head button{border:0;background:transparent;color:#fff;font-size:1.8rem;cursor:pointer}
.chat-messages{flex:1;overflow:auto;background:#f6f8f7;padding:1rem;display:flex;flex-direction:column;gap:.7rem}
.chat-message{max-width:88%;padding:.75rem .9rem;border-radius:14px;font-size:.86rem;line-height:1.45}.chat-message.bot{align-self:flex-start;background:#fff;border:1px solid var(--line);border-bottom-left-radius:4px}.chat-message.user{align-self:flex-end;background:var(--green);color:#fff;border-bottom-right-radius:4px}
.chat-suggestions{padding:.7rem 1rem;display:flex;flex-wrap:wrap;gap:.4rem;border-top:1px solid var(--line)}.chat-suggestions button{border:1px solid #b9c9c0;background:#fff;color:var(--green);border-radius:99px;padding:.35rem .58rem;font-size:.7rem;font-weight:700;cursor:pointer}
.chat-form{display:grid;grid-template-columns:1fr auto;gap:.5rem;padding:.8rem 1rem;border-top:1px solid var(--line)}.chat-form input{min-width:0;border:1px solid #bfcec6;border-radius:10px;padding:.65rem}.chat-form button{border:0;border-radius:10px;background:var(--orange);color:#fff;font-weight:800;padding:.65rem .8rem;cursor:pointer}.chat-disclaimer{margin:0;padding:0 1rem .8rem;color:var(--muted);font-size:.62rem;line-height:1.35}
@media(max-width:900px){.chat-launcher{right:.8rem;bottom:calc(.8rem + env(safe-area-inset-bottom,0px))}.chat-panel{top:max(.75rem,env(safe-area-inset-top,0px));right:.5rem;bottom:calc(5rem + env(safe-area-inset-bottom,0px));width:calc(100vw - 1rem);height:auto;max-height:none}}
@media(prefers-reduced-motion:reduce){.chat-panel,.reveal{transition:none}}
