:root,[data-theme=dark]{--bg:#0e1116;--bg-soft:#151a21;--bg-card:#1a2029;--bg-hover:#212936;--bg-input:#0e1116;--border:#262e3a;--border-soft:#1f2731;--border-strong:#33404f;--text:#e6edf3;--text-dim:#9aa7b6;--text-mute:#6b7885;--accent:#4f8cff;--accent-hover:#6199ff;--accent-dim:#2f5db3;--accent-soft:#4f8cff1f;--accent-text:#fff;--green:#3fb950;--green-soft:#3fb9501f;--orange:#d29922;--orange-soft:#d299221f;--red:#f85149;--red-soft:#f851491f;--shadow:0 8px 28px #00000059;--shadow-sm:0 2px 8px #00000038;--scroll-thumb:#2b3441;--scroll-thumb-hover:#3a4657;--hero-glow:#4f8cff29;--overlay:#0000009e;--header-bg:#0e1116e0;--hover-tint:#ffffff05;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}[data-theme=light]{--bg:#f6f7f9;--bg-soft:#fff;--bg-card:#fff;--bg-hover:#eef1f5;--bg-input:#fff;--border:#d8dee6;--border-soft:#e6eaf0;--border-strong:#c2cad5;--text:#1a2029;--text-dim:#4a5563;--text-mute:#8b95a3;--accent:#2f6feb;--accent-hover:#1f5bd8;--accent-dim:#6d9cf5;--accent-soft:#2f6feb14;--accent-text:#fff;--green:#1a7f37;--green-soft:#1a7f3717;--orange:#9a6700;--orange-soft:#9a670017;--red:#cf222e;--red-soft:#cf222e14;--shadow:0 8px 28px #141e2d1a;--shadow-sm:0 2px 8px #141e2d0f;--scroll-thumb:#c8d0da;--scroll-thumb-hover:#aeb8c4;--hero-glow:#2f6feb17;--overlay:#141c286b;--header-bg:#ffffffe0;--hover-tint:#00000006;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}:root{--radius:10px;--radius-sm:7px;--mono:ui-monospace, SFMono-Regular, Menlo, Consolas, monospace}*{box-sizing:border-box}html,body,#app{height:100%}body{background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,PingFang SC,Hiragino Sans GB,Microsoft YaHei,sans-serif;font-size:14px;line-height:1.6;transition:background-color .2s,color .2s}a{color:inherit;text-decoration:none}button{font-family:inherit;font-size:inherit;cursor:pointer;color:inherit;background:0 0;border:none}input,textarea,select{font-family:inherit;font-size:inherit}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--scroll-thumb);border:2px solid var(--bg);border-radius:6px}::-webkit-scrollbar-thumb:hover{background:var(--scroll-thumb-hover)}.btn{border-radius:var(--radius-sm);background:var(--bg-hover);color:var(--text);border:1px solid var(--border);white-space:nowrap;justify-content:center;align-items:center;gap:6px;padding:8px 16px;font-size:13px;font-weight:500;transition:all .15s;display:inline-flex}.btn:hover:not(:disabled){background:var(--bg-card);border-color:var(--border-strong)}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background:var(--accent);border-color:var(--accent);color:var(--accent-text)}.btn-primary:hover:not(:disabled){background:var(--accent-hover);border-color:var(--accent-hover)}.btn-danger{border-color:var(--red);color:var(--red);background:0 0}.btn-danger:hover:not(:disabled){background:var(--red-soft)}.btn-ghost{color:var(--text-dim);background:0 0;border-color:#0000}.btn-ghost:hover:not(:disabled){background:var(--bg-hover);color:var(--text)}.btn-sm{padding:5px 11px;font-size:12px}.btn-block{width:100%}.input,.textarea,.select{background:var(--bg-input);border:1px solid var(--border);border-radius:var(--radius-sm);width:100%;color:var(--text);outline:none;padding:9px 12px;transition:border-color .15s,box-shadow .15s}.input:focus,.textarea:focus,.select:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.input::placeholder,.textarea::placeholder{color:var(--text-mute)}.textarea{resize:vertical;min-height:84px;line-height:1.65}.field{margin-bottom:16px}.field-label{color:var(--text-dim);margin-bottom:6px;font-size:12.5px;font-weight:500;display:block}.field-hint{color:var(--text-mute);margin-top:5px;font-size:12px}.card{background:var(--bg-card);border:1px solid var(--border-soft);border-radius:var(--radius)}.tag{background:var(--bg-hover);color:var(--text-dim);border:1px solid var(--border-soft);border-radius:5px;padding:2px 8px;font-size:12px;display:inline-block}.empty{text-align:center;color:var(--text-mute);padding:64px 20px}.empty-icon{opacity:.5;margin-bottom:10px;font-size:34px}.spinner{border:2px solid var(--border);border-top-color:var(--accent);border-radius:50%;width:18px;height:18px;animation:.7s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.alert{border-radius:var(--radius-sm);margin-bottom:14px;padding:10px 14px;font-size:13px}.alert-error{background:var(--red-soft);border:1px solid var(--red);color:var(--red)}.alert-ok{background:var(--green-soft);border:1px solid var(--green);color:var(--green)}.alert-warn{background:var(--orange-soft);border:1px solid var(--orange);color:var(--orange)}.pager{justify-content:center;align-items:center;gap:8px;padding:28px 0 8px;display:flex}.pager button{border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--bg-card);min-width:34px;height:34px;color:var(--text-dim);padding:0 10px;font-size:13px}.pager button:hover:not(:disabled){background:var(--bg-hover);color:var(--text)}.pager button.active{background:var(--accent);border-color:var(--accent);color:var(--accent-text)}.pager button:disabled{opacity:.35;cursor:not-allowed}.table{border-collapse:collapse;width:100%;font-size:13px}.table th{text-align:left;color:var(--text-mute);letter-spacing:.4px;border-bottom:1px solid var(--border);white-space:nowrap;padding:10px 12px;font-size:12px;font-weight:500}.table td{border-bottom:1px solid var(--border-soft);vertical-align:middle;padding:12px}.table tbody tr:hover{background:var(--hover-tint)}.table tbody tr:last-child td{border-bottom:none}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.mono{font-family:var(--mono);font-size:12px}
