:root{color:#111b21;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#efeae2;font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}html{width:100%;height:100%}body{width:100%;min-height:100%;margin:0}#root{width:100%;min-height:100%}main{place-items:center;width:100%;min-height:100dvh;padding:24px;display:grid}button,input{font:inherit}button{border:none}button:focus-visible,input:focus-visible{outline-offset:2px;outline:2px solid #25d366}.auth-form,.chat-setup{background:#fff;border:1px solid #d1d7db;border-radius:12px;width:min(100%,420px);padding:32px;box-shadow:0 2px 8px #0b141a14}.auth-form h1,.chat-setup h1{color:#111b21;margin:0 0 8px;font-size:24px}.auth-form__description,.chat-setup__description{color:#667781;margin:0 0 24px}.auth-form label,.chat-setup label{color:#3b4a54;flex-direction:column;gap:6px;margin-bottom:16px;font-size:14px;font-weight:500;display:flex}.auth-form input,.chat-setup input{color:#111b21;background:#fff;border:1px solid #d1d7db;border-radius:8px;width:100%;padding:12px}.auth-form input::placeholder,.chat-setup input::placeholder,.message-input input::placeholder{color:#8696a0}.auth-form input:focus,.chat-setup input:focus,.message-input input:focus{outline-offset:1px;border-color:#25d366;outline:2px solid #25d36640}.auth-form button,.chat-setup button{color:#fff;width:100%;font:inherit;cursor:pointer;background:#25d366;border-radius:8px;padding:12px 16px;font-weight:500;transition:background .15s,opacity .15s}.auth-form button:hover:not(:disabled),.chat-setup button:hover{background:#20bd5a}.auth-form button:active:not(:disabled),.chat-setup button:active{transform:translateY(1px)}.auth-form button:disabled{opacity:.5;cursor:not-allowed}.form-error{color:#ea0038;margin:0 0 16px;font-size:13px}.chat{background:#efeae2;border:1px solid #d1d7db;border-radius:12px;flex-direction:column;width:min(100%,700px);height:min(800px,100dvh - 48px);min-height:0;display:flex;overflow:hidden;box-shadow:0 4px 16px #0b141a1f}.chat-header{color:#fff;background:#075e54;border-bottom:1px solid #d1d7db;flex-shrink:0;padding:14px 20px}.chat-header h2{color:#fff;margin:0;font-size:18px;font-weight:500}.chat-header span{color:#d9fdd3;font-size:13px}.message-list{background:#efeae2;flex-direction:column;flex:1;gap:8px;min-height:0;padding:20px;display:flex;overflow-y:auto}.message{display:flex}.message--me{justify-content:flex-end}.message--other{justify-content:flex-start}.message__bubble{overflow-wrap:anywhere;background:#fff;border-radius:8px;max-width:70%;padding:8px 12px;box-shadow:0 1px 1px #0b141a14}.message--me .message__bubble{background:#d9fdd3}.message__bubble p{margin:0 0 4px;line-height:1.4}.message__bubble span{text-align:right;color:#667781;font-size:11px;display:block}.message-list--empty{justify-content:center;align-items:center}.message-list--empty p{color:#667781;margin:0;font-size:14px}.chat-status{text-align:center;color:#667781;background:#efeae2;flex-shrink:0;padding:8px 12px;font-size:13px}.chat-status--error{color:#ea0038}.message-input{background:#f0f2f5;border-top:1px solid #d1d7db;flex-shrink:0;gap:8px;padding:10px 12px;display:flex}.message-input input{color:#111b21;background:#fff;border:none;border-radius:8px;flex:1;min-width:0;padding:11px 14px}.message-input button{color:#fff;cursor:pointer;background:#25d366;border-radius:50%;flex-shrink:0;width:44px;min-height:44px;transition:background .15s,opacity .15s}.message-input button:hover:not(:disabled){background:#20bd5a}.message-input button:disabled{opacity:.5;cursor:not-allowed}@media (width<=700px){html,body,#root{width:100%;height:100%;min-height:100%;overflow:hidden}main{width:100%;height:100dvh;min-height:100dvh;padding:0}.chat{width:100%;height:100dvh;min-height:100dvh;box-shadow:none;border:none;border-radius:0}.message-list{padding:12px}.message__bubble{max-width:85%}}@media (width<=480px){.auth-form,.chat-setup{width:100%;box-shadow:none;border:none;border-radius:0;padding:24px}main{padding:0}.message-input{padding:8px}.message-input input{padding:10px 12px}.message-input button{width:42px;min-height:42px}.chat-header{padding:12px 16px}}
