@import "https://fonts.bunny.net/css?family=plus-jakarta-sans:400,500,600,700|jetbrains-mono:400,500";:root{--font-sans:"Plus Jakarta Sans", system-ui, -apple-system, "Segoe UI", "PingFang SC", "Microsoft YaHei", sans-serif;--font-mono:"JetBrains Mono", ui-monospace, "Cascadia Code", monospace;--accent:#2563eb;--accent-hover:#1d4ed8;--accent-soft:#dbeafe;--accent-ring:color-mix(in srgb, var(--accent) 24%, transparent);--accent-glow:color-mix(in srgb, var(--accent) 10%, transparent);--accent-x-deep:#0052cc;--accent-x-bright:#00d2ff;--primary:var(--accent);--primary-dark:var(--accent-hover);--primary-light:var(--accent-soft);--success:#16a34a;--success-soft:color-mix(in srgb, var(--success) 12%, transparent);--warning:#a16207;--warning-soft:color-mix(in srgb, var(--warning) 10%, transparent);--danger:#b91c1c;--danger-soft:color-mix(in srgb, var(--danger) 10%, transparent);--text-primary:#18181b;--text-secondary:#3f3f46;--text-muted:#71717a;--text-placeholder:#a1a1aa;--bg-page:#f8fafc;--bg-card:#fff;--bg-sidebar:#0f172a;--bg-sidebar-hover:#ffffff0f;--bg-sidebar-active:color-mix(in srgb, var(--accent) 20%, #0f172a);--bg-input:#f8fafc;--bg-hover:#f1f5f9;--bg-table-head:#f8fafc;--bg-elevated:#fff;--border:#e2e8f0;--border-strong:#cbd5e1;--radius-sm:8px;--radius-md:12px;--radius-lg:16px;--radius-pill:999px;--shadow-sm:0 1px 2px #0f172a0f;--shadow-md:0 12px 32px #0f172a14;--shadow-sidebar:4px 0 24px #0f172a0f;--glass-blur:10px;--glass-saturate:125%;--glass-bg:var(--bg-card);--glass-bg-strong:var(--bg-card);--glass-bg-fallback:#fff;--glass-border:var(--border);--glass-highlight:transparent;--glass-shadow:var(--shadow-sm);--sidebar-text:#cbd5e1;--sidebar-text-muted:#94a3b8;--sidebar-text-active:#f8fafc;--on-accent:#fff;--type-app-body:15px;--type-app-sm:13px;--type-app-label:15px;--type-app-title:18px;--type-app-card-title:17px;font-family:var(--font-sans);font-size:var(--type-app-body);color:var(--text-primary);background:var(--bg-page);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;line-height:1.55}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--accent:#3b82f6;--accent-hover:#60a5fa;--accent-soft:color-mix(in srgb, var(--accent) 18%, transparent);--accent-ring:color-mix(in srgb, var(--accent) 28%, transparent);--accent-glow:color-mix(in srgb, var(--accent) 10%, transparent);--text-primary:#f8fafc;--text-secondary:#d1d5db;--text-muted:#9ca3af;--text-placeholder:#6b7280;--bg-page:#0a0e17;--bg-card:#161b22;--bg-sidebar:#070b14;--bg-sidebar-hover:#ffffff0d;--bg-sidebar-active:color-mix(in srgb, var(--accent) 22%, #070b14);--bg-input:#161b22;--bg-hover:#1c2333;--bg-table-head:#161b22;--bg-elevated:#1c2333;--border:#21262d;--border-strong:#30363d;--shadow-md:0 12px 32px #00000073;--glass-bg:#ffffff17;--glass-bg-strong:#ffffff24;--glass-bg-fallback:var(--bg-card);--glass-border:color-mix(in srgb, #fff 12%, var(--border));--glass-highlight:#ffffff24;--glass-shadow:0 8px 32px #00000047, inset 0 1px 0 var(--glass-highlight)}}[data-theme=light]{--accent:#2563eb;--accent-hover:#1d4ed8;--accent-soft:#dbeafe;--accent-ring:color-mix(in srgb, var(--accent) 24%, transparent);--accent-glow:color-mix(in srgb, var(--accent) 10%, transparent);--accent-x-deep:#0052cc;--accent-x-bright:#00d2ff;--text-primary:#0f172a;--text-secondary:#475569;--text-muted:#94a3b8;--text-placeholder:#a1a1aa;--bg-page:#f8fafc;--bg-card:#fff;--bg-sidebar:#0f172a;--bg-sidebar-hover:#ffffff0f;--bg-sidebar-active:color-mix(in srgb, var(--accent) 20%, #0f172a);--bg-input:#f8fafc;--bg-hover:#f1f5f9;--bg-table-head:#f8fafc;--bg-elevated:#fff;--border:#e2e8f0;--border-strong:#cbd5e1;--glass-bg:var(--bg-card);--glass-bg-strong:var(--bg-card);--glass-bg-fallback:#fff;--glass-border:var(--border);--glass-highlight:transparent;--glass-shadow:var(--shadow-sm)}@media (prefers-reduced-transparency:reduce){:root{--glass-blur:0px;--glass-saturate:100%;--glass-bg:var(--glass-bg-fallback);--glass-bg-strong:var(--glass-bg-fallback)}}*,:before,:after{box-sizing:border-box}body{margin:0}#app{min-height:100vh}h1,h2,h3,h4,h5,h6,p{margin:0}button,input,textarea,select{font-family:inherit}a{color:var(--accent)}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.ui-page{flex-direction:column;gap:24px;width:100%;max-width:none;display:flex}.ui-page-header{justify-content:space-between;align-items:flex-end;gap:16px;padding-bottom:4px;display:flex}.ui-page-title{font-size:var(--type-app-card-title);color:var(--text-primary);letter-spacing:-.02em;font-weight:600}.ui-page-desc{font-size:var(--type-app-sm);color:var(--text-secondary);max-width:56ch;margin-top:6px;line-height:1.55}.ui-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);padding:28px;transition:border-color .2s,box-shadow .2s}.ui-card-header{border-bottom:1px solid var(--border);margin-bottom:24px;padding-bottom:16px}.ui-card-header h2{font-size:var(--type-app-card-title);color:var(--text-primary);letter-spacing:-.02em;font-weight:600;line-height:1.3}.ui-card-desc{font-size:var(--type-app-sm);color:var(--text-secondary);margin-top:6px;line-height:1.55}.ui-btn{border-radius:var(--radius-sm);min-height:42px;font-size:var(--type-app-body);cursor:pointer;white-space:nowrap;border:none;justify-content:center;align-items:center;gap:8px;padding:11px 20px;font-weight:500;transition:background .18s,transform .12s,box-shadow .18s,border-color .18s;display:inline-flex}.ui-btn:active:not(:disabled){transform:scale(.98)}.ui-btn:disabled{opacity:.55;cursor:not-allowed}.ui-btn--primary{background:var(--accent);color:var(--on-accent);box-shadow:0 1px 2px color-mix(in srgb, var(--accent) 25%, transparent), 0 4px 12px color-mix(in srgb, var(--accent) 12%, transparent)}.ui-btn--primary:hover:not(:disabled){background:var(--accent-hover);box-shadow:0 1px 2px color-mix(in srgb, var(--accent) 30%, transparent), 0 6px 16px color-mix(in srgb, var(--accent) 18%, transparent)}.ui-btn--secondary{background:var(--bg-card);color:var(--text-secondary);border:1px solid var(--border)}.ui-btn--secondary:hover:not(:disabled){background:var(--bg-hover);border-color:var(--accent-ring);color:var(--text-primary)}.ui-btn--ghost{color:var(--text-secondary);border:1px solid var(--border);background:0 0}.ui-btn--ghost:hover:not(:disabled){color:var(--accent);border-color:var(--accent-ring);background:var(--accent-soft)}.ui-label-index{background:var(--accent-soft);width:26px;height:26px;color:var(--accent);font-size:12px;font-weight:600;font-family:var(--font-mono);border:1px solid var(--accent-ring);border-radius:7px;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.ui-skeleton{background:linear-gradient(90deg, var(--bg-hover) 0%, var(--border) 50%, var(--bg-hover) 100%);border-radius:var(--radius-sm);background-size:200% 100%;animation:1.4s ease-in-out infinite ui-shimmer}@keyframes ui-shimmer{0%{background-position:100% 0}to{background-position:-100% 0}}.ui-skeleton-block{height:14px;margin-bottom:10px}.ui-skeleton-block.lg{width:60%;height:20px}.ui-skeleton-block.md{width:80%}.ui-skeleton-block.sm{width:40%}.ui-state-center{text-align:center;flex-direction:column;align-items:center;gap:14px;padding:48px 24px;display:flex}.ui-badge{border-radius:var(--radius-pill);background:var(--accent-soft);color:var(--accent);border:1px solid var(--accent-ring);align-items:center;padding:4px 11px;font-size:12px;font-weight:600;display:inline-flex}.ui-badge--success{background:var(--success-soft);color:var(--success);border-color:color-mix(in srgb, var(--success) 25%, transparent)}.ui-badge--warn{background:var(--warning-soft);color:var(--warning);border-color:color-mix(in srgb, var(--warning) 25%, transparent)}.ui-btn:focus-visible,.ui-input:focus-visible,.ui-textarea:focus-visible,.ui-select:focus-visible,.ui-tab:focus-visible,.ui-copy-btn:focus-visible,.nav-item:focus-visible,.api-key-toggle:focus-visible,.provider-tab:focus-visible,.tab-btn:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.ui-form-grid{grid-template-columns:1fr 1fr;gap:24px;display:grid}.ui-form-item{flex-direction:column;gap:6px;display:flex}.ui-form-item--full{grid-column:1/-1}.ui-form-label{font-size:var(--type-app-label);color:var(--text-primary);letter-spacing:-.01em;align-items:center;gap:10px;font-weight:600;display:flex}.ui-form-hint{font-size:var(--type-app-sm);color:var(--text-muted);margin:0;line-height:1.5}.ui-input,.ui-textarea,.ui-select{border:1px solid var(--border);border-radius:var(--radius-sm);width:100%;font-size:var(--type-app-body);color:var(--text-primary);background:var(--bg-input);box-sizing:border-box;padding:11px 14px;font-family:inherit;line-height:1.5;transition:border-color .18s,box-shadow .18s,background .18s}.ui-textarea{resize:vertical;min-height:96px}.ui-input:hover,.ui-textarea:hover,.ui-select:hover{border-color:color-mix(in srgb, var(--accent) 30%, var(--border-strong))}.ui-input:focus,.ui-textarea:focus,.ui-select:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-ring);background:var(--bg-card);outline:none}.ui-input::placeholder,.ui-textarea::placeholder{color:var(--text-placeholder)}.ui-form-actions{border-top:1px solid var(--border);grid-column:1/-1;justify-content:flex-end;gap:12px;margin-top:4px;padding-top:8px;display:flex}.ui-file-upload{border:1.5px dashed var(--border);border-radius:var(--radius-sm);text-align:center;background:var(--bg-input);padding:20px 16px;transition:border-color .18s,background .18s;position:relative}.ui-file-upload:hover{border-color:var(--accent);background:var(--accent-soft)}.ui-file-input{opacity:0;cursor:pointer;width:100%;height:100%;position:absolute;inset:0}.ui-table-wrap{border:1px solid var(--glass-border);border-radius:var(--radius-sm);background:var(--glass-bg);-webkit-backdrop-filter:blur(12px) saturate(var(--glass-saturate));box-shadow:var(--glass-shadow);overflow-x:auto}.ui-table{border-collapse:collapse;width:100%;font-size:var(--type-app-sm)}.ui-table th,.ui-table td{text-align:left;border-bottom:1px solid var(--border);vertical-align:top;padding:14px 18px;line-height:1.55}.ui-table th{background:color-mix(in srgb, var(--glass-bg-strong) 80%, var(--bg-table-head));text-transform:none;letter-spacing:.02em;color:var(--text-secondary);white-space:nowrap;font-size:12px;font-weight:600}.ui-table tr:last-child td{border-bottom:none}.ui-table tbody tr{transition:background .15s}.ui-table tbody tr:hover td{background:var(--bg-hover)}.ui-copy-btn{background:var(--glass-bg-strong);-webkit-backdrop-filter:blur(8px);border:1px solid var(--glass-border);min-height:34px;font-size:var(--type-app-sm);color:var(--text-secondary);cursor:pointer;border-radius:6px;padding:7px 14px;font-weight:500;transition:color .15s,border-color .15s,background .15s}.ui-copy-btn:hover:not(:disabled){color:var(--accent);border-color:var(--accent-ring);background:var(--accent-soft)}.ui-copy-btn.is-copied{color:var(--success);border-color:var(--success);background:var(--success-soft)}.ui-tab-bar{flex-wrap:wrap;gap:8px;margin-bottom:24px;padding-bottom:4px;display:flex}.ui-tab{border:1px solid var(--glass-border);border-radius:var(--radius-sm);background:var(--glass-bg);min-height:38px;-webkit-backdrop-filter:blur(10px) saturate(var(--glass-saturate));box-shadow:inset 0 1px 0 var(--glass-highlight);font-size:var(--type-app-sm);cursor:pointer;color:var(--text-secondary);padding:9px 16px;font-weight:500;transition:background .15s,border-color .15s,color .15s,box-shadow .15s}.ui-tab:hover{border-color:var(--accent-ring);color:var(--text-primary)}.ui-tab.is-active{background:var(--accent-soft);border-color:var(--accent);color:var(--accent);box-shadow:inset 0 -2px 0 var(--accent);font-weight:600}.ui-result-block{background:var(--glass-bg);-webkit-backdrop-filter:blur(12px) saturate(var(--glass-saturate));border:1px solid var(--glass-border);border-radius:var(--radius-sm);box-shadow:inset 0 1px 0 var(--glass-highlight);margin-bottom:18px;padding:18px 20px}.ui-result-block--highlight{border-color:var(--accent-ring);background:color-mix(in srgb, var(--accent-soft) 55%, var(--glass-bg))}.ui-result-block-header{justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:12px;display:flex}.ui-result-block-header h3{font-size:var(--type-app-sm);color:var(--text-secondary);letter-spacing:.01em;margin:0;font-weight:600}.ui-spinner{border:2px solid color-mix(in srgb, var(--on-accent) 35%, transparent);border-top-color:var(--on-accent);border-radius:50%;width:15px;height:15px;animation:.8s linear infinite ui-spin}@keyframes ui-spin{to{transform:rotate(360deg)}}@media (width<=768px){.ui-form-grid{grid-template-columns:1fr}.ui-card{padding:20px}.ui-btn{min-height:44px}}@media (prefers-reduced-transparency:reduce){.ui-skeleton{background:var(--bg-hover);animation:none}.ui-card,.ui-input,.ui-textarea,.ui-select,.ui-file-upload,.ui-table-wrap,.ui-tab,.ui-copy-btn,.ui-result-block,.ui-btn--secondary{-webkit-backdrop-filter:none}}.app-layout[data-v-c7ada585]{background:var(--bg-page);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;height:100vh;display:flex;overflow:hidden}.sidebar[data-v-c7ada585]{background:var(--bg-sidebar);border-right:1px solid #ffffff0f;flex-direction:column;flex-shrink:0;width:252px;height:100vh;padding:18px 14px;display:flex;overflow-y:auto}.sidebar-brand[data-v-c7ada585]{border-bottom:1px solid #ffffff14;align-items:center;gap:12px;margin-bottom:12px;padding:8px 10px 20px;text-decoration:none;display:flex}.brand-logo[data-v-c7ada585]{object-fit:contain;border-radius:50px;flex-shrink:0;width:56px;height:56px;display:block}.brand-text[data-v-c7ada585]{flex-direction:column;min-width:0;display:flex}.brand-name[data-v-c7ada585]{color:var(--sidebar-text-active);letter-spacing:-.02em;font-size:16px;font-weight:600}.brand-sub[data-v-c7ada585]{color:var(--sidebar-text-muted);margin-top:1px;font-size:13px}.sidebar-nav[data-v-c7ada585]{flex-direction:column;flex:1;gap:4px;padding:4px 0;display:flex}.nav-item[data-v-c7ada585]{border-radius:var(--radius-sm);color:var(--sidebar-text);border:1px solid #0000;align-items:center;gap:10px;padding:11px 12px;font-size:14px;line-height:1.4;text-decoration:none;transition:background .18s,color .18s,border-color .18s;display:flex}.nav-item[data-v-c7ada585]:hover{background:var(--bg-sidebar-hover);color:var(--sidebar-text-active)}.nav-item.active[data-v-c7ada585]{background:color-mix(in srgb, #fff 8%, var(--bg-sidebar-active));color:var(--sidebar-text-active);border-color:color-mix(in srgb, var(--accent) 45%, transparent);box-shadow:inset 3px 0 0 var(--accent);font-weight:500}.nav-icon[data-v-c7ada585]{opacity:.9;flex-shrink:0;width:18px;height:18px}.sidebar-footer[data-v-c7ada585]{border-top:1px solid #ffffff14;flex-direction:column;gap:8px;margin-top:auto;padding:12px 10px 4px;display:flex}.footer-link[data-v-c7ada585]{color:var(--sidebar-text-muted);text-align:left;cursor:pointer;background:0 0;border:none;padding:0;font-family:inherit;font-size:13px;text-decoration:none;transition:color .15s}.footer-link[data-v-c7ada585]:hover{color:var(--sidebar-text-active)}.main-area[data-v-c7ada585]{background:radial-gradient(ellipse 55% 45% at 0% 100%, color-mix(in srgb, var(--accent) 6%, transparent), transparent 50%), radial-gradient(ellipse 80% 50% at 100% 0%, var(--accent-glow), transparent 55%), var(--bg-page);flex-direction:column;flex:1;min-width:0;min-height:0;display:flex;overflow:hidden}.topbar[data-v-c7ada585]{border-bottom:1px solid var(--border);background:var(--bg-card);min-height:68px;box-shadow:var(--shadow-sm);z-index:5;flex-shrink:0;align-items:center;padding:16px 36px;display:flex;position:sticky;top:0}.page-title[data-v-c7ada585]{font-size:var(--type-app-title);letter-spacing:-.02em;background:linear-gradient(135deg, var(--accent-x-deep) 0%, var(--accent) 42%, var(--accent-x-bright) 100%);color:#0000;-webkit-background-clip:text;background-clip:text;font-weight:600;line-height:1.25}.page-desc[data-v-c7ada585]{font-size:var(--type-app-sm);color:var(--text-secondary);max-width:56ch;margin-top:4px;line-height:1.5}.page-content[data-v-c7ada585]{overscroll-behavior:contain;flex:1;width:100%;max-width:none;min-height:0;padding:28px 32px 40px;overflow-y:auto}@media (width<=768px){.sidebar[data-v-c7ada585]{width:68px;padding:12px 8px}.sidebar .brand-text[data-v-c7ada585],.sidebar .nav-label[data-v-c7ada585],.sidebar .sidebar-footer[data-v-c7ada585]{display:none}.sidebar .sidebar-brand[data-v-c7ada585]{justify-content:center;padding-bottom:16px}.sidebar .nav-item[data-v-c7ada585]{justify-content:center;padding:10px}.page-content[data-v-c7ada585]{padding:16px}.topbar[data-v-c7ada585]{-webkit-backdrop-filter:none;background:var(--glass-bg-fallback);padding:12px 16px}.page-desc[data-v-c7ada585]{display:none}}
