body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#1e1e1e;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif}::-webkit-scrollbar{height:8px;width:8px}::-webkit-scrollbar-track{background:#2d2d2d}::-webkit-scrollbar-thumb{background:#555;border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#777}*{box-sizing:border-box;margin:0;padding:0}body{background:#1a1a1a;background:var(--bg-color,#1a1a1a);color:#e0e0e0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}.login-container{align-items:center;background:#0f0f0f;display:flex;height:100vh;justify-content:center}.login-content{background:#1a1a1a;border-radius:20px;max-width:400px;padding:60px 40px;text-align:center;width:90%}.login-logo{border-radius:50%;display:block;height:100px;margin:0 auto 20px;width:100px}.login-content h1{font-size:28px;margin-bottom:10px}.login-content p{color:#888;font-size:14px;margin-bottom:30px}#google-signin-btn{display:flex;justify-content:center}.main-container{background:#1a1a1a;display:flex;height:100vh}.sidebar{background:#2a2a2a;border-right:1px solid #3a3a3a;bottom:0;left:0;position:fixed;top:0;transform:translateX(-100%);transition:transform .3s ease;width:280px;z-index:999}.sidebar.open{transform:translateX(0)}.sidebar-content{display:flex;flex-direction:column;height:100%;padding:20px}.sidebar-header{display:flex;justify-content:flex-end;margin-bottom:20px}.close-sidebar{background:#0000;border:none;color:#888;cursor:pointer;font-size:24px}.sidebar-title{color:#e0e0e0;font-size:24px;font-weight:600;margin-bottom:30px}.chat-history{-webkit-overflow-scrolling:touch;flex:1 1;min-height:0;overflow-y:auto;overscroll-behavior:contain}.chat-item{background:#ffffff0d;border-radius:8px;cursor:pointer;font-size:14px;margin-bottom:8px;padding:12px}.no-chats{color:#666;font-size:14px}.overlay{background:#00000080;bottom:0;left:0;position:fixed;right:0;top:0;z-index:998}.chat-main{background:#1a1a1a;background:var(--bg-color,#1a1a1a);display:flex;flex:1 1;flex-direction:column}.chat-header{align-items:center;background:#2a2a2a;border-bottom:1px solid #3a3a3a;display:flex;justify-content:space-between;padding:16px 20px}.menu-btn,.profile-btn{background:#0000;border:none;color:#e0e0e0;cursor:pointer;font-size:20px}.chat-content{flex:1 1;overflow-y:auto;padding:20px}.chat-content,.welcome-section{display:flex;flex-direction:column}.welcome-section{align-items:center;gap:30px;height:100%;justify-content:center}.spinner{animation:spin .8s linear infinite;border:4px solid #f96;border-radius:50%;border-top-color:#0000;height:60px;width:60px}@keyframes spin{to{transform:rotate(1turn)}}.welcome-section h1{color:#e0e0e0;font-size:32px}.upgrade-box{background:#ffffff0d;border:1px solid #ffffff1a;border-radius:12px;margin-bottom:40px;padding:16px;text-align:center}.upgrade-box p{color:#888;font-size:14px;margin-bottom:12px}.upgrade-box button{background:#0000;border:none;color:#667eea;cursor:pointer;font-size:14px;font-weight:600}.messages{display:flex;flex-direction:column;gap:12px}.message{animation:fadeIn .3s ease;display:flex;max-width:100%;min-width:0}.message.user{justify-content:flex-end}.message.assistant{justify-content:flex-start}.message-content{word-wrap:break-word;border-radius:12px;box-sizing:border-box;line-height:1.6;min-width:0;overflow:hidden;padding:12px 16px;width:-webkit-fit-content;width:fit-content}.message.user .message-content{background:#667eea;color:#fff}.message.assistant .message-content{background:#ffffff0d;color:#e0e0e0}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.chat-footer{background:#2a2a2a;border-top:1px solid #3a3a3a;padding:16px 20px}.input-box{margin-bottom:12px}.input-box input{background:#ffffff0d;border:1px solid #ffffff1a;border-radius:12px;color:#e0e0e0;font-size:15px;outline:none;padding:12px 16px;width:100%}.input-box input::placeholder{color:#666}.model-controls{display:flex;gap:8px;justify-content:space-between}.model-btn,.send-btn,.voice-btn{background:#3a3a3a;border:none;border-radius:12px;color:#e0e0e0;cursor:pointer;font-size:14px;padding:10px 16px}.send-btn{background:#d97757;color:#fff;flex:0.3 1}.send-btn:hover:not(:disabled){background:#c2603f}.send-btn:disabled{cursor:not-allowed;opacity:.5}.settings-panel{background:#2a2a2a;border-left:1px solid #3a3a3a;bottom:0;overflow-y:auto;position:fixed;right:0;top:0;width:320px;z-index:1000}.settings-header{align-items:center;border-bottom:1px solid #3a3a3a;display:flex;justify-content:space-between;padding:20px}.settings-header h2{font-size:20px}.settings-header button{background:#0000;border:none;color:#888;cursor:pointer;font-size:20px}.settings-content{padding:20px}.user-card{align-items:center;background:#ffffff0d;border:1px solid #ffffff1a;border-radius:12px;display:flex;justify-content:space-between;margin-bottom:20px;padding:16px}.free-badge{background:#fff;border-radius:20px;color:#1a1a1a;font-size:12px;font-weight:600;padding:4px 12px}.settings-item{background:#ffffff0d;border:1px solid #ffffff1a;border-radius:8px;cursor:pointer;font-size:14px;margin-bottom:8px;padding:16px}.logout-btn{background:#0000;border:1px solid #ff6b6b;border-radius:8px;color:#ff6b6b;cursor:pointer;font-weight:600;margin-top:20px;padding:12px;width:100%}.settings-item.delete-all-item{border-color:#ff6b6b4d;color:#ff6b6b}.glogin-hint{color:#d97757;font-size:14px;font-weight:600}.auth-divider{align-items:center;color:#777;display:flex;font-size:13px;gap:12px;margin:16px 0 12px;width:100%}.auth-divider:after,.auth-divider:before{background:#ffffff1f;content:"";flex:1 1;height:1px}.google-btn-wrap{display:flex;justify-content:center;min-height:44px}.google-native-btn{align-items:center;background:#1f1f1f;border:1px solid #ffffff2e;border-radius:24px;color:#e3e3e3;cursor:pointer;display:flex;font-size:14.5px;font-weight:600;gap:10px;justify-content:center;padding:12px;width:100%}.google-native-btn:disabled{opacity:.6}.logout-btn:hover{background:#ff6b6b1a}@media (max-width:768px){.message-content{max-width:85%}.settings-panel{width:100%}}.auth-input{background:#ffffff0d;border:1px solid #ffffff1a;border-radius:10px;color:#e0e0e0;font-size:15px;margin-bottom:12px;outline:none;padding:12px 16px;width:100%}.auth-input:focus{border-color:#667eea}.auth-btn{background:#667eea;border:none;border-radius:10px;color:#fff;cursor:pointer;font-size:15px;font-weight:600;margin-top:8px;padding:12px;width:100%}.auth-btn:hover:not(:disabled){background:#5568d3}.auth-btn:disabled{cursor:not-allowed;opacity:.6}.auth-switch{color:#667eea;cursor:pointer;font-size:13px;margin-top:16px;text-align:center}.auth-switch:hover{text-decoration:underline}.auth-error{color:#ff6b6b;font-size:13px;margin-bottom:8px;text-align:center}.promo-section{background:#ffffff08;border:1px solid #ffffff1a;border-radius:12px;margin-bottom:20px;padding:16px}.promo-label{color:#888;font-size:13px;font-weight:600;margin-bottom:10px}.promo-msg{font-size:13px;margin-top:8px;text-align:center}.settings-item.admin{color:#667eea;font-weight:600}.admin-panel{width:360px}.stats-grid{grid-gap:10px;display:grid;gap:10px;grid-template-columns:1fr 1fr;margin-bottom:24px}.stat-card{background:#ffffff0d;border:1px solid #ffffff1a;border-radius:10px;padding:16px;text-align:center}.stat-value{color:#667eea;font-size:24px;font-weight:700}.stat-label{color:#888;font-size:11px;margin-top:4px}.key-gen-section{background:#ffffff08;border:1px solid #ffffff1a;border-radius:12px;margin-bottom:20px;padding:16px}.generated-key{background:#667eea1a;border-radius:8px;margin-top:12px;padding:12px;word-break:break-all}.generated-key code{color:#667eea;font-size:13px}.keys-list{max-height:300px;overflow-y:auto}.key-item{background:#ffffff0d;border:1px solid #ffffff1a;border-radius:8px;margin-bottom:8px;padding:12px}.key-item code{color:#e0e0e0;font-size:12px;word-break:break-all}.key-details{color:#888;font-size:11px;margin-top:4px}.new-chat-sidebar-btn{background:#d97757;border-radius:10px;color:#fff;cursor:pointer;font-size:14px;margin:10px;padding:10px;width:calc(100% - 20px)}.new-chat-sidebar-btn:hover{background:#c2603f}.chat-history-item{align-items:center;background:#ffffff08;cursor:pointer;display:flex;justify-content:space-between;margin:4px 10px;padding:12px}.chat-history-item:hover{background:#ffffff14}.chat-history-title{color:#e0e0e0;flex:1 1;font-size:13px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chat-delete-btn{background:none;border:none;cursor:pointer;font-size:14px;opacity:.6;padding:4px 8px}.chat-delete-btn:hover{opacity:1}.chat-delete-confirm{display:flex;gap:4px}.chat-delete-confirm button{background:#ffffff1a;border:none;border-radius:6px;color:#e0e0e0;cursor:pointer;padding:4px 8px}.shimmer{background:linear-gradient(90deg,#888,#e0e0e0 50%,#888)}.copy-btn{align-self:flex-end;background:none;border:none;cursor:pointer;font-size:13px;margin-left:6px;opacity:.5}.copy-btn:hover{opacity:1}.chat-content{background:#1c1c1c;background:var(--bg-color,#1c1c1c)}.chat-header{justify-content:center;position:relative}.chat-header .menu-btn{left:20px;position:absolute}.chat-header .profile-btn{font-size:22px;position:absolute;right:20px}.chat-header-title{color:#ccc;font-size:16px}.welcome-section{gap:20px}.welcome-star{font-size:56px;height:320px;line-height:1;margin:0 auto;width:320px}.welcome-star video{height:320px!important;width:320px!important}.welcome-section .brand-title{color:#ccc;font-size:22px}.chat-footer{background:#1a1a1a;background:var(--bg-color,#1a1a1a);padding:12px 16px 20px}.composer{background:#2a2a2a;border:1px solid #3a3a3a;border-radius:26px;padding:14px 16px 10px}.composer-input{color:#e0e0e0;font-size:15px;margin-bottom:10px;outline:none;width:100%}.composer-input::placeholder{color:#777}.composer-row{gap:8px}.composer-row,.plus-btn{align-items:center;display:flex}.plus-btn{background:#3a3a3a;border:none;color:#e0e0e0;cursor:pointer;font-size:18px;height:34px;justify-content:center;padding:0;width:34px}.composer-row .model-btn{background:#3a3a3a;border-radius:20px;font-size:13px;padding:8px 14px}.composer-spacer{flex:1 1}.composer-row .send-btn{align-items:center;border:none;color:#fff;cursor:pointer;display:flex;flex:none;font-size:16px;height:36px;justify-content:center;padding:0;transition:background-color .25s ease,transform .15s ease,opacity .25s ease;width:36px}.composer-row .send-btn:active:not(:disabled){transform:scale(.88)}.composer-row .send-btn:disabled{background:#e8e2d8;color:#b0a89a;cursor:default}.composer-row .send-btn:disabled svg{stroke:#b0a89a}.composer-row .send-btn:disabled{opacity:.4}.thinking-row{align-items:center;display:inline-flex;gap:8px}.thinking-star{display:inline-block;font-size:16px}.shimmer{animation:shimmer 1.5s linear infinite;background:linear-gradient(90deg,#999,#fff 50%,#999);-webkit-background-clip:text;background-clip:text;background-size:200% 100%;color:#0000}.msg-logo-row{display:flex;justify-content:flex-start;margin-bottom:-4px;margin-top:2px}.msg-logo{font-size:14px;opacity:.8}.message-content{white-space:pre-wrap}.chat-content{overflow-x:hidden}.messages{max-width:100%;width:100%}.splash-overlay{align-items:center;background:#1a1a1a;display:flex;inset:0;justify-content:center;position:fixed;z-index:2000}.splash-star{animation:splash-pulse 1.3s ease-in-out;font-size:70px}@keyframes splash-pulse{0%{opacity:1;transform:scale(1)}50%{opacity:.7;transform:scale(.6)}to{opacity:1;transform:scale(1)}}.copied-hint{color:#999;display:block;font-size:11px;margin-top:4px;opacity:.8}.message{animation:msgFadeIn .28s ease-out}@keyframes msgFadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.thinking-star svg{animation:starBreathe 1.8s ease-in-out infinite;transform-origin:center}@keyframes starBreathe{0%{opacity:.6;transform:scale(.9) rotate(0deg)}50%{opacity:1;transform:scale(1.08) rotate(20deg)}to{opacity:.6;transform:scale(.9) rotate(0deg)}}.thinking-phrase{animation:phraseFade .4s ease-in}@keyframes phraseFade{0%{opacity:0;transform:translateY(3px)}to{opacity:1;transform:translateY(0)}}.model-picker-overlay{align-items:flex-end;background:#00000080;display:flex;inset:0;position:fixed;z-index:1000}.model-picker-sheet{background:#2a2a2a;border-radius:20px 20px 0 0;padding:10px 16px 24px;width:100%}.model-picker-handle{background:#555;border-radius:2px;height:4px;margin:6px auto 14px;width:40px}.model-option{border-radius:14px;cursor:pointer;margin-bottom:8px;padding:14px 12px;transition:background .2s}.model-option:hover{background:#ffffff0d}.model-option.active{background:#d9775726;border:1px solid #d97757}.model-option-title{color:#e0e0e0;font-size:15px;font-weight:600;margin-bottom:4px}.model-option-desc{color:#999;font-size:13px;line-height:1.4}.welcome-section .brand-title{color:#f0f0f0;font-size:28px;padding:0 20px;text-align:center}.message.assistant .message-content{border:2px solid #d97757;color:#fff}.theme-picker{margin-bottom:20px}.theme-swatches{display:flex;gap:10px}.theme-swatch{border:2px solid #0000;border-radius:50%;cursor:pointer;height:36px;transition:border .2s,transform .15s;width:36px}.theme-swatch:hover{transform:scale(1.08)}.theme-swatch.active{border:2px solid #d97757}.refusal-block{color:#ffb199;font-style:italic}.code-card{background:#0d1117;border:1px solid #ffffff1a;border-radius:10px;box-sizing:border-box;margin:10px 0;max-width:100%;overflow:hidden;word-break:break-word}.code-card-head{align-items:center;background:#161b22;border-bottom:1px solid #ffffff14;display:flex;justify-content:space-between;padding:6px 10px 6px 14px}.code-card-lang{color:#8b949e;font-family:SF Mono,Menlo,Consolas,monospace;font-size:11px;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.code-card-copy{align-items:center;background:#ffffff0f;border:1px solid #ffffff1a;border-radius:7px;color:#c9d1d9;cursor:pointer;display:inline-flex;font-size:12px;gap:5px;padding:5px 10px;transition:background .15s,color .15s}.code-card-copy:hover{background:#ffffff1f}.code-card-body{color:#e6edf3;font-family:SF Mono,Menlo,Consolas,monospace;font-size:12.5px;line-height:1.6;margin:0;overflow-x:auto;padding:12px 14px;white-space:pre-wrap;word-break:break-word}.code-card-body code{background:none;font-family:inherit;padding:0}.tok-cmd{color:#79c0ff;font-weight:600}.tok-flag{color:#f0883e}.tok-str{color:#a5d6ff}.tok-var{color:#ffa657}.tok-op{color:#ff7b72}.tok-comment{color:#8b949e;font-style:italic}.web-search-btn.vps-btn.active{background:#4ade8026;border-color:#4ade80;color:#4ade80}.vps-step{background:#ffffff08;border:1px solid #ffffff14;border-radius:10px;margin:6px 0;overflow:hidden}.vps-step-head{align-items:center;background:none;border:none;color:inherit;cursor:pointer;display:flex;gap:8px;padding:9px 12px;text-align:left;width:100%}.vps-step-icon{display:inline-flex;flex-shrink:0}.vps-step-run .vps-step-icon{color:#d97757}.vps-step-done .vps-step-icon{color:#4ade80}.vps-step-fail .vps-step-icon{color:#ff6464}.vps-step-label{color:#e6e6e6;flex-shrink:0;font-size:13.5px;font-weight:600}.vps-step-cmd{background:#00000040;border-radius:5px;color:#8b949e;flex:1 1;font-family:SF Mono,Menlo,Consolas,monospace;font-size:11.5px;min-width:0;overflow:hidden;padding:2px 7px;text-overflow:ellipsis;white-space:nowrap}.vps-step-chevron{color:#8b949e;flex-shrink:0;margin-left:auto;transition:transform .18s}.vps-step-chevron.open{transform:rotate(180deg)}.vps-step-output{background:#0d1117;border-top:1px solid #ffffff12;color:#d1d5db;font-family:SF Mono,Menlo,Consolas,monospace;font-size:12px;line-height:1.5;margin:0;overflow-x:auto;padding:10px 12px;white-space:pre-wrap;word-break:break-word}.vps-spin{animation:vps-spin .9s linear infinite}@keyframes vps-spin{to{transform:rotate(1turn)}}.vps-terminal{background:#0d1117;border:1px solid #4ade8040;border-radius:10px;margin:10px 0;overflow:hidden}.vps-terminal-head{align-items:center;background:#4ade8014;border-bottom:1px solid #4ade8033;color:#4ade80;display:flex;font-size:12px;font-weight:600;gap:8px;padding:8px 12px}.vps-terminal-dot{background:#4ade80;border-radius:50%;box-shadow:0 0 6px #4ade80;height:8px;width:8px}.vps-terminal-body{color:#d1d5db;font-family:SF Mono,Menlo,Consolas,monospace;font-size:12.5px;line-height:1.5;margin:0;overflow-x:auto;padding:12px;white-space:pre-wrap;word-break:break-word}.pro-required-modal{background:#2a2a2a;border-radius:18px;max-width:380px;padding:24px;width:90%}.pro-required-modal h3{color:#e0e0e0;margin-bottom:12px}.pro-required-close{background:#0000;border:1px solid #ffffff1f;border-radius:10px;color:#999;margin-top:10px;padding:10px;width:100%}.chat-main{background:#1a1a1a!important;background:var(--bg-color,#1a1a1a)!important}.composer{border:2px solid #d97757!important}.message.assistant .message-content{transition:opacity .15s ease}.thinking-phrase{animation:shimmer 2s linear infinite;background:linear-gradient(90deg,#888,#eee 50%,#888);-webkit-background-clip:text;background-clip:text;background-size:200% auto;color:#0000;font-weight:600}@keyframes shimmer{0%{background-position:200%}to{background-position:-200%}}.attach-btn{align-items:center;background:#ffffff14;border:none;border-radius:10px;color:#e0e0e0;cursor:pointer;display:flex;height:36px;justify-content:center;width:36px}.attach-btn:hover{background:#ffffff26}.attach-chip{align-items:center;background:#ffffff14;border-radius:10px;color:#e0e0e0;display:inline-flex;font-size:13px;gap:8px;margin-bottom:8px;max-width:100%;padding:6px 10px}.attach-chip-name{max-width:220px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.attach-chip-x{background:none;border:none;color:#aaa;cursor:pointer;font-size:13px}.type-caret{animation:caretBlink .8s step-end infinite}@keyframes caretBlink{50%{opacity:0}}.claude-think-star{align-items:center;display:inline-flex;justify-content:center;padding:4px 0}.claude-think-star svg{animation:claudeStarPulse 1.1s ease-in-out infinite;transform-origin:center}@keyframes claudeStarPulse{0%,to{opacity:.55;transform:scale(.8) rotate(0deg)}50%{opacity:1;transform:scale(1.15) rotate(45deg)}}.msg-file-chip{align-items:center;background:#3a3a3a;border:1px solid #4a4a4a;border-radius:12px;color:#e0e0e0;display:inline-flex;font-size:13px;gap:6px;margin-bottom:6px;max-width:240px;padding:7px 12px}.msg-file-chip span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.model-option{align-items:center;display:flex;gap:10px;justify-content:space-between}.model-option-main{flex:1 1;min-width:0}.model-check{color:#d97757;flex:none;font-size:17px;font-weight:700}.message-content{-webkit-touch-callout:none;-webkit-user-select:none;user-select:none}.chat-history-item.pinned{background:#d977571a;border:1px solid #d9775740}.pin-indicator{flex:none;font-size:11px;margin-right:6px}.chat-item-actions{align-items:center;display:flex;flex:none;gap:2px}.chat-pin-btn{align-items:center;background:#0000;border:none;border-radius:6px;color:#888;cursor:pointer;display:flex;padding:4px}.chat-pin-btn:hover{background:#ffffff14;color:#d97757}.settings-item.shop-item{color:#4caf7d;font-weight:600}.sub-badge-card{background:linear-gradient(135deg,#d9775726,#d977570d);border:1px solid #d9775759;border-radius:10px;color:#d97757;font-size:13px;font-weight:600;margin-bottom:12px;padding:10px 14px}.shop-overlay{align-items:center;background:#0009;display:flex;inset:0;justify-content:center;padding:16px;position:fixed;z-index:1200}.shop-modal{background:#222;border:1px solid #3a3a3a;border-radius:18px;max-height:88vh;max-width:440px;overflow-y:auto;width:100%}.shop-content{padding:18px 20px 24px}.shop-section{margin-bottom:26px}.shop-section-title{color:#f0f0f0;font-size:16px;font-weight:700;margin-bottom:6px}.shop-price-hint{color:#999;font-size:13px;margin-bottom:14px}.token-slider-row{margin-bottom:10px}.token-slider{accent-color:#d97757;cursor:pointer;width:100%}.token-amount-row{align-items:center;display:flex;justify-content:space-between;margin-bottom:8px}.token-amount{color:#e8e8e8;font-size:15px;font-weight:600}.token-price{color:#d97757;font-size:20px;font-weight:800}.shop-note{color:#7a9;font-size:12px;margin-bottom:12px}.shop-buy-btn{background:#d97757;border:none;border-radius:12px;color:#fff;cursor:pointer;font-size:15px;font-weight:700;padding:13px;width:100%}.shop-buy-btn:hover{background:#c2603f}.shop-buy-btn:disabled{cursor:default;opacity:.55}.sub-card{background:#ffffff0a;border:1px solid #3a3a3a;border-radius:14px;margin-bottom:12px;padding:16px}.sub-card.max{border-color:#d9775780}.sub-card-head{align-items:center;display:flex;justify-content:space-between;margin-bottom:4px}.sub-card-title{color:#f0f0f0;font-size:15px;font-weight:700}.sub-card-price{color:#d97757;font-size:16px;font-weight:800}.sub-card-limit{color:#4caf7d;font-size:13px;font-weight:600;margin-bottom:6px}.sub-card-desc{color:#999;font-size:12.5px;line-height:1.5;margin-bottom:12px}.sub-buy{font-size:14px;padding:10px}.shop-success{background:#4caf7d26;border:1px solid #4caf7d66;border-radius:10px;color:#4caf7d;font-size:14px;font-weight:600}.shop-pending,.shop-success{margin-bottom:16px;padding:12px;text-align:center}.shop-pending{background:#e0a0301f;border:1px solid #e0a03059;border-radius:10px;color:#e0a030;font-size:13px}.shop-error{color:#ff6464;font-size:13px;margin-top:8px;text-align:center}.shop-modal.out-of-tokens{max-width:360px;padding:28px 24px;text-align:center}.oot-icon{font-size:40px;margin-bottom:10px}.shop-modal.out-of-tokens h3{color:#f0f0f0;font-size:18px;margin-bottom:8px}.shop-modal.out-of-tokens p{color:#999;font-size:13.5px;line-height:1.5;margin-bottom:18px}.oot-later{background:#0000;border:none;color:#888;cursor:pointer;font-size:14px;margin-top:8px;padding:10px;width:100%}.admin-panel{width:min(720px,100vw)}.admin-tabs{border-bottom:1px solid #3a3a3a;display:flex;gap:6px;overflow-x:auto;padding:12px 20px 0}.admin-tab{background:#0000;border:none;border-bottom:2px solid #0000;color:#999;cursor:pointer;font-size:13.5px;font-weight:600;padding:10px 14px;white-space:nowrap}.admin-tab.active{border-bottom-color:#d97757;color:#d97757}.admin-tab:hover{color:#e0e0e0}@media (max-width:760px){.admin-panel{width:100vw}}.shop-warn{color:#e0a030;font-size:12px;margin-bottom:12px}.model-badge-new{background:#d97757;border-radius:6px;color:#fff;font-size:9px;font-weight:800;letter-spacing:.5px;margin-left:6px;padding:2px 6px;vertical-align:middle}.gen-file-card{background:#ffffff0a;border:1px solid #ffffff1a;border-radius:12px;display:flex;flex-direction:column;gap:8px;margin:10px 0;padding:12px}.gen-file-info{align-items:center;color:#d97757;display:flex;gap:8px}.gen-file-name{color:#eee;font-size:13px;font-weight:700;word-break:break-all}.gen-file-size{color:#888;font-size:11px;margin-left:auto}.gen-file-preview{background:#141414;border-radius:8px;color:#bbb;font-family:monospace;font-size:11.5px;max-height:180px;overflow:auto;padding:10px;white-space:pre-wrap;word-break:break-word}.gen-file-dl{align-self:flex-start;background:#d97757;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:13px;font-weight:700;padding:8px 16px}.gen-file-dl:active{opacity:.8}.thinking-item{display:flex;flex-direction:column;gap:6px}.thinking-row-inner{align-items:center;display:flex;justify-content:space-between;width:100%}.thinking-warn{color:#e0a030;font-size:11px;line-height:1.4}.toggle-pill{align-items:center;background:#444;border-radius:11px;display:inline-flex;flex-shrink:0;height:22px;padding:2px;transition:background .2s;width:40px}.toggle-pill.on{background:#d97757}.toggle-dot{background:#fff;border-radius:50%;height:18px;transition:transform .2s;width:18px}.toggle-pill.on .toggle-dot{transform:translateX(18px)}.app-version{background:#ffffff0f;border-radius:6px;color:#888;font-size:11px;font-weight:600;margin-left:8px;padding:2px 7px;vertical-align:middle}.update-banner{align-items:center;animation:bannerSlideDown .3s ease-out;background:#1e1e1e;border:1px solid #d9775799;border-radius:12px;box-shadow:0 6px 24px #00000080;display:flex;gap:14px;left:50%;max-width:calc(100vw - 24px);padding:10px 16px;position:fixed;top:12px;transform:translateX(-50%);z-index:9999}@keyframes bannerSlideDown{0%{opacity:0;transform:translate(-50%,-16px)}to{opacity:1;transform:translate(-50%)}}.update-banner-text{color:#eee;font-size:13px;font-weight:600;white-space:nowrap}.update-banner-btns{display:flex;gap:8px}.update-btn-load{background:#d97757;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:12.5px;font-weight:700;padding:7px 14px}.update-btn-load:active{opacity:.8}.update-btn-later{background:#0000;border:1px solid #ffffff26;border-radius:8px;color:#aaa;cursor:pointer;font-size:12.5px;font-weight:600;padding:7px 12px}.composer-row .send-btn.stop-btn{animation:stopPulse 1.6s ease-in-out infinite;background:#d97757;cursor:pointer;opacity:1}.composer-row .send-btn.stop-btn:hover{background:#c2603f}@keyframes stopPulse{0%,to{box-shadow:0 0 0 0 #d9775773}50%{box-shadow:0 0 0 7px #d9775700}}body.native-app .chat-header{padding-top:calc(10px + max(env(safe-area-inset-top, 0px), 30px))}body.native-app .sidebar{padding-top:max(env(safe-area-inset-top,0px),30px)}body.native-app .update-banner{top:calc(12px + max(env(safe-area-inset-top, 0px), 30px))}body.native-app .settings-modal,body.native-app .shop-modal{padding-top:max(env(safe-area-inset-top,0px),30px)}body.native-app .composer,body.native-app .input-area{padding-bottom:max(env(safe-area-inset-bottom,0px),14px)}:root{--c-bg:#262624;--c-surface:#30302e;--c-surface-2:#1f1e1c;--c-border:#3e3c38;--c-text:#eceae4;--c-muted:#a6a39a;--c-accent:#d97757;--c-accent-hover:#c2603f;--c-user-bubble:#33322f}body{color:#eceae4;color:var(--c-text)}.chat-header,.chat-main,.main-container,body{background:#262624;background:var(--c-bg)}.chat-header{border-bottom:1px solid #3e3c38;border-bottom:1px solid var(--c-border)}.chat-header-title{color:#a6a39a;color:var(--c-muted);font-size:14.5px;font-weight:500}.menu-btn,.profile-btn{border-radius:8px;color:#a6a39a;color:var(--c-muted);transition:background .15s ease,color .15s ease}.menu-btn:hover,.profile-btn:hover{background:#30302e;background:var(--c-surface);color:#eceae4;color:var(--c-text)}.sidebar{background:#1f1e1c;background:var(--c-surface-2);border-right:1px solid #3e3c38;border-right:1px solid var(--c-border)}.sidebar-title{color:#eceae4;color:var(--c-text);font-family:Georgia,Times New Roman,serif;font-weight:500}.chat-history-item{background:#0000;border-radius:8px;transition:background .15s ease}.chat-history-item:hover{background:#ffffff0f}.new-chat-sidebar-btn{background:#0000;border:none;border-radius:8px;color:#d97757;color:var(--c-accent);font-weight:600}.new-chat-sidebar-btn:hover{background:#d977571a}.welcome-section .brand-title{color:#eceae4;color:var(--c-text);font-family:Georgia,Times New Roman,serif;font-weight:400;letter-spacing:-.01em}.message.assistant .message-content{background:#0000;color:#eceae4;color:var(--c-text);font-size:15.5px;line-height:1.7;max-width:100%;padding:4px 2px}.message.user .message-content{background:#33322f;background:var(--c-user-bubble);border:1px solid #3e3c38;border:1px solid var(--c-border);border-radius:18px;color:#eceae4;color:var(--c-text);font-size:15px;line-height:1.6;max-width:82%;padding:10px 16px}.msg-logo-row{opacity:.55}.chat-footer{background:#262624;background:var(--c-bg);border-top:none;padding-top:4px}.composer{background:#30302e;background:var(--c-surface);border:1px solid #3e3c38;border:1px solid var(--c-border);border-radius:24px;box-shadow:0 4px 24px #00000040;transition:border-color .15s ease}.composer:focus-within{border-color:#57544d}.composer-input{background:#0000;border:none;color:#eceae4;color:var(--c-text);font-size:15.5px}.composer-input::placeholder,.plus-btn{color:#a6a39a;color:var(--c-muted)}.plus-btn{background:#0000;border:1px solid #3e3c38;border:1px solid var(--c-border);border-radius:50%;transition:background .15s ease,color .15s ease}.plus-btn:hover{background:#ffffff0f;color:#eceae4;color:var(--c-text)}.composer-row .model-btn{background:#0000;border:none;border-radius:8px;color:#a6a39a;color:var(--c-muted);font-size:13.5px;font-weight:500}.composer-row .model-btn:hover{background:#ffffff0f;color:#eceae4;color:var(--c-text)}.composer-row .send-btn{background:#d97757;background:var(--c-accent);border-radius:50%;transition:background .15s ease,transform .1s ease}.composer-row .send-btn:hover:not(:disabled){background:#c2603f;background:var(--c-accent-hover)}.composer-row .send-btn:active:not(:disabled){transform:scale(.94)}.model-picker-sheet{background:#30302e;background:var(--c-surface);border:1px solid #3e3c38;border:1px solid var(--c-border);border-bottom:none}.model-option.active{background:#d9775714}.model-option-title{color:#eceae4;color:var(--c-text)}.model-option-desc{color:#a6a39a;color:var(--c-muted)}.settings-panel{background:#1f1e1c;background:var(--c-surface-2);border-left:1px solid #3e3c38;border-left:1px solid var(--c-border)}.settings-header{border-bottom:1px solid #3e3c38;border-bottom:1px solid var(--c-border)}.settings-item,.user-card{background:#30302e;background:var(--c-surface);border:1px solid #3e3c38;border:1px solid var(--c-border);border-radius:12px}.settings-item:hover{background:#383632}.free-badge{background:#d97757;background:var(--c-accent);color:#fff}.login-container{background:#262624;background:var(--c-bg)}.login-content{background:#0000}.login-content h1{font-family:Georgia,Times New Roman,serif;font-weight:400}.auth-input{background:#30302e;background:var(--c-surface);border:1px solid #3e3c38;border:1px solid var(--c-border);color:#eceae4;color:var(--c-text)}.auth-input:focus{border-color:#d97757;border-color:var(--c-accent)}.auth-btn{background:#d97757;background:var(--c-accent);border-radius:24px}.auth-btn:hover:not(:disabled){background:#c2603f;background:var(--c-accent-hover)}.attach-chip,.gen-file-card,.google-native-btn,.msg-file-chip{background:#30302e;background:var(--c-surface);border:1px solid #3e3c38;border:1px solid var(--c-border)}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-thumb{background:#3e3c38;background:var(--c-border);border-radius:3px}::-webkit-scrollbar-track{background:#0000}.web-search-btn{align-items:center;background:#0000;border:1px solid #3e3c38;border:1px solid var(--c-border,#3e3c38);border-radius:50%;color:#a6a39a;color:var(--c-muted,#a6a39a);cursor:pointer;display:flex;flex:none;height:34px;justify-content:center;padding:0;transition:background .15s ease,color .15s ease,border-color .15s ease;width:34px}.web-search-btn:hover{background:#ffffff0f;color:#eceae4;color:var(--c-text,#eceae4)}.web-search-btn.active{background:#d9775726;border-color:#d97757;border-color:var(--c-accent,#d97757);color:#d97757;color:var(--c-accent,#d97757)}.think-block{background:#ffffff08;border:1px solid #ffffff1a;border-radius:12px;margin:0 0 14px;overflow:hidden;transition:border-color .3s ease,background .3s ease}.think-block.streaming{background:#d977570f;border-color:#d9775773}.think-head{align-items:center;background:#0000;border:none;color:#cbb9b0;cursor:pointer;display:flex;font-size:13px;font-weight:600;gap:8px;padding:10px 12px;text-align:left;width:100%}.think-head:hover{background:#ffffff08}.think-dot{background:#7a756c;border-radius:50%;flex-shrink:0;height:9px;transition:background .3s ease,box-shadow .3s ease;width:9px}.think-dot.active{animation:think-pulse 1.1s ease-in-out infinite;background:#d97757;box-shadow:0 0 0 3px #d9775733}.think-label{flex:1 1}.think-chevron{align-items:center;display:flex;transition:transform .2s ease}.think-chevron.open{transform:rotate(180deg)}.think-body{border-top:1px solid #d9775740;color:#b8aaa2;font-size:13.5px;font-weight:400;line-height:1.6;padding:12px 14px 14px;white-space:pre-wrap}.think-block.streaming .think-label{color:#d97757}@keyframes think-pulse{0%,to{opacity:.4}50%{opacity:1}}.step-block{align-items:flex-start;background:#ffffff08;border:1px solid #ffffff1a;border-radius:10px;color:#b8b3aa;display:flex;font-size:13.5px;gap:8px;line-height:1.5;margin:10px 0;padding:9px 12px}.step-block.streaming{background:#d977570f;border-color:#d9775766;color:#d0c3ba}.step-icon{align-items:center;color:#4caf7d;display:flex;flex-shrink:0;margin-top:1px}.step-block.streaming .step-icon{animation:step-spin .9s linear infinite;color:#d97757}.step-text{flex:1 1}@keyframes step-spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.fable-title-row{gap:6px}.fable-title-row,.model-btn-fable{align-items:center;display:inline-flex}.model-btn-fable{gap:5px}.model-badge-pro{background:linear-gradient(90deg,#f5c542,#e8a020);border-radius:999px;color:#1a1a1a;display:inline-block;font-size:10px;font-weight:700;letter-spacing:.5px;margin-left:8px;padding:1px 7px;vertical-align:middle}.model-option-fable.locked{opacity:.75}.model-option-fable.locked .model-option-title{color:#ffffffd9}.pro-required-modal{align-items:center;background:#232323;border:1px solid #ffffff1a;border-radius:16px;display:flex;flex-direction:column;gap:12px;margin:auto;max-width:320px;padding:24px 20px;text-align:center;width:calc(100% - 48px)}.pro-required-icon{align-items:center;background:#ffffff14;border-radius:14px;color:#fff;display:flex;height:56px;justify-content:center;width:56px}.pro-required-modal h3{color:#fff;font-size:17px;margin:0}.pro-required-modal p{color:#ffffffb3;font-size:13.5px;line-height:1.5;margin:0}.pro-required-close{background:none;border:none;color:#ffffff80;cursor:pointer;font-size:13px;padding:4px}.v0-status{font-weight:600}.v0-status-ok{color:#6dff96}.v0-status-no_credits{color:#ff9864}.v0-status-invalid{color:#ff6464}.v0-status-rate_limited{color:#f5c542}.v0-status-error{color:#ff6464}.v0-status-unchecked{color:#aaa}.fable-balance{color:#f5c542;display:block;font-size:12px;margin-top:4px}.mic-btn.recording{animation:mic-pulse 1.2s ease-in-out infinite;border-color:#ff6464;color:#ff6464}.redeem-block{border-top:1px solid #ffffff1a;display:flex;flex-direction:column;gap:8px;margin-top:12px;padding-top:12px;width:100%}.redeem-label{color:#fff9;font-size:13px;margin:0}.redeem-btn{margin-top:0}@keyframes mic-pulse{0%,to{opacity:1}50%{opacity:.45}}#root,.main-container,body,html{max-width:100vw;overflow-x:hidden}.chat-main{overflow-x:hidden}.chat-content,.chat-main,.message,.messages{max-width:100%;min-width:0}.message-content{max-width:70%;overflow-wrap:anywhere;word-break:break-word}.message-content code,.message-content img,.message-content pre,.message-content table{max-width:100%}.message-content pre{overflow-x:auto;white-space:pre-wrap;word-break:break-word}.message-content code{overflow-wrap:anywhere}.chat-footer,.code-card,.code-card-body,.composer{max-width:100%;min-width:0}.chat-footer,.composer{box-sizing:border-box}@media (max-width:768px){.message-content{max-width:85%}}