:root{--brand: #0b6e6e;--on-brand: #ffffff;--ink: #1c2530;--muted: #5b6876;--line: #d9e0e7;--paper: #eceff3;--panel: #ffffff;--bot: #eef1f5;--radius-panel: 20px;--radius-bubble: 18px;--radius-control: 12px}*{box-sizing:border-box}html,body,#root{height:100%}body{margin:0;font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif;font-size:16px;line-height:1.5;color:var(--ink);background:var(--paper);-webkit-font-smoothing:antialiased}button,input{font:inherit;color:inherit}:focus-visible{outline:3px solid var(--brand);outline-offset:2px}.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}.page{max-width:1040px;min-height:100%;margin:0 auto;padding:32px 20px;display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:28px;align-items:start}.page.page--embed{max-width:none;height:100%;padding:0;display:block}.chat{display:flex;flex-direction:column;height:min(720px,calc(100vh - 64px));height:min(720px,calc(100dvh - 64px));min-height:480px;overflow:hidden;background:var(--panel);border-radius:var(--radius-panel);box-shadow:0 1px 2px #141e2d0f,0 14px 34px #141e2d17}.page--embed .chat{height:100%;min-height:0;border-radius:0;box-shadow:none}.chat-head{display:flex;align-items:center;gap:12px;padding:14px 16px;background:var(--brand);color:var(--on-brand)}.chat-head :focus-visible{outline-color:var(--on-brand)}.brand-mark{flex:none;display:grid;place-items:center;width:40px;height:40px;border-radius:12px;background:#fff3;font-size:1.1rem;font-weight:700}.chat-head-text{flex:1;min-width:0}.chat-head h1{margin:0;font-size:1.05rem;font-weight:650;line-height:1.2}.chat-head p{display:flex;align-items:center;gap:6px;margin:2px 0 0;font-size:.82rem;opacity:.92}.status-dot{flex:none;width:8px;height:8px;border-radius:50%;background:#7ee2a8}.icon-btn{flex:none;display:grid;place-items:center;width:40px;height:40px;border:0;border-radius:10px;background:transparent;color:inherit;cursor:pointer}.icon-btn:hover{background:#ffffff2e}.chat-log{flex:1;display:flex;flex-direction:column;gap:12px;padding:18px 16px;overflow-y:auto}.msg{display:flex;flex-direction:column;gap:8px;max-width:86%}.msg--bot{align-self:flex-start;align-items:flex-start}.msg--user{align-self:flex-end;align-items:flex-end}.bubble{margin:0;padding:10px 14px;font-size:.95rem;white-space:pre-wrap;overflow-wrap:anywhere}.msg--bot .bubble{background:var(--bot);border-radius:6px var(--radius-bubble) var(--radius-bubble) var(--radius-bubble)}.msg--user .bubble{background:var(--brand);color:var(--on-brand);border-radius:var(--radius-bubble) var(--radius-bubble) 6px var(--radius-bubble)}.bubble--typing{display:flex;align-items:center;gap:5px;padding:15px 16px}.bubble--typing span:nth-child(-n+3){width:7px;height:7px;border-radius:50%;background:var(--muted);animation:blink 1.2s infinite ease-in-out}.bubble--typing span:nth-child(2){animation-delay:.15s}.bubble--typing span:nth-child(3){animation-delay:.3s}@keyframes blink{0%,80%,to{opacity:.3;transform:translateY(0)}40%{opacity:1;transform:translateY(-3px)}}@media (prefers-reduced-motion: reduce){.bubble--typing span:nth-child(-n+3){animation:none;opacity:.6}}.quick{display:flex;flex-wrap:wrap;gap:8px;margin-top:4px}.chip{padding:8px 14px;border:1px solid var(--line);border-radius:999px;background:var(--panel);font-size:.9rem;text-align:left;cursor:pointer}.chip:hover{border-color:var(--brand);color:var(--brand)}.contact{display:flex;flex-direction:column;gap:8px}.contact-actions{display:flex;flex-wrap:wrap;gap:8px}.contact-hours{margin:0;font-size:.82rem;color:var(--muted)}.btn{display:inline-flex;align-items:center;min-height:40px;padding:0 16px;border-radius:var(--radius-control);font-size:.9rem;font-weight:600;text-decoration:none;cursor:pointer}.btn--brand{background:var(--brand);border:1px solid var(--brand);color:var(--on-brand)}.btn--line{background:var(--panel);border:1px solid var(--line);color:var(--ink)}.btn--line:hover{border-color:var(--brand)}.composer{display:flex;gap:8px;padding:12px 16px 8px;border-top:1px solid var(--line)}.composer input{flex:1;min-width:0;height:44px;padding:0 14px;border:1px solid var(--line);border-radius:var(--radius-control);background:var(--panel)}.composer input::placeholder{color:var(--muted)}.composer button{height:44px;padding:0 18px;border:0;border-radius:var(--radius-control);background:var(--brand);color:var(--on-brand);font-weight:600;cursor:pointer}.composer button:disabled{opacity:.45;cursor:not-allowed}.disclaimer{margin:0;padding:0 16px 12px;font-size:.75rem;color:var(--muted)}.faq{padding-top:6px}.faq h2{margin:0 0 10px;padding:0 12px;font-size:1rem;font-weight:650}.faq ul{margin:0;padding:0;list-style:none;border-top:1px solid var(--line)}.faq li{border-bottom:1px solid var(--line)}.faq li button{width:100%;padding:12px;border:0;border-radius:8px;background:transparent;font-size:.95rem;text-align:left;cursor:pointer}.faq li button:hover:not(:disabled){background:#ffffffbf;color:var(--brand)}.faq li button:disabled{opacity:.5;cursor:not-allowed}@media (max-width: 899px){.page{grid-template-columns:minmax(0,1fr);gap:20px;padding:16px 12px 28px}.chat{height:min(680px,calc(100vh - 32px));height:min(680px,calc(100dvh - 32px))}}@media (max-width: 480px){.msg{max-width:92%}}
