#cloud-auth-form { display:grid; gap:9px; }
#cloud-auth-form label { font-size:.72rem; font-weight:900; text-transform:uppercase; }
#cloud-auth-form input { width:100%; min-height:52px; padding:12px 14px; border:1px solid #8fa99b; background:white; color:var(--petrol); margin-bottom:13px; }
.auth-links { display:flex; flex-wrap:wrap; gap:18px; margin-top:22px; font-size:.85rem; }
.auth-links a { color:var(--copper); text-underline-offset:4px; }
#new-lead-dialog { width:min(520px,calc(100% - 32px)); max-height:90vh; border:1px solid #8fa99b; padding:28px; color:#203434; background:#f8f4eb; }
#new-lead-dialog::backdrop { background:#0e1d1dbb; }
#new-lead-form { display:grid; gap:10px; }
#new-lead-form input { padding:12px; width:100%; border:1px solid #8fa99b; }
.dialog-actions { display:flex; justify-content:space-between; gap:16px; margin-top:20px; }
.dialog-actions button { padding:14px; border:1px solid #203434; background:#203434; color:white; }
#create-lead { padding:14px; margin-left:auto; }
#new-lead-status { color:#a34730; }
.agent-notice { padding:22px 26px; background:#e8eee7; border:1px solid #b4c4b6; margin-bottom:24px; }
.agent-state { font-size:.7rem; font-weight:900; letter-spacing:.1em; color:#203434; }
.agent-notice p { margin:10px 0; }
.agent-notice small,.agent-caption { font-size:.8rem; line-height:1.6; color:#53615c; }
.agent-layout { display:grid; grid-template-columns:minmax(250px,320px) minmax(0,1fr); gap:24px; align-items:start; }
.agent-controls,.agent-chat { padding:26px; min-width:0; }
.agent-controls h2,.agent-chat h2 { font-size:1.2rem; }
.agent-controls p { font-size:.85rem; line-height:1.7; }
.agent-controls label,#agent-form label { display:block; font-size:.7rem; font-weight:900; letter-spacing:.06em; margin:18px 0 8px; }
.agent-controls select { width:100%; padding:12px; border:1px solid #b4c4b6; background:#fff; color:#203434; }
.agent-controls hr { border:0; border-top:1px solid #d4dbd1; margin:24px 0; }
.agent-base-preview { background:#f3f3eb; padding:14px; border-left:3px solid #8fa99b; margin:16px 0; overflow-wrap:anywhere; }
.agent-base-preview strong { font-size:.86rem; }
.agent-usage { display:grid; grid-template-columns:1fr auto; align-items:center; gap:12px; font-size:.8rem; }
.agent-usage strong { color:#203434; }
.agent-scenarios { display:flex; flex-wrap:wrap; gap:8px; margin:16px 0; }
.agent-scenarios button { border:1px solid #c0c9bc; border-radius:24px; background:#f6f4ec; padding:9px 12px; color:#203434; font-size:.75rem; transition:background .18s; }
.agent-scenarios button:hover { background:#e4ebe1; }
.agent-thread { min-height:270px; height:390px; overflow-y:auto; padding:20px 14px; background:#f6f4ed; display:flex; flex-direction:column; gap:16px; scroll-behavior:smooth; }
.agent-empty { margin:auto; text-align:center; color:#657169; font-size:.9rem; line-height:1.8; max-width:300px; }
.agent-bubble { max-width:90%; padding:15px 18px; border-radius:16px; overflow-wrap:anywhere; animation:agent-appear .25s ease-out; }
.agent-bubble p { white-space:pre-wrap; margin:8px 0 0; line-height:1.7; font-size:.9rem; }
.agent-bubble small { font-size:.6rem; font-weight:900; letter-spacing:.07em; }
.agent-user { background:#203434; color:#f8f4eb; align-self:flex-end; border-bottom-right-radius:4px; }
.agent-assistant { background:#fff; color:#203434; border:1px solid #dbe2d5; align-self:flex-start; border-bottom-left-radius:4px; }
.agent-fallback { border-left:3px solid #b77850; }
.agent-pending { color:#8b4a30; font-size:.85rem; }
.agent-thinking { font-size:.8rem; padding:14px 0; color:#53615c; }
.agent-thinking[hidden] { display:none; }
.agent-thinking span { display:inline-block; color:#b77850; margin-right:8px; animation:agent-pulse 1s ease-in-out infinite alternate; }
#agent-form textarea { width:100%; resize:vertical; padding:14px; border:1px solid #9cae9e; background:white; color:#203434; font:inherit; }
.agent-compose-bottom { display:flex; gap:14px; align-items:center; justify-content:space-between; margin-top:12px; }
.agent-compose-bottom small { color:#657169; font-size:.75rem; }
#agent-send { padding:15px 20px; background:#b77850; border:0; color:#fff; font-size:.75rem; font-weight:900; }
.agent-layout button:disabled { opacity:.5; cursor:not-allowed; }
.agent-layout :is(button,input,select,textarea):focus-visible { outline:3px solid #b77850; outline-offset:3px; }
#agent-feedback { font-size:.85rem; color:#88472d; line-height:1.7; }
.agent-inspector { border-top:1px solid #d4dbd1; padding-top:18px; margin-top:18px; font-size:.82rem; line-height:1.7; }
.agent-inspector summary { cursor:pointer; font-size:.7rem; font-weight:900; }
.agent-inspector dl { display:grid; grid-template-columns:90px 1fr; gap:8px; }.agent-inspector dd { margin:0; overflow-wrap:anywhere; }
.agent-inspector blockquote { margin:16px 0; padding-left:14px; border-left:2px solid #8fa99b; overflow-wrap:anywhere; }
#agent-maintenance,#agent-contacts { margin-top:16px; }
:is(#agent-maintenance,#agent-contacts)>summary { cursor:pointer; min-height:44px; display:flex; align-items:center; gap:10px; font-size:1rem; font-weight:700; }
:is(#agent-maintenance,#agent-contacts)>summary::-webkit-details-marker { display:none; }
:is(#agent-maintenance,#agent-contacts)>summary::after { content:'+'; margin-left:auto; color:#b9452a; font-size:1.3rem; line-height:1; }
:is(#agent-maintenance,#agent-contacts)[open]>summary::after { content:'–'; }
:is(#agent-maintenance,#agent-contacts) [role=status] { font-weight:700; margin:12px 0 6px; }
:is(#agent-maintenance-list,#agent-contacts-list) { list-style:none; padding:0; margin:18px 0 0; display:grid; gap:12px; }
#agent-maintenance-list li { padding:14px 18px; background:#f6f4ed; border-left:3px solid #8fa99b; border-radius:12px; font-size:.85rem; overflow-wrap:anywhere; }
.agent-contact { display:grid; gap:10px; padding:16px 18px; background:#f6f4ed; border-left:3px solid #8fa99b; border-radius:12px; }
.agent-contact[data-reason=opt_out] { border-left-color:#b9452a; }
.agent-contact strong { font-size:.75rem; letter-spacing:.06em; color:#203434; overflow-wrap:anywhere; }
.agent-contact p { margin:0; font-size:.9rem; line-height:1.6; color:#203434; }
.agent-contact-consent { display:flex; gap:10px; align-items:center; font-size:.85rem; line-height:1.5; cursor:pointer; }
.agent-contact-consent input { width:20px; height:20px; flex-shrink:0; accent-color:#b9452a; }
.agent-contact button { justify-self:start; min-height:44px; }
.agent-contact button:disabled { opacity:.5; cursor:not-allowed; }
:is(#agent-maintenance,#agent-contacts) :focus-visible { outline:3px solid #b77850; outline-offset:3px; }
@keyframes agent-appear { from { opacity:0; transform:translateY(8px); } to { opacity:1; transform:translateY(0); } }
@keyframes agent-pulse { from { opacity:.35; } to { opacity:1; } }
@media(max-width:1000px) { .agent-layout { grid-template-columns:1fr; }.agent-controls { order:2; }.agent-thread { height:340px; } }
@media(max-width:600px) { .agent-controls,.agent-chat { padding:18px; }.agent-bubble { max-width:96%; }.agent-compose-bottom { align-items:stretch; flex-direction:column; } }
@media(prefers-reduced-motion:reduce) { .agent-bubble,.agent-thinking span { animation:none; }.agent-thread { scroll-behavior:auto; } }
