:root{--primary-gradient-from: #667eea;--primary-gradient-to: #764ba2;--primary-light: #6ee7b7;--bg-dark: #1a1d24;--bg-medium: #23272f;--bg-card: #2a3040;--bg-card-dark: #1f232a;--border-primary: rgba(102, 126, 234, .2);--border-primary-hover: rgba(102, 126, 234, .5);--border-success: rgba(52, 211, 153, .3);--status-ready: #34d399;--status-error: #ff6b6b;--status-warning: #f093fb;--status-info: #667eea;--shadow-sm: 0 2px 4px rgba(0, 0, 0, .1);--shadow-md: 0 4px 12px rgba(0, 0, 0, .2);--shadow-lg: 0 8px 24px rgba(102, 126, 234, .15)}:root{--z-index-base: 1;--z-index-dropdown: 100;--z-index-sticky: 200;--z-index-modal-bg: 10000;--z-index-modal: 10001;--z-index-modal-header: 10002;--z-index-nested-modal-bg: 20000;--z-index-nested-modal: 20001;--z-index-nested-modal-header: 20002}.panel-base{background:linear-gradient(135deg,var(--bg-medium) 0%,var(--bg-dark) 100%);border:1px solid var(--border-primary);border-radius:clamp(8px,3vw,12px);box-shadow:var(--shadow-md);transition:all .3s ease}.panel-base:hover{border-color:var(--border-primary-hover);box-shadow:var(--shadow-lg)}.chat-panel,.control-panel,.graphs-panel,.git-panel{background:linear-gradient(135deg,var(--bg-medium) 0%,var(--bg-dark) 100%);border:1px solid var(--border-primary);border-radius:clamp(8px,3vw,12px);box-shadow:var(--shadow-md);transition:all .3s ease}.chat-panel:hover,.git-panel:hover{border-color:var(--border-primary-hover);box-shadow:var(--shadow-lg)}.panel-header,.chat-header,.graphs-header{background:linear-gradient(135deg,var(--primary-gradient-from) 0%,var(--primary-gradient-to) 100%);padding:clamp(.3rem,.5vw,.4rem);border-radius:clamp(8px,3vw,12px) clamp(8px,3vw,12px) 0 0;box-shadow:0 4px 12px #0000004d;display:flex;flex-direction:row;align-items:center;justify-content:space-between;gap:clamp(1rem,2vw,1.5rem)}.graphs-header>div{flex:1}.graphs-header>h2{flex:0 0 auto;text-align:center}.panel-header h2,.chat-header h2,.graphs-header h2{color:#fff;margin:0;font-size:clamp(.95rem,2.5vw,1.3rem);font-weight:600;line-height:1;flex:1;text-align:center}.graphs-header h2{background:linear-gradient(45deg,#ff6b6b,#f093fb,#667eea,#34d399);background-size:300% 300%;-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;text-shadow:0 0 20px rgba(255,255,255,.3);font-weight:700;letter-spacing:2px;text-transform:uppercase;white-space:nowrap;display:inline-block}.card-item,.stat-item,.node-stat-item,.pipeline-step{background:linear-gradient(135deg,var(--bg-card) 0%,var(--bg-card-dark) 100%);border:2px solid var(--border-primary);border-radius:8px;padding:.5rem .8rem;box-shadow:var(--shadow-md);transition:all .3s ease}.card-item:hover,.stat-item:hover,.node-stat-item:hover,.pipeline-step:hover{border-color:var(--border-primary-hover);box-shadow:var(--shadow-lg);transform:translateY(-2px)}.stat-item.clickable-stat{cursor:pointer;background:linear-gradient(135deg,var(--bg-card) 0%,var(--bg-card-dark) 100%);border:1px solid var(--border-primary);border-radius:6px;padding:1.1rem 1.4rem;box-shadow:var(--shadow-sm);transition:all .2s ease;display:flex;flex-direction:column;gap:.7rem;justify-content:center;align-items:center;text-align:center;font-size:1.12em;min-width:auto;max-width:none;white-space:normal}.stat-item.clickable-stat:hover{border-color:var(--border-primary-hover);box-shadow:var(--shadow-md);opacity:.95}.stat-item.clickable-stat:active{opacity:.9}.stat-item.clickable-stat .stat-label{font-size:.98rem;margin:0;white-space:normal}.stat-item.clickable-stat .stat-value{font-size:1.68rem;margin:0;line-height:1;white-space:normal}.pipeline-step.active{box-shadow:0 4px 16px #34d39966;border:2px solid var(--status-ready);background:linear-gradient(135deg,#34d3991a,#34d3990d)}.card-title,.stat-label{color:#8b92a8;font-size:clamp(.8rem,1.5vw,.9rem);font-weight:600;text-transform:uppercase;letter-spacing:.5px}.stat-value{font-size:clamp(1rem,2.5vw,1.5rem);font-weight:700;line-height:1}.stat-value.ready{color:var(--status-ready);text-shadow:0 0 10px rgba(52,211,153,.3)}.stat-value.not-ready{color:var(--status-error);text-shadow:0 0 10px rgba(255,107,107,.3)}.stat-value.total{color:var(--status-info);text-shadow:0 0 10px rgba(102,126,234,.3)}.stat-value.health{color:var(--status-ready);text-shadow:0 0 10px rgba(52,211,153,.3)}.btn-base{padding:clamp(.3rem,1.5vw,.5rem) clamp(.6rem,2vw,1rem);border:none;border-radius:clamp(6px,2vw,8px);background:#ffffff26;color:#fff;font-size:clamp(.75rem,2vw,.9rem);cursor:pointer;transition:all .2s ease;min-height:clamp(32px,6vw,40px)}.btn-base:hover{background:#ffffff40;transform:translateY(-1px)}.btn-base:active{transform:scale(.98)}.btn-primary{background:linear-gradient(135deg,var(--primary-gradient-from) 0%,var(--primary-gradient-to) 100%);border:1px solid rgba(255,255,255,.2)}.btn-primary:hover{box-shadow:0 4px 12px #667eea4d}.btn-danger{background:linear-gradient(135deg,#ff6b6b,#f55);border:1px solid rgba(255,255,255,.2);padding:.5em 1em;border-radius:8px;color:#fff;font-weight:600;cursor:pointer;transition:all .3s ease}.btn-danger:hover{transform:translateY(-2px);box-shadow:0 4px 12px #ff6b6b4d}.select-base,.input-base{padding:clamp(.25rem,.4vw,.35rem) clamp(.4rem,.8vw,.6rem);border:2px solid var(--border-primary);border-radius:6px;background:var(--bg-medium);color:#fff;font-size:clamp(.8rem,1.8vw,.9rem);cursor:pointer;transition:all .2s ease;min-height:clamp(24px,4vw,28px)}.select-base:hover,.input-base:hover{border-color:var(--border-primary-hover);background:var(--bg-card)}.select-base:focus,.input-base:focus{outline:none;border-color:var(--status-ready);box-shadow:0 0 8px #34d3994d}.scale-input{width:80px;text-align:center;margin:0 1rem}.scale-controls{display:flex;align-items:center;justify-content:center;gap:1rem;padding:1rem}.scale-controls label{color:var(--text-primary);font-weight:500}.status-circle,.node-stat-circle{width:40px;height:40px;border-radius:50%;flex-shrink:0;box-shadow:0 2px 4px #0000001a;transition:all .3s ease}.node-stat-circle{width:50px;height:50px;box-shadow:0 4px 12px #0000004d}.login-box{background:var(--bg-dark);padding:clamp(1.5rem,3vw,2rem);border-radius:12px;box-shadow:0 0 24px #00000080;min-width:320px;border:1px solid var(--border-primary)}.login-box h2{text-align:center;color:#fff;margin:0 0 1.5rem;font-size:clamp(1.2rem,2vw,1.4rem)}.login-form{display:flex;flex-direction:column;gap:1em}.form-group{display:flex;flex-direction:column;gap:.5em}.form-group label{color:#fff;font-weight:600;font-size:clamp(.85rem,1.5vw,.95rem)}.form-group input,.form-group select{width:100%;padding:.5em;border-radius:8px;border:2px solid var(--border-primary);background:var(--bg-medium);color:#fff;font-size:1.1em;transition:all .2s ease}.form-group input:focus,.form-group select:focus{outline:none;border-color:var(--status-ready);box-shadow:0 0 8px #34d3994d}.login-button{width:100%;background:linear-gradient(135deg,var(--primary-gradient-from) 0%,var(--primary-gradient-to) 100%);color:#fff;border:none;border-radius:8px;padding:.7em;font-weight:600;font-size:1.1em;cursor:pointer;transition:all .3s ease;box-shadow:var(--shadow-md)}.login-button:hover{transform:translateY(-2px);box-shadow:var(--shadow-lg)}.modal-bg{position:fixed;top:0;left:0;width:100vw;height:100vh;background:#181a20f2;z-index:var(--z-index-modal-bg, 10000);display:flex;align-items:center;justify-content:center}.modal{background:var(--bg-medium);color:#fff;border-radius:clamp(8px,3vw,12px);border:1px solid var(--border-primary);box-shadow:0 8px 32px #0000004d;max-height:90vh;overflow-y:auto;max-width:95vw;margin:2em auto;padding:2em;position:relative;z-index:var(--z-index-modal, 10001)}.modal-header{display:flex;justify-content:space-between;align-items:center;position:sticky;top:0;z-index:var(--z-index-modal-header, 10002);background:linear-gradient(135deg,var(--bg-medium) 0%,var(--bg-dark) 100%);padding-bottom:1em;margin-bottom:1em;border-bottom:1px solid var(--border-primary)}.modal-close-btn{margin:0;background:linear-gradient(135deg,var(--primary-gradient-from) 0%,var(--primary-gradient-to) 100%);color:#fff;border:none;border-radius:6px;padding:.5em 1em;font-weight:600;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center}.modal-close-btn:hover{transform:translateY(-2px);box-shadow:var(--shadow-md)}.modal-code-block{background:var(--bg-dark);color:#fff;padding:1em;border-radius:8px;border:1px solid var(--border-primary);height:100%;max-height:100%;overflow:auto;font-size:.95em;white-space:pre-wrap;font-family:Monaco,Courier New,monospace}@media(max-width:768px){.panel-header{gap:clamp(.5rem,1vw,.75rem)}.card-item,.stat-item,.node-stat-item{min-height:auto;padding:clamp(.75rem,1.5vw,1rem)}.modal{margin:1em auto;padding:1.5em}}@media(max-width:480px){.stat-value{font-size:clamp(1.2rem,3vw,1.8rem)}.card-title,.stat-label{font-size:clamp(.7rem,1.2vw,.8rem)}.login-box{min-width:90vw;padding:1.5rem 1rem}.modal{max-width:100vw;margin:0;border-radius:0;max-height:100vh}}.workload-section{margin-bottom:1.5rem}.workload-section:last-child{margin-bottom:0}.workload-section h4{color:var(--text-primary);font-size:1rem;font-weight:600;margin:0 0 .75rem;display:flex;align-items:center;gap:.5rem}.workload-section h4:before{content:"";width:3px;height:1rem;background:linear-gradient(135deg,var(--primary-gradient-from),var(--primary-gradient-to));border-radius:2px}.clickable-pod{cursor:pointer;transition:all .2s ease}.clickable-pod:hover{background:#667eea1a!important;border-color:var(--border-primary-hover)!important;transform:translateY(-1px);box-shadow:0 2px 8px #667eea33}.action-buttons-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem;margin-top:1rem}.action-btn{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.5rem;padding:1rem;min-height:80px;text-align:center;border-radius:8px;font-size:.9rem;font-weight:600;transition:all .2s ease;white-space:normal;word-wrap:break-word;line-height:1.3}.action-btn:hover{transform:translateY(-2px);box-shadow:0 4px 12px #667eea4d}.action-btn small{font-size:.75rem;font-weight:400;opacity:.8;line-height:1.2;margin-top:.25rem}.action-btn-both{grid-column:span 2;background:linear-gradient(135deg,#34d399,#6ee7b7)!important}.action-btn-both:hover{background:linear-gradient(135deg,#2d9d6a,#5bb98a)!important}.menu-tabs{display:flex;align-items:center;gap:clamp(.5rem,2vw,1rem);margin:0;padding:clamp(.5rem,1.5vw,.75rem) clamp(.5rem,2vw,1rem) clamp(.5rem,1.5vw,.75rem) 0;flex-wrap:wrap;background:#1a1d24;border-bottom:1px solid rgba(102,126,234,.2);flex-shrink:0;width:100%;box-sizing:border-box;overflow-x:auto;-webkit-overflow-scrolling:touch}.menu-tabs-left{display:flex;gap:clamp(.5rem,2vw,1rem);flex-wrap:wrap;align-items:center}.menu-tabs-right{display:flex;align-items:center;margin-left:auto}.tab{padding:clamp(.4rem,1vw,.6rem) clamp(.8rem,2vw,1.2rem);border:none;background:transparent;color:#ccc;font-size:clamp(.85rem,2vw,1rem);font-weight:500;cursor:pointer;border-radius:6px;transition:all .2s ease;white-space:nowrap;min-height:44px;min-width:44px}.tab:hover{background:#667eea1a;color:#fff}.tab.active{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;box-shadow:0 2px 8px #667eea4d}.logout-btn{padding:clamp(.4rem,1vw,.6rem) clamp(.8rem,2vw,1.2rem);border:none;background:#ef4444;color:#fff;font-size:clamp(.85rem,2vw,1rem);font-weight:500;cursor:pointer;border-radius:6px;transition:all .2s ease;min-height:44px;margin-right:0}.logout-btn:hover{background:#dc2626;transform:translateY(-1px);box-shadow:0 2px 8px #ef44444d}.btn-secondary{background:var(--bg-dark-3);color:var(--color-primary-teal);border:2px solid var(--color-primary-teal);transform:translateY(-1px);box-shadow:0 2px 8px #6ee7b74d;border-radius:6px;padding:clamp(.4rem,1vw,.6rem) clamp(.8rem,2vw,1.2rem);font-size:clamp(.85rem,2vw,1rem);font-weight:500;cursor:pointer;transition:all .2s ease;min-height:44px;min-width:44px}.btn-secondary:hover:not(:disabled){background:var(--bg-dark-3);color:var(--color-primary-teal);border:2px solid var(--color-primary-teal);transform:translateY(-1px);box-shadow:0 2px 8px #6ee7b74d}.btn-secondary:disabled{opacity:.5;cursor:not-allowed;transform:none}.command-input{width:100%;padding:.75rem;background:var(--bg-card);border:1px solid var(--border-primary);border-radius:6px;color:#e4e7ea;font-family:JetBrains Mono,Fira Code,monospace;font-size:.9rem;transition:all .2s ease}.command-input:focus{outline:none;border-color:var(--color-primary-teal);box-shadow:0 0 0 2px #6ee7b733}.command-input::placeholder{color:#9aa0a6}.control-panel-wrapper::-webkit-scrollbar,.graphs-panel-wrapper::-webkit-scrollbar,.git-panel-wrapper::-webkit-scrollbar{display:none}.control-panel-wrapper,.graphs-panel-wrapper,.git-panel-wrapper{scrollbar-width:none}@media(min-width:769px){.control-panel-wrapper,.graphs-panel-wrapper,.git-panel-wrapper{scrollbar-width:none}}@media(max-width:768px){.control-panel-wrapper,.graphs-panel-wrapper,.git-panel-wrapper,.graphs-grid{overflow-y:auto;-webkit-overflow-scrolling:touch}}:root{font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:light dark;color:#ffffffde;background-color:#242424;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-size:clamp(14px,2vw,18px)}*{box-sizing:border-box}html{width:100%;height:100%;margin:0;padding:0;-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%}body{margin:0;padding:0;width:100%;height:100%;display:flex;place-items:center;min-width:320px;min-height:100vh;min-height:100dvh;font-size:16px;overflow:hidden}h1{font-size:clamp(1.8rem,5vw,3.2rem);line-height:1.1}h2{font-size:clamp(1.4rem,4vw,2.2rem)}h3{font-size:clamp(1.1rem,3vw,1.8rem)}button{border-radius:8px;border:1px solid transparent;padding:clamp(.4rem,1vw,.6rem) clamp(.8rem,2vw,1.2rem);font-size:clamp(.85rem,2vw,1rem);font-weight:500;font-family:inherit;background-color:#1a1a1a;cursor:pointer;transition:border-color .25s;min-height:44px;min-width:44px;-webkit-touch-callout:none}button:hover{border-color:#646cff}button:focus,button:focus-visible{outline:4px auto -webkit-focus-ring-color}input,select,textarea{font-size:16px;min-height:44px;border-radius:8px}@supports (-webkit-touch-callout: none){input,select,textarea{font-size:16px!important}}html,body,#root{max-width:100%;overflow-x:hidden}#root{width:100%;height:100%;display:flex;flex-direction:column}a{font-weight:500;color:#646cff;text-decoration:inherit}a:hover{color:#535bf2}@media(prefers-color-scheme:light){:root{color:#213547;background-color:#fff}a:hover{color:#747bff}button{background-color:#f9f9f9}}@media(max-width:480px){:root{font-size:clamp(12px,1.8vw,14px)}body{font-size:16px}h1{font-size:1.5rem}h2{font-size:1.2rem}h3{font-size:1rem}button{padding:.4rem .8rem;min-height:40px;min-width:40px}}@media(min-width:481px)and (max-width:768px){:root{font-size:clamp(13px,1.9vw,15px)}h1{font-size:1.8rem}h2{font-size:1.4rem}h3{font-size:1.1rem}}@media(min-width:769px)and (max-width:1024px){:root{font-size:15px}h1{font-size:2.2rem}h2{font-size:1.6rem}}@media(min-width:1025px){:root{font-size:16px}h1{font-size:3.2rem}h2{font-size:2.2rem}}.output-table{width:100%;border-collapse:collapse;margin-top:clamp(.75rem,2vw,1rem);font-size:clamp(.9rem,2vw,1.08rem);background:#181c24;color:#eaeaea;border-radius:10px;overflow:hidden}.output-table th,.output-table td{border:1px solid #34d399;padding:clamp(.5rem,1.5vw,.7rem) clamp(.8rem,2vw,1.2rem);text-align:left;font-size:clamp(.8rem,1.5vw,1rem)}.output-table th{background:#23283a;color:#6ee7b7;font-weight:600}.output-table tr:nth-child(2n) td{background:#23283a44}html,body{height:100%;height:100vh;margin:0;padding:0;overflow:hidden;min-height:100%;-webkit-font-smoothing:antialiased}@media(max-width:768px){html,body{overflow:auto;-webkit-overflow-scrolling:touch}}.App{height:100vh;height:100dvh;overflow:hidden;display:flex;flex-direction:column;width:100%;width:100vw;position:fixed;inset:0}@media(max-width:768px){.App{overflow:auto;-webkit-overflow-scrolling:touch}}.dashboard-scroll{flex:1;overflow-y:auto;overflow-x:hidden;height:100%;width:100%;padding:clamp(.5rem,2vw,1rem);margin:0;-webkit-overflow-scrolling:touch}.control-panel-wrapper{flex:1;overflow-y:auto;overflow-x:hidden;height:100%;width:100%;padding:clamp(.5rem,2vw,1rem);margin:0;-webkit-overflow-scrolling:touch;display:flex;flex-direction:column}@media(min-width:769px){.control-panel-wrapper::-webkit-scrollbar{display:none}.control-panel-wrapper{scrollbar-width:none}}.graphs-panel-wrapper{flex:1;overflow-y:auto;overflow-x:hidden;height:100%;width:100%;padding:clamp(.5rem,2vw,1rem);margin:0;-webkit-overflow-scrolling:touch;display:flex;flex-direction:column}@media(min-width:769px){.graphs-panel-wrapper::-webkit-scrollbar{display:none}.graphs-panel-wrapper{scrollbar-width:none}}.chat-panel-wrapper{flex:1;overflow-y:auto;overflow-x:hidden;height:100%;width:100%;padding:clamp(.5rem,2vw,1rem);margin:0;-webkit-overflow-scrolling:touch;display:flex;flex-direction:column}@media(min-width:769px){.chat-panel-wrapper::-webkit-scrollbar{display:none}.chat-panel-wrapper{scrollbar-width:none}}.git-panel-wrapper{flex:1;overflow-y:auto;overflow-x:hidden;width:100%;padding:clamp(.5rem,2vw,1rem);margin:0;-webkit-overflow-scrolling:touch;display:flex;flex-direction:column}@media(min-width:769px){.git-panel-wrapper::-webkit-scrollbar{display:none}.git-panel-wrapper{scrollbar-width:none}}.console-panel-wrapper{flex:1;overflow:hidden;width:100%;padding:clamp(.5rem,2vw,1rem);margin:0;display:flex;flex-direction:column;height:100%;min-height:0}@media(min-width:769px){.console-panel-wrapper::-webkit-scrollbar{display:none}.console-panel-wrapper{scrollbar-width:none}}.dashboard-grid{width:100%;height:auto;min-height:100%;overflow:visible}.send-command-output{max-height:60vh!important;overflow-y:scroll!important;white-space:pre!important;text-align:left!important;padding-left:1.2em!important;background:none!important;border:none!important;font-size:clamp(.8rem,1.5vw,1rem)!important}.command-card pre{padding:clamp(1.5rem,3vw,2.5rem) clamp(1.5rem,3vw,3rem);font-size:clamp(.95rem,2vw,1.22rem);line-height:1.8;max-height:600px;min-height:320px;background:#181c24;color:#eaeaea;border-radius:12px;box-shadow:0 4px 24px #34d39944;overflow-x:auto;white-space:pre-wrap;word-break:break-word}.command-card{grid-column:span 2}.menu-tabs{display:flex;gap:clamp(.5rem,2vw,1rem);justify-content:flex-start;margin:0;padding:clamp(.5rem,1.5vw,.75rem) clamp(.5rem,2vw,1rem);flex-wrap:wrap;background:#1a1d24;border-bottom:1px solid rgba(102,126,234,.2);flex-shrink:0;width:100%;box-sizing:border-box;overflow-x:auto;-webkit-overflow-scrolling:touch}.tab{background:#23283a;color:#6ee7b7;border:2px solid #6ee7b7;border-radius:12px 12px 0 0;padding:clamp(.4rem,1vw,.6rem) clamp(.8rem,1.5vw,1.5rem);font-size:clamp(.75rem,1.5vw,.95rem);font-weight:600;cursor:pointer;transition:background .2s,color .2s;outline:none;min-height:clamp(32px,5vw,38px);white-space:nowrap;flex-shrink:0}.tab.active{background:#6ee7b7;color:#23283a;border-bottom:2px solid #23283a}.stats-row{display:flex;flex-wrap:wrap;gap:clamp(.8rem,2vw,1.2rem);margin-bottom:clamp(1.5rem,3vw,2rem);justify-content:center;align-items:stretch}.stat-box{background:linear-gradient(120deg,#23283a 60%,#181c24);color:#6ee7b7;border-radius:14px;border:1.5px solid #34d399;padding:clamp(.7rem,2vw,1.1rem) clamp(.8rem,2vw,1.5rem);font-size:clamp(.85rem,2vw,1.13rem);font-weight:600;box-shadow:0 4px 18px #34d39944;min-width:clamp(100px,25vw,200px);max-width:250px;text-align:center;flex:1 1 clamp(100px,25vw,140px);word-break:break-word;display:flex;flex-direction:column;justify-content:center;align-items:center;cursor:pointer;outline:none;border-width:2px;transition:box-shadow .2s,border-color .2s,background .2s;min-height:clamp(60px,12vw,80px)}.stat-box:hover,.stat-box:focus{background:linear-gradient(120deg,#34d399 40%,#23283a);color:#23283a;border-color:#6ee7b7;box-shadow:0 6px 24px #6ee7b7a0}.modal-bg{position:fixed;top:0;left:0;width:100vw;height:100vh;background:#181c24d9;z-index:1000;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);display:flex;align-items:center;justify-content:center}.modal{background:#23283a;border-radius:12px;padding:2rem;box-shadow:0 4px 24px #181c24cc;max-width:85vw;width:100%;max-height:85vh;overflow-y:auto;color:#eaeaea;z-index:1001;display:flex;flex-direction:column}.modal::-webkit-scrollbar{display:none}.modal{scrollbar-width:none}.modal-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:1px solid rgba(52,211,153,.2)}.modal-header h3{margin:0;color:#34d399;font-size:1.3rem;flex:1}.modal-close-btn{background:#ef4444;border:none;color:#fff;padding:.5rem 1rem;border-radius:6px;cursor:pointer;font-size:.9rem;font-weight:600;transition:all .2s ease}.modal-close-btn:hover{background:#dc2626;transform:scale(1.05)}.modal-code-block{background:#1a1d24;color:#a0aec0;padding:1rem;border-radius:6px;border:1px solid rgba(52,211,153,.1);font-size:.85rem;line-height:1.5;max-height:300px;overflow-y:auto;white-space:pre-wrap;word-wrap:break-word;font-family:Courier New,monospace}.modal-code-block::-webkit-scrollbar{display:none}.modal-code-block{scrollbar-width:none}.charts-row{display:flex;gap:2rem;justify-content:center;margin-bottom:1.5rem}.chart-placeholder{background:#23283a;color:#888;border-radius:10px;padding:2.2rem;font-size:1.1rem;min-width:220px;text-align:center;border:2px dashed #6ee7b7}.card.highlight{border:2px solid #34d399;box-shadow:0 4px 24px #34d39944}#root{max-width:4000px;margin:0 auto;padding:2rem;text-align:center}.logo{height:6em;padding:1.5em;will-change:filter;transition:filter .3s}.logo:hover{filter:drop-shadow(0 0 2em #646cffaa)}.logo.react:hover{filter:drop-shadow(0 0 2em #61dafbaa)}@keyframes logo-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media(prefers-reduced-motion:no-preference){a:nth-of-type(2) .logo{animation:logo-spin infinite 20s linear}}.card{padding:2em}.read-the-docs{color:#888}body{margin:0;font-family:Inter,Segoe UI,Arial,sans-serif;background:#181c24;color:#eaeaea}.App{min-height:100vh;display:flex;flex-direction:column;align-items:center;padding:2rem 1rem;background:linear-gradient(120deg,#23283a,#181c24)}.header{font-size:clamp(1.2rem,3vw,1.8rem);font-weight:700;margin:0;padding:clamp(.75rem,2vw,1.2rem) clamp(.5rem,2vw,1rem);letter-spacing:1px;color:#6ee7b7;background:#1a1d24;border-bottom:1px solid rgba(102,126,234,.2);flex-shrink:0;display:flex;align-items:center;justify-content:space-between;gap:clamp(.5rem,2vw,1rem);width:100%;box-sizing:border-box}.dashboard-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(clamp(280px,90vw,340px),1fr));gap:clamp(.75rem,2vw,1.5rem);width:100%;max-width:1600px;margin:0 auto;padding:clamp(.75rem,2vw,1rem);box-sizing:border-box}.card{background:#23283a;border-radius:clamp(12px,3vw,16px);box-shadow:0 2px 16px #0006;padding:clamp(1rem,2vw,1.5rem);margin-bottom:clamp(.75rem,2vw,1rem);display:flex;flex-direction:column;min-height:220px}.card h2{font-size:clamp(1rem,2.5vw,1.2rem);color:#6ee7b7;margin-bottom:clamp(.75rem,1.5vw,1rem)}input[type=text]{background:#181c24;color:#eaeaea;border:1px solid #333;border-radius:8px;padding:clamp(.35rem,1vw,.5rem) clamp(.6rem,1.5vw,1rem);font-size:clamp(.9rem,2vw,1rem);margin-right:.5rem;min-height:clamp(32px,6vw,40px)}button{background:#6ee7b7;color:#181c24;border:none;border-radius:clamp(6px,2vw,8px);padding:clamp(.4rem,1.5vw,.5rem) clamp(.8rem,2vw,1.2rem);font-size:clamp(.8rem,2vw,1rem);font-weight:600;cursor:pointer;transition:background .2s;min-height:clamp(32px,6vw,40px)}button:hover{background:#34d399}button:active{transform:scale(.98)}ul{list-style:none;padding:0;margin:0}li{padding:.2rem 0;border-bottom:none;background:none}@media(max-width:480px){.dashboard-grid{grid-template-columns:1fr;gap:.75rem;max-width:100%}.card{padding:.75rem;min-height:180px}.header{font-size:1.4rem;margin-bottom:1rem}.command-card{grid-column:span 1}.menu-tabs{gap:.5rem}input[type=text]{width:100%;margin-right:0;margin-bottom:.5rem}}@media(min-width:481px)and (max-width:768px){.dashboard-grid{grid-template-columns:repeat(2,1fr);gap:1rem;max-width:100%}.command-card{grid-column:span 2}.card{padding:1rem;min-height:200px}.header{font-size:1.6rem}input[type=text]{font-size:.95rem}}@media(min-width:769px)and (max-width:1024px){.dashboard-grid{grid-template-columns:repeat(2,1fr);gap:1.5rem}.command-card{grid-column:span 2}.card{padding:1.2rem}.header{font-size:1.8rem}}@media(min-width:1025px){.dashboard-grid{grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:2rem}.command-card{grid-column:span 2}.card{padding:1.5rem}.header{font-size:2rem}}@media(min-width:1440px){.dashboard-grid{grid-template-columns:repeat(3,1fr);gap:2rem;max-width:1600px}.command-card{grid-column:span 2}.header{font-size:2.2rem;margin-bottom:2.5rem}.card{padding:2rem}}.modal-standard{background:var(--bg-dark-3);color:var(--text-primary);border:1px solid var(--border-primary);border-radius:var(--radius-lg);box-shadow:0 8px 32px #0000004d;max-height:90vh;overflow-y:auto;max-width:95vw;margin:var(--spacing-xl) auto;padding:var(--spacing-xl);display:flex;flex-direction:column}.modal-standard::-webkit-scrollbar{display:none}.modal-standard{scrollbar-width:none}.modal-header-standard{position:sticky;top:0;z-index:10;display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-lg);padding-bottom:var(--spacing-md);border-bottom:1px solid var(--border-primary);background:var(--bg-dark-3)}.modal-header-standard h3{margin:0;font-size:1.3rem;font-weight:600;color:var(--text-primary)}.modal-bg-standard{position:fixed;top:0;left:0;width:100vw;height:100vh;background:#181a20f2;z-index:var(--z-modal-bg);display:flex;align-items:center;justify-content:center;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.btn-standard{padding:var(--spacing-sm) var(--spacing-md);border:none;border-radius:var(--radius-md);font-size:.95rem;font-weight:500;cursor:pointer;transition:all .2s ease;display:inline-flex;align-items:center;justify-content:center;white-space:nowrap}.btn-primary{background:linear-gradient(135deg,var(--color-primary-purple) 0%,var(--color-primary-purple-dark) 100%);color:var(--text-primary)}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 4px 12px #667eea4d}.btn-success{background:var(--color-primary-green);color:var(--bg-darkest);font-weight:600}.btn-success:hover{opacity:.9;transform:translateY(-2px)}.btn-danger{background:var(--color-danger);color:var(--text-primary)}.btn-danger:hover{background:var(--color-danger-hover);transform:translateY(-2px)}.btn-text{background:transparent;color:var(--text-secondary);border:1px solid var(--border-primary)}.btn-text:hover{background:#667eea1a;border-color:var(--color-primary-purple);color:var(--text-primary)}.card-standard{background:var(--bg-dark-3);border:1px solid var(--border-primary);border-radius:var(--radius-lg);padding:var(--spacing-lg);box-shadow:0 4px 12px #0003;transition:all .3s ease}.card-standard:hover{border-color:var(--border-primary-hover);box-shadow:0 8px 24px #667eea26;transform:translateY(-2px)}.code-block-standard{background:var(--bg-darkest);color:var(--text-secondary);padding:var(--spacing-md);border-radius:var(--radius-md);border:1px solid var(--border-primary);font-family:Courier New,monospace;font-size:.85rem;line-height:1.6;overflow-x:auto;white-space:pre-wrap;word-wrap:break-word;max-height:300px;overflow-y:auto}.code-block-standard::-webkit-scrollbar{display:none}.code-block-standard{scrollbar-width:none}.table-standard{width:100%;border-collapse:collapse;color:var(--text-primary);background:var(--bg-dark-3);border:1px solid var(--border-primary);border-radius:var(--radius-md);overflow:hidden}.table-standard thead{background:linear-gradient(135deg,var(--color-primary-purple) 0%,var(--color-primary-purple-dark) 100%);font-weight:600;color:var(--text-primary)}.table-standard th{padding:var(--spacing-md);text-align:left;border-bottom:2px solid var(--border-primary)}.table-standard td{padding:var(--spacing-sm) var(--spacing-md);border-bottom:1px solid var(--border-primary);color:var(--text-secondary)}.table-standard tbody tr:hover{background:#667eea1a;color:var(--text-primary)}.header-standard{background:linear-gradient(135deg,var(--color-primary-purple) 0%,var(--color-primary-purple-dark) 100%);padding:var(--spacing-md) var(--spacing-lg);border-radius:var(--radius-lg);box-shadow:0 4px 12px #0000004d;display:flex;flex-direction:column;gap:var(--spacing-md)}.header-standard h2{color:var(--text-primary);margin:0;font-size:1.3rem;font-weight:600}.btn-close{background:var(--color-danger);border:none;color:var(--text-primary);padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--radius-md);cursor:pointer;font-size:1rem;transition:all .2s ease}.btn-close:hover{background:var(--color-danger-hover);transform:scale(1.05)}:root{--color-primary-green: #34d399;--color-primary-teal: #6ee7b7;--color-primary-purple: #667eea;--color-primary-purple-dark: #764ba2;--color-danger: #ef4444;--color-danger-hover: #dc2626;--bg-darkest: #0f1419;--bg-dark-1: #1a1d24;--bg-dark-2: #181c24;--bg-dark-3: #23283a;--text-primary: #fff;--text-secondary: #ccc;--text-tertiary: #aaa;--text-muted: #888;--spacing-xs: .25rem;--spacing-sm: .5rem;--spacing-md: 1rem;--spacing-lg: 1.5rem;--spacing-xl: 2rem;--radius-sm: 4px;--radius-md: 8px;--radius-lg: 12px;--z-sticky: 100;--z-modal-bg: 9998;--z-modal: 9999;--z-modal-top: 10001}.modal-unified{background:var(--bg-dark-3);border-radius:var(--radius-lg);border:1px solid rgba(102,126,234,.2);box-shadow:0 8px 24px #0006;max-width:90vw;max-height:90vh;overflow-y:auto;padding:var(--spacing-lg)}.modal-unified::-webkit-scrollbar{display:none}.modal-unified{scrollbar-width:none}.modal-bg-unified{position:fixed;inset:0;background:#181a20f2;display:flex;justify-content:center;align-items:center;z-index:var(--z-modal-bg)}.close-button-unified{background:var(--color-danger);border:none;color:var(--text-primary);padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--radius-sm);cursor:pointer;font-size:1em;font-weight:500;transition:all .2s ease}.close-button-unified:hover{background:var(--color-danger-hover);transform:scale(1.05)}.modal-header-unified{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-lg);padding-bottom:var(--spacing-md);border-bottom:1px solid rgba(102,126,234,.2)}.modal-header-unified h2{margin:0;color:var(--text-primary);font-size:1.5em;font-weight:600}.modal-content-unified{display:flex;flex-direction:column;gap:var(--spacing-lg);color:var(--text-secondary);line-height:1.6}.info-box-unified{padding:var(--spacing-md);background:var(--bg-darkest);border-left:3px solid var(--color-primary-green);border-radius:var(--radius-md);display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-md);font-size:.9em}.info-box-unified>div{display:flex;flex-direction:column;gap:var(--spacing-xs)}.info-box-label{color:var(--text-tertiary);font-size:.85em}.info-box-value{color:var(--text-primary);font-weight:600}.code-block-unified{background:var(--bg-darkest);border:1px solid rgba(102,126,234,.15);border-radius:var(--radius-md);padding:var(--spacing-md);font-family:Courier New,monospace;font-size:.85em;color:var(--text-secondary);max-height:300px;overflow-y:auto;white-space:pre-wrap;word-break:break-word}.code-block-unified::-webkit-scrollbar{display:none}.code-block-unified{scrollbar-width:none}.node-section-unified{padding:var(--spacing-md);background:var(--bg-dark-2);border-radius:var(--radius-md);display:flex;flex-direction:column;gap:var(--spacing-sm)}.node-section-unified h4{margin:0 0 var(--spacing-sm) 0;color:var(--color-primary-teal);font-size:1em}.node-metric-unified{display:flex;flex-direction:column;gap:var(--spacing-xs)}.node-metric-label{color:var(--text-tertiary);font-size:.85em}.node-metric-value{color:var(--color-primary-green);font-weight:600;font-size:1.1em}.node-metric-detail{color:var(--text-muted);font-size:.8em}.panel-hidden{display:none!important}.panel-active{display:flex!important}.login-container{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100vh;background:linear-gradient(120deg,var(--bg-medium) 0%,var(--bg-dark) 100%)}.login-box{background:var(--bg-dark);padding:clamp(1.5rem,3vw,2rem);border-radius:12px;box-shadow:0 0 24px #00000080;min-width:320px;max-width:450px;border:1px solid var(--border-primary)}.login-box h2{color:#fff;text-align:center;margin-top:0;margin-bottom:2rem;font-size:clamp(1.5rem,3vw,2rem)}.login-form{display:flex;flex-direction:column;gap:1rem}.form-group{display:flex;flex-direction:column;gap:.5rem}.form-group label{color:#ccc;font-size:.95rem;font-weight:500}.form-group input{padding:.75rem;background:#ffffff0d;border:1px solid rgba(102,126,234,.3);border-radius:6px;color:#fff;font-size:1rem;transition:all .3s ease}.form-group input:focus{outline:none;border-color:#667eeacc;background:#ffffff1a;box-shadow:0 0 12px #667eea33}.form-group input::placeholder{color:#fff6}.login-button{padding:.875rem;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:6px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 12px #667eea4d}.login-button:hover{background:linear-gradient(135deg,#764ba2,#667eea);box-shadow:0 6px 16px #667eea80;transform:translateY(-2px)}.login-button:active{transform:translateY(0)}.oauth-button{display:flex;align-items:center;justify-content:center;gap:.5rem;font-size:1.05rem}.oauth-login-section{display:flex;flex-direction:column;gap:1.5rem}.login-description{color:#ccc;text-align:center;margin:0;font-size:.95rem}.login-toggle{text-align:center;border-top:1px solid rgba(102,126,234,.2);padding-top:1.5rem}.login-toggle p{color:#999;font-size:.9rem;margin-bottom:.5rem}.toggle-button{background:transparent;color:#667eea;border:1px solid rgba(102,126,234,.5);border-radius:6px;padding:.5rem 1rem;font-size:.9rem;cursor:pointer;transition:all .3s ease}.toggle-button:hover{background:#667eea1a;border-color:#667eeacc;color:#6ee7b7}.password-input-wrapper{position:relative;display:flex;align-items:center}.password-input-wrapper input{width:100%;padding-right:2.5rem}.password-toggle-btn{position:absolute;right:.75rem;background:none;border:none;color:#999;font-size:1.2rem;cursor:pointer;padding:.25rem .5rem;display:flex;align-items:center;justify-content:center;transition:all .2s ease}.password-toggle-btn:hover{color:#6ee7b7;transform:scale(1.1)}.password-toggle-btn:active{transform:scale(.95)}
