:root{--bg-main:#09090b;--bg-card:#18181b99;--bg-card-hover:#27272acc;--border-color:#ffffff1a;--text-main:#fafafa;--text-muted:#a1a1aa;--primary:#8b5cf6;--primary-hover:#7c3aed;--success:#10b981;--danger:#ef4444;--warning:#f59e0b;--font-sans:"Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;--radius:8px}*{box-sizing:border-box;margin:0;padding:0}body{background-color:var(--bg-main);color:var(--text-main);font-family:var(--font-sans);-webkit-font-smoothing:antialiased;background-image:radial-gradient(at 0 0,#8b5cf626 0,#0000 50%),radial-gradient(at 100% 100%,#10b9811a 0,#0000 50%);background-attachment:fixed;min-height:100vh}.glass{background:var(--bg-card);-webkit-backdrop-filter:blur(12px);border:1px solid var(--border-color);border-radius:16px}.glass-panel{box-shadow:0 8px 32px #0000004d}.container{max-width:1200px;margin:0 auto;padding:2rem}.header{align-items:center;gap:1rem;margin-bottom:2rem;display:flex}.header h1{letter-spacing:-.025em;background:linear-gradient(90deg,#fff,#a1a1aa);-webkit-text-fill-color:transparent;-webkit-background-clip:text;font-size:2rem;font-weight:700}.filters{flex-wrap:wrap;gap:1rem;margin-bottom:2rem;display:flex}.filter-input{border:1px solid var(--border-color);color:var(--text-main);font-family:var(--font-sans);background:#0003;border-radius:8px;outline:none;min-width:200px;padding:.75rem 1rem;font-size:.9rem;transition:all .2s}.filter-input:focus{border-color:var(--primary);box-shadow:0 0 0 2px #8b5cf633}.table-container{border-radius:12px;overflow-x:auto}table{border-collapse:collapse;text-align:left;width:100%}th{text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);border-bottom:1px solid var(--border-color);background:#0003;padding:1rem;font-size:.85rem}td{border-bottom:1px solid #ffffff0d;padding:1rem;transition:background .2s}tbody tr:hover td{background:#ffffff08}tbody tr:last-child td{border-bottom:none}.badge{letter-spacing:.025em;border-radius:9999px;align-items:center;padding:.25rem .75rem;font-size:.75rem;font-weight:600;display:inline-flex}.badge-success{color:#6ee7b7;background:#10b98140;border:1px solid #10b98166}.badge-danger{color:#fca5a5;background:#ef444440;border:1px solid #ef444466}.badge-warning{color:#fcd34d;background:#f59e0b40;border:1px solid #f59e0b66}.badge-neutral{color:#e4e4e7;background:#a1a1aa40;border:1px solid #a1a1aa66}.text-truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.loader-container{height:50vh;color:var(--text-muted);flex-direction:column;justify-content:center;align-items:center;gap:1rem;display:flex}.spinner{border:3px solid #8b5cf633;border-top-color:var(--primary);border-radius:50%;width:40px;height:40px;animation:1s ease-in-out infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.spin{animation:1s linear infinite spin}.stat-card{border-radius:var(--radius);background:#ffffff0d;border:1px solid #ffffff14;flex-direction:column;gap:.25rem;padding:.75rem 1rem;display:flex}.stat-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;font-size:.8rem}.stat-value{font-size:1.5rem;font-weight:700}.modal-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:1000;background:#000000b3;justify-content:center;align-items:center;animation:.2s ease-out fadeIn;display:flex;position:fixed;inset:0}.modal-content{width:90%;max-width:480px;max-height:80vh;padding:1.5rem;animation:.2s ease-out fadeIn,.2s ease-out slideUp;overflow-y:auto}.modal-header{justify-content:space-between;align-items:center;margin-bottom:1.5rem;display:flex}.modal-header h3{color:var(--text-main);font-size:1.1rem;font-weight:600}.modal-close{color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:6px;padding:.25rem;transition:all .2s;display:flex}.modal-close:hover{color:var(--text-main);background:#ffffff1a}.modal-body{flex-direction:column;gap:1.25rem;display:flex}.modal-section{flex-direction:column;gap:.25rem;display:flex}.modal-label{text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);font-size:.75rem;font-weight:600}.modal-value{color:var(--text-main);align-items:center;gap:.5rem;font-size:1rem;font-weight:500;display:flex}.modal-meta{color:var(--text-muted);font-size:.85rem}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.tabs{border-radius:12px;overflow:hidden}.tabs button:hover{color:var(--text-main);background:#ffffff0d}.fade-in{animation:.4s ease-out fadeIn}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@media (width<=768px){.container{padding:1rem}.tabs{flex-wrap:wrap}.tabs button{flex:auto;padding:.6rem .5rem;font-size:.78rem}header.header{flex-direction:column;align-items:flex-start;gap:.5rem}header.header div:last-child{margin-left:0}}@media (width<=480px){.container{padding:.5rem}.tabs button{padding:.4rem .3rem;font-size:.7rem}.glass-panel{padding:.75rem}h1{font-size:1.2rem}h3{font-size:1rem}.filter-input{font-size:.78rem}.badge{padding:.15rem .45rem;font-size:.65rem}}.action-menu{display:inline-block;position:relative}.action-menu-trigger{border:1px solid var(--border-color);width:32px;height:32px;color:var(--text-muted);cursor:pointer;background:#ffffff0d;border-radius:8px;justify-content:center;align-items:center;transition:all .2s;display:inline-flex}.action-menu-trigger:hover{color:var(--primary);background:#8b5cf626;border-color:#8b5cf64d}.action-menu-dropdown{z-index:50;border:1px solid var(--border-color);background:#18181b;border-radius:12px;min-width:180px;padding:.35rem;animation:.15s ease-out fadeIn;position:absolute;top:calc(100% + 4px);box-shadow:0 12px 40px #00000080}.action-menu-dropdown-left{right:0}.action-menu-dropdown-right{left:0}.action-menu-item{width:100%;color:var(--text-main);cursor:pointer;text-align:left;background:0 0;border:none;border-radius:8px;align-items:center;gap:.5rem;padding:.5rem .75rem;font-size:.8rem;font-weight:500;transition:all .15s;display:flex}.action-menu-item:hover:not(:disabled){color:var(--primary);background:#8b5cf61f}.action-menu-item:disabled{opacity:.5;cursor:not-allowed}.log-stream{background:var(--bg-card);-webkit-backdrop-filter:blur(12px);border:1px solid var(--border-color);border-radius:12px;margin-bottom:2rem;transition:all .3s;animation:.3s ease-out fadeIn;overflow:hidden;box-shadow:0 8px 32px #0000004d}.log-stream-maximized{z-index:999;position:fixed;inset:2rem;max-height:none!important}.log-stream-header{border-bottom:1px solid var(--border-color);background:#0000004d;justify-content:space-between;align-items:center;padding:.65rem 1rem;display:flex}.log-stream-header-left{color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;align-items:center;gap:.5rem;font-size:.8rem;font-weight:600;display:flex}.log-stream-header-left svg{color:var(--primary)}.log-stream-dot{background:#22c55e;border-radius:50%;width:7px;height:7px;animation:1.5s ease-in-out infinite pulse-dot}@keyframes pulse-dot{0%,to{opacity:1;box-shadow:0 0 #22c55e99}50%{opacity:.6;box-shadow:0 0 0 6px #22c55e00}}@keyframes skeleton-pulse{0%,to{opacity:.4}50%{opacity:.8}}.skeleton-row{border-bottom:1px solid var(--border);align-items:center;gap:.75rem;padding:.75rem;display:flex}.skeleton-cell{background:var(--text-muted);opacity:.3;border-radius:4px;height:14px;animation:1.2s ease-in-out infinite skeleton-pulse}.log-stream-count{color:var(--text-muted);background:#ffffff0f;border-radius:999px;padding:.15rem .5rem;font-size:.65rem;font-weight:400}.log-stream-header-right{align-items:center;gap:.25rem;display:flex}.log-stream-btn{width:28px;height:28px;color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:6px;justify-content:center;align-items:center;transition:all .2s;display:inline-flex}.log-stream-btn:hover{color:var(--text-main);background:#ffffff1a}.log-stream-body{max-height:350px;padding:.5rem 0;font-family:SF Mono,Fira Code,JetBrains Mono,Cascadia Code,monospace;font-size:.78rem;line-height:1.6;overflow-y:auto}.log-stream-maximized .log-stream-body{max-height:calc(100vh - 9rem)}.log-stream-body::-webkit-scrollbar{width:5px}.log-stream-body::-webkit-scrollbar-track{background:0 0}.log-stream-body::-webkit-scrollbar-thumb{background:#ffffff1a;border-radius:99px}.log-stream-body::-webkit-scrollbar-thumb:hover{background:#fff3}.log-line{align-items:flex-start;gap:.4rem;padding:.1rem 1rem;transition:background .2s;animation:.3s ease-out fadeIn;display:flex}.log-line:hover{background:#ffffff08}.log-ts{color:#a1a1aa80;white-space:nowrap;flex-shrink:0;align-items:center;gap:.2rem;min-width:5.5rem;font-size:.68rem;display:inline-flex}.log-level-dot{border-radius:50%;flex-shrink:0;width:6px;height:6px;margin-top:.35rem}.log-msg{color:var(--text-muted);word-break:break-word}.log-error .log-msg{color:#f87171}.log-success .log-msg{color:#34d399}.log-warning .log-msg{color:#fbbf24}.log-info .log-msg{color:#60a5fa}.cmds-compact{flex-wrap:wrap;gap:.25rem;display:flex}.cmd-btn{border:1px solid var(--border-color);cursor:pointer;color:var(--text-muted);background:#ffffff0a;border-radius:8px;align-items:center;gap:.3rem;padding:.3rem .55rem;font-size:.7rem;font-weight:600;transition:all .2s;display:inline-flex}.cmd-btn:hover:not(:disabled){color:var(--text-main);background:#ffffff14}.cmd-btn:disabled{opacity:.5;cursor:not-allowed}.cmd-btn-primary{color:var(--primary);background:#8b5cf614;border-color:#8b5cf640}.cmd-btn-primary:hover:not(:disabled){background:#8b5cf62e;border-color:#8b5cf666}.cmd-btn-danger{color:#f87171;background:#ef444414;border-color:#ef444440}.cmd-btn-danger:hover:not(:disabled){background:#ef44442e;border-color:#ef444466}.cmd-btn-success{color:#34d399;background:#10b98114;border-color:#10b98140}.cmd-btn-success:hover:not(:disabled){background:#10b9812e;border-color:#10b98166}.cmd-btn-warning{color:#fbbf24;background:#f59e0b14;border-color:#f59e0b40}.cmd-btn-warning:hover:not(:disabled){background:#f59e0b2e;border-color:#f59e0b66}.cmd-btn-solid-danger{color:#fff;background:#dc2626;border-color:#dc2626}.cmd-btn-solid-danger:hover:not(:disabled){background:#b91c1c;border-color:#b91c1c}.cmd-btn-solid-danger:disabled{opacity:.4}.cmd-btn-neutral{color:var(--text-muted);background:#a1a1aa14;border-color:#a1a1aa40}.cmd-btn-neutral:hover:not(:disabled){background:#a1a1aa2e;border-color:#a1a1aa66}.cmd-btn svg{flex-shrink:0}.cmd-btn-no-border{background:#ffffff0d;border:none}.cmd-btn-no-border:hover:not(:disabled){background:#ffffff1a}.cmds-section-header{color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:.4rem;padding:.6rem 1rem;font-size:.8rem;font-weight:600;transition:background .2s;display:flex}.cmds-section-header:hover{background:#ffffff0a}.cmds-section-header svg:last-child{color:var(--text-muted);margin-left:auto}.cmds-bottom-panels{flex:1;grid-template-columns:1fr 1fr;gap:.75rem;min-height:0;display:grid}@media (width<=768px){.cmds-bottom-panels{grid-template-columns:1fr}}.cmds-panel-header{color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;border-bottom:1px solid var(--border-color);background:#00000026;flex-shrink:0;align-items:center;gap:.35rem;padding:.65rem .85rem;font-size:.78rem;font-weight:600;display:flex}.cmds-panel-body{flex:1;padding:.35rem 0;font-family:SF Mono,Fira Code,JetBrains Mono,Cascadia Code,monospace;font-size:.78rem;line-height:1.5;overflow-y:auto}.cmds-panel-body::-webkit-scrollbar{width:4px}.cmds-panel-body::-webkit-scrollbar-track{background:0 0}.cmds-panel-body::-webkit-scrollbar-thumb{background:#ffffff14;border-radius:99px}.cmds-empty{color:var(--text-muted);text-align:center;padding:2rem 0;font-size:.82rem}.cmds-log-line{border-bottom:1px solid #ffffff0a;padding:.2rem .75rem;animation:.3s ease-out fadeIn}.cmds-log-line:hover{background:#ffffff05}.cmds-log-time{color:#a1a1aa80;white-space:nowrap;align-items:center;gap:.2rem;margin-right:.4rem;font-size:.68rem;display:inline-flex}.cmds-log-text{color:var(--text-muted);word-break:break-word}.cmds-log-position{color:var(--text-muted)}.cmds-log-event{color:var(--warning)}.cmds-log-command{color:var(--primary)}.cmds-cmd-sent{color:var(--text-muted);word-break:break-all;overflow-wrap:anywhere;flex-wrap:wrap;align-items:flex-start;gap:.35rem;font-size:.78rem;display:flex}.cmds-cmd-done{color:var(--success);word-break:break-all;overflow-wrap:anywhere;flex-wrap:wrap;align-items:flex-start;gap:.35rem;font-size:.78rem;display:flex}.cmds-cmd-error{color:#f87171;word-break:break-all;overflow-wrap:anywhere;flex-wrap:wrap;align-items:flex-start;gap:.35rem;font-size:.78rem;display:flex}.cmds-cmd-timeout{color:var(--warning);word-break:break-all;overflow-wrap:anywhere;flex-wrap:wrap;align-items:flex-start;gap:.35rem;font-size:.78rem;display:flex}.cmds-badge-structured{color:var(--primary);white-space:nowrap;background:#8b5cf61f;border-radius:99px;flex-shrink:0;margin-left:auto;padding:.05rem .35rem;font-size:.6rem}.cmds-response{color:var(--success);word-break:break-all;overflow-wrap:anywhere;flex-wrap:wrap;gap:.3rem;margin-top:.1rem;padding-left:1.2rem;font-size:.75rem;display:flex}.cmds-response span{color:#a1a1aa99;flex-shrink:0}.config-section-badge{letter-spacing:.05em;color:var(--text-muted);border:1px solid var(--border-color);background:#ffffff0f;border-radius:999px;margin-left:.35rem;padding:.1rem .45rem;font-family:monospace;font-size:.62rem;font-weight:600}.config-fields-grid{grid-template-columns:1fr 1fr;gap:.5rem;padding:.75rem 1rem;display:grid}@media (width<=480px){.config-fields-grid{grid-template-columns:1fr}}.config-field{padding:.4rem 0}.config-field-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;margin-bottom:.15rem;font-size:.68rem}.config-field-value{color:var(--text-main);font-size:.82rem;font-weight:500}.config-value{font-family:monospace;font-size:.82rem}.read-state-bar{padding:.5rem .75rem;animation:.4s ease-out fadeIn}.match-card{border-radius:var(--radius);background:var(--bg-card);border:1px solid #ffffff0f;border-left:2px solid var(--warning);cursor:pointer;outline:none;flex-direction:column;gap:.2rem;padding:.5rem .6rem;transition:all .15s;display:flex}.match-card:hover:not(.match-card--linked):not(.match-card--disabled){border-color:#8b5cf64d;border-left-color:var(--primary);background:#8b5cf614;transform:translateY(-1px);box-shadow:0 4px 16px #8b5cf61f}.match-card:focus-visible{box-shadow:0 0 0 2px var(--primary)}.match-card--linked{border-left-color:var(--success);cursor:default;background:#10b9810d}.match-card--disabled{opacity:.5;cursor:not-allowed}.match-card-header{justify-content:space-between;align-items:center;gap:.4rem;display:flex}.match-card-action-hint{color:var(--primary);letter-spacing:.04em;text-transform:uppercase;opacity:0;align-items:center;gap:.2rem;font-size:.65rem;font-weight:600;transition:opacity .15s;display:flex}.match-card:hover .match-card-action-hint{opacity:1}.login-page{justify-content:center;align-items:center;min-height:100vh;padding:1.5rem;display:flex}.login-card{flex-direction:column;gap:1.25rem;width:100%;max-width:380px;padding:2.5rem 2rem;animation:.4s ease-out fadeIn,.4s ease-out slideUp;display:flex}.login-header{text-align:center;flex-direction:column;align-items:center;gap:.75rem;display:flex}.login-icon{width:56px;height:56px;color:var(--primary);background:#8b5cf626;border:1px solid #8b5cf64d;border-radius:16px;justify-content:center;align-items:center;display:flex}.login-header h1{letter-spacing:-.025em;font-size:1.4rem;font-weight:700}.login-subtitle{color:var(--text-muted);font-size:.85rem}.login-error{color:#f87171;background:#ef44441f;border:1px solid #ef44444d;border-radius:8px;align-items:center;gap:.5rem;padding:.6rem .85rem;font-size:.82rem;display:flex}.login-field{flex-direction:column;gap:.4rem;display:flex}.login-field label{text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);font-size:.75rem;font-weight:600}.login-input-wrap{border:1px solid var(--border-color);background:#0003;border-radius:8px;align-items:center;gap:.5rem;padding:0 .85rem;transition:all .2s;display:flex}.login-input-wrap:focus-within{border-color:var(--primary);box-shadow:0 0 0 2px #8b5cf633}.login-input-wrap svg{color:var(--text-muted);flex-shrink:0}.login-input-wrap .filter-input{box-shadow:none;background:0 0;border:none;flex:1;padding:.75rem 0}.login-submit{justify-content:center;padding:.7rem;font-size:.85rem}.logout-btn{color:var(--text-muted);cursor:pointer;white-space:nowrap;background:0 0;border:none;border-bottom:2px solid #0000;align-items:center;gap:.4rem;padding:.85rem 1.25rem;font-size:.85rem;font-weight:500;transition:all .2s;display:inline-flex}.logout-btn:hover{color:#f87171;background:#ef444414;border-bottom-color:#ef444466}
