@import url(https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&display=swap);*,:after,:before{box-sizing:border-box}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-webkit-tap-highlight-color:transparent;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;margin:0;overscroll-behavior:none}#root{min-height:100dvh;min-height:100vh}code{font-family:ui-monospace,SF Mono,Menlo,Monaco,Consolas,monospace}.toast-container{display:flex;flex-direction:column;gap:8px;left:50%;pointer-events:none;position:fixed;top:max(12px,env(safe-area-inset-top));transform:translateX(-50%);width:min(92vw,420px);z-index:25000}.app-container .toast-container{top:max(60px,calc(env(safe-area-inset-top) + 52px))}.toast{background:#1a1a1e;border:1px solid #ffffff1f;border-radius:12px;box-shadow:0 8px 24px #00000073;color:#f4f4f5;font-size:.88rem;line-height:1.35;padding:12px 16px;pointer-events:auto}.toast--error{background:#221418;border-color:#ef44448c}.toast--success{border-color:#22c55e73}.toast--info{border-color:#3b82f666}*{box-sizing:border-box;font-family:Inter,sans-serif;margin:0;padding:0}html{-webkit-text-size-adjust:100%;overflow-x:hidden}body{padding:env(safe-area-inset-top) env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left)}.app-container,body{background:#000;height:100dvh;min-height:100dvh;overflow:hidden}.app-container{display:flex;max-width:100vw;min-width:0;width:100%}.container,.main-chat-panel{flex:1 1;min-width:0;overflow:hidden;padding:0;width:100%}.container,.main-chat-panel,.sidebar{display:flex;flex-direction:column;height:100%}.sidebar{background:#0a0a0a;min-height:0;padding:10px;transition:transform .3s ease;width:260px;z-index:100}.sidebar.closed{height:100%;position:absolute;transform:translateX(-100%)}.new-chat-btn{align-items:center;background:#0000;border:1px solid #fff3;border-radius:10px;color:#fff;cursor:pointer;display:flex;font-size:.95rem;gap:10px;margin-bottom:12px;padding:12px 14px;text-align:left;transition:.2s}.sidebar-chats-heading{color:#fff9;font-size:.75rem;font-weight:700;letter-spacing:.1em;margin-bottom:10px;padding:0 4px;text-transform:uppercase}.sidebar-empty{color:#ffffff73;font-size:.9rem;line-height:1.4;padding:16px 10px}.history-item-title{display:block;flex:1 1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.guest-label{color:#fff9;font-size:.8rem;padding:6px 0}.new-chat-btn:hover{background:#ffffff1a}.chat-search-wrapper{margin-bottom:8px;padding:0 4px;position:relative}.chat-search-input{background:#ffffff14;border:1px solid #ffffff1f;box-sizing:border-box;color:#fff;font-size:.85rem;outline:none;padding:8px 30px 8px 10px;transition:border-color .2s;width:100%}.chat-search-input::placeholder{color:#ffffff59}.chat-search-input:focus{border-color:#ffffff59}.chat-search-clear{background:none;border:none;color:#ffffff80;cursor:pointer;font-size:1.1rem;line-height:1;padding:0 4px;position:absolute;right:10px;top:50%;transform:translateY(-50%)}.chat-search-clear:hover{color:#fff}.temp-chat-link{background:none;border:none;color:#fbbf24d9;cursor:pointer;font-size:.8rem;margin-bottom:4px;padding:4px 0;text-align:left;text-decoration:none}.temp-chat-link:hover{text-decoration:underline}.history-item-temp .history-item-title{color:#fbbf24e6}.history-list{-webkit-overflow-scrolling:touch;display:flex;flex:1 1;flex-direction:column;gap:5px;min-height:0;overflow-x:hidden;overflow-y:auto;scrollbar-color:#ffffff40 #0000;scrollbar-width:thin}.history-list::-webkit-scrollbar{width:6px}.history-list::-webkit-scrollbar-track{background:#0000}.history-list::-webkit-scrollbar-thumb{background:#ffffff40;border-radius:3px}.history-list::-webkit-scrollbar-thumb:hover{background:#fff6}.history-item{align-items:center;border-radius:5px;color:#c7d2fe;cursor:pointer;display:flex;flex-shrink:0;font-size:.9rem;gap:8px;padding:10px;transition:.2s}.history-item:hover{background:#ffffff0f}.history-item.active{background:#3b82f640;color:#60a5fa}.history-item-delete{align-items:center;background:#ef444433;border:none;border-radius:6px;color:#f87171;cursor:pointer;display:flex;flex-shrink:0;font-size:1.2rem;height:28px;justify-content:center;line-height:1;padding:0;width:28px}.history-item-delete:hover{background:#ef444459}.sidebar-footer{margin-top:10px;padding-top:10px}.usage-counter{color:#ffffffbf;font-size:.85rem;font-weight:600;margin-bottom:4px;padding:6px 0}.usage-counter .usage-free{color:#86eface6;font-weight:500}.usage-counter .usage-testing{color:#f87171;font-weight:500}.user-info-area{color:#fff;display:flex;flex-direction:column;font-size:.9rem;gap:4px;padding:8px 0}.user-info-area .user-name{color:#fff;font-weight:700}.user-info-area .user-account-number{color:#93c5fd;font-size:.8rem;font-weight:600}.user-info-area .user-email{color:#ffffffb3;font-size:.8rem}.delete-account-btn{background:none;border:none;color:#ef4444;cursor:pointer;font-size:.8rem;margin-top:5px;padding:5px;text-align:left}.delete-account-btn:hover{text-decoration:underline}.change-password-btn{background:none;border:none;color:#60a5fa;cursor:pointer;font-size:.8rem;margin-top:5px;padding:5px;text-align:left;width:100%}.change-password-btn:hover{text-decoration:underline}.sidebar-footer-actions{align-items:center;display:flex;gap:8px;justify-content:space-between;margin-top:6px}.settings-icon-btn{align-items:center;background:#ffffff0f;border:1px solid #ffffff26;border-radius:10px;color:#ffffffe6;cursor:pointer;display:flex;flex-shrink:0;height:36px;justify-content:center;padding:0;width:36px}.settings-icon-btn:hover{background:#ffffff1f;border-color:#ffffff40}.settings-icon-svg{height:18px;width:18px}.sidebar-footer-actions .logout-btn{margin-top:0}.settings-modal{background:#0d0d0d;border:1px solid #ffffff1f;border-radius:16px;box-shadow:0 20px 40px #00000080;max-width:400px;padding:24px;width:90%}.settings-modal-title{color:#fff;font-size:1.25rem;margin:0 0 8px}.settings-modal-hint{color:#ffffffa6;font-size:.85rem;line-height:1.4;margin:0 0 16px}.settings-modal-btn{background:#ffffff0a;border:1px solid #ffffff1a;border-radius:10px;color:#e5e7eb;cursor:pointer;display:block;font-size:.95rem;margin-bottom:8px;padding:12px 14px;text-align:left;width:100%}.settings-modal-btn:hover:not(:disabled){background:#ffffff14}.settings-modal-btn:disabled{cursor:not-allowed;opacity:.45}.settings-modal-btn.clear-memory-btn{border-color:#fbbf2440;color:#fbbf24}.settings-modal-btn.settings-action-btn{color:#60a5fa}.settings-modal-btn.settings-delete-btn{border-color:#ef444440;color:#ef4444}.settings-modal-close{background:#ffffff1a;border:none;border-radius:10px;color:#fff;cursor:pointer;font-size:.95rem;margin-top:8px;padding:10px;width:100%}.settings-modal-close:hover{background:#ffffff29}.modal-overlay{align-items:center;background:#0009;box-sizing:border-box;display:flex;inset:0;justify-content:center;padding:20px;position:fixed;z-index:2000}.email-noreply-hint,.email-spam-hint{color:#ffffffbf;font-size:.9rem;line-height:1.4;margin:0 0 12px}.change-password-modal{background:#0d0d0d;border:1px solid #ffffff1f;border-radius:16px;box-shadow:0 20px 40px #00000080;max-width:400px;padding:24px;width:90%}.change-password-title{color:#fff;font-size:1.25rem;font-weight:700;margin:0 0 8px}.change-password-message{color:#ffffffe6;font-size:.95rem;margin:0 0 8px}.change-password-hint{color:#ffffffa6;font-size:.85rem;line-height:1.4;margin:0 0 16px}.change-password-cancel{margin-top:12px;width:100%}.confirm-modal-box{background:#0d0d0d;border:1px solid #ffffff1f;border-radius:16px;box-shadow:0 20px 40px #00000080;max-width:400px;padding:24px;width:100%}.confirm-modal-title{color:#fff;font-size:1.25rem;font-weight:700;margin:0 0 12px}.confirm-modal-message{color:#fffc;font-size:.95rem;line-height:1.45;margin:0 0 20px}.confirm-modal-actions{display:flex;flex-wrap:wrap;gap:12px;justify-content:flex-end}.confirm-modal-cancel{background:#ffffff14;border:1px solid #fff3;border-radius:10px;color:#ffffffe6;cursor:pointer;font-size:.95rem;font-weight:500;padding:10px 18px}.confirm-modal-cancel:hover{background:#ffffff1f}.confirm-modal-confirm{background:linear-gradient(135deg,#2563eb,#3b82f6);border:none;border-radius:10px;color:#fff;cursor:pointer;font-size:.95rem;font-weight:600;padding:10px 18px}.confirm-modal-confirm:hover{filter:brightness(1.08)}.confirm-modal-confirm.danger{background:linear-gradient(135deg,#b91c1c,#dc2626)}.confirm-modal-confirm.danger:hover{filter:brightness(1.1)}.gallery-modal{background:#0d0d0d;border:1px solid #ffffff1f;border-radius:20px;display:flex;flex-direction:column;max-height:85vh;max-width:90vw;overflow:hidden}.gallery-header{align-items:center;border-bottom:1px solid #ffffff14;display:flex;justify-content:space-between;padding:16px 20px}.gallery-header h3{color:#fff;font-size:1.25rem}.gallery-close{background:none;border:none;color:#94a3b8;cursor:pointer;font-size:1.5rem;padding:0 8px}.gallery-close:hover{color:#fff}.gallery-empty,.gallery-loading{color:#94a3b8;padding:24px;text-align:center}.gallery-grid{grid-gap:12px;display:grid;flex:1 1;gap:12px;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));overflow-y:auto;padding:16px}.gallery-item{background:#111;border:1px solid #ffffff1a;border-radius:12px;cursor:pointer;overflow:hidden;transition:transform .2s,border-color .2s}.gallery-item:hover{border-color:#3b82f680;transform:scale(1.02)}.gallery-item img{display:block;height:120px;object-fit:cover;width:100%}.gallery-item span{color:#cbd5e1;display:block;font-size:.8rem;overflow:hidden;padding:8px;text-overflow:ellipsis;white-space:nowrap}.container{display:flex;flex:1 1;flex-direction:column;height:100%;min-width:0;overflow:hidden;padding:0;position:relative;width:auto}.menu-toggle{background:none;border:none;color:#fff;cursor:pointer;display:none;font-size:1.5rem;margin-right:10px}@media (max-width:768px){.sidebar{height:100%;position:absolute;transform:translateX(-100%);width:min(280px,85vw)}.sidebar.open{box-shadow:4px 0 24px #0006;transform:translateX(0)}.menu-toggle{align-items:center;display:flex;justify-content:center;min-height:44px;min-width:44px;padding:0}.container{width:100vw}.header-conversation-title{max-width:38vw}.model-selector-label{font-size:.6rem;line-height:1.2}.welcome-logo-wrap{height:min(160px,42vw);max-height:180px;max-width:180px;width:min(160px,42vw)}.welcome-popup{max-width:95%;padding:clamp(1.5rem,5vw,2.5rem)}}.sidebar-backdrop{animation:fadeIn .2s ease;background:#0006;inset:0;position:fixed;z-index:99}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.guest-btn{background:#ffffff0f;border:1px solid #fff3;border-radius:14px;color:#cbd5e1;cursor:pointer;font-size:.95rem;font-weight:500;margin-top:1rem;padding:.75rem 1rem;transition:background .2s,border-color .2s,color .2s;width:100%}.guest-btn:hover{background:#ffffff1a;border-color:#ffffff4d;color:#fff}.name-inputs{gap:.75rem}.chatbox,.name-inputs{display:flex;flex-direction:column}.chatbox{background:#000;height:100dvh;overflow:hidden;width:100%}.header{background:#141414;border-bottom:1px solid #ffffff1f;box-shadow:0 4px 20px #00000080;color:#fff;flex-shrink:0;gap:8px;justify-content:space-between;padding:max(env(safe-area-inset-top),clamp(15px,4vw,25px)) clamp(20px,5vw,50px) clamp(15px,4vw,25px);position:relative;z-index:50}.header,.header-brand-row{align-items:center;display:flex;min-width:0}.header-brand-row{flex:1 1;gap:16px}.brand{color:#fff;flex-shrink:0;font-family:Inter Tight,sans-serif;font-size:clamp(1.8rem,6vw,2.5rem);font-weight:900;letter-spacing:clamp(4px,1vw,6px);min-width:0;text-shadow:0 0 25px #3b82f6e6;text-transform:uppercase}.brand .app-logo{max-width:100%}.app-logo{display:block;height:auto;max-height:92px}.welcome-logo-wrap{display:block;margin:0 auto}.welcome-title .app-logo{max-height:260px;max-width:min(90vw,280px)}.header-conversation-title{color:#fffffffa;font-family:Inter,sans-serif;font-size:clamp(1rem,2.8vw,1.15rem);letter-spacing:.02em;line-height:1.35;margin-right:16px;max-width:180px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@media (min-width:769px){.header-conversation-title{margin-right:20px;max-width:240px}}.controls{flex-shrink:0;gap:clamp(15px,4vw,30px);min-width:0}.control-group,.controls{align-items:center;display:flex}.control-group{flex-direction:column;gap:8px}.control-group-row{align-items:center;display:flex;flex-direction:row;gap:10px}.header-temp-chat-btn{align-items:center;background:#fbbf241f;border:1px solid #fbbf2459;border-radius:10px;color:#fbbf24;cursor:pointer;display:flex;flex-direction:column;font-size:.7rem;font-weight:500;justify-content:center;line-height:1.2;min-width:0;padding:6px 10px}.header-temp-chat-line1,.header-temp-chat-line2{display:block;white-space:nowrap}.header-temp-chat-btn:hover{background:#fbbf2438}.model-selector-label{color:#ffffffb3;font-size:.7rem;font-weight:500}.custom-select{align-items:center;background:#111;border:1px solid #ffffff26;border-radius:16px;box-shadow:0 4px 12px #0006;cursor:pointer;display:flex;justify-content:space-between;min-width:clamp(100px,25vw,140px);padding:clamp(8px,2vw,12px) clamp(15px,4vw,22px);position:relative;transition:all .4s ease}.custom-select:hover{background:#1a1a1a;border-color:#60a5fa99;box-shadow:0 0 20px #3b82f640;transform:translateY(-2px)}.custom-select.locked{cursor:not-allowed;opacity:.6}.dropdown-menu{background:#0d0d0d;border:1px solid #ffffff1f;border-radius:16px;box-shadow:0 12px 40px #0009;left:0;max-height:50vh;overflow:hidden;overflow-y:auto;position:absolute;top:115%;width:100%;z-index:1000}.menu-item{color:#f1f5f9;cursor:pointer;font-size:clamp(.95rem,3vw,1.1rem);font-weight:600;padding:clamp(12px,3vw,16px) clamp(18px,5vw,24px);transition:all .3s ease}.menu-item:hover{background:#3b82f640;color:#93c5fd;transform:translateX(6px)}.selected-value{color:#fff;font-size:clamp(.95rem,3vw,1.1rem);font-weight:800;text-shadow:0 0 15px #3b82f699}.arrow{color:#93c5fd;font-size:clamp(.8rem,2vw,.9rem);margin-left:clamp(10px,3vw,15px)}.desc-label{color:#93c5fde6;font-size:clamp(.6rem,1.5vw,.7rem);font-weight:800;letter-spacing:2px;text-shadow:0 0 10px #3b82f680;text-transform:uppercase}.messages{background:#000;display:flex;flex:1 1;flex-direction:column;gap:clamp(10px,2vw,16px);overflow-y:auto;padding:clamp(20px,5vw,50px)}.message{word-wrap:break-word;border-radius:24px;box-shadow:0 4px 16px #0006;font-size:clamp(1rem,4vw,1.2rem);line-height:1.7;max-width:85%;overflow-wrap:break-word;padding:clamp(16px,4vw,24px) clamp(20px,5vw,32px);transition:all .4s ease;white-space:pre-wrap}.message:hover{box-shadow:0 8px 24px #00000080;transform:translateY(-2px)}.user{align-self:flex-end;background:linear-gradient(135deg,#1e40af,#2563eb);border:1px solid #ffffff14;color:#fff}.oberoi{align-self:flex-start;background:#111;color:#e2e8f0}.code-container{background:#0d0d0d;border:1px solid #ffffff1f;border-radius:18px;box-shadow:0 8px 24px #0006;margin:clamp(20px,5vw,30px) 0;overflow:hidden}.code-header{align-items:center;background:#0d0d0d;border-bottom:1px solid #ffffff14;display:flex;justify-content:space-between;padding:clamp(12px,3vw,16px) clamp(20px,5vw,28px)}.code-lang-tag{color:#60a5fa;font-size:clamp(.7rem,2vw,.8rem);font-weight:800;letter-spacing:3px;text-shadow:0 0 15px #60a5fa99}.code-actions{display:flex;gap:clamp(12px,3vw,20px)}.code-btn-modern{background:#1a1a1a;border:1px solid #ffffff1f;border-radius:12px;color:#e2e8f0;cursor:pointer;font-size:clamp(.8rem,2vw,.9rem);font-weight:800;padding:clamp(8px,2vw,12px) clamp(16px,4vw,24px);text-transform:uppercase;transition:all .4s ease}.code-btn-modern:hover{background:linear-gradient(90deg,#2563eb,#3b82f6);box-shadow:0 0 30px #2563ebcc;transform:translateY(-4px)}.code-content{background:#050505;color:#94a3b8;font-family:Courier New,monospace;font-size:clamp(.9rem,3vw,1.05rem);overflow-x:auto;padding:clamp(25px,6vw,35px);white-space:pre-wrap;word-break:break-word}.input-area{align-items:center;background:#0a0a0a;display:flex;flex-shrink:0;gap:clamp(8px,2vw,16px);padding:4px clamp(20px,5vw,50px) 0}.input-area input{background:#111;border:1px solid #ffffff1f;border-radius:20px;color:#fff;flex:1 1;font-size:clamp(1rem,4vw,1.2rem);outline:none;padding:clamp(14px,4vw,20px) clamp(20px,5vw,35px);transition:all .4s ease}.input-area input:focus{border-color:#60a5fa80;box-shadow:0 0 0 3px #60a5fa33}.input-bar-wrap{background:#0a0a0a;flex-shrink:0;padding-bottom:max(env(safe-area-inset-bottom),12px)}.input-disclaimer{background:#0a0a0a;color:#ffffff80;font-size:.7rem;margin:0;padding:6px clamp(16px,4vw,50px) 8px;text-align:center}.send-button{align-items:center;background:linear-gradient(135deg,#2563eb,#3b82f6);border:none;border-radius:16px;box-shadow:0 8px 30px #2563eb80;color:#fff;cursor:pointer;display:inline-flex;font-weight:900;justify-content:center;min-height:44px;min-width:44px;padding:clamp(12px,3vw,18px) clamp(20px,5vw,40px);transition:all .4s ease}.send-button:hover{box-shadow:0 15px 50px #2563ebcc;transform:translateY(-6px)}.mic-btn{align-items:center;background:#111;border:1px solid #ffffff1f;border-radius:20px;cursor:pointer;display:flex;font-size:clamp(2rem,6vw,2.5rem);height:clamp(60px,15vw,80px);justify-content:center;transition:all .4s ease;width:clamp(60px,15vw,80px)}.mic-btn:hover{background:linear-gradient(90deg,#2563eb,#3b82f6);box-shadow:0 0 40px #2563ebcc;transform:scale(1.15)}.mic-btn.listening{animation:pulse 1.5s infinite;background:linear-gradient(90deg,#ef4444,#f97316);box-shadow:0 0 40px #ef4444cc}@keyframes pulse{0%{box-shadow:0 0 0 0 #ef4444cc}70%{box-shadow:0 0 0 25px #ef444400}to{box-shadow:0 0 0 0 #ef444400}}.voice-btn{background:none;border:none;color:#fff;cursor:pointer;font-size:clamp(1.8rem,5vw,2rem);transition:all .4s ease}.voice-btn:hover{color:#60a5fa;transform:scale(1.4)}.welcome-overlay{align-items:center;background:#000;display:flex;inset:0;justify-content:center;position:absolute;z-index:1000}.welcome-popup{background:#0d0d0d;border:1px solid #ffffff1a;border-radius:28px;box-shadow:0 24px 64px #0009,inset 0 0 0 1px #ffffff0f;max-width:90%;padding:clamp(2.5rem,8vw,3.5rem);text-align:center}.welcome-title{align-items:center;color:#60a5fa;display:flex;font-family:Inter Tight,sans-serif;font-size:clamp(2.5rem,8vw,4rem);font-weight:900;justify-content:center;letter-spacing:clamp(4px,1.5vw,6px);margin-bottom:1.5rem;text-shadow:0 0 40px #60a5facc;text-transform:uppercase}.welcome-text{color:#fff;font-size:clamp(1.35rem,4vw,1.75rem);margin-bottom:.5rem}.welcome-subtext{color:#93c5fd;font-size:clamp(1rem,3vw,1.2rem);margin-bottom:2rem}.welcome-buttons{align-items:center;display:flex;flex-direction:column;gap:.75rem}.start-button{background:linear-gradient(135deg,#2563eb,#3b82f6);border:none;border-radius:16px;box-shadow:0 8px 32px #2563eb80;color:#fff;cursor:pointer;font-size:clamp(1.1rem,3vw,1.3rem);font-weight:800;padding:.9rem 2.5rem;transition:transform .2s,box-shadow .2s}.start-button:hover{box-shadow:0 12px 40px #2563eb99;transform:translateY(-3px)}@media (max-width:768px){.container{min-width:0;padding:0}.chatbox{border-radius:0;height:100dvh}.header{gap:6px;padding:max(env(safe-area-inset-top),10px) max(env(safe-area-inset-right),12px) 10px max(env(safe-area-inset-left),12px);position:relative;z-index:50}.header .brand.logo-hex-wrap{height:64px;width:auto}.brand{font-size:1.8rem}.controls{gap:10px}.custom-select{min-width:80px;padding:6px 10px}.selected-value{font-size:.85rem}.desc-label{font-size:.55rem}.messages{gap:15px;padding:15px 15px 20px}.message{font-size:1rem;max-width:90%;padding:14px 18px}.input-bar-wrap{padding-left:max(env(safe-area-inset-left),10px);padding-right:max(env(safe-area-inset-right),10px)}.input-area{flex-wrap:nowrap;gap:8px;padding:10px 0}.input-area input{flex:1 1;font-size:1rem;min-width:0;padding:12px 15px}.attach-btn,.camera-btn,.send-button{align-items:center;border-radius:14px;display:flex;flex-shrink:0;height:48px;justify-content:center;min-height:48px;min-width:48px;padding:0;width:48px}.send-button{font-size:0}.send-button:before{color:#fff;content:"↑";font-size:1.4rem}.attach-btn,.camera-btn{font-size:1.2rem}.mic-btn{flex-shrink:0;font-size:1.4rem;height:48px;width:48px}.history-item{align-items:center;display:flex;min-height:44px;padding:14px 12px}.sidebar-footer .logout-btn{margin-top:8px;min-height:44px;padding:12px;width:100%}.dropdown-menu{max-height:40vh}}@media (max-width:430px){.header{gap:6px;padding:max(env(safe-area-inset-top),8px) max(env(safe-area-inset-right),10px) 8px max(env(safe-area-inset-left),10px)}.header .brand.logo-hex-wrap{height:56px;width:auto}.brand{font-size:1.45rem;letter-spacing:2px}.header-conversation-title{font-size:.85rem;margin-right:6px;max-width:100px}.controls{gap:6px}.control-group{gap:2px}.custom-select{min-width:64px;padding:6px 8px}.selected-value{font-size:.75rem}.model-selector-label{font-size:.55rem;line-height:1.15;max-width:70px;text-align:center}.header-temp-chat-btn{font-size:.6rem;padding:4px 6px}.messages{gap:10px;padding:10px 8px}.message{font-size:.95rem;max-width:94%;padding:12px 14px}.input-bar-wrap{padding-left:max(env(safe-area-inset-left),8px);padding-right:max(env(safe-area-inset-right),8px)}.input-disclaimer{font-size:.65rem;padding:4px 8px 6px}.input-area{gap:6px;padding:6px 0}.input-area input{font-size:16px;min-width:0;padding:10px 12px}.attach-btn,.camera-btn,.send-button{height:44px;min-height:44px;min-width:44px;width:44px}.send-button:before{font-size:1.5rem}.sidebar{width:min(280px,92vw)}.welcome-logo-wrap{height:min(140px,38vw);max-height:150px;max-width:150px;width:min(140px,38vw)}.welcome-popup{padding:1.25rem}.sidebar-footer .user-info-area{font-size:.85rem}.sidebar-footer .user-account-number,.sidebar-footer .user-email{font-size:.75rem}.sidebar-footer .usage-counter{font-size:.75rem;line-height:1.3;word-break:break-word}.history-list::-webkit-scrollbar{width:5px}.new-chat-btn{font-size:.9rem;padding:10px 12px}.code-container{margin:12px 0}.code-header{padding:10px 14px}.code-content{font-size:.85rem;padding:14px}.attached-preview{gap:8px;padding:8px}.attached-item{font-size:.85rem}}.attached-preview{background:#0a0a0a;border:1px solid #ffffff0f;border-radius:10px;display:flex;flex-wrap:wrap;gap:10px;margin-bottom:10px;padding:10px}.attached-item{align-items:center;background:#111;border:1px solid #ffffff14;border-radius:8px;color:#e2e8f0;display:flex;font-size:.9rem;gap:5px;padding:5px 10px}.attached-item button{background:none;border:none;color:#ef4444;cursor:pointer;font-size:1rem}.attached-preview-box{background:#111;border:1px solid #ffffff14;border-radius:10px;color:#e2e8f0;cursor:pointer;font-size:.95rem;margin-top:10px;padding:10px 15px;text-align:center}.attached-preview-box:hover{background:#1a1a1a}.attached-preview-box .attached-thumb{border-radius:6px;display:block;margin-bottom:6px;max-height:80px;max-width:120px;object-fit:cover}.attached-link{color:#60a5fa;font-size:.85em;margin-left:6px}.attached-link:hover{text-decoration:underline}.message-content-inner{align-items:baseline;flex-wrap:wrap;gap:10px 14px}.message-content-inner .attached-file,.message-content-inner .attached-file-link{margin:0}.attached-file-link{background:#3b82f633;border:1px solid #3b82f666;border-radius:8px;color:#93c5fd;cursor:pointer;display:inline-block;font-size:.9rem;margin:4px 8px 4px 0;padding:6px 12px;transition:background .2s,border-color .2s}.attached-file-link:hover{background:#3b82f659;border-color:#3b82f699;color:#fff}.expanded-image-modal{align-items:center;background:#000000e6;display:flex;height:100dvh;inset:0;justify-content:center;padding:env(safe-area-inset-top) env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left);position:fixed;width:100vw;z-index:10000}.expanded-image{max-height:90%;max-width:90%;object-fit:contain}.attach-btn,.camera-btn{align-items:center;background:#111;border:1px solid #ffffff1f;border-radius:14px;color:#e2e8f0;cursor:pointer;display:flex;flex-shrink:0;font-size:1.25rem;height:48px;justify-content:center;min-height:48px;min-width:48px;transition:all .3s ease;width:48px}.attach-btn:hover,.camera-btn:hover{background:#1a1a1a;border-color:#60a5fa66;transform:scale(1.05)}.message strong{color:#f1f5f9}.message em{color:#cbd5e1}.dots:after{animation:dots 1.5s steps(5) infinite;content:"."}.thinking-indicator{animation:thinking 1.5s infinite}.login-overlay{align-items:center;background:#000;display:flex;inset:0;justify-content:center;position:absolute;z-index:2000}.auth-box{background:#0d0d0d;border:1px solid #ffffff1a;border-radius:24px;box-shadow:0 24px 64px #0009,inset 0 0 0 1px #ffffff0d;max-width:420px;padding:2rem 2.25rem;text-align:center;width:90%}.auth-title{color:#fff;font-family:Inter Tight,sans-serif;font-size:1.75rem;font-weight:800;letter-spacing:-.02em;margin-bottom:1.75rem}.auth-hint{color:#fff9;font-size:.85rem;margin:0 0 4px}.verify-email-hint{color:#ffffffd9;font-size:1rem}.verify-check-spam{color:#fbbf24;font-size:1.05rem;font-weight:700}.auth-success{color:#4ade80e6;font-size:.9rem;margin:0 0 8px}.auth-forgot-link{background:none;border:none;color:#ffffffb3;cursor:pointer;font-size:.9rem;margin:-.5rem 0 .5rem;padding:0;text-align:left}.auth-forgot-link:hover{text-decoration:underline}.login-forgot-link{font-size:1.05rem;font-weight:600;margin:.25rem 0 .5rem}.change-password-forgot-link{background:none;border:none;color:#60a5faf2;cursor:pointer;font-size:1.05rem;font-weight:600;margin:2px 0 8px;padding:6px 0;text-align:left;width:100%}.change-password-forgot-link:hover{text-decoration:underline}.verify-email-banner{align-items:center;background:#fbbf241f;border:1px solid #fbbf2459;border-radius:12px;display:flex;flex-wrap:wrap;gap:10px;margin:10px 12px;padding:12px 16px}.verify-email-text{color:#ffffffe6;flex:1 1 100%;font-size:.9rem;margin:0}.verify-email-success{color:#4ade80f2;font-size:.85rem}.verify-email-actions{align-items:center;display:flex;flex-wrap:wrap;gap:8px}.verify-email-btn{background:#fbbf2440;border:1px solid #fbbf2480;border-radius:8px;color:#fbbf24;cursor:pointer;font-size:.85rem;padding:6px 12px}.verify-email-btn:hover:not(:disabled){background:#fbbf2459}.verify-email-btn:disabled{cursor:not-allowed;opacity:.6}.verify-email-dismiss{background:none;border:none;color:#fff9;cursor:pointer;font-size:.85rem;padding:6px 8px}.verify-email-dismiss:hover{text-decoration:underline}.verify-email-divider{align-items:center;color:#ffffff73;display:flex;font-size:.85rem;gap:12px;margin:20px 0 14px}.verify-email-divider:after,.verify-email-divider:before{background:#ffffff1f;content:"";flex:1 1;height:1px}.verify-email-alt-actions{display:flex;flex-direction:column;gap:10px;width:100%}.verify-email-alt-actions .verify-alt-btn{margin:0;width:100%}.verify-email-alt-hint{color:#ffffff80;font-size:.8rem;line-height:1.4;margin:12px 0 0;text-align:center}.auth-form{display:flex;flex-direction:column;gap:1rem}.auth-input{background:#111;border:1px solid #ffffff1f;border-radius:14px;color:#fff;font-size:1rem;outline:none;padding:.875rem 1rem;transition:border-color .2s,box-shadow .2s}.auth-input::placeholder{color:#fff6}.auth-input:focus{border-color:#60a5fa99;box-shadow:0 0 0 3px #3b82f633}.auth-submit-btn{background:linear-gradient(135deg,#2563eb,#3b82f6);border:none;border-radius:14px;box-shadow:0 4px 14px #2563eb66;color:#fff;cursor:pointer;font-size:1.05rem;font-weight:700;margin-top:.25rem;padding:.875rem 1.25rem;transition:transform .2s,box-shadow .2s}.auth-submit-btn:hover{box-shadow:0 8px 24px #2563eb80;transform:translateY(-2px)}.auth-switch{color:#94a3b8;font-size:.9rem;margin-top:1.25rem}.switch-btn{background:none;border:none;color:#60a5fa;cursor:pointer;font-weight:700;margin-left:5px}.switch-btn:hover{text-decoration:underline}.auth-error{background:#ef444433;border:1px solid #ef444466;border-radius:8px;color:#f87171;font-size:.9rem;margin-bottom:15px;padding:10px}.user-profile{align-items:center;background:#111;border:1px solid #ffffff1a;border-radius:20px;display:flex;gap:15px;padding:8px 15px}.user-profile span{color:#93c5fd;font-size:.9rem;font-weight:600}.logout-btn{background:#ef444433;border:1px solid #ef444466;color:#f87171;cursor:pointer;font-size:.8rem;font-weight:700;padding:5px 12px;transition:.3s}.logout-btn:hover{background:#ef44444d}.login-link-btn{background:none;border:none;color:#60a5fa;cursor:pointer;font-size:1rem;font-weight:600;opacity:.8;text-decoration:underline}.login-link-btn:hover{opacity:1}.stop-btn{font-size:.8rem}.stop-btn:hover{background:#dc2626}.thinking-indicator{color:#94a3b8;font-style:italic}.dots:after{animation:dots 1.5s steps(4) infinite;content:""}@keyframes dots{0%,20%{content:"."}40%{content:".."}60%{content:"..."}80%,to{content:""}}.stop-btn{background:#ef4444;border:none;border-radius:8px;color:#fff;cursor:pointer;margin-left:10px;padding:5px 10px}.landing-container{align-items:center;background:#000;box-sizing:border-box;display:flex;height:100dvh;inset:0;justify-content:center;min-height:100dvh;padding:env(safe-area-inset-top) env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left);position:fixed;width:100%;z-index:3000}.landing-container .auth-box,.landing-container .welcome-popup{margin:auto;position:relative;z-index:3001}.send-button.stop{background:linear-gradient(135deg,#ef4444,#f97316)}.send-button.stop:hover{box-shadow:0 15px 50px #ef4444cc}:root{--bg-base:#09090b;--bg-elevated:#111113;--bg-surface:#18181b;--bg-surface-hover:#1f1f23;--border-subtle:#ffffff14;--border-strong:#ffffff24;--text-primary:#fafafa;--text-secondary:#a1a1aa;--text-muted:#71717a;--accent:#3b82f6;--accent-soft:#3b82f626;--accent-glow:#3b82f659;--user-bubble:linear-gradient(145deg,#1d4ed8,#2563eb);--ai-bubble:#1a1a1e;--danger:#ef4444;--warning:#f59e0b;--radius-sm:8px;--radius-md:12px;--radius-lg:16px;--radius-xl:20px;--shadow-sm:0 1px 2px #0006;--shadow-md:0 8px 24px #00000073;--header-h-mobile:52px;--ease-out:cubic-bezier(0.22,1,0.36,1);--transition-fast:0.15s var(--ease-out);--transition-ui:0.2s var(--ease-out)}html{-webkit-tap-highlight-color:transparent;color-scheme:dark}body{color:#fafafa;color:var(--text-primary)}.app-container,.chatbox,.landing-container,.messages,body{background:#09090b;background:var(--bg-base)}.app-container{background:radial-gradient(ellipse 80% 50% at 50% -20%,#3b82f614,#0000 55%),#09090b;background:radial-gradient(ellipse 80% 50% at 50% -20%,#3b82f614,#0000 55%),var(--bg-base)}.sidebar{background:#111113;background:var(--bg-elevated);border-right:1px solid #ffffff14;border-right:1px solid var(--border-subtle);padding:12px 10px max(12px,env(safe-area-inset-bottom))}.sidebar.open{box-shadow:0 8px 24px #00000073;box-shadow:var(--shadow-md)}.new-chat-btn{background:#3b82f626;background:var(--accent-soft);border:1px solid #3b82f659;border-radius:12px;border-radius:var(--radius-md);font-weight:600;transition:background .15s cubic-bezier(.22,1,.36,1),border-color .15s cubic-bezier(.22,1,.36,1);transition:background var(--transition-fast),border-color var(--transition-fast)}.new-chat-btn:hover{background:#3b82f638}.chat-search-input{background:#18181b;background:var(--bg-surface);border:1px solid #ffffff14;border:1px solid var(--border-subtle)}.chat-search-input,.history-item{border-radius:8px;border-radius:var(--radius-sm)}.history-item{border:1px solid #0000;color:#a1a1aa;color:var(--text-secondary);transition:background .15s cubic-bezier(.22,1,.36,1),border-color .15s cubic-bezier(.22,1,.36,1),color .15s cubic-bezier(.22,1,.36,1);transition:background var(--transition-fast),border-color var(--transition-fast),color var(--transition-fast)}.history-item:hover{background:#1f1f23;background:var(--bg-surface-hover);border-color:#ffffff14;border-color:var(--border-subtle)}.history-item.active{background:#3b82f626;background:var(--accent-soft);border-color:#3b82f659;color:#93c5fd}.sidebar-footer{border-top:1px solid #ffffff14;border-top:1px solid var(--border-subtle)}.usage-counter{color:#71717a;color:var(--text-muted);font-size:.8rem;font-weight:500}.user-info-area .user-name{font-size:.9rem;font-weight:600}.header{backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);background:#111113eb;border-bottom:1px solid #ffffff14;border-bottom:1px solid var(--border-subtle);box-shadow:none;min-height:52px;min-height:var(--header-h-mobile);padding:max(10px,env(safe-area-inset-top)) 16px 10px}.logo-hex-wrap{display:block;flex-shrink:0;line-height:0}.logo-hex-wrap .app-logo{display:block;filter:drop-shadow(0 0 14px rgba(59,130,246,.35));filter:drop-shadow(0 0 14px var(--accent-glow));height:100%;max-height:none!important;max-width:none!important;object-fit:contain;object-position:center;width:auto}.header .brand.logo-hex-wrap{height:76px;width:auto}.welcome-logo-wrap.logo-hex-wrap{height:min(340px,68vw);max-height:380px;width:auto}.brand{letter-spacing:.04em;text-shadow:none}.header-conversation-title{color:#fafafa;color:var(--text-primary);font-size:.9rem;font-weight:600}.header-temp-chat-btn{border-radius:8px;border-radius:var(--radius-sm);font-weight:600}.custom-select{background:#18181b;background:var(--bg-surface);border:1px solid #ffffff14;border:1px solid var(--border-subtle);border-radius:12px;border-radius:var(--radius-md);box-shadow:0 1px 2px #0006;box-shadow:var(--shadow-sm);transition:border-color .15s cubic-bezier(.22,1,.36,1),background .15s cubic-bezier(.22,1,.36,1);transition:border-color var(--transition-fast),background var(--transition-fast)}.custom-select:hover{border-color:#3b82f666;box-shadow:0 0 0 1px #3b82f61f;transform:none}.selected-value{font-size:.9rem;font-weight:700;text-shadow:none}.model-selector-label{color:#71717a;color:var(--text-muted);font-size:.65rem;letter-spacing:.02em}.menu-item:hover{transform:none}.messages{background:#0000;overscroll-behavior:contain;scroll-behavior:auto}.message{border-radius:16px;border-radius:var(--radius-lg);box-shadow:0 1px 2px #0006;box-shadow:var(--shadow-sm);font-size:.95rem;line-height:1.6;transition:box-shadow .15s cubic-bezier(.22,1,.36,1);transition:box-shadow var(--transition-fast)}@media (hover:hover){.message:hover{box-shadow:0 8px 24px #00000073;box-shadow:var(--shadow-md);transform:none}}.user{background:linear-gradient(145deg,#1d4ed8,#2563eb);background:var(--user-bubble);border:1px solid #ffffff0f}.oberoi{background:#1a1a1e;background:var(--ai-bubble);border:1px solid #ffffff14;border:1px solid var(--border-subtle);color:#e4e4e7}.input-bar-wrap{backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);background:#111113f5;border-top:1px solid #ffffff14;border-top:1px solid var(--border-subtle);padding-bottom:max(10px,env(safe-area-inset-bottom))}.file-processing-banner{background:#18181b;background:var(--bg-surface);border:1px solid #ffffff14;border:1px solid var(--border-subtle);border-radius:12px;border-radius:var(--radius-md);color:#71717a;color:var(--text-muted);font-size:.8rem;margin:0 12px 8px;padding:8px 12px}.message-content-inner{display:flex;flex-direction:column;gap:10px;width:100%}.message-attachments{display:flex;flex-wrap:wrap;gap:8px;width:100%}.message-text{width:100%}.msg-attachment{align-items:center;background:#ffffff0f;border:1px solid #ffffff1f;border-radius:12px;color:#fafafa;color:var(--text-primary,#e4e4e7);display:flex;gap:10px;max-width:100%;padding:10px 12px}.msg-attachment--compact{padding:8px 10px}.msg-attachment--image{align-items:center;flex-direction:row;gap:8px;padding:6px 10px}.msg-attachment-image-btn{background:none;border:none;border-radius:6px;cursor:pointer;flex-shrink:0;overflow:hidden;padding:0}.msg-attachment-image-btn img{border-radius:6px;display:block;height:56px;object-fit:cover;width:56px}.msg-attachment-thumb{border-radius:8px;flex-shrink:0;height:56px;object-fit:cover;width:56px}.msg-attachment-icon{flex-shrink:0;font-size:1.35rem;line-height:1}.msg-attachment-meta{display:flex;flex-direction:column;gap:2px;min-width:0}.msg-attachment-type{color:#71717a;color:var(--text-muted,#a1a1aa);font-size:.68rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase}.msg-attachment-name{font-size:.85rem;word-break:break-all}.msg-attachment--pdf{border-left:3px solid #ef4444}.msg-attachment--word{border-left:3px solid #3b82f6}.msg-attachment--excel{border-left:3px solid #22c55e}.msg-attachment--ppt{border-left:3px solid #f97316}.msg-attachment--text{border-left:3px solid #94a3b8}.msg-attachment-remove{background:none;border:none;color:#f87171;cursor:pointer;font-size:1.1rem;margin-left:auto;padding:0 4px}.attached-preview.message-attachments{background:#00000059;border:1px solid #ffffff14;border:1px solid var(--border-subtle);border-radius:12px;margin:0 12px 10px;padding:10px}.input-disclaimer{color:#71717a;color:var(--text-muted);font-size:.68rem;line-height:1.35}.input-area{background:#0000;padding:8px 12px 0}.input-area .chat-textarea,.input-area input{background:#18181b;background:var(--bg-surface);border:1px solid #ffffff14;border:1px solid var(--border-subtle);border-radius:20px;border-radius:var(--radius-xl);font-size:1rem;transition:border-color .15s cubic-bezier(.22,1,.36,1),box-shadow .15s cubic-bezier(.22,1,.36,1);transition:border-color var(--transition-fast),box-shadow var(--transition-fast)}.input-area .chat-textarea{-ms-overflow-style:none;color:#fafafa;color:var(--text-primary,#f4f4f5);flex:1 1;font-family:inherit;line-height:1.4;max-height:120px;min-height:44px;min-width:0;overflow-y:auto;padding:10px 14px;resize:none;scrollbar-width:none}.input-area .chat-textarea::-webkit-scrollbar{display:none;height:0;width:0}.input-area .chat-textarea:focus,.input-area input:focus{border-color:#3b82f680;box-shadow:0 0 0 3px #3b82f61f;outline:none}.message-row{display:flex;flex-direction:column;max-width:85%;position:relative}.message-row--user{align-items:flex-end;align-self:flex-end}.message-row--oberoi{align-items:flex-start;align-self:flex-start}.message-row--error{align-items:center;align-self:center;max-width:92%}.message.error{background:#dc262624;border:1px solid #f8717173;box-shadow:none;color:#fecaca;font-size:.9rem;line-height:1.45}.message-row .message{align-self:auto;max-width:100%}.message-outside-actions{align-items:center;display:flex;flex-wrap:wrap;gap:6px;margin:0;max-height:0;min-height:0;overflow:hidden;padding:0 2px;pointer-events:none;transform:translateY(5px) scale(.98);transform-origin:left bottom;transition:opacity .18s ease,max-height .18s ease,margin .18s ease,transform .18s ease}.message-outside-actions.is-visible{margin-bottom:6px;max-height:32px;overflow:visible;pointer-events:auto;transform:translateY(0) scale(1)}.message-row--has-actions:hover .message{box-shadow:0 4px 16px #0006;transform:none}.msg-action-btn{background:#ffffff0d;border:1px solid #ffffff1a;border-radius:999px;color:#a1a1aa;color:var(--text-secondary,#a1a1aa);cursor:pointer;font-size:.67rem;font-weight:600;letter-spacing:.02em;line-height:1.2;margin:0;padding:5px 8px;text-decoration:none;transition:transform .18s ease,color .18s ease,background .18s ease,border-color .18s ease;white-space:nowrap}.msg-action-btn:hover{background:#3b82f62b;border-color:#60a5fa73;color:#fff;transform:translateY(-2px)}.msg-action-btn:focus-visible{border-radius:2px;outline:1px solid #3b82f680;outline-offset:2px}.web-sources-below-reply{animation:web-sources-enter .3s ease both;margin-top:8px;position:relative;width:min(360px,100%);z-index:2}.web-sources-below-reply.is-open{z-index:10}.web-sources-toggle{align-items:center;background:linear-gradient(135deg,#3b82f621,#8b5cf61a);border:1px solid #60a5fa38;border-radius:9px;color:#bfdbfe;cursor:pointer;display:inline-flex;font:inherit;font-size:.73rem;font-weight:600;gap:7px;padding:7px 10px;transition:transform .2s ease,background .2s ease,border-color .2s ease}.web-sources-toggle:hover{background:linear-gradient(135deg,#3b82f63b,#8b5cf62e);border-color:#93c5fd8c;transform:translateY(-2px)}.web-sources-toggle-icon{font-size:.95rem;line-height:.8}.web-sources-chevron{display:inline-block;font-size:1rem;line-height:.7;transition:transform .22s ease}.web-sources-below-reply.is-open .web-sources-chevron{transform:rotate(180deg)}.web-sources-dropdown{animation:web-sources-reveal .22s ease both;background:#121216eb;border:1px solid #60a5fa2e;border-radius:10px;box-shadow:0 12px 28px #00000052;left:0;max-height:220px;overflow-y:auto;padding:5px;position:absolute;top:calc(100% + 7px);width:100%;z-index:20}.web-sources-below-reply.opens-up .web-sources-dropdown{bottom:calc(100% + 7px);top:auto;transform-origin:bottom left}.web-source-link{border-radius:7px;color:#a1a1aa;color:var(--text-secondary,#d4d4d8);display:flex;flex-direction:column;font-size:.72rem;gap:3px;line-height:1.3;padding:8px 9px;text-decoration:none;transition:transform .16s ease,background .16s ease,color .16s ease}.web-source-link:focus-visible,.web-source-link:hover{background:#60a5fa1f;color:#fff;outline:none;transform:translateX(3px)}.web-source-link-title,.web-source-link-url{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.web-source-link-title{font-weight:600}.web-source-link-url{color:#93c5fdb3;font-size:.64rem}@keyframes web-sources-enter{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}@keyframes web-sources-reveal{0%{opacity:0;transform:translateY(-6px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}@media (hover:none){.message-row--has-actions:focus-within .message-outside-actions{margin-bottom:4px;max-height:20px;opacity:1;overflow:visible;pointer-events:auto}}.usage-warn{color:#fbbf24;font-weight:600}.expanded-image-modal--safe{padding:max(12px,env(safe-area-inset-top)) max(12px,env(safe-area-inset-right)) max(12px,env(safe-area-inset-bottom)) max(12px,env(safe-area-inset-left))}.auth-submit-btn,.confirm-modal-confirm:not(.danger),.send-button,.start-button{background:linear-gradient(145deg,#2563eb,#3b82f6);border-radius:12px;border-radius:var(--radius-md);box-shadow:0 4px 14px #2563eb59;font-weight:700;transition:transform .15s cubic-bezier(.22,1,.36,1),box-shadow .15s cubic-bezier(.22,1,.36,1),filter .15s cubic-bezier(.22,1,.36,1);transition:transform var(--transition-fast),box-shadow var(--transition-fast),filter var(--transition-fast)}.auth-submit-btn:hover,.send-button:hover,.start-button:hover{box-shadow:0 6px 20px #2563eb73;transform:translateY(-1px)}.attach-btn,.camera-btn{background:#18181b;background:var(--bg-surface);border:1px solid #ffffff14;border:1px solid var(--border-subtle);border-radius:12px;border-radius:var(--radius-md);transition:background .15s cubic-bezier(.22,1,.36,1),border-color .15s cubic-bezier(.22,1,.36,1);transition:background var(--transition-fast),border-color var(--transition-fast)}.attach-btn:hover,.camera-btn:hover{background:#1f1f23;background:var(--bg-surface-hover);transform:none}.attach-btn:disabled,.camera-btn:disabled,.send-button:disabled{cursor:not-allowed;opacity:.45}.code-container{border:1px solid #ffffff14;border:1px solid var(--border-subtle);border-radius:12px;border-radius:var(--radius-md)}.code-btn-modern:hover{transform:none}.auth-box,.change-password-modal,.confirm-modal-box,.settings-modal,.welcome-popup{background:#111113;background:var(--bg-elevated);border:1px solid #ffffff24;border:1px solid var(--border-strong);border-radius:20px;border-radius:var(--radius-xl);box-shadow:0 8px 24px #00000073;box-shadow:var(--shadow-md)}.welcome-title{color:#fafafa;color:var(--text-primary);text-shadow:none}.welcome-text{font-weight:600}.welcome-subtext{color:#a1a1aa;color:var(--text-secondary)}.auth-input{background:#18181b;background:var(--bg-surface)}.auth-input,.logout-btn{border-radius:12px;border-radius:var(--radius-md)}.logout-btn{font-weight:600;min-height:40px;transition:background .15s cubic-bezier(.22,1,.36,1);transition:background var(--transition-fast)}.settings-icon-btn{background:#18181b;background:var(--bg-surface);border-radius:12px;border-radius:var(--radius-md)}.sidebar-footer-actions .logout-btn{flex:1 1}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}@media (max-width:768px){.container,.main-chat-panel{flex:1 1;max-width:100vw;min-width:0;overflow:hidden;width:100%!important}.header{align-items:center;display:flex;flex-wrap:wrap;gap:6px 8px;padding:max(8px,env(safe-area-inset-top)) 10px 8px}.menu-toggle{background:#18181b;background:var(--bg-surface);border:1px solid #ffffff14;border:1px solid var(--border-subtle);border-radius:8px;border-radius:var(--radius-sm);flex-shrink:0;order:0}.header-brand-row{flex:1 1;min-width:0;order:1}.header .brand.logo-hex-wrap{height:64px;width:auto}.controls{align-items:center;flex:1 1 100%;gap:6px;justify-content:space-between;min-width:0;order:2;width:100%}.header-conversation-title{flex:1 1 auto;font-size:.82rem;margin-right:0;max-width:none;min-width:0;order:0}.header-temp-chat-btn{flex-shrink:0;order:1}.control-group{flex-shrink:0;gap:2px;order:2}.model-selector-label{display:none}.custom-select{min-width:72px;padding:6px 10px}.messages{gap:12px;padding:12px 10px 16px}.message{font-size:.9375rem;max-width:92%;padding:12px 14px}.input-area{gap:6px;padding:6px 8px 0}.input-disclaimer{font-size:.62rem;padding:4px 10px 6px}.sidebar{width:min(300px,88vw)}.sidebar-footer .usage-counter{font-size:.72rem}}@media (max-width:390px){.header .brand.logo-hex-wrap{height:56px;width:auto}.welcome-logo-wrap.logo-hex-wrap{height:min(300px,64vw);width:auto}.header-conversation-title{font-size:.78rem}.header-temp-chat-btn{font-size:.58rem;padding:4px 6px}.custom-select{min-width:64px;padding:5px 8px}.selected-value{font-size:.8rem}.messages{gap:10px;padding:10px 8px 12px}.message{font-size:.9rem;max-width:94%;padding:10px 12px}.input-area .chat-textarea,.input-area input{font-size:16px;padding:10px 14px}.attach-btn,.camera-btn,.send-button{height:42px;min-height:42px;min-width:42px;width:42px}.welcome-popup{border-radius:16px;border-radius:var(--radius-lg);padding:1.25rem 1rem}.auth-box{padding:1.5rem 1.25rem}}@keyframes oberoi-spin{to{transform:rotate(1turn)}}.loading-spinner{align-items:center;display:inline-flex;justify-content:center;vertical-align:middle}.loading-spinner-ring{animation:oberoi-spin .65s linear infinite;border:2px solid #ffffff26;border-radius:50%;border-top:2px solid var(--accent,#3b82f6);display:block}.loading-spinner--small .loading-spinner-ring{height:14px;width:14px}.loading-spinner--medium .loading-spinner-ring{height:20px;width:20px}.loading-spinner--large .loading-spinner-ring{border-width:3px;height:28px;width:28px}.history-list{position:relative}.history-list-busy{pointer-events:none}.history-list-overlay{align-items:center;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);background:#09090bd1;color:#a1a1aa;color:var(--text-secondary);display:flex;flex-direction:column;font-size:.85rem;font-weight:500;gap:10px;inset:0;justify-content:center;position:absolute;z-index:5}.history-item-deleting{opacity:.65;pointer-events:none}.history-item-loading{align-items:center;display:flex;flex-shrink:0;height:28px;justify-content:center;width:28px}.history-item-delete:disabled{cursor:not-allowed;opacity:.35}.confirm-modal-box--loading .confirm-modal-actions,.confirm-modal-box--loading .confirm-modal-message,.confirm-modal-box--loading .confirm-modal-title{opacity:.35;pointer-events:none}.confirm-modal-loading{align-items:center;background:#09090bbf;border-radius:inherit;display:flex;flex-direction:column;gap:12px;inset:0;justify-content:center;padding:24px;position:absolute;text-align:center;z-index:2}.confirm-modal-loading p{color:#a1a1aa;color:var(--text-secondary);font-size:.9rem;font-weight:500;margin:0}.confirm-modal-box{position:relative}.confirm-modal-confirm-inner{align-items:center;display:inline-flex;gap:8px;justify-content:center}.confirm-modal-cancel:disabled,.confirm-modal-confirm:disabled{cursor:not-allowed;opacity:.5}.settings-modal{background:linear-gradient(180deg,#141416,#0c0c0e);max-width:380px;overflow:hidden;padding:0;width:min(380px,92vw)}.settings-modal-header{align-items:center;display:flex;justify-content:space-between;padding:18px 18px 10px}.settings-modal-title{color:#a1a1aa;color:var(--text-secondary);font-size:1.05rem;font-weight:600;letter-spacing:-.02em;margin:0}.settings-modal-close-icon{align-items:center;background:#ffffff0f;border:none;border-radius:50%;color:#71717a;color:var(--text-muted);cursor:pointer;display:flex;font-size:1.35rem;height:32px;justify-content:center;line-height:1;transition:background .15s ease,color .15s ease;width:32px}.settings-modal-close-icon:hover{background:#ffffff1a;color:#fafafa;color:var(--text-primary)}.settings-modal-body{max-height:min(62vh,440px);overflow-y:auto;padding:4px 14px 12px}.settings-memory-note{color:#71717a;color:var(--text-muted);font-size:.76rem;line-height:1.45;margin:0 4px 12px}.settings-menu{display:flex;flex-direction:column;gap:8px}.settings-item{background:#ffffff0a;border:1px solid #ffffff12;border-radius:12px;color:#fafafa;color:var(--text-primary);cursor:pointer;font-size:.88rem;font-weight:500;padding:12px 14px;text-align:left;transition:background .12s ease,border-color .12s ease,transform .12s ease;width:100%}.settings-item:hover:not(:disabled){background:#ffffff12;border-color:#ffffff1f}.settings-item:active:not(:disabled){transform:scale(.99)}.settings-item:disabled{cursor:not-allowed;opacity:.38}.settings-item--warn{background:#fbbf240f;border-color:#fbbf2433;color:#fcd34d}.settings-item--danger{background:#ef444414;border-color:#f8717147;color:#fca5a5}.settings-modal-footer{background:#00000040;border-top:1px solid #ffffff0f;padding:12px 16px 16px}.settings-modal-disclaimer{color:#71717a;color:var(--text-muted);font-size:.62rem;line-height:1.4;margin:0 0 14px;text-align:center}.settings-brand-block{background:#ffffff08;border:1px solid #ffffff0f;border-radius:12px;padding:10px 8px 4px;text-align:center}.settings-brand-title{color:#fafafa;color:var(--text-primary);font-size:.95rem;font-weight:700;letter-spacing:.02em;margin:0 0 4px}.settings-brand-ver{color:#a1a1aa;color:var(--text-secondary);font-weight:600;letter-spacing:.03em}.settings-brand-credit{color:#71717a;color:var(--text-muted);font-size:.82rem;font-weight:500;margin:0}.settings-list,.settings-modal-btn,.settings-modal-close,.settings-row,.settings-section{display:none}.confirm-modal-confirm.danger{background:linear-gradient(145deg,#b91c1c,#ef4444)!important;box-shadow:0 4px 14px #ef444459}.confirm-modal-confirm.danger:hover:not(:disabled){box-shadow:0 6px 18px #ef444473;filter:brightness(1.08)}@media (max-height:500px) and (orientation:landscape){.header{padding-bottom:6px;padding-top:6px}.header .brand.logo-hex-wrap{height:48px;width:auto}.messages{gap:8px;padding-top:8px}.input-disclaimer{display:none}}@keyframes oberoi-fade-in{0%{opacity:0}to{opacity:1}}@keyframes oberoi-slide-up{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}@keyframes oberoi-slide-down{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}@keyframes oberoi-scale-in{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:scale(1)}}@keyframes oberoi-slide-in-right{0%{opacity:0;transform:translateX(18px)}to{opacity:1;transform:translateX(0)}}@keyframes oberoi-slide-in-down{0%{opacity:0;transform:translateY(-12px)}to{opacity:1;transform:translateY(0)}}@keyframes oberoi-soft-pulse{0%,to{opacity:1}50%{opacity:.55}}@keyframes oberoi-logo-glow{0%,to{filter:drop-shadow(0 0 0 transparent)}50%{filter:drop-shadow(0 0 12px rgba(59,130,246,.35))}}.animate-in{animation:oberoi-slide-up .42s var(--ease-out) both;animation-delay:0s;animation-delay:var(--anim-delay,0s)}.animate-scale-in{animation:oberoi-scale-in .38s var(--ease-out) both;animation-delay:0s;animation-delay:var(--anim-delay,0s)}.overlay-animate{animation:oberoi-fade-in .22s var(--ease-out) both}.modal-content-animate{animation:oberoi-scale-in .32s var(--ease-out) both}.app-container{animation:oberoi-fade-in .45s var(--ease-out) both}.main-chat-panel{animation:oberoi-fade-in .5s var(--ease-out) both}.header{animation:oberoi-slide-down .4s var(--ease-out) both}.app-logo{animation:oberoi-logo-glow 2.8s ease-in-out .3s 1}.sidebar{transition:transform .38s var(--ease-out),box-shadow .3s var(--ease-out)}.sidebar-backdrop{animation:oberoi-fade-in .25s var(--ease-out) both}.chat-search-input,.history-item,.logout-btn,.new-chat-btn,.settings-icon-btn{transition:background var(--transition-ui),border-color var(--transition-ui),color var(--transition-ui),transform .22s var(--ease-out),opacity .22s var(--ease-out)}.new-chat-btn:hover,.settings-icon-btn:hover{transform:translateY(-1px)}.attach-btn:active,.auth-submit-btn:active,.new-chat-btn:active,.send-button:active,.settings-icon-btn:active,.start-button:active{transform:scale(.97)}.history-item.animate-in{animation:oberoi-slide-up .35s var(--ease-out) both;animation-delay:0s;animation-delay:var(--anim-delay,0s)}.history-item:hover{transform:translateX(3px)}.history-item-delete{transition:opacity .2s var(--ease-out),transform .2s var(--ease-out),color .2s var(--ease-out)}.history-item-delete:hover{transform:scale(1.12)}.sidebar-empty,.usage-counter,.user-info-area{animation:oberoi-fade-in .5s var(--ease-out) .15s both}.message-row.animate-in,.messages .message.oberoi:first-child.animate-in{animation:oberoi-slide-up .4s var(--ease-out) both;animation-delay:0s;animation-delay:var(--anim-delay,0s)}.message-row .message{transition:box-shadow .25s var(--ease-out)}.message-outside-actions{opacity:0;transform:translateY(4px);transition:opacity .18s var(--ease-out),transform .18s var(--ease-out)}.message-outside-actions.is-visible{animation:oberoi-fade-in .16s var(--ease-out) both;opacity:1;transform:translateY(0)}.msg-action-btn{transition:background .18s var(--ease-out),color .18s var(--ease-out),transform .18s var(--ease-out)}.msg-action-btn:hover{transform:translateY(-1px)}.input-bar-wrap{animation:oberoi-slide-up .45s var(--ease-out) .08s both}.auth-input,.chat-search-input,.input-area textarea{transition:border-color .2s var(--ease-out),box-shadow .2s var(--ease-out),background .2s var(--ease-out)}.attach-btn,.header-temp-chat-btn,.menu-toggle,.send-button{transition:background .2s var(--ease-out),border-color .2s var(--ease-out),transform .22s var(--ease-out),box-shadow .22s var(--ease-out)}.attach-btn:hover:not(:disabled),.send-button:hover:not(:disabled){transform:translateY(-1px)}.attached-preview{animation:oberoi-slide-up .28s var(--ease-out) both}.attached-preview-box,.msg-attachment{animation:oberoi-scale-in .28s var(--ease-out) both;transition:transform .2s var(--ease-out),border-color .2s var(--ease-out)}.attached-preview-box:hover{transform:scale(1.02)}.file-processing-banner{animation:oberoi-slide-up .3s var(--ease-out) both}.custom-select .arrow,.custom-select .selected-value{transition:color .2s var(--ease-out),transform .2s var(--ease-out)}.dropdown-menu{animation:oberoi-scale-in .22s var(--ease-out) both;transform-origin:top right}.menu-item{transition:background .15s var(--ease-out),padding-left .15s var(--ease-out)}.menu-item:hover{padding-left:14px}.landing-container{animation:oberoi-fade-in .4s var(--ease-out) both}.auth-box,.welcome-popup{animation:oberoi-scale-in .42s var(--ease-out) both}.auth-error,.auth-success{animation:oberoi-slide-up .28s var(--ease-out) both}.auth-submit-btn,.guest-btn,.login-link-btn,.start-button,.switch-btn{transition:background .2s var(--ease-out),border-color .2s var(--ease-out),color .2s var(--ease-out),transform .22s var(--ease-out),box-shadow .22s var(--ease-out)}.auth-submit-btn:hover,.guest-btn:hover,.start-button:hover{transform:translateY(-1px)}.welcome-buttons button{animation:oberoi-slide-up .4s var(--ease-out) both}.welcome-buttons button:first-child{animation-delay:.12s}.welcome-buttons button:nth-child(2){animation-delay:.2s}.modal-overlay.overlay-animate{animation:oberoi-fade-in .22s var(--ease-out) both}.change-password-modal.modal-content-animate,.confirm-modal-box.modal-content-animate,.settings-modal.modal-content-animate{animation:oberoi-scale-in .32s var(--ease-out) both}.settings-modal-close-icon{transition:transform .2s var(--ease-out),color .2s var(--ease-out)}.settings-modal-close-icon:hover{transform:rotate(90deg)}.settings-item{transition:background .2s var(--ease-out),border-color .2s var(--ease-out),transform .2s var(--ease-out)}.settings-menu .settings-item{animation:oberoi-slide-up .32s var(--ease-out) both}.settings-menu .settings-item:first-child{animation-delay:.06s}.settings-menu .settings-item:nth-child(2){animation-delay:.1s}.settings-menu .settings-item:nth-child(3){animation-delay:.14s}.settings-menu .settings-item:nth-child(4){animation-delay:.18s}.settings-item:hover:not(:disabled){transform:translateX(4px)}.settings-brand-block{animation:oberoi-fade-in .45s var(--ease-out) .2s both}.confirm-modal-actions button{transition:transform .2s var(--ease-out),background .2s var(--ease-out)}.confirm-modal-cancel:hover:not(:disabled),.confirm-modal-confirm:hover:not(:disabled){transform:translateY(-1px)}.expanded-image-modal{animation:oberoi-fade-in .22s var(--ease-out) both}.expanded-image{animation:oberoi-scale-in .32s var(--ease-out) both}.toast.toast-enter{animation:oberoi-slide-in-down .32s var(--ease-out) both}.streaming-cursor,.typing-indicator{animation:oberoi-soft-pulse 1s ease-in-out infinite}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.sidebar{transition:none}}
/*# sourceMappingURL=main.a5c8907b.css.map*/