@import url("https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&display=swap");body,html{padding:0;margin:0;font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen;background:#0b0c10;color:#e6edf3;line-height:1.5}a{color:#66fcf1;text-decoration:none;transition:color .15s ease,opacity .15s ease}a:hover{color:#45a29e}*{box-sizing:border-box}.container{max-width:900px;margin:0 auto;padding:24px}.auth-page{min-height:100dvh;display:flex;align-items:center}.auth-inner{width:100%;max-width:460px;margin:0 auto}.auth-heading{font-size:2rem;font-weight:700;letter-spacing:-.025em;margin:0 0 4px}.auth-subheading{color:#7a8a9a;margin:0 0 28px;font-size:.95rem}.auth-footer-note{margin-top:20px;text-align:center;color:#7a8a9a;font-size:.875rem}.card{background:#141c26;border:1px solid #243044;border-radius:12px;padding:28px 28px 24px}.form-group{display:flex;flex-direction:column;margin-bottom:18px}.form-group:last-of-type{margin-bottom:0}.form-label{font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.07em;color:#7a8a9a;margin-bottom:6px}.chat-page{min-height:100dvh;display:flex;flex-direction:column}.chat-header{display:flex;justify-content:space-between;align-items:center;gap:12px;padding-bottom:16px;border-bottom:1px solid #1c2a3a;margin-bottom:4px}.chat-header h1{font-size:1.4rem;font-weight:700;letter-spacing:-.02em;margin:0;background:linear-gradient(90deg,#66fcf1,#45a29e);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.chat-actions,.chat-status{display:flex;gap:8px}.chat-status{margin:10px 0 12px;align-items:center}.status-badge{display:inline-flex;align-items:center;gap:6px;font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;padding:3px 10px;border-radius:20px}.status-badge:before{content:"";width:6px;height:6px;border-radius:50%}.status-badge.waiting{background:rgba(69,162,158,.12);color:#45a29e;border:1px solid rgba(69,162,158,.25)}.status-badge.waiting:before{background:#45a29e}.status-badge.processing{background:rgba(102,252,241,.1);color:#66fcf1;border:1px solid rgba(102,252,241,.25);animation:pulse-badge 1.5s ease-in-out infinite}.status-badge.processing:before{background:#66fcf1;animation:pulse-dot 1.5s ease-in-out infinite}@keyframes pulse-badge{0%,to{opacity:1}50%{opacity:.7}}@keyframes pulse-dot{0%,to{transform:scale(1);opacity:1}50%{transform:scale(1.4);opacity:.7}}.button{cursor:pointer;border:none;border-radius:6px;padding:10px 16px;font-weight:600;font-size:.875rem;letter-spacing:.01em;background:#45a29e;color:#0b0c10;transition:background .15s ease,transform .1s ease,box-shadow .15s ease;font-family:inherit}.button:hover:not(:disabled){background:#52b8b3;transform:translateY(-1px);box-shadow:0 4px 12px rgba(69,162,158,.25)}.button:active:not(:disabled){transform:translateY(0);box-shadow:none}.button:disabled{opacity:.5;cursor:not-allowed}.button-outline{background:transparent;border:1px solid #45a29e;color:#45a29e}.button-outline:hover:not(:disabled){background:rgba(69,162,158,.1);box-shadow:0 4px 12px rgba(69,162,158,.15)}.input{width:100%;padding:10px 12px;border-radius:6px;border:1px solid #243044;background:#0f1923;color:#e6edf3;font-size:.95rem;line-height:1.5;margin-top:0;font-family:inherit;transition:border-color .15s ease,box-shadow .15s ease}.input:focus{outline:none;border-color:#45a29e;box-shadow:0 0 0 3px rgba(69,162,158,.15)}.input::placeholder{color:#4a5a6a}.textarea{width:100%;min-height:100px;padding:10px 12px;border-radius:6px;border:1px solid #243044;background:#0f1923;color:#e6edf3;font-size:.95rem;line-height:1.5;margin-top:0;resize:none;font-family:inherit;transition:border-color .15s ease,box-shadow .15s ease}.textarea:focus{outline:none;border-color:#45a29e;box-shadow:0 0 0 3px rgba(69,162,158,.15)}.textarea::placeholder{color:#4a5a6a}.error-box{background:hsla(0,100%,71%,.08);border:1px solid hsla(0,100%,71%,.25);color:#ffb3b3;border-radius:6px;padding:10px 14px;font-size:.875rem;margin:12px 0}.message{padding:12px 14px;border-radius:10px;margin-bottom:8px;max-width:75%;word-break:break-word;color:#dce6f0;font-size:.97rem;line-height:1.6}.message.user{background:#182030;border:1px solid #2e4a5a;border-right:3px solid #45a29e;align-self:flex-end;box-shadow:0 2px 10px rgba(0,0,0,.2)}.message.assistant{background:#0d1520;border:1px solid #1e3040;border-left:3px solid #66fcf1;align-self:flex-start;box-shadow:0 2px 10px rgba(102,252,241,.04)}.message-timestamp{font-size:.72rem;opacity:.5;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;margin-bottom:4px;font-weight:500}.message-content{margin:0}.chat-window{display:flex;flex-direction:column;gap:6px;padding:16px;border:1px solid #1c2a3a;border-radius:12px;background:rgba(9,12,18,.85);height:60vh;min-height:320px;overflow-y:auto}.chat-window::-webkit-scrollbar{width:5px}.chat-window::-webkit-scrollbar-track{background:transparent}.chat-window::-webkit-scrollbar-thumb{background:#243044;border-radius:3px}.chat-window::-webkit-scrollbar-thumb:hover{background:#45a29e}.footer{display:flex;align-items:flex-end;gap:10px;margin-top:14px}.footer-actions{display:flex;flex-direction:column;gap:8px;width:180px}.footer-actions .button{padding:12px 22px;min-height:40px;width:100%}.footer.single-action-layout{align-items:stretch}.footer-actions.single-action{width:180px;align-self:stretch}.footer-actions.single-action .button{height:100%;min-height:100px}.feedback-form{background:#0f1923;border:1px solid #1e3040;border-radius:10px;padding:20px;margin-bottom:14px}.feedback-form h3{margin:0 0 16px;font-size:.95rem;font-weight:600;text-transform:uppercase;letter-spacing:.07em;color:#7a8a9a}.feedback-question{margin-bottom:16px}.feedback-question p{margin:0 0 8px;font-size:.9rem;color:#c0ccd8}.feedback-question strong{font-weight:600;color:#e6edf3}.feedback-options{display:flex;gap:6px;flex-wrap:wrap}.feedback-options .button{font-size:.8rem;padding:6px 14px;border-radius:20px}.feedback-message{padding:10px 14px;border-radius:6px;font-size:.875rem;margin-bottom:12px;background:rgba(69,162,158,.1);border:1px solid rgba(69,162,158,.25);color:#66fcf1}.toast-notification{position:fixed;top:20px;right:20px;z-index:1000;background:#141c26;color:#e6edf3;border:1px solid #1e3040;border-left:3px solid #66fcf1;border-radius:8px;padding:12px 16px;font-size:.875rem;font-weight:600;box-shadow:0 8px 32px rgba(0,0,0,.4);animation:slide-in .2s ease}@keyframes slide-in{0%{opacity:0;transform:translateX(12px)}to{opacity:1;transform:translateX(0)}}.landing-page{min-height:100dvh;display:flex;align-items:center}.landing-title{font-size:3rem;font-weight:700;letter-spacing:-.04em;margin:0 0 10px;background:linear-gradient(135deg,#e6edf3 30%,#66fcf1);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.landing-subtitle{color:#7a8a9a;font-size:1.05rem;margin:0 0 36px}@media (max-width:768px){.container{padding:16px}.landing-title{font-size:2.2rem}.chat-header{flex-direction:column;align-items:stretch;padding-bottom:12px}.chat-header h1{font-size:1.2rem}.chat-actions{width:100%}.chat-actions .button{flex:1 1;padding:10px}.message{max-width:92%;padding:10px 12px}.chat-window{height:56dvh;min-height:280px;padding:12px}.footer{flex-direction:column;gap:8px}.footer-actions{width:100%;flex-direction:row}.footer-actions .button{flex:1 1;width:auto;min-width:0;min-height:44px;height:44px;padding:10px 12px}.footer-actions.single-action{width:100%;align-self:auto}.footer-actions.single-action .button{height:44px;min-height:44px}.footer.single-action-layout{align-items:stretch}.textarea{min-height:80px}.card{padding:20px 16px}.auth-heading{font-size:1.6rem}.toast-notification{top:auto;bottom:16px;right:16px;left:16px}}