@import "https://fonts.googleapis.com/css2?family=Sora:wght@600;700&family=DM+Sans:ital,wght@0,400;0,500;1,400&family=Poppins:wght@700;800&display=swap";@import "https://fonts.googleapis.com/css2?family=Poppins:wght@700;800&family=DM+Sans:ital,wght@0,400;0,500;1,400&display=swap";@import "https://fonts.googleapis.com/css2?family=Poppins:wght@700;800&family=DM+Sans:ital,wght@0,400;0,500;1,400&display=swap";*{box-sizing:border-box;margin:0;padding:0;transition:background-color .3s,color .3s,border-color .3s}html,body,#root{height:100%}body{background:var(--color-background);color:var(--color-text);font-family:var(--font-sans);overflow:hidden}button{font-family:inherit}@keyframes fadeUp{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes bannerSlideDown{0%{opacity:0;transform:translate(-50%,-20px)}to{opacity:1;transform:translate(-50%)}}.home-container{flex-direction:row;height:100dvh;display:flex;position:relative;overflow:hidden}.desk-sidebar{z-index:10;background:0 0;flex-shrink:0;height:100%;position:relative}.mob-sidebar{z-index:100;background:0 0;display:none}.home-main{z-index:1;cursor:none;background:0 0;flex-direction:column;flex:1;min-width:0;height:100%;display:flex;position:relative;overflow:hidden}.verification-banner{-webkit-backdrop-filter:blur(12px);color:#fff;z-index:2000;width:90%;max-width:420px;box-shadow:var(--shadow-medium);background:#b91c1c26;border:1px solid #b91c1c4d;border-radius:12px;padding:10px 14px;animation:.5s cubic-bezier(.16,1,.3,1) forwards bannerSlideDown;position:absolute;top:20px;left:50%;transform:translate(-50%)}.verification-banner--success{background:#16a34a26;border-color:#16a34a66}.banner-content{align-items:center;gap:12px;display:flex}.banner-content p{color:#fff;flex:1;margin:0;font-size:12px;font-weight:500;line-height:1.4}.banner-verify-btn{white-space:nowrap;transition:all .2s;color:#fff!important;cursor:pointer!important;background:#b91c1c!important;border:none!important;border-radius:6px!important;padding:5px 12px!important;font-size:10.5px!important;font-weight:600!important}.banner-close-btn{justify-content:center;align-items:center;display:flex;color:#ffffff80!important;cursor:pointer!important;background:0 0!important;border:none!important;padding:4px!important;font-size:18px!important}.chat-input-wrapper,.home-topbar,.sidebar,button,a,textarea,input,.chat-action-btn{cursor:auto!important}.chat-action-btn,button,a{cursor:pointer!important}.home-topbar{border-bottom:1px solid var(--color-border);background:var(--color-surface);flex-shrink:0;justify-content:space-between;align-items:center;padding:11px 15px;display:none}.mob-menu-btn{color:var(--color-text);border-radius:8px;justify-content:center;align-items:center;width:36px;height:36px;display:flex;background:0 0!important;border:none!important}.home-brand{font-family:var(--font-display);letter-spacing:-.01em;background:var(--brand-gradient);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;font-size:16px;font-weight:700}.topbar-new-chat{color:var(--color-text);border-radius:8px;justify-content:center;align-items:center;width:36px;height:36px;display:flex;background:0 0!important;border:none!important}@media (width<=720px){.sidebar{z-index:200;background:var(--color-background);top:0;bottom:0;left:0;transform:translate(-100%);position:fixed!important}.sidebar--open{transform:translate(0)!important}.home-topbar{display:flex!important}.desk-sidebar{display:none!important}.mob-sidebar{display:block!important}.home-main{cursor:auto!important}.verification-banner{width:94%;max-width:320px;padding:8px 12px;top:10px}.banner-content{text-align:center;flex-direction:column;gap:4px}.banner-verify-btn{width:100%;font-size:10px!important}}.sidebar{background-color:var(--color-surface);border-right:1px solid var(--color-border);z-index:10;flex-direction:column;width:260px;height:100%;transition:background-color .3s;display:flex;position:relative}.sidebar-header{border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:center;padding:16px 12px;display:flex}.sidebar-title{font-family:var(--font-display);color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.03em;font-size:13px;font-weight:700}.sidebar-buttons{align-items:center;gap:4px;display:flex}.sidebar-list{flex:1;padding:12px 8px;overflow-y:auto}.sidebar-section-label{color:var(--color-text-soft);text-transform:uppercase;letter-spacing:.05em;margin:16px 8px 8px;font-size:11px;font-weight:700;display:block}.sidebar-empty{text-align:center;color:var(--color-text-soft);margin-top:40px;font-size:13px;line-height:1.6}.sidebar-btn{background:var(--color-accent-soft);border:1px solid var(--color-border);color:var(--color-text);cursor:pointer;border-radius:8px;justify-content:center;align-items:center;width:30px;height:30px;font-family:inherit;transition:all .2s;display:flex}.sidebar-btn:hover{background:var(--color-border-strong)}.mob-close{display:none!important}@media (width<=720px){.mob-close{display:flex!important}}.user-profile-container{border-top:1px solid var(--color-border);flex-direction:column;gap:12px;margin-top:auto;padding:16px 12px;display:flex}.user-profile{background:var(--color-surface-subtle);border:1px solid var(--color-border);border-radius:10px;align-items:center;gap:10px;padding:12px;transition:all .3s;display:flex;box-shadow:0 1px 3px #0000000d}html[data-theme=light] .user-profile{background-color:#f3f4f6!important;border:1.5px solid #0006!important}.user-info{flex:1;align-items:center;gap:10px;min-width:0;display:flex}.user-avatar{background:var(--color-bot-icon-bg);width:32px;height:32px;color:var(--color-bot-icon-text);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:14px;font-weight:700;display:flex}.user-name{color:var(--color-text);text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:600;overflow:hidden}.logout-button{background:var(--color-bot-icon-bg);width:100%;color:var(--color-bot-icon-text);border:1px solid var(--color-border);cursor:pointer;text-transform:uppercase;letter-spacing:.03em;border-radius:8px;padding:11px 14px;font-family:inherit;font-size:12px;font-weight:700;transition:all .2s}.logout-button:hover{filter:brightness(.8);transform:translateY(-1px)}.logout-button:active{transform:translateY(0)}.logout-button:disabled{opacity:.6;cursor:not-allowed}.chat-item{cursor:pointer;background:0 0;border:1px solid #0000;border-radius:9px;align-items:center;gap:8px;padding:8px 9px;transition:all .2s;display:flex;position:relative}.chat-item--active{background:var(--color-accent-soft);border:1px solid var(--color-border)}.chat-item--editing{background:var(--color-accent-soft);cursor:default}.chat-item:hover:not(.chat-item--active):not(.chat-item--editing){background:var(--color-accent-soft)}.chat-icon{color:var(--color-text-muted);flex-shrink:0;align-items:center;display:flex}.chat-text{color:var(--color-text);text-overflow:ellipsis;white-space:nowrap;flex:1;font-size:13px;font-weight:500;overflow:hidden}.chat-item-input{border:none;border-bottom:1px solid var(--color-border-strong);color:var(--color-text);background:0 0;outline:none;flex:1;min-width:0;margin:0;padding:0;font-size:13px}.chat-item-actions{gap:4px;display:flex}.chat-action-btn,.chat-delete-btn{color:var(--color-text-soft);cursor:pointer;background:0 0;border:none;border-radius:4px;justify-content:center;align-items:center;padding:3px;transition:all .2s;display:flex}.chat-action-btn:hover{color:var(--color-text)}.chat-star--active{color:#f59e0b!important}.chat-delete-btn:hover{color:#ff6b6b;background:#ff6b6b1a}.chat-container{flex:1;padding:24px 16px 8px;overflow-y:auto}.chat-messages-wrapper{flex-direction:column;width:100%;max-width:720px;min-height:100%;margin:0 auto;display:flex}.message-bubble{align-items:flex-start;gap:12px;width:100%;margin-bottom:24px;animation:.3s both fadeUp;display:flex}.message-bubble--user{flex-direction:row-reverse;align-items:center}.message-bubble--user .message-avatar{margin-top:0}.message-avatar{border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;margin-top:6px;display:flex}.message-avatar--user{background:var(--brand-gradient);color:var(--color-accent-contrast);border:none}.message-avatar--bot{color:inherit;background:0 0!important;border:none!important}.message-text{word-break:break-word;max-width:80%;padding:10px 16px;font-size:15px;line-height:1.6}.message-text--user{background:var(--brand-gradient);color:var(--color-accent-contrast);white-space:pre-wrap;border:none;border-radius:20px 4px 20px 20px;padding:8px 14px}.message-text--bot{max-width:92%;color:var(--color-text);background:0 0;border:none;padding-left:0}.markdown-content{overflow-wrap:break-word;line-height:1.7;position:relative}.streaming-cursor-clean{vertical-align:middle;color:var(--color-text);margin-left:4px;font-size:1.1em;font-weight:200;animation:.8s infinite blink;display:inline-block}@keyframes blink{0%,to{opacity:1}50%{opacity:0}}.markdown-content h3{letter-spacing:.02em;color:var(--color-text);font-size:1.25rem;font-weight:600;font-family:var(--font-display);margin:1.2rem 0 .5rem}.markdown-content h3:first-child{margin-top:0}.markdown-content p{margin-bottom:.8rem;display:inline}.markdown-content:not(.is-streaming) p{display:block}.markdown-content ul,.markdown-content ol{margin-bottom:1rem;padding-left:1.5rem}.markdown-content li{margin-bottom:.3rem}.markdown-content strong{color:var(--color-text);font-weight:700}.markdown-content hr{border:none;border-top:1px solid var(--color-border);margin:1.5rem 0}@media (width<=720px){.message-text{max-width:88%}.message-text--bot{max-width:95%;padding:10px 14px 10px 0}}.typing-dots{align-items:center;gap:5px;display:inline-flex}.typing-dot{background:var(--color-text-soft);border-radius:50%;width:7px;height:7px;animation:1.2s ease-in-out infinite bounce;display:inline-block}@keyframes bounce{0%,80%,to{transform:translateY(0)}40%{transform:translateY(-5px)}}.welcome-section{text-align:center;flex-direction:column;flex:1;justify-content:center;align-items:center;padding:32px 16px;animation:.4s fadeUp;display:flex}.welcome-label{letter-spacing:.12em;text-transform:uppercase;color:var(--color-text-soft);margin-bottom:18px;font-size:11px}.welcome-title{background:var(--brand-gradient);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;margin-bottom:18px;font-family:Poppins,sans-serif;font-size:clamp(30px,6vw,50px);font-weight:800;line-height:1.1}.welcome-title-accent{color:inherit}.welcome-subtitle{color:var(--color-text-muted);max-width:360px;font-size:14px;line-height:1.75}.chat-input-wrapper{flex-shrink:0;padding:10px 16px 18px}.chat-input-content{max-width:720px;margin:0 auto}.input-container{background:var(--color-input-bg);border:1px solid var(--color-input-border);-webkit-backdrop-filter:blur(12px);box-shadow:var(--shadow-soft);border-radius:16px;align-items:center;gap:8px;padding:7px 11px;transition:all .2s;display:flex;cursor:text!important}.input-container:focus-within{border-color:var(--color-text-soft);background:var(--color-surface)}.input-textarea{max-height:160px;color:var(--color-text);resize:none;scrollbar-width:none;-ms-overflow-style:none;background:0 0;border:none;outline:none;flex:1;padding:4px 0;font-size:14px;line-height:1.6;overflow-y:auto;cursor:text!important}.input-textarea::placeholder{color:var(--color-text-soft)}.input-textarea::-webkit-scrollbar{display:none}.input-separator{background-color:var(--color-border);width:1px;height:20px;margin:0 4px}.send-button{border:none;border-radius:9px;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;transition:all .2s;display:flex;cursor:pointer!important}.send-button:disabled{background:var(--color-accent-soft);color:var(--color-text-soft);cursor:not-allowed!important}.send-button:not(:disabled){background:var(--color-accent);color:var(--color-accent-contrast);cursor:pointer!important}.input-hint{text-align:center;color:var(--color-text-soft);margin-top:7px;font-size:11px}.chat-area-header{border-bottom:1px solid var(--color-border);z-index:100;flex-shrink:0;justify-content:space-between;align-items:center;height:52px;padding:10px 20px;display:flex;background:0 0!important}.chat-header-brand{font-family:var(--font-display);letter-spacing:-.01em;background:var(--brand-gradient);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;font-size:17px;font-weight:700}.chat-user-avatar{background:var(--brand-gradient);width:32px;height:32px;color:var(--color-accent-contrast);box-shadow:var(--shadow-soft);border-radius:50%;justify-content:center;align-items:center;font-size:12px;font-weight:700;display:flex}@media (width<=720px){.chat-area-header{display:none!important}}.custom-cursor{pointer-events:none;z-index:9999;mix-blend-mode:difference;background-color:#fff;border:none;border-radius:50%;width:20px;height:20px;transition:opacity .15s;position:fixed;top:0;left:0}.custom-cursor--hidden{opacity:0}@media (width<=720px){.custom-cursor{display:none}}@keyframes _fadeUp_ckx2t_1{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}._pageShell_ckx2t_15{min-height:100dvh;padding:max(24px, env(safe-area-inset-top)) 16px;background:var(--color-background);font-family:var(--font-sans);color:var(--color-text);justify-content:center;align-items:center;display:flex;position:relative;overflow-y:auto}._authLayout_ckx2t_41{z-index:10;width:100%;max-width:420px;animation:.6s cubic-bezier(.2,.8,.2,1) _fadeUp_ckx2t_1;position:relative}._authPanel_ckx2t_57{background:var(--color-surface);-webkit-backdrop-filter:blur(16px);border:1px solid var(--color-border-strong);box-shadow:var(--shadow-medium);border-radius:24px;padding:40px 32px}._authCardHeader_ckx2t_77{text-align:left;margin-bottom:32px}._authEyebrow_ckx2t_87{text-transform:uppercase;letter-spacing:.15em;color:var(--color-text-soft);margin-bottom:10px;font-size:11px;font-weight:700;display:block}._authCardHeader_ckx2t_77 h1{font-family:var(--font-display);color:var(--color-text);letter-spacing:-.03em;margin-bottom:10px;font-size:28px;font-weight:800;line-height:1.1}._authCardHeader_ckx2t_77 p{color:var(--color-text-muted);font-size:14px;line-height:1.6}._authForm_ckx2t_139{flex-direction:column;gap:20px;display:flex}._formField_ckx2t_151{flex-direction:column;gap:8px;display:flex}._formField_ckx2t_151 label{color:var(--color-text-muted);padding-left:2px;font-size:13px;font-weight:600}._formField_ckx2t_151 input{background:var(--color-input-bg);border:1px solid var(--color-input-border);color:var(--color-text);font-size:15px;font-family:var(--font-sans);border-radius:12px;padding:14px 16px;transition:all .2s cubic-bezier(.4,0,.2,1)}._formField_ckx2t_151 input:focus{border-color:var(--color-text-soft);background:var(--color-surface-subtle);box-shadow:0 0 0 4px var(--color-accent-soft);outline:none}._primaryButton_ckx2t_213{background:var(--color-accent);color:var(--color-accent-contrast);cursor:pointer;font-size:15px;font-weight:700;font-family:var(--font-sans);border:none;border-radius:12px;margin-top:10px;padding:14px;transition:all .2s}._primaryButton_ckx2t_213:hover:not(:disabled){filter:brightness(.95);transform:translateY(-1.5px);box-shadow:0 4px 12px #0000001a}._primaryButton_ckx2t_213:disabled{opacity:.5;cursor:not-allowed}._secondaryButton_ckx2t_263{background:var(--color-surface-subtle);color:var(--color-text);border:1px solid var(--color-border);text-align:center;font-size:14px;font-weight:600;font-family:var(--font-sans);border-radius:12px;padding:12px;text-decoration:none;transition:all .2s}._secondaryButton_ckx2t_263:hover{background:var(--color-accent-soft);border-color:var(--color-border-strong)}._authFooter_ckx2t_301{border-top:1px solid var(--color-border);text-align:center;flex-direction:column;gap:16px;margin-top:32px;padding-top:24px;display:flex}._authFooter_ckx2t_301 p{color:var(--color-text-muted);font-size:14px}._textLink_ckx2t_331{color:var(--color-text);border-bottom:1.5px solid var(--color-border);font-weight:700;text-decoration:none;transition:all .2s}._textLink_ckx2t_331:hover{border-bottom-color:var(--color-text)}._formMessage_ckx2t_355{border-radius:10px;margin:0;padding:12px;font-size:13px;line-height:1.5}._errorMessage_ckx2t_371{color:#ef4444;background:#ef444414;border:1px solid #ef444433}@media (width>=480px){._formRow_ckx2t_385{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}._authFooter_ckx2t_301{text-align:left;flex-direction:row;justify-content:space-between}}:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--font-sans:"DM Sans", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-display:"Poppins", sans-serif;--color-background:#000;--color-surface:#0a0a0a;--color-surface-subtle:#050505;--color-border:#ffffff1a;--color-border-strong:#ffffff26;--color-text:#fff;--color-text-muted:#fff9;--color-text-soft:#fff6;--color-accent:#fff;--color-accent-soft:#ffffff14;--color-accent-contrast:#000;--color-input-bg:#ffffff0d;--color-input-border:#ffffff1a;--brand-gradient:linear-gradient(135deg, #fff, #b0b0b0);--shadow-medium:0 8px 32px #0009;--color-bot-icon-bg:#fff;--color-bot-icon-text:#000}[data-theme=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--color-background:#fff;--color-surface:#fff;--color-surface-subtle:#f3f4f6;--color-border:#d1d5db;--color-border-strong:#9ca3af;--color-text:#000;--color-text-muted:#374151;--color-text-soft:#6b7280;--color-accent:#000;--color-accent-soft:#0000000d;--color-accent-contrast:#fff;--color-input-bg:#f9fafb;--color-input-border:#d1d5db;--brand-gradient:linear-gradient(135deg, #000, #4b5563);--shadow-medium:0 10px 25px #0000000d;--color-bot-icon-bg:#000;--color-bot-icon-text:#fff}html[data-theme=light] body{color:#000!important;background-color:#fff!important}html[data-theme=light] .sidebar,html[data-theme=light] .desk-sidebar,html[data-theme=light] .mob-sidebar{background-color:#fff!important;border-color:#e5e7eb!important}html[data-theme=light] .user-profile-container,html[data-theme=light] .sidebar-footer{border-color:#e5e7eb!important}html[data-theme=light] .sidebar-title,html[data-theme=light] .chat-text,html[data-theme=light] .user-name{color:#000!important}html[data-theme=light] .chat-icon svg,html[data-theme=light] .sidebar-buttons svg{color:#374151!important}html[data-theme=light] .logout-button,html[data-theme=light] .user-avatar{color:#fff!important;background-color:#000!important;background-image:none!important}*{box-sizing:border-box;margin:0;padding:0}html,body,#root{width:100%;min-height:100%}body{font-family:var(--font-sans);background:var(--color-background);color:var(--color-text);transition:background-color .2s,color .2s;overflow-x:hidden}a{color:inherit;text-decoration:none}::-webkit-scrollbar{width:4px}::-webkit-scrollbar-thumb{background:#ffffff1a;border-radius:2px}textarea{resize:none;color:inherit;background:0 0;border:none;outline:none;font-family:inherit}.app-shell{background:radial-gradient(ellipse 70% 55% at 65% 15%, #ffffff0d 0%, transparent 55%), var(--color-background);min-height:100vh}.page-shell{background:radial-gradient(ellipse 70% 55% at 65% 15%, #ffffff0d 0%, transparent 55%), var(--color-background);justify-content:center;align-items:center;min-height:100vh;padding:24px 16px;display:flex}.auth-layout{align-items:stretch;gap:16px;width:min(100%,1080px);display:grid}.auth-panel{border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-soft);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#ffffff0d;padding:24px}.auth-hero{color:var(--color-text);background:linear-gradient(135deg,#ffffff1a,#ffffff0d),#ffffff0d;border:1px solid #ffffff1a;align-content:start;gap:16px;display:grid}.auth-eyebrow{text-transform:uppercase;letter-spacing:.08em;opacity:.7;color:#ffffff80;font-size:.75rem;font-weight:700}.auth-hero h1,.auth-card h1,.home-card h1{font-family:var(--font-display);font-size:clamp(1.9rem,5vw,3.4rem);font-weight:800;line-height:1.05}.auth-hero p,.auth-card p,.home-card p{color:var(--color-text-muted);line-height:1.6}.auth-hero p{color:#e2e2ecb8}.feature-list{gap:12px;margin-top:8px;display:grid}.feature-item{border-radius:var(--radius-md);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#ffffff0a;border:1px solid #ffffff14;padding:14px 16px}.feature-item strong{color:var(--color-text);margin-bottom:4px;font-size:.95rem;display:block}.feature-item span{color:var(--color-text-muted);font-size:.92rem;line-height:1.5}.auth-card,.home-card{gap:20px;display:grid}.auth-card-header{gap:10px;display:grid}.auth-form,.form-row{gap:14px;display:grid}.form-field{gap:8px;display:grid}.form-field label{color:var(--color-text);font-size:.92rem;font-weight:600}.form-field input{border:1px solid var(--color-input-border);border-radius:var(--radius-md);background:var(--color-input-bg);width:100%;min-height:48px;color:var(--color-text);outline:none;padding:12px 14px;font-family:inherit;transition:border-color .2s,box-shadow .2s,background-color .2s}.form-field input::placeholder{color:var(--color-text-soft)}.form-field input:focus{border-color:var(--color-input-focus);box-shadow:0 0 0 4px var(--color-focus-ring)}.primary-button,.secondary-button,.page-link{border-radius:var(--radius-md);cursor:pointer;border:1px solid #0000;justify-content:center;align-items:center;min-height:48px;padding:12px 16px;font-family:inherit;font-weight:600;transition:transform .18s,background-color .2s,border-color .2s,color .2s;display:inline-flex}.primary-button{color:var(--color-accent-contrast);background:linear-gradient(135deg,#fff,#d0d0d0)}.primary-button:disabled{opacity:.6;cursor:not-allowed;transform:none}.primary-button:hover:not(:disabled),.secondary-button:hover,.page-link:hover{transform:translateY(-2px)}.secondary-button,.page-link{border-color:var(--color-border-strong);color:var(--color-text);background:#ffffff12}.secondary-button:hover{background:#ffffff1a}.auth-footer,.page-links{flex-wrap:wrap;gap:12px;display:flex}.auth-footer{border-top:1px solid var(--color-border);justify-content:space-between;align-items:center;margin-top:8px;padding-top:16px}.auth-footer p{color:var(--color-text-muted);font-size:.95rem}.text-link{color:#10a37f;font-weight:600;transition:color .2s}.text-link:hover{color:#0c8c6a}.form-message{border-radius:var(--radius-md);padding:12px;font-size:.94rem;line-height:1.5}.error-message{color:#ff8a8a;background:#ff6b6b1a;border:1px solid #ff6b6b4d}@media (width>=720px){.page-shell{padding:40px 24px}.auth-layout{grid-template-columns:1.02fr .98fr;gap:20px}.auth-panel{padding:32px}.form-row{grid-template-columns:repeat(2,minmax(0,1fr))}}
