@import"https://fonts.googleapis.com/css2?family=Outfit:wght@300;400;600;700&display=swap";:root{--bg-dark: #0f0f13;--panel-bg: rgba(30, 30, 35, .6);--primary: #00d2ff;--primary-glow: rgba(0, 210, 255, .4);--error: #ff4d4d;--text-main: #ffffff;--text-dim: #a0a0b0;--transition: all .3s ease}body{margin:0;font-family:Outfit,sans-serif;background-color:var(--bg-dark);background-image:radial-gradient(circle at 10% 20%,rgba(0,210,255,.1) 0%,transparent 20%),radial-gradient(circle at 90% 80%,rgba(255,0,150,.1) 0%,transparent 20%);color:var(--text-main);min-height:100vh}.app-container{max-width:1200px;margin:0 auto;padding:20px}.header{display:flex;justify-content:space-between;align-items:center;margin-bottom:40px;padding:20px 0;border-bottom:1px solid rgba(255,255,255,.05)}.header-right{display:flex;align-items:center;gap:16px}.logout-btn{padding:8px 16px;border-radius:10px;border:1px solid rgba(255,255,255,.2);background:#ffffff0f;color:var(--text-dim);font-size:.9rem;font-weight:500;cursor:pointer;transition:var(--transition)}.logout-btn:hover{background:#ffffff1a;color:var(--text-main);border-color:var(--primary)}h1{font-size:2rem;margin:0;background:linear-gradient(to right,#fff,#aaa);-webkit-background-clip:text;-webkit-text-fill-color:transparent}.subtitle{font-size:1rem;color:var(--primary);margin-left:10px;font-weight:300;opacity:.8}.status-badge{padding:8px 16px;border-radius:20px;font-size:.85rem;font-weight:600;text-transform:uppercase;letter-spacing:1px}.connected{background:#00ff8026;color:#00ff80;box-shadow:0 0 10px #00ff8033}.connected-warn{background:#ffd7002e;color:gold;box-shadow:0 0 10px #ffd70040}.disconnected{background:#ff4d4d26;color:#ff4d4d}.nav-panel{display:flex;gap:4px;margin-bottom:24px;padding:4px;background:#0003;border-radius:14px;width:fit-content}.nav-tab{padding:10px 20px;border:none;border-radius:10px;background:transparent;color:var(--text-dim);font-size:.95rem;font-weight:500;cursor:pointer;transition:var(--transition)}.nav-tab:hover{color:var(--text-main);background:#ffffff0f}.nav-tab.active{background:var(--panel-bg);color:var(--primary);box-shadow:0 2px 8px #0003}.dashboard{display:grid;grid-template-columns:1fr 1fr;grid-template-rows:auto auto;gap:30px;align-items:start}.dashboard-dash-hidden{display:none!important}.dashboard>.dashboard-dash{grid-column:1 / -1;min-width:0}.dashboard .dashboard-start-error{grid-column:1 / -1}.dashboard>.dashboard-graphs{grid-column:1 / -1;min-width:0}.dashboard-graphs-hidden{display:none!important}.dashboard>.dashboard-runners{grid-column:1 / -1;min-width:0}.dashboard-runners-hidden{display:none!important}.dashboard>.dashboard-scripts{grid-column:1 / -1;min-width:0}.dashboard-scripts-hidden{display:none!important}.dashboard-config-row,main.dashboard .dashboard-dash .dashboard-config-row{display:flex;flex-direction:row;gap:30px;align-items:stretch;width:100%;min-width:0;box-sizing:border-box}.dashboard-config-row .dashboard-config-panel,main.dashboard .dashboard-dash .dashboard-config-row .dashboard-config-panel{flex:1 1 0;min-width:0}.graphs-row{display:flex;flex-direction:row;gap:30px;align-items:stretch;width:100%;min-width:0;box-sizing:border-box}.graphs-row .monitor-panel{flex:1 1 0;min-width:0}.runners-page,.logs-page{grid-column:1 / -1}.logs-page-header{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:12px;margin-bottom:8px}.logs-page-header h2{margin:0}.logs-page-hint{font-size:.9rem;color:var(--text-dim);margin:0 0 16px}.logs-refresh-btn{padding:8px 16px;border-radius:10px;border:1px solid rgba(255,255,255,.2);background:#ffffff0f;color:var(--text-dim);font-size:.9rem;font-weight:500;cursor:pointer;transition:var(--transition)}.logs-refresh-btn:hover:not(:disabled){background:#ffffff1a;color:var(--text-main);border-color:var(--primary)}.logs-refresh-btn:disabled{opacity:.7;cursor:not-allowed}.logs-textarea{width:100%;min-height:400px;padding:16px;border-radius:12px;border:1px solid rgba(255,255,255,.08);background:#00000040;color:var(--text-main);font-family:ui-monospace,Cascadia Code,Source Code Pro,Menlo,monospace;font-size:.85rem;line-height:1.5;resize:vertical;box-sizing:border-box}.logs-textarea::placeholder{color:var(--text-dim)}.scripts-page{width:100%;max-width:100%;box-sizing:border-box}.scripts-page-header{display:flex;align-items:center;flex-wrap:wrap;gap:12px;margin-bottom:8px}.scripts-page-header-left{position:relative;display:flex;align-items:center;flex:1;min-width:0;max-width:100%;gap:5px 10px;flex-wrap:wrap}.scripts-page-header h2{margin:0;flex-shrink:0}.scripts-help-btn{box-sizing:border-box;width:14px;height:14px;padding:0;border-radius:50%;border:1px solid rgba(255,255,255,.2);background:#ffffff0f;color:var(--text-dim);font-size:9px;font-weight:600;line-height:1;cursor:pointer;transition:var(--transition);flex-shrink:0}.scripts-help-btn:hover,.scripts-help-btn[aria-expanded=true]{border-color:var(--primary);color:var(--primary);background:#00d2ff1f}.scripts-help-inline{flex:1;min-width:min(200px,100%);padding:6px 12px;border-radius:10px;border:1px solid rgba(255,255,255,.12);background:#0f0f13d9;box-shadow:0 4px 16px #00000040}.scripts-help-inline-text{margin:0;font-size:.8rem;line-height:1.45;color:var(--text-dim)}.scripts-help-code{font-family:ui-monospace,Cascadia Code,Source Code Pro,Menlo,monospace;font-size:.82em;background:#ffffff14;padding:2px 6px;border-radius:4px;color:var(--text-main)}.scripts-layout{display:grid;grid-template-columns:minmax(260px,1fr) minmax(0,2fr);gap:24px;align-items:stretch;margin-top:8px;width:100%;min-height:min(70vh,560px)}.scripts-tree-column{display:flex;flex-direction:column;min-width:0;min-height:0}.scripts-tree-directory-bar{flex-shrink:0;display:flex;flex-wrap:wrap;align-items:baseline;gap:8px 12px;margin-bottom:12px}.scripts-tree-directory-bar .scripts-toolbar-label{margin:0}.scripts-tree-directory-value{font-size:.95rem;color:var(--primary);font-weight:600}.scripts-tree-panel{flex:1;min-height:0;overflow:auto;padding:12px 14px;border-radius:12px;border:1px solid rgba(255,255,255,.08);background:#0003}.scripts-tree-footer{flex-shrink:0;margin-top:12px;display:flex;flex-direction:column;gap:10px}.scripts-upload-path-label{display:flex;flex-direction:column;gap:6px}.scripts-upload-path-caption{font-size:.75rem;color:var(--text-dim);text-transform:uppercase;letter-spacing:.04em}.scripts-upload-path-input{width:100%;box-sizing:border-box;background:#0000004d;border:1px solid rgba(255,255,255,.1);padding:10px 12px;border-radius:10px;color:var(--text-main);font-family:ui-monospace,Cascadia Code,Source Code Pro,Menlo,monospace;font-size:.85rem}.scripts-upload-path-input:focus{outline:none;border-color:var(--primary)}.scripts-tree-actions{display:flex;flex-wrap:wrap;gap:10px}.scripts-action-btn{padding:10px 18px;border-radius:10px;font-size:.9rem;font-weight:600;cursor:pointer;transition:var(--transition);border:2px solid}.scripts-action-btn:disabled{opacity:.45;cursor:not-allowed}.scripts-action-btn-upload{background:#ff8c3c1f;border-color:#ff8c3cbf;color:#ffb380}.scripts-action-btn-upload:hover:not(:disabled){background:#ff8c3c38;border-color:#ff9a4d;color:#ffc9a0}.scripts-action-btn-delete{background:#ff4d4d1a;border-color:#ff64648c;color:#ff8a8a}.scripts-action-btn-delete:hover:not(:disabled){background:#ff4d4d33;border-color:#ff6b6b}.scripts-action-btn-refresh{background:#00d2ff1a;border-color:#00d2ff73;color:var(--primary)}.scripts-action-btn-refresh:hover:not(:disabled){background:#00d2ff33;border-color:var(--primary);color:#9ef4ff}.scripts-action-message{margin:0 0 8px;font-size:.9rem;color:var(--text-dim)}.scripts-file-input-hidden{position:absolute;width:0;height:0;opacity:0;pointer-events:none}.scripts-tree-placeholder{margin:0;font-size:.9rem;color:var(--text-dim)}.scripts-tree-placeholder--nested{margin:4px 0 8px;font-size:.85rem}.scripts-user-block{margin-bottom:20px}.scripts-user-block:last-child{margin-bottom:0}.scripts-user-block-header{display:flex;align-items:center;gap:4px;margin-bottom:8px}.scripts-user-heading{margin:0;font-size:.85rem;color:var(--primary);text-transform:none;letter-spacing:0}button.scripts-user-heading-btn{flex:1 1 0;min-width:0;text-align:left;padding:6px 10px;margin:0;border:1px solid transparent;border-radius:10px;background:#ffffff08;cursor:pointer;font:inherit;font-size:.85rem;font-weight:600;color:var(--primary);transition:var(--transition)}button.scripts-user-heading-btn:hover{background:#00d2ff1a;border-color:#00d2ff40}button.scripts-user-heading-btn.scripts-user-heading--active{background:#00d2ff24;border-color:#00d2ff73}.scripts-tree-list{list-style:none;margin:0;padding:0}.scripts-tree-item{margin:2px 0}.scripts-tree-dir-row{display:flex;align-items:center;gap:2px}.scripts-tree-collapse{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;padding:0;margin:0;border:none;border-radius:6px;background:transparent;color:var(--text-dim);cursor:pointer;transition:var(--transition)}.scripts-tree-collapse:hover{background:#ffffff14;color:var(--primary)}.scripts-tree-collapse--spacer{visibility:hidden;pointer-events:none}.scripts-tree-collapse--user{align-self:stretch;height:auto;min-height:32px}.scripts-tree-collapse-icon{display:block;font-size:.65rem;line-height:1;transform:scaleY(1.15)}.scripts-tree-dir{display:block;font-size:.85rem;color:var(--text-dim);padding:4px 0;flex:1;min-width:0}button.scripts-tree-dir-upload-target{border:none;background:transparent;font:inherit;font-family:inherit;text-align:left;cursor:pointer;width:100%}button.scripts-tree-dir-upload-target:hover{color:var(--primary)}.scripts-tree-file{display:block;width:100%;text-align:left;padding:6px 10px;border:none;border-radius:8px;background:transparent;color:var(--text-main);font-size:.88rem;font-family:ui-monospace,Cascadia Code,Source Code Pro,Menlo,monospace;cursor:pointer;transition:var(--transition)}.scripts-tree-file:hover{background:#00d2ff1f;color:var(--primary)}.scripts-tree-file--active{background:#00d2ff2e;color:var(--primary)}.scripts-editor-panel{min-width:0;min-height:0;display:flex;flex-direction:column;gap:8px}.scripts-editor-toolbar{flex-shrink:0}.scripts-toolbar-row{display:flex;flex-wrap:wrap;align-items:baseline;gap:10px 16px;row-gap:8px}.scripts-toolbar-row--file-only{gap:10px}.scripts-toolbar-row--file-only .scripts-editor-path,.scripts-toolbar-row--file-only .scripts-editor-path--muted{flex:1 1 0;min-width:0}.scripts-toolbar-group{display:inline-flex;flex-wrap:wrap;align-items:baseline;gap:8px}.scripts-toolbar-group--grow{flex:1 1 200px;min-width:0}.scripts-toolbar-label{font-size:.75rem;font-weight:600;color:var(--text-dim);text-transform:uppercase;letter-spacing:.06em}.scripts-editor-path{font-size:.85rem;color:var(--text-main);font-family:ui-monospace,Cascadia Code,Source Code Pro,Menlo,monospace;word-break:break-all}.scripts-editor-path--muted{color:var(--text-dim)}.scripts-file-error{margin:0}.scripts-file-view{flex:1;min-height:200px;resize:none}@media(max-width:900px){.scripts-layout{grid-template-columns:1fr;min-height:0}.scripts-tree-column{min-height:min(40vh,320px)}.scripts-tree-panel{max-height:min(40vh,320px)}.scripts-file-view{min-height:min(50vh,400px)}}.runners-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:20px;margin-top:20px}.runner-card{background:#ffffff0a;border:1px solid rgba(255,255,255,.08);border-radius:16px;padding:20px;transition:var(--transition)}.runner-card:hover{border-color:#00d2ff4d;background:#00d2ff0d}.runner-card-type{display:inline-block;padding:4px 10px;border-radius:8px;font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.5px;margin-bottom:14px;background:#00d2ff33;color:var(--primary)}.runner-card-details{margin:0;font-size:.9rem;display:grid;grid-template-columns:auto 1fr;gap:4px 16px}.runner-card-details dt{color:var(--text-dim);margin:0}.runner-card-details dd{margin:0;color:var(--text-main);word-break:break-all}.runner-card-os,.runner-card-country{display:flex;align-items:center;gap:8px}.os-icon{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;color:var(--text-dim)}.os-icon svg{display:block}.os-icon-darwin{color:#888}.os-icon-win32{color:#00a4ef}.os-icon-linux{color:#fcc624}.os-icon-unknown{font-size:.75rem;opacity:.7}.runner-card-flag{font-size:1.1rem;line-height:1}.runners-empty{grid-column:1 / -1;color:var(--text-dim);font-size:1rem;margin:20px 0 0}@media(max-width:900px){.dashboard{grid-template-columns:1fr;grid-template-rows:auto}.dashboard-config-row,.graphs-row{flex-direction:column}}.glass-panel{background:var(--panel-bg);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.08);border-radius:24px;padding:30px;box-shadow:0 8px 32px #0003}.monitor-panel{align-self:start}.monitor-panel-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.monitor-panel--collapsed .monitor-panel-header{margin-bottom:0}.monitor-panel-header h2{margin:0}.graph-toggle{display:flex;align-items:center;justify-content:center;width:40px;height:40px;padding:0;border:none;border-radius:12px;background:#ffffff0f;color:var(--text-dim);cursor:pointer;transition:var(--transition)}.graph-toggle:hover{background:#ffffff1f;color:var(--primary)}.graph-toggle-icon{width:22px;height:22px;flex-shrink:0}h2{font-size:1.2rem;margin-top:0;margin-bottom:25px;color:var(--text-dim);text-transform:uppercase;letter-spacing:1px}.input-group{margin-bottom:20px}.row{display:flex;gap:15px}.row .input-group{flex:1}label{display:block;font-size:.85rem;margin-bottom:8px;color:var(--text-dim)}input{width:100%;background:#0000004d;border:1px solid rgba(255,255,255,.1);padding:12px 16px;border-radius:12px;color:#fff;font-family:inherit;font-size:1rem;transition:var(--transition);box-sizing:border-box}input:focus{outline:none;border-color:var(--primary);box-shadow:0 0 15px var(--primary-glow)}.progress-group{margin-top:12px}.progress-group .progress-bar-label{font-size:.85rem;color:var(--text-dim);margin-top:8px;margin-bottom:2px}.progress-group .progress-bar-label:first-child{margin-top:0}.start-stop-row{display:flex;align-items:stretch;gap:10px;margin-top:20px}.start-stop-row .start-btn{flex:1;margin-top:0}.start-btn{width:100%;padding:16px;border:none;border-radius:12px;background:linear-gradient(135deg,var(--primary),#00a0ff);color:#000;font-weight:700;font-size:1.1rem;cursor:pointer;transition:var(--transition);margin-top:20px}.stop-btn{flex-shrink:0;width:56px;height:56px;padding:0;border:none;border-radius:12px;background:#ff4d4d33;color:var(--error);cursor:pointer;transition:var(--transition);display:flex;align-items:center;justify-content:center}.stop-btn:hover:not(:disabled){background:#ff4d4d59;color:#ff6b6b;box-shadow:0 0 12px #ff4d4d4d}.stop-btn:disabled{opacity:.4;cursor:not-allowed}.stop-btn-icon{width:24px;height:24px}.start-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 5px 20px var(--primary-glow)}.start-btn:disabled{opacity:.5;cursor:not-allowed;filter:grayscale(1)}.start-btn.running{background:transparent;border:2px solid var(--primary);color:var(--primary);animation:pulse 2s infinite}.stats-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:30px}.stat-card{background:#ffffff08;padding:20px;border-radius:16px;text-align:center}.stat-card h3{font-size:.9rem;color:var(--text-dim);margin:0 0 10px}.stat-value{font-size:2.5rem;font-weight:700;background:linear-gradient(to bottom,#fff,#bbb);-webkit-background-clip:text;-webkit-text-fill-color:transparent}.stat-card.error .stat-value{background:linear-gradient(to bottom,#ff4d4d,#b30000);-webkit-background-clip:text;-webkit-text-fill-color:transparent}@keyframes pulse{0%{box-shadow:0 0 #00d2ff66}70%{box-shadow:0 0 0 10px #00d2ff00}to{box-shadow:0 0 #00d2ff00}}.checkbox-group{display:flex;flex-wrap:wrap;align-items:center;margin-top:10px}.checkbox-group label{display:flex;align-items:center;gap:10px;cursor:pointer;color:var(--text-main);font-size:.95rem}.checkbox-group input{width:20px;height:20px;margin:0}.checkbox-group .checkbox-hint{width:100%;margin-top:4px;margin-left:30px;font-size:.8rem;color:var(--text-dim)}.progress-container{width:100%;height:6px;background:#ffffff1a;border-radius:3px;margin-top:15px;overflow:hidden}.progress-bar{height:100%;background:var(--primary);transition:width .1s linear;box-shadow:0 0 10px var(--primary)}.advanced-toggle{width:100%;display:flex;align-items:center;justify-content:flex-start;gap:8px;padding:10px 12px;border-radius:10px;border:1px solid rgba(255,255,255,.1);background:#0000004d;color:var(--text-dim);font-size:.9rem;cursor:pointer;transition:var(--transition)}.advanced-toggle:hover{border-color:var(--primary);color:var(--text-main)}.advanced-toggle-icon{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;border-radius:999px;border:1px solid rgba(255,255,255,.2);font-size:.65rem;transition:transform .2s ease}.advanced-toggle-icon.open{transform:rotate(90deg)}.script-params-input{width:100%;min-height:72px;background:#0000004d;border:1px solid rgba(255,255,255,.1);padding:12px 16px;border-radius:12px;color:#fff;font-family:inherit;font-size:.9rem;resize:vertical;box-sizing:border-box}.script-params-input:focus{outline:none;border-color:var(--primary)}.script-selector-wrap{position:relative}.script-selector-row{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:8px}.script-selector-btn{padding:10px 16px;border-radius:10px;border:1px solid rgba(255,255,255,.2);background:#00d2ff1a;color:var(--primary);font-size:.9rem;cursor:pointer;transition:var(--transition)}.script-selector-btn:hover{background:#00d2ff33;border-color:var(--primary)}.script-selected-name{font-size:.85rem;color:var(--text-dim)}.script-clear-btn{padding:6px 12px;border-radius:8px;border:1px solid rgba(255,255,255,.15);background:#ff4d4d26;color:var(--error);font-size:.8rem;cursor:pointer;transition:var(--transition)}.script-clear-btn:hover{background:#ff4d4d40}.script-selector-popover{position:absolute;z-index:100;margin-top:4px;min-width:280px;max-width:100%;max-height:320px;background:var(--bg-dark);border:1px solid rgba(255,255,255,.15);border-radius:16px;box-shadow:0 12px 40px #0006;overflow:hidden;display:flex;flex-direction:column}.script-selector-header{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;border-bottom:1px solid rgba(255,255,255,.08);font-size:.9rem;color:var(--text-dim)}.script-selector-close{width:28px;height:28px;border:none;border-radius:8px;background:transparent;color:var(--text-dim);font-size:1.2rem;line-height:1;cursor:pointer;transition:var(--transition)}.script-selector-close:hover{background:#ffffff1a;color:var(--text-main)}.script-selector-list{padding:8px;overflow-y:auto;flex:1}.script-selector-loading,.script-selector-empty{padding:16px;margin:0;font-size:.85rem;color:var(--text-dim)}.script-selector-empty code{background:#ffffff1a;padding:2px 6px;border-radius:4px;font-size:.8rem}.script-selector-item{display:block;width:100%;padding:10px 12px;margin-bottom:4px;border:none;border-radius:10px;background:#ffffff0d;color:var(--text-main);font-size:.9rem;text-align:left;cursor:pointer;transition:var(--transition)}.script-selector-item:hover{background:#00d2ff26;color:var(--primary)}.script-selector-item:last-child{margin-bottom:0}.login-page{display:flex;align-items:center;justify-content:center;min-height:100vh;padding:20px}.login-panel{width:100%;max-width:420px}.login-title{font-size:1.5rem;margin:0 0 8px;background:linear-gradient(to right,#fff,#aaa);-webkit-background-clip:text;-webkit-text-fill-color:transparent}.login-subtitle{font-size:.95rem;color:var(--text-dim);margin:0 0 28px}.login-form .input-group{margin-bottom:18px}.login-error{margin-bottom:16px;padding:12px 16px;border-radius:12px;background:#ff4d4d26;color:var(--error);font-size:.9rem}.dashboard-start-error{grid-column:1 / -1;width:100%;min-width:0;display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:0}.start-error-dismiss{flex-shrink:0;background:none;border:none;color:inherit;font-size:1.25rem;line-height:1;cursor:pointer;padding:4px 8px;opacity:.9}.start-error-dismiss:hover{opacity:1}.login-submit{width:100%;margin-top:8px}.users-layout{display:grid;grid-template-columns:1fr 380px;gap:30px;align-items:start}.users-list-wrap{min-width:0}.users-list-header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:16px}.users-list-header .users-list-title{margin:0}.users-list-title,.users-add-title{font-size:.95rem;color:var(--text-dim);margin:0 0 16px;text-transform:uppercase;letter-spacing:.5px}.users-list{list-style:none;margin:0;padding:0}.user-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 16px;margin-bottom:6px;background:#ffffff0a;border:1px solid rgba(255,255,255,.08);border-radius:12px}.user-row-actions{display:flex;align-items:center;gap:10px}.user-logs-btn{padding:6px 12px;border-radius:8px;border:1px solid rgba(255,255,255,.2);background:#ffffff0f;color:var(--text-dim);font-size:.8rem;font-weight:500;cursor:pointer;transition:var(--transition)}.user-logs-btn:hover{background:#00d2ff26;color:var(--primary);border-color:var(--primary)}.user-delete-btn{padding:6px 12px;border-radius:8px;border:1px solid rgba(255,100,100,.4);background:#ff64641a;color:#ff6b6b;font-size:.8rem;font-weight:500;cursor:pointer;transition:var(--transition)}.user-delete-btn:hover{background:#ff646433;border-color:#ff6b6b}.users-dismiss-error{margin-left:8px;padding:0 6px;background:transparent;border:none;color:inherit;cursor:pointer;font-size:1.2rem;line-height:1;opacity:.8}.user-name-cell{display:flex;align-items:center;gap:8px}.user-name{font-weight:500;color:var(--text-main)}.user-online-dot{width:8px;height:8px;border-radius:50%;background:#00ff80;box-shadow:0 0 6px #00ff8099;flex-shrink:0}.user-test-runner{font-size:1rem;line-height:1}.user-role-badge{font-size:.75rem;padding:4px 10px;border-radius:8px;background:#ffffff1a;color:var(--text-dim);text-transform:capitalize}.user-role-admin{background:#00d2ff33;color:var(--primary)}.users-add-wrap{padding:24px}.users-add-form .input-group{margin-bottom:16px}.role-select{width:100%;background:#0000004d;border:1px solid rgba(255,255,255,.1);padding:12px 16px;border-radius:12px;color:#fff;font-family:inherit;font-size:1rem;cursor:pointer;transition:var(--transition)}.role-select:focus{outline:none;border-color:var(--primary)}.users-whitelist-input{width:100%;min-height:72px;background:#0000004d;border:1px solid rgba(255,255,255,.1);padding:12px 16px;border-radius:12px;color:#fff;font-family:inherit;font-size:.95rem;resize:vertical;transition:var(--transition);box-sizing:border-box}.users-whitelist-input:focus{outline:none;border-color:var(--primary)}.input-hint{display:block;margin-top:6px;font-size:.8rem;color:var(--text-dim)}.users-add-success{margin-bottom:12px;padding:10px 14px;border-radius:10px;background:#00ff8026;color:#00ff80;font-size:.9rem}.users-add-btn{margin-top:8px}@media(max-width:900px){.users-layout{grid-template-columns:1fr}}.logs-modal-overlay{position:fixed;inset:0;background:#0009;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:1000;padding:24px}.logs-modal{width:100%;max-width:720px;max-height:80vh;display:flex;flex-direction:column;overflow:hidden}.logs-modal-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px;flex-shrink:0}.logs-modal-header h2{margin:0;font-size:1.1rem;color:var(--text-main);text-transform:none;letter-spacing:0}.logs-modal-close{flex-shrink:0}.logs-modal-body{flex:1;min-height:0;overflow:auto;background:#00000059;border:1px solid rgba(255,255,255,.1);border-radius:12px;padding:16px}.logs-modal-content{margin:0;font-family:ui-monospace,Cascadia Code,Source Code Pro,Menlo,monospace;font-size:.8rem;line-height:1.5;color:var(--text-dim);white-space:pre-wrap;word-break:break-all}.k6-output-modal{max-width:900px}.k6-output-content{font-size:.85rem}
