body{margin:0}html,body{width:100%;height:100%;margin:0;padding:0;overflow:hidden;position:fixed}*,*:before,*:after{box-sizing:border-box}#root{position:relative;display:flex;flex-direction:column;width:100vw;height:100dvh;margin:0 auto;overflow:hidden;font-family:Malgun Gothic,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#fff}.chat-window{display:flex;flex-direction:column;flex-grow:1;min-height:0;width:100%;max-width:800px;margin:0 auto;border-left:1px solid #eee;border-right:1px solid #eee}.chat-header{flex-shrink:0;background-color:#fff;padding:10px 20px;padding-top:max(10px,env(safe-area-inset-top));box-shadow:0 2px 10px #0000000d;z-index:2;display:flex;justify-content:center;align-items:center}.chat-header h1{margin:0;font-size:1.2rem;color:#333}.header-logo{max-height:30px;height:100%;width:auto}.messages-container{flex-grow:1;min-height:0;overflow-y:auto;padding:20px;display:flex;flex-direction:column;gap:20px;scrollbar-width:thin;scrollbar-color:#ccc transparent}.messages-container::-webkit-scrollbar{width:6px}.messages-container::-webkit-scrollbar-track{background:transparent}.messages-container::-webkit-scrollbar-thumb{background:#ccc;border-radius:3px}.message{display:flex;align-items:flex-end;gap:10px;max-width:75%}.message.sent{align-self:flex-end;flex-direction:row-reverse}.message .bubble{word-break:break-word;white-space:pre-line;padding:12px;border-radius:18px}.message.sent .bubble{background-color:#e6e6e6;color:#000}.message.received .bubble{background-color:#fff;color:#000;box-shadow:0 1px 2px #0000001a}.messages-list .message:first-child{margin-top:10px}.other-sender-markdown h1,.other-sender-markdown h2,.other-sender-markdown h3,.other-sender-markdown h4,.other-sender-markdown h5,.other-sender-markdown h6,.other-sender-markdown ul,.other-sender-markdown ol,.other-sender-markdown li,.other-sender-markdown blockquote,.other-sender-markdown pre,.other-sender-markdown code,.other-sender-markdown p{margin-top:0;margin-bottom:0;padding-top:0;padding-bottom:0;line-height:1.3}.message-form{flex-shrink:0;display:flex;align-items:flex-start;padding:10px 20px;padding-bottom:max(10px,env(safe-area-inset-bottom));background-color:#fff;box-shadow:0 -2px 10px #0000000d;z-index:2}.message-input{flex-grow:1;border:none;border-radius:25px;background-color:#f0f0f0;color:#000;padding:12px 20px;min-height:50px;max-height:150px;overflow-y:auto;font-size:16px;resize:vertical;box-sizing:border-box;outline:none}.send-button{background-color:#000;color:#fff;font-size:1.5rem;cursor:pointer;display:flex;justify-content:center;align-items:center;margin-left:15px;flex-shrink:0;user-select:none;-webkit-user-select:none;width:50px;height:50px;border-radius:25px;border:none}.send-button:hover{background-color:#333}.chat-footer{background-color:#fff;color:#666;font-size:.75rem;padding:8px 20px;padding-bottom:max(8px,env(safe-area-inset-bottom));box-shadow:0 -2px 10px #00000005;z-index:1;display:flex;justify-content:center;align-items:center;text-align:center}@media (min-width: 769px){.chat-header{padding-top:20px}}@media (max-width: 768px){.message-form{padding:8px 15px}.message-input{padding:10px 15px}.send-button{width:40px;height:40px;font-size:1.2rem;margin-left:10px;user-select:none;-webkit-user-select:none}}.loading-bubble{display:flex;align-items:center;justify-content:center;gap:5px}.loading-bubble span{font-size:1em;opacity:0;animation:dot-typing 2s infinite}.loading-bubble span:nth-child(1){animation-delay:0s}.loading-bubble span:nth-child(2){animation-delay:.2s}.loading-bubble span:nth-child(3){animation-delay:.4s}@keyframes dot-typing{0%{opacity:0}33%{opacity:1}66%{opacity:1}to{opacity:0}}.modal-overlay{position:fixed;inset:0;background-color:#0009;display:flex;justify-content:center;align-items:center;z-index:2000}.modal-content{background-color:#fff;padding:30px;border-radius:10px;box-shadow:0 5px 15px #0000004d;text-align:center;max-width:350px;width:90%}.modal-content h2{margin-top:0;color:#333}.modal-content p{margin-bottom:25px;color:#666;white-space:pre-wrap}.modal-content button{background-color:#333;color:#fff;border:none;padding:12px 25px;border-radius:5px;cursor:pointer;font-size:1rem;transition:background-color .2s}.modal-content button:hover{background-color:#555}
