@import url("https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&display=swap");:root{--bg:#0a0a0f;--surface:#111118;--surface-2:#1a1a24;--surface-3:#22222f;--border:#1e1e2e;--border-hover:#2e2e42;--text:#e8e8ef;--text-muted:#8888a0;--text-faint:#55556a;--accent:#00d4aa;--accent-dim:#00d4aa15;--accent-hover:#0eb;--warning:#fa3;--error:#f46;--success:#0c7;--blue:#48f;--purple:#a6f;--shadow:rgba(0,0,0,.3);--overlay:hsla(0,0%,100%,.03);--overlay-2:hsla(0,0%,100%,.05);--sidebar-w:260px;color-scheme:dark}:root[data-theme=light]{--bg:#f5f7fa;--surface:#fff;--surface-2:#eef1f5;--surface-3:#e2e7ee;--border:#e3e7ee;--border-hover:#cfd6e0;--text:#171a21;--text-muted:#5a6472;--text-faint:#98a1b0;--accent:#00b894;--accent-dim:#00b8941a;--accent-hover:#009e80;--warning:#b5730a;--error:#d92d4a;--success:#0a9a5c;--blue:#2563eb;--purple:#7c3aed;--shadow:rgba(23,36,66,.1);--overlay:rgba(23,36,66,.03);--overlay-2:rgba(23,36,66,.05);color-scheme:light}*{box-sizing:border-box;margin:0;padding:0}body{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;background:var(--bg);color:var(--text);line-height:1.6;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;transition:background .25s ease,color .25s ease}::selection{background:var(--accent);color:#fff}a{color:var(--accent);text-decoration:none;transition:color .15s}a:hover{color:var(--accent-hover)}.card{background:var(--surface);border:1px solid var(--border);border-radius:14px;padding:22px;transition:border-color .2s,box-shadow .2s,transform .2s,background .25s ease}.card:hover{border-color:var(--border-hover);box-shadow:0 4px 24px var(--shadow);transform:translateY(-1px)}.btn{display:inline-flex;align-items:center;gap:8px;padding:10px 20px;border-radius:8px;border:none;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s cubic-bezier(.16,1,.3,1);font-family:inherit}.btn-primary{background:var(--accent);color:#003b30}.btn-primary:hover{background:var(--accent-hover);box-shadow:0 0 20px var(--accent-dim)}.btn-primary:active{transform:scale(.97)}.btn-primary:disabled{opacity:.5;cursor:not-allowed;box-shadow:none}.btn-secondary{background:var(--surface-2);color:var(--text);border:1px solid var(--border)}.btn-secondary:hover{background:var(--surface-3);border-color:var(--border-hover)}.btn-secondary:active{transform:scale(.97)}.input{width:100%;padding:10px 14px;background:var(--surface-2);border:1px solid var(--border);border-radius:8px;color:var(--text);font-size:14px;font-family:inherit;outline:none;transition:border-color .2s,box-shadow .2s,background .25s ease}.input:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-dim)}.input::placeholder{color:var(--text-faint)}.input-label{display:block;font-size:12px;color:var(--text-muted);margin-bottom:6px;font-weight:500;letter-spacing:.02em}textarea.input{resize:vertical;min-height:80px}select.input{cursor:pointer}.badge{display:inline-flex;align-items:center;padding:3px 10px;border-radius:20px;font-size:11px;font-weight:600;letter-spacing:.03em}.badge-green{background:#00cc7718;color:var(--success)}.badge-blue{background:#4488ff18;color:var(--blue)}.badge-yellow{background:#ffaa3320;color:var(--warning)}.badge-red{background:#ff446618;color:var(--error)}.badge-purple{background:#aa66ff1e;color:var(--purple)}.spinner{width:18px;height:18px;border:2px solid var(--border);border-top-color:var(--accent);border-radius:50%;animation:spin .6s linear infinite}@keyframes spin{to{transform:rotate(1turn)}}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.fade-in{animation:fadeIn .35s cubic-bezier(.16,1,.3,1)}.grid-3{grid-template-columns:repeat(3,1fr);grid-gap:16px}.grid-2,.grid-3{display:grid;gap:16px}.grid-2{grid-template-columns:repeat(2,1fr);grid-gap:16px}@media (max-width:1100px){.grid-3{grid-template-columns:repeat(2,1fr)}}@media (max-width:900px){.grid-2,.grid-3{grid-template-columns:1fr}}.section-title{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.08em;color:var(--text-faint);margin-bottom:14px}pre.json-output{background:var(--surface-2);border:1px solid var(--border);border-radius:10px;padding:16px;font-size:13px;overflow-x:auto;white-space:pre-wrap;color:var(--accent);font-family:JetBrains Mono,SF Mono,Fira Code,monospace;max-height:400px;overflow-y:auto}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--border);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:var(--border-hover)}table tr{transition:background .15s}table tbody tr:hover{background:var(--accent-dim)}.theme-toggle{position:fixed;bottom:20px;right:20px;z-index:999;width:44px;height:44px;border-radius:50%;border:1px solid var(--border);background:var(--surface);color:var(--text);box-shadow:0 4px 18px var(--shadow);cursor:pointer;font-size:19px;line-height:1;display:flex;align-items:center;justify-content:center;transition:transform .15s ease,background .25s ease,border-color .2s}.theme-toggle:hover{transform:translateY(-2px) scale(1.05);border-color:var(--border-hover)}.theme-toggle:active{transform:scale(.94)}