:root{--bg:#0b0f14;--panel:#151b23;--panel2:#1c2430;--line:#263241;--text:#e6edf3;--muted:#8b98a8;--accent:#4da3ff;--accent2:#2f81f7;--danger:#ff6b6b;--ok:#3fb950;--mono:ui-monospace, SFMono-Regular, Menlo, Consolas, monospace}*{box-sizing:border-box}html,body{background:var(--bg);color:var(--text);margin:0;padding:0;font-family:-apple-system,BlinkMacSystemFont,PingFang SC,Microsoft YaHei,sans-serif;line-height:1.6}button,input,select,textarea{font:inherit}a{color:var(--accent)}.page{max-width:1180px;margin:0 auto;padding:28px 20px 80px}.login-page{justify-content:center;align-items:center;min-height:100vh;padding:20px;display:flex}.card{background:var(--panel);border:1px solid var(--line);border-radius:14px;margin-bottom:18px;padding:20px}.login-card{width:100%;max-width:380px}.login-card .btn{width:100%;margin-top:14px}.brand{letter-spacing:-.01em;font-size:24px;font-weight:700}.subtitle{color:var(--muted);margin-top:2px;font-size:13px}.muted{color:var(--muted);font-size:13px}.topbar{justify-content:space-between;align-items:center;gap:16px;margin-bottom:18px;display:flex}h2{margin:0 0 12px;font-size:16px}.stats{grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:18px;display:grid}.stat{background:var(--panel);border:1px solid var(--line);border-radius:12px;padding:14px 16px}.stat .v{color:var(--accent);font-variant-numeric:tabular-nums;font-size:26px;font-weight:700}.stat .l{color:var(--muted);font-size:12px}.field{color:var(--muted);flex-direction:column;gap:6px;font-size:12px;display:flex}.input{border:1px solid var(--line);color:var(--text);background:#0a0f16;border-radius:9px;outline:none;width:100%;padding:10px 12px}.input:focus{border-color:var(--accent)}textarea.input{resize:vertical;min-height:74px}.form-grid{grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:12px;display:grid}.options-grid{grid-template-columns:repeat(2,1fr);gap:12px;margin:12px 0;display:grid}.row{flex-wrap:wrap;align-items:flex-end;gap:10px;display:flex}.row.between{justify-content:space-between;align-items:center}.grow{flex:1;min-width:200px}.btn{background:var(--panel2);color:var(--text);border:1px solid var(--line);cursor:pointer;border-radius:9px;padding:9px 14px;font-size:13px}.btn:hover{background:#222c38;border-color:#3a4a5e}.btn.primary{background:var(--accent2);border-color:var(--accent2);color:#fff;font-weight:600}.btn.danger{color:var(--danger);background:#1d1215;border-color:#4a2528}.btn:disabled{opacity:.55;cursor:not-allowed}.message{white-space:pre-wrap;border-radius:10px;margin-bottom:16px;padding:10px 14px;font-size:13px}.message.ok{color:#7ee2a8;background:#0e2418;border:1px solid #1f5133}.message.error{color:#ff9aa5;background:#2a1114;border:1px solid #5a252b}.key-row{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:8px;display:flex}code{font-family:var(--mono);border:1px solid var(--line);color:#9fd1ff;word-break:break-all;background:#0a0f16;border-radius:6px;padding:4px 8px;font-size:12px}.filters{flex-wrap:wrap;gap:10px;margin-bottom:12px;display:flex}.filters .input{flex:1;width:auto;min-width:140px}.table-wrap{border:1px solid var(--line);border-radius:10px;overflow-x:auto}table{border-collapse:collapse;width:100%;min-width:720px;font-size:13px}th,td{text-align:left;border-bottom:1px solid var(--line);vertical-align:top;padding:10px 12px}th{color:var(--muted);letter-spacing:.04em;background:#0f141c;font-size:11px}tr:last-child td{border-bottom:none}.stem{text-overflow:ellipsis;-webkit-line-clamp:2;-webkit-box-orient:vertical;max-width:420px;display:-webkit-box;overflow:hidden}.actions{gap:6px;display:flex}.actions .btn{padding:5px 10px;font-size:12px}.error{color:var(--danger);font-size:12px}@media (max-width:780px){.form-grid{grid-template-columns:1fr 1fr}.options-grid,.stats{grid-template-columns:1fr}.row.between{flex-direction:column;align-items:flex-start}}
