:root{--color-bg-start: #06063f;--color-bg-end: rgb(2, 38, 73);--color-primary: #fa5a50;--color-primary-hover: #e04d45;--color-accent: #fa5a50;--color-accent-glow: rgba(250, 90, 80, .4);--color-warning: #ff6b6b;--color-surface: rgba(255, 255, 255, .1);--color-surface-hover: rgba(255, 255, 255, .15);--color-border: rgba(255, 255, 255, .2);--color-text-primary: #f9faf8;--color-text-secondary: #b0bec5;--color-text-inverse: #001f3f;--font-family: "Outfit", "Inter", system-ui, sans-serif;--shadow-glass: 0 8px 32px 0 rgba(0, 0, 0, .5);--shadow-neon: 0 0 10px var(--color-accent-glow);--transition-fast: .2s ease;--transition-normal: .3s ease;--transition-bounce: .5s cubic-bezier(.68, -.55, .265, 1.55)}*{box-sizing:border-box;margin:0;padding:0}html,body{height:100vh;width:100vw;margin:0;padding:0;overflow:hidden}body{font-family:var(--font-family);background:linear-gradient(135deg,var(--color-bg-start),var(--color-bg-end));color:var(--color-text-primary);display:flex;justify-content:center;align-items:center}.glass-panel{background:var(--color-surface);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid var(--color-border);border-radius:24px;box-shadow:var(--shadow-glass)}@keyframes fadeInSlideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes pulseNeon{0%{box-shadow:0 0 5px var(--color-accent-glow)}50%{box-shadow:0 0 15px var(--color-accent-glow),0 0 30px var(--color-accent-glow)}to{box-shadow:0 0 5px var(--color-accent-glow)}}@keyframes typingBounce{0%,to{transform:translateY(0);opacity:.5}50%{transform:translateY(-5px);opacity:1}}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:#fff3;border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#ffffff4d}.chat-layout-container{width:100vw;height:100vh;display:flex;justify-content:center;align-items:center;padding:1rem}.chat-layout-glass-wrapper{width:100%;max-width:800px;height:90vh;display:grid;grid-template-rows:auto 1fr;overflow:hidden;animation:fadeInSlideUp var(--transition-bounce);position:relative;box-sizing:border-box}.chat-layout-glass-wrapper:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at top right,rgba(59,130,246,.15),transparent 40%),radial-gradient(circle at bottom left,rgba(6,182,212,.15),transparent 40%);pointer-events:none;z-index:0}.chat-header{grid-row:1;padding:1rem 1.5rem;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:.2rem;border-bottom:1px solid var(--color-border);background:#0003;z-index:1}.header-status-indicator{width:12px;height:12px;border-radius:50%;background-color:var(--color-accent);box-shadow:var(--shadow-neon);animation:pulseNeon 2s infinite}.header-title{font-size:1.1rem;font-weight:700;color:var(--color-text-primary);letter-spacing:.5px;text-align:center}.header-subtitle{font-size:.8rem;color:var(--color-accent);margin-top:.2rem}.chat-main-content{grid-row:2;display:grid;grid-template-rows:1fr auto;overflow:hidden;z-index:1;height:100%;max-height:100%}.message-list-container{grid-row:1;overflow-y:auto;padding:1.5rem;display:flex;flex-direction:column;gap:1.2rem;scroll-behavior:smooth}.empty-state{margin:auto;text-align:center;color:var(--color-text-secondary);font-size:.95rem;max-width:80%;animation:fadeInSlideUp var(--transition-bounce);display:flex;flex-direction:column;align-items:center;gap:1.2rem}.empty-state-logo{width:clamp(80px,50%,180px);opacity:.6;filter:drop-shadow(0 4px 12px rgba(250,90,80,.3));transition:opacity var(--transition-normal),transform var(--transition-normal)}.empty-state-logo:hover{opacity:.9;transform:scale(1.04)}.message-wrapper{display:flex;width:100%;animation:fadeInSlideUp .3s ease-out forwards}.message-user{justify-content:flex-end}.message-bot{justify-content:flex-start}.message-bubble{max-width:75%;padding:.8rem 1.2rem;border-radius:18px;position:relative;word-wrap:break-word;line-height:1.5;box-shadow:0 4px 6px #0000001a;transition:transform var(--transition-fast),box-shadow var(--transition-fast)}.message-bubble:hover{transform:translateY(-2px);box-shadow:0 6px 12px #00000026}.message-user .message-bubble{background:linear-gradient(135deg,var(--color-primary),var(--color-primary-hover));color:#fff;border-bottom-right-radius:4px}.message-bot .message-bubble{background:var(--color-surface);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid var(--color-border);color:var(--color-text-primary);border-bottom-left-radius:4px}.message-text p{margin-bottom:.8rem}.message-text p:last-child{margin-bottom:0}.message-text ul,.message-text ol{margin:.5rem 0 .8rem 1.2rem;padding:0}.message-text li{margin-bottom:.4rem}.message-text li:last-child{margin-bottom:0}.message-text strong{font-weight:700;color:var(--color-accent)}.message-user .message-text strong{color:#fff;text-decoration:underline}.message-time{display:block;font-size:.65rem;opacity:.7;margin-top:.4rem;text-align:right}.typing-indicator-bubble{display:flex;align-items:center;gap:6px;padding:1rem 1.2rem}.typing-dot{width:8px;height:8px;background-color:var(--color-accent);border-radius:50%;animation:typingBounce 1.4s infinite ease-in-out both}.typing-dot:nth-child(1){animation-delay:-.32s}.typing-dot:nth-child(2){animation-delay:-.16s}.message-input-container{grid-row:2;padding:1.5rem;border-top:1px solid var(--color-border);background:#0003;z-index:10}.message-form{display:flex;gap:.8rem;align-items:center}.glass-input{flex-grow:1;background:#ffffff14;border:1px solid var(--color-border);border-radius:20px;padding:1rem 1.5rem;color:var(--color-text-primary);font-family:inherit;font-size:1rem;transition:var(--transition-normal);outline:none}.glass-input::placeholder{color:var(--color-text-secondary)}.glass-input:focus{background:#ffffff1f;border-color:var(--color-primary);box-shadow:0 0 0 2px #3b82f64d}.glass-input:disabled{opacity:.6;cursor:not-allowed}.send-button{display:flex;justify-content:center;align-items:center;width:50px;height:50px;border-radius:50%;border:none;background:var(--color-surface);color:var(--color-text-secondary);cursor:pointer;transition:var(--transition-fast);flex-shrink:0}.send-button svg{width:20px;height:20px;transition:var(--transition-fast)}.send-button.active{background:var(--color-primary);color:#fff;box-shadow:0 4px 15px #3b82f666;animation:sendPulse 2s infinite cubic-bezier(.66,0,0,1)}.send-button.active:hover{background:var(--color-primary-hover);transform:scale(1.05);animation:none}.send-button:disabled{cursor:not-allowed}@keyframes sendPulse{to{box-shadow:0 0 0 10px #3b82f600}}
