.notification-container[data-v-62556aa3]{z-index:9999;flex-direction:column;gap:8px;max-width:400px;display:flex;position:fixed;top:16px;right:16px}.notification-toast[data-v-62556aa3]{cursor:pointer;background:#1e1e2e;border:1px solid #313244;border-radius:8px;min-width:280px;padding:12px 16px;box-shadow:0 4px 20px #0006}.notification-toast.notif-info[data-v-62556aa3]{border-left:4px solid #89b4fa}.notification-toast.notif-warn[data-v-62556aa3]{border-left:4px solid #f9e2af}.notification-toast.notif-error[data-v-62556aa3]{border-left:4px solid #f38ba8}.notif-header[data-v-62556aa3]{align-items:center;gap:8px;display:flex}.notif-icon[data-v-62556aa3]{flex-shrink:0;font-size:16px}.notif-info .notif-icon[data-v-62556aa3]{color:#89b4fa}.notif-warn .notif-icon[data-v-62556aa3]{color:#f9e2af}.notif-error .notif-icon[data-v-62556aa3]{color:#f38ba8}.notif-title[data-v-62556aa3]{color:#cdd6f4;flex:1;font-size:14px;font-weight:600}.notif-close[data-v-62556aa3]{color:#6c7086;cursor:pointer;background:0 0;border:none;padding:0;font-size:18px;line-height:1}.notif-close[data-v-62556aa3]:hover{color:#cdd6f4}.notif-body[data-v-62556aa3]{color:#a6adc8;white-space:pre-wrap;margin-top:6px;font-size:13px;line-height:1.4}.notif-enter-active[data-v-62556aa3],.notif-leave-active[data-v-62556aa3]{transition:all .3s}.notif-enter-from[data-v-62556aa3],.notif-leave-to[data-v-62556aa3]{opacity:0;transform:translate(100%)}.app-container[data-v-25a13dcc]{min-height:100vh}.layout{min-height:100vh;display:flex}.sidebar{background:var(--bg-darker);border-right:1px solid var(--border);z-index:100;flex-direction:column;flex-shrink:0;width:-moz-fit-content;width:fit-content;min-width:200px;max-width:280px;height:100vh;display:flex;position:sticky;top:0;left:0}.sidebar-header{border-bottom:1px solid var(--border);padding:20px}.logo{color:var(--primary);align-items:center;gap:12px;display:flex}.logo-text{background:linear-gradient(135deg, var(--primary), var(--primary-light));-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;font-size:20px;font-weight:700}.sidebar-nav{flex-direction:column;flex:1;gap:4px;padding:16px 12px;display:flex}.nav-item{border-radius:var(--radius-sm);color:var(--text-secondary);transition:var(--transition);align-items:center;gap:12px;padding:12px 16px;display:flex}.nav-item:hover{background:var(--bg-card);color:var(--text)}.nav-item.active{color:var(--primary);background:linear-gradient(135deg,#00d4ff26,#00d4ff0d);border:1px solid #00d4ff33}.nav-group{margin-top:4px}.nav-parent{cursor:pointer;-webkit-user-select:none;user-select:none}.expand-icon{margin-left:auto;transition:transform .3s}.nav-group.expanded .expand-icon{transform:rotate(180deg)}.nav-children{margin-top:2px;padding-left:8px}.nav-child{border-radius:var(--radius-sm);color:var(--text-secondary);transition:var(--transition);align-items:center;gap:10px;padding:8px 16px 8px 20px;font-size:13px;text-decoration:none;display:flex}.nav-child:hover{background:var(--bg-card);color:var(--text)}.nav-child.active{color:var(--primary);background:linear-gradient(135deg,#00d4ff26,#00d4ff0d);border:1px solid #00d4ff33}.sidebar-footer{border-top:1px solid var(--border);padding:16px}.logout-btn{width:100%;color:var(--text-secondary);border-radius:var(--radius-sm);transition:var(--transition);background:0 0;align-items:center;gap:12px;padding:12px 16px;display:flex}.logout-btn:hover{color:var(--error);background:#ff52521a}.main-content{flex:1;width:100%;min-width:0;min-height:100vh;padding:24px}@media (max-width:768px){.sidebar{display:none}.main-content{padding:16px}}.client-binaries-page{width:100%}.binary-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);margin-bottom:16px;padding:20px 24px}.binary-card.latest{border-color:var(--primary);box-shadow:0 0 0 1px var(--primary)}.binary-header{align-items:center;gap:12px;margin-bottom:12px;display:flex}.binary-icon{width:40px;height:40px;color:var(--primary);background:#00b4ff1a;border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.binary-info{flex:1;min-width:0}.binary-info h3{margin-bottom:2px;font-size:15px;font-weight:600}.binary-info .filename{color:var(--text-secondary);word-break:break-all;font-size:13px}.binary-meta{color:var(--text-muted);flex-wrap:wrap;gap:12px;margin-top:4px;font-size:13px;display:flex}.binary-tags{flex-wrap:wrap;gap:6px;display:flex}.platform-tag{background:var(--bg-dark);color:var(--text-secondary);border:1px solid var(--border);border-radius:4px;padding:2px 8px;font-size:11px;display:inline-block}.latest-tag{color:var(--success);background:#00e6761f;border:1px solid #00e67633;border-radius:4px;padding:2px 8px;font-size:11px;display:inline-block}.binary-url{border-top:1px solid var(--border);margin-top:12px;padding-top:12px}.binary-url label{color:var(--text-muted);margin-bottom:6px;font-size:12px;display:block}.url-box input{background:var(--bg-dark);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-primary);outline:none;flex:1;padding:8px 12px;font-family:monospace;font-size:13px}.url-box .copy-btn{background:var(--bg-dark);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-secondary);cursor:pointer;white-space:nowrap;align-items:center;gap:4px;padding:8px 12px;font-size:13px;display:flex}.url-box .copy-btn:hover{border-color:var(--primary);color:var(--primary)}.binary-command{border-top:1px solid var(--border);margin-top:12px;padding-top:12px}.command-tabs button{background:var(--bg-dark);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-secondary);cursor:pointer;transition:var(--transition);padding:4px 14px;font-family:monospace;font-size:12px}.command-tabs button:hover{border-color:var(--primary);color:var(--primary)}.command-tabs button.active{background:var(--primary);border-color:var(--primary);color:#fff}.binary-command .command-box{align-items:stretch;gap:8px;display:flex}.binary-command .command-box code{background:var(--bg-dark);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-primary);word-break:break-all;white-space:pre-wrap;flex:1;padding:10px 14px;font-family:monospace;font-size:13px;line-height:1.5}.binary-command .command-box .copy-btn{background:var(--bg-dark);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-secondary);cursor:pointer;white-space:nowrap;flex-shrink:0;align-items:center;gap:4px;padding:8px 14px;font-size:13px;display:flex}.binary-command .command-box .copy-btn:hover{border-color:var(--primary);color:var(--primary)}.binary-actions{gap:8px;margin-top:12px;display:flex}.platform-select{background:var(--bg-dark);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-primary);outline:none;width:100%;padding:8px 12px;font-size:14px}.platform-select:focus{border-color:var(--primary)}.client-version-badge{border-radius:var(--radius-sm);color:var(--primary);background:#00b4ff14;border:1px solid #00b4ff33;align-items:center;gap:6px;margin-top:8px;padding:4px 12px;font-size:13px;display:inline-flex}.client-version-badge strong{font-weight:700}.current-tag{color:var(--primary);background:#00b4ff1a;border:1px solid #00b4ff33;border-radius:4px;padding:2px 8px;font-size:11px;display:inline-block}.binary-card.current{border-color:var(--primary);box-shadow:0 0 0 1px var(--primary)}.upload-desc{color:var(--text-secondary);margin-bottom:16px;font-size:13px;line-height:1.5}.upload-desc code{background:var(--bg-dark);color:var(--primary);border-radius:4px;padding:2px 6px;font-size:12px}.upload-area{border:2px dashed var(--border);border-radius:var(--radius-sm);transition:var(--transition);cursor:pointer;color:var(--text-secondary);flex-direction:column;align-items:center;gap:12px;padding:32px;display:flex}.upload-area:hover,.upload-area.dragover{border-color:var(--primary);color:var(--text);background:#00d4ff0a}.upload-text{font-size:15px;font-weight:500}.upload-hint{color:var(--text-muted);font-size:12px}.upload-btn{background:var(--bg-dark);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text);transition:var(--transition);padding:10px 24px;font-size:14px}.upload-btn:hover:not(:disabled){border-color:var(--primary);color:var(--primary)}.upload-btn.primary{background:linear-gradient(135deg, var(--primary), var(--primary-dark));color:#fff;border:none;width:100%;margin-top:12px}.upload-btn.primary:hover:not(:disabled){box-shadow:0 4px 16px #00d4ff4d}.upload-btn:disabled{opacity:.5;cursor:not-allowed}.file-preview{margin-top:16px}.file-preview h4{margin-bottom:8px;font-size:14px;font-weight:600}.file-table{border-collapse:collapse;width:100%;font-size:13px}.file-table th{text-align:left;color:var(--text-secondary);text-transform:uppercase;border-bottom:1px solid var(--border);padding:8px 12px;font-size:11px;font-weight:600}.file-table td{border-bottom:1px solid var(--border);padding:8px 12px}.file-table .file-name{word-break:break-all;max-width:280px;font-family:monospace;font-size:12px}.upload-progress{align-items:center;gap:12px;margin-top:12px;display:flex}.progress-bar{background:var(--bg-dark);border-radius:3px;flex:1;height:6px;overflow:hidden}.progress-fill{background:linear-gradient(90deg, var(--primary), var(--primary-dark));border-radius:3px;height:100%;transition:width .3s}.upload-results{margin-top:16px}.upload-results h4{margin-bottom:8px;font-size:14px;font-weight:600}.result-item{border-bottom:1px solid var(--border);align-items:center;gap:8px;padding:6px 0;font-size:13px;display:flex}.result-item:last-child{border-bottom:none}.result-item.success{color:var(--success)}.result-item.skipped{color:var(--warning)}.result-item.failed{color:var(--error)}.result-icon{text-align:center;flex-shrink:0;width:16px;font-size:14px;font-weight:700}.result-file{word-break:break-all;color:var(--text);flex:1;font-family:monospace;font-size:12px}.result-error{color:var(--error);font-size:12px}.upload-error{color:var(--error);margin-top:12px;font-size:13px}.upload-progress span{color:var(--text-secondary);white-space:nowrap;font-size:13px}.uploading-tag{color:var(--primary);background:#00b4ff1a;border:1px solid #00b4ff33;border-radius:4px;padding:2px 8px;font-size:11px;display:inline-block}.uploading-tag:after{content:"...";animation:1.5s steps(3,end) infinite dots}@keyframes dots{0%{content:""}33%{content:"."}66%{content:".."}to{content:"..."}}.success-tag{color:var(--success);background:#00e6761a;border:1px solid #00e67633;border-radius:4px;padding:2px 8px;font-size:11px;display:inline-block}.failed-tag{color:var(--error);background:#ff375f1a;border:1px solid #ff375f33;border-radius:4px;padding:2px 8px;font-size:11px;display:inline-block}.file-error{color:var(--error);word-break:break-all;margin-top:2px;font-size:11px}.upload-summary{color:var(--text-secondary);text-align:center;margin-top:12px;font-size:13px}.upload-notification{border-radius:var(--radius-sm);align-items:center;gap:10px;margin-bottom:16px;padding:12px 16px;font-size:14px;font-weight:500;animation:.3s notifySlideIn;display:flex}@keyframes notifySlideIn{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.upload-notification.success{color:var(--success);background:#00e6761a;border:1px solid #00e67640}.upload-notification.partial{color:var(--warning);background:#ffab001a;border:1px solid #ffab0040}.upload-notification.error{color:var(--error);background:#ff375f1a;border:1px solid #ff375f40}.notification-icon{flex-shrink:0;font-size:18px}.notification-text{flex:1}.notification-dismiss{color:inherit;opacity:.6;cursor:pointer;background:0 0;border:none;padding:0 4px;font-size:18px;line-height:1}.notification-dismiss:hover{opacity:1}.confirm-modal{max-width:440px}.confirm-warning{text-align:center;padding:8px 0 16px}.warning-icon{color:var(--warning,#ffab00);margin-bottom:16px}.confirm-text{color:var(--text);margin-bottom:8px;font-size:15px;line-height:1.6}.confirm-text strong{color:var(--error)}.confirm-hint{color:var(--text-secondary);font-size:13px;line-height:1.5}.confirm-actions{justify-content:flex-end;gap:12px;margin-top:20px;display:flex}.upgrade-notice[data-v-16a3c1b7]{justify-content:center;padding:48px 24px;display:flex}.notice-content[data-v-16a3c1b7]{text-align:center;max-width:480px}.notice-content h3[data-v-16a3c1b7]{color:var(--text);margin-bottom:12px;font-size:18px}.notice-content p[data-v-16a3c1b7]{color:var(--text-secondary);margin-bottom:20px;font-size:14px;line-height:1.6}.upgrade-link[data-v-16a3c1b7]{background:var(--primary);color:#fff;border-radius:var(--radius-sm);padding:10px 24px;font-size:14px;font-weight:500;text-decoration:none;transition:opacity .2s;display:inline-block}.upgrade-link[data-v-16a3c1b7]:hover{opacity:.85}.license-info-banner[data-v-16a3c1b7]{background:var(--primary-light,#e8f4fd);border:1px solid var(--primary-border,#b3d8f0);border-radius:var(--radius-sm,6px);color:var(--text-secondary);align-items:center;gap:8px;margin-bottom:16px;padding:10px 16px;font-size:13px;line-height:1.5;display:flex}.license-info-banner .banner-icon[data-v-16a3c1b7]{flex-shrink:0;font-size:16px}.license-info-banner code[data-v-16a3c1b7]{background:#0000000f;border-radius:3px;padding:1px 6px;font-size:12px}.client-detail{width:100%}.client-detail .page-header{justify-content:space-between;align-items:center;display:flex}.header-right{align-items:center;gap:12px;display:flex}.config-btn{border-radius:var(--radius-sm);background:linear-gradient(135deg, var(--primary), var(--primary-dark));color:#fff;cursor:pointer;transition:var(--transition);border:none;align-items:center;gap:6px;padding:8px 20px;font-size:14px;font-weight:500;display:inline-flex}.config-btn:hover{opacity:.9}.header-left{align-items:center;gap:16px;display:flex}.back-btn{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-secondary);transition:var(--transition);align-items:center;gap:8px;padding:8px 16px;font-size:14px;display:flex}.back-btn:hover{background:var(--bg-card-hover);color:var(--text)}.client-detail .page-header h1{font-size:28px;font-weight:700}.client-detail .status-badge{padding:6px 16px;font-size:14px}.info-grid{grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:24px;display:grid}.info-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);overflow:hidden}.info-card h3{border-bottom:1px solid var(--border);padding:20px 24px;font-size:16px;font-weight:600}.info-card .info-list{padding:8px 0}.info-card .info-item{padding:14px 24px}.info-card .info-item:not(:last-child){border-bottom:1px solid var(--border)}.loading{text-align:center;color:var(--text-secondary);padding:60px}.version-mismatch{color:var(--warning);font-weight:500}.experimental-tag{color:#9c27b0;background:#9c27b026;border-radius:4px;padding:2px 10px;font-size:12px;font-weight:600;display:inline-block}.info-value.mono{word-break:break-all;font-family:SF Mono,Fira Code,Cascadia Code,monospace;font-size:13px}.info-value .upgrade-url{color:var(--accent);word-break:break-all;text-decoration:none}.info-value .upgrade-url:hover{text-decoration:underline}.memory-leak{color:#c62828;font-weight:600}.memory-leak-tag{color:#c62828;vertical-align:middle;background:#c628281f;border-radius:4px;margin-left:6px;padding:1px 8px;font-size:11px;font-weight:600;display:inline-block}.edit-inline-btn{border:1px solid var(--border);background:var(--bg-dark);width:22px;height:22px;color:var(--text-muted);cursor:pointer;transition:var(--transition);vertical-align:middle;border-radius:4px;justify-content:center;align-items:center;margin-left:6px;font-size:13px;line-height:1;display:inline-flex}.edit-inline-btn:hover{border-color:var(--primary);color:var(--primary);background:#00d4ff0f}.name-edit-input{background:var(--bg-card);border:1px solid var(--primary);width:200px;color:var(--text-primary);border-radius:4px;outline:none;padding:4px 8px;font-family:inherit;font-size:13px}.fail-reason{color:#c62828;word-break:break-all;font-size:12px}.upgrade-fail{color:#c62828;font-weight:600}.masked-ip[data-v-11173472]{cursor:pointer;color:var(--primary);-webkit-user-select:none;user-select:none;font-family:monospace}.masked-ip[data-v-11173472]:hover{text-decoration:underline}.progress-bar-container[data-v-50ad908f]{margin-bottom:20px}.progress-bar[data-v-50ad908f]{background:var(--border);border-radius:3px;height:6px;overflow:hidden}.progress-bar-fill[data-v-50ad908f]{background:var(--primary);border-radius:3px;height:100%;transition:width .3s}.progress-stats[data-v-50ad908f]{gap:16px;margin-top:8px;font-size:12px;display:flex}.stat-applied[data-v-50ad908f]{color:var(--success)}.stat-failed[data-v-50ad908f]{color:var(--error)}.stat-pending[data-v-50ad908f],.stat-total[data-v-50ad908f]{color:var(--text-secondary)}.progress-hint[data-v-50ad908f]{color:var(--text-secondary);font-size:13px}.clients-page{width:100%}.clients-page .page-header{justify-content:space-between;align-items:flex-start;gap:24px;display:flex}.filters-bar{margin-bottom:20px}.filter-row{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.filter-label{color:var(--text-secondary);white-space:nowrap;font-size:13px}.filter-row+.filter-row{margin-top:10px}.filter-row.secondary .filter-input{background:var(--bg-dark);border:1px solid var(--border);border-radius:var(--radius-sm);width:110px;color:var(--text);padding:8px 12px;font-size:13px}.filter-row.secondary .filter-input::placeholder{color:var(--text-muted)}.filter-row.actions{margin-top:10px}.filter-link{border-radius:var(--radius-sm);color:var(--text-secondary);cursor:pointer;transition:var(--transition);background:0 0;border:1px solid #0000;align-items:center;gap:4px;padding:6px 10px;font-size:12px;display:flex}.filter-link:hover{color:var(--primary);background:#00d4ff0f}.logic-toggle{border:1px solid var(--border);border-radius:var(--radius-sm);display:flex;overflow:hidden}.toggle-btn{background:var(--bg-card);color:var(--text-secondary);cursor:pointer;transition:var(--transition);border:none;padding:8px 14px;font-size:13px}.toggle-btn:not(:last-child){border-right:1px solid var(--border)}.toggle-btn.active{background:var(--primary);color:#fff}.toggle-btn:not(.active):hover{background:var(--bg-card-hover)}.filter-select{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text);cursor:pointer;padding:8px 14px;font-size:14px}.filter-select option{background:var(--bg-dark)}.clients-table{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);max-width:100%;overflow:hidden}.table-wrapper{-webkit-overflow-scrolling:touch;max-width:100%;padding-bottom:4px;position:relative;overflow:auto visible}.scroll-hint{color:var(--text-muted);text-align:center;opacity:0;padding:8px 0;font-size:12px;transition:opacity .4s;display:none}.scroll-hint.visible{opacity:1;display:block}.table-wrapper::-webkit-scrollbar{height:6px}.table-wrapper::-webkit-scrollbar-track{background:var(--bg-dark);border-radius:3px}.table-wrapper::-webkit-scrollbar-thumb{background:var(--border);border-radius:3px}.table-wrapper::-webkit-scrollbar-thumb:hover{background:var(--text-muted)}.table-wrapper table{border-collapse:separate;border-spacing:0;min-width:1700px}.table-wrapper th,.table-wrapper td{white-space:nowrap;border-bottom:1px solid var(--border);padding:14px 16px}.table-wrapper tr:last-child td{border-bottom:none}.table-wrapper thead th.col-fixed-right{z-index:3;background:var(--bg-card);position:sticky;right:0}.col-fixed-right{z-index:2;background:var(--bg-card);text-align:center;min-width:80px;position:sticky;right:0}.clients-table:not(.scrolled-to-end) .col-fixed-right:before{content:"";pointer-events:none;background:linear-gradient(270deg,#00d4ff1f,#0000);width:12px;position:absolute;top:0;bottom:0;left:-12px}tr:hover .col-fixed-right{background:var(--bg-card-hover)}.client-id-cell a{color:var(--primary);font-weight:500;text-decoration:none}.client-id-cell a:hover{text-decoration:underline}.client-id-cell{color:var(--text-muted);text-overflow:ellipsis;max-width:140px;font-family:SF Mono,Cascadia Code,Fira Code,Consolas,monospace;font-size:12px;overflow:hidden}.pagination{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);justify-content:space-between;align-items:center;margin-top:20px;padding:16px 20px;display:flex}.pagination-info{color:var(--text-secondary);font-size:13px}.pagination-btns{gap:6px;display:flex}.page-btn{background:var(--bg-card);border:1px solid var(--border);color:var(--text);cursor:pointer;transition:var(--transition);border-radius:6px;padding:6px 14px;font-size:13px}.page-btn:hover:not(:disabled){background:var(--bg-card-hover);border-color:var(--primary)}.page-btn.active{background:var(--primary);border-color:var(--primary);color:#fff}.page-btn:disabled{opacity:.4;cursor:not-allowed}.version-text{font-weight:500}.version-hint{color:var(--warning);background:#ffab0026;border-radius:4px;margin-left:6px;padding:1px 6px;font-size:11px;font-weight:500;display:inline-block}.version-matched{color:var(--success);background:#00e6761f;border-radius:4px;margin-left:6px;padding:1px 6px;font-size:11px;font-weight:500;display:inline-block}@media (max-width:1024px){.clients-page .page-header{flex-direction:column}.filter-group{width:100%}.search-box{flex:1}.search-box input{width:100%}.filter-input{flex:1;min-width:100px}.filter-row{flex-direction:column;align-items:stretch}.filter-row .search-box,.filter-row .search-box input{width:100%}.filter-row select,.filter-row input{width:100%!important}.logic-toggle{align-self:flex-start}}.batch-toolbar{background:var(--bg-card);border:1px solid var(--primary);border-radius:var(--radius);align-items:center;gap:12px;margin-bottom:12px;padding:12px 20px;display:flex}.batch-info{color:var(--primary);font-size:14px;font-weight:500}.batch-btn{background:var(--primary);color:#fff;border-radius:var(--radius-sm);cursor:pointer;border:none;padding:8px 20px;font-size:13px}.batch-btn:hover{opacity:.85}.batch-btn.danger{background:#ef4444}.batch-btn.danger:hover{opacity:1;background:#dc2626}.batch-btn.disabled{opacity:.45;cursor:not-allowed;pointer-events:auto}.batch-cancel{color:var(--text-secondary);border:1px solid var(--border);border-radius:var(--radius-sm);cursor:pointer;background:0 0;padding:8px 16px;font-size:13px}.col-checkbox{text-align:center;width:40px;padding:14px 8px!important}.col-checkbox input[type=checkbox]{cursor:pointer;width:16px;height:16px}.progress-bar-container[data-v-ab5989b0]{margin-bottom:20px}.progress-bar[data-v-ab5989b0]{background:var(--border);border-radius:3px;height:6px;overflow:hidden}.progress-bar-fill[data-v-ab5989b0]{background:var(--primary);border-radius:3px;height:100%;transition:width .3s}.progress-stats[data-v-ab5989b0]{gap:16px;margin-top:8px;font-size:12px;display:flex}.stat-applied[data-v-ab5989b0]{color:var(--success)}.stat-failed[data-v-ab5989b0]{color:var(--error)}.stat-pending[data-v-ab5989b0],.stat-total[data-v-ab5989b0]{color:var(--text-secondary)}.progress-hint[data-v-ab5989b0]{color:var(--text-secondary);font-size:13px}.save-success[data-v-ab5989b0]{color:var(--success)}.save-error[data-v-ab5989b0]{color:var(--error)}.upgrade-tip[data-v-ab5989b0]{text-align:center;color:var(--text-secondary);padding:16px;font-size:13px}.upgrade-tip p[data-v-ab5989b0]{margin-bottom:10px}.upgrade-link[data-v-ab5989b0]{background:linear-gradient(135deg, var(--primary), var(--primary-dark));color:#fff;border-radius:var(--radius-sm);padding:6px 16px;font-size:13px;text-decoration:none;display:inline-block}.dist-page{padding:24px}.dist-header{justify-content:space-between;align-items:center;margin-bottom:24px;display:flex}.dist-header h1{color:var(--text);font-size:22px;font-weight:600}.dist-filter{gap:12px;margin-bottom:20px;display:flex}.dist-filter select{border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--bg-card);color:var(--text);cursor:pointer;min-width:140px;padding:8px 14px;font-size:14px}.dist-filter select:focus{border-color:var(--primary);outline:none}.dist-table{border-collapse:collapse;width:100%}.dist-table th{text-align:left;color:var(--text-secondary);border-bottom:1px solid var(--border);white-space:nowrap;padding:12px 16px;font-size:13px;font-weight:500}.dist-table td{color:var(--text);border-bottom:1px solid var(--border);padding:14px 16px;font-size:14px}.dist-table tr{cursor:pointer;transition:var(--transition)}.dist-table tr:hover{background:#ffffff08}.dist-desc{text-overflow:ellipsis;white-space:nowrap;max-width:260px;color:var(--text-secondary);overflow:hidden}.dist-status{border-radius:20px;align-items:center;gap:6px;padding:4px 12px;font-size:13px;font-weight:500;display:inline-flex}.dist-status .dot{border-radius:50%;flex-shrink:0;width:8px;height:8px}.dist-status.pending{color:#ffab00;background:#ffab001f}.dist-status.pending .dot{background:#ffab00}.dist-status.partial{color:#00d4ff;background:#00d4ff1f}.dist-status.partial .dot{background:#00d4ff}.dist-status.completed{color:#00e676;background:#00e6761f}.dist-status.completed .dot{background:#00e676}.dist-status.failed{color:#ff5252;background:#ff52521f}.dist-status.failed .dot{background:#ff5252}.dist-progress{align-items:center;gap:10px;display:flex}.dist-progress-bar{background:var(--border);border-radius:3px;flex:1;min-width:80px;height:6px;overflow:hidden}.dist-progress-fill{border-radius:3px;height:100%;transition:width .4s}.dist-progress-fill.applied{background:var(--success)}.dist-progress-fill.partial,.dist-progress-fill.pending{background:var(--warning)}.dist-progress-fill.completed{background:var(--success)}.dist-progress-fill.failed{background:var(--error)}.dist-progress-text{color:var(--text-secondary);white-space:nowrap;font-size:12px}.dist-count{color:var(--text-secondary);font-size:12px}.dist-time{color:var(--text-secondary);white-space:nowrap;font-size:13px}.dist-detail-header{margin-bottom:24px}.dist-detail-header h1{color:var(--text);margin:0 0 8px;font-size:22px;font-weight:600}.dist-detail-meta{flex-wrap:wrap;gap:24px;display:flex}.dist-detail-meta .meta-item{color:var(--text-secondary);align-items:center;gap:6px;font-size:13px;display:flex}.dist-detail-meta .meta-item .label{color:var(--text-secondary)}.dist-detail-meta .meta-item .value{color:var(--text);font-weight:500}.dist-config-card{background:var(--bg-card);border-radius:var(--radius);border:1px solid var(--border);margin-bottom:24px;padding:20px}.dist-config-card h3{color:var(--text);border-bottom:1px solid var(--border);margin:0 0 16px;padding-bottom:12px;font-size:15px;font-weight:600}.dist-config-grid{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:12px;display:grid}.dist-config-field{flex-direction:column;gap:4px;display:flex}.dist-config-field .field-label{color:var(--text-secondary);font-size:12px}.dist-config-field .field-value{color:var(--text);word-break:break-all;font-family:SF Mono,Fira Code,monospace;font-size:14px}.dist-config-field .field-value.empty{color:var(--text-secondary);font-style:italic}.dist-target-section{background:var(--bg-card);border-radius:var(--radius);border:1px solid var(--border);overflow:hidden}.dist-target-section h3{color:var(--text);border-bottom:1px solid var(--border);margin:0;padding:16px 20px;font-size:15px;font-weight:600}.target-table{border-collapse:collapse;width:100%}.target-table th{text-align:left;color:var(--text-secondary);border-bottom:1px solid var(--border);white-space:nowrap;padding:12px 16px;font-size:13px;font-weight:500}.target-table td{color:var(--text);border-bottom:1px solid var(--border);padding:12px 16px;font-size:14px}.target-table tr:last-child td{border-bottom:none}.target-status{border-radius:20px;align-items:center;gap:6px;padding:3px 10px;font-size:12px;font-weight:500;display:inline-flex}.target-status .dot{border-radius:50%;flex-shrink:0;width:6px;height:6px}.target-status.pending{color:#ffab00;background:#ffab001f}.target-status.pending .dot{background:#ffab00}.target-status.applied{color:#00e676;background:#00e6761f}.target-status.applied .dot{background:#00e676}.target-status.failed{color:#ff5252;background:#ff52521f}.target-status.failed .dot{background:#ff5252}.target-feedback{max-width:320px;color:var(--text-secondary);word-break:break-all;font-size:12px;line-height:1.5}.target-feedback .field-map{flex-wrap:wrap;gap:6px;display:flex}.target-feedback .field-tag{color:var(--primary);background:#00d4ff1a;border-radius:4px;padding:2px 8px;font-size:11px;display:inline-block}.target-feedback .field-tag.success{color:var(--success);background:#00e6761a}.target-feedback .field-tag.fail{color:var(--error);background:#ff52521a}.dist-back{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg-card);color:var(--text);cursor:pointer;transition:var(--transition);align-items:center;gap:6px;margin-bottom:20px;padding:8px 16px;font-size:14px;display:inline-flex}.dist-back:hover{border-color:var(--primary);color:var(--primary)}.empty-state{text-align:center;color:var(--text-secondary);padding:60px 20px;font-size:14px}.login-container{justify-content:center;align-items:center;min-height:100vh;display:flex;position:relative;overflow:hidden}.login-bg{z-index:0;position:absolute;top:0;bottom:0;left:0;right:0}.orb{filter:blur(80px);opacity:.3;border-radius:50%;position:absolute}.orb-1{background:var(--primary);width:400px;height:400px;animation:8s ease-in-out infinite float;top:-100px;right:-100px}.orb-2{background:#7c3aed;width:300px;height:300px;animation:10s ease-in-out infinite reverse float;bottom:-50px;left:-50px}.orb-3{background:#00e676;width:200px;height:200px;animation:12s ease-in-out infinite float;top:50%;left:50%}@keyframes float{0%,to{transform:translate(0)}50%{transform:translate(30px,-30px)}}.login-card{z-index:1;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid var(--border);width:100%;max-width:420px;box-shadow:var(--shadow-lg);background:#1a1f2ecc;border-radius:20px;padding:48px;position:relative}.login-header{text-align:center;margin-bottom:32px}.login-logo{color:var(--primary);margin-bottom:16px}.login-header h1{background:linear-gradient(135deg, var(--primary), var(--primary-light));-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;margin-bottom:8px;font-size:24px;font-weight:700}.login-header p{color:var(--text-secondary);font-size:14px}.login-form{flex-direction:column;gap:20px;display:flex}.form-group{flex-direction:column;gap:8px;display:flex}.form-group label{color:var(--text-secondary);font-size:14px}.form-group input{background:var(--bg-dark);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text);transition:var(--transition);padding:12px 16px;font-size:14px}.form-group input:focus{border-color:var(--primary);box-shadow:0 0 0 3px #00d4ff1a}.form-group input::placeholder{color:var(--text-muted)}.error-message{color:var(--error);text-align:center;font-size:14px}.login-btn{background:linear-gradient(135deg, var(--primary), var(--primary-dark));color:#fff;border-radius:var(--radius-sm);transition:var(--transition);padding:14px;font-size:16px;font-weight:600}.login-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 24px #00d4ff4d}.login-btn:disabled{opacity:.5;cursor:not-allowed}.packages-page{width:100%}.header-actions{gap:10px;display:flex}.header-actions .action-btn{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text);cursor:pointer;transition:var(--transition);align-items:center;gap:6px;padding:8px 16px;font-size:13px;display:flex}.header-actions .action-btn:hover{background:var(--primary);color:#fff;border-color:var(--primary)}.modal-input{background:var(--bg-dark);border:1px solid var(--border);border-radius:var(--radius-sm);width:100%;color:var(--text);margin-bottom:16px;padding:10px 16px;font-size:14px}.modal-input:focus{border-color:var(--primary);box-shadow:0 0 0 3px #00d4ff1a}.modal-btn{border-radius:var(--radius-sm);cursor:pointer;width:100%;transition:var(--transition);border:none;padding:10px 16px;font-size:14px;font-weight:500}.modal-btn.primary{background:linear-gradient(135deg, var(--primary), var(--primary-dark));color:#fff}.modal-btn.primary:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 12px #00d4ff4d}.modal-btn:disabled{opacity:.5;cursor:not-allowed}.upload-area{border:2px dashed var(--border);border-radius:var(--radius);text-align:center;transition:var(--transition);cursor:pointer;padding:40px}.upload-area:hover,.upload-area.dragover{border-color:var(--primary);background:#00d4ff0d}.upload-area svg{color:var(--text-secondary);margin-bottom:12px}.upload-text{margin-bottom:6px;font-size:15px}.upload-hint{color:var(--text-secondary);margin-bottom:16px;font-size:13px}.upload-btn{background:linear-gradient(135deg, var(--primary), var(--primary-dark));color:#fff;border-radius:var(--radius-sm);transition:var(--transition);padding:8px 20px;font-size:14px;font-weight:500}.upload-btn:hover{transform:translateY(-1px);box-shadow:0 4px 12px #00d4ff4d}.upload-progress{text-align:center;color:var(--primary);padding:12px;font-size:13px}.download-error{color:var(--error);margin-top:12px;font-size:13px}.packages-grid{grid-template-columns:repeat(auto-fill,minmax(380px,1fr));gap:20px;display:grid}.package-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);transition:var(--transition);padding:24px}.package-card:hover{border-color:var(--border-light)}.package-card.latest{border-color:var(--primary);background:linear-gradient(135deg,#00d4ff0d,#00d4ff05)}.package-header{justify-content:space-between;align-items:center;margin-bottom:16px;display:flex}.package-icon{color:var(--primary)}.package-badges{align-items:center;gap:8px;display:flex}.latest-badge{color:var(--primary);background:#00d4ff1a;border-radius:20px;padding:4px 12px;font-size:12px;font-weight:500}.release-badge{border-radius:20px;padding:4px 12px;font-size:12px;font-weight:500}.release-badge.badge-stable{color:#00c853;background:#00c85326}.release-badge.badge-experimental{color:#ffab00;background:#ffab0026}.release-badge.badge-rejected{color:#ff5252;background:#ff525226}.publish-toggle{cursor:pointer;align-items:center;line-height:0;display:inline-flex}.publish-toggle input[type=checkbox]{opacity:0;pointer-events:none;width:0;height:0;position:absolute}.publish-toggle.publishing{opacity:.5;pointer-events:none}.publish-toggle input[type=checkbox]:checked+.toggle-switch{background:var(--success);border-color:var(--success);box-shadow:0 0 6px #00e6764d}.publish-toggle input[type=checkbox]:checked+.toggle-switch:after{background:#fff;left:16px}.package-info{margin-bottom:16px}.package-info h3{margin-bottom:8px;font-size:20px;font-weight:700}.filename{color:var(--text-secondary);word-break:break-all;margin-bottom:12px;font-size:14px}.meta{color:var(--text-muted);gap:16px;margin-bottom:8px;font-size:13px;display:flex}.download-count{color:var(--primary)}.sha256-row{align-items:center;gap:8px;margin-bottom:8px;display:flex}.sha256-label{color:var(--text-secondary);white-space:nowrap;font-size:12px}.sha256-value{color:var(--text-muted);word-break:break-all;flex:1;font-family:monospace;font-size:12px;overflow:hidden}.package-url{background:var(--bg-dark);border-radius:var(--radius-sm);margin-bottom:16px;padding:12px}.package-url label{color:var(--text-secondary);margin-bottom:8px;font-size:12px;display:block}.url-box{gap:8px;display:flex}.url-box input{background:var(--bg-darker);border:1px solid var(--border);color:var(--primary);cursor:pointer;border-radius:6px;flex:1;padding:8px 12px;font-family:monospace;font-size:13px}.url-box input:hover{border-color:var(--primary)}.packages-page .copy-btn{border-radius:6px;padding:8px 12px;font-size:13px}.package-actions{border-top:1px solid var(--border);gap:8px;padding-top:16px;display:flex}.package-actions .action-btn{text-align:center;cursor:pointer;border:none;border-radius:6px;flex:1;justify-content:center;align-items:center;gap:6px;padding:10px 12px;font-size:13px;font-weight:500;display:flex}.action-btn.download{color:var(--primary);background:#00d4ff1a;text-decoration:none}.action-btn.download:hover{background:#00d4ff33}.action-btn.publish{color:#00c853;background:#00c8531a}.action-btn.publish:hover{background:#00c85333}.action-btn.publish-experimental{color:#ffab00;background:#ffab001a}.action-btn.publish-experimental:hover{background:#ffab0033}.action-btn.unpublish{color:#ff5252;background:#ff52521a}.action-btn.unpublish:hover{background:#ff525233}.action-btn:disabled{opacity:.5;cursor:not-allowed}.packages-page .empty-state{grid-column:1/-1;padding:60px}.packages-page .empty-state svg{opacity:.5;margin-bottom:16px}.quickstart-page{width:100%}.scenarios{flex-direction:column;gap:24px;margin-bottom:32px;display:flex}.scenario-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);overflow:hidden}.scenario-header{border-bottom:1px solid var(--border);align-items:center;gap:16px;padding:24px;display:flex}.scenario-icon{border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;width:56px;height:56px;display:flex}.scenario-register{color:var(--warning);background:#ffab001f}.scenario-uninstall{color:var(--danger);background:#ff4d4d1f}.scenario-info h3{margin-bottom:4px;font-size:16px;font-weight:600}.scenario-info p{color:var(--text-secondary);font-size:14px}.command-section{padding:20px 24px}.command-box{align-items:center;gap:12px;width:100%;display:flex}.command-box code{background:var(--bg-dark);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--primary);word-break:break-all;white-space:pre-wrap;flex:1;padding:12px 16px;font-family:monospace;font-size:14px}.command-tabs{gap:4px;margin-bottom:8px;display:flex}.sudo-toggle{background:var(--bg-dark);border:1px solid var(--border);color:var(--text-secondary);cursor:pointer;transition:var(--transition);border-radius:20px;align-items:center;gap:6px;padding:5px 14px;font-family:monospace;font-size:12px;font-weight:600;display:inline-flex}.sudo-toggle:hover{border-color:var(--primary);color:var(--primary)}.sudo-toggle.active{background:linear-gradient(135deg, var(--warning), #e68900);border-color:var(--warning);color:#fff;box-shadow:0 0 12px #ffab004d}.sudo-toggle:before{content:"";background:currentColor;flex-shrink:0;width:14px;height:14px;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 1L3 5v6c0 5.55 3.84 10.74 9 12 5.16-1.26 9-6.45 9-12V5l-9-4z'/%3E%3C/svg%3E") 50%/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 1L3 5v6c0 5.55 3.84 10.74 9 12 5.16-1.26 9-6.45 9-12V5l-9-4z'/%3E%3C/svg%3E") 50%/contain no-repeat}.sudo-toggle.active:after{content:"ON";opacity:.9;font-size:9px;font-weight:700}.command-hint{color:var(--text-muted);margin-top:12px;font-size:13px}.tips-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:24px}.tips-card h3{margin-bottom:16px;font-size:16px;font-weight:600}.tips-card ul{padding:0;list-style:none}.tips-card li{color:var(--text-secondary);margin-bottom:12px;padding-left:20px;font-size:14px;line-height:1.6;position:relative}.tips-card li:before{content:"";background:var(--primary);border-radius:50%;width:6px;height:6px;position:absolute;top:8px;left:0}.tips-card code{background:var(--bg-dark);color:var(--primary);border-radius:4px;padding:2px 6px;font-family:monospace;font-size:12px}.scenario-download{color:var(--primary);background:#00b4ff1a}.download-tabs{border:1px solid var(--border);border-radius:var(--radius-sm);gap:0;width:-moz-fit-content;width:fit-content;margin-bottom:12px;display:flex;overflow:hidden}.download-tabs button{background:var(--bg-dark);color:var(--text-secondary);cursor:pointer;border:none;padding:6px 16px;font-family:monospace;font-size:13px}.download-tabs button.active{background:var(--primary);color:#fff}.options-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);transition:var(--transition);margin-bottom:24px;padding:20px 24px}.options-card:hover{border-color:var(--border-light)}.options-card h3{align-items:center;gap:8px;margin-bottom:16px;font-size:15px;font-weight:600;display:flex}.options-card h3:before{content:"";background:linear-gradient(180deg, var(--primary), var(--primary-dark));border-radius:2px;flex-shrink:0;width:3px;height:16px}.group-section{margin-bottom:20px}.group-section:last-child{margin-bottom:0}.group-section h4{color:var(--text-secondary);border-bottom:1px solid var(--border);align-items:center;gap:8px;margin-bottom:10px;padding-bottom:8px;font-size:13px;font-weight:600;display:flex}.group-section h4:after{content:"";background:var(--border);flex:1;height:1px}.options-grid{gap:8px;display:grid}.options-grid-inputs{grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}.options-grid-toggles{grid-template-columns:repeat(auto-fill,minmax(210px,1fr))}.option-checkbox{background:var(--bg-dark);border:1px solid var(--border);border-radius:var(--radius-sm);cursor:pointer;transition:var(--transition);-webkit-user-select:none;user-select:none;align-items:center;gap:6px;padding:6px 10px;display:flex;position:relative}.option-checkbox:hover{border-color:var(--primary);background:#00d4ff0a}.option-checkbox input[type=checkbox]{opacity:0;pointer-events:none;width:0;height:0;position:absolute}.option-checkbox input[type=checkbox]:checked+.toggle-switch{background:var(--primary);border-color:var(--primary);box-shadow:0 0 6px #00d4ff4d}.option-checkbox input[type=checkbox]:checked+.toggle-switch:after{background:#fff;left:16px}.option-checkbox span{font-size:12px;font-weight:500;line-height:1.3}.option-checkbox small{display:none}.option-input{background:var(--bg-dark);border:1px solid var(--border);border-radius:var(--radius-sm);transition:var(--transition);flex-direction:column;align-items:stretch;gap:4px;padding:8px 10px;display:flex;position:relative}.option-input:hover{border-color:var(--border-light)}.option-input:focus-within{border-color:var(--primary);box-shadow:0 0 0 2px #00d4ff14}.option-input .field-label{color:var(--text-secondary);white-space:normal;font-size:12px;font-weight:500;line-height:1.4}.option-input code{font-size:11px}.option-input input,.option-input select{background:var(--bg-card);width:100%;color:var(--text-primary);transition:var(--transition);border:1px solid #0000;border-radius:4px;outline:none;padding:6px 10px;font-family:monospace;font-size:13px}.option-input input:focus,.option-input select:focus{border-color:var(--primary);background:var(--bg-darker);box-shadow:0 0 0 2px #00d4ff1f}.option-input select{cursor:pointer;-webkit-appearance:auto;appearance:auto}.option-input small{color:var(--text-muted);font-size:10px}.field-label,.field-label-inline{align-items:center;gap:4px;display:inline-flex}.field-label-inline{white-space:nowrap}.help-icon{background:var(--border);width:16px;height:16px;color:var(--text-muted);cursor:pointer;transition:var(--transition);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:11px;font-weight:700;line-height:1;display:inline-flex}.help-icon:hover{background:var(--primary);color:#fff}.option-disabled{opacity:.5;cursor:not-allowed}.option-disabled input[type=checkbox]{cursor:not-allowed}.help-tooltip{z-index:100;background:var(--bg-darker);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-primary);pointer-events:auto;padding:8px 10px;font-size:12px;line-height:1.5;position:absolute;top:calc(100% + 4px);left:0;right:0;box-shadow:0 4px 12px #00000026}.dashboard{width:100%}.dashboard .page-header{justify-content:space-between;align-items:flex-start;display:flex}.login-info{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-sm);align-items:center;gap:8px;padding:8px 16px;display:flex}.login-label{color:var(--text-secondary);font-size:13px}.login-ip{color:var(--primary);font-family:monospace;font-size:14px;font-weight:600}.stats-grid{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:20px;margin-bottom:32px;display:grid}.stat-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);transition:var(--transition);align-items:center;gap:16px;padding:24px;display:flex}.stat-card:hover{border-color:var(--border-light);transform:translateY(-2px)}.stat-icon{border-radius:12px;justify-content:center;align-items:center;width:56px;height:56px;display:flex}.clients-icon{color:var(--primary);background:#00d4ff1a}.online-icon{color:var(--success);background:#00e6761a}.upgrade-icon{color:#ffc107;background:#ffc1071f}.packages-icon{color:var(--warning);background:#ffab001a}.version-icon{color:#7c3aed;background:#7c3aed1a}.download-icon{color:#06b6d4;background:#06b6d41a}.dashboard-ws-icon{color:#ff6384;background:#ff63841a}.client-ws-icon{color:#96f;background:#9966ff1a}.license-free-icon{color:#757575;background:#9e9e9e26}.license-pro-icon{color:var(--primary);background:#00d4ff1a}.license-flagship-icon{color:#f59e0b;background:#ffc1071f}.license-ultimate-icon{color:#ef4444;background:#ff4d4d1f}.license-badge{border-radius:4px;padding:2px 10px;display:inline-block;font-size:18px!important}.license-free{color:#757575;background:#9e9e9e26}.license-professional{color:var(--primary);background:#00d4ff1a}.license-flagship{color:#f59e0b;background:#ffc1071f}.license-ultimate{color:#ef4444;background:#ff4d4d1f}.stat-content{flex-direction:column;display:flex}.stat-value{font-size:28px;font-weight:700;line-height:1.2}.stat-label{color:var(--text-secondary);font-size:14px}.content-grid{grid-template-columns:2fr 1fr;gap:24px;display:grid}.recent-clients,.system-info{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);overflow:hidden}.view-all{color:var(--primary);font-size:14px}.clients-table{overflow-x:auto}.clients-table table{border-collapse:collapse;width:100%}.clients-table th,.clients-table td{text-align:left;border-bottom:1px solid var(--border);padding:14px 24px}.clients-table th{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em;font-size:12px;font-weight:600}.clients-table td{font-size:14px}.clients-table tr:last-child td{border-bottom:none}.clients-table tr:hover td{background:var(--bg-card-hover)}@media (max-width:1024px){.content-grid{grid-template-columns:1fr}}.settings-page{width:100%}.info-label{color:var(--text-secondary);font-size:14px}.info-value{font-size:14px;font-weight:500}.status-online{color:var(--success)}.status-offline{color:var(--error)}.settings-grid{flex-direction:column;gap:24px;margin-bottom:32px;display:flex}.settings-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);overflow:hidden}.settings-card h3{border-bottom:1px solid var(--border);padding:20px 24px;font-size:16px;font-weight:600}.settings-list{padding:8px 0}.setting-item{justify-content:space-between;align-items:center;gap:24px;padding:20px 24px;display:flex}.setting-item:not(:last-child){border-bottom:1px solid var(--border)}.setting-item.column{flex-direction:column;align-items:stretch}.setting-info{flex:1}.setting-info label{margin-bottom:4px;font-size:14px;font-weight:500;display:block}.setting-info p{color:var(--text-secondary);margin-bottom:4px;font-size:13px}.setting-info p:last-child{margin-bottom:0}.setting-info code{background:var(--bg-dark);color:var(--primary);border-radius:4px;padding:2px 6px;font-size:12px}.setting-item input{background:var(--bg-dark);border:1px solid var(--border);border-radius:var(--radius-sm);width:300px;color:var(--text);transition:var(--transition);padding:10px 16px;font-size:14px}.setting-item input:focus{border-color:var(--primary);box-shadow:0 0 0 3px #00d4ff1a}.setting-textarea{background:var(--bg-dark);border:1px solid var(--border);border-radius:var(--radius-sm);width:100%;color:var(--text);resize:vertical;transition:var(--transition);padding:10px 16px;font-family:monospace;font-size:14px}.setting-textarea:focus{border-color:var(--primary);box-shadow:0 0 0 3px #00d4ff1a}.setting-info .hint{color:var(--text-muted);margin-top:4px;font-size:12px}.current-account{border-bottom:1px solid var(--border);background:var(--bg-dark);align-items:center;gap:12px;padding:20px 24px;display:flex}.current-account-icon{width:40px;height:40px;color:var(--primary);background:#00d4ff1a;border-radius:50%;justify-content:center;align-items:center;display:flex}.current-account-info{flex-direction:column;display:flex}.current-account-label{color:var(--text-secondary);font-size:12px}.current-account-name{color:var(--text);font-size:16px;font-weight:600}.account-actions{border-top:1px solid var(--border);align-items:center;gap:16px;padding:16px 24px;display:flex}.actions{align-items:center;gap:16px;display:flex}.save-btn{background:linear-gradient(135deg, var(--primary), var(--primary-dark));color:#fff;border-radius:var(--radius-sm);transition:var(--transition);padding:12px 32px;font-size:14px;font-weight:600}.save-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 16px #00d4ff4d}.save-btn:disabled{opacity:.5;cursor:not-allowed}.save-success{color:var(--success);font-size:14px}.save-error{color:var(--error);font-size:14px}@media (max-width:768px){.setting-item{flex-direction:column;align-items:flex-start}.setting-item input,.setting-textarea{width:100%}}.version-tag[data-v-c212637a]{color:var(--primary);font-size:18px;font-weight:700}.mono[data-v-c212637a]{font-family:monospace;font-size:13px}.link[data-v-c212637a]{color:var(--primary);text-decoration:none}.link[data-v-c212637a]:hover{text-decoration:underline}.upgrade-notice[data-v-d30b525b]{background:var(--bg-dark);border-left:3px solid var(--primary);justify-content:space-between;align-items:center;padding:16px 24px;display:flex}.upgrade-notice p[data-v-d30b525b]{color:var(--text-secondary);margin:0;font-size:14px}.upgrade-link[data-v-d30b525b]{color:var(--primary);white-space:nowrap;margin-left:16px;font-size:13px;text-decoration:none}.upgrade-link[data-v-d30b525b]:hover{text-decoration:underline}.readonly-hint[data-v-d30b525b]{opacity:.6}.feature-disabled-hint[data-v-d30b525b]{color:var(--text-secondary);opacity:.7;margin:6px 0 0;font-size:12px}.hint-warn[data-v-d30b525b]{color:var(--warning,#e68a00);margin:2px 0;font-size:13px}.hint-warn code[data-v-d30b525b]{background:var(--bg-dark);border-radius:3px;padding:1px 6px;font-family:monospace}.card-header-row[data-v-d30b525b]{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:20px 24px;display:flex}.card-header-row h3[data-v-d30b525b]{border-bottom:none;margin:0;padding:0}.current-ip[data-v-d30b525b]{align-items:center;gap:6px;display:flex}.current-ip-label[data-v-d30b525b]{color:var(--text-secondary);font-size:12px}.current-ip-value[data-v-d30b525b]{color:var(--primary);font-family:monospace;font-size:13px;font-weight:600}.api-key-row[data-v-d30b525b]{align-items:center;gap:12px;display:flex}.api-key-value[data-v-d30b525b]{background:var(--bg-dark);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--primary);word-break:break-all;flex:1;padding:10px 16px;font-family:monospace;font-size:13px}.action-btn[data-v-d30b525b]{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text);cursor:pointer;transition:var(--transition);white-space:nowrap;align-items:center;gap:6px;padding:8px 14px;font-size:13px;display:flex}.action-btn[data-v-d30b525b]:hover{background:var(--primary);color:#fff;border-color:var(--primary)}.action-btn.reset[data-v-d30b525b]{color:var(--error)}.action-btn.reset[data-v-d30b525b]:hover{background:var(--error);color:#fff;border-color:var(--error)}.toggle-wrapper[data-v-d30b525b]{align-items:center;gap:10px;display:flex}.toggle-switch[data-v-d30b525b]{flex-shrink:0;width:48px;height:26px;display:inline-block;position:relative}.toggle-switch input[data-v-d30b525b]{opacity:0;width:0;height:0}.toggle-slider[data-v-d30b525b]{cursor:pointer;background:#555;border-radius:26px;transition:all .3s;position:absolute;top:0;bottom:0;left:0;right:0}.toggle-slider[data-v-d30b525b]:before{content:"";background:#fff;border-radius:50%;width:20px;height:20px;transition:all .3s;position:absolute;bottom:3px;left:3px}.toggle-switch input:checked+.toggle-slider[data-v-d30b525b]{background:var(--primary)}.toggle-switch input:checked+.toggle-slider[data-v-d30b525b]:before{transform:translate(22px)}.toggle-status[data-v-d30b525b]{color:var(--text-secondary);font-size:13px}.settings-card[data-v-b633765a]{border-radius:var(--radius-sm);color:var(--text);font-size:14px}.setting-item.column[data-v-b633765a]{border:1px solid var(--border);border-radius:var(--radius-sm);flex-direction:column;display:flex;overflow:hidden}.compare-row[data-v-b633765a]{border-bottom:1px solid var(--border);grid-template-columns:140px repeat(4,1fr);display:grid}.compare-row[data-v-b633765a]:last-child{border-bottom:none}.compare-row.header[data-v-b633765a]{background:var(--bg-dark);font-size:13px;font-weight:600;position:sticky;top:0}.compare-item[data-v-b633765a]{text-align:center;border-right:1px solid var(--border);justify-content:center;align-items:center;gap:6px;padding:12px 14px;font-size:13px;display:flex;position:relative}.compare-item[data-v-b633765a]:last-child{border-right:none}.compare-item.feature[data-v-b633765a]{text-align:left;color:var(--text-secondary);background:var(--bg-dark);justify-content:flex-start;gap:8px;font-size:13px;font-weight:600}.compare-item.active[data-v-b633765a]{box-shadow:inset 3px 0 0 var(--primary);background:#00d4ff0f;font-weight:600}.compare-item.active .current-tag[data-v-b633765a]{background:var(--primary);color:#fff;letter-spacing:.3px;border-radius:8px;padding:1px 6px;font-size:10px;font-weight:700;display:inline-block}.compare-item .current-tag[data-v-b633765a]{display:none}.feature-icon[data-v-b633765a]{opacity:.7;font-size:14px}.compare-item .yes[data-v-b633765a]{color:var(--success);font-size:16px}.compare-item .no[data-v-b633765a]{color:var(--error);opacity:.6;font-size:16px}.feature-detail[data-v-b633765a]{color:var(--text-muted);white-space:nowrap;font-size:11px}.usage-header[data-v-b633765a]{justify-content:space-between;align-items:center;margin-bottom:12px;display:flex}.usage-label[data-v-b633765a]{color:var(--text-secondary);font-size:14px}.usage-value[data-v-b633765a]{color:var(--text);font-size:20px;font-weight:700}.usage-bar-wrapper[data-v-b633765a]{background:var(--border);border-radius:5px;height:10px;margin-bottom:12px;overflow:hidden}.usage-bar[data-v-b633765a]{border-radius:5px;height:100%;transition:width .5s}.usage-bar.normal[data-v-b633765a]{background:var(--primary)}.usage-bar.warning[data-v-b633765a]{background:#f59e0b}.usage-bar.danger[data-v-b633765a]{background:#ef4444}.usage-warning[data-v-b633765a]{color:#ef4444;margin:0;font-size:13px}.usage-ok[data-v-b633765a]{color:var(--text-secondary);margin:0;font-size:13px}.expire-info[data-v-b633765a]{border-top:1px solid var(--border);align-items:center;gap:12px;margin-top:12px;padding-top:12px;display:flex}.expire-label[data-v-b633765a]{color:var(--text-secondary);font-size:13px}.expire-valid[data-v-b633765a]{color:var(--text);font-size:13px;font-weight:600}.expire-overdue[data-v-b633765a]{color:var(--error);font-size:13px;font-weight:600}.expire-permanent[data-v-b633765a]{color:var(--success);font-size:13px;font-weight:600}.server-id-section[data-v-b633765a]{border-top:1px solid var(--border);margin-top:16px;padding-top:16px}.server-id-section .section-title[data-v-b633765a]{color:var(--text-muted);text-transform:uppercase;letter-spacing:1px;margin-bottom:8px;font-size:12px;font-weight:600}.server-id-section .card-desc[data-v-b633765a]{color:var(--text-secondary);margin-bottom:12px;font-size:13px}.license-badge[data-v-b633765a]{letter-spacing:.5px;border-radius:20px;align-items:center;padding:8px 20px;font-size:15px;font-weight:600;display:inline-flex}.license-free[data-v-b633765a]{color:#9ca3af;background:#374151}.license-professional[data-v-b633765a]{color:#60a5fa;background:#1e3a5f}.license-flagship[data-v-b633765a]{color:#c084fc;background:#3b1e5f}.license-ultimate[data-v-b633765a]{color:#fbbf24;background:#5f3b1e}.license-compare[data-v-b633765a]{border:1px solid var(--border);border-radius:var(--radius-sm);overflow:hidden}.license-import-card[data-v-b633765a]{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);margin-bottom:24px;padding:24px}.license-import-card h3[data-v-b633765a]{margin-bottom:4px;font-size:16px;font-weight:600}.license-import-card .card-desc[data-v-b633765a]{color:var(--text-secondary);margin-bottom:16px;font-size:13px}.import-row[data-v-b633765a]{align-items:center;gap:12px;display:flex}.import-input[data-v-b633765a]{background:var(--bg-dark);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text);transition:var(--transition);flex:1;padding:10px 14px;font-family:monospace;font-size:14px}.import-input[data-v-b633765a]:focus{border-color:var(--primary);outline:none}.import-input[data-v-b633765a]::placeholder{color:var(--text-muted);font-family:inherit}.import-divider[data-v-b633765a]{display:none}.save-btn-secondary[data-v-b633765a]{border:1px solid var(--border);color:var(--text-secondary);background:0 0}.save-btn-secondary[data-v-b633765a]:hover:not(:disabled){background:var(--bg-dark);border-color:var(--primary);color:var(--primary);box-shadow:none;transform:none}.import-success[data-v-b633765a]{color:var(--success);margin-top:12px;font-size:13px}.import-error[data-v-b633765a]{color:var(--error);margin-top:12px;font-size:13px}.server-id-row[data-v-b633765a]{align-items:center;gap:12px;display:flex}.server-id-text[data-v-b633765a]{background:var(--bg-dark);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--primary);word-break:break-all;flex:1;padding:10px 14px;font-family:monospace;font-size:14px}.preview-overlay[data-v-b633765a]{z-index:1000;background:#0009;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;top:0;bottom:0;left:0;right:0}.preview-dialog[data-v-b633765a]{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);flex-direction:column;width:100%;max-width:700px;max-height:90vh;display:flex;box-shadow:0 20px 60px #0000004d}.preview-header[data-v-b633765a]{padding:20px 24px 0}.preview-header h3[data-v-b633765a]{margin:0 0 4px;font-size:18px;font-weight:600}.preview-header p[data-v-b633765a]{color:var(--text-secondary);margin:0;font-size:13px}.preview-body[data-v-b633765a]{flex:1;padding:16px 24px;overflow-y:auto}.preview-type-section[data-v-b633765a]{justify-content:center;margin-bottom:16px;display:flex}.preview-details[data-v-b633765a]{background:var(--bg-dark);border-radius:var(--radius-sm);justify-content:center;gap:24px;margin-bottom:20px;padding:12px;display:flex}.preview-detail-item[data-v-b633765a]{flex-direction:column;align-items:center;gap:4px;display:flex}.detail-label[data-v-b633765a]{color:var(--text-muted);font-size:12px}.detail-value[data-v-b633765a]{color:var(--text);font-size:15px;font-weight:600}.detail-permanent[data-v-b633765a]{color:var(--success)}.preview-compare[data-v-b633765a]{border:1px solid var(--border);border-radius:var(--radius-sm);overflow:hidden}.preview-footer[data-v-b633765a]{border-top:1px solid var(--border);justify-content:flex-end;gap:12px;padding:16px 24px;display:flex}.time-cell[data-v-3d1fb6b7]{white-space:nowrap;font-family:monospace;font-size:13px}.detail-btn[data-v-3d1fb6b7]{border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-secondary);cursor:pointer;transition:var(--transition);background:0 0;padding:6px 14px;font-size:13px}.detail-btn[data-v-3d1fb6b7]:hover{border-color:var(--primary);color:var(--primary)}.pagination[data-v-3d1fb6b7]{border-top:1px solid var(--border);justify-content:center;align-items:center;gap:16px;padding:16px 24px;font-size:14px;display:flex}.pagination button[data-v-3d1fb6b7]{background:var(--bg-card-hover);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text);cursor:pointer;transition:var(--transition);padding:8px 16px}.pagination button[data-v-3d1fb6b7]:hover:not(:disabled){border-color:var(--primary);color:var(--primary)}.pagination button[data-v-3d1fb6b7]:disabled{opacity:.4;cursor:not-allowed}.modal-overlay[data-v-3d1fb6b7]{z-index:1000;background:#0009;justify-content:center;align-items:center;width:100%;height:100%;display:flex;position:fixed;top:0;left:0}.modal-content[data-v-3d1fb6b7]{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);flex-direction:column;width:720px;max-width:90vw;max-height:80vh;display:flex;box-shadow:0 8px 40px #0000004d}.modal-header[data-v-3d1fb6b7]{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:20px 24px;display:flex}.modal-header h3[data-v-3d1fb6b7]{font-size:18px;font-weight:600}.close-btn[data-v-3d1fb6b7]{width:32px;height:32px;color:var(--text-secondary);cursor:pointer;transition:var(--transition);background:0 0;border:none;border-radius:6px;justify-content:center;align-items:center;font-size:22px;display:flex}.close-btn[data-v-3d1fb6b7]:hover{background:var(--bg-card-hover);color:var(--text)}.modal-body[data-v-3d1fb6b7]{flex:1;padding:20px 24px;overflow-y:auto}.modal-summary[data-v-3d1fb6b7]{color:var(--text-secondary);flex-wrap:wrap;gap:16px;margin-bottom:20px;font-size:14px;display:flex}.modal-summary strong[data-v-3d1fb6b7]{color:var(--text)}.count-success[data-v-3d1fb6b7]{color:var(--success)!important}.count-fail[data-v-3d1fb6b7]{color:var(--error)!important}.detail-version[data-v-3d1fb6b7]{font-family:monospace;font-weight:600}.detail-filename[data-v-3d1fb6b7]{color:var(--text-muted);text-overflow:ellipsis;white-space:nowrap;max-width:200px;font-size:13px;overflow:hidden}.detail-reason[data-v-3d1fb6b7]{color:var(--error);text-overflow:ellipsis;white-space:nowrap;max-width:250px;font-size:13px;overflow:hidden}
