body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;margin:0}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.spinner-container{align-items:center;display:flex;flex-direction:column;justify-content:center;padding:24px}.professional-spinner{height:32px;position:relative;width:32px}.spinner-ring{animation:spin 1.2s linear infinite;border:2px solid #0000;border-radius:50%;border-top:2px solid var(--primary-color);height:100%;position:absolute;width:100%}.spinner-ring:nth-child(2){animation-direction:reverse;animation-duration:1.8s;border-top-color:var(--accent-color);height:24px;left:4px;top:4px;width:24px}.spinner-ring:nth-child(3){animation-duration:2.4s;border-top-color:var(--primary-light);height:16px;left:8px;top:8px;width:16px}.spinner-text{color:var(--text-secondary);font-size:14px;font-weight:500;margin-top:16px}.custom-button{align-items:center;border:none;border-radius:var(--border-radius);box-sizing:border-box;cursor:pointer;display:inline-flex;font-family:inherit;font-weight:600;gap:10px;justify-content:center;outline:none;position:relative;text-decoration:none;transition:var(--transition);-webkit-user-select:none;user-select:none;vertical-align:middle;white-space:nowrap}.btn-primary{background:linear-gradient(135deg,var(--primary-color) 0,var(--primary-light) 100%);border:none;box-shadow:0 2px 4px #0f2c7c33,0 1px 2px #0f2c7c1a,inset 0 1px 0 #ffffff1a;color:#fff;text-shadow:0 1px 2px #0000001a}.btn-primary:hover:not(:disabled){background:linear-gradient(135deg,var(--primary-light) 0,var(--primary-color) 100%);box-shadow:0 4px 8px #0f2c7c4d,0 2px 4px #0f2c7c33,inset 0 1px 0 #fff3;transform:translateY(-1px)}.btn-primary:active:not(:disabled){box-shadow:0 2px 4px #0f2c7c33,inset 0 2px 4px #0000001a;transform:translateY(0)}.btn-secondary{background:var(--background-primary);border:2px solid var(--border-color);box-shadow:0 1px 3px #0000001a;color:var(--text-primary)}.btn-secondary:hover:not(:disabled){background:var(--background-blue);border-color:var(--primary-color);box-shadow:0 2px 6px #0f2c7c26;color:var(--primary-color)}.btn-outline{background:#0000;border:2px solid var(--primary-color);color:var(--primary-color);overflow:hidden;position:relative}.btn-outline:before{background:var(--primary-color);content:"";height:100%;left:-100%;position:absolute;top:0;transition:left .3s ease;width:100%;z-index:0}.btn-outline:hover:not(:disabled){color:#fff}.btn-outline:hover:not(:disabled):before{left:0}.btn-outline .button-icon,.btn-outline .button-text{position:relative;z-index:1}.btn-small{border-radius:8px;font-size:13px;font-weight:600;min-height:32px;padding:8px 16px}.btn-medium{border-radius:10px;font-size:15px;font-weight:600;min-height:40px;padding:12px 24px}.btn-large{border-radius:12px;font-size:17px;font-weight:700;min-height:48px;padding:16px 32px}.custom-button:disabled{box-shadow:none!important;cursor:not-allowed;opacity:.6;transform:none!important}.custom-button:disabled:before{display:none}.custom-button:focus-visible{outline:2px solid var(--primary-color);outline-offset:2px}.button-icon,.button-text{align-items:center;display:flex;flex-shrink:0}.send-button{font-weight:700;letter-spacing:.5px;min-width:120px}.reset-button{font-weight:600;letter-spacing:.25px}.download-button{font-weight:700;letter-spacing:.5px;min-width:180px}.get-started-button{box-shadow:0 4px 8px #0f2c7c4d,0 2px 4px #0f2c7c33,inset 0 1px 0 #fff3;font-weight:700;letter-spacing:.5px;min-width:160px}.get-started-button:hover:not(:disabled){box-shadow:0 6px 12px #0f2c7c66,0 4px 8px #0f2c7c4d,inset 0 1px 0 #ffffff4d;transform:translateY(-2px)}.login-background{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);display:flex;justify-content:center;min-height:100vh;overflow:hidden;padding:20px;position:relative}.login-background:before{background:radial-gradient(circle at 25% 25%,#ffffff1a 0,#0000 50%),radial-gradient(circle at 75% 75%,#ffffff1a 0,#0000 50%);bottom:0;content:"";left:0;pointer-events:none;position:absolute;right:0;top:0}.login-container{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#fffffff2;border-radius:24px;box-shadow:0 32px 64px #00000026,0 0 0 1px #fff3;max-width:420px;padding:40px;position:relative;width:100%;z-index:1}.login-header{margin-bottom:32px;text-align:center}.login-logo{align-items:center;background:linear-gradient(135deg,#0f2c7c,#1e3a8a);border-radius:20px;box-shadow:0 8px 32px #0f2c7c4d;display:inline-block;display:flex;height:80px;justify-content:center;margin-bottom:24px;width:80px}.login-logo img{border-radius:12px;height:50px;object-fit:cover;width:50px}.login-title{color:#0f2c7c;font-size:2rem;font-weight:800;letter-spacing:-.02em;margin-bottom:8px}.login-subtitle{color:#6b7280;font-size:1rem;font-weight:500;margin:0}.login-form{display:flex;flex-direction:column;gap:24px}.login-error{background:linear-gradient(135deg,#fef2f2,#fee2e2);border:1px solid #fca5a5;border-radius:12px;color:#dc2626;font-size:.9rem;font-weight:500;padding:12px 16px;text-align:center}.form-group{display:flex;flex-direction:column;gap:8px}.form-label{color:#374151;font-size:.9rem;font-weight:600;letter-spacing:.02em}.input-wrapper{align-items:center;display:flex;position:relative}.input-icon{color:#9ca3af;left:16px;position:absolute;z-index:1}.form-input{background:#f9fafb;border:2px solid #e5e7eb;border-radius:12px;color:#374151;font-size:1rem;font-weight:500;padding:16px 16px 16px 48px;transition:all .3s cubic-bezier(.4,0,.2,1);width:100%}.form-input:focus{background:#fff;border-color:#0f2c7c;box-shadow:0 0 0 4px #0f2c7c1a;outline:none}.form-input:disabled{cursor:not-allowed;opacity:.6}.form-input::placeholder{color:#9ca3af;font-weight:400}.password-toggle{background:none;border:none;border-radius:6px;color:#9ca3af;cursor:pointer;padding:4px;position:absolute;right:16px;transition:all .2s ease}.password-toggle:hover:not(:disabled){background:#0f2c7c1a;color:#0f2c7c}.password-toggle:disabled{cursor:not-allowed;opacity:.5}.login-submit-button{align-items:center!important;background:linear-gradient(135deg,#0f2c7c,#1e3a8a)!important;border:none!important;border-radius:12px!important;box-shadow:0 8px 32px #0f2c7c4d!important;color:#fff!important;display:flex!important;font-size:1rem!important;font-weight:700!important;gap:8px!important;justify-content:center!important;letter-spacing:.02em!important;padding:16px 24px!important;transition:all .3s cubic-bezier(.4,0,.2,1)!important}.login-submit-button:hover:not(:disabled){box-shadow:0 12px 40px #0f2c7c66!important;transform:translateY(-2px)!important}.login-submit-button:active:not(:disabled){transform:translateY(0)!important}.login-submit-button:disabled{cursor:not-allowed!important;opacity:.6!important;transform:none!important}.loading-spinner{animation:spin 1s linear infinite;border:2px solid #ffffff4d;border-radius:50%;border-top-color:#fff;height:20px;width:20px}@keyframes spin{to{transform:rotate(1turn)}}.login-footer{margin-top:32px;text-align:center}.demo-credentials{background:linear-gradient(135deg,#f0f9ff,#e0f2fe);border:1px solid #bae6fd;border-radius:12px;color:#0369a1;font-size:.85rem;line-height:1.5;margin:0;padding:16px}.demo-credentials strong{color:#0f2c7c;display:block;margin-bottom:8px}@media (max-width:480px){.login-container{margin:16px;padding:32px 24px}.login-title{font-size:1.75rem}.login-logo{height:64px;width:64px}.login-logo img{height:40px;width:40px}.form-input{font-size:16px;padding:14px 14px 14px 44px}}@keyframes slideInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.login-container{animation:slideInUp .6s cubic-bezier(.4,0,.2,1)}.form-input:focus,.login-submit-button:focus,.password-toggle:focus{outline:2px solid #0f2c7c;outline-offset:2px}.welcome-container{align-items:center;background:var(--background-primary);display:flex;justify-content:center;min-height:100vh;padding:40px 20px}.welcome-content{max-width:900px;text-align:center;width:100%}.logo-section{margin-bottom:48px}.logo-wrapper{background:#fff;border:1px solid var(--border-color);border-radius:20px;box-shadow:var(--shadow-lg);display:inline-block;padding:20px}.welcome-logo{display:block;height:80px;max-width:200px;object-fit:contain;width:auto}.welcome-title{font-size:4rem;font-weight:800;letter-spacing:-.025em;line-height:1.1;margin-bottom:20px}.welcome-subtitle{color:var(--text-secondary);font-size:1.5rem;font-weight:500;letter-spacing:-.01em;margin-bottom:32px}.welcome-description{color:var(--text-secondary);font-size:1.125rem;line-height:1.75;margin-bottom:56px;margin-left:auto;margin-right:auto;max-width:680px}.welcome-actions{margin-bottom:80px}.get-started-button{align-items:center!important;background:var(--primary-color)!important;border:none!important;border-radius:var(--border-radius-lg)!important;box-shadow:var(--shadow-md)!important;color:#fff!important;display:inline-flex!important;font-size:18px!important;font-weight:600!important;gap:12px!important;padding:16px 32px!important;transition:var(--transition)!important}.get-started-button:hover{background:var(--primary-light)!important;box-shadow:var(--shadow-xl)!important;transform:translateY(-2px)!important}.welcome-features{grid-gap:40px;display:grid;gap:40px;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));margin:0 auto;max-width:900px}.feature-card{background:var(--background-secondary);border:1px solid var(--border-color);border-radius:var(--border-radius-lg);overflow:hidden;padding:40px 32px;position:relative;text-align:center;transition:var(--transition)}.feature-card:before{background:linear-gradient(90deg,#0000,var(--primary-color),#0000);content:"";height:2px;left:-100%;position:absolute;top:0;transition:var(--transition);width:100%}.feature-card:hover{border-color:var(--border-blue);box-shadow:var(--shadow-xl);transform:translateY(-6px)}.feature-card:hover:before{left:100%}.feature-icon{align-items:center;background:var(--background-blue);border-radius:50%;color:var(--primary-color);display:inline-flex;height:64px;justify-content:center;margin-bottom:24px;width:64px}.feature-card h3{color:var(--text-primary);font-size:1.375rem;font-weight:600;margin-bottom:12px}.feature-card p{color:var(--text-secondary);font-size:1rem;line-height:1.6}@media (max-width:768px){.welcome-title{font-size:2.75rem}.welcome-subtitle{font-size:1.25rem}.welcome-features{gap:24px;grid-template-columns:1fr}.feature-card{padding:32px 24px}.logo-wrapper{padding:15px}.welcome-logo{height:60px}}.progress-bar-container{margin:16px 0;position:relative;width:100%}.progress-bar-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:10px}.progress-bar-label{color:var(--text-primary);font-size:.9rem;font-weight:600}.progress-bar-info{align-items:center;display:flex;gap:12px}.progress-fraction{color:var(--text-secondary);font-size:.85rem;font-weight:500}.progress-percentage{color:var(--primary-color);font-size:.85rem;font-weight:700;min-width:35px;text-align:right}.progress-bar-track{background:#e5e7eb;border-radius:4px;box-shadow:inset 0 1px 3px #0000001a;height:8px;overflow:hidden;position:relative;width:100%}.progress-bar-fill{background:linear-gradient(90deg,#0f2c7c,#1e3a8a);border-radius:4px;box-shadow:0 1px 3px #0f2c7c4d;height:100%;position:relative;transition:width .8s cubic-bezier(.4,0,.2,1)}.progress-bar-fill:after{background:linear-gradient(90deg,#fff3,#ffffff1a 50%,#ffffff0d);border-radius:4px;bottom:0;content:"";left:0;pointer-events:none;position:absolute;right:0;top:0}.completion-badge{background:linear-gradient(135deg,#10b981,#059669);border-radius:12px;box-shadow:0 2px 6px #10b9814d;color:#fff;font-size:.7rem;font-weight:600;padding:4px 8px;position:absolute;right:-2px;top:-8px;z-index:3}@keyframes completionPulse{0%{box-shadow:0 2px 6px #10b9814d;transform:scale(1)}50%{box-shadow:0 4px 12px #10b98180;transform:scale(1.05)}to{box-shadow:0 2px 6px #10b9814d;transform:scale(1)}}.completion-badge{animation:completionPulse 2s infinite}@media (max-width:480px){.progress-bar-header{align-items:flex-start;flex-direction:column;gap:4px}.progress-bar-info{align-self:flex-end}.progress-bar-fill,.progress-bar-track{height:6px}}.chat-container{background:var(--background-primary);display:flex;flex-direction:column;height:100vh;margin:0 auto;max-width:900px}.chat-container .chat-header{align-items:center;background:linear-gradient(135deg,var(--background-secondary) 0,var(--background-tertiary) 100%);border-bottom:2px solid var(--border-color);box-shadow:0 2px 8px #0000000d;display:flex;justify-content:space-between;padding:20px 24px;position:relative;z-index:10}.chat-container .agent-info{align-items:center;display:flex;gap:16px}.chat-container .agent-avatar{background:var(--background-primary);border:3px solid var(--primary-color);border-radius:50%;box-shadow:0 4px 8px #0f2c7c33;flex-shrink:0;height:52px;overflow:hidden;width:52px}.chat-container .avatar-image{height:100%;object-fit:cover;width:100%}.chat-container .agent-details h2{color:var(--text-primary);font-size:1.25rem;font-weight:700;letter-spacing:.5px;margin:0}.chat-container .agent-details p{color:var(--text-secondary);font-size:.875rem;font-weight:500;margin:0}.chat-container .agent-details small{color:#666;font-size:10px}.chat-container .header-actions{align-items:center;display:flex;gap:12px}.chat-container .logout-button{background:linear-gradient(135deg,#dc2626,#b91c1c)!important;border:2px solid #0000!important;border-radius:8px!important;box-shadow:0 2px 4px #dc262633,0 1px 2px #dc26261a!important;color:#fff!important;font-size:13px!important;font-weight:600!important;letter-spacing:.5px!important;min-height:36px!important;min-width:90px!important;overflow:hidden!important;padding:8px 16px!important;position:relative!important;text-transform:uppercase!important;transition:all .3s cubic-bezier(.4,0,.2,1)!important}.chat-container .logout-button:before{background:#fff3;border-radius:50%;content:"";height:0;left:50%;position:absolute;top:50%;transform:translate(-50%,-50%);transition:width .4s ease,height .4s ease;width:0;z-index:0}.chat-container .logout-button:hover:not(:disabled){background:linear-gradient(135deg,#b91c1c,#991b1b)!important;border-color:#fff3!important;box-shadow:0 4px 8px #dc26264d,0 2px 4px #dc262633!important;transform:translateY(-2px)!important}.chat-container .logout-button:hover:not(:disabled):before{height:300px;width:300px}.chat-container .logout-button .button-icon,.chat-container .logout-button .button-text{position:relative;z-index:1}.chat-container .logout-button:active:not(:disabled){box-shadow:0 1px 2px #dc262633,inset 0 2px 4px #0003!important;transform:translateY(0)!important}.chat-container .logout-button:focus-visible{outline:2px solid #dc2626!important;outline-offset:2px!important}.chat-container .reset-button{background:#0000!important;border:2px solid var(--primary-color)!important;border-radius:8px!important;color:var(--primary-color)!important;font-size:13px!important;font-weight:600!important;letter-spacing:.5px!important;min-height:36px!important;min-width:80px!important;overflow:hidden!important;padding:8px 16px!important;position:relative!important;text-transform:uppercase!important;transition:all .3s cubic-bezier(.4,0,.2,1)!important}.chat-container .reset-button:before{background:var(--primary-color);content:"";height:100%;left:-100%;position:absolute;top:0;transition:left .3s ease;width:100%;z-index:0}.chat-container .reset-button:hover:not(:disabled){box-shadow:0 4px 12px #0f2c7c40!important;color:#fff!important;transform:translateY(-1px)!important}.chat-container .reset-button:hover:not(:disabled):before{left:0}.chat-container .reset-button .button-icon,.chat-container .reset-button .button-text{position:relative;z-index:1}.chat-container .reset-button:active:not(:disabled){transform:translateY(0)!important}.chat-container .progress-section{background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;margin:16px 20px;padding:12px 16px}.chat-container .error-banner{align-items:center;animation:slideDown .3s ease-out;background:linear-gradient(135deg,#fef2f2,#fee2e2);border-left:4px solid #ef4444;color:#dc2626;display:flex;font-size:.875rem;font-weight:500;gap:12px;margin-bottom:1px;padding:16px 24px}.chat-container .error-banner button{align-items:center;background:none;border:none;border-radius:4px;color:#dc2626;cursor:pointer;display:flex;font-size:18px;height:28px;justify-content:center;margin-left:auto;padding:4px;transition:background-color .2s ease;width:28px}.chat-container .error-banner button:hover{background:#fecaca}@keyframes slideDown{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.chat-container .messages-container{background:var(--background-primary);display:flex;flex:1 1;flex-direction:column;gap:24px;overflow-y:auto;padding:24px;scroll-behavior:smooth}.chat-container .loading-container{animation:fadeIn .3s ease-in;display:flex;justify-content:flex-start;padding:16px 0}.chat-container .initializing-container{align-items:center;background:var(--background-primary);display:flex;flex:1 1;justify-content:center}.chat-container .message{animation:messageSlideIn .5s ease-out;display:flex;width:100%}.chat-container .user-message{justify-content:flex-end}.chat-container .agent-message{justify-content:flex-start}.chat-container .system-message{display:flex;justify-content:center;margin:24px 0}.chat-container .system-content{animation:systemMessagePulse .5s ease-out;background:linear-gradient(135deg,#dcfce7,#bbf7d0);border:1px solid #22c55e33;border-radius:var(--border-radius);box-shadow:0 2px 8px #22c55e26;color:#166534;font-size:.9rem;font-weight:600;max-width:400px;padding:16px 24px;text-align:center}@keyframes systemMessagePulse{0%{opacity:0;transform:scale(.95)}50%{transform:scale(1.02)}to{opacity:1;transform:scale(1)}}.chat-container .message-content{align-items:flex-start;display:flex;gap:12px;max-width:75%}.chat-container .user-message .message-content{flex-direction:row-reverse}.chat-container .message-avatar{background:var(--background-primary);border:2px solid var(--primary-color);border-radius:50%;box-shadow:0 2px 4px #0f2c7c33;flex-shrink:0;height:36px;margin-top:4px;overflow:hidden;width:36px}.chat-container .avatar-small{height:100%;object-fit:cover;width:100%}.chat-container .user-avatar{align-items:center;background:linear-gradient(135deg,var(--primary-color) 0,var(--primary-light) 100%);border-radius:50%;box-shadow:0 2px 4px #0f2c7c4d;display:flex;flex-shrink:0;height:36px;justify-content:center;margin-top:4px;width:36px}.chat-container .user-initial{color:#fff;font-size:.7rem;font-weight:600;text-shadow:0 1px 2px #0000001a}.chat-container .message-bubble{background:var(--background-secondary);border:1px solid var(--border-color);border-radius:18px;box-shadow:0 2px 8px #0000000d;padding:16px 20px;position:relative;transition:all .2s ease}.chat-container .message-bubble:hover{box-shadow:0 4px 12px #0000001a;transform:translateY(-1px)}.chat-container .user-message .message-bubble{background:linear-gradient(135deg,var(--primary-color) 0,var(--primary-light) 100%);border:none;box-shadow:0 2px 8px #0f2c7c33;color:#fff}.chat-container .user-message .message-bubble:hover{box-shadow:0 4px 12px #0f2c7c4d}.chat-container .agent-message .message-bubble{background:var(--background-secondary);border:1px solid var(--border-color)}.chat-container .message-text{word-wrap:break-word;line-height:1.6}.chat-container .message-text p{margin:0 0 8px}.chat-container .message-text p:last-child{margin-bottom:0}.chat-container .bullet-point{margin:4px 0 4px 16px;position:relative}.chat-container .bullet-point:before{color:var(--primary-color);content:"•";font-weight:700;left:-16px;position:absolute}.chat-container .user-message .bullet-point:before{color:#fffc}.chat-container .message-time{display:block;font-size:.75rem;font-weight:400;margin-top:8px;opacity:.7}@keyframes messageSlideIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.chat-container .input-form{background:linear-gradient(180deg,var(--background-secondary) 0,var(--background-tertiary) 100%);border-top:2px solid var(--border-color);box-shadow:0 -2px 8px #0000000d;padding:20px 24px 24px;position:relative;z-index:5}.chat-container .input-container{align-items:flex-end;display:flex;gap:16px;max-width:100%}.chat-container .input-wrapper{display:flex;flex:1 1;flex-direction:column;position:relative}.chat-container .message-input{background:var(--background-primary);border:2px solid var(--border-color);border-radius:var(--border-radius);box-shadow:inset 0 1px 3px #0000001a;color:var(--text-primary);font-family:inherit;font-size:16px;line-height:1.5;max-height:160px;min-height:80px;padding:16px 18px;resize:none;transition:all .3s ease;width:100%}.chat-container .message-input:focus{border-color:var(--primary-color);box-shadow:inset 0 1px 3px #0000001a,0 0 0 3px #0f2c7c1a;outline:none;transform:translateY(-1px)}.chat-container .message-input.over-limit{border-color:#ef4444;box-shadow:inset 0 1px 3px #0000001a}.chat-container .message-input.over-limit:focus{box-shadow:inset 0 1px 3px #0000001a,0 0 0 3px #ef44441a}.chat-container .message-input::placeholder{color:var(--text-muted);font-style:italic}.chat-container .input-bottom-row{align-items:baseline;margin-top:10px;min-height:18px;padding:0 2px;width:100%}.chat-container .keyboard-hint{flex:0 0 auto;font-size:11px;line-height:1.2}.chat-container .keyboard-hint kbd{border-radius:2px;font-family:SF Mono,Monaco,Inconsolata,Roboto Mono,monospace;font-size:10px;padding:1px 3px}.chat-container .char-counter{flex:0 0 auto;line-height:1.2}.chat-container .char-counter span{font-size:11px}.chat-container .send-button{align-self:flex-end!important;background:linear-gradient(135deg,var(--primary-color) 0,var(--primary-light) 100%)!important;border:none!important;border-radius:10px!important;box-shadow:0 2px 4px #0f2c7c33,0 1px 2px #0f2c7c1a,inset 0 1px 0 #ffffff1a!important;color:#fff!important;font-size:15px!important;font-weight:700!important;letter-spacing:.5px!important;min-height:50px!important;min-width:120px!important;padding:12px 24px!important;text-shadow:0 1px 2px #0000001a!important;text-transform:uppercase!important;transition:all .3s cubic-bezier(.4,0,.2,1)!important}.chat-container .send-button:hover:not(:disabled){background:linear-gradient(135deg,var(--primary-light) 0,var(--primary-color) 100%)!important;box-shadow:0 4px 8px #0f2c7c4d,0 2px 4px #0f2c7c33,inset 0 1px 0 #fff3!important;transform:translateY(-2px)!important}.chat-container .send-button:active:not(:disabled){box-shadow:0 2px 4px #0f2c7c33,inset 0 2px 4px #0000001a!important;transform:translateY(0)!important}.chat-container .send-button:disabled{box-shadow:0 1px 3px #0000001a!important;cursor:not-allowed!important;opacity:.6!important;transform:none!important}.chat-container .send-button:focus-visible{outline:2px solid var(--primary-color)!important;outline-offset:2px!important}.chat-container .completion-actions{background:linear-gradient(180deg,var(--background-secondary) 0,var(--background-tertiary) 100%);border-top:2px solid var(--border-color);box-shadow:0 -2px 8px #0000000d;display:flex;flex-wrap:wrap;gap:20px;justify-content:center;padding:32px 24px}.chat-container .download-button{background:linear-gradient(135deg,var(--primary-color) 0,var(--primary-light) 100%)!important;border:none!important;border-radius:12px!important;box-shadow:0 4px 8px #0f2c7c4d,0 2px 4px #0f2c7c33,inset 0 1px 0 #fff3!important;color:#fff!important;font-size:17px!important;font-weight:700!important;letter-spacing:.5px!important;min-height:48px!important;min-width:180px!important;padding:16px 32px!important;text-shadow:0 1px 2px #0000001a!important;transition:all .3s cubic-bezier(.4,0,.2,1)!important}.chat-container .download-button:hover:not(:disabled){box-shadow:0 6px 12px #0f2c7c66,0 4px 8px #0f2c7c4d,inset 0 1px 0 #ffffff4d!important;transform:translateY(-2px)!important}@media (max-width:768px){.chat-container .chat-header{padding:16px 20px}.chat-container .agent-avatar{height:44px;width:44px}.chat-container .agent-details h2{font-size:1.1rem}.chat-container .agent-details p{font-size:.8rem}.chat-container .messages-container{gap:20px;padding:16px 20px}.chat-container .message-content{max-width:85%}.chat-container .input-container{align-items:stretch;flex-direction:column;gap:16px}.chat-container .input-wrapper{margin-bottom:0}.chat-container .input-bottom-row{align-items:flex-start;flex-direction:column;gap:4px}.chat-container .char-counter{align-self:flex-end;text-align:right}.chat-container .send-button{align-self:stretch!important;min-width:auto!important}.chat-container .completion-actions{flex-direction:column;gap:16px;padding:24px 20px}.chat-container .input-form{padding:16px 20px 20px}.chat-container .reset-button{font-size:12px!important;min-width:70px!important;padding:6px 12px!important}}@media (max-width:480px){.chat-container .chat-header,.chat-container .messages-container{padding:12px 16px}.chat-container .input-form{padding:12px 16px 16px}.chat-container .completion-actions{padding:20px 16px}}.chat-container .messages-container::-webkit-scrollbar{width:6px}.chat-container .messages-container::-webkit-scrollbar-track{background:var(--background-secondary)}.chat-container .messages-container::-webkit-scrollbar-thumb{background:var(--border-color);border-radius:3px}.chat-container .messages-container::-webkit-scrollbar-thumb:hover{background:var(--primary-color)}.chat-container .input-bottom-row{align-items:center;display:flex;flex-wrap:nowrap;justify-content:space-between;margin-top:8px;min-height:20px;padding:0 4px}.chat-container .keyboard-hint{color:#6b7280;flex-shrink:0;font-size:.75rem;font-weight:500;text-align:left;white-space:nowrap}.chat-container .keyboard-hint kbd{background:#f3f4f6;border:1px solid #d1d5db;border-radius:3px;color:#374151;font-family:monospace;font-size:.7rem;font-weight:600;margin:0 1px;padding:2px 4px;white-space:nowrap}.chat-container .char-counter{flex-shrink:0;text-align:right;white-space:nowrap}.chat-container .char-counter span{color:#6b7280;font-size:.75rem;font-weight:500}.chat-container .char-counter .over-limit{color:#dc2626;font-weight:600}@media (max-width:768px){.chat-container .input-bottom-row{flex-direction:row;gap:8px;justify-content:space-between}.chat-container .char-counter span,.chat-container .keyboard-hint{font-size:.7rem}}@media (max-width:480px){.chat-container .input-bottom-row{align-items:flex-start;flex-direction:column;gap:4px}.chat-container .char-counter{align-self:flex-end;text-align:right}}:root{--primary-color:#0f2c7c;--primary-light:#1e3a8a;--primary-dark:#0a1f5c;--secondary-color:#f8fafc;--accent-color:#3b82f6;--text-primary:#1f2937;--text-secondary:#6b7280;--text-muted:#9ca3af;--text-white:#fff;--background-primary:#fff;--background-secondary:#f8fafc;--background-tertiary:#f1f5f9;--background-blue:#eff6ff;--border-color:#e5e7eb;--border-hover:#d1d5db;--border-blue:#93c5fd;--shadow-sm:0 1px 2px 0 #0000000d;--shadow-md:0 4px 6px -1px #0000001a,0 2px 4px -2px #0000001a;--shadow-lg:0 10px 15px -3px #0000001a,0 4px 6px -4px #0000001a;--shadow-xl:0 20px 25px -5px #0000001a,0 8px 10px -6px #0000001a;--shadow-blue:0 4px 6px -1px #0f2c7c1a,0 2px 4px -2px #0f2c7c1a;--border-radius:12px;--border-radius-sm:8px;--border-radius-lg:16px;--transition:all 0.3s cubic-bezier(0.4,0,0.2,1);--transition-fast:all 0.15s ease-out}*{box-sizing:border-box;margin:0;padding:0}body{background:#fff;background:var(--background-primary);color:#1f2937;color:var(--text-primary);font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;line-height:1.6}.container{margin:0 auto;max-width:1200px;padding:0 20px}.gradient-text{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#0f2c7c,#3b82f6);background:linear-gradient(135deg,var(--primary-color) 0,var(--accent-color) 100%);-webkit-background-clip:text;background-clip:text}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:#f8fafc;background:var(--background-secondary)}::-webkit-scrollbar-thumb{background:#e5e7eb;background:var(--border-color);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:#d1d5db;background:var(--border-hover)}