:root{--font-body: "IBM Plex Sans", "Segoe UI", sans-serif;--font-mono: "Share Tech Mono", monospace;--bg: #e8eef6;--bg-elev: #f4f8fd;--ink: #1c2430;--muted: #5a6b80;--card: #f9fbff;--card-2: #e6edf6;--border: #b6c3d6;--accent: #2d6cdf;--accent-strong: #1f58c1;--tc-bar: linear-gradient(180deg, #d7ebff 0%, #b7d7ff 100%);--tc-bar-border: #9cbfe8;--tc-grid: #d2dbe8;--ok: #d7f5e3;--warn: #fff1c4;--danger: #ffd4da;--shadow: 0 10px 24px rgba(18, 32, 52, .12);--shadow-inset: inset 0 1px 0 rgba(255, 255, 255, .9), inset 0 -1px 0 rgba(140, 150, 170, .45);--grid: rgba(90, 110, 140, .12);--skeleton-base: rgba(70, 90, 120, .08);--skeleton-shine: rgba(70, 90, 120, .18)}:root[data-theme=matrix]{--font-body: "Share Tech Mono", monospace;--bg: #030806;--bg-elev: #07130f;--ink: #d7ffe2;--muted: #6ea98c;--card: #0a1511;--card-2: #0e1e18;--border: rgba(34, 255, 106, .25);--accent: #22ff6a;--accent-strong: #12c854;--tc-bar: linear-gradient(180deg, rgba(18, 44, 33, .9), rgba(8, 22, 17, .95));--tc-bar-border: rgba(34, 255, 106, .22);--tc-grid: rgba(34, 255, 106, .14);--ok: rgba(34, 255, 106, .15);--warn: rgba(255, 230, 110, .18);--danger: rgba(255, 80, 100, .18);--shadow: 0 12px 26px rgba(0, 0, 0, .65);--shadow-inset: inset 0 0 0 1px rgba(34, 255, 106, .18);--grid: rgba(34, 255, 106, .08);--skeleton-base: rgba(34, 255, 106, .08);--skeleton-shine: rgba(34, 255, 106, .18)}*{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--font-body);background:var(--bg);color:var(--ink);min-height:100vh;position:relative;letter-spacing:.1px}body:before{content:"";position:fixed;top:0;right:0;bottom:0;left:0;background-image:linear-gradient(90deg,var(--tc-grid) 1px,transparent 1px),linear-gradient(0deg,var(--tc-grid) 1px,transparent 1px),radial-gradient(circle at top left,rgba(255,255,255,.35),transparent 55%);background-size:64px 64px,64px 64px,100% 100%;opacity:.4;pointer-events:none;z-index:0}:root[data-theme=matrix] body:before{background-image:linear-gradient(90deg,var(--tc-grid) 1px,transparent 1px),linear-gradient(0deg,var(--tc-grid) 1px,transparent 1px),radial-gradient(circle at 20% 0%,rgba(34,255,106,.22),transparent 45%);background-size:46px 46px,46px 46px,100% 100%;opacity:.55}:root[data-theme=matrix] body:after{content:"";position:fixed;top:0;right:0;bottom:0;left:0;background:repeating-linear-gradient(0deg,#0000,#0000 6px,#00000059 7px);opacity:.35;pointer-events:none;z-index:0;animation:scan 9s linear infinite}.page{position:relative;z-index:1;max-width:1280px;margin:0 auto;padding:32px 20px 64px;display:flex;flex-direction:column;gap:24px}.hero{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:20px 22px;background:linear-gradient(135deg,#f7fbff,#e1eeff);border:1px solid var(--border);border-radius:16px;box-shadow:var(--shadow),var(--shadow-inset);position:relative}:root[data-theme=matrix] .hero{background:linear-gradient(135deg,#0a1a13e6,#06120df2)}.hero h1{font-size:36px;letter-spacing:-.6px}.hero p{color:var(--muted);margin-top:6px}.header-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap;justify-content:flex-end}.theme-toggle{display:inline-flex;padding:4px;border-radius:999px;border:1px solid var(--border);background:var(--card-2);box-shadow:var(--shadow-inset);gap:4px}.theme-toggle button{border:none;background:transparent;color:var(--muted);padding:6px 12px;border-radius:999px;font-size:12px;font-weight:600;cursor:pointer;text-transform:uppercase;letter-spacing:.4px;transition:color .2s ease,background .2s ease,box-shadow .2s ease}.theme-toggle button.active{background:var(--accent);color:var(--bg);box-shadow:0 6px 14px #2d6cdf40}:root[data-theme=matrix] .theme-toggle button.active{box-shadow:0 0 16px #22ff6a66}.ws{text-transform:uppercase;font-size:11px;padding:6px 12px;border-radius:999px;background:var(--card-2);color:var(--muted);border:1px solid var(--border);letter-spacing:.6px}.ws.connected{background:var(--accent);color:var(--bg);border-color:transparent;box-shadow:0 6px 16px #2d6cdf40;animation:pulse 2.8s ease-in-out infinite}.ws.connecting{background:#f6c453;color:#2e1f04;border-color:transparent}.ws.disconnected{background:#f28b9c;color:#2b0e15;border-color:transparent}.grid{display:grid;gap:18px;grid-template-columns:repeat(auto-fit,minmax(320px,1fr))}.stack{display:flex;flex-direction:column;gap:18px}.card{background:var(--card);border-radius:18px;padding:20px;box-shadow:var(--shadow),var(--shadow-inset);border:1px solid var(--border);animation:lift .4s ease both;position:relative;overflow:hidden}.card.loading{position:relative;overflow:hidden}.skeleton-list{display:flex;flex-direction:column;gap:10px}.skeleton-line{height:14px;border-radius:999px;background:linear-gradient(90deg,var(--skeleton-base) 25%,var(--skeleton-shine) 50%,var(--skeleton-base) 75%);background-size:200% 100%;animation:shimmer 1.3s ease infinite}@keyframes shimmer{0%{background-position:0% 0%}to{background-position:-200% 0%}}@keyframes lift{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes pulse{0%,to{box-shadow:0 0 #0000}50%{box-shadow:0 0 22px #2d6cdf59}}:root[data-theme=matrix] .ws.connected{box-shadow:0 0 16px #22ff6a59;animation:matrixPulse 2.8s ease-in-out infinite}@keyframes matrixPulse{0%,to{box-shadow:0 0 #0000}50%{box-shadow:0 0 22px #22ff6a73}}@keyframes scan{0%{transform:translateY(0)}to{transform:translateY(12px)}}.card h2{font-size:15px;margin:-20px -20px 14px;padding:10px 16px;background:var(--tc-bar);border-bottom:1px solid var(--tc-bar-border);text-transform:uppercase;letter-spacing:.6px;color:#123b6f}:root[data-theme=matrix] .card h2{color:var(--accent);text-shadow:0 0 10px rgba(34,255,106,.35)}.auth form{display:flex;gap:10px;margin-top:12px}.auth input{flex:1;padding:10px 12px;border-radius:10px;border:1px solid var(--border);font-family:inherit;background:var(--bg-elev);color:var(--ink);box-shadow:var(--shadow-inset)}button,input,select,textarea{font-family:inherit}button{transition:transform .15s ease,box-shadow .2s ease,background .2s ease}button:active{transform:translateY(1px)}.auth button{padding:10px 16px;border-radius:10px;border:none;background:var(--accent);color:var(--bg);cursor:pointer;font-weight:600}.auth button:hover{background:var(--accent-strong)}.error{color:#c62828;margin-top:10px}.form{display:flex;flex-direction:column;gap:10px}.form select,.form textarea,.form input{padding:10px 12px;border-radius:10px;border:1px solid var(--border);background:var(--bg-elev);color:var(--ink);box-shadow:var(--shadow-inset)}.form select option{background:var(--card);color:var(--ink)}.form textarea{min-height:90px;resize:vertical}.form button{align-self:flex-start;padding:10px 16px;border-radius:10px;border:none;background:var(--accent);color:var(--bg);cursor:pointer;font-weight:600}.form button:disabled{opacity:.6;cursor:not-allowed}.row-form{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));align-items:center}.row-form button{align-self:center}.form .ghost{background:transparent;color:var(--accent-strong);border:1px solid var(--accent-strong)}.ghost{background:transparent;color:var(--accent-strong);border:1px solid var(--accent-strong);padding:8px 12px;border-radius:10px;cursor:pointer}.link-btn{text-decoration:none;display:inline-flex;align-items:center;justify-content:center;line-height:1}.copy-btn{margin-left:8px;padding:4px 8px;border-radius:8px;border:1px solid var(--border);background:var(--card-2);color:var(--ink);cursor:pointer;font-size:12px}.copy-btn:hover{background:var(--card)}.copyable{cursor:pointer;border-bottom:1px dashed var(--muted);padding:2px 4px;border-radius:6px;display:inline-block;white-space:nowrap;background:#00000026}.copyable:hover{color:var(--accent-strong);background:#0000004d}.copyable:active{transform:translateY(1px)}.check{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--muted)}.keylist-empty{margin-top:12px}.provider-list{display:flex;flex-direction:column;gap:12px}.provider-row{display:grid;grid-template-columns:1fr 180px;gap:12px;align-items:center;padding:10px 12px;border-radius:12px;background:var(--bg-elev);border:1px solid var(--border);box-shadow:var(--shadow-inset)}.provider-row select{padding:8px 10px;border-radius:10px;border:1px solid var(--border);background:var(--card);color:var(--ink)}.provider-row select option{background:var(--card);color:var(--ink)}.actions{display:flex;gap:8px}.actions button{padding:6px 10px;border-radius:8px;border:none;background:var(--accent);color:var(--bg);cursor:pointer;font-size:12px;font-weight:600}.actions button.ghost{background:transparent;color:var(--accent-strong);border:1px solid var(--accent-strong)}.bulk-actions{display:flex;align-items:center;gap:10px;margin-bottom:10px;flex-wrap:wrap}.bulk-actions button{padding:6px 10px;border-radius:8px;border:none;background:var(--accent);color:var(--bg);cursor:pointer;font-size:12px;font-weight:600}.bulk-actions button.ghost{background:transparent;color:var(--accent-strong);border:1px solid var(--accent-strong)}.bulk-actions button:disabled{opacity:.5;cursor:not-allowed}.progress{height:6px;width:140px;background:var(--card-2);border-radius:999px;overflow:hidden;border:1px solid var(--border)}.progress-bar{height:100%;background:var(--accent);border-radius:999px;transition:width .2s ease}.row-busy{opacity:.6}.spinner{display:inline-block;width:12px;height:12px;border-radius:50%;border:2px solid rgba(255,255,255,.5);border-top-color:#fff;animation:spin .8s linear infinite}.actions .ghost .spinner{border:2px solid rgba(26,74,79,.4);border-top-color:var(--accent)}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.toast{background:var(--card);border:1px solid var(--border);padding:10px 14px;border-radius:10px;font-size:14px;box-shadow:var(--shadow)}.toast-top{position:fixed;top:18px;right:18px;z-index:999;transition:opacity .25s ease,transform .25s ease}.toast-show{transform:translateY(0);opacity:1}.toast-hide{transform:translateY(-8px);opacity:0}.alert-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#05080c99;display:flex;align-items:center;justify-content:center;z-index:1000;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.alert-modal{background:var(--card);border:1px solid var(--border);border-radius:16px;padding:20px 22px;width:min(520px,92vw);box-shadow:var(--shadow)}.alert-title{font-size:18px;margin-bottom:10px}.alert-list{display:flex;flex-direction:column;gap:6px;color:var(--muted);margin-bottom:16px}.alert-close{padding:10px 16px;border-radius:10px;border:none;background:var(--accent);color:var(--bg);cursor:pointer;font-weight:600}.muted{color:var(--muted)}.list{display:flex;flex-direction:column;gap:12px}.row{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:10px 12px;border-radius:12px;background:var(--bg-elev);border:1px solid var(--border);box-shadow:var(--shadow-inset)}.clickable-row{cursor:pointer}.clickable-row:hover{background:var(--card-2)}.public-row{display:grid;grid-template-columns:220px 1fr;align-items:start;column-gap:16px}.public-value{flex:1;display:inline-flex;justify-content:flex-start;align-items:center;text-align:left;gap:8px;overflow-wrap:anywhere}.public-row .muted{white-space:nowrap}.row-keys{display:grid;grid-template-columns:1fr 180px auto}.row-select{padding:6px 10px;border-radius:10px;border:1px solid var(--border);background:var(--card);color:var(--ink);width:180px}.row-select option{background:var(--card);color:var(--ink)}.row-actions{display:grid;grid-auto-flow:column;grid-template-columns:28px 56px;align-items:center;column-gap:8px;margin-left:auto}.row-keys .row-actions{margin-left:0;justify-self:end}.icon-btn{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:8px;border:1px solid var(--border);background:var(--card-2);color:var(--ink);font-weight:700;cursor:pointer}.icon-btn:hover{background:var(--card)}.icon-btn:disabled{opacity:.6;cursor:not-allowed}.pill{padding:4px 10px;min-width:56px;text-align:center;border-radius:999px;font-size:13px;background:var(--ok);color:var(--ink)}.pill.warn{background:var(--warn)}.pill.danger{background:var(--danger)}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000073;display:flex;align-items:center;justify-content:center;z-index:40}.modal{width:min(640px,92vw);background:var(--card);border:1px solid var(--border);border-radius:16px;padding:16px;box-shadow:0 24px 60px #0003}.modal-lg{width:min(1100px,96vw)}.modal-header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}.modal h3{margin:0;font-size:16px}table{width:100%;border-collapse:collapse;font-size:14px}table a{color:var(--accent-strong);text-decoration:none}table a:hover{text-decoration:underline}th,td{padding:8px 10px;border-bottom:1px solid var(--border);text-align:left}thead th{font-size:12px;text-transform:uppercase;color:#123b6f;letter-spacing:.4px;background:var(--tc-bar);border-bottom:1px solid var(--tc-bar-border)}:root[data-theme=matrix] thead th{color:var(--accent)}tbody tr:hover{background:var(--card-2)}:root[data-theme=matrix] tbody tr:hover{background:#22ff6a14}.table-wrap{max-height:280px;overflow:auto;border-radius:12px;border:1px solid var(--border);background:#fdfefe}:root[data-theme=matrix] .table-wrap{background:#06100cf2;border-color:#22ff6a38}:root[data-theme=matrix] table{color:var(--ink)}:root[data-theme=matrix] table a{color:var(--accent)}:root[data-theme=matrix] th,:root[data-theme=matrix] td{border-bottom:1px solid rgba(34,255,106,.18)}:root[data-theme=matrix] tbody tr:nth-child(2n){background:#22ff6a0a}input[type=checkbox]{accent-color:var(--accent)}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}@media(max-width:900px){.hero{flex-direction:column;align-items:flex-start}.header-actions{width:100%;justify-content:flex-start}}@media(max-width:720px){.hero h1{font-size:30px}}
