:root{color-scheme:dark;--bg:#0a0b10;--bg-grad:radial-gradient(1200px 600px at 10% -10%,rgba(124,92,255,0.18),transparent 60%),radial-gradient(1000px 500px at 100% 0%,rgba(0,212,168,0.12),transparent 60%),#0a0b10;--panel:rgba(20,24,31,0.7);--panel-solid:#14181f;--panel-2:#1a1f28;--border:rgba(255,255,255,0.08);--border-strong:rgba(255,255,255,0.14);--text:#e8ebf3;--muted:#8a93a3;--muted-2:#5d6675;--accent:#7c5cff;--accent-2:#00d4a8;--accent-grad:linear-gradient(135deg,#7c5cff,#5b8cff);--danger:#ff5d6c;--warn:#ffb454;--shadow:0 8px 32px rgba(0,0,0,0.4);--shadow-glow:0 0 0 1px rgba(124,92,255,0.4),0 8px 32px rgba(124,92,255,0.2)}*{box-sizing:border-box}body,html{margin:0;padding:0;background:var(--bg-grad);background-attachment:fixed;color:var(--text);font-family:ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,Helvetica Neue,sans-serif;font-size:14px;line-height:1.5;-webkit-font-smoothing:antialiased;min-height:100vh}a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline}.container{max-width:1100px;margin:0 auto;padding:32px 20px 80px}.header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:28px;flex-wrap:wrap}.brand{display:flex;align-items:center;gap:14px}.logo{width:44px;height:44px;border-radius:12px;background:var(--accent-grad);display:grid;place-items:center;box-shadow:0 6px 20px rgba(124,92,255,.4);flex-shrink:0}.logo svg{width:24px;height:24px;color:white}.brand h1{margin:0;font-size:22px;font-weight:700;letter-spacing:-.3px}.brand .sub{color:var(--muted);font-size:12.5px;margin-top:2px}.header-stats{display:flex;gap:8px;flex-shrink:0}.stat-pill{background:var(--panel);border:1px solid var(--border);border-radius:999px;padding:6px 12px 6px 10px;font-size:12px;display:inline-flex;align-items:center;gap:6px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.stat-pill b{color:var(--text);font-weight:700}.stat-pill .muted{color:var(--muted)}.toolbar{display:flex;gap:10px;align-items:stretch;margin-bottom:20px;flex-wrap:wrap}.input-wrap{position:relative;flex:1 1;min-width:180px}.input-wrap svg{position:absolute;left:12px;top:50%;transform:translateY(-50%);width:16px;height:16px;color:var(--muted-2);pointer-events:none}.input{width:100%;background:var(--panel);border:1px solid var(--border);color:var(--text);padding:11px 12px 11px 36px;border-radius:10px;outline:none;font-size:14px;transition:border-color .15s,box-shadow .15s;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.input::placeholder{color:var(--muted-2)}.input:focus{border-color:var(--accent);box-shadow:0 0 0 3px rgba(124,92,255,.15)}.btn{background:var(--accent-grad);color:white;border:0;padding:11px 16px;border-radius:10px;font-weight:600;font-size:13px;cursor:pointer;display:inline-flex;align-items:center;gap:6px;transition:transform .1s,box-shadow .15s,filter .15s;white-space:nowrap;box-shadow:0 4px 14px rgba(124,92,255,.3)}.btn:hover:not(:disabled){filter:brightness(1.1);box-shadow:0 6px 20px rgba(124,92,255,.4)}.btn:active:not(:disabled){transform:translateY(1px)}.btn:disabled{opacity:.55;cursor:not-allowed}.btn svg{width:14px;height:14px}.btn.secondary{background:var(--panel-2);border:1px solid var(--border-strong);color:var(--text);box-shadow:none}.btn.secondary:hover:not(:disabled){background:#232934;filter:none;box-shadow:none}.btn.ghost{background:transparent;border:1px solid var(--border-strong);color:var(--muted);box-shadow:none}.btn.ghost:hover:not(:disabled){background:var(--panel-2);color:var(--text);filter:none;box-shadow:none}.btn.danger{background:rgba(255,93,108,.12);color:var(--danger);border:1px solid rgba(255,93,108,.3);box-shadow:none}.btn.danger:hover:not(:disabled){background:rgba(255,93,108,.2);filter:none;box-shadow:none}.btn.warn{background:rgba(255,180,84,.12);color:var(--warn);border:1px solid rgba(255,180,84,.3);box-shadow:none}.btn.warn:hover:not(:disabled){background:rgba(255,180,84,.2);filter:none;box-shadow:none}.btn.sm{padding:7px 11px;font-size:12px;border-radius:8px}.btn.icon-only{padding:7px;width:32px;height:32px;justify-content:center}.grid{display:grid;grid-gap:14px;gap:14px}.card{background:var(--panel);border:1px solid var(--border);border-radius:14px;padding:18px;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);transition:border-color .15s,transform .15s;position:relative;overflow:hidden}.card:before{content:"";position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,rgba(255,255,255,.08),transparent)}.card:hover{border-color:var(--border-strong)}.card-head{align-items:flex-start;justify-content:space-between;gap:12px}.card-head,.card-title{display:flex;flex-wrap:wrap}.card-title{align-items:center;gap:10px}.card-title-text{font-weight:600;font-size:15px;letter-spacing:-.1px}.card-title-id{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:11px;color:var(--muted);background:var(--panel-2);padding:2px 8px;border-radius:6px;border:1px solid var(--border)}.card-meta{margin-top:6px;display:flex;flex-wrap:wrap;align-items:center;gap:6px 10px;color:var(--muted);font-size:12.5px}.card-meta .sep{color:var(--muted-2)}.card-actions{display:flex;gap:6px;flex-shrink:0}.status{display:inline-flex;align-items:center;gap:6px;font-weight:500;font-size:12px}.dot{width:8px;height:8px;border-radius:50%;background:var(--muted-2);position:relative}.dot.ok{background:var(--accent-2);box-shadow:0 0 0 0 rgba(0,212,168,.6);animation:pulse-ok 2s ease-out infinite}.dot.warn{background:var(--warn);animation:pulse-warn 1.2s ease-in-out infinite}.dot.bad{background:var(--danger)}@keyframes pulse-ok{0%{box-shadow:0 0 0 0 rgba(0,212,168,.6)}70%{box-shadow:0 0 0 8px rgba(0,212,168,0)}to{box-shadow:0 0 0 0 rgba(0,212,168,0)}}@keyframes pulse-warn{0%,to{opacity:1}50%{opacity:.4}}.status.ok{color:var(--accent-2)}.status.warn{color:var(--warn)}.status.bad{color:var(--muted)}.kv{margin-top:14px;padding-top:14px;border-top:1px dashed var(--border);display:grid;grid-template-columns:76px 1fr;grid-gap:6px 14px;gap:6px 14px;font-size:12.5px}.kv dt{color:var(--muted);font-weight:500}.kv dd{margin:0;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;color:var(--text);word-break:break-all;display:flex;gap:6px}.copy-btn,.kv dd{align-items:center}.copy-btn{background:transparent;border:0;color:var(--muted-2);cursor:pointer;padding:2px;border-radius:4px;display:inline-flex;transition:color .15s}.copy-btn:hover{color:var(--accent)}.copy-btn svg{width:12px;height:12px}details{margin-top:12px}details summary{cursor:pointer;color:var(--muted);font-size:12px;-webkit-user-select:none;-moz-user-select:none;user-select:none;display:inline-flex;align-items:center;gap:6px;padding:5px 10px;border-radius:6px;transition:background .15s,color .15s;list-style:none}details summary::-webkit-details-marker{display:none}details summary svg{width:12px;height:12px;transition:transform .15s}details[open] summary svg{transform:rotate(90deg)}details summary:hover{background:var(--panel-2);color:var(--text)}details pre{margin:10px 0 0;background:#060709;border:1px solid var(--border);padding:12px;border-radius:10px;max-height:280px;overflow:auto;font-size:11.5px;white-space:pre-wrap;word-break:break-word;color:#c8cdd6;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;line-height:1.55}.empty{text-align:center;color:var(--muted);padding:56px 24px;border:1px dashed var(--border);border-radius:14px;background:var(--panel);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.empty .empty-icon{width:56px;height:56px;margin:0 auto 14px;border-radius:16px;background:var(--panel-2);display:grid;place-items:center;color:var(--muted)}.empty .empty-icon svg{width:26px;height:26px}.empty h3{margin:0 0 4px;color:var(--text);font-weight:600;font-size:15px}.empty p{margin:0;font-size:13px}.hint{font-size:12px;color:var(--muted)}.hint.error{color:var(--danger);display:inline-flex;align-items:center;gap:4px}@media (max-width:600px){.container{padding:20px 14px 60px}.brand h1{font-size:19px}.brand .sub{display:none}.logo{width:38px;height:38px}.card{padding:14px}.card-actions{width:100%;margin-top:8px}.card-actions .btn{flex:1 1;justify-content:center}.kv{grid-template-columns:64px 1fr;font-size:12px}.toolbar{gap:8px}.btn{padding:10px 14px}.header-stats{display:none}}@media (max-width:380px){.card-actions .btn span.label{display:none}}