*,*:before,*:after{box-sizing:border-box}:root{--color-primary: #DE1A83;--color-accent: #F98E2D;--color-background: #121212;--color-surface: #1E1E1E;--color-text-primary: #E0E0E0;--color-text-secondary: #9E9E9E;--color-success: #4CAF50;--color-error: #FF5252;--font-family-primary: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;--font-weight-regular: 400;--font-weight-medium: 500;--font-weight-semibold: 600;--font-weight-bold: 700;--font-size-display: 1.75rem;--font-size-heading: 1.25rem;--font-size-subheading: 1rem;--font-size-body: 1rem;--font-size-label: .875rem;--font-size-caption: .75rem;--spacing-xs: .25rem;--spacing-sm: .5rem;--spacing-md: 1rem;--spacing-lg: 1.5rem;--spacing-xl: 2rem;--border-radius-sm: 4px;--border-radius-md: 8px;--border-radius-lg: 16px}body{margin:0;background-color:var(--color-background);color:var(--color-text-primary);font-family:var(--font-family-primary);font-size:var(--font-size-body);font-weight:var(--font-weight-regular);line-height:1.6;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}#root{min-height:100vh}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{background:var(--color-surface)}::-webkit-scrollbar-thumb{background:#555;border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#777}.app-container{display:flex;flex-direction:column;min-height:100vh;max-width:600px;width:100%;margin:0 auto;background-color:var(--color-background);position:relative}.main-content{flex-grow:1;overflow-y:auto;display:flex;flex-direction:column}.sidebar-toggle-button{position:absolute;top:20px;left:15px;z-index:10;background-color:transparent;border:none;border-radius:0;width:auto;height:auto;font-size:var(--font-size-heading);cursor:pointer;box-shadow:none;display:flex;justify-content:center;align-items:center;padding:var(--spacing-sm);color:var(--color-text-primary)}.sidebar-toggle-button:hover{background-color:#ffffff1a}.end-user-chat-page{display:flex;flex-direction:column;flex-grow:1;background-color:transparent;padding:0}.chat-header-final{padding:var(--spacing-lg) var(--spacing-md);background-color:transparent;flex-shrink:0;display:flex;align-items:center;justify-content:center;min-height:50px;position:relative;z-index:1001;width:100%}.chat-title-final{font-size:var(--font-size-heading);font-weight:var(--font-weight-semibold);color:var(--color-text-primary);margin:0;flex:1;text-align:center;position:static;transform:none}.header-controls{display:flex;align-items:center;justify-content:center;width:44px;height:44px;flex-shrink:0}.app-icon{width:26px;height:26px;border-radius:var(--border-radius-sm);object-fit:contain}.chat-area{flex-grow:1;overflow-y:auto;padding:20px 15px 120px;display:flex;flex-direction:column;background-color:transparent;flex:1 1 auto;transition:padding-bottom .2s ease;height:calc(100vh - 260px);scroll-behavior:smooth;-webkit-overflow-scrolling:touch;position:relative}.end-user-chat-page .chat-area.with-smart-replies{padding-bottom:160px}.messages-list{display:flex;flex-direction:column;gap:12px;padding-bottom:100px;width:100%;margin-top:auto;justify-content:flex-end}.assistant-prompt-container{flex-grow:1;display:flex;flex-direction:column;align-items:center;justify-content:center;padding-bottom:230px;padding-top:50px;margin-top:auto}.main-prompt-message{font-size:var(--font-size-display);font-weight:var(--font-weight-semibold);color:var(--color-text-primary);text-align:center;max-width:90%;line-height:1.4;margin:0}.share-link-description{color:var(--color-text-secondary);text-align:center;max-width:90%;margin-top:var(--spacing-md);font-size:var(--font-size-body);line-height:1.5}.bottom-controls-container{position:fixed;bottom:0;left:0;right:0;background-color:var(--color-background);padding:15px;display:flex;flex-direction:column;gap:8px;z-index:1000}.suggested-questions-container{background-color:transparent;padding:0 0 15px}.chat-input-form{background-color:var(--color-surface);padding:15px;border-radius:var(--border-radius-lg);box-shadow:0 -1px 4px #0000004d;display:flex;align-items:center}.smart-replies-container{position:fixed;bottom:var(--bottom-controls-height, 100px);left:0;right:0;background-color:var(--color-background);padding:8px 15px;z-index:1001;display:flex;align-items:center;justify-content:flex-start;transition:bottom .2s ease}.smart-replies{display:flex;justify-content:flex-start;gap:12px;overflow-x:auto;scrollbar-width:none;-ms-overflow-style:none;padding:5px 0;width:100%}.smart-replies::-webkit-scrollbar{display:none}.smart-reply-button{background-color:var(--color-surface);border:1px solid rgba(255,255,255,.2);border-radius:20px;padding:var(--spacing-sm) var(--spacing-md);font-size:var(--font-size-label);color:var(--color-text-primary);cursor:pointer;white-space:nowrap;flex-shrink:0;transition:all .2s ease;box-shadow:0 1px 3px #0000004d;font-weight:var(--font-weight-medium)}.smart-reply-button:hover{background-color:#ffffff1a;border-color:var(--color-primary);color:var(--color-primary);transform:translateY(-1px);box-shadow:0 2px 6px #0006}.smart-reply-button:active{transform:translateY(0);box-shadow:0 1px 3px #0000001a}.smart-reply-button:disabled{opacity:.6;cursor:not-allowed;transform:none;background-color:var(--color-surface);color:var(--color-text-secondary);border-color:#ffffff1a}.smart-reply-button:disabled:hover{background-color:var(--color-surface);border-color:#ffffff1a;color:var(--color-text-secondary);transform:none;box-shadow:0 1px 3px #0000004d}.loading-container,.error-container{display:flex;justify-content:center;align-items:center;height:100vh;font-size:var(--font-size-heading);color:var(--color-text-secondary)}.error-container{color:var(--color-error)}.new-chat-button{position:static;transform:none;background:none;border:none;cursor:pointer;padding:var(--spacing-sm);border-radius:50%;display:flex;align-items:center;justify-content:center;color:var(--color-text-secondary);transition:all .2s ease;width:44px;height:44px}.new-chat-button:hover{background-color:#ffffff1a;color:var(--color-text-primary)}.new-chat-button svg{width:25px;height:25px}.ai-typing-indicator{color:var(--color-text-secondary);background-color:var(--color-surface);padding:var(--spacing-md) var(--spacing-lg);border-radius:var(--border-radius-lg);margin:var(--spacing-xs) 0;max-width:80px;min-height:44px;display:flex;align-items:center;justify-content:center;border-bottom-left-radius:4px;border-top-left-radius:var(--border-radius-lg);border-top-right-radius:var(--border-radius-lg);border-bottom-right-radius:var(--border-radius-lg);border:1px solid rgba(255,255,255,.2)}.typing-assistant-name{font-size:var(--font-size-caption);color:var(--color-text-secondary);font-weight:var(--font-weight-medium);margin-bottom:var(--spacing-xs);opacity:.8;align-self:flex-start}.message-container.ai{display:flex;flex-direction:column;justify-content:flex-start;align-items:flex-start;padding:var(--spacing-xs) var(--spacing-md);margin:var(--spacing-sm) 0}.typing-dots{display:inline-flex;align-items:center;gap:3px}.dot{width:6px;height:6px;border-radius:50%;animation:typingBounce 1.4s infinite ease-in-out}.dot:nth-child(1){background-color:#e7008a;animation-delay:0s}.dot:nth-child(2){background-color:#f98e2d;animation-delay:.2s}.dot:nth-child(3){background-color:#e7008a;animation-delay:.4s}@keyframes typingBounce{0%,80%,to{transform:scale(.8);opacity:.5}40%{transform:scale(1);opacity:1}}@keyframes typingIndicatorPulse{0%{opacity:1}25%{opacity:1}35%{opacity:1}45%{opacity:1}55%{opacity:0}75%{opacity:0}85%{opacity:1}90%{opacity:1}to{opacity:1}}@media (min-width: 768px){.end-user-chat-page,.chat-header-final,.chat-area{max-width:800px;margin:0 auto}.messages-list{max-width:800px;margin-left:auto;margin-right:auto}.bottom-controls-container,.smart-replies-container{max-width:800px;left:50%;transform:translate(-50%)}}.inline-auth-widget{background-color:var(--color-surface);border:1px solid rgba(255,255,255,.1);border-radius:var(--border-radius-sm);padding:var(--spacing-md);margin:var(--spacing-sm) 0;max-width:100%;font-family:var(--font-family-primary)}.auth-step{width:100%}.auth-form{display:flex;flex-direction:column;gap:var(--spacing-sm)}.step-info{margin-bottom:var(--spacing-sm)}.step-info p{margin:0;color:var(--color-text-secondary);font-size:var(--font-size-label);text-align:center}.input-group{display:flex;flex-direction:column;gap:var(--spacing-xs)}.input-group label{font-size:var(--font-size-label);font-weight:var(--font-weight-medium);color:var(--color-text-primary);margin:0}.phone-input,.otp-input{width:100%;padding:var(--spacing-sm) var(--spacing-sm);border:1px solid rgba(255,255,255,.2);border-radius:var(--border-radius-sm);font-size:16px;font-family:var(--font-family-primary);transition:border-color .2s ease,box-shadow .2s ease;box-sizing:border-box;background-color:var(--color-background);color:var(--color-text-primary)}.phone-input:focus,.otp-input:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 2px #de1a8333}.phone-input:disabled,.otp-input:disabled{background-color:var(--color-surface);opacity:.7;cursor:not-allowed}.otp-input{text-align:center;letter-spacing:2px;font-weight:var(--font-weight-medium)}#recaptcha-container{display:flex;justify-content:center;margin:var(--spacing-sm) 0}#recaptcha-container>div{transform-origin:0 0;width:100%!important}@media (max-width: 480px){#recaptcha-container>div{transform:scale(.85)}}.auth-button{padding:var(--spacing-sm) var(--spacing-md);border-radius:6px;font-size:var(--font-size-body);font-weight:var(--font-weight-medium);cursor:pointer;transition:all .2s ease;border:2px solid var(--color-primary);min-height:44px;font-family:var(--font-family-primary);display:flex;align-items:center;justify-content:center;gap:8px;width:100%}.auth-button.primary{background-color:#de1a830d;color:var(--color-primary);border:2px solid var(--color-primary)}.auth-button.primary:hover:not(:disabled){background-color:#de1a8326;transform:translateY(-1px)}.auth-button.primary:disabled{background-color:transparent;color:var(--color-text-secondary);border-color:var(--color-text-secondary);cursor:not-allowed;transform:none}.auth-button.secondary{background-color:transparent;color:var(--color-text-secondary);border:1px solid rgba(255,255,255,.2)}.auth-button.secondary:hover:not(:disabled){background-color:var(--color-surface);color:var(--color-text-primary)}.auth-button.secondary:disabled{opacity:.5;cursor:not-allowed}.button-group{display:flex;gap:var(--spacing-sm);flex-direction:column;margin-top:var(--spacing-md)}@media (min-width: 480px){.button-group{flex-direction:row;justify-content:space-between}.button-group .auth-button{flex:1}}.auth-message{margin-top:12px;padding:8px 12px;border-radius:6px;font-size:.9rem;text-align:center}.auth-message.success{background-color:#d4edda;color:#155724;border:1px solid #c3e6cb}.auth-message.error{background-color:#f8d7da;color:#721c24;border:1px solid #f5c6cb}.auth-button:disabled{position:relative}.auth-button:disabled:after{content:"";position:absolute;left:50%;top:50%;width:16px;height:16px;margin:-8px 0 0 -8px;border:2px solid transparent;border-top:2px solid currentColor;border-radius:50%;animation:spin 1s linear infinite;opacity:0}.auth-button.primary:disabled:after{opacity:1}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media (max-width: 480px){.inline-auth-widget{padding:12px;margin:6px 0}.phone-input,.otp-input{padding:12px;font-size:16px}.auth-button{padding:12px 16px;min-height:48px;border-radius:6px}}.message-container{display:flex;flex-direction:column;max-width:80%;flex-shrink:0;white-space:pre-wrap;word-wrap:break-word}.message-bubble{padding:var(--spacing-md);word-wrap:break-word;line-height:1.5;white-space:normal;position:relative;font-size:var(--font-size-body)}.user-message{justify-content:flex-end;margin-left:auto}.user-message .message-bubble{background-color:var(--color-primary);color:#fff;border-bottom-right-radius:4px;border-top-right-radius:var(--border-radius-lg);border-top-left-radius:var(--border-radius-lg);border-bottom-left-radius:var(--border-radius-lg);border:none}.ai-message{justify-content:flex-start;margin-right:auto}.ai-message .message-bubble{background-color:var(--color-surface);color:var(--color-text-primary);border-bottom-left-radius:4px;border-top-left-radius:var(--border-radius-lg);border-top-right-radius:var(--border-radius-lg);border-bottom-right-radius:var(--border-radius-lg);border:1px solid rgba(255,255,255,.1)}.system-message{justify-content:center;margin:8px 0}.system-message .message-bubble{background-color:var(--color-surface);color:var(--color-success);font-size:var(--font-size-label);padding:var(--spacing-sm) var(--spacing-sm);border-radius:var(--border-radius-sm);border:1px solid var(--color-success);text-align:center;font-weight:var(--font-weight-medium);max-width:fit-content}.auth-widget-container{margin-top:var(--spacing-sm);padding:0;border-radius:var(--border-radius-sm);background-color:transparent}.message-container.ai-message.auth-message{max-width:90%}.message-container.ai-message.auth-message .message-bubble{margin-bottom:var(--spacing-sm)}.message-bubble p{margin:0;line-height:inherit}.message-bubble p:not(:last-child){margin-bottom:var(--spacing-sm)}.message-bubble h1,.message-bubble h2,.message-bubble h3,.message-bubble h4,.message-bubble h5,.message-bubble h6{margin:var(--spacing-sm) 0;font-weight:var(--font-weight-semibold);line-height:1.25}.message-bubble h1:first-child,.message-bubble h2:first-child,.message-bubble h3:first-child,.message-bubble h4:first-child,.message-bubble h5:first-child,.message-bubble h6:first-child{margin-top:0}.message-bubble h1:last-child,.message-bubble h2:last-child,.message-bubble h3:last-child,.message-bubble h4:last-child,.message-bubble h5:last-child,.message-bubble h6:last-child{margin-bottom:0}.message-bubble ul,.message-bubble ol{margin:var(--spacing-sm) 0;padding-left:1.5rem;line-height:1.5}.message-bubble ul:first-child,.message-bubble ol:first-child{margin-top:0}.message-bubble ul:last-child,.message-bubble ol:last-child{margin-bottom:0}.message-bubble li{margin-bottom:.25rem;line-height:1.5}.message-bubble li:last-child{margin-bottom:0}.message-bubble li>ul,.message-bubble li>ol{margin-top:.25rem;margin-bottom:.25rem}.message-bubble strong{font-weight:var(--font-weight-semibold)}.message-bubble em{font-style:italic}.message-bubble code{background-color:#ffffff1a;color:var(--color-text-primary);padding:.125rem .25rem;border-radius:.25rem;font-size:.875em;font-family:SF Mono,Monaco,Cascadia Code,Roboto Mono,Consolas,Courier New,monospace}.message-bubble pre{background-color:#ffffff0d;color:var(--color-text-primary);padding:var(--spacing-md);border-radius:.375rem;overflow-x:auto;margin:var(--spacing-sm) 0;border-left:.25rem solid var(--color-primary)}.message-bubble pre code{background-color:transparent;padding:0;border-radius:0}.message-bubble pre:first-child{margin-top:0}.message-bubble pre:last-child{margin-bottom:0}.message-bubble blockquote{margin:var(--spacing-sm) 0;padding-left:var(--spacing-md);border-left:.25rem solid var(--color-primary);font-style:italic;color:var(--color-text-secondary)}.message-bubble blockquote:first-child{margin-top:0}.message-bubble blockquote:last-child{margin-bottom:0}.message-bubble a{color:var(--color-primary);text-decoration:underline}.message-bubble a:hover{opacity:.8}.message-bubble hr{margin:var(--spacing-md) 0;border:none;height:1px;background-color:#fff3}.user-message .message-bubble code{background-color:#fff3;color:#ffffffe6}.user-message .message-bubble pre{background-color:#ffffff1a;color:#ffffffe6;border-left-color:#ffffff80}.user-message .message-bubble blockquote{border-left-color:#ffffff80;color:#fffc}.user-message .message-bubble a{color:#ffffffe6}.user-message .message-bubble hr{background-color:#ffffff4d}.chat-input-form{display:flex;align-items:flex-end}.chat-input-field{flex-grow:1;border:none;border-radius:0;box-shadow:none;background-color:transparent;padding:var(--spacing-md) var(--spacing-xs) var(--spacing-md) var(--spacing-xs);font-size:var(--font-size-body);margin-right:var(--spacing-sm);outline:none;color:var(--color-text-primary);line-height:1.4;font-family:var(--font-family-primary);resize:none;overflow:hidden;word-wrap:break-word;white-space:pre-wrap;min-height:calc(1.4em + 2 * var(--spacing-md));max-height:200px}.chat-input-field::placeholder{color:var(--color-text-secondary);opacity:1}.chat-input-field:focus{outline:none}.chat-send-button{background-color:var(--color-primary);color:#fff;border:2px solid var(--color-primary);border-radius:50%;width:44px;height:44px;display:flex;align-items:center;justify-content:center;cursor:pointer;flex-shrink:0;transition:all .2s ease}.chat-send-button:hover:not(:disabled){background-color:var(--color-accent);border-color:var(--color-accent)}.chat-send-button:disabled{background-color:var(--color-surface);border:2px solid rgba(255,255,255,.2);color:var(--color-text-secondary);opacity:.8;cursor:not-allowed}.chat-send-button svg{vertical-align:middle}.toast-notification{position:fixed;top:16px;left:50%;transform:translate(-50%);background-color:#111111f2;color:var(--color-text-primary);padding:10px 14px;border-radius:var(--border-radius-md);font-size:.95rem;font-weight:var(--font-weight-medium);box-shadow:0 10px 20px #00000059;z-index:5000;pointer-events:none;animation:toastFadeInUp .2s ease-out,toastFadeOut .3s ease-in 3.7s forwards}.toast-warning{border:1px solid rgba(250,204,21,.35)}@keyframes toastFadeInUp{0%{opacity:0;transform:translate(-50%) translateY(-8px)}to{opacity:1;transform:translate(-50%) translateY(0)}}@keyframes toastFadeOut{to{opacity:0}}@media (min-width: 768px){.chat-input-form{max-width:800px}}.suggested-questions-container{padding:0 6px 15px;flex-shrink:0;width:100%;overflow-y:hidden;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none}.suggested-questions-container::-webkit-scrollbar{display:none}.suggested-questions-list{display:flex;flex-direction:row;gap:8px;padding:4px 0;width:fit-content;align-items:center}.suggested-question-button{background-color:var(--color-surface);color:var(--color-text-primary);border:1px solid rgba(255,255,255,.2);border-radius:20px;padding:8px 16px;font-size:.85em;font-weight:400;cursor:pointer;transition:background-color .2s ease,transform .1s ease,border-color .2s ease;text-align:left;white-space:normal;word-wrap:break-word;flex-shrink:0;margin:0;height:auto;max-height:60px;min-height:40px;width:auto;max-width:320px;min-width:180px;display:flex;flex-direction:column;justify-content:center;line-height:1.3;overflow:hidden;box-shadow:0 1px 3px #0000004d}.suggested-question-button:hover{background-color:#ffffff1a;border-color:var(--color-primary);transform:translateY(-1px);box-shadow:0 2px 6px #0006}.suggested-question-button:active{transform:scale(.98) translateY(0);box-shadow:0 1px 3px #0000004d}.question-primary{font-weight:600;color:var(--color-text-primary);display:block;line-height:1.2;white-space:nowrap}.question-secondary{font-weight:400;color:var(--color-text-secondary);font-size:.9em;display:block;line-height:1.2;margin-top:2px;white-space:nowrap}.suggested-question-button.disabled{opacity:.5;cursor:not-allowed;background-color:#ffffff08;border-color:#ffffff1a}.suggested-question-button.disabled:hover{background-color:#ffffff08;border-color:#ffffff1a;transform:none;box-shadow:0 1px 3px #0000004d}.suggested-question-button.disabled:active{transform:none}@media (min-width: 768px){.suggested-questions-container{max-width:800px;margin:0 auto}}.verification-banner{position:fixed;bottom:80px;left:16px;right:16px;color:#fff;border-radius:var(--border-radius-lg, 12px);box-shadow:var(--shadow-lg, 0 4px 12px rgba(0, 0, 0, .15));z-index:2600;animation:bannerSlideUp .3s ease}.verification-banner.status-pending{background-color:var(--color-primary, #DE1A83)}.verification-banner.status-denied{background-color:#ef4444}.verification-banner-content{display:flex;align-items:center;justify-content:space-between;padding:12px 16px}.verification-banner-info{display:flex;align-items:center;gap:12px;flex:1}.verification-banner-icon{font-size:18px;flex-shrink:0}.verification-banner-text{display:flex;flex-direction:column;gap:2px;flex:1;min-width:0}.verification-banner-title{font-size:.95rem;font-weight:600;margin:0}.verification-banner-message{font-size:.85rem;opacity:.9;margin:0;line-height:1.3}.verification-banner-dismiss{background:none;border:none;color:#fff;font-size:1.25rem;cursor:pointer;padding:4px;margin-left:12px;border-radius:50%;width:28px;height:28px;display:flex;align-items:center;justify-content:center;transition:background-color .2s ease;flex-shrink:0}.verification-banner-dismiss:hover{background-color:#fff3}@keyframes bannerSlideUp{0%{transform:translateY(100%);opacity:0}to{transform:translateY(0);opacity:1}}@media (max-width: 480px){.verification-banner{bottom:80px;left:12px;right:12px}.verification-banner-content{padding:10px 12px}.verification-banner-title{font-size:.9rem}.verification-banner-message{font-size:.8rem}}.sidebar{position:fixed;top:0;left:0;width:280px;height:100%;background-color:var(--color-surface);border-right:1px solid rgba(255,255,255,.1);box-shadow:2px 0 5px #00000080;transform:translate(-100%);transition:transform .3s ease-in-out;z-index:1000;display:flex;flex-direction:column;padding-bottom:var(--spacing-lg)}.sidebar.open{transform:translate(0)}.sidebar-header{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-md) var(--spacing-lg);border-bottom:1px solid rgba(255,255,255,.1);background-color:var(--color-background)}.sidebar-header h2{margin:0;font-size:var(--font-size-heading);color:var(--color-text-primary);font-weight:var(--font-weight-semibold)}.close-button{background:none;border:none;font-size:var(--font-size-display);cursor:pointer;color:var(--color-text-secondary);padding:0 var(--spacing-sm);line-height:1}.close-button:hover{color:var(--color-text-primary)}.conversation-list{list-style:none;padding:0;margin:var(--spacing-sm) 0 0 0;overflow-y:auto;flex-grow:1}.conversation-item button{display:block;width:100%;padding:var(--spacing-sm) var(--spacing-lg);text-align:left;background:none;border:none;border-bottom:1px solid rgba(255,255,255,.1);cursor:pointer;font-size:var(--font-size-body);color:var(--color-text-primary);transition:background-color .2s ease;font-family:var(--font-family-primary)}.conversation-item button:hover{background-color:#ffffff1a}.conversation-item:last-child button{border-bottom:none}.no-conversations{padding:var(--spacing-lg);text-align:center;color:var(--color-text-secondary);font-style:italic;font-family:var(--font-family-primary)}.sidebar-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background-color:#0006;opacity:0;visibility:hidden;transition:opacity .3s ease-in-out,visibility .3s ease-in-out;z-index:999}.sidebar-overlay.open{opacity:1;visibility:visible}
