*{box-sizing:border-box}*{scrollbar-width:none;-ms-overflow-style:none}*::-webkit-scrollbar{display:none}:root{--primary-color: #7dd3fc;--primary-hover: #38bdf8;--secondary-color: #c4b5fd;--accent-rose: #f9a8d4;--warning-color: #fde047;--danger-color: #f87171;--success-color: #6ee7b7;--bg-color: rgba(255, 255, 255, .72);--surface-color: rgba(255, 255, 255, .52);--surface-hover: rgba(255, 255, 255, .64);--glass-border: rgba(255, 255, 255, .45);--glass-shadow: 0 8px 32px rgba(99, 102, 241, .08), 0 2px 12px rgba(15, 23, 42, .06);--backdrop-blur: blur(12px);--text-main: #1e293b;--text-secondary: #64748b;--text-light: #94a3b8;--border-color: rgba(255, 255, 255, .55);--shadow-sm: 0 1px 2px rgba(15, 23, 42, .06);--shadow-md: var(--glass-shadow);--shadow-lg: 0 16px 48px rgba(99, 102, 241, .12), 0 4px 16px rgba(15, 23, 42, .08);--radius-sm: .25rem;--radius-md: .375rem;--radius-lg: .5rem;--radius-glass: .625rem;--font-ui: system-ui, -apple-system, "Segoe UI", Roboto, "PingFang SC", "Microsoft YaHei", sans-serif;font-family:var(--font-ui);font-size:100%;line-height:1.5;font-weight:400;color-scheme:light;color:var(--text-main);background-color:transparent;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{margin:0;min-width:320px;min-height:100vh;background-color:#faf5ff66}#root{position:relative;z-index:1;min-height:100vh}h1,h2,h3,h4,h5,h6{color:var(--text-main);font-weight:600;line-height:1.2}button{font-family:inherit}.server-card{background:var(--surface-color);backdrop-filter:var(--backdrop-blur);-webkit-backdrop-filter:var(--backdrop-blur);border-radius:var(--radius-glass);padding:.85rem 1rem;box-shadow:var(--shadow-sm);transition:all .3s ease;border:1px solid var(--glass-border);display:flex;flex-direction:column;min-height:248px;height:auto}.server-card:hover{box-shadow:var(--shadow-md);border-color:#ffffffbf;background:var(--surface-hover)}.server-card.online{border-top:3px solid var(--primary-color);box-shadow:var(--shadow-sm),inset 0 1px #fff9}.server-card.offline{border-top:4px solid var(--text-light);opacity:.9}.card-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:.35rem}.server-info{display:flex;align-items:center;gap:.75rem}.status-indicator{width:10px;height:10px;border-radius:50%;position:relative}.status-online{background:var(--success-color)}.status-offline{background:var(--text-light)}.server-name-group{display:flex;flex-direction:column;gap:.25rem}.server-name{margin:0;font-size:1rem;font-weight:700;color:var(--text-main);letter-spacing:-.02em}.server-hostname{font-size:.75rem;color:var(--text-light);font-weight:400}.btn-remove{background:transparent;border:none;font-size:1.5rem;color:var(--text-light);cursor:pointer;padding:0;width:24px;height:24px;line-height:24px;border-radius:50%;display:flex;align-items:center;justify-content:center;transition:all .2s}.btn-remove:hover{background:var(--danger-color);color:#fff}.card-main-metrics{flex:1;display:flex;flex-direction:column;gap:.5rem}.card-stats-compact{display:flex;flex-direction:column;gap:.28rem;padding:.45rem .55rem;background:#ffffff59;border-radius:var(--radius-md);border:1px solid rgba(255,255,255,.5);font-size:.78rem}.stat-line{display:flex;justify-content:space-between;align-items:baseline;gap:.75rem}.stat-k{color:var(--text-secondary);font-weight:500;flex-shrink:0}.stat-v{color:var(--text-main);font-weight:600;font-variant-numeric:tabular-nums;text-align:right;word-break:break-word}.lat-good{color:var(--success-color)}.lat-mid{color:#fde047}.lat-bad{color:#f87171}.card-info-grid{display:grid;grid-template-columns:1fr 1fr;gap:.45rem;padding:.45rem .5rem;background:#ffffff59;border-radius:var(--radius-md);border:1px solid rgba(255,255,255,.45)}.info-section{display:flex;flex-direction:column;gap:.3rem}.info-row{display:flex;justify-content:space-between;align-items:center;font-size:.75rem;writing-mode:horizontal-tb;text-orientation:mixed}.info-label{color:var(--text-light);font-weight:500;writing-mode:horizontal-tb;text-orientation:mixed;white-space:nowrap}.info-value{color:var(--text-main);font-weight:600;font-family:monospace;font-size:.7rem;max-width:120px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-align:right}.card-performance-grid{display:grid;grid-template-columns:1fr 1fr;gap:.45rem;padding:.45rem .5rem;background:#ffffff59;border-radius:var(--radius-md);border:1px solid rgba(255,255,255,.45)}.performance-section{display:flex;flex-direction:column;gap:.5rem}.performance-header{margin-bottom:.25rem}.performance-label{font-size:.75rem;font-weight:600;color:var(--text-secondary)}.performance-row{display:flex;flex-direction:column;gap:.4rem}.performance-item{display:flex;justify-content:space-between;align-items:center;font-size:.7rem}.performance-item-label{color:var(--text-light);font-weight:500}.performance-item-value{color:#0284c7;font-weight:600;font-family:ui-monospace,monospace;text-align:right}.card-footer-info{display:flex;justify-content:space-between;align-items:center;padding:.45rem .55rem;background:#ffffff59;border-radius:var(--radius-md);border:1px solid rgba(255,255,255,.45);margin-top:.15rem}.footer-row{display:flex;align-items:center;gap:.5rem;font-size:.75rem}.footer-label{color:var(--text-light);font-weight:500}.footer-value{color:var(--text-main);font-weight:600;font-family:monospace}.metrics-list{display:flex;flex-direction:column;gap:1rem;margin-bottom:1.5rem}.metric-item{width:100%}.metric-header{display:flex;justify-content:space-between;margin-bottom:.25rem;font-size:.875rem}.metric-label{color:var(--text-secondary);font-weight:500}.metric-value{font-weight:600;color:var(--text-main)}.progress-bar-bg{width:100%;height:8px;background:var(--bg-color);border-radius:var(--radius-sm);overflow:hidden}.progress-bar-fill{height:100%;border-radius:var(--radius-sm);transition:width .5s ease}.uptime-info{display:flex;justify-content:space-between;font-size:.875rem;padding-top:.5rem;border-top:1px solid var(--border-color)}.uptime-label{color:var(--text-light)}.uptime-value{color:var(--text-secondary);font-family:monospace}.offline-state{flex:1;display:flex;align-items:center;justify-content:center;background:#ffffff4d;border-radius:var(--radius-md);margin-bottom:.65rem;padding:.65rem;color:var(--text-light);border:1px dashed rgba(255,255,255,.55)}.offline-state.sync-pending{border:1px dashed var(--primary-color);color:var(--text-secondary)}.card-footer{margin-top:.45rem}.btn-detail{width:100%;background:#ffffff73;border:1px solid var(--glass-border);padding:.5rem .65rem;border-radius:var(--radius-md);font-size:.8rem;font-weight:600;color:var(--text-secondary);cursor:pointer;transition:all .2s;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}.btn-detail:hover{background:linear-gradient(135deg,#7dd3fcd9,#c4b5fdbf);color:#0f172a;border-color:#ffffffa6}.modal-overlay{position:fixed;inset:0;background:#1e1b2e61;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:1000;padding:12px}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.modal-content{background:var(--surface-color);backdrop-filter:var(--backdrop-blur);-webkit-backdrop-filter:var(--backdrop-blur);border-radius:var(--radius-glass);width:100%;max-width:1100px;max-height:92vh;overflow:hidden;box-shadow:var(--shadow-lg);border:1px solid var(--glass-border);display:flex;flex-direction:column}@keyframes slideUp{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;border-bottom:1px solid rgba(255,255,255,.45);position:sticky;top:0;background:#ffffff59;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);z-index:10}.modal-header h2{margin:0;font-size:1.05rem;font-weight:700;color:var(--text-main);letter-spacing:-.03em}.btn-close{background:#ffffff73;border:1px solid var(--glass-border);font-size:18px;color:var(--text-secondary);cursor:pointer;padding:0;width:32px;height:32px;border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;transition:all .3s ease}.btn-close:hover{background:var(--bg-color);border-color:var(--border-color);color:var(--text-main)}.modal-body{padding:10px 12px 12px;overflow-y:auto;flex:1}.modal-body::-webkit-scrollbar{width:8px}.modal-body::-webkit-scrollbar-track{background:#ffffff08}.modal-body::-webkit-scrollbar-thumb{background:#ffffff26;border-radius:var(--radius-sm)}.modal-body::-webkit-scrollbar-thumb:hover{background:#ffffff40}.detail-section{margin-bottom:8px;background:#ffffff47;border-radius:var(--radius-lg);padding:10px 11px;border:1px solid rgba(255,255,255,.52);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}.detail-section:last-child{margin-bottom:0}.detail-category-heading{margin:0 0 8px;font-size:.8125rem;font-weight:700;color:#334155;letter-spacing:-.02em;display:flex;align-items:center;gap:8px}.detail-category-heading:before{content:"";width:4px;height:14px;border-radius:var(--radius-sm);background:linear-gradient(180deg,var(--primary-color),var(--secondary-color));flex-shrink:0}.detail-subsection{margin-top:6px}.detail-subsection:first-of-type{margin-top:0}.detail-subsection+.detail-subsection{margin-top:10px;padding-top:8px;border-top:1px dashed rgba(100,116,139,.28)}.detail-subheading{margin:0 0 6px;font-size:.72rem;font-weight:700;color:var(--text-secondary);text-transform:none;letter-spacing:.04em;padding:3px 10px;width:fit-content;max-width:100%;border-radius:var(--radius-lg);background:#ffffff8c;border:1px solid rgba(196,181,253,.35)}.detail-subheading--inline{margin-bottom:4px}.detail-subheading--minor{font-size:.68rem;margin-top:8px;margin-bottom:6px;background:#fff6;border-color:#7dd3fc59}.detail-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:6px}.detail-grid--cpu{grid-template-columns:repeat(2,minmax(0,1fr))}@media(min-width:640px){.detail-grid--cpu{grid-template-columns:repeat(3,minmax(0,1fr))}}.detail-item--span-full{grid-column:1 / -1}.detail-item{display:flex;flex-direction:row;align-items:baseline;justify-content:space-between;gap:10px;padding:6px 8px;background:#ffffff6b;border-radius:var(--radius-md);border:1px solid rgba(255,255,255,.55);transition:border-color .2s ease}.detail-item:hover{border-color:#7dd3fc73}.item-label{font-size:11px;color:var(--text-secondary);font-weight:600;letter-spacing:.02em;flex-shrink:0}.item-value{font-size:13px;color:var(--text-main);font-weight:700;font-family:ui-monospace,SF Mono,Consolas,monospace;letter-spacing:-.02em;text-align:right;word-break:break-word}.item-value.emphasize,.item-value.highlight{color:#0284c7;font-size:14px;font-weight:700;-webkit-text-fill-color:unset;background:none}.item-sub{font-size:13px;font-weight:500;color:var(--text-secondary)}.detail-plain{margin:0}.per-core-plain{margin-top:8px;padding-top:8px;border-top:1px dashed rgba(100,116,139,.22)}.per-core-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(118px,1fr));gap:6px;margin-top:6px}.per-core-chip{display:flex;flex-direction:column;align-items:stretch;gap:4px;padding:8px 10px;background:#ffffff6b;border:1px solid rgba(255,255,255,.55);border-radius:var(--radius-md);transition:border-color .2s ease,background .2s ease}.per-core-chip:hover{border-color:#7dd3fc73;background:#ffffff8c}.per-core-name{font-size:10px;font-weight:700;color:var(--text-secondary);letter-spacing:.04em}.per-core-pct{font-size:13px;font-weight:700;font-variant-numeric:tabular-nums;color:var(--text-main)}.storage-plain-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}.storage-plain-row{padding:6px 8px;background:#fff6;border:1px solid rgba(255,255,255,.55);border-radius:var(--radius-md);font-size:12px}.storage-plain-head{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:4px}.storage-mount{font-weight:600;color:var(--text-main)}.storage-pct{font-weight:700;font-variant-numeric:tabular-nums;color:var(--text-main)}.storage-meta{color:var(--text-secondary);font-size:12px;line-height:1.4}.system-info-container{display:flex;flex-direction:column;gap:8px}.system-info-group{display:flex;flex-direction:column;gap:5px}.info-group-title{margin:0;font-size:.72rem;font-weight:700;color:var(--text-secondary);text-transform:none;letter-spacing:.04em;padding:3px 10px;width:fit-content;border-radius:var(--radius-lg);background:#ffffff8c;border:1px solid rgba(249,168,212,.35)}.system-info-grid{display:grid;gap:6px}.system-info-grid--cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.system-info-grid--cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.system-info-grid--cols-4 .system-info-item{min-height:54px;align-items:center}.system-info-grid--cols-4 .system-info-content{align-items:center}.system-info-item{display:flex;align-items:flex-start;min-height:0;padding:6px 8px;background:#ffffff6b;border-radius:var(--radius-md);border:1px solid rgba(255,255,255,.55);transition:all .3s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden}.system-info-item:hover{border-color:var(--border-color);background:#fff}.system-info-item-full{grid-column:1 / -1}.system-info-item-highlight{border-color:#7dd3fc73;background:#ffffff85}.system-info-item-highlight:hover{border-color:#7dd3fc99}.system-info-item-temperature{background:linear-gradient(135deg,#f871710d,#fde0470d);border-color:#f8717133}.system-info-item-temperature:hover{background:linear-gradient(135deg,#f871711a,#fde0471a);border-color:#f8717166}.system-info-content{flex:1;display:flex;flex-direction:row;align-items:baseline;justify-content:space-between;gap:8px;min-width:0;width:100%}.system-info-label{font-size:11px;color:var(--text-secondary);font-weight:600;text-transform:none;letter-spacing:.02em;flex-shrink:0}.system-info-value{font-size:12px;color:var(--text-main);font-weight:700;word-break:break-word;line-height:1.3;text-align:right}.system-info-value.highlight{color:#0284c7;font-size:13px;font-weight:700;-webkit-text-fill-color:unset;background:none}.system-info-value-long{font-size:12px;font-family:SF Mono,Consolas,Monaco,monospace;font-weight:500;line-height:1.5;color:var(--text-secondary)}.system-info-sub{font-size:11px;color:var(--text-secondary);font-weight:500}.temperature-value{color:#f87171;font-size:16px;font-weight:700}@media(max-width:768px){.system-info-grid--cols-3,.system-info-grid--cols-4{grid-template-columns:1fr}.system-info-item-full{grid-column:1}.detail-grid--cpu{grid-template-columns:1fr}}.gpu-item{margin-bottom:8px;padding:8px 10px;background:#ffffff61;border-radius:var(--radius-md);border:1px solid rgba(255,255,255,.55)}.gpu-item:last-child{margin-bottom:0}.gpu-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:6px}.gpu-header strong{color:var(--text-main);font-size:.9rem}.gpu-status{padding:4px 12px;border-radius:var(--radius-md);font-size:.75rem;font-weight:600;text-transform:uppercase}.gpu-status.ok{background:#7dd3fc33;color:#0369a1}.gpu-status.error{background:#f871711a;color:var(--danger-color)}.gpu-bar-container{display:flex;align-items:center;gap:1rem;margin-bottom:1rem}.gpu-bar-label{font-size:.875rem;color:var(--text-secondary);font-weight:500;min-width:60px}.gpu-bar-bg{flex:1;height:8px;background:var(--bg-color);border-radius:var(--radius-sm);overflow:hidden}.gpu-bar{height:100%;background:linear-gradient(90deg,#a7f3d0,#d1fae5);border-radius:var(--radius-sm);transition:width .5s ease}.gpu-bar-value{font-size:.875rem;font-weight:600;color:var(--text-main);min-width:50px;text-align:right}.per-core-section{margin-top:1.5rem;padding:1.5rem;background:var(--surface-hover);border-radius:var(--radius-lg);border:1px solid var(--border-color)}.per-core-section h4{margin:0 0 1rem;font-size:1rem;color:var(--text-main);font-weight:600}.core-grid-circular{display:grid;grid-template-columns:repeat(auto-fill,minmax(max(160px,17%),1fr));gap:1.5rem;justify-items:center}.core-item-circular{display:flex;flex-direction:column;align-items:center;gap:.5rem}.cpu-section-content,.memory-section-content{display:flex;gap:1rem;align-items:center;background:var(--surface-hover);padding:1rem;border-radius:var(--radius-lg);border:1px solid var(--border-color)}.cpu-circular-group{display:flex;gap:1.5rem;flex-shrink:0}.cpu-circular,.cpu-load-circular,.memory-circular{flex-shrink:0}.storage-grid-circular{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:1.5rem}.storage-item-circular{display:flex;flex-direction:column;align-items:center;background:var(--surface-hover);padding:1rem;border-radius:var(--radius-md);border:1px solid var(--border-color)}.storage-details-mini{margin-top:.5rem;text-align:center;font-size:.75rem;color:var(--text-secondary)}@media(max-width:768px){.modal-content{max-width:100%;max-height:100vh;border-radius:0}.detail-grid{grid-template-columns:1fr}}.containers-section{margin-top:1rem;padding:1rem;background:#f8f9fa;border-radius:var(--radius-lg)}.containers-section h4{margin:0 0 1rem;font-size:15px;color:#2c3e50;font-weight:600}.containers-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:12px}.docker-images-section{margin-top:1rem;padding:1rem;background:#f8f9fa;border-radius:var(--radius-lg)}.docker-images-section h4{margin:0 0 1rem;font-size:15px;color:#2c3e50;font-weight:600}.docker-containers-section{margin-top:6px;padding:8px 10px;background:#ffffff59;border-radius:var(--radius-md);border:1px solid rgba(255,255,255,.5)}.docker-containers-section h4{margin:0 0 6px}.docker-names-list{display:flex;flex-wrap:wrap;gap:8px}.docker-name-tag{display:inline-block;padding:6px 12px;border-radius:var(--radius-md);font-size:12px;font-weight:500;font-family:SF Mono,Consolas,Monaco,monospace;transition:all .3s ease}.docker-name-tag.running{background:linear-gradient(135deg,#86efac1a,#a7f3d01a);color:#059669;border:1px solid rgba(134,239,172,.3)}.docker-name-tag.stopped{background:linear-gradient(135deg,#94a3b81a,#cbd5e11a);color:#64748b;border:1px solid rgba(148,163,184,.3)}.docker-name-tag.image{background:linear-gradient(135deg,#86efac14,#a7f3d014);color:var(--text-main);border:1px solid rgba(134,239,172,.2)}.docker-name-tag:hover{transform:translateY(-1px);box-shadow:0 2px 8px #0000001a}.logs-container{background:#0f172ac7;color:#f8fafce0;border-radius:var(--radius-md);padding:10px 12px;font-family:ui-monospace,SF Mono,Consolas,monospace;font-size:11px;max-height:280px;overflow-y:auto;border:1px solid rgba(255,255,255,.12);line-height:1.55}.logs-container::-webkit-scrollbar{width:6px}.logs-container::-webkit-scrollbar-thumb{background:#fff3;border-radius:var(--radius-sm)}.log-line{padding:4px 0;white-space:pre-wrap;word-wrap:break-word;border-bottom:1px solid rgba(255,255,255,.03);transition:all .2s ease}.log-line:hover{background:#ffffff0d;color:#fff}.log-line:last-child{border-bottom:none}.process-compact{display:flex;flex-direction:column;gap:3px;font-size:12px;min-width:0}.process-compact__head,.process-compact__row{display:grid;grid-template-columns:1.75rem minmax(0,1fr) minmax(3.25rem,4.25rem) minmax(2.75rem,3.5rem) minmax(5.5rem,7.5rem);gap:6px 10px;align-items:center;padding:4px 8px;border-radius:var(--radius-sm)}.process-compact__head{font-size:10px;font-weight:700;color:var(--text-secondary);letter-spacing:.05em;padding-bottom:6px;margin-bottom:1px;border-bottom:1px dashed rgba(100,116,139,.28)}.process-compact__head span:nth-child(1),.process-compact__rank{text-align:center}.process-compact__head span:nth-child(4),.process-compact__head span:nth-child(5),.process-compact__num{text-align:right}.process-compact__row{background:#ffffff61;border:1px solid rgba(255,255,255,.5);transition:background .15s ease,border-color .15s ease}.process-compact__row:hover{background:#ffffff85;border-color:#7dd3fc6b}.process-compact__rank{font-size:10px;font-weight:800;font-variant-numeric:tabular-nums;line-height:1.25;padding:3px 0;border-radius:var(--radius-sm);background:linear-gradient(135deg,#7dd3fc8c,#c4b5fd80);color:#0f172a}.process-compact__row:nth-child(2) .process-compact__rank{background:linear-gradient(135deg,#fde047a6,#fbcfe88c)}.process-compact__row:nth-child(3) .process-compact__rank{background:linear-gradient(135deg,#a5f3fc8c,#7dd3fc80)}.process-compact__row:nth-child(4) .process-compact__rank{background:linear-gradient(135deg,#e9d5ff8c,#c4b5fd80)}.process-compact__name{font-size:11px;font-weight:600;color:var(--text-main);letter-spacing:-.02em;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}.process-compact__pid{font-family:ui-monospace,SF Mono,Consolas,monospace;font-size:11px;font-weight:600;font-variant-numeric:tabular-nums;color:var(--text-secondary)}.process-compact__num{font-family:ui-monospace,SF Mono,Consolas,monospace;font-size:11px;font-weight:600;font-variant-numeric:tabular-nums;color:var(--text-main)}.process-compact__mem{white-space:nowrap}.process-compact__mem-abs{font-weight:500;font-size:10px;color:var(--text-secondary)}.process-metrics{display:flex;flex-direction:column;gap:8px}.process-metric-item{display:flex;flex-direction:column;gap:4px}.metric-header{display:flex;justify-content:space-between;align-items:center}.metric-label{font-size:11px;color:var(--text-secondary);font-weight:600;text-transform:uppercase;letter-spacing:.5px}.metric-value{font-size:12px;font-weight:700;color:var(--text-main);font-family:SF Mono,Consolas,Monaco,monospace}.metric-bar-container{width:100%;height:6px;background:var(--surface-hover);border-radius:var(--radius-sm);overflow:hidden;position:relative}.metric-bar{height:100%;border-radius:var(--radius-sm);transition:width .6s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden}.metric-bar:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent 0%,rgba(255,255,255,.3) 50%,transparent 100%);animation:shimmer 2s infinite}@keyframes shimmer{0%{transform:translate(-100%)}to{transform:translate(100%)}}.cpu-bar{background:linear-gradient(90deg,#86efac,#a7f3d0,#d1fae5);box-shadow:0 0 8px #86efac66}.memory-bar{background:linear-gradient(90deg,#6ee7b7,#86efac,#a7f3d0);box-shadow:0 0 8px #6ee7b766}.process-command{display:flex;align-items:center;gap:6px;padding:6px 10px;background:var(--surface-hover);border-radius:var(--radius-md);border:1px solid var(--border-color);font-size:11px;color:var(--text-secondary);font-family:SF Mono,Consolas,Monaco,monospace;overflow:hidden;position:relative}.command-icon{font-size:12px;flex-shrink:0;opacity:.7}.command-text{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text-main)}.network-compact{display:flex;flex-direction:column;gap:3px;font-size:12px;min-width:0}.network-compact__head,.network-compact__row{display:grid;grid-template-columns:minmax(3.75rem,6rem) minmax(6.5rem,1fr) minmax(7rem,1.2fr) minmax(4.25rem,auto) minmax(4.25rem,auto);gap:6px 12px;align-items:center;padding:5px 8px;border-radius:var(--radius-sm)}.network-compact__head{font-size:10px;font-weight:700;color:var(--text-secondary);letter-spacing:.05em;padding-bottom:6px;margin-bottom:1px;border-bottom:1px dashed rgba(100,116,139,.28)}.network-compact__head span:nth-child(4),.network-compact__head span:nth-child(5),.network-compact__num{text-align:right}.network-compact__row{background:#ffffff61;border:1px solid rgba(255,255,255,.5);transition:background .15s ease,border-color .15s ease}.network-compact__row:hover{background:#ffffff85;border-color:#7dd3fc6b}.network-compact__iface{font-size:12px;font-weight:700;color:var(--text-main);letter-spacing:-.02em;margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.network-compact__ip{font-family:ui-monospace,SF Mono,Consolas,monospace;font-size:11px;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.network-compact__ip--ok{display:inline-block;max-width:100%;padding:1px 6px;border-radius:var(--radius-sm);background:#7dd3fc33;color:#0369a1;border:1px solid rgba(125,211,252,.35)}.network-compact__placeholder{color:var(--text-light);font-size:11px}.network-compact__mac{font-family:ui-monospace,SF Mono,Consolas,monospace;font-size:11px;color:var(--text-main);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.network-compact__num{font-family:ui-monospace,SF Mono,Consolas,monospace;font-size:11px;font-weight:600;color:var(--text-main);white-space:nowrap}@media(max-width:768px){.containers-grid{grid-template-columns:1fr}.process-compact{overflow-x:auto;-webkit-overflow-scrolling:touch}.process-compact__head,.process-compact__row{min-width:28rem}.network-compact{overflow-x:auto;-webkit-overflow-scrolling:touch}.network-compact__head,.network-compact__row{min-width:36rem}}.admin-overlay{position:fixed;inset:0;background:#0a0c16b8;z-index:1000;display:flex;align-items:flex-start;justify-content:center;padding:2rem 1rem;overflow:auto}.admin-panel{width:min(1100px,100%);background:var(--surface-color);backdrop-filter:var(--backdrop-blur);-webkit-backdrop-filter:var(--backdrop-blur);border:1px solid var(--glass-border);border-radius:var(--radius-glass);box-shadow:var(--shadow-lg);padding:1rem 1.15rem 1.25rem}.admin-panel-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.75rem}.admin-panel-header h2{margin:0;font-size:1.25rem;color:var(--text-main)}.admin-close{background:transparent;border:none;color:var(--text-secondary);font-size:1.75rem;line-height:1;cursor:pointer;padding:.25rem .5rem;border-radius:var(--radius-md)}.admin-close:hover{background:var(--bg-color);color:var(--text-main)}.admin-hint{margin:0 0 1rem;font-size:.875rem;color:var(--text-secondary);line-height:1.5}.admin-loading{color:var(--text-secondary)}.admin-error{color:#f87171;margin-bottom:.75rem}.admin-table-wrap{overflow-x:auto}.admin-table{width:100%;border-collapse:collapse;font-size:.875rem}.admin-table th,.admin-table td{text-align:left;padding:.5rem .6rem;border-bottom:1px solid var(--border-color);vertical-align:middle}.admin-table th{color:var(--text-secondary);font-weight:600}.admin-table code{font-size:.8rem;word-break:break-all}.admin-table input[type=text]{width:100%;max-width:280px;padding:.35rem .5rem;border-radius:var(--radius-md);border:1px solid var(--border-color);background:var(--bg-color);color:var(--text-main)}.admin-url-input{max-width:360px!important}.admin-order-btns{display:flex;gap:.25rem}.admin-order-btns button{padding:.2rem .45rem;font-size:.75rem;cursor:pointer;border-radius:var(--radius-sm);border:1px solid var(--border-color);background:var(--bg-color);color:var(--text-main)}.admin-order-btns button:disabled{opacity:.35;cursor:not-allowed}.admin-actions{white-space:nowrap}.admin-actions .admin-btn+.admin-btn{margin-left:.35rem}.admin-btn{padding:.35rem .65rem;font-size:.8rem;border-radius:var(--radius-md);border:1px solid var(--border-color);background:var(--surface-color);color:var(--text-main);cursor:pointer}.admin-btn:hover{border-color:var(--primary-color)}.admin-btn.danger{border-color:#b91c1c;color:#fecaca}.admin-btn.danger:hover{background:#b91c1c33}.admin-server-id-cell,.admin-agent-key-cell{vertical-align:top;max-width:22rem}.admin-agent-key-cell .admin-key{display:block;margin-bottom:.35rem}.admin-server-id{display:block;font-size:.68rem;line-height:1.35;word-break:break-all;margin-bottom:.35rem;color:var(--text-main)}.admin-btn-ghost{padding:.2rem .45rem;font-size:.72rem}.admin-key{font-size:.75rem;word-break:break-all;cursor:help}.admin-muted{color:var(--text-secondary);font-size:.8rem}.admin-empty{text-align:center;color:var(--text-secondary);padding:1.5rem!important}.random-backdrop{position:fixed;inset:0;z-index:0;pointer-events:none;overflow:hidden}.random-backdrop__image{position:absolute;inset:-16px;background-size:cover;background-position:center;background-repeat:no-repeat;transform:scale(1.04);filter:blur(10px);-webkit-filter:blur(10px)}.random-backdrop__fallback{position:absolute;inset:0;background:radial-gradient(120% 80% at 20% 20%,rgba(252,231,243,.95) 0%,transparent 55%),radial-gradient(100% 90% at 80% 30%,rgba(224,231,255,.9) 0%,transparent 50%),linear-gradient(160deg,#fdf4ff,#e0f2fe 45%,#fce7f3)}.app{position:relative;width:100%;max-width:100%;margin:0 auto;padding:.65rem .75rem .85rem;min-height:100vh}.app-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.65rem;padding:.4rem .85rem;background:var(--surface-color);backdrop-filter:var(--backdrop-blur);-webkit-backdrop-filter:var(--backdrop-blur);border-radius:var(--radius-glass);box-shadow:var(--shadow-sm);border:1px solid var(--glass-border);transition:all .3s ease}.header-actions{display:flex;align-items:center;gap:.5rem}.app-header h1{margin:0;font-size:1.2rem;color:var(--text-main);display:flex;align-items:center;gap:.55rem;font-weight:700;transform:translateY(-1px);letter-spacing:-.02em}.app-logo{width:32px;height:32px;border-radius:var(--radius-md);display:inline-block;object-fit:contain}.btn-icon{background:#ffffff59;color:var(--text-main);border:1px solid var(--glass-border);padding:.45rem;width:32px;height:32px;border-radius:var(--radius-md);font-size:1rem;cursor:pointer;transition:all .2s ease;box-shadow:var(--shadow-sm);display:flex;align-items:center;justify-content:center;line-height:1}.btn-icon:hover{background:var(--bg-color);border-color:var(--primary-color);transform:translateY(-1px);box-shadow:var(--shadow-md)}.btn-show-header{position:fixed;top:5px;right:5px;width:24px;height:24px;border-radius:50%;background:#ffffff80;border:1px solid var(--border-color);color:var(--text-secondary);cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:.75rem;z-index:1000;opacity:.5;transition:all .2s;padding:0}.btn-show-header:hover{opacity:1;background:var(--surface-color);box-shadow:var(--shadow-sm);transform:scale(1.1);color:var(--primary-color)}.btn-add{background:var(--primary-color);color:#fff;border:none;padding:.5rem;width:32px;height:32px;border-radius:var(--radius-md);font-size:1.25rem;font-weight:600;cursor:pointer;transition:all .2s ease;box-shadow:var(--shadow-sm);display:flex;align-items:center;justify-content:center;line-height:1}.btn-add:hover{background:var(--primary-hover);transform:translateY(-1px);box-shadow:var(--shadow-md)}.add-form{background:var(--surface-color);padding:1.5rem;border-radius:var(--radius-md);margin-bottom:1rem;box-shadow:var(--shadow-sm);display:flex;gap:1rem;flex-wrap:wrap;border:1px solid var(--border-color);animation:slideDown .3s ease-out}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.add-form input{flex:1;min-width:250px;padding:.75rem 1rem;border:1px solid var(--border-color);border-radius:var(--radius-md);font-size:.875rem;transition:all .2s;background:var(--bg-color);color:var(--text-main)}.add-form input:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 3px #86efac1a;background:var(--surface-color)}.btn-submit{background:var(--primary-color);color:#fff;border:none;padding:.75rem 2rem;border-radius:var(--radius-md);font-size:.875rem;font-weight:600;cursor:pointer;transition:all .2s}.btn-submit:hover{background:var(--primary-hover)}.server-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:.75rem}.empty-state{grid-column:1 / -1;text-align:center;padding:2rem 1.25rem;background:var(--surface-color);backdrop-filter:var(--backdrop-blur);-webkit-backdrop-filter:var(--backdrop-blur);border-radius:var(--radius-glass);box-shadow:var(--shadow-sm);border:1px dashed var(--glass-border)}.empty-state p{margin:.5rem 0;font-size:1.125rem;color:var(--text-secondary)}.empty-state .hint{color:var(--text-light);font-size:.875rem}.logo-hit{display:inline-flex;align-items:center;justify-content:center;padding:0;margin:0;border:none;background:transparent;cursor:pointer;border-radius:var(--radius-md)}.logo-hit:focus-visible{outline:2px solid var(--primary-color);outline-offset:2px}.token-gate-overlay{position:fixed;inset:0;z-index:1100;background:#0a0c16bf;display:flex;align-items:center;justify-content:center;padding:1rem}.token-gate-dialog{width:min(400px,100%);background:var(--surface-color);backdrop-filter:var(--backdrop-blur);-webkit-backdrop-filter:var(--backdrop-blur);border:1px solid var(--glass-border);border-radius:var(--radius-glass);padding:1.1rem 1.25rem;box-shadow:var(--shadow-md)}.token-gate-dialog h3{margin:0 0 .5rem;font-size:1.125rem;color:var(--text-main)}.token-gate-hint{margin:0 0 1rem;font-size:.8125rem;color:var(--text-secondary);line-height:1.45}.token-gate-input{width:100%;box-sizing:border-box;padding:.65rem .75rem;border-radius:var(--radius-md);border:1px solid var(--border-color);background:var(--bg-color);color:var(--text-main);margin-bottom:.5rem}.token-gate-error{color:#f87171;font-size:.8125rem;margin:0 0 .75rem}.token-gate-actions{display:flex;gap:.5rem;flex-wrap:wrap}.btn-cancel{background:var(--surface-color);color:var(--text-main);border:1px solid var(--border-color);padding:.65rem 1.25rem;border-radius:var(--radius-md);font-size:.875rem;cursor:pointer}.btn-cancel:hover{border-color:var(--primary-color)}@media(max-width:768px){.app{padding:1rem}.app-header{flex-direction:column;gap:1rem;align-items:stretch;text-align:center;padding:1rem}.app-header h1,.header-actions{justify-content:center}}
