:root{--bg:#020617;--bg-card:#0e1223;--bg-hover:#141a2e;--bg-inset:#070b16;--border:#334155;--border-soft:#1e293b;--text:#e2e8f0;--text-sec:#94a3b8;--text-mut:#64748b;--accent:#22c55e;--accent-2:#38bdf8;--accent-soft:#22c55e24;--accent-2-soft:#38bdf821;--success:#34d399;--success-soft:#34d39921;--danger:#f87171;--danger-soft:#f8717121;--warning:#fbbf24;--warning-soft:#fbbf2421;--info:#38bdf8;--info-soft:#38bdf821;--ring:#22c55e6b;--radius:12px;--radius-sm:8px;--shadow-sm:0 1px 2px #0006;--shadow-md:0 8px 24px -6px #0000008c;--shadow-lg:0 20px 48px -12px #000000b3;--grad-ai:linear-gradient(135deg, #22c55e 0%, #38bdf8 100%);--mesh:radial-gradient(at 18% 0%, #22c55e29 0px, transparent 50%), radial-gradient(at 82% 8%, #38bdf824 0px, transparent 45%), radial-gradient(at 50% 100%, #22c55e17 0px, transparent 55%)}[data-theme=light]{--bg:#f8fafc;--bg-card:#fff;--bg-hover:#f1f5f9;--bg-inset:#f1f5f9;--border:#e2e8f0;--border-soft:#eef2f7;--text:#0f172a;--text-sec:#475569;--text-mut:#64748b;--accent:#16a34a;--accent-2:#0284c7;--accent-soft:#16a34a17;--accent-2-soft:#0284c717;--success:#15803d;--success-soft:#15803d1a;--danger:#dc2626;--danger-soft:#dc262617;--warning:#b45309;--warning-soft:#b453091a;--info:#0369a1;--info-soft:#0369a117;--ring:#16a34a52;--shadow-sm:0 1px 2px #1e1b2e0f;--shadow-md:0 8px 24px -8px #1e1b2e24;--shadow-lg:0 20px 44px -14px #1e1b2e38;--mesh:radial-gradient(at 18% 0%, #22c55e1a 0px, transparent 50%), radial-gradient(at 82% 8%, #38bdf817 0px, transparent 45%), radial-gradient(at 50% 100%, #22c55e0d 0px, transparent 55%)}*{box-sizing:border-box;margin:0;padding:0}body{--font-head:"Space Grotesk", "Inter", system-ui, sans-serif;--font-mono:"JetBrains Mono", ui-monospace, monospace;background:var(--bg);color:var(--text);min-height:100vh;font-family:Inter,system-ui,sans-serif}a{color:var(--accent);text-decoration:none}.container{max-width:1100px;margin:0 auto;padding:0 24px}.nav{justify-content:space-between;align-items:center;padding:16px 0;display:flex}.nav-brand{font-family:var(--font-head);color:var(--text);font-size:20px;font-weight:800}.nav-brand span{color:var(--accent)}.nav-links{align-items:center;gap:16px;display:flex}.nav-links a{color:var(--text-sec);font-size:14px;font-weight:500}.nav-links a:hover{color:var(--text)}.btn{cursor:pointer;border:none;border-radius:8px;padding:10px 24px;font-size:14px;font-weight:600;transition:all .15s;display:inline-block}.btn-primary{background:var(--accent);color:#fff}.btn-primary:hover{opacity:.9}.btn-ghost{color:var(--text-sec);border:1px solid var(--border);background:0 0}.btn-ghost:hover{border-color:var(--accent);color:var(--text)}.hero{text-align:center;padding:80px 0 60px}.hero h1{font-family:var(--font-head);margin-bottom:16px;font-size:48px;font-weight:800;line-height:1.1}.hero h1 span{background:linear-gradient(135deg,#34d399,#38bdf8);-webkit-text-fill-color:transparent;-webkit-background-clip:text}.hero p{color:var(--text-sec);max-width:600px;margin:0 auto 32px;font-size:18px}.hero-actions{justify-content:center;gap:12px;display:flex}.pricing{grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:20px;padding:40px 0;display:grid}.price-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);text-align:center;padding:32px}.price-card .amount{font-family:var(--font-head);margin:16px 0;font-size:36px;font-weight:800}.price-card .amount small{color:var(--text-mut);font-size:14px;font-weight:400}.price-card ul{text-align:left;margin:16px 0;list-style:none}.price-card li{color:var(--text-sec);padding:6px 0;font-size:14px}.price-card li:before{content:"✓ ";color:var(--success)}.auth-wrap{justify-content:center;align-items:center;min-height:80vh;display:flex}.auth-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);width:100%;max-width:400px;padding:40px}.auth-card h2{margin-bottom:8px}.auth-card p{color:var(--text-sec);margin-bottom:24px;font-size:14px}.form-group{margin-bottom:16px}.form-group label{color:var(--text-sec);margin-bottom:6px;font-size:13px;font-weight:500;display:block}.form-group input{background:var(--bg);border:1px solid var(--border);width:100%;color:var(--text);border-radius:8px;padding:12px 14px;font-family:inherit;font-size:14px}.form-group input:focus{border-color:var(--accent);outline:none}.auth-card .btn{width:100%;margin-top:8px}.auth-error{color:var(--danger);background:#ef44441a;border-radius:8px;margin-bottom:16px;padding:10px 14px;font-size:13px}.auth-switch{text-align:center;color:var(--text-mut);margin-top:16px;font-size:13px}.dash{grid-template-columns:220px 1fr;min-height:100vh;display:grid}.sidebar{background:var(--bg-card);border-right:1px solid var(--border);padding:24px 0}.sidebar a{color:var(--text-sec);padding:12px 24px;font-size:14px;font-weight:500;display:block}.sidebar a:hover,.sidebar a.active{background:var(--bg-hover);color:var(--accent)}.dash-main{padding:32px}.dash-header{justify-content:space-between;align-items:center;margin-bottom:24px;display:flex}.credit-badge{background:var(--accent-soft);color:var(--accent);border-radius:8px;padding:8px 16px;font-size:14px;font-weight:700}.chat-wrap{flex-direction:column;height:calc(100vh - 140px);display:flex}.chat-messages{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);flex:1;margin-bottom:12px;padding:16px;overflow-y:auto}.chat-msg{margin-bottom:16px}.chat-msg.user{text-align:right}.chat-msg .bubble{border-radius:12px;max-width:70%;padding:12px 16px;font-size:14px;line-height:1.5;display:inline-block}.chat-msg.user .bubble{background:var(--accent);color:#fff}.chat-msg.assistant .bubble{background:var(--bg-hover);color:var(--text)}.chat-msg pre{background:var(--bg);border:1px solid var(--border);border-radius:8px;margin-top:8px;padding:12px;font-size:13px;overflow-x:auto}.chat-input-row{gap:8px;display:flex}.chat-input-row select{background:var(--bg-card);border:1px solid var(--border);color:var(--text);border-radius:8px;padding:10px;font-size:13px}.chat-input-row input{background:var(--bg-card);border:1px solid var(--border);color:var(--text);border-radius:8px;flex:1;padding:12px 14px;font-size:14px}.table-wrap{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);overflow:hidden}table{border-collapse:collapse;width:100%}th,td{text-align:left;border-bottom:1px solid var(--border);padding:12px 16px;font-size:14px}th{color:var(--text-mut);text-transform:uppercase;letter-spacing:.05em;font-size:12px;font-weight:600}.key-mono{font-family:var(--font-mono);color:var(--text-sec)}.key-new{background:var(--accent-soft);color:var(--accent);font-family:var(--font-mono);word-break:break-all;border-radius:8px;margin-bottom:16px;padding:12px 16px;font-size:13px}.topup-amounts{grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:12px;margin:24px 0;display:grid}.topup-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);text-align:center;cursor:pointer;padding:24px;transition:all .15s}.topup-card:hover{border-color:var(--accent)}.topup-card .rm{font-size:28px;font-weight:800}.chart-container{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:24px}.form-group input[type=checkbox]{width:auto}.promo-row{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:16px;display:flex}.promo-input{background:var(--bg-card);border:1px solid var(--border);min-width:120px;color:var(--text);border-radius:8px;flex:1;padding:10px 14px;font-size:14px}.promo-result{background:var(--accent-soft);color:var(--accent);border-radius:8px;margin-bottom:16px;padding:12px 16px;font-size:14px}:focus-visible{box-shadow:0 0 0 3px var(--ring);border-radius:6px;outline:none}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.skip-link{z-index:999;background:var(--accent);color:#fff;border-radius:8px;padding:10px 16px;font-size:13px;font-weight:600;transition:top .15s;position:absolute;top:-60px;left:12px}.skip-link:focus{top:12px}.btn{font-family:inherit}.btn-primary{background:var(--grad-ai);color:#fff;box-shadow:0 4px 14px -4px #22c55e73}.btn-primary:hover{filter:brightness(1.08);opacity:1}.btn-primary:active{transform:scale(.98)}.btn-ghost:hover{border-color:var(--accent);color:var(--text);background:var(--accent-soft)}.btn-sm{border-radius:var(--radius-sm);padding:6px 12px;font-size:12.5px}.icon-btn{border-radius:var(--radius-sm);background:var(--bg-card);border:1px solid var(--border);width:34px;height:34px;color:var(--text-sec);cursor:pointer;justify-content:center;align-items:center;gap:6px;transition:all .15s;display:inline-flex}.icon-btn:hover{color:var(--accent);border-color:var(--accent);background:var(--accent-soft)}.icon-btn:active{transform:scale(.94)}.theme-toggle{cursor:pointer;background:var(--bg-card);border:1px solid var(--border);width:36px;height:36px;color:var(--text-sec);border-radius:10px;justify-content:center;align-items:center;transition:all .18s;display:inline-flex}.theme-toggle:hover{color:var(--accent);border-color:var(--accent);transform:rotate(12deg)}.stat-grid{grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:16px;margin-bottom:24px;display:grid}.stat-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:18px 20px;transition:transform .18s,box-shadow .18s,border-color .18s;position:relative;overflow:hidden}.stat-card:hover{box-shadow:var(--shadow-md);border-color:var(--accent);transform:translateY(-2px)}.stat-card:before{content:"";background:var(--grad-ai);opacity:.85;height:3px;position:absolute;inset:0 0 auto}.stat-top{align-items:center;gap:10px;margin-bottom:10px;display:flex}.stat-ico{width:34px;height:34px;color:var(--accent);background:var(--accent-soft);border-radius:10px;justify-content:center;align-items:center;display:inline-flex}.stat-label{color:var(--text-sec);text-transform:uppercase;letter-spacing:.05em;font-size:12px;font-weight:600}.stat-val{font-family:var(--font-head);font-variant-numeric:tabular-nums;letter-spacing:-.02em;font-size:26px;font-weight:800}.stat-sub{color:var(--text-mut);margin-top:4px;font-size:12px}.stat-spark{opacity:.9;position:absolute;bottom:8px;right:10px}.trend-badge{font-variant-numeric:tabular-nums;border-radius:999px;align-items:center;gap:3px;padding:2px 8px;font-size:11.5px;font-weight:700;display:inline-flex}.trend-up{background:var(--success-soft);color:var(--success)}.trend-down{background:var(--danger-soft);color:var(--danger)}.trend-flat{background:var(--accent-soft);color:var(--text-sec)}.sidebar{padding:20px 0}.sb-brand{align-items:center;gap:10px;padding:0 22px 20px;display:flex}.sb-brand-mark{color:#fff;background:var(--grad-ai);border-radius:10px;justify-content:center;align-items:center;width:34px;height:34px;display:inline-flex;box-shadow:0 4px 14px -4px #22c55e80}.sb-brand-name{font-family:var(--font-head);color:var(--text);letter-spacing:-.01em;font-size:16px;font-weight:800}.sb-group{margin-bottom:6px}.sb-group-title{color:var(--text-mut);text-transform:uppercase;letter-spacing:.09em;padding:14px 24px 6px;font-size:10.5px;font-weight:700}.sidebar a,.sb-link{color:var(--text-sec);border-left:3px solid #0000;align-items:center;gap:10px;padding:9px 22px;font-size:13.5px;font-weight:500;transition:all .14s;display:flex;position:relative}.sidebar a:hover,.sb-link:hover{background:var(--bg-hover);color:var(--text)}.sidebar a.active,.sb-link.active{background:var(--accent-soft);color:var(--accent);border-left-color:var(--accent);font-weight:650}.sidebar a svg,.sb-link svg{flex:none}.sb-badge{text-align:center;background:var(--accent);color:#fff;font-variant-numeric:tabular-nums;border-radius:999px;min-width:20px;margin-left:auto;padding:1px 7px;font-size:11px;font-weight:700}.sb-badge.warn{background:var(--warning);color:#1a1200}.sb-badge.mut{background:var(--bg-hover);color:var(--text-mut)}.skeleton{background:linear-gradient(90deg, var(--bg-hover) 0%, var(--border) 40%, var(--bg-hover) 80%);background-size:200% 100%;border-radius:6px;animation:1.3s linear infinite shimmer}.sk-text{height:12px;margin-bottom:8px}.sk-circle{border-radius:50%}.sk-card{border:1px solid var(--border-soft);border-radius:var(--radius);background:var(--bg-card);padding:16px}.sk-row{align-items:center;gap:12px;display:flex}.sk-grid{gap:16px;display:grid}.sk-list{flex-direction:column;gap:12px;display:flex}.sk-table{border:1px solid var(--border-soft);border-radius:var(--radius);background:var(--bg-card);overflow:hidden}.sk-tr{grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.sk-tr:not(:last-child){border-bottom:1px solid var(--border-soft)}.sk-thead{background:var(--bg-inset)}.sk-td{padding:12px 16px}@keyframes shimmer{to{background-position:-200% 0}}.toast-host{z-index:900;flex-direction:column;gap:10px;max-width:360px;display:flex;position:fixed;bottom:20px;right:20px}.toast{background:var(--bg-card);border:1px solid var(--border);box-shadow:var(--shadow-lg);border-radius:10px;align-items:center;gap:10px;padding:12px 14px;font-size:13.5px;font-weight:500;animation:.22s cubic-bezier(.2,.9,.3,1.2) toastIn;display:flex}.toast-success{border-color:#34d39966}.toast-success>svg{color:var(--success)}.toast-error{border-color:#f8717166}.toast-error>svg{color:var(--danger)}.toast-info>svg{color:var(--info)}.toast-msg{color:var(--text);flex:1}.toast-close{cursor:pointer;color:var(--text-mut);background:0 0;border:none;border-radius:4px;padding:2px;display:inline-flex}.toast-close:hover{color:var(--text)}@keyframes toastIn{0%{opacity:0;transform:translateY(12px)scale(.96)}}.empty-state{text-align:center;color:var(--text-sec);border:1.5px dashed var(--border);border-radius:var(--radius);background:var(--bg-inset);flex-direction:column;align-items:center;gap:10px;padding:48px 24px;display:flex}.empty-state svg{color:var(--text-mut)}.empty-state h4{color:var(--text);font-size:15px;font-weight:650}.empty-state p{max-width:340px;font-size:13px}.page-hero{border-radius:var(--radius);background-color:var(--bg-card);border:1px solid var(--border);margin-bottom:24px;padding:22px 24px;position:relative;overflow:hidden}.page-hero:before{content:"";background:var(--mesh);pointer-events:none;position:absolute;inset:0}.page-hero>*{position:relative}.page-hero h2{font-family:var(--font-head);letter-spacing:-.02em;font-size:21px;font-weight:800}.page-hero p{color:var(--text-sec);margin-top:4px;font-size:13.5px}.hero-ico{color:#fff;background:var(--grad-ai);border-radius:12px;justify-content:center;align-items:center;width:40px;height:40px;display:inline-flex;box-shadow:0 6px 18px -6px #22c55e80}.chat-msg .bubble{white-space:pre-wrap;word-break:break-word}.chat-msg.assistant .bubble{border-top-left-radius:4px}.chat-msg.user .bubble{border-top-right-radius:4px}.msg-actions{gap:6px;margin-top:8px;display:flex}.msg-actions button{color:var(--text-mut);border:1px solid var(--border);cursor:pointer;background:0 0;border-radius:7px;align-items:center;gap:5px;padding:4px 10px;font-size:12px;font-weight:600;transition:all .14s;display:inline-flex}.msg-actions button:hover{color:var(--accent);border-color:var(--accent);background:var(--accent-soft)}.typing-dots{align-items:center;gap:4px;padding:4px 2px;display:inline-flex}.typing-dots span{background:var(--accent);border-radius:50%;width:7px;height:7px;animation:1.1s ease-in-out infinite tdot}.typing-dots span:nth-child(2){animation-delay:.16s}.typing-dots span:nth-child(3){animation-delay:.32s}@keyframes tdot{0%,60%,to{opacity:.4;transform:scale(.5)}30%{opacity:1;transform:scale(1)}}.stream-cursor{vertical-align:text-bottom;background:var(--accent);border-radius:2px;width:8px;height:15px;animation:.85s step-end infinite blink;display:inline-block}@keyframes blink{50%{opacity:0}}.chat-msg pre{background:var(--bg-inset);border-color:var(--border-soft)}.chat-msg code{font-family:var(--font-mono);font-size:12.5px}.model-select-wrap{position:relative}.model-search{background:var(--bg-card);border:1px solid var(--border);width:100%;color:var(--text);border-radius:8px;margin-bottom:8px;padding:9px 12px 9px 34px;font-family:inherit;font-size:13px}.model-search:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--ring);outline:none}.model-opt-group{color:var(--text-sec);font-size:12px;font-weight:700}.model-opt{color:var(--text)}.auth-split{grid-template-columns:1fr 1fr;min-height:100vh;display:grid}.auth-aside{color:#fff;background:#020617;flex-direction:column;justify-content:center;gap:20px;padding:48px;display:flex;position:relative;overflow:hidden}.auth-aside:before{content:"";background:var(--mesh);position:absolute;inset:0}.auth-aside>*{position:relative}.auth-aside h2{font-family:var(--font-head);letter-spacing:-.02em;font-size:30px;font-weight:800;line-height:1.2}.auth-aside .grad-text{background:linear-gradient(135deg,#4ade80,#22d3ee);-webkit-text-fill-color:transparent;-webkit-background-clip:text}.auth-feat{flex-direction:column;gap:12px;margin-top:8px;display:flex}.auth-feat div{color:#86efac;align-items:center;gap:10px;font-size:14px;display:flex}.auth-feat svg{color:#22d3ee;flex:none}.auth-form-side{background:var(--bg);justify-content:center;align-items:center;padding:32px 24px;display:flex}@media (width<=900px){.auth-split{grid-template-columns:1fr}.auth-aside{display:none}}.sticky-table-wrap{max-height:70vh;overflow:auto}.sticky-table-wrap table{width:100%}.sticky-table-wrap thead th{z-index:2;background:var(--bg-inset);position:sticky;top:0}tbody tr{transition:background .12s}tbody tr:hover{background:var(--bg-hover)}.pill{border-radius:999px;align-items:center;gap:5px;padding:2px 9px;font-size:11.5px;font-weight:700;display:inline-flex}.pill-ok{background:var(--success-soft);color:var(--success)}.pill-warn{background:var(--warning-soft);color:var(--warning)}.pill-bad{background:var(--danger-soft);color:var(--danger)}.pill-info{background:var(--info-soft);color:var(--info)}.pill-mut{background:var(--bg-hover);color:var(--text-mut)}.num{font-variant-numeric:tabular-nums}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important}}@media (pointer:coarse){.btn,.icon-btn,.theme-toggle{min-height:44px}.icon-btn,.theme-toggle{width:44px}}@media (width<=768px){.dash{grid-template-columns:1fr}.sidebar{display:none}.hero h1{font-size:32px}.mobile-nav-btn{display:inline-flex}}.mobile-nav-btn{display:none}
