:root{--app-height:100dvh;--vv-offset:0px;--bg-0:#05070f;--bg-1:#0b1020;--glass:hsla(0,0%,100%,.055);--glass-strong:hsla(0,0%,100%,.09);--border:hsla(0,0%,100%,.1);--text:#eaf0ff;--hint:#8b93ad;--accent-1:#3d7bff;--accent-2:#6ea8ff;--accent-grad:linear-gradient(135deg,#4f8cff,#2b6bff 60%,#1f4fe0);--r-lg:24px;--r-md:18px;--r-sm:12px;--safe-t:env(safe-area-inset-top,0px);--safe-b:env(safe-area-inset-bottom,0px)}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html{text-size-adjust:100%}body,html{touch-action:manipulation}body,html{margin:0;padding:0;position:fixed;inset:0;width:100%;height:100%;overflow:hidden;color:var(--text);font-family:Vazirmatn,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-size:15px;-webkit-font-smoothing:antialiased;background:radial-gradient(120% 80% at 50% -10%,rgba(63,123,255,.18) 0,rgba(63,123,255,0) 55%),radial-gradient(90% 60% at 100% 0,rgba(40,200,180,.08) 0,transparent 50%),linear-gradient(180deg,var(--bg-1) 0,var(--bg-0) 100%);background-attachment:fixed;overscroll-behavior:none}button{font:inherit;color:inherit}.app{display:flex;flex-direction:column;position:fixed;top:0;left:0;right:0;height:var(--app-height);max-width:720px;margin:0 auto;transition:height .18s ease-out}.topbar{display:flex;align-items:center;gap:8px;padding:calc(var(--safe-t) + 12px) 16px 12px;min-height:64px;flex:none}.topbar .title{flex:1 1;text-align:center;font-weight:600;font-size:16px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.topbar-actions{display:flex;gap:6px;flex:none}.topbar-info{display:flex;gap:8px;flex:1 1;min-width:0}.home-header{display:flex;align-items:center;justify-content:space-between;padding:calc(var(--safe-t) + 12px) 16px 12px;flex:none}.home-title{font-size:20px;font-weight:700;color:var(--text);letter-spacing:-.3px}.home-header-actions{display:flex;gap:8px}.home-chips{gap:10px;margin-top:24px;flex-wrap:wrap}.home-chip,.home-chips{display:flex;justify-content:center}.home-chip{align-items:center;gap:6px;padding:9px 16px;border-radius:14px;font-size:13px;font-weight:600}.home-chip.model{background:rgba(61,123,255,.15);border:1px solid rgba(61,123,255,.25);color:#6ea8ff}.home-chip.balance{background:rgba(240,192,96,.12);border:1px solid rgba(240,192,96,.22);color:#f0c060}.topbar-chip{display:flex;align-items:center;background:hsla(0,0%,100%,.07);border:1px solid hsla(0,0%,100%,.1);border-radius:20px;padding:5px 12px;font-size:13px;font-weight:500;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:0 1 auto;min-width:0}.topbar-chip.coin{color:#f0c060;flex-shrink:0}.balance-bar{display:flex;justify-content:center;gap:8px;padding:0 14px 6px;flex:none}.balance-chip{font-size:12px;color:var(--hint);background:var(--glass);border:1px solid var(--border);border-radius:20px;padding:4px 14px;letter-spacing:.01em}.balance-chip.small{display:inline-flex;align-items:center;gap:4px;padding:6px 12px;font-size:12px;font-weight:600;color:#f0c060;background:rgba(240,192,96,.12);border:1px solid rgba(240,192,96,.22);white-space:nowrap}.icon-btn{width:42px;height:42px;flex:none;border:1px solid var(--border);border-radius:50%;background:var(--glass);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);display:grid;place-items:center;font-size:18px;cursor:pointer;transition:background .15s ease,transform .1s ease}.icon-btn:active{transform:scale(.93);background:var(--glass-strong)}.messages{flex:1 1;overflow-y:auto;-webkit-overflow-scrolling:touch;padding:12px 14px 18px;display:flex;flex-direction:column;gap:12px}.bubble{max-width:86%;padding:11px 15px;border-radius:20px;line-height:1.55;word-wrap:break-word;overflow-wrap:anywhere;animation:rise .18s ease;text-align:start}.bubble ol,.bubble ul{-webkit-padding-start:1.4em;padding-inline-start:1.4em;-webkit-margin-start:0;margin-inline-start:0}@keyframes rise{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}.bubble.user{align-self:flex-end;background:var(--accent-grad);color:#fff;border-bottom-right-radius:6px;box-shadow:0 6px 18px rgba(43,107,255,.3)}.bubble.model{align-self:flex-start;background:var(--glass);border:1px solid var(--border);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border-bottom-left-radius:6px}[dir=rtl] .bubble.user{border-bottom-right-radius:20px;border-bottom-left-radius:6px}[dir=rtl] .bubble.model{border-bottom-left-radius:20px;border-bottom-right-radius:6px}.bubble pre{background:rgba(0,0,0,.35);padding:10px;border-radius:10px;overflow-x:auto;border:1px solid var(--border)}.bubble code{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:13px}.bubble table{border-collapse:collapse;width:100%;font-size:13px}.bubble td,.bubble th{border:1px solid var(--border);padding:5px 9px}.bubble a{color:var(--accent-2)}.bubble p{margin:.35em 0}.bubble :first-child{margin-top:0}.bubble :last-child{margin-bottom:0}.thinking{color:var(--hint);animation:pulse 1.2s ease-in-out infinite}@keyframes pulse{0%,to{opacity:.4}50%{opacity:1}}.empty{flex:1 1;min-height:0;overflow:hidden;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:18px;color:var(--hint);text-align:center;padding:24px}.home-logo{width:150px;height:150px;object-fit:contain;padding:0;border-radius:50%;background:#fff;box-shadow:0 0 50px rgba(61,123,255,.4);animation:float 4s ease-in-out infinite}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.empty .lead{font-size:17px;color:var(--text);font-weight:600}.image-preview{position:relative;align-self:flex-start;margin:0 14px 8px;flex:none}.image-preview img{max-width:120px;max-height:120px;border-radius:14px;border:1px solid var(--border);object-fit:cover;display:block}.image-preview-x{position:absolute;top:-8px;inset-inline-end:-8px;width:24px;height:24px;border-radius:50%;background:#1a2236;border:1px solid var(--border);color:var(--text);display:grid;place-items:center;cursor:pointer}.attach-btn{width:44px;height:44px;color:var(--hint)}.composer{flex:none;display:flex;flex-wrap:nowrap;align-items:flex-end;gap:10px;padding:10px 14px max(var(--safe-b),20px)}.composer .field{flex:1 1 auto;min-width:0;display:flex;align-items:center;background:var(--glass);border:1px solid var(--border);border-radius:24px;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);padding:4px 16px}.composer textarea{flex:1 1 auto;width:100%;min-width:0;resize:none;border:none;outline:none;background:transparent;color:var(--text);font-family:inherit;font-size:16px;line-height:1.4;max-height:120px;padding:9px 0}.composer textarea::placeholder{color:var(--hint)}.send-btn{width:44px;height:44px;flex:none;border:none;border-radius:50%;background:var(--accent-grad);color:#fff;font-size:18px;display:grid;place-items:center;cursor:pointer;box-shadow:0 6px 18px rgba(43,107,255,.4);transition:transform .1s ease,opacity .15s ease}.send-btn:active{transform:scale(.92)}.send-btn:disabled{opacity:.4;box-shadow:none}.backdrop{position:fixed;inset:0;background:rgba(0,0,0,.5);backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);display:flex;align-items:flex-end;justify-content:center;z-index:30;animation:fade .18s ease}@keyframes fade{0%{opacity:0}to{opacity:1}}.sheet{width:100%;max-width:720px;background:linear-gradient(180deg,rgba(20,28,50,.96),rgba(8,12,24,.98));border:1px solid var(--border);border-bottom:none;border-radius:var(--r-lg) var(--r-lg) 0 0;padding:18px 18px calc(var(--safe-b) + 20px);animation:slideup .22s ease}@keyframes slideup{0%{transform:translateY(100%)}to{transform:none}}.sheet .grab{width:38px;height:4px;border-radius:4px;background:var(--border);margin:0 auto 14px}.sheet h3{margin:0 0 14px;font-size:17px}.sheet .label{color:var(--hint);font-size:13px;margin:16px 4px 8px}.row{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:14px 16px;border-radius:var(--r-md);background:var(--glass);border:1px solid var(--border);margin-bottom:10px;cursor:pointer;transition:background .15s ease,transform .1s ease}.row:active{transform:scale(.99);background:var(--glass-strong)}.row.active{border-color:var(--accent-1);background:rgba(63,123,255,.16)}.row .check{color:var(--accent-2);font-size:16px}.segment{display:flex;gap:8px}.segment .seg{flex:1 1;text-align:center;padding:12px;border-radius:var(--r-md);background:var(--glass);border:1px solid var(--border);cursor:pointer}.segment .seg.active{border-color:var(--accent-1);background:rgba(63,123,255,.18)}.drawer{position:fixed;inset:0;max-width:720px;margin:0 auto;background:linear-gradient(180deg,var(--bg-1),var(--bg-0));z-index:25;display:flex;flex-direction:column;animation:fade .18s ease}.drawer .list{flex:1 1;overflow-y:auto;padding:8px 14px calc(var(--safe-b) + 14px)}.chat-item{padding:14px 16px;border-radius:var(--r-md);background:var(--glass);border:1px solid var(--border);margin-bottom:10px;cursor:pointer;transition:background .15s ease,transform .1s ease}.chat-item:active{transform:scale(.99);background:var(--glass-strong)}.chat-item.active{border-color:var(--accent-1)}.chat-item .name{font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chat-item .meta{color:var(--hint);font-size:12px;margin-top:4px}.center{height:var(--app-height);display:flex;align-items:center;justify-content:center;color:var(--hint);padding:24px;text-align:center}.spinner{width:28px;height:28px;border-radius:50%;border:3px solid var(--border);border-top-color:var(--accent-2);animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(1turn)}}.sheet-scroll{max-height:55vh;overflow-y:auto;-webkit-overflow-scrolling:touch}.sheet-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}.sheet-header h3{margin:0;font-size:17px}.group-toggle{display:flex;gap:6px}.toggle-btn{padding:6px 12px;border-radius:14px;border:1px solid var(--border);background:var(--glass);color:var(--hint);font-size:12px;cursor:pointer;transition:background .15s,color .15s,border-color .15s}.toggle-btn.active{border-color:var(--accent-1);background:rgba(63,123,255,.18);color:var(--text)}.back-btn{background:var(--glass);border:1px solid var(--border);color:var(--text);font-size:13px;font-weight:500;border-radius:14px;cursor:pointer;padding:6px 12px;display:flex;align-items:center;justify-content:center;transition:background .15s ease,transform .1s ease}.back-btn:active{background:var(--glass-strong);transform:scale(.95)}.back-btn-red{color:#ff6b6b;border-color:hsla(0,100%,71%,.3);background:hsla(0,100%,71%,.1);padding:8px 16px;font-size:14px}.back-btn-red:active{background:hsla(0,100%,71%,.18)}.default-model-badge{display:flex;align-items:center;justify-content:space-between;background:var(--glass);border:1px solid var(--border);padding:12px 16px;border-radius:var(--r-md)}.section-header{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--hint);padding:10px 4px 6px}.wallet-balance-card{background:linear-gradient(135deg,rgba(63,123,255,.25),rgba(31,79,224,.15));border:1px solid rgba(63,123,255,.4);border-radius:var(--r-md);padding:20px;text-align:center}.wallet-label{font-size:13px;color:var(--hint);margin-bottom:8px}.wallet-amount{font-size:24px;font-weight:700;color:var(--text)}.tx-item{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px 14px;border-radius:var(--r-sm);background:var(--glass);border:1px solid var(--border);margin-bottom:8px}.tx-left{display:flex;flex-direction:column;gap:3px;min-width:0}.tx-amount{font-size:14px;font-weight:600}.tx-amount.deposit{color:#4ade80}.tx-amount.usage{color:#f87171}.tx-desc{font-size:12px;overflow:hidden;text-overflow:ellipsis;max-width:200px}.tx-date,.tx-desc{color:var(--hint);white-space:nowrap}.tx-date{font-size:11px;flex:none}