*,*:before,*:after{box-sizing:border-box}:root{--color-primary: #DE1A83;--color-secondary: #6A5AE0;--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}.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}}.inline-payment-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)}.payment-summary{text-align:center;margin-bottom:var(--spacing-md);padding-bottom:var(--spacing-md);border-bottom:1px solid rgba(255,255,255,.1)}.payment-summary h3{margin:0 0 var(--spacing-sm) 0;color:var(--color-text-primary);font-size:var(--font-size-h3, 1.25rem)}.payment-description{margin:0 0 var(--spacing-sm) 0;color:var(--color-text-secondary);font-size:var(--font-size-body, 1rem)}.payment-amount{font-size:32px;font-weight:var(--font-weight-bold, 700);color:var(--color-primary);margin:var(--spacing-sm) 0}.mock-notice{font-size:var(--font-size-small, .875rem);color:orange;background-color:#ffa5001a;border:1px solid rgba(255,165,0,.3);border-radius:var(--border-radius-sm, 4px);padding:var(--spacing-xs, .5rem);margin-top:var(--spacing-sm)}.payment-form{display:flex;flex-direction:column;gap:var(--spacing-md, 1rem)}.input-group{display:flex;flex-direction:column;gap:var(--spacing-xs, .5rem);position:relative}.input-group label{font-size:var(--font-size-label, .875rem);font-weight:var(--font-weight-medium, 500);color:var(--color-text-primary);margin:0}.payment-input{width:100%;padding:var(--spacing-sm, .75rem);border:1px solid rgba(255,255,255,.2);border-radius:var(--border-radius-sm, 4px);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)}.payment-input:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 2px #de1a8333}.payment-input:disabled{background-color:var(--color-surface);opacity:.7;cursor:not-allowed}.card-number-input{letter-spacing:2px;font-weight:var(--font-weight-medium, 500)}.card-brand-badge{position:absolute;right:var(--spacing-sm);top:50%;transform:translateY(-50%);font-size:var(--font-size-small, .875rem);color:var(--color-text-secondary);background-color:#ffffff0d;padding:2px 8px;border-radius:4px;pointer-events:none;margin-top:12px}.input-row{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-sm, .75rem)}.payment-error{padding:var(--spacing-sm);background-color:#ff6b6b1a;border:1px solid rgba(255,107,107,.3);border-radius:var(--border-radius-sm, 4px);color:#ff6b6b;font-size:var(--font-size-small, .875rem);text-align:center}.payment-actions{display:flex;gap:var(--spacing-sm, .75rem);margin-top:var(--spacing-sm)}.payment-button{flex:1;padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--border-radius-sm, 4px);font-size:var(--font-size-body, 1rem);font-weight:var(--font-weight-medium, 500);cursor:pointer;transition:all .2s ease;border:none;display:flex;align-items:center;justify-content:center;gap:8px}.payment-button.primary{background-color:var(--color-primary);color:#fff}.payment-button.primary:hover:not(:disabled){background-color:var(--color-primary-dark, #b91c73);transform:translateY(-1px);box-shadow:0 4px 8px #0003}.payment-button.secondary{background-color:transparent;border:1px solid rgba(255,255,255,.2);color:var(--color-text-primary)}.payment-button.secondary:hover:not(:disabled){border-color:#fff6;background-color:#ffffff0d}.payment-button:disabled{opacity:.5;cursor:not-allowed}.spinner{width:16px;height:16px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin .6s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.secure-badge{text-align:center;font-size:var(--font-size-small, .875rem);color:var(--color-text-secondary);padding:var(--spacing-xs);margin-top:var(--spacing-xs)}@media (max-width: 480px){.payment-amount{font-size:28px}.payment-actions{flex-direction:column}.input-row{grid-template-columns:1fr}}@keyframes slideIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.inline-payment-widget{animation:slideIn .3s ease-out}.message-container{display:flex;flex-direction:column;max-width:90%;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}.message-bubble table{width:100%;border-collapse:separate;border-spacing:4px;overflow-x:auto;display:block;margin:15px 0}.message-bubble table td,.message-bubble table th{vertical-align:baseline;padding:5px}.message-bubble table:first-child{margin-top:0}.message-bubble table:last-child{margin-bottom:0}.message-bubble del{text-decoration:line-through;opacity:.7}.message-bubble input[type=checkbox]{margin-right:.5rem;accent-color:var(--color-primary)}.message-bubble ul.contains-task-list{list-style:none;padding-left:0}.message-bubble li.task-list-item{display:flex;align-items:flex-start;gap:.5rem}.message-file-attachments{display:flex;flex-direction:column;gap:8px;margin-top:12px}.file-attachment-link{display:flex;align-items:center;gap:12px;padding:12px;background:#ffffff0d;border-radius:10px;text-decoration:none;transition:all .2s cubic-bezier(.16,1,.3,1);border:1px solid rgba(255,255,255,.1);max-width:320px}.file-attachment-link:hover{background:#ffffff14;transform:translateY(-1px);box-shadow:0 2px 8px #00000026}.file-attachment-link:active{transform:translateY(0)}.file-attachment-icon{flex-shrink:0;width:40px;height:40px;display:flex;align-items:center;justify-content:center;background:#de1a8326;border-radius:8px;color:var(--color-primary)}.file-attachment-info{flex:1;min-width:0}.file-attachment-name{font-size:.875rem;font-weight:500;color:var(--color-text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.file-attachment-size{font-size:.75rem;color:var(--color-text-secondary);margin-top:2px}.user-message .file-attachment-link{background:#ffffff26;border-color:#fff3}.user-message .file-attachment-link:hover{background:#ffffff40}.user-message .file-attachment-icon{background:#fff3;color:#fff}.user-message .file-attachment-name{color:#fff}.user-message .file-attachment-size{color:#fffc}.message-actions{display:flex;flex-direction:column;gap:8px;margin-top:12px;padding-top:12px;border-top:1px solid rgba(255,255,255,.08)}.message-action-button{display:flex;align-items:center;gap:12px;width:100%;padding:14px 16px;background:linear-gradient(135deg,#de1a831f,#f98e2d14);border:1px solid rgba(222,26,131,.25);border-radius:12px;cursor:pointer;transition:all .25s cubic-bezier(.16,1,.3,1);text-align:left;font-family:inherit;position:relative;overflow:hidden}.message-action-button:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.08),transparent);transition:left .5s ease}.message-action-button:hover:before{left:100%}.message-action-button:hover{background:linear-gradient(135deg,#de1a8333,#f98e2d26);border-color:#de1a8366;transform:translateY(-2px);box-shadow:0 4px 12px #de1a8333,0 2px 4px #0000001a}.message-action-button:active{transform:translateY(0);box-shadow:0 2px 8px #de1a8326}.message-action-button:focus{outline:none;box-shadow:0 0 0 2px var(--color-surface),0 0 0 4px var(--color-primary)}.message-action-button:focus:not(:focus-visible){box-shadow:none}.message-action-button:focus-visible{box-shadow:0 0 0 2px var(--color-surface),0 0 0 4px var(--color-primary)}.action-button-icon{flex-shrink:0;display:flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:10px;color:#fff;transition:transform .25s cubic-bezier(.16,1,.3,1)}.message-action-button:hover .action-button-icon{transform:scale(1.08)}.action-button-label{flex:1;font-size:.9375rem;font-weight:500;color:var(--color-text-primary);letter-spacing:-.01em}.action-button-arrow{flex-shrink:0;display:flex;align-items:center;justify-content:center;color:var(--color-primary);opacity:.7;transition:all .25s cubic-bezier(.16,1,.3,1)}.message-action-button:hover .action-button-arrow{opacity:1;transform:translate(4px)}.user-message .message-actions{border-top-color:#ffffff26}.user-message .message-action-button{background:linear-gradient(135deg,#ffffff2e,#ffffff1f);border-color:#ffffff40}.user-message .message-action-button:hover{background:linear-gradient(135deg,#ffffff47,#fff3);border-color:#fff6;box-shadow:0 4px 12px #0003,0 2px 4px #0000001a}.user-message .action-button-icon{background:linear-gradient(135deg,#fffffff2,#ffffffd9);color:var(--color-primary)}.user-message .action-button-label,.user-message .action-button-arrow{color:#fff}.message-actions .message-action-button:not(:last-child){margin-bottom:0}@media (max-width: 480px){.message-action-button{padding:12px 14px;gap:10px}.action-button-icon{width:32px;height:32px;border-radius:8px}.action-button-icon svg{width:16px;height:16px}.action-button-label{font-size:.875rem}}@keyframes actionButtonSlideIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.message-actions .message-action-button{animation:actionButtonSlideIn .3s cubic-bezier(.16,1,.3,1) forwards}.message-actions .message-action-button:nth-child(2){animation-delay:.05s}.message-actions .message-action-button:nth-child(3){animation-delay:.1s}.message-actions .message-action-button:nth-child(4){animation-delay:.15s}.image-lightbox-overlay{position:fixed;inset:0;background-color:#000000f5;z-index:9999;display:flex;align-items:center;justify-content:center;padding:20px;animation:lightbox-fade-in .3s cubic-bezier(.16,1,.3,1);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}@keyframes lightbox-fade-in{0%{opacity:0;backdrop-filter:blur(0px);-webkit-backdrop-filter:blur(0px)}to{opacity:1;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}}.image-lightbox-container{position:relative;max-width:95vw;max-height:95vh;animation:lightbox-zoom-in .4s cubic-bezier(.16,1,.3,1)}@keyframes lightbox-zoom-in{0%{opacity:0;transform:scale(.85)}to{opacity:1;transform:scale(1)}}.image-lightbox-top-bar{position:absolute;top:0;left:0;right:0;display:flex;justify-content:space-between;align-items:center;padding:20px;z-index:11;gap:16px;opacity:1;transition:opacity .3s ease,transform .3s ease;pointer-events:auto}.image-lightbox-top-bar.hidden{opacity:0;transform:translateY(-20px);pointer-events:none}.image-lightbox-top-bar.visible{opacity:1;transform:translateY(0);pointer-events:auto}.image-lightbox-counter{background:#000000b3;color:#fff;padding:10px 18px;border-radius:24px;font-size:.9rem;font-weight:600;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}.image-lightbox-close{background:#000000b3;border:2px solid rgba(255,255,255,.4);color:#fff;width:48px;height:48px;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .3s cubic-bezier(.16,1,.3,1);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);flex-shrink:0;-webkit-tap-highlight-color:transparent;box-shadow:0 4px 12px #0006}.image-lightbox-close:hover{background:#000000d9;border-color:#fff9;transform:scale(1.1) rotate(90deg)}.image-lightbox-close:active{transform:scale(.95) rotate(90deg)}.image-lightbox-close svg{width:24px;height:24px;filter:drop-shadow(0 1px 2px rgba(0,0,0,.5))}.image-lightbox-nav{position:absolute;top:50%;transform:translateY(-50%);background:#000000b3;border:1px solid rgba(255,255,255,.15);color:#fff;width:64px;height:64px;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .3s cubic-bezier(.16,1,.3,1);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);z-index:10;opacity:1;-webkit-tap-highlight-color:transparent}.image-lightbox-nav.hidden{opacity:0;pointer-events:none}.image-lightbox-nav.visible{opacity:1;pointer-events:auto}.image-lightbox-nav:hover{background:#000000d9;border-color:#ffffff40;transform:translateY(-50%) scale(1.1)}.image-lightbox-nav:active{transform:translateY(-50%) scale(.95)}.image-lightbox-nav-prev{left:24px}.image-lightbox-nav-next{right:24px}.image-lightbox-content{position:relative;display:flex;align-items:center;justify-content:center;max-width:100%;max-height:95vh;overflow:hidden;-webkit-user-select:none;user-select:none}.image-lightbox-img{max-width:100%;max-height:90vh;width:auto;height:auto;object-fit:contain;border-radius:16px;box-shadow:0 30px 80px -20px #000c;animation:image-appear .4s cubic-bezier(.16,1,.3,1) .1s both;transform-origin:center center}@keyframes image-appear{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}.image-lightbox-caption{position:absolute;bottom:20px;left:50%;transform:translate(-50%);color:#fff;background:#0009;padding:8px 16px;border-radius:20px;font-size:.875rem;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);white-space:nowrap;max-width:90vw;overflow:hidden;text-overflow:ellipsis;z-index:5}.image-lightbox-hint{position:absolute;bottom:70px;left:50%;transform:translate(-50%);color:#ffffffb3;background:#0006;padding:6px 12px;border-radius:16px;font-size:.75rem;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);animation:hint-fade-in .3s ease-in .5s both;pointer-events:none}@keyframes hint-fade-in{0%{opacity:0;transform:translate(-50%) translateY(10px)}to{opacity:1;transform:translate(-50%) translateY(0)}}@media (max-width: 768px){.image-lightbox-overlay{padding:0}.image-lightbox-top-bar{padding:16px;flex-wrap:wrap;gap:12px}.image-lightbox-counter{padding:12px 20px;font-size:.85rem}.image-lightbox-close{width:52px;height:52px}.image-lightbox-close svg{width:26px;height:26px}.image-lightbox-nav{width:72px;height:72px}.image-lightbox-nav svg{width:36px;height:36px}.image-lightbox-nav-prev{left:16px}.image-lightbox-nav-next{right:16px}.image-lightbox-img{max-height:85vh;border-radius:12px}.image-lightbox-caption{bottom:16px;font-size:.8rem;padding:10px 16px}.image-lightbox-hint{bottom:80px;font-size:.8rem;padding:10px 16px}}@media (hover: none) and (pointer: coarse){.image-lightbox-close:hover{background:#ffffff26;transform:none}.image-lightbox-close:active{background:#ffffff4d;transform:scale(.95)}.image-lightbox-nav:hover{background:#000000b3;transform:translateY(-50%)}.image-lightbox-nav:active{background:#000000d9;transform:translateY(-50%) scale(.95)}}.image-gallery{margin-top:12px;width:fit-content;max-width:100%}.image-gallery-grid{display:grid;gap:3px;border-radius:8px;overflow:hidden}.image-gallery-grid-single{grid-template-columns:1fr;max-width:120px}.image-gallery-grid-single .image-gallery-item{width:120px;height:120px}.image-gallery-grid-double{grid-template-columns:repeat(2,1fr);max-width:160px}.image-gallery-grid-double .image-gallery-item{width:78px;height:78px}.image-gallery-grid-triple{grid-template-columns:repeat(2,1fr);max-width:160px}.image-gallery-grid-triple .image-gallery-item:first-child{grid-row:span 2;width:78px;height:160px}.image-gallery-grid-triple .image-gallery-item:not(:first-child){width:78px;height:78px}.image-gallery-grid-multiple{grid-template-columns:repeat(2,1fr);max-width:160px}.image-gallery-grid-multiple .image-gallery-item{width:78px;height:78px}.image-gallery-grid-multiple .image-gallery-item:nth-child(n+5){display:none}.image-gallery-item{position:relative;overflow:hidden;cursor:pointer;background:linear-gradient(135deg,#f0f0f0,#e8e8e8);transition:all .25s cubic-bezier(.16,1,.3,1);border-radius:6px;display:flex;align-items:center;justify-content:center}.image-gallery-item:hover{transform:scale(1.05);z-index:1;box-shadow:0 4px 12px #00000026}.image-gallery-item:active{transform:scale(.95)}.image-gallery-item:focus-visible{outline:3px solid #DE1A83;outline-offset:2px}.image-gallery-thumbnail{width:100%;height:100%;object-fit:cover;object-position:center center;display:block;transition:transform .3s cubic-bezier(.16,1,.3,1)}.image-gallery-item:hover .image-gallery-thumbnail{transform:scale(1.05)}.image-gallery-overlay{position:absolute;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity .25s ease;pointer-events:none;border-radius:6px}.image-gallery-item:hover .image-gallery-overlay{opacity:1}.image-gallery-zoom-icon{color:#fff;filter:drop-shadow(0 2px 4px rgba(0,0,0,.4));width:20px;height:20px;transform:scale(.8);transition:transform .25s cubic-bezier(.16,1,.3,1)}.image-gallery-item:hover .image-gallery-zoom-icon{transform:scale(1)}.image-gallery-count{position:absolute;bottom:3px;right:3px;background:#000c;color:#fff;padding:2px 5px;border-radius:6px;font-size:.6rem;font-weight:600;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);pointer-events:none;line-height:1}.image-gallery-caption{display:none}.image-gallery-thumbnail{animation:image-fade-in .3s ease-in}@keyframes image-fade-in{0%{opacity:0}to{opacity:1}}@media (max-width: 768px){.image-gallery{margin-top:10px}.image-gallery-grid{gap:2px}}@media (max-width: 480px){.image-gallery{margin-top:10px}.image-gallery-grid{gap:2px}.image-gallery-grid-single{max-width:100px}.image-gallery-grid-single .image-gallery-item{width:100px;height:100px}.image-gallery-grid-double{max-width:140px}.image-gallery-grid-double .image-gallery-item{width:69px;height:69px}.image-gallery-grid-triple,.image-gallery-grid-multiple{max-width:140px}.image-gallery-grid-triple .image-gallery-item:first-child{width:69px;height:140px}.image-gallery-grid-triple .image-gallery-item:not(:first-child){width:69px;height:69px}.image-gallery-grid-multiple .image-gallery-item{width:69px;height:69px}.image-gallery-zoom-icon{width:16px;height:16px}}@media (hover: none) and (pointer: coarse){.image-gallery-item:hover,.image-gallery-item:hover .image-gallery-thumbnail{transform:none}.image-gallery-overlay{opacity:0}.image-gallery-item:active .image-gallery-overlay{opacity:1}}@media (prefers-contrast: more){.image-gallery-item{border:2px solid currentColor}.image-gallery-overlay{background:#000000b3}}@media (prefers-reduced-motion: reduce){.image-gallery-item,.image-gallery-thumbnail,.image-gallery-overlay,.image-gallery-zoom-icon{transition:none}.image-gallery-item:hover,.image-gallery-item:hover .image-gallery-thumbnail{transform:none}.image-gallery-thumbnail{animation:none}}.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}}.thread-panel-backdrop{position:fixed;inset:0;background-color:#0000;z-index:9999;display:flex;justify-content:flex-end;pointer-events:none;transition:background-color .3s cubic-bezier(.16,1,.3,1)}.thread-panel-backdrop.open{background-color:#00000080;pointer-events:auto;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px)}.thread-panel{width:100%;max-width:420px;height:100%;background-color:var(--color-background);display:flex;flex-direction:column;transform:translate(100%);transition:transform .3s cubic-bezier(.16,1,.3,1);box-shadow:-8px 0 32px #0000004d;pointer-events:auto;position:relative;overflow:hidden}.thread-panel.open{transform:translate(0)}.thread-panel:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,var(--color-primary) 0%,var(--color-accent) 100%);z-index:10}.thread-panel-header{display:flex;align-items:center;gap:12px;padding:16px 16px 16px 12px;background-color:var(--color-surface);border-bottom:1px solid rgba(255,255,255,.08);min-height:64px;transition:all .3s cubic-bezier(.16,1,.3,1)}.thread-panel-header.minimized{padding:8px 12px;min-height:44px;gap:8px;cursor:pointer}.thread-panel-header.minimized:hover{background-color:#ffffff0d}.thread-panel-header.minimized .thread-panel-back-button,.thread-panel-header.minimized .thread-panel-close-button{width:28px;height:28px}.thread-panel-header.minimized .thread-panel-back-button svg,.thread-panel-header.minimized .thread-panel-close-button svg{width:16px;height:16px}.thread-panel-header.minimized .thread-panel-icon{width:28px;height:28px;border-radius:8px}.thread-panel-header.minimized .thread-panel-icon svg{width:14px;height:14px}.thread-panel-header.minimized .thread-panel-title{font-size:.8125rem}.thread-panel-header.minimized .thread-panel-title-text{gap:0}.thread-panel-progress-badge{display:inline-flex;align-items:center;justify-content:center;padding:2px 8px;background:rgba(var(--color-primary-rgb, 99, 102, 241),.2);border-radius:10px;font-size:.6875rem;font-weight:600;color:var(--color-primary);margin-left:auto;flex-shrink:0}.thread-panel-expand-hint{display:flex;align-items:center;justify-content:center;color:var(--color-text-secondary);opacity:.6;animation:bounceHint 2s ease-in-out infinite;flex-shrink:0}@keyframes bounceHint{0%,to{transform:translateY(0)}50%{transform:translateY(2px)}}.thread-panel-title-container{flex:1;display:flex;align-items:center;gap:12px;min-width:0;transition:gap .3s cubic-bezier(.16,1,.3,1)}.thread-panel-back-button{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:10px;border:none;background-color:transparent;color:var(--color-text-secondary);cursor:pointer;transition:all .2s cubic-bezier(.16,1,.3,1);flex-shrink:0}.thread-panel-back-button:hover{background-color:#ffffff14;color:var(--color-text-primary)}.thread-panel-back-button:active{transform:scale(.95)}.thread-panel-icon{display:flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:12px;color:#fff;flex-shrink:0;animation:iconPulse .5s cubic-bezier(.16,1,.3,1);transition:all .3s cubic-bezier(.16,1,.3,1)}@keyframes iconPulse{0%{transform:scale(.8);opacity:0}50%{transform:scale(1.1)}to{transform:scale(1);opacity:1}}.thread-panel-title-text{display:flex;flex-direction:column;gap:2px;min-width:0;transition:gap .3s cubic-bezier(.16,1,.3,1)}.thread-panel-title{font-size:1rem;font-weight:var(--font-weight-semibold);color:var(--color-text-primary);margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;animation:slideInTitle .4s cubic-bezier(.16,1,.3,1) .1s both;transition:font-size .3s cubic-bezier(.16,1,.3,1)}.thread-panel-business-name{font-size:.75rem;color:var(--color-text-secondary);margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;animation:slideInTitle .4s cubic-bezier(.16,1,.3,1) .15s both}@keyframes slideInTitle{0%{opacity:0;transform:translate(-10px)}to{opacity:1;transform:translate(0)}}.thread-panel-close-button{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:10px;border:none;background-color:transparent;color:var(--color-text-secondary);cursor:pointer;transition:all .2s cubic-bezier(.16,1,.3,1);flex-shrink:0}.thread-panel-close-button:hover{background-color:#ff525226;color:var(--color-error)}.thread-panel-close-button:active{transform:scale(.95)}.thread-panel-context{padding:12px 16px;background-color:#ffffff08;border-bottom:1px solid rgba(255,255,255,.06);animation:fadeInContext .4s cubic-bezier(.16,1,.3,1) .2s both}@keyframes fadeInContext{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.thread-context-label{display:flex;align-items:center;gap:6px;font-size:.8125rem;color:var(--color-text-primary);margin-bottom:4px;font-weight:var(--font-weight-semibold)}.thread-context-label svg{color:var(--color-primary);flex-shrink:0}.thread-context-message{margin:0;font-size:.8125rem;color:var(--color-text-secondary);line-height:1.4}.thread-panel-content{flex:1;overflow-y:auto;padding:20px 16px;display:flex;flex-direction:column}.thread-empty-state{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:40px 20px;animation:fadeInEmpty .5s cubic-bezier(.16,1,.3,1) .3s both}@keyframes fadeInEmpty{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.thread-empty-icon{width:72px;height:72px;border-radius:20px;background:linear-gradient(135deg,#de1a8326,#f98e2d1a);display:flex;align-items:center;justify-content:center;margin-bottom:20px;color:var(--color-primary);animation:floatIcon 3s ease-in-out infinite}@keyframes floatIcon{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}.thread-empty-icon svg{width:32px;height:32px}.thread-empty-title{font-size:1.125rem;font-weight:var(--font-weight-semibold);color:var(--color-text-primary);margin:0 0 8px}.thread-empty-description{font-size:.875rem;color:var(--color-text-secondary);margin:0;max-width:280px;line-height:1.5}.thread-panel-input-area{padding:16px;background-color:var(--color-background);border-top:1px solid rgba(255,255,255,.08);animation:slideUpInput .4s cubic-bezier(.16,1,.3,1) .25s both}@keyframes slideUpInput{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.thread-input-container{display:flex;align-items:center;gap:10px;background-color:var(--color-surface);border-radius:var(--border-radius-lg);padding:12px 12px 12px 16px;box-shadow:0 -1px 4px #0000004d}.thread-input{flex:1;border:none;background:transparent;color:var(--color-text-primary);font-size:var(--font-size-body);font-family:var(--font-family-primary);outline:none;min-width:0;line-height:1.4;padding:var(--spacing-xs) 0}.thread-input::placeholder{color:var(--color-text-secondary);opacity:1}.thread-input:disabled{opacity:.5}.thread-send-button{display:flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:50%;border:2px solid var(--color-secondary);background-color:var(--color-secondary);color:#fff;cursor:pointer;transition:all .2s ease;flex-shrink:0}.thread-send-button:hover:not(:disabled){background-color:var(--color-primary);border-color:var(--color-primary);transform:scale(1.05);box-shadow:0 4px 12px #f98e2d4d}.thread-send-button:active:not(:disabled){transform:scale(.98)}.thread-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}.thread-question-counter{display:flex;align-items:center;justify-content:center;min-width:40px;height:24px;padding:0 8px;margin-left:8px;background:#ffffff14;border:1px solid rgba(255,255,255,.12);border-radius:12px;font-size:.75rem;font-weight:var(--font-weight-medium);color:var(--color-text-secondary);flex-shrink:0;animation:fadeIn .3s ease}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.thread-smart-replies-container{padding:16px 16px 8px;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}.thread-smart-replies-label{display:flex;align-items:center;gap:8px;font-size:.6875rem;color:var(--color-text-secondary);margin-bottom:12px;text-transform:uppercase;letter-spacing:1.2px;font-weight:600}.thread-smart-replies-label:before{content:"";display:inline-block;width:4px;height:4px;background:var(--color-primary);border-radius:50%;animation:pulse-dot 2s ease-in-out infinite}@keyframes pulse-dot{0%,to{opacity:.4;transform:scale(1)}50%{opacity:1;transform:scale(1.2)}}.thread-smart-replies{display:flex;flex-wrap:wrap;gap:10px;overflow-x:auto;scrollbar-width:none;-ms-overflow-style:none;padding:4px 2px 8px}.thread-smart-replies::-webkit-scrollbar{display:none}@media (max-width: 480px){.thread-smart-replies:not(.multiple-choice){flex-wrap:nowrap;overflow-x:auto;-webkit-overflow-scrolling:touch;margin:0 -8px;padding:4px 8px 12px;scroll-snap-type:x mandatory}.thread-smart-replies:not(.multiple-choice) .thread-smart-reply-button{scroll-snap-align:start;padding:10px 16px;font-size:.8125rem;min-width:fit-content;max-width:200px}}.thread-smart-reply-button{position:relative;background:linear-gradient(135deg,#ffffff14,#ffffff0a);border:1px solid rgba(255,255,255,.12);border-radius:12px;padding:12px 20px;font-size:.875rem;color:var(--color-text-primary);cursor:pointer;white-space:nowrap;flex-shrink:0;transition:all .3s cubic-bezier(.16,1,.3,1);box-shadow:0 2px 8px #00000026,inset 0 1px #ffffff0d;font-weight:500;letter-spacing:.2px;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);overflow:hidden}.thread-smart-reply-button:before{content:"";position:absolute;inset:0;background:linear-gradient(135deg,transparent 0%,rgba(255,255,255,.05) 50%,transparent 100%);opacity:0;transition:opacity .3s ease}.thread-smart-reply-button:hover:not(:disabled){background:linear-gradient(135deg,rgba(var(--color-primary-rgb, 99, 102, 241),.15),rgba(var(--color-primary-rgb, 99, 102, 241),.08));border-color:rgba(var(--color-primary-rgb, 99, 102, 241),.4);color:var(--color-primary);transform:translateY(-2px);box-shadow:0 4px 16px rgba(var(--color-primary-rgb, 99, 102, 241),.2),0 2px 8px #00000026,inset 0 1px #ffffff1a}.thread-smart-reply-button:hover:not(:disabled):before{opacity:1}.thread-smart-reply-button:active:not(:disabled){transform:translateY(0);box-shadow:0 2px 8px #0003,inset 0 1px 2px #0000001a;transition-duration:.1s}.thread-smart-reply-button:disabled{opacity:.4;cursor:not-allowed;transform:none;background:#ffffff08;color:var(--color-text-secondary);border-color:#ffffff0f;box-shadow:none}.thread-smart-replies.multiple-choice{flex-direction:column;gap:8px}.thread-smart-reply-button.checkbox-style{display:flex;align-items:center;gap:12px;width:100%;text-align:left;white-space:normal;padding:14px 18px}.thread-smart-reply-button.checkbox-style .checkbox-indicator{display:flex;align-items:center;justify-content:center;width:22px;height:22px;min-width:22px;border:2px solid rgba(255,255,255,.3);border-radius:6px;font-size:.8rem;font-weight:700;color:transparent;transition:all .2s cubic-bezier(.16,1,.3,1);background:#ffffff0d}.thread-smart-reply-button.checkbox-style.selected{background:linear-gradient(135deg,rgba(var(--color-primary-rgb, 99, 102, 241),.2),rgba(var(--color-primary-rgb, 99, 102, 241),.1));border-color:var(--color-primary)}.thread-smart-reply-button.checkbox-style.selected .checkbox-indicator{background:var(--color-primary);border-color:var(--color-primary);color:#fff}.thread-smart-reply-button.checkbox-style:hover:not(:disabled){transform:translateY(-1px)}.thread-multiple-choice-submit{width:100%;margin-top:12px;padding:14px 20px;background:linear-gradient(135deg,var(--color-primary) 0%,var(--color-primary-dark, #4f46e5) 100%);border:none;border-radius:12px;font-size:.9375rem;font-weight:600;color:#fff;cursor:pointer;transition:all .2s cubic-bezier(.16,1,.3,1);box-shadow:0 4px 12px rgba(var(--color-primary-rgb, 99, 102, 241),.3),0 2px 4px #0003}.thread-multiple-choice-submit:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 20px rgba(var(--color-primary-rgb, 99, 102, 241),.4),0 4px 8px #0003}.thread-multiple-choice-submit:active:not(:disabled){transform:translateY(0);box-shadow:0 2px 8px rgba(var(--color-primary-rgb, 99, 102, 241),.2),0 1px 2px #0003}.thread-multiple-choice-submit:disabled{opacity:.5;cursor:not-allowed;transform:none;background:#ffffff1a;box-shadow:none}@media (max-width: 480px){.thread-panel{max-width:100%}.thread-panel-header{padding:14px 12px}.thread-panel-icon{width:36px;height:36px;border-radius:10px}.thread-panel-icon svg{width:18px;height:18px}.thread-panel-title{font-size:.9375rem}.thread-empty-icon{width:60px;height:60px;border-radius:16px}.thread-empty-icon svg{width:28px;height:28px}.thread-smart-replies-container{padding:12px 12px 6px}.thread-smart-replies-label{font-size:.625rem;margin-bottom:10px}.thread-smart-replies.multiple-choice{gap:6px}.thread-smart-reply-button.checkbox-style{padding:10px 14px;font-size:.8125rem;gap:10px}.thread-smart-reply-button.checkbox-style .checkbox-indicator{width:18px;height:18px;min-width:18px;border-radius:4px;font-size:.7rem}.thread-multiple-choice-submit{margin-top:10px;padding:12px 16px;font-size:.875rem}}.thread-panel-content::-webkit-scrollbar{width:6px}.thread-panel-content::-webkit-scrollbar-track{background:transparent}.thread-panel-content::-webkit-scrollbar-thumb{background-color:#ffffff26;border-radius:3px}.thread-panel-content::-webkit-scrollbar-thumb:hover{background-color:#ffffff40}@media (prefers-reduced-motion: reduce){.thread-panel-backdrop,.thread-panel,.thread-panel-icon,.thread-panel-title,.thread-panel-context,.thread-empty-state,.thread-panel-input-area,.thread-panel-back-button,.thread-panel-close-button,.thread-send-button{transition:none;animation:none}.thread-empty-icon{animation:none}}.thread-messages{display:flex;flex-direction:column;gap:12px;padding:16px 16px 24px;min-height:100%}.thread-messages-end-spacer{min-height:20px;flex-shrink:0}.thread-panel-content .chat-message{display:flex;animation:messageSlideIn .3s cubic-bezier(.16,1,.3,1)}@keyframes messageSlideIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.thread-panel-content .chat-message.user-message{justify-content:flex-end}.thread-panel-content .chat-message.ai-message{justify-content:flex-start}.thread-panel-content .message-bubble{padding:12px 16px;border-radius:18px;font-size:var(--font-size-body);line-height:1.5;word-wrap:break-word}.thread-panel-content .user-message .message-bubble{background:linear-gradient(135deg,var(--color-primary) 0%,var(--color-accent) 100%);color:#fff;border-bottom-right-radius:6px}.thread-panel-content .ai-message .message-bubble{background-color:var(--color-surface);color:var(--color-text-primary);border-bottom-left-radius:6px;border:1px solid rgba(255,255,255,.08)}.thread-panel-content .chat-message.error .message-bubble{background-color:#ef444426;border:1px solid rgba(239,68,68,.3);color:#fca5a5}.thread-panel-content .ai-message .message-bubble p{margin:0}.thread-panel-content .ai-message .message-bubble p+p{margin-top:.75em}.thread-panel-content .ai-message .message-bubble ul,.thread-panel-content .ai-message .message-bubble ol{margin:.5em 0;padding-left:1.5em}.thread-panel-content .ai-message .message-bubble li{margin:.25em 0}.thread-panel-content .ai-message .message-bubble strong{font-weight:var(--font-weight-semibold)}.thread-panel-content .ai-message .message-bubble code{background-color:#ffffff1a;padding:.1em .4em;border-radius:4px;font-family:monospace;font-size:.9em}.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)}.thread-panel-content .typing-bubble{padding:16px 20px}.thread-panel-content .typing-indicator{display:flex;align-items:center;gap:4px}.thread-panel-content .typing-dot{width:8px;height:8px;border-radius:50%;background-color:var(--color-text-secondary);animation:typingDot 1.4s infinite ease-in-out both}.thread-panel-content .typing-dot:nth-child(1){animation-delay:-.32s}.thread-panel-content .typing-dot:nth-child(2){animation-delay:-.16s}.thread-panel-content .typing-dot:nth-child(3){animation-delay:0s}@keyframes typingDot{0%,80%,to{transform:scale(.6);opacity:.5}40%{transform:scale(1);opacity:1}}.thread-loading-dots{display:flex;align-items:center;justify-content:center;gap:6px;margin-top:16px}.thread-loading-dots span{width:10px;height:10px;border-radius:50%;background:linear-gradient(135deg,var(--color-primary) 0%,var(--color-accent) 100%);animation:loadingDotBounce 1.4s infinite ease-in-out both}.thread-loading-dots span:nth-child(1){animation-delay:-.32s}.thread-loading-dots span:nth-child(2){animation-delay:-.16s}.thread-loading-dots span:nth-child(3){animation-delay:0s}@keyframes loadingDotBounce{0%,80%,to{transform:translateY(0);opacity:.5}40%{transform:translateY(-12px);opacity:1}}.thread-completion-banner{display:flex;align-items:center;gap:16px;padding:16px 20px;margin-top:16px;background:linear-gradient(135deg,#22c55e26,#10b9811a);border:1px solid rgba(34,197,94,.3);border-radius:16px;animation:completionSlideIn .5s cubic-bezier(.16,1,.3,1)}@keyframes completionSlideIn{0%{opacity:0;transform:translateY(20px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.completion-icon{width:44px;height:44px;border-radius:50%;background:linear-gradient(135deg,#22c55e,#10b981);color:#fff;display:flex;align-items:center;justify-content:center;font-size:1.25rem;font-weight:700;flex-shrink:0;animation:completionIconPop .5s cubic-bezier(.68,-.55,.265,1.55) .2s both}@keyframes completionIconPop{0%{transform:scale(0)}to{transform:scale(1)}}.completion-text{flex:1}.completion-text strong{display:block;color:#22c55e;font-size:.9375rem;margin-bottom:2px}.completion-text p{margin:0;color:var(--color-text-secondary);font-size:.8125rem;line-height:1.4}.completion-close-button{padding:8px 16px;background:linear-gradient(135deg,#22c55e,#10b981);color:#fff;border:none;border-radius:8px;font-size:.875rem;font-weight:var(--font-weight-medium);cursor:pointer;transition:all .2s ease;flex-shrink:0}.completion-close-button:hover{transform:translateY(-1px);box-shadow:0 4px 12px #22c55e4d}.completion-close-button:active{transform:translateY(0)}.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}
