@import"https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&family=Outfit:wght@300;400;500;600;700&display=swap";:root{--primary: #8b5cf6;--primary-gradient: linear-gradient(135deg, #8b5cf6 0%, #6366f1 100%);--secondary: #06b6d4;--bg-dark: #0f172a;--bg-darker: #020617;--bg-card: rgba(30, 41, 59, .4);--glass-border: rgba(255, 255, 255, .08);--glass-highlight: rgba(255, 255, 255, .03);--text-main: #f8fafc;--text-muted: #94a3b8;--success: #10b981;--font-body: "Inter", sans-serif;--font-heading: "Outfit", sans-serif}*{box-sizing:border-box;margin:0;padding:0}body{background:var(--bg-darker);background-image:radial-gradient(circle at 15% 50%,rgba(139,92,246,.15),transparent 25%),radial-gradient(circle at 85% 30%,rgba(6,182,212,.15),transparent 25%);color:var(--text-main);font-family:var(--font-body);height:100vh;width:100vw;overflow:hidden}#root{height:100%}.app-container{height:100%;display:flex;flex-direction:column}h1,h2,h3,h4{font-family:var(--font-heading);font-weight:600;letter-spacing:-.02em}.auth-page{display:flex;align-items:center;justify-content:center;height:100vh;width:100vw}.auth-card{border-radius:20px;text-align:center;animation:fadeInUp .5s ease-out}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.glass-panel{background:var(--bg-card);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid var(--glass-border);box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f}.btn-primary{background:var(--primary-gradient);color:#fff;border:none;padding:.75rem 1.75rem;border-radius:9999px;font-weight:500;font-family:var(--font-heading);transition:all .3s cubic-bezier(.4,0,.2,1);box-shadow:0 4px 14px #8b5cf663}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 6px 20px #8b5cf63b;filter:brightness(1.1)}.catalog-container{display:flex;flex-direction:row;overflow-x:auto;gap:1rem;padding:.5rem 4rem;max-width:100%;width:100%;scrollbar-width:thin;scrollbar-color:var(--primary) transparent}.catalog-container::-webkit-scrollbar{height:8px}.catalog-container::-webkit-scrollbar-thumb{background-color:var(--primary);border-radius:4px}.catalog-card{min-width:200px;max-width:240px;background:#1e293b66;border:1px solid var(--glass-border);border-radius:12px;padding:1rem 1.25rem;transition:all .3s ease;cursor:pointer;position:relative;overflow:hidden;height:fit-content;flex-shrink:0}.catalog-card.selected{border-color:var(--primary);background:#8b5cf626;transform:translateY(-2px);box-shadow:0 6px 16px -4px #8b5cf64d}.catalog-card:before{content:"";position:absolute;top:0;left:0;width:100%;height:100%;background:linear-gradient(45deg,transparent 0%,rgba(255,255,255,.03) 100%);opacity:0;transition:opacity .3s}.catalog-card:hover{transform:translateY(-2px);border-color:var(--primary);background:#1e293b99}.catalog-card:hover:before{opacity:1}.catalog-title{font-size:1.1rem;margin-bottom:.25rem;color:var(--text-main);background:linear-gradient(to right,#fff,#94a3b8);-webkit-background-clip:text;-webkit-text-fill-color:transparent}.catalog-desc{color:var(--text-muted);font-size:.8rem;line-height:1.4;margin-bottom:0}.catalog-tags{display:flex;flex-wrap:wrap;gap:.5rem}.tag{font-size:.75rem;padding:.25rem .75rem;border-radius:9999px;background:#8b5cf61a;color:#c4b5fd;border:1px solid rgba(139,92,246,.2)}.chat-layout{display:flex;height:100vh}.sidebar{width:280px;background:#0f172a99;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-right:1px solid var(--glass-border);display:flex;flex-direction:column;padding:1.5rem}.chat-zone{flex:1;display:flex;flex-direction:column;position:relative}.messages{flex:1;overflow-y:auto;padding:2rem 15%;display:flex;flex-direction:column;gap:2rem}.msg-row{display:flex;gap:1rem;animation:fadeIn .3s ease-up}.msg-row.user{justify-content:flex-end}.msg-row.bot{justify-content:flex-start}.msg-bubble{max-width:80%;padding:1.25rem;border-radius:12px;line-height:1.6;font-size:.95rem}.msg-bubble.user{background:var(--primary-gradient);color:#fff;border-bottom-right-radius:2px}.msg-bubble.bot{background:#1e293b99;border:1px solid var(--glass-border);border-bottom-left-radius:2px;box-shadow:0 4px 6px #0000001a}.chips-panel{position:absolute;bottom:90px;left:50%;transform:translate(-50%);width:70%;max-width:800px;display:flex;flex-wrap:wrap;gap:.75rem;justify-content:center;z-index:10;padding-bottom:1rem}.action-chip{background:#0f172ae6;border:1px solid var(--primary);color:#fff;padding:.5rem 1rem;border-radius:8px;cursor:pointer;font-size:.9rem;display:flex;align-items:center;gap:.5rem;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);transition:all .2s;box-shadow:0 4px 12px #0003}.action-chip:hover{background:var(--primary);transform:translateY(-2px)}.action-chip i{color:#bfdbfe}.input-zone{padding:1.5rem 15%;background:linear-gradient(to top,var(--bg-darker) 30%,transparent 100%)}.input-box{background:var(--bg-card);border:1px solid var(--glass-border);border-radius:12px;padding:1rem;display:flex;gap:1rem;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);box-shadow:0 -4px 20px #0003;transition:border-color .2s}.input-box:focus-within{border-color:var(--primary);box-shadow:0 0 0 2px #8b5cf633}.input-box textarea{flex:1;background:transparent;border:none;color:#fff;font-family:var(--font-body);font-size:1rem;resize:none;height:24px;max-height:120px}.input-box textarea:focus{outline:none}.msg-bubble h3{font-size:1.15rem;color:#c4b5fd;margin:1.5rem 0 .5rem;padding-bottom:.4rem;border-bottom:1px solid rgba(139,92,246,.3)}.msg-bubble h3:first-child{margin-top:0}.msg-bubble h4{font-size:1rem;color:#a5b4fc;margin:1.2rem 0 .4rem}.msg-bubble table{width:100%;border-collapse:separate;border-spacing:0;margin:1.5rem 0;border-radius:8px;overflow:hidden;border:1px solid var(--glass-border)}.msg-bubble th{background:#8b5cf633;font-weight:600;text-transform:uppercase;font-size:.8rem;letter-spacing:.05em;padding:1rem;color:#ddd6fe}.msg-bubble td{padding:1rem;border-bottom:1px solid rgba(255,255,255,.05)}.msg-bubble tr:last-child td{border-bottom:none}.msg-bubble tr:hover td{background:#ffffff08}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.modal-overlay{position:fixed;top:0;left:0;width:100vw;height:100vh;background:#020617b3;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;z-index:1000;animation:fadeIn .2s ease-out}.modal-content{width:90%;max-width:450px;background:#1e293b;border:1px solid var(--glass-border);border-radius:16px;padding:2rem;box-shadow:0 25px 50px -12px #00000080;display:flex;flex-direction:column;gap:1.5rem}.modal-header h3{font-size:1.25rem;color:var(--text-main);margin:0}.modal-header p{font-size:.9rem;color:var(--text-muted);margin-top:.5rem}.modal-body input{width:100%;background:#0f172a80;border:1px solid var(--glass-border);border-radius:8px;padding:.75rem 1rem;color:#fff;font-family:var(--font-body);font-size:1rem;transition:all .2s}.modal-body input:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 2px #8b5cf633}.modal-footer{display:flex;gap:1rem;justify-content:flex-end}.btn-secondary{background:#ffffff0d;color:#fff;border:1px solid var(--glass-border);padding:.6rem 1.2rem;border-radius:8px;font-weight:500;cursor:pointer;transition:all .2s}.btn-secondary:hover{background:#ffffff1a}.btn-danger{background:#ef4444;color:#fff;border:none;padding:.6rem 1.2rem;border-radius:8px;font-weight:500;cursor:pointer;transition:all .2s}.btn-danger:hover{background:#dc2626;filter:brightness(1.1)}.login-page{position:relative;width:100vw;height:100vh;display:flex;align-items:center;justify-content:center;overflow:hidden}.login-background{position:absolute;top:0;left:0;width:100%;height:100%;background-size:cover;background-position:center;background-repeat:no-repeat;z-index:0}.login-overlay{position:absolute;top:0;left:0;width:100%;height:100%;background:#98a2b3b3;z-index:1}.login-card{position:relative;z-index:2;width:100%;max-width:420px;background:#fffffff2;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-radius:16px;padding:2.5rem;box-shadow:0 25px 50px -12px #00000040;animation:fadeInUp .5s ease-out}.login-logo{display:flex;justify-content:center;margin-bottom:1.5rem}.login-logo img{width:80px;height:80px;object-fit:contain}.login-title{font-family:var(--font-heading);font-size:1.75rem;font-weight:600;color:#1f2937;text-align:center;margin-bottom:.5rem;background:none;-webkit-text-fill-color:#1f2937}.login-subtitle{font-size:.95rem;color:#6b7280;text-align:center;margin-bottom:2rem}.login-form{display:flex;flex-direction:column;gap:1.25rem}.login-form .form-group{display:flex;flex-direction:column;gap:.5rem}.login-form .form-label{font-size:.875rem;font-weight:500;color:#374151}.login-form .form-input{width:100%;padding:.75rem 1rem;font-size:.95rem;color:#1f2937;background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;transition:all .2s ease}.login-form .form-input::placeholder{color:#9ca3af}.login-form .form-input:focus{outline:none;border-color:#7761f3;box-shadow:0 0 0 3px #7761f31a;background:#fff}.password-input-wrapper{position:relative;display:flex;align-items:center}.password-input-wrapper .form-input{padding-right:2.75rem}.password-toggle{position:absolute;right:.75rem;background:none;border:none;cursor:pointer;color:#9ca3af;padding:.25rem;display:flex;align-items:center;justify-content:center;transition:color .2s}.password-toggle:hover{color:#6b7280}.remember-me{display:flex;align-items:center}.checkbox-label{display:flex;align-items:center;gap:.5rem;cursor:pointer}.checkbox-input{width:16px;height:16px;accent-color:#7761F3;cursor:pointer}.checkbox-text{font-size:.875rem;color:#6b7280}.error-message{display:flex;align-items:center;gap:.5rem;padding:.75rem 1rem;background:#fef2f2;border:1px solid #fecaca;border-radius:8px;color:#dc2626;font-size:.875rem}.login-button{display:flex;align-items:center;justify-content:center;gap:.5rem;width:100%;padding:.875rem 1.5rem;font-size:1rem;font-weight:600;color:#fff;background:#7761f3;border:none;border-radius:8px;cursor:pointer;transition:all .2s ease;margin-top:.5rem}.login-button:hover:not(:disabled){background:#6651e3;transform:translateY(-1px);box-shadow:0 4px 12px #7761f366}.login-button:disabled{opacity:.7;cursor:not-allowed}.login-button .spinner{animation:spin 1s linear infinite}.login-footer{margin-top:2rem;text-align:center;font-size:.8rem;color:#9ca3af}@media(max-width:480px){.login-card{margin:1rem;padding:2rem 1.5rem}.login-logo img{width:60px;height:60px}.login-title{font-size:1.5rem}}
