#chat-widget{position:fixed;right:1.3rem;bottom:max(1.3rem,env(safe-area-inset-bottom));z-index:35;font-family:var(--sans)}
.chat-launcher{display:flex;align-items:center;gap:.7rem;background:var(--ink);color:white;border:1px solid #416674;border-radius:2rem;padding:.85rem 1.1rem;min-height:52px;box-shadow:0 5px 22px #12394330;font-size:1rem}
.chat-launcher:hover{background:var(--deep)}
.chat-launcher svg{width:23px;height:23px;flex-shrink:0}
.chat-panel{position:absolute;bottom:4.2rem;right:0;width:min(430px,calc(100vw - 2.6rem));height:min(650px,calc(100dvh - 7rem));min-height:280px;display:flex;flex-direction:column;background:white;border:1px solid var(--rule);border-radius:12px;overflow:auto;box-shadow:0 12px 50px #12394335}
.chat-header{background:var(--ink);color:white;display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1rem 1.2rem;border-bottom:3px solid var(--gold);flex-shrink:0}
.chat-header h2{font:500 1.3rem/1.25 var(--sans);letter-spacing:0}
.chat-header p{font-size:.875rem;color:#dfe8e8;margin-top:.3rem;line-height:1.4}
.chat-close{border:0;background:transparent;color:white;font-size:1.8rem;line-height:1;min-height:44px;min-width:44px;padding:.35rem}
.chat-log{flex:1;min-height:130px;overflow-y:auto;overscroll-behavior:contain;padding:1.1rem;display:flex;flex-direction:column;align-items:start;gap:.8rem;scroll-padding-bottom:1rem}
.chat-message{border-radius:10px;padding:.85rem 1rem;max-width:95%;font-size:1rem;line-height:1.6;overflow-wrap:anywhere;flex-shrink:0}
.chat-assistant{background:#f0f4f2;color:var(--ink);border:1px solid #e1e8e3}
.chat-user{background:var(--ink);color:white;align-self:end;white-space:pre-wrap}
.chat-links{display:flex;gap:.6rem 1rem;align-items:center;flex-wrap:wrap;margin-top:.65rem}
.chat-link{display:inline-block;border-bottom:1px solid var(--gold);padding:.25rem 0;font-size:.875rem;font-weight:600;line-height:1.5}
.chat-message>.chat-link{margin-top:.65rem}
.chat-link:hover{color:#745b2c}
.chat-property{background:white;border:1px solid var(--rule);padding:.8rem .85rem;margin-top:.9rem;border-radius:5px}
.chat-property h4{font:600 1rem/1.5 var(--sans);margin:0 0 .3rem}
.chat-property-price{font-size:.95rem}
.chat-property-reference,.chat-verified{font-size:.8rem;line-height:1.6;color:#52696c}
.chat-verified{margin-top:.6rem}
.chat-actions{display:flex;flex-wrap:wrap;gap:.5rem;padding:0 1.1rem .85rem;max-height:9rem;overflow-y:auto;flex-shrink:0}
.chat-choice{font-size:.875rem;line-height:1.45;padding:.5rem .7rem;min-height:40px;border:1px solid #a7bbb8;border-radius:5px;background:white;color:var(--ink);text-align:left}
.chat-choice:hover{background:#edf3f0;border-color:var(--ink)}
.chat-form{display:flex;gap:.5rem;align-items:center;border-top:1px solid var(--rule);padding:.85rem 1.1rem;margin:0;flex-shrink:0}
.chat-form input{min-width:0;flex:1;padding:.65rem .7rem;border:1px solid #a7bbb8;border-radius:4px;font-size:1rem;min-height:44px;background:white;color:var(--ink)}
.chat-send{font-size:.875rem;min-height:44px;background:var(--ink);color:white;border:1px solid var(--ink);border-radius:4px;padding:.6rem .8rem}
.chat-panel button:disabled{opacity:.6;cursor:wait}
.chat-footer{padding:0 1.1rem .85rem;flex-shrink:0}
.chat-footer>div{display:flex;flex-wrap:wrap;justify-content:space-between;gap:.4rem 1rem;align-items:center}
.chat-footer p{font-size:.875rem;color:var(--muted);line-height:1.5;margin-top:.5rem}
.chat-reset{border:0;background:none;color:var(--muted);padding:.35rem 0;font-size:.875rem}
.chat-footer .chat-link{font-size:.875rem;font-weight:500}
@media(max-width:520px){#chat-widget{right:.75rem;bottom:max(.75rem,env(safe-area-inset-bottom))}.chat-panel{width:calc(100vw - 1.5rem);height:min(650px,calc(100dvh - 6.5rem));bottom:4rem}.chat-launcher{padding:.75rem 1rem;font-size:.95rem}.chat-log{padding:.9rem}.chat-actions{padding:0 .9rem .7rem}.chat-form{padding:.75rem .9rem}.chat-footer{padding:0 .9rem .75rem}.chat-message{max-width:100%}}
