*{margin:0;padding:0;box-sizing:border-box}:root{--primary-bg: #0f0f23;--secondary-bg: #1a1a2e;--accent-color: #6366f1;--accent-hover: #5855eb;--text-primary: #ffffff;--text-secondary: #a1a1aa;--border-color: #374151;--success-color: #10b981;--danger-color: #ef4444;--warning-color: #f59e0b;--glass-bg: rgba(255, 255, 255, .1);--glass-border: rgba(255, 255, 255, .2);--shadow-light: rgba(0, 0, 0, .1);--shadow-medium: rgba(0, 0, 0, .15);--shadow-heavy: rgba(0, 0, 0, .25)}body{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background:linear-gradient(135deg,#0f0f23,#1a1a2e,#16213e);color:var(--text-primary);line-height:1.6;min-height:100vh}.app{display:flex;height:100vh;overflow:hidden;position:relative}@media (max-width: 768px){.app{flex-direction:column}}.app:before{content:"";position:fixed;top:0;left:0;width:100%;height:100%;background:radial-gradient(circle at 20% 80%,rgba(99,102,241,.05) 0%,transparent 50%),radial-gradient(circle at 80% 20%,rgba(168,85,247,.05) 0%,transparent 50%),radial-gradient(circle at 40% 40%,rgba(16,185,129,.03) 0%,transparent 50%);pointer-events:none;z-index:-1}.sidebar{background:linear-gradient(180deg,var(--secondary-bg) 0%,rgba(26,26,46,.98) 100%);color:var(--text-secondary);height:100vh;width:280px;display:flex;flex-direction:column;border-right:1px solid rgba(255,255,255,.1);transition:all .3s ease;position:relative;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);box-shadow:4px 0 20px #0000001a}.sidebar:before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(99,102,241,.02) 0%,transparent 50%),radial-gradient(circle at 50% 0%,rgba(168,85,247,.03) 0%,transparent 70%);pointer-events:none;z-index:0}.new-chat-button{display:flex;justify-content:space-between;align-items:center;margin:16px;padding:12px 16px;border-radius:12px;background:linear-gradient(135deg,var(--accent-color),var(--accent-hover));border:none;cursor:pointer;color:var(--text-primary);font-weight:600;font-size:14px;transition:all .3s ease;box-shadow:0 4px 12px #6366f14d;position:sticky;top:0;z-index:10;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.new-chat-button:hover{transform:translateY(-2px);box-shadow:0 6px 20px #6366f166;background:linear-gradient(135deg,var(--accent-hover),var(--accent-color))}.sidebar-content{flex:1;display:flex;flex-direction:column;overflow-y:auto;padding-bottom:80px}.logo{height:36px;width:36px;object-fit:contain;filter:brightness(1.1)}button span{font-size:20px}button:hover{transform:translateY(-2px);box-shadow:0 6px 20px #6366f166}.history{margin:10px;padding:10px;height:100%}.history li{padding:14px 18px;margin:6px 12px;border-radius:12px;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);font-size:14px;font-weight:500;color:var(--text-secondary);border:1px solid transparent;position:relative;background:#ffffff05;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);z-index:1}.history li:before{content:"";position:absolute;inset:0;background:linear-gradient(135deg,#6366f11a,#a855f70d);border-radius:12px;opacity:0;transition:opacity .3s ease;z-index:-1}.history li:hover{color:var(--text-primary);transform:translate(4px);border-color:#6366f133;background:#ffffff0d}.history li:hover:before{opacity:1}.history li.highlighted{background:linear-gradient(135deg,#6366f126,#a855f71a);color:var(--text-primary);border-color:#6366f14d;font-weight:600}.history li.highlighted:before{opacity:.7}.sign{text-align:center;color:var(--text-secondary);font-size:12px;padding:16px;border-top:1px solid var(--border-color);position:sticky;bottom:0;background-color:var(--secondary-bg);z-index:10}.fa-trash{opacity:0;position:absolute;right:0}.history li:hover .fa-trash{opacity:1;color:#fff}.fa-trash:hover{color:#f87171!important}.highlighted{background-color:#6366f126;border-radius:10px;color:var(--text-primary);border-left:3px solid var(--accent-color)}.sidebar-overlay{display:none}@media (max-width: 768px){.sidebar{position:fixed;left:-100%;top:0;z-index:1000;transition:left .3s ease}.sidebar.sidebar-open{left:0}.sidebar-overlay{display:block;position:fixed;inset:0;background:#000000b3;z-index:999;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}}.confirm-overlay{position:fixed;inset:0;background-color:#000000b3;display:flex;justify-content:center;align-items:center;z-index:10000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);animation:fadeIn .2s ease}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.confirm-dialog{background-color:var(--secondary-bg);border-radius:16px;padding:24px;max-width:400px;width:90%;border:1px solid var(--border-color);box-shadow:0 20px 60px #00000080;animation:slideUp .3s ease}@keyframes slideUp{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}.confirm-header{display:flex;align-items:center;gap:12px;margin-bottom:16px}.confirm-header i{color:#f59e0b;font-size:24px}.confirm-header h3{color:var(--text-primary);font-size:20px;font-weight:600;margin:0}.confirm-message{color:var(--text-secondary);font-size:15px;line-height:1.6;margin-bottom:24px}.confirm-actions{display:flex;gap:12px;justify-content:flex-end}.confirm-btn{padding:10px 20px;border-radius:10px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s ease;border:none}.cancel-btn{background-color:transparent;border:2px solid var(--border-color);color:var(--text-primary)}.cancel-btn:hover{background-color:#ffffff0d;border-color:var(--text-secondary)}.delete-btn{background:linear-gradient(135deg,#ef4444,#dc2626);color:#fff;box-shadow:0 4px 12px #ef44444d}.delete-btn:hover{transform:translateY(-2px);box-shadow:0 6px 20px #ef444466}.chatWindow{background-color:var(--primary-bg);height:100vh;width:100%;display:flex;flex-direction:column;text-align:center;position:relative;overflow:hidden}.chatWindow:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 10% 20%,rgba(99,102,241,.03) 0%,transparent 50%),radial-gradient(circle at 90% 80%,rgba(168,85,247,.03) 0%,transparent 50%);pointer-events:none;z-index:0}.chatContent{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;overflow-y:auto;width:100%}.loaderContainer{display:flex;justify-content:center;align-items:center;padding:2rem;position:relative}.loader{width:40px;height:40px;border-radius:50%;background:linear-gradient(135deg,var(--accent-color),var(--accent-hover));position:relative;animation:spin 1s linear infinite}.loader:before{content:"";position:absolute;inset:2px;background:var(--primary-bg);border-radius:50%}.loader:after{content:"";position:absolute;inset:8px;background:linear-gradient(135deg,var(--accent-color),var(--accent-hover));border-radius:50%;animation:pulse 1.5s ease-in-out infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.7;transform:scale(.8)}}.navbar{width:100%;display:flex;justify-content:space-between;align-items:center;padding:20px 32px;background:linear-gradient(145deg,var(--secondary-bg),rgba(26,26,26,.95));border-bottom:1px solid var(--border-color);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);box-shadow:0 4px 20px #0000001a;position:sticky;top:0;z-index:100;transition:transform .3s ease-in-out,opacity .3s ease-in-out,margin .3s ease-in-out}.navbar-visible{transform:translateY(0);opacity:1}.navbar-hidden{transform:translateY(-100%);opacity:0;pointer-events:none;margin-bottom:-100px}.brand-name{font-size:26px;font-weight:800;display:flex;align-items:center;gap:12px;transition:all .3s ease;background:linear-gradient(135deg,var(--accent-color),#a855f7,#10b981);background-size:200% 200%;animation:gradientFlow 3s ease infinite;-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.brand-name:hover{transform:scale(1.02)}.brand-name span{background:linear-gradient(135deg,var(--accent-color),#a855f7);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.navbar-logo{height:40px;width:40px;object-fit:contain;filter:drop-shadow(0 2px 4px rgba(99,102,241,.3))}.navbar span,.userIconDiv{margin:1rem 2rem}.userIcon{background:linear-gradient(135deg,var(--accent-color),var(--accent-hover));height:42px;width:42px;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 16px #6366f14d;font-size:18px}.userIcon:hover{transform:scale(1.1) rotate(5deg);box-shadow:0 8px 25px #6366f180}.userIcon:active{transform:scale(.95)}.chatInput{width:100%;display:flex;flex-direction:column;justify-content:center;align-items:center}.inputBox{width:100%;position:relative;max-width:700px;display:flex;justify-content:space-between;align-items:center}input{width:100%;border:2px solid var(--border-color);background:linear-gradient(145deg,var(--secondary-bg),rgba(26,26,26,.9));padding:18px 120px 18px 68px;font-size:16px;border-radius:24px;color:var(--text-primary);transition:all .3s ease;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:0 4px 20px #0000001a}input::placeholder{color:var(--text-secondary);font-weight:400}input:focus{outline:none;border-color:var(--accent-color);box-shadow:0 0 0 3px #6366f126,0 8px 32px #00000026;transform:translateY(-2px)}#submit{cursor:pointer;height:48px;width:48px;font-size:20px;position:absolute;right:10px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--accent-color),var(--accent-hover));border-radius:50%;transition:all .3s ease;color:#fff;box-shadow:0 4px 16px #6366f14d}#submit:hover{transform:scale(1.1) rotate(5deg);box-shadow:0 8px 25px #6366f180}#submit:active{transform:scale(.95)}.image-upload-btn{cursor:pointer;height:48px;width:48px;font-size:18px;position:absolute;left:10px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--accent-color),var(--accent-hover));border-radius:50%;transition:all .3s ease;color:#fff;box-shadow:0 4px 16px #6366f14d;z-index:10}.image-upload-btn:hover{transform:scale(1.1);box-shadow:0 8px 25px #6366f180}.image-upload-btn:active{transform:scale(.95)}.image-preview-container{width:100%;max-width:700px;margin-bottom:12px;display:flex;justify-content:flex-start}.image-preview{position:relative;max-width:200px;border-radius:12px;overflow:hidden;background:var(--secondary-bg);border:2px solid var(--border-color);box-shadow:0 4px 12px #0003}.image-preview img{width:100%;height:auto;display:block;max-height:200px;object-fit:cover}.remove-image-btn{position:absolute;top:8px;right:8px;background:#ef4444e6;color:#fff;border:none;border-radius:50%;width:28px;height:28px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s ease;font-size:14px;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.remove-image-btn:hover{background:#dc2626;transform:scale(1.1)}.voice-btn{cursor:pointer;height:48px;width:48px;font-size:18px;position:absolute;right:68px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--accent-color),var(--accent-hover));border-radius:50%;transition:all .3s ease;color:#fff;box-shadow:0 4px 16px #6366f14d}.voice-btn:hover{transform:scale(1.1);box-shadow:0 8px 25px #6366f180}.voice-btn:active{transform:scale(.95)}.voice-btn.listening{background:linear-gradient(135deg,#ef4444,#dc2626);animation:pulse-red 1.5s ease-in-out infinite;box-shadow:0 4px 16px #ef444466}.voice-btn.listening:hover{box-shadow:0 8px 25px #ef444499}@keyframes pulse-red{0%,to{opacity:1;transform:scale(1);box-shadow:0 4px 16px #ef444466}50%{opacity:.8;transform:scale(1.05);box-shadow:0 8px 32px #ef444499}}.info{font-size:.8rem;padding:.5rem;color:#b4b4b4}.dropDown{position:absolute;top:4.5rem;right:2rem;width:180px;background-color:var(--secondary-bg);padding:8px;border-radius:12px;text-align:left;z-index:1000;box-shadow:0 8px 32px #0006;border:1px solid var(--border-color);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.dropDownItem{font-size:14px;margin:4px 0;padding:10px 12px;cursor:pointer;border-radius:8px;transition:all .2s ease;color:var(--text-secondary);display:flex;align-items:center;gap:10px}.dropDownItem:hover{background-color:#6366f11a;color:var(--text-primary)}.user-info{background-color:#6366f10d;border-bottom:1px solid var(--border-color);margin-bottom:8px;padding-bottom:12px;font-weight:600;color:var(--text-primary);cursor:default}.user-info:hover{background-color:#6366f10d}.hamburger-menu{display:none;background:linear-gradient(135deg,var(--accent-color),var(--accent-hover));border:none;color:#fff;font-size:20px;width:42px;height:42px;border-radius:50%;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 16px #6366f14d;align-items:center;justify-content:center}.hamburger-menu:hover{transform:scale(1.1);box-shadow:0 8px 25px #6366f180}.hamburger-menu:active{transform:scale(.95)}@media (max-width: 768px){.hamburger-menu{display:flex}.navbar{padding:16px 20px}.brand-name{font-size:20px}.logo{height:32px;width:32px}.chatContent{padding:0 10px}.chats{padding:1rem;max-width:100%}.inputBox{max-width:100%;padding:0 10px}input{font-size:15px;padding:16px 110px 16px 60px}#submit,.voice-btn,.image-upload-btn{height:44px;width:44px;font-size:16px}.voice-btn{right:60px}.userMessage{max-width:85%;font-size:14px;padding:14px 20px}.gptDiv{font-size:14px;padding:16px}h1{font-size:2rem;margin:2rem 0}.dropDown{right:1rem;top:4rem}.image-preview{max-width:150px}.chat-image{max-width:250px}}@media (max-width: 480px){.brand-name{font-size:18px}input{font-size:14px;padding:14px 100px 14px 55px}#submit,.voice-btn,.image-upload-btn{height:40px;width:40px;font-size:15px}.voice-btn{right:55px}.userMessage{max-width:90%;font-size:13px;padding:12px 16px}.gptDiv{font-size:13px;padding:14px}h1{font-size:1.5rem}.image-preview{max-width:120px}.chat-image{max-width:200px}}.chats{max-width:700px;overflow-y:auto;padding:2rem;width:100%}h1{color:var(--text-primary);font-size:3rem;margin:4rem 0;text-align:center;font-weight:800;background:linear-gradient(135deg,var(--accent-color),#a855f7,#10b981);background-size:200% 200%;animation:gradientFlow 3s ease infinite;-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;text-shadow:0 0 30px rgba(99,102,241,.3);position:relative}@keyframes gradientFlow{0%{background-position:0% 50%}50%{background-position:100% 50%}to{background-position:0% 50%}}.userDiv{display:flex;justify-content:flex-end;font-size:.9rem}.gptDiv{text-align:left;font-size:15px;line-height:1.7;color:var(--text-primary);padding:20px;background:linear-gradient(145deg,var(--secondary-bg),rgba(26,26,26,.8));border-radius:20px 20px 20px 4px;margin-bottom:20px;border:1px solid var(--border-color);box-shadow:0 4px 20px #00000026;animation:slideInLeft .4s ease-out;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);position:relative}@keyframes slideInLeft{0%{opacity:0;transform:translate(-30px)}to{opacity:1;transform:translate(0)}}.userMessage{background:linear-gradient(135deg,var(--accent-color),var(--accent-hover));padding:16px 24px;border-radius:20px 20px 4px;margin-left:auto;margin-right:0;max-width:70%;width:fit-content;color:#fff;font-size:15px;line-height:1.6;box-shadow:0 6px 20px #6366f14d;animation:slideInRight .4s ease-out;position:relative}.userMessage p{margin:0}.chat-image{width:100%;max-width:300px;border-radius:12px;margin-bottom:10px;display:block;border:2px solid rgba(255,255,255,.2);box-shadow:0 4px 12px #0003}@keyframes slideInRight{0%{opacity:0;transform:translate(30px)}to{opacity:1;transform:translate(0)}}.hljs{border-radius:12px!important;background-color:#1e1e1e!important;padding:16px!important;margin:12px 0!important;border:1px solid var(--border-color)!important}pre{white-space:pre-wrap}pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}/*!
  Theme: GitHub Dark
  Description: Dark theme as seen on github.com
  Author: github.com
  Maintainer: @Hirse
  Updated: 2021-05-15

  Outdated base version: https://github.com/primer/github-syntax-dark
  Current colors taken from GitHub's CSS
*/.hljs{color:#c9d1d9;background:#0d1117}.hljs-doctag,.hljs-keyword,.hljs-meta .hljs-keyword,.hljs-template-tag,.hljs-template-variable,.hljs-type,.hljs-variable.language_{color:#ff7b72}.hljs-title,.hljs-title.class_,.hljs-title.class_.inherited__,.hljs-title.function_{color:#d2a8ff}.hljs-attr,.hljs-attribute,.hljs-literal,.hljs-meta,.hljs-number,.hljs-operator,.hljs-variable,.hljs-selector-attr,.hljs-selector-class,.hljs-selector-id{color:#79c0ff}.hljs-regexp,.hljs-string,.hljs-meta .hljs-string{color:#a5d6ff}.hljs-built_in,.hljs-symbol{color:#ffa657}.hljs-comment,.hljs-code,.hljs-formula{color:#8b949e}.hljs-name,.hljs-quote,.hljs-selector-tag,.hljs-selector-pseudo{color:#7ee787}.hljs-subst{color:#c9d1d9}.hljs-section{color:#1f6feb;font-weight:700}.hljs-bullet{color:#f2cc60}.hljs-emphasis{color:#c9d1d9;font-style:italic}.hljs-strong{color:#c9d1d9;font-weight:700}.hljs-addition{color:#aff5b4;background-color:#033a16}.hljs-deletion{color:#ffdcd7;background-color:#67060c}.auth-container{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(145deg,var(--secondary-bg),rgba(26,26,26,.95));padding:20px}.auth-card{background:linear-gradient(145deg,var(--secondary-bg),rgba(26,26,26,.95));border-radius:24px;padding:32px 28px;width:100%;max-width:380px;box-shadow:0 20px 60px #0009,0 0 0 1px #ffffff0d,inset 0 1px #ffffff1a;border:1px solid var(--border-color);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);position:relative;z-index:1}.auth-header{text-align:center;margin-bottom:24px;display:flex;flex-direction:column;align-items:center}.auth-logo{height:80px;width:80px;object-fit:contain;margin-bottom:16px;filter:drop-shadow(0 4px 12px rgba(99,102,241,.4));animation:float 3s ease-in-out infinite}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.auth-title{font-size:32px;font-weight:700;background:linear-gradient(135deg,var(--accent-color),#a855f7);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin-bottom:8px}.auth-subtitle{color:var(--text-secondary);font-size:16px;margin:0}.auth-form{display:flex;flex-direction:column;gap:20px}.form-group{display:flex;flex-direction:column;gap:8px}.form-group label{color:var(--text-primary);font-size:14px;font-weight:500}.auth-input{width:100%;padding:14px 18px;border:2px solid var(--border-color);border-radius:14px;background:#ffffff05;color:var(--text-primary);font-size:15px;font-weight:500;transition:all .3s ease;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:inset 0 2px 4px #0000001a}.auth-input:focus{outline:none;border-color:var(--accent-color);background:#ffffff0d;box-shadow:0 0 0 3px #6366f126,inset 0 2px 4px #0000001a;transform:translateY(-1px)}.auth-input::placeholder{color:var(--text-secondary);font-weight:400}.auth-error{background-color:#ef44441a;border:1px solid var(--danger-color);color:var(--danger-color);padding:12px 16px;border-radius:10px;font-size:14px;text-align:center}.auth-success{background-color:#10b9811a;border:1px solid var(--success-color);color:var(--success-color);padding:12px 16px;border-radius:10px;font-size:14px;text-align:center}.auth-button{width:100%;padding:14px 20px;background:linear-gradient(135deg,var(--accent-color),var(--accent-hover));color:#fff;border:none;border-radius:14px;font-size:15px;font-weight:600;cursor:pointer;transition:all .3s ease;box-shadow:0 6px 24px #6366f166,0 0 0 1px #ffffff1a;position:relative;overflow:hidden}.auth-button:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);transition:left .5s ease}.auth-button:hover:before{left:100%}.auth-button:hover{transform:translateY(-2px);box-shadow:0 12px 40px #6366f180,0 0 0 1px #fff3}.auth-button:active{transform:translateY(0)}.auth-button:disabled{opacity:.6;cursor:not-allowed;transform:none}.auth-switch{text-align:center;margin-top:24px;color:var(--text-secondary);font-size:14px}.auth-link{color:var(--accent-color);cursor:pointer;font-weight:600;transition:color .2s ease}.auth-link:hover{color:var(--accent-hover);text-decoration:underline}.guest-access{margin:24px 0 16px}.divider{display:flex;align-items:center;margin:20px 0;color:var(--text-secondary);font-size:14px;font-weight:500}.divider:before,.divider:after{content:"";flex:1;height:1px;background:linear-gradient(90deg,transparent,var(--border-color),transparent)}.divider span{padding:0 20px;background:var(--secondary-bg);border-radius:12px}.guest-button{width:100%;padding:14px 20px;background:#ffffff0d;color:var(--text-primary);border:2px solid var(--border-color);border-radius:14px;font-size:15px;font-weight:600;cursor:pointer;transition:all .3s ease;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);display:flex;align-items:center;justify-content:center;gap:10px;box-shadow:0 4px 16px #0003,inset 0 1px #ffffff1a;position:relative;overflow:hidden}.guest-button:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.1),transparent);transition:left .5s ease}.guest-button:hover:before{left:100%}.guest-button:hover{background:#ffffff1a;border-color:var(--accent-color);transform:translateY(-2px);box-shadow:0 8px 32px #0000004d,0 0 0 1px #6366f133}.guest-button:disabled{opacity:.6;cursor:not-allowed;transform:none}.guest-button i{color:var(--accent-color);font-size:18px}
