.message-list{flex:1;overflow-y:auto;padding:var(--spacing-md);display:flex;flex-direction:column;gap:var(--spacing-sm);background-color:var(--color-rich-black)}.message-list::-webkit-scrollbar{width:6px}.message-list::-webkit-scrollbar-track{background:var(--surface-1)}.message-list::-webkit-scrollbar-thumb{background:var(--surface-3);border-radius:3px}.message-list::-webkit-scrollbar-thumb:hover{background:var(--color-refracted-cyan)}.message-list--empty{justify-content:center;align-items:center;text-align:center;color:var(--text-secondary)}.message-list__hint{font-size:14px;color:var(--text-secondary);margin-top:var(--spacing-sm);opacity:.7}.message{max-width:80%;padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--radius-lg);word-wrap:break-word}.message--user{align-self:flex-end;background:linear-gradient(135deg,var(--color-refracted-cyan) 0%,var(--surface-5) 100%);color:var(--text-on-secondary);border-bottom-right-radius:var(--radius-sm)}.message--assistant{align-self:flex-start;background-color:var(--surface-2);color:var(--text-primary);border-bottom-left-radius:var(--radius-sm);border:1px solid var(--surface-3)}.message--error{opacity:.7}.message__content{line-height:1.5;white-space:pre-wrap}.message__content a{color:var(--color-glint);text-decoration:underline;text-underline-offset:2px;transition:color var(--transition-normal)}.message__content a:hover{color:var(--color-refracted-cyan)}.message--user .message__content a{color:var(--text-on-secondary);font-weight:500}.message__action-button{margin-top:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);background:linear-gradient(90deg,var(--color-glint) 0%,var(--color-glint) 100%);color:var(--text-on-primary);border:none;border-radius:var(--radius-pill);font-size:14px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;cursor:pointer;transition:all var(--transition-normal)}.message__action-button:hover{background:linear-gradient(90deg,var(--color-glint) 0%,var(--color-refracted-cyan) 100%)}.message__action-button:active{transform:scale(.98)}.message__meta{display:flex;gap:var(--spacing-sm);margin-top:var(--spacing-xs);font-size:11px;opacity:.6}.message--user .message__meta{justify-content:flex-end;color:var(--text-on-secondary)}.message--assistant .message__meta{color:var(--text-secondary)}.message__status--error{color:var(--color-error)}.message--loading{padding:var(--spacing-md)}.typing-indicator{display:flex;gap:4px;align-items:center}.typing-indicator span{width:8px;height:8px;background-color:var(--color-refracted-cyan);border-radius:50%;animation:typing 1.4s infinite ease-in-out both}.typing-indicator span:nth-child(1){animation-delay:-.32s}.typing-indicator span:nth-child(2){animation-delay:-.16s}@keyframes typing{0%,80%,to{transform:scale(.6);opacity:.4}40%{transform:scale(1);opacity:1;background-color:var(--color-glint)}}.message-input{display:flex;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);border-top:1px solid var(--surface-3);background-color:var(--surface-1)}.message-input__textarea{flex:1;padding:var(--spacing-sm) var(--spacing-md);border:1px solid var(--surface-3);border-radius:var(--radius-pill);font-size:14px;font-family:inherit;resize:none;outline:none;height:40px;line-height:1.4;background-color:var(--surface-2);color:var(--text-primary);transition:border-color var(--transition-normal),box-shadow var(--transition-normal);overflow-y:auto;scrollbar-width:none;-ms-overflow-style:none}.message-input__textarea::-webkit-scrollbar{display:none}.message-input__textarea:focus{border-color:var(--color-glint);box-shadow:0 0 0 2px #d2ff0033}.message-input__textarea:disabled{background-color:var(--surface-1);color:var(--text-secondary);cursor:not-allowed;opacity:.6}.message-input__textarea::placeholder{color:var(--text-secondary);opacity:.7}.message-input__button{width:40px;height:40px;border:none;border-radius:50%;background-color:var(--color-glint);color:var(--text-on-primary);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all var(--transition-normal);flex-shrink:0}.message-input__button:hover:not(:disabled){background:linear-gradient(135deg,var(--color-glint) 0%,var(--color-refracted-cyan) 100%);box-shadow:0 4px 12px #d2ff004d;transform:scale(1.05)}.message-input__button:active:not(:disabled){transform:scale(.95)}.message-input__button:disabled{background-color:var(--surface-3);color:var(--text-secondary);cursor:not-allowed;opacity:.5}.message-input__button svg{width:18px;height:18px}.auth-overlay{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;z-index:200}.auth-overlay__backdrop{position:absolute;inset:0;background-color:#021214d9;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.auth-overlay__modal{position:relative;background:linear-gradient(180deg,var(--surface-2) 0%,var(--surface-1) 100%);border-radius:var(--radius-lg);padding:var(--spacing-lg);margin:var(--spacing-lg);width:100%;max-width:380px;box-shadow:0 8px 32px #0006;border:1px solid var(--surface-3)}.auth-overlay__header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-sm)}.auth-overlay__title{margin:0;font-size:20px;font-weight:600;color:var(--text-primary);text-transform:uppercase;letter-spacing:.5px}.auth-overlay__close{width:32px;height:32px;border:none;background:transparent;color:var(--text-secondary);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:color var(--transition-normal)}.auth-overlay__close:hover{color:var(--text-primary)}.auth-overlay__close svg{width:32px;height:32px}.auth-overlay__description{margin:0 0 var(--spacing-lg);font-size:14px;color:var(--text-secondary)}.auth-overlay__form{display:flex;flex-direction:column;gap:var(--spacing-md)}.auth-overlay__error{padding:var(--spacing-sm);background-color:#ff383826;color:var(--color-error);border-radius:var(--radius-md);font-size:14px;border:1px solid rgba(255,56,56,.3)}.auth-overlay__field{display:flex;flex-direction:column;gap:var(--spacing-xs)}.auth-overlay__label{font-size:14px;font-weight:500;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px}.auth-overlay__input{padding:var(--spacing-sm);border:1px solid var(--surface-3);border-radius:var(--radius-md);font-size:14px;font-family:inherit;background-color:var(--surface-3);color:var(--text-primary);outline:none;transition:border-color var(--transition-normal),box-shadow var(--transition-normal)}.auth-overlay__input:-webkit-autofill,.auth-overlay__input:-webkit-autofill:hover,.auth-overlay__input:-webkit-autofill:focus{-webkit-box-shadow:0 0 0 1000px var(--surface-3) inset;-webkit-text-fill-color:var(--text-primary);caret-color:var(--text-primary)}.auth-overlay__input:focus{border-color:var(--color-glint);box-shadow:0 0 0 2px #d2ff0033}.auth-overlay__input:disabled{background-color:var(--surface-2);color:var(--text-secondary);opacity:.6}.auth-overlay__input::placeholder{color:var(--light-gray)}.auth-overlay__actions{display:flex;gap:var(--spacing-sm);margin-top:var(--spacing-sm)}.auth-overlay__button{flex:1;padding:var(--spacing-sm) var(--spacing-md);border:none;border-radius:var(--radius-pill);font-size:14px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;cursor:pointer;transition:all var(--transition-normal)}.auth-overlay__button:disabled{opacity:.5;cursor:not-allowed}.auth-overlay__button--primary{background:linear-gradient(90deg,var(--color-glint) 0%,var(--color-glint) 100%);color:var(--text-on-primary)}.auth-overlay__button--primary:hover:not(:disabled){background:linear-gradient(90deg,var(--color-glint) 0%,var(--color-refracted-cyan) 100%)}.auth-overlay__button--primary:active:not(:disabled){transform:scale(.98)}.auth-overlay__button--secondary{background-color:transparent;color:var(--text-primary);border:1px solid var(--text-secondary)}.auth-overlay__button--secondary:hover:not(:disabled){border-color:var(--color-refracted-cyan);color:var(--color-refracted-cyan)}.auth-overlay__footer{margin-top:var(--spacing-lg);padding-top:var(--spacing-md);border-top:1px solid var(--surface-3)}.auth-overlay__hint{margin:0;font-size:12px;color:var(--text-secondary);text-align:center;line-height:1.5}.auth-overlay__hint a{color:var(--color-refracted-cyan);text-decoration:none}.auth-overlay__hint a:hover{text-decoration:underline}.chat-wrapper{position:relative;width:100%;height:100%;background:transparent}.chat{position:absolute;inset:0;display:flex;flex-direction:column;background-color:var(--color-rich-black);font-family:var(--font-family);border-radius:var(--radius-lg) var(--radius-lg) 0 0;overflow:hidden;opacity:1;transition:opacity .3s ease}.chat--collapsed{opacity:0;pointer-events:none}.chat__toggle-button{position:absolute;top:50%;left:50%;width:90%;height:90%;transform:translate(-50%,-50%);border-radius:50%;border:none;background:linear-gradient(135deg,var(--color-glint) 0%,var(--color-refracted-cyan) 100%);color:var(--text-on-primary);cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 20px #0000004d;opacity:0;pointer-events:none;transition:opacity .3s ease,box-shadow .2s ease,filter .2s ease,transform .2s ease}.chat__toggle-button--visible{opacity:1;pointer-events:auto}.chat__toggle-button:hover{box-shadow:0 6px 24px #d2ff0080;filter:brightness(1.1);transform:translate(-50%,-50%) scale(1.1)}.chat__toggle-button svg{width:32px;height:32px}.chat__header{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-md) var(--spacing-lg);background:linear-gradient(135deg,var(--color-dark-umbra) 0%,var(--color-promo-banner) 100%);color:var(--text-primary);flex-shrink:0;border-bottom:1px solid var(--surface-3)}.chat__logo{height:32px;width:auto;object-fit:contain}.chat__header-right{display:flex;align-items:center;gap:var(--spacing-md)}.chat__close-button{width:32px;height:32px;border:none;background:transparent;color:var(--text-secondary);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:color var(--transition-normal)}.chat__close-button:hover{color:var(--text-primary)}.chat__close-button svg{width:32px;height:32px}.chat__status{display:flex;align-items:center;gap:6px;font-size:12px}.chat__status-indicator{width:8px;height:8px;border-radius:50%;background-color:var(--color-warning)}.chat__status-indicator--connected{background-color:var(--color-glint);box-shadow:0 0 8px var(--color-glint)}.chat__status-text{opacity:.9;color:var(--text-secondary)}.chat__error{padding:var(--spacing-sm) var(--spacing-md);background-color:#ff383826;color:var(--color-error);font-size:14px;border-bottom:1px solid rgba(255,56,56,.3)}.chat__session-id{padding:var(--spacing-sm) var(--spacing-md);font-size:10px;color:var(--text-secondary);text-align:center;background-color:var(--surface-1);border-top:1px solid var(--surface-3);opacity:.7}.chat__session-expired-overlay{position:absolute;inset:0;background-color:#021214d9;display:flex;align-items:center;justify-content:center;z-index:100;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.chat__session-expired-content{background:linear-gradient(180deg,var(--surface-2) 0%,var(--surface-1) 100%);border-radius:var(--radius-lg);padding:var(--spacing-xl);margin:var(--spacing-lg);max-width:320px;text-align:center;box-shadow:0 8px 32px #0006;border:1px solid var(--surface-3)}.chat__session-expired-icon{font-size:48px;margin-bottom:var(--spacing-md)}.chat__session-expired-title{margin:0 0 var(--spacing-sm);font-size:20px;font-weight:600;color:var(--text-primary);text-transform:uppercase;letter-spacing:.5px}.chat__session-expired-message{margin:0 0 var(--spacing-lg);font-size:14px;color:var(--text-secondary);line-height:1.5}.chat__session-expired-button{background:linear-gradient(90deg,var(--color-glint) 0%,var(--color-glint) 100%);color:var(--text-on-primary);border:none;border-radius:var(--radius-pill);padding:var(--spacing-sm) var(--spacing-lg);font-size:14px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;cursor:pointer;transition:all var(--transition-normal)}.chat__session-expired-button:hover{background:linear-gradient(90deg,var(--color-glint) 0%,var(--color-refracted-cyan) 100%)}.chat__session-expired-button:active{transform:scale(.98)}:root{--color-glint: #D2FF00;--color-refracted-cyan: #1AD1D3;--color-light-gray: #D1D3D4;--color-dark-umbra: #082125;--color-rich-black: #021214;--color-promo-banner: #003E43;--color-notification: #10333F;--color-error: #FF3838;--color-warning: #FFC300;--color-black: #000000;--color-white: #FFFFFF;--surface-1: #082125;--surface-2: #0a2a2f;--surface-3: #10333F;--surface-4: #FFFFFF;--surface-5: #1AD1D3;--surface-6: #003E43;--text-primary: #FFFFFF;--text-secondary: #D1D3D4;--text-on-primary: #021214;--text-on-secondary: #021214;--text-link: #1AD1D3;--font-family: "Averta", "Helvetica Neue", Helvetica, Arial, sans-serif;--font-size-base: 16px;--line-height-base: 1.42857143;--spacing-xs: 4px;--spacing-sm: 8px;--spacing-md: 16px;--spacing-lg: 24px;--spacing-xl: 32px;--radius-sm: 4px;--radius-md: 8px;--radius-lg: 12px;--radius-pill: 50px;--transition-fast: .15s ease;--transition-normal: .2s ease}*{box-sizing:border-box;margin:0;padding:0}html,body,#root{height:100%;width:100%;background:transparent}body{font-family:var(--font-family);font-size:var(--font-size-base);line-height:var(--line-height-base);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:transparent;color:var(--text-primary)}@font-face{font-family:Averta;src:local("Averta");font-weight:300;font-style:normal}@font-face{font-family:Averta;src:local("Averta");font-weight:400;font-style:normal}@font-face{font-family:Averta;src:local("Averta");font-weight:600;font-style:normal}@font-face{font-family:Averta;src:local("Averta");font-weight:700;font-style:normal}
